2009-05-28 Nick Clifton <nickc@redhat.com>

* targets.c (_bfd_target_vector): Only include plugin target in
        all-targets build if BFD_SUPPORTS_PLUGINS is non-zero.

2009-05-27  Rafael Avila de Espindola  <espindola@google.com>

        * plugin.c (program_name): Remove.
        (plugin_program_name): New.
        (bfd_plugin_set_program_name): New.
        (try_load_plugin): Use plugin_program_name.
        * plugin.h (bfd_plugin_set_program_name): New.

2009-05-27  Rafael Avila de Espindola  <espindola@google.com>

        * ar.c (main): Call bfd_plugin_set_program_name.
        * nm.c (main): Call bfd_plugin_set_program_name.
This commit is contained in:
Nick Clifton 2009-05-28 11:30:49 +00:00
parent 5dff79d83d
commit fc579192b4
7 changed files with 45 additions and 4 deletions

View file

@ -1,3 +1,8 @@
2009-05-28 Nick Clifton <nickc@redhat.com>
* targets.c (_bfd_target_vector): Only include plugin target in
all-targets build if BFD_SUPPORTS_PLUGINS is non-zero.
2009-05-28 Ulrich Weigand <uweigand@de.ibm.com> 2009-05-28 Ulrich Weigand <uweigand@de.ibm.com>
* elf32-spu.c (struct call_info): New member broken_cycle. * elf32-spu.c (struct call_info): New member broken_cycle.
@ -17,7 +22,15 @@
(spu_elf_auto_overlay): Honor call counts when determining number (spu_elf_auto_overlay): Honor call counts when determining number
of stubs required in software i-cache mode. of stubs required in software i-cache mode.
2009-05-26 Rafael Avila de Espindola <espindola@google.com> 2009-05-27 Rafael Avila de Espindola <espindola@google.com>
* plugin.c (program_name): Remove.
(plugin_program_name): New.
(bfd_plugin_set_program_name): New.
(try_load_plugin): Use plugin_program_name.
* plugin.h (bfd_plugin_set_program_name): New.
2009-05-27 Rafael Avila de Espindola <espindola@google.com>
* aclocal.m4: Include ../config/plugins.m4. * aclocal.m4: Include ../config/plugins.m4.
* configure.in: Use AC_PLUGINS. * configure.in: Use AC_PLUGINS.

View file

@ -106,7 +106,13 @@ add_symbols (void * handle,
return LDPS_OK; return LDPS_OK;
} }
extern char *program_name __attribute__ ((weak)); static const char *plugin_program_name;
void
bfd_plugin_set_program_name (const char *program_name)
{
plugin_program_name = program_name;
}
static int static int
try_load_plugin (const char *pname) try_load_plugin (const char *pname)
@ -180,11 +186,11 @@ load_plugin (void)
if (plugin_name) if (plugin_name)
return try_load_plugin (plugin_name); return try_load_plugin (plugin_name);
if (!program_name) if (plugin_program_name == NULL)
return 0; return 0;
plugin_dir = concat (BINDIR, "/../lib/bfd-plugins", NULL); plugin_dir = concat (BINDIR, "/../lib/bfd-plugins", NULL);
p = make_relative_prefix (program_name, p = make_relative_prefix (plugin_program_name,
BINDIR, BINDIR,
plugin_dir); plugin_dir);
free (plugin_dir); free (plugin_dir);

View file

@ -23,6 +23,7 @@
#include "bfd.h" #include "bfd.h"
void bfd_plugin_set_program_name (const char *);
void bfd_plugin_set_plugin (const char *); void bfd_plugin_set_plugin (const char *);
typedef struct plugin_data_struct typedef struct plugin_data_struct

View file

@ -1145,7 +1145,9 @@ static const bfd_target * const _bfd_target_vector[] =
&pdp11_aout_vec, &pdp11_aout_vec,
&pef_vec, &pef_vec,
&pef_xlib_vec, &pef_xlib_vec,
#if BFD_SUPPORTS_PLUGINS
&plugin_vec, &plugin_vec,
#endif
#if 0 #if 0
/* This has the same magic number as RS/6000. */ /* This has the same magic number as RS/6000. */
&pmac_xcoff_vec, &pmac_xcoff_vec,

View file

@ -3,6 +3,19 @@
* readelf.c (display_debug_section): Do not display debug sections * readelf.c (display_debug_section): Do not display debug sections
with the NOBITS section type. with the NOBITS section type.
2009-05-27 Rafael Avila de Espindola <espindola@google.com>
* aclocal.m4: Include ../config/plugins.m4.
* configure.in: Use AC_PLUGINS.
* configure: Regenerate.
* Makefile.in: Regenerate.
* doc/Makefile.in: Regenerate.
2009-05-27 Rafael Avila de Espindola <espindola@google.com>
* ar.c (main): Call bfd_plugin_set_program_name.
* nm.c (main): Call bfd_plugin_set_program_name.
2009-05-27 Nathan Sidwell <nathan@codesourcery.com> 2009-05-27 Nathan Sidwell <nathan@codesourcery.com>
* sysdump.c (tab): Use puts rather than two printfs. * sysdump.c (tab): Use puts rather than two printfs.

View file

@ -392,6 +392,9 @@ main (int argc, char **argv)
program_name = argv[0]; program_name = argv[0];
xmalloc_set_program_name (program_name); xmalloc_set_program_name (program_name);
#if BFD_SUPPORTS_PLUGINS
bfd_plugin_set_program_name (program_name);
#endif
expandargv (&argc, &argv); expandargv (&argc, &argv);

View file

@ -1515,6 +1515,9 @@ main (int argc, char **argv)
program_name = *argv; program_name = *argv;
xmalloc_set_program_name (program_name); xmalloc_set_program_name (program_name);
#if BFD_SUPPORTS_PLUGINS
bfd_plugin_set_program_name (program_name);
#endif
START_PROGRESS (program_name, 0); START_PROGRESS (program_name, 0);