This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
PATCH: PR binutils/12088: nm plugin use requires GNUTARGET=plugin
- From: "H.J. Lu" <hongjiu dot lu at intel dot com>
- To: binutils at sourceware dot org
- Date: Sun, 3 Oct 2010 03:51:18 -0700
- Subject: PATCH: PR binutils/12088: nm plugin use requires GNUTARGET=plugin
- Reply-to: "H.J. Lu" <hjl dot tools at gmail dot com>
Hi,
I checked in this simple patch to pass "plugin" to bfd_openr for
"nm --plugin".
H.J.
----
diff --git a/binutils/ChangeLog b/binutils/ChangeLog
index e8ea6ba..6dfe6ee 100644
--- a/binutils/ChangeLog
+++ b/binutils/ChangeLog
@@ -1,3 +1,11 @@
+2010-10-03 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR binutils/12088
+ * nm.c (plugin_target): New.
+ (main): Set plugin_target to "plugin" for --plugin.
+ (display_file): Pass plugin_target to bfd_openr if target
+ isn't set.
+
2010-09-27 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* configure: Regenerate.
diff --git a/binutils/nm.c b/binutils/nm.c
index 0ee7deb..862b2b9 100644
--- a/binutils/nm.c
+++ b/binutils/nm.c
@@ -173,6 +173,7 @@ static char other_format[] = "%02x";
static char desc_format[] = "%04x";
static char *target = NULL;
+static char *plugin_target = NULL;
/* Used to cache the line numbers for a BFD. */
static bfd *lineno_cache_bfd;
@@ -1183,7 +1184,7 @@ display_file (char *filename)
if (get_file_size (filename) < 1)
return FALSE;
- file = bfd_openr (filename, target);
+ file = bfd_openr (filename, target ? target : plugin_target);
if (file == NULL)
{
bfd_nonfatal (filename);
@@ -1621,6 +1622,7 @@ main (int argc, char **argv)
case OPTION_PLUGIN: /* --plugin */
#if BFD_SUPPORTS_PLUGINS
+ plugin_target = "plugin";
bfd_plugin_set_plugin (optarg);
#else
fatal (_("sorry - this program has been built without plugin support\n"));