6abcee9042
* 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.
50 lines
1.5 KiB
C
50 lines
1.5 KiB
C
/* 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;
|