Make hardware watchpoints work for process record.
[binutils-gdb.git] / bfd / plugin.c
index ca47ab620f25af9b44eeb676bd7567c7df988c20..2874fa67a01592ee2cbfb455563115f8fdc77abb 100644 (file)
    MA 02110-1301, USA.  */
 
 #include "config.h"
+#include "bfd.h"
+
+#if BFD_SUPPORTS_PLUGINS
+
 #include <assert.h>
 #include <dlfcn.h>
 #include <stdarg.h>
@@ -203,11 +207,11 @@ load_plugin (void)
   while ((ent = readdir (d)))
     {
       char *full_name;
-      if (ent->d_type != DT_REG && ent->d_type != DT_LNK)
-       continue;
+      struct stat s;
 
       full_name = concat (p, "/", ent->d_name, NULL);
-      found = try_load_plugin (full_name);
+      if (stat(full_name, &s) == 0 && S_ISREG (s.st_mode))
+       found = try_load_plugin (full_name);
       free (full_name);
       if (found)
        break;
@@ -415,11 +419,11 @@ bfd_plugin_get_symbol_info (bfd *abfd ATTRIBUTE_UNUSED,
 static asymbol *
 bfd_plugin_make_empty_symbol (bfd *abfd)
 {
-  asymbol *new = bfd_zalloc (abfd, sizeof (asymbol));
-  if (new == NULL)
-    return new;
-  new->the_bfd = abfd;
-  return new;
+  asymbol *new_symbol = bfd_zalloc (abfd, sizeof (asymbol));
+  if (new_symbol == NULL)
+    return new_symbol;
+  new_symbol->the_bfd = abfd;
+  return new_symbol;
 }
 
 static int
@@ -492,3 +496,4 @@ const bfd_target plugin_vec =
 
   NULL                         /* backend_data.  */
 };
+#endif /* BFD_SUPPORTS_PLUGIN */