diff options
Diffstat (limited to 'bfd/plugin.h')
-rw-r--r-- | bfd/plugin.h | 69 |
1 files changed, 61 insertions, 8 deletions
diff --git a/bfd/plugin.h b/bfd/plugin.h index f61e616..f16c45c 100644 --- a/bfd/plugin.h +++ b/bfd/plugin.h @@ -21,22 +21,75 @@ #ifndef _PLUGIN_H_ #define _PLUGIN_H_ +struct ld_plugin_input_file; + +#if BFD_SUPPORTS_PLUGINS void bfd_plugin_set_program_name (const char *); int bfd_plugin_open_input (bfd *, struct ld_plugin_input_file *); void bfd_plugin_set_plugin (const char *); -bool bfd_plugin_target_p (const bfd_target *); -bool bfd_plugin_specified_p (void); bool bfd_link_plugin_object_p (bfd *); void register_ld_plugin_object_p (bfd_cleanup (*object_p) (bfd *, bool)); void bfd_plugin_close_file_descriptor (bfd *, int); -typedef struct plugin_data_struct +static inline const bfd_target * +bfd_plugin_vec (void) +{ + extern const bfd_target plugin_vec; + return &plugin_vec; +} + +static inline bool +bfd_plugin_target_p (const bfd_target *target) +{ + return target == bfd_plugin_vec (); +} +#else +static inline void +bfd_plugin_set_program_name (const char *name ATTRIBUTE_UNUSED) +{ +} + +static inline int +bfd_plugin_open_input (bfd *ibfd ATTRIBUTE_UNUSED, + struct ld_plugin_input_file *file ATTRIBUTE_UNUSED) +{ + return 0; +} + +static inline void +bfd_plugin_set_plugin (const char *p ATTRIBUTE_UNUSED) +{ +} + +static inline bool +bfd_link_plugin_object_p (bfd *abfd ATTRIBUTE_UNUSED) +{ + return false; +} + +static inline void +register_ld_plugin_object_p + (bfd_cleanup (*object_p) (bfd *, bool) ATTRIBUTE_UNUSED) +{ +} + +static inline void +bfd_plugin_close_file_descriptor (bfd *abfd ATTRIBUTE_UNUSED, + int fd ATTRIBUTE_UNUSED) { - int nsyms; - const struct ld_plugin_symbol *syms; - int object_only_nsyms; - asymbol **object_only_syms; } -plugin_data_struct; + +static inline const bfd_target * +bfd_plugin_vec (void) +{ + return NULL; +} + +static inline bool +bfd_plugin_target_p (const bfd_target *target ATTRIBUTE_UNUSED) +{ + return false; +} +#endif #endif |