summaryrefslogtreecommitdiff
path: root/binutils/objdump.h
diff options
context:
space:
mode:
authorTristan Gingold <gingold@adacore.com>2011-05-16 12:22:10 +0000
committerTristan Gingold <gingold@adacore.com>2011-05-16 12:22:10 +0000
commita31082056a9d42f736b884dbdf0bcab78d9ca44e (patch)
tree4fd39ec15f8e329e3a53400f95a689a2819ecf72 /binutils/objdump.h
parentf32deb62a0953e3125a167efd6dad732cc7d809d (diff)
downloadbinutils-redhat-a31082056a9d42f736b884dbdf0bcab78d9ca44e.tar.gz
2011-05-16 Tristan Gingold <gingold@adacore.com>
* od-xcoff.c: New file. * objdump.h: New file. * objdump.c: Include objdump.h (dump_private_options, objdump_private_vectors): New variables. (usage): Mention -P/--private. Display handled options. (long_options): Add -P/--private. (dump_target_specific): New function. (dump_bfd): Handle dump_private_options. (main): Handle -P. * doc/binutils.texi (objdump): Document -P/--private. * configure.in (OBJDUMP_PRIVATE_VECTORS, OBJDUMP_PRIVATE_OFILES): New variables, compute them. (od_vectors): Add vectors for private dumpers. Make them uniq. (OBJDUMP_DEFS): Add OBJDUMP_PRIVATE_VECTORS. * Makefile.am (HFILES): Add objdump.h (CFILES): Add od-xcoff.c (OBJDUMP_PRIVATE_OFILES): New variable. (objdump_DEPENDENCIES): Append OBJDUMP_PRIVATE_OFILES. (objdump_LDADD): Ditto. (EXTRA_objdump_SOURCES): Define. * Makefile.in: Regenerate. * configure: Regenerate.
Diffstat (limited to 'binutils/objdump.h')
-rw-r--r--binutils/objdump.h50
1 files changed, 50 insertions, 0 deletions
diff --git a/binutils/objdump.h b/binutils/objdump.h
new file mode 100644
index 0000000000..511898c495
--- /dev/null
+++ b/binutils/objdump.h
@@ -0,0 +1,50 @@
+/* objdump.h
+ Copyright 2011 Free Software Foundation, Inc.
+
+ This file is part of GNU Binutils.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 3, or (at your option)
+ any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, 51 Franklin Street - Fifth Floor, Boston,
+ MA 02110-1301, USA. */
+
+#include <stdio.h>
+
+struct objdump_private_option
+{
+ /* Option name. */
+ const char *name;
+
+ /* TRUE if the option is selected. Automatically set and cleared by
+ objdump. */
+ unsigned int selected;
+};
+
+struct objdump_private_desc
+{
+ /* Help displayed for --help. */
+ void (*help)(FILE *stream);
+
+ /* Return TRUE if these options can be applied to ABFD. */
+ int (*filter)(bfd *abfd);
+
+ /* Do the actual work: display whatever is requested according to the
+ options whose SELECTED field is set. */
+ void (*dump)(bfd *abfd);
+
+ /* List of options. Terminated by a NULL name. */
+ struct objdump_private_option *options;
+};
+
+/* XCOFF specific target. */
+extern const struct objdump_private_desc objdump_private_desc_xcoff;