Tidy up formatting of --help output.
This commit is contained in:
parent
c69539487b
commit
8b53311e10
@ -1,3 +1,39 @@
|
||||
2002-01-23 Nick Clifton <nickc@cambridge.redhat.com>
|
||||
|
||||
* addr2line.c (usage): Update text to provide verbose
|
||||
description of the command line options.
|
||||
* ar.c (usage): Update text to provide verbose
|
||||
description of the command line options.
|
||||
(main): Accept -h and -H when running as ranlib.
|
||||
* coffdump.c (show_usage): Update text to provide verbose
|
||||
description of the command line options.
|
||||
* dlltool.c (main): Accept -H as an alias for --help.
|
||||
* nlmconv.c (show_usage): Update text to provide verbose
|
||||
description of the command line options.
|
||||
* nm.c (usage): Replace OPTIONS with option(s).
|
||||
(main): Accept -H as an alias for --help.
|
||||
* objcopy.c (strip_main): Accept -H as an alias for --help.
|
||||
* objdump.c (main): Accept -v as an alias for --verbose.
|
||||
* readelf.c (usage): Adjust format to match style used in
|
||||
other binutils.
|
||||
* size.c (usage): Update text to provide verbose description
|
||||
of the command line options.
|
||||
(main): Accept -v, -h and -H as command line options.
|
||||
* srconv.c (show_usage): Update text to provide verbose
|
||||
description of the command line options.
|
||||
* strings.c (main): Accept -H and -v as command line options.
|
||||
(usage): Update text to provide verbose description of the
|
||||
command line options.
|
||||
* sysdump.c (show_usage): Update text to provide verbose
|
||||
description of the command line options.
|
||||
* windres.c (usage): Adjust format to match style used in
|
||||
other binutils.
|
||||
|
||||
* coffdump.c: Fix formatting.
|
||||
* nlmconv.c: Fix formatting.
|
||||
* srconv.c: Fix formatting.
|
||||
* sysdump.c: Fix formatting.
|
||||
|
||||
2002-01-18 Andreas Jaeger <aj@suse.de>
|
||||
|
||||
* version.c (print_version): Update year.
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* addr2line.c -- convert addresses to line number and function name
|
||||
Copyright 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
|
||||
Copyright 1997, 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
|
||||
Contributed by Ulrich Lauther <Ulrich.Lauther@mchp.siemens.de>
|
||||
|
||||
This file is part of GNU Binutils.
|
||||
@ -70,11 +70,19 @@ usage (stream, status)
|
||||
FILE *stream;
|
||||
int status;
|
||||
{
|
||||
fprintf (stream, _("\
|
||||
Usage: %s [-CfsHV] [-b bfdname] [--target=bfdname]\n\
|
||||
[-e executable] [--exe=executable] [--demangle[=style]]\n\
|
||||
[--basenames] [--functions] [addr addr ...]\n"),
|
||||
program_name);
|
||||
fprintf (stream, _("Usage: %s [option(s)] [addr(s)]\n"), program_name);
|
||||
fprintf (stream, _(" Convert addresses into line number/file name pairs.\n"));
|
||||
fprintf (stream, _(" If no addresses are specified on the command line, they will be read from stdin\n"));
|
||||
fprintf (stream, _(" The options are:\n\
|
||||
-b --target=<bfdname> Set the binary file format\n\
|
||||
-e --exe=<executable> Set the input file name (default is a.out)\n\
|
||||
-s --basenames Strip directory names\n\
|
||||
-f --functions Show function names\n\
|
||||
-C --demangle[=style] Demangle function names\n\
|
||||
-h --help Display this information\n\
|
||||
-v --version Display the program's version\n\
|
||||
\n"));
|
||||
|
||||
list_supported_targets (program_name, stream);
|
||||
if (status == 0)
|
||||
fprintf (stream, _("Report bugs to %s\n"), REPORT_BUGS_TO);
|
||||
@ -291,13 +299,13 @@ main (argc, argv)
|
||||
|
||||
filename = NULL;
|
||||
target = NULL;
|
||||
while ((c = getopt_long (argc, argv, "b:Ce:sfHV", long_options, (int *) 0))
|
||||
while ((c = getopt_long (argc, argv, "b:Ce:sfHhVv", long_options, (int *) 0))
|
||||
!= EOF)
|
||||
{
|
||||
switch (c)
|
||||
{
|
||||
case 0:
|
||||
break; /* we've been given a long option */
|
||||
break; /* We've been given a long option. */
|
||||
case 'b':
|
||||
target = optarg;
|
||||
break;
|
||||
@ -324,9 +332,11 @@ main (argc, argv)
|
||||
case 'f':
|
||||
with_functions = true;
|
||||
break;
|
||||
case 'v':
|
||||
case 'V':
|
||||
print_version ("addr2line");
|
||||
break;
|
||||
case 'h':
|
||||
case 'H':
|
||||
usage (stdout, 0);
|
||||
break;
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* ar.c - Archive modify and extract.
|
||||
Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
|
||||
2001
|
||||
2001, 2002
|
||||
Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Binutils.
|
||||
@ -280,8 +280,14 @@ usage (help)
|
||||
fprintf (s, _(" [-X32_64] - (ignored)\n"));
|
||||
}
|
||||
else
|
||||
{
|
||||
/* xgettext:c-format */
|
||||
fprintf (s, _("Usage: %s [-vV] archive\n"), program_name);
|
||||
fprintf (s, _("Usage: %s [options] archive\n"), program_name);
|
||||
fprintf (s, _(" Generate an index to speed access to archives\n"));
|
||||
fprintf (s, _(" The options are:\n\
|
||||
-h --help Print this help message\n\
|
||||
-V --version Print version information\n"));
|
||||
}
|
||||
|
||||
list_supported_targets (program_name, stderr);
|
||||
|
||||
@ -453,7 +459,10 @@ main (argc, argv)
|
||||
{
|
||||
boolean touch = false;
|
||||
|
||||
if (argc < 2 || strcmp (argv[1], "--help") == 0)
|
||||
if (argc < 2
|
||||
|| strcmp (argv[1], "--help") == 0
|
||||
|| strcmp (argv[1], "-h") == 0
|
||||
|| strcmp (argv[1], "-H") == 0)
|
||||
usage (0);
|
||||
if (strcmp (argv[1], "-V") == 0
|
||||
|| strcmp (argv[1], "-v") == 0
|
||||
|
@ -1,27 +1,27 @@
|
||||
/* Coff file dumper.
|
||||
Copyright 1994, 1995, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
|
||||
Copyright 1994, 1995, 1998, 1999, 2000, 2001, 2002
|
||||
Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Binutils.
|
||||
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 2 of the License, or
|
||||
(at your option) any later version.
|
||||
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 2 of the License, 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.
|
||||
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, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
|
||||
/* Written by Steve Chamberlain <sac@cygnus.com>
|
||||
|
||||
This module reads a type tree generated by coffgrok and prints
|
||||
it out so we can test the grokker.
|
||||
*/
|
||||
it out so we can test the grokker. */
|
||||
|
||||
#include <bfd.h>
|
||||
#include <getopt.h>
|
||||
@ -44,12 +44,11 @@ static void dump_coff_sfile PARAMS ((struct coff_sfile *));
|
||||
static void dump_coff_section PARAMS ((struct coff_section *));
|
||||
extern void coff_dump PARAMS ((struct coff_ofile *));
|
||||
static void show_usage PARAMS ((FILE *, int));
|
||||
static void show_help PARAMS ((void));
|
||||
extern int main PARAMS ((int, char **));
|
||||
|
||||
static void
|
||||
tab (x)
|
||||
int x;
|
||||
int x;
|
||||
{
|
||||
static int indent;
|
||||
int i;
|
||||
@ -91,7 +90,8 @@ int x;
|
||||
}
|
||||
}
|
||||
|
||||
static void nl ()
|
||||
static void
|
||||
nl ()
|
||||
{
|
||||
atnl = 1;
|
||||
}
|
||||
@ -102,21 +102,25 @@ dump_coff_lines (p)
|
||||
{
|
||||
int i;
|
||||
int online = 0;
|
||||
tab(1);
|
||||
printf(_("#lines %d "),p->nlines);
|
||||
|
||||
tab (1);
|
||||
printf (_("#lines %d "),p->nlines);
|
||||
|
||||
for (i = 0; i < p->nlines; i++)
|
||||
{
|
||||
printf("(%d 0x%x)", p->lines[i], p->addresses[i]);
|
||||
printf ("(%d 0x%x)", p->lines[i], p->addresses[i]);
|
||||
|
||||
online++;
|
||||
|
||||
if (online > 6)
|
||||
{
|
||||
nl();
|
||||
tab(0);
|
||||
nl ();
|
||||
tab (0);
|
||||
online = 0;
|
||||
}
|
||||
}
|
||||
nl();
|
||||
tab(-1);
|
||||
nl ();
|
||||
tab (-1);
|
||||
}
|
||||
|
||||
static void
|
||||
@ -125,13 +129,14 @@ dump_coff_type (p)
|
||||
{
|
||||
tab (1);
|
||||
printf ("size %d ", p->size);
|
||||
|
||||
switch (p->type)
|
||||
{
|
||||
case coff_secdef_type:
|
||||
printf ("section definition at %x size %x\n",
|
||||
p->u.asecdef.address,
|
||||
p->u.asecdef.size);
|
||||
nl();
|
||||
nl ();
|
||||
break;
|
||||
case coff_pointer_type:
|
||||
printf ("pointer to");
|
||||
@ -325,7 +330,6 @@ dump_coff_visible (p)
|
||||
tab (-1);
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
dump_coff_symbol (p)
|
||||
struct coff_symbol *p;
|
||||
@ -333,6 +337,7 @@ dump_coff_symbol (p)
|
||||
tab (1);
|
||||
printf ("List of symbols");
|
||||
nl ();
|
||||
|
||||
while (p)
|
||||
{
|
||||
tab (1);
|
||||
@ -363,35 +368,37 @@ static void
|
||||
dump_coff_scope (p)
|
||||
struct coff_scope *p;
|
||||
{
|
||||
if (p) {
|
||||
tab (1);
|
||||
printf ("List of blocks %lx ",(unsigned long) p);
|
||||
|
||||
if (p->sec) {
|
||||
printf( " %s %x..%x", p->sec->name,p->offset, p->offset + p->size -1);
|
||||
}
|
||||
nl ();
|
||||
tab (0);
|
||||
printf ("*****************");
|
||||
nl ();
|
||||
while (p)
|
||||
if (p)
|
||||
{
|
||||
tab (0);
|
||||
printf ("vars %d", p->nvars);
|
||||
nl ();
|
||||
dump_coff_symbol (p->vars_head);
|
||||
printf ("blocks");
|
||||
nl ();
|
||||
dump_coff_scope (p->list_head);
|
||||
nl ();
|
||||
p = p->next;
|
||||
}
|
||||
tab (1);
|
||||
printf ("List of blocks %lx ",(unsigned long) p);
|
||||
|
||||
tab (0);
|
||||
printf ("*****************");
|
||||
nl ();
|
||||
tab (-1);
|
||||
}
|
||||
if (p->sec)
|
||||
printf( " %s %x..%x", p->sec->name,p->offset, p->offset + p->size -1);
|
||||
|
||||
nl ();
|
||||
tab (0);
|
||||
printf ("*****************");
|
||||
nl ();
|
||||
|
||||
while (p)
|
||||
{
|
||||
tab (0);
|
||||
printf ("vars %d", p->nvars);
|
||||
nl ();
|
||||
dump_coff_symbol (p->vars_head);
|
||||
printf ("blocks");
|
||||
nl ();
|
||||
dump_coff_scope (p->list_head);
|
||||
nl ();
|
||||
p = p->next;
|
||||
}
|
||||
|
||||
tab (0);
|
||||
printf ("*****************");
|
||||
nl ();
|
||||
tab (-1);
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
@ -401,6 +408,7 @@ dump_coff_sfile (p)
|
||||
tab (1);
|
||||
printf ("List of source files");
|
||||
nl ();
|
||||
|
||||
while (p)
|
||||
{
|
||||
tab (0);
|
||||
@ -414,25 +422,27 @@ dump_coff_sfile (p)
|
||||
|
||||
static void
|
||||
dump_coff_section(ptr)
|
||||
struct coff_section *ptr;
|
||||
struct coff_section *ptr;
|
||||
{
|
||||
int i;
|
||||
tab(1);
|
||||
printf("section %s %d %d address %x size %x number %d nrelocs %d",
|
||||
ptr->name, ptr->code, ptr->data, ptr->address,ptr->size, ptr->number, ptr->nrelocs);
|
||||
nl();
|
||||
|
||||
tab (1);
|
||||
printf ("section %s %d %d address %x size %x number %d nrelocs %d",
|
||||
ptr->name, ptr->code, ptr->data, ptr->address,ptr->size,
|
||||
ptr->number, ptr->nrelocs);
|
||||
nl ();
|
||||
|
||||
for (i = 0; i < ptr->nrelocs; i++)
|
||||
{
|
||||
tab(0);
|
||||
printf("(%x %s %x)",
|
||||
ptr->relocs[i].offset,
|
||||
ptr->relocs[i].symbol->name,
|
||||
ptr->relocs[i].addend);
|
||||
nl();
|
||||
tab (0);
|
||||
printf ("(%x %s %x)",
|
||||
ptr->relocs[i].offset,
|
||||
ptr->relocs[i].symbol->name,
|
||||
ptr->relocs[i].addend);
|
||||
nl ();
|
||||
}
|
||||
tab(-1);
|
||||
|
||||
tab (-1);
|
||||
}
|
||||
|
||||
void
|
||||
@ -440,17 +450,17 @@ coff_dump (ptr)
|
||||
struct coff_ofile *ptr;
|
||||
{
|
||||
int i;
|
||||
|
||||
printf ("Coff dump");
|
||||
nl ();
|
||||
printf ("#souces %d", ptr->nsources);
|
||||
nl ();
|
||||
dump_coff_sfile (ptr->source_head);
|
||||
|
||||
for (i = 0; i < ptr->nsections; i++)
|
||||
dump_coff_section(ptr->sections + i);
|
||||
dump_coff_section (ptr->sections + i);
|
||||
}
|
||||
|
||||
|
||||
|
||||
char * program_name;
|
||||
|
||||
static void
|
||||
@ -458,19 +468,19 @@ show_usage (file, status)
|
||||
FILE *file;
|
||||
int status;
|
||||
{
|
||||
fprintf (file, "Usage: %s [-hV] in-file\n", program_name);
|
||||
fprintf (file, _("Usage: %s [option(s)] in-file\n"), program_name);
|
||||
fprintf (file, _(" Print a human readable interpretation of a SYSROFF object file\n"));
|
||||
fprintf (file, _(" The options are:\n\
|
||||
-h --help Display this information\n\
|
||||
-v --version Display the program's version\n\
|
||||
\n"));
|
||||
|
||||
if (status == 0)
|
||||
fprintf (file, _("Report bugs to %s\n"), REPORT_BUGS_TO);
|
||||
|
||||
exit (status);
|
||||
}
|
||||
|
||||
static void
|
||||
show_help ()
|
||||
{
|
||||
printf (_("%s: Print a human readable interpretation of a SYSROFF object file\n"),
|
||||
program_name);
|
||||
show_usage (stdout, 0);
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
main (ac, av)
|
||||
int ac;
|
||||
@ -500,24 +510,25 @@ main (ac, av)
|
||||
program_name = av[0];
|
||||
xmalloc_set_program_name (program_name);
|
||||
|
||||
while ((opt = getopt_long (ac, av, "hV", long_options,
|
||||
while ((opt = getopt_long (ac, av, "HhVv", long_options,
|
||||
(int *) NULL))
|
||||
!= EOF)
|
||||
{
|
||||
switch (opt)
|
||||
{
|
||||
case 'H':
|
||||
case 'h':
|
||||
show_help ();
|
||||
/*NOTREACHED*/
|
||||
show_usage (stdout, 0);
|
||||
break;
|
||||
case 'v':
|
||||
case 'V':
|
||||
print_version ("coffdump");
|
||||
exit (0);
|
||||
/*NOTREACHED*/
|
||||
case 0:
|
||||
break;
|
||||
default:
|
||||
show_usage (stderr, 1);
|
||||
/*NOTREACHED*/
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@ -527,9 +538,8 @@ main (ac, av)
|
||||
}
|
||||
|
||||
if (!input_file)
|
||||
{
|
||||
fatal (_("no input file specified"));
|
||||
}
|
||||
fatal (_("no input file specified"));
|
||||
|
||||
abfd = bfd_openr (input_file, 0);
|
||||
|
||||
if (!abfd)
|
||||
@ -538,6 +548,7 @@ main (ac, av)
|
||||
if (! bfd_check_format_matches (abfd, bfd_object, &matching))
|
||||
{
|
||||
bfd_nonfatal (input_file);
|
||||
|
||||
if (bfd_get_error () == bfd_error_file_ambiguously_recognized)
|
||||
{
|
||||
list_matching_formats (matching);
|
||||
@ -548,7 +559,8 @@ main (ac, av)
|
||||
|
||||
tree = coff_grok (abfd);
|
||||
|
||||
coff_dump(tree);
|
||||
printf("\n");
|
||||
coff_dump (tree);
|
||||
printf ("\n");
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@ -3135,7 +3135,7 @@ usage (file, status)
|
||||
int status;
|
||||
{
|
||||
/* xgetext:c-format */
|
||||
fprintf (file, _("Usage %s <options> <object-files>\n"), program_name);
|
||||
fprintf (file, _("Usage %s <option(s)> <object-file(s)>\n"), program_name);
|
||||
/* xgetext:c-format */
|
||||
fprintf (file, _(" -m --machine <machine> Create as DLL for <machine>. [default: %s]\n"), mname);
|
||||
fprintf (file, _(" possible <machine>: arm[_interwork], i386, mcore[-elf]{-le|-be}, ppc, thumb\n"));
|
||||
@ -3228,9 +3228,9 @@ main (ac, av)
|
||||
|
||||
while ((c = getopt_long (ac, av,
|
||||
#ifdef DLLTOOL_MCORE_ELF
|
||||
"m:e:l:aD:d:z:b:xcCuUkAS:f:nvVhM:L:F:",
|
||||
"m:e:l:aD:d:z:b:xcCuUkAS:f:nvVHhM:L:F:",
|
||||
#else
|
||||
"m:e:l:aD:d:z:b:xcCuUkAS:f:nvVh",
|
||||
"m:e:l:aD:d:z:b:xcCuUkAS:f:nvVHh",
|
||||
#endif
|
||||
long_options, 0))
|
||||
!= EOF)
|
||||
@ -3280,6 +3280,7 @@ main (ac, av)
|
||||
case 'e':
|
||||
exp_name = optarg;
|
||||
break;
|
||||
case 'H':
|
||||
case 'h':
|
||||
usage (stdout, 0);
|
||||
break;
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* dllwrap.c -- wrapper for DLLTOOL and GCC to generate PE style DLLs
|
||||
Copyright 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
|
||||
Copyright 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
|
||||
Contributed by Mumit Khan (khan@xraylith.wisc.edu).
|
||||
|
||||
This file is part of GNU Binutils.
|
||||
@ -516,7 +516,7 @@ usage (file, status)
|
||||
FILE *file;
|
||||
int status;
|
||||
{
|
||||
fprintf (file, _("Usage %s <options> <object-files>\n"), program_name);
|
||||
fprintf (file, _("Usage %s <option(s)> <object-file(s)>\n"), program_name);
|
||||
fprintf (file, _(" Generic options:\n"));
|
||||
fprintf (file, _(" --quiet, -q Work quietly\n"));
|
||||
fprintf (file, _(" --verbose, -v Verbose\n"));
|
||||
|
@ -1,22 +1,22 @@
|
||||
/* nlmconv.c -- NLM conversion program
|
||||
Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
|
||||
Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
|
||||
Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Binutils.
|
||||
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 2 of the License, or
|
||||
(at your option) any later version.
|
||||
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 2 of the License, 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.
|
||||
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, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
|
||||
/* Written by Ian Lance Taylor <ian@cygnus.com>.
|
||||
|
||||
@ -122,7 +122,6 @@ static struct option long_options[] =
|
||||
|
||||
/* Local routines. */
|
||||
|
||||
static void show_help PARAMS ((void));
|
||||
static void show_usage PARAMS ((FILE *, int));
|
||||
static const char *select_output_format PARAMS ((enum bfd_architecture,
|
||||
unsigned long, boolean));
|
||||
@ -226,7 +225,7 @@ main (argc, argv)
|
||||
bfd_init ();
|
||||
set_default_bfd_target ();
|
||||
|
||||
while ((opt = getopt_long (argc, argv, "dhI:l:O:T:V", long_options,
|
||||
while ((opt = getopt_long (argc, argv, "dHhI:l:O:T:Vv", long_options,
|
||||
(int *) NULL))
|
||||
!= EOF)
|
||||
{
|
||||
@ -235,9 +234,10 @@ main (argc, argv)
|
||||
case 'd':
|
||||
debug = 1;
|
||||
break;
|
||||
case 'H':
|
||||
case 'h':
|
||||
show_help ();
|
||||
/*NOTREACHED*/
|
||||
show_usage (stdout, 0);
|
||||
break;
|
||||
case 'I':
|
||||
input_format = optarg;
|
||||
break;
|
||||
@ -250,14 +250,15 @@ main (argc, argv)
|
||||
case 'T':
|
||||
header_file = optarg;
|
||||
break;
|
||||
case 'v':
|
||||
case 'V':
|
||||
print_version ("nlmconv");
|
||||
/*NOTREACHED*/
|
||||
break;
|
||||
case 0:
|
||||
break;
|
||||
default:
|
||||
show_usage (stderr, 1);
|
||||
/*NOTREACHED*/
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@ -1093,15 +1094,6 @@ main (argc, argv)
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* Display a help message and exit. */
|
||||
|
||||
static void
|
||||
show_help ()
|
||||
{
|
||||
printf (_("%s: Convert an object file into a NetWare Loadable Module\n"),
|
||||
program_name);
|
||||
show_usage (stdout, 0);
|
||||
}
|
||||
|
||||
/* Show a usage message and exit. */
|
||||
|
||||
@ -1110,13 +1102,17 @@ show_usage (file, status)
|
||||
FILE *file;
|
||||
int status;
|
||||
{
|
||||
fprintf (file, _("\
|
||||
Usage: %s [-dhV] [-I bfdname] [-O bfdname] [-T header-file] [-l linker]\n\
|
||||
[--input-target=bfdname] [--output-target=bfdname]\n\
|
||||
[--header-file=file] [--linker=linker] [--debug]\n\
|
||||
[--help] [--version]\n\
|
||||
[in-file [out-file]]\n"),
|
||||
program_name);
|
||||
fprintf (file, _("Usage: %s [option(s)] [in-file [out-file]]\n"), program_name);
|
||||
fprintf (file, _(" Convert an object file into a NetWare Loadable Module\n"));
|
||||
fprintf (file, _(" The options are:\n\
|
||||
-I --input-target=<bfdname> Set the input binary file format\n\
|
||||
-O --output-target=<bfdname> Set the output binary file format\n\
|
||||
-T --header-file=<file> Read <file> for NLM header information\n\
|
||||
-l --linker=<linker> Use <linker> for any linking\n\
|
||||
-d --debug Display on stderr the linker command line\n\
|
||||
-h --help Display this information\n\
|
||||
-v --version Display the program's version\n\
|
||||
"));
|
||||
if (status == 0)
|
||||
fprintf (file, _("Report bugs to %s\n"), REPORT_BUGS_TO);
|
||||
exit (status);
|
||||
|
@ -297,9 +297,9 @@ usage (stream, status)
|
||||
FILE *stream;
|
||||
int status;
|
||||
{
|
||||
fprintf (stream, _("Usage: %s [OPTION]... [FILE]...\n"), program_name);
|
||||
fprintf (stream, _("List symbols from FILEs (a.out by default).\n"));
|
||||
fprintf (stream, _("\n\
|
||||
fprintf (stream, _("Usage: %s [option(s)] [file(s)]\n"), program_name);
|
||||
fprintf (stream, _(" List symbols in [file(s)] (a.out by default).\n"));
|
||||
fprintf (stream, _(" The options are:\n\
|
||||
-a, --debug-syms Display debugger-only symbols\n\
|
||||
-A, --print-file-name Print name of the input file before every symbol\n\
|
||||
-B Same as --format=bsd\n\
|
||||
@ -313,7 +313,6 @@ usage (stream, status)
|
||||
-f, --format=FORMAT Use the output format FORMAT. FORMAT can be `bsd',\n\
|
||||
`sysv' or `posix'. The default is `bsd'\n\
|
||||
-g, --extern-only Display only external symbols\n\
|
||||
-h, --help Display this information\n\
|
||||
-l, --line-numbers Use debugging information to find a filename and\n\
|
||||
line number for each symbol\n\
|
||||
-n, --numeric-sort Sort symbols numerically by address\n\
|
||||
@ -326,8 +325,9 @@ usage (stream, status)
|
||||
-t, --radix=RADIX Use RADIX for printing symbol values\n\
|
||||
--target=BFDNAME Specify the target object format as BFDNAME\n\
|
||||
-u, --undefined-only Display only undefined symbols\n\
|
||||
-V, --version Display this program's version number\n\
|
||||
-X 32_64 (ignored)\n\
|
||||
-h, --help Display this information\n\
|
||||
-V, --version Display this program's version number\n\
|
||||
\n"));
|
||||
list_supported_targets (program_name, stream);
|
||||
if (status == 0)
|
||||
@ -421,7 +421,7 @@ main (argc, argv)
|
||||
bfd_init ();
|
||||
set_default_bfd_target ();
|
||||
|
||||
while ((c = getopt_long (argc, argv, "aABCDef:glnopPrst:uvVX:",
|
||||
while ((c = getopt_long (argc, argv, "aABCDef:gHhlnopPrst:uvVvX:",
|
||||
long_options, (int *) 0)) != EOF)
|
||||
{
|
||||
switch (c)
|
||||
@ -462,6 +462,7 @@ main (argc, argv)
|
||||
case 'g':
|
||||
external_only = 1;
|
||||
break;
|
||||
case 'H':
|
||||
case 'h':
|
||||
usage (stdout, 0);
|
||||
case 'l':
|
||||
|
@ -360,7 +360,8 @@ copy_usage (stream, exit_status)
|
||||
FILE *stream;
|
||||
int exit_status;
|
||||
{
|
||||
fprintf (stream, _("Usage: %s <options> in-file [out-file]\n"), program_name);
|
||||
fprintf (stream, _("Usage: %s [option(s)] in-file [out-file]\n"), program_name);
|
||||
fprintf (stream, _(" Copies a binary file, possibly transforming it in the process\n"));
|
||||
fprintf (stream, _(" The options are:\n"));
|
||||
fprintf (stream, _("\
|
||||
-I --input-target <bfdname> Assume input file is in format <bfdname>\n\
|
||||
@ -429,19 +430,20 @@ strip_usage (stream, exit_status)
|
||||
FILE *stream;
|
||||
int exit_status;
|
||||
{
|
||||
fprintf (stream, _("Usage: %s <options> in-file(s)\n"), program_name);
|
||||
fprintf (stream, _("Usage: %s <option(s)> in-file(s)\n"), program_name);
|
||||
fprintf (stream, _(" Removes symbols and sections from files\n"));
|
||||
fprintf (stream, _(" The options are:\n"));
|
||||
fprintf (stream, _("\
|
||||
-I --input-target <bfdname> Assume input file is in format <bfdname>\n\
|
||||
-O --output-target <bfdname> Create an output file in format <bfdname>\n\
|
||||
-F --target <bfdname> Set both input and output format to <bfdname>\n\
|
||||
-I --input-target=<bfdname> Assume input file is in format <bfdname>\n\
|
||||
-O --output-target=<bfdname> Create an output file in format <bfdname>\n\
|
||||
-F --target=<bfdname> Set both input and output format to <bfdname>\n\
|
||||
-p --preserve-dates Copy modified/access timestamps to the output\n\
|
||||
-R --remove-section <name> Remove section <name> from the output\n\
|
||||
-R --remove-section=<name> Remove section <name> from the output\n\
|
||||
-s --strip-all Remove all symbol and relocation information\n\
|
||||
-g -S --strip-debug Remove all debugging symbols\n\
|
||||
--strip-unneeded Remove all symbols not needed by relocations\n\
|
||||
-N --strip-symbol <name> Do not copy symbol <name>\n\
|
||||
-K --keep-symbol <name> Only copy symbol <name>\n\
|
||||
-N --strip-symbol=<name> Do not copy symbol <name>\n\
|
||||
-K --keep-symbol=<name> Only copy symbol <name>\n\
|
||||
-x --discard-all Remove all non-global symbols\n\
|
||||
-X --discard-locals Remove any compiler-generated symbols\n\
|
||||
-v --verbose List all object files modified\n\
|
||||
@ -1947,7 +1949,7 @@ strip_main (argc, argv)
|
||||
struct section_list *p;
|
||||
char *output_file = NULL;
|
||||
|
||||
while ((c = getopt_long (argc, argv, "I:O:F:K:N:R:o:sSpdgxXVv",
|
||||
while ((c = getopt_long (argc, argv, "I:O:F:K:N:R:o:sSpdgxXHhVv",
|
||||
strip_options, (int *) 0)) != EOF)
|
||||
{
|
||||
switch (c)
|
||||
@ -2004,6 +2006,7 @@ strip_main (argc, argv)
|
||||
case 0:
|
||||
/* We've been given a long option. */
|
||||
break;
|
||||
case 'H':
|
||||
case 'h':
|
||||
strip_usage (stdout, 0);
|
||||
default:
|
||||
@ -2081,7 +2084,7 @@ copy_main (argc, argv)
|
||||
struct section_list *p;
|
||||
struct stat statbuf;
|
||||
|
||||
while ((c = getopt_long (argc, argv, "b:B:i:I:j:K:N:s:O:d:F:L:G:R:SpgxXVvW:",
|
||||
while ((c = getopt_long (argc, argv, "b:B:i:I:j:K:N:s:O:d:F:L:G:R:SpgxXHhVvW:",
|
||||
copy_options, (int *) 0)) != EOF)
|
||||
{
|
||||
switch (c)
|
||||
@ -2497,6 +2500,7 @@ copy_main (argc, argv)
|
||||
case 0:
|
||||
break; /* we've been given a long option */
|
||||
|
||||
case 'H':
|
||||
case 'h':
|
||||
copy_usage (stdout, 0);
|
||||
|
||||
|
@ -161,9 +161,9 @@ usage (stream, status)
|
||||
FILE *stream;
|
||||
int status;
|
||||
{
|
||||
fprintf (stream, _("Usage: %s OPTION... FILE...\n"), program_name);
|
||||
fprintf (stream, _("Display information from object FILE.\n"));
|
||||
fprintf (stream, _("\n At least one of the following switches must be given:\n"));
|
||||
fprintf (stream, _("Usage: %s <option(s)> <file(s)>\n"), program_name);
|
||||
fprintf (stream, _(" Display information from object <file(s)>.\n"));
|
||||
fprintf (stream, _(" At least one of the following switches must be given:\n"));
|
||||
fprintf (stream, _("\
|
||||
-a, --archive-headers Display archive header information\n\
|
||||
-f, --file-headers Display the contents of the overall file header\n\
|
||||
@ -180,7 +180,7 @@ usage (stream, status)
|
||||
-T, --dynamic-syms Display the contents of the dynamic symbol table\n\
|
||||
-r, --reloc Display the relocation entries in the file\n\
|
||||
-R, --dynamic-reloc Display the dynamic relocation entries in the file\n\
|
||||
-V, --version Display this program's version number\n\
|
||||
-v, --version Display this program's version number\n\
|
||||
-i, --info List object formats and architectures supported\n\
|
||||
-H, --help Display this information\n\
|
||||
"));
|
||||
@ -2766,14 +2766,14 @@ main (argc, argv)
|
||||
bfd_init ();
|
||||
set_default_bfd_target ();
|
||||
|
||||
while ((c = getopt_long (argc, argv, "pib:m:M:VCdDlfahHrRtTxsSj:wE:zgG",
|
||||
while ((c = getopt_long (argc, argv, "pib:m:M:VvCdDlfaHhrRtTxsSj:wE:zgG",
|
||||
long_options, (int *) 0))
|
||||
!= EOF)
|
||||
{
|
||||
switch (c)
|
||||
{
|
||||
case 0:
|
||||
break; /* we've been given a long option */
|
||||
break; /* We've been given a long option. */
|
||||
case 'm':
|
||||
machine = optarg;
|
||||
break;
|
||||
@ -2794,12 +2794,12 @@ main (argc, argv)
|
||||
if (optarg != NULL)
|
||||
{
|
||||
enum demangling_styles style;
|
||||
|
||||
|
||||
style = cplus_demangle_name_to_style (optarg);
|
||||
if (style == unknown_demangling)
|
||||
fatal (_("unknown demangling style `%s'"),
|
||||
optarg);
|
||||
|
||||
|
||||
cplus_demangle_set_style (style);
|
||||
}
|
||||
break;
|
||||
@ -2837,7 +2837,7 @@ main (argc, argv)
|
||||
usage (stderr, 1);
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
case 'f':
|
||||
dump_file_header = true;
|
||||
seenflag = true;
|
||||
@ -2915,6 +2915,7 @@ main (argc, argv)
|
||||
case 'H':
|
||||
usage (stdout, 0);
|
||||
seenflag = true;
|
||||
case 'v':
|
||||
case 'V':
|
||||
show_version = true;
|
||||
seenflag = true;
|
||||
|
@ -2151,35 +2151,38 @@ struct option options [] =
|
||||
static void
|
||||
usage ()
|
||||
{
|
||||
fprintf (stdout, _("Usage: readelf {options} elf-file(s)\n"));
|
||||
fprintf (stdout, _(" Options are:\n"));
|
||||
fprintf (stdout, _(" -a or --all Equivalent to: -h -l -S -s -r -d -V -A -I\n"));
|
||||
fprintf (stdout, _(" -h or --file-header Display the ELF file header\n"));
|
||||
fprintf (stdout, _(" -l or --program-headers or --segments\n"));
|
||||
fprintf (stdout, _(" Display the program headers\n"));
|
||||
fprintf (stdout, _(" -S or --section-headers or --sections\n"));
|
||||
fprintf (stdout, _(" Display the sections' header\n"));
|
||||
fprintf (stdout, _(" -e or --headers Equivalent to: -h -l -S\n"));
|
||||
fprintf (stdout, _(" -s or --syms or --symbols Display the symbol table\n"));
|
||||
fprintf (stdout, _(" -n or --notes Display the core notes (if present)\n"));
|
||||
fprintf (stdout, _(" -r or --relocs Display the relocations (if present)\n"));
|
||||
fprintf (stdout, _(" -u or --unwind Display the unwind info (if present)\n"));
|
||||
fprintf (stdout, _(" -d or --dynamic Display the dynamic segment (if present)\n"));
|
||||
fprintf (stdout, _(" -V or --version-info Display the version sections (if present)\n"));
|
||||
fprintf (stdout, _(" -A or --arch-specific Display architecture specific information (if any).\n"));
|
||||
fprintf (stdout, _(" -D or --use-dynamic Use the dynamic section info when displaying symbols\n"));
|
||||
fprintf (stdout, _(" -x <number> or --hex-dump=<number>\n"));
|
||||
fprintf (stdout, _(" Dump the contents of section <number>\n"));
|
||||
fprintf (stdout, _(" -w[liaprmfs] or --debug-dump[=line,=info,=abbrev,=pubnames,=ranges,=macro,=frames,=str]\n"));
|
||||
fprintf (stdout, _(" Display the contents of DWARF2 debug sections\n"));
|
||||
fprintf (stdout, _("Usage: readelf <option(s)> elf-file(s)\n"));
|
||||
fprintf (stdout, _(" Display information about the contents of ELF format files\n"));
|
||||
fprintf (stdout, _(" Options are:\n\
|
||||
-a --all Equivalent to: -h -l -S -s -r -d -V -A -I\n\
|
||||
-h --file-header Display the ELF file header\n\
|
||||
-l --program-headers Display the program headers\n\
|
||||
--segments An alias for --program-headers\n\
|
||||
-S --section-headers Display the sections' header\n\
|
||||
--sections An alias for --section-headers\n\
|
||||
-e --headers Equivalent to: -h -l -S\n\
|
||||
-s --syms Display the symbol table\n\
|
||||
--symbols An alias for --syms\n\
|
||||
-n --notes Display the core notes (if present)\n\
|
||||
-r --relocs Display the relocations (if present)\n\
|
||||
-u --unwind Display the unwind info (if present)\n\
|
||||
-d --dynamic Display the dynamic segment (if present)\n\
|
||||
-V --version-info Display the version sections (if present)\n\
|
||||
-A --arch-specific Display architecture specific information (if any).\n\
|
||||
-D --use-dynamic Use the dynamic section info when displaying symbols\n\
|
||||
-x --hex-dump=<number> Dump the contents of section <number>\n\
|
||||
-w --debug-dump[=line,=info,=abbrev,=pubnames,=ranges,=macro,=frames,=str]\n\
|
||||
Display the contents of DWARF2 debug sections\n"));
|
||||
#ifdef SUPPORT_DISASSEMBLY
|
||||
fprintf (stdout, _(" -i <number> or --instruction-dump=<number>\n"));
|
||||
fprintf (stdout, _(" Disassemble the contents of section <number>\n"));
|
||||
fprintf (stdout, _("\
|
||||
-i --instruction-dump=<number>\n\
|
||||
Disassemble the contents of section <number>\n"));
|
||||
#endif
|
||||
fprintf (stdout, _(" -I or --histogram Display histogram of bucket list lengths\n"));
|
||||
fprintf (stdout, _(" -v or --version Display the version number of readelf\n"));
|
||||
fprintf (stdout, _(" -W or --wide Don't split lines or truncate symbols to fit into 80 columns\n"));
|
||||
fprintf (stdout, _(" -H or --help Display this information\n"));
|
||||
fprintf (stdout, _("\
|
||||
-I --histogram Display histogram of bucket list lengths\n\
|
||||
-W --wide Allow output width to exceed 80 characters\n\
|
||||
-H --help Display this information\n\
|
||||
-v --version Display the version number of readelf\n"));
|
||||
fprintf (stdout, _("Report bugs to %s\n"), REPORT_BUGS_TO);
|
||||
|
||||
exit (0);
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* size.c -- report size of various sections of an executable file.
|
||||
Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
|
||||
Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
|
||||
Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Binutils.
|
||||
@ -76,16 +76,22 @@ usage (stream, status)
|
||||
FILE *stream;
|
||||
int status;
|
||||
{
|
||||
fprintf (stream, _("\
|
||||
Usage: %s [-A | --format=sysv | -B | --format=berkeley]\n\
|
||||
[-o | --radix=8 | -d | --radix=10 | -h | --radix=16]\n\
|
||||
[-V | --version] [--target=bfdname] [--help] [file...]\n"),
|
||||
program_name);
|
||||
fprintf (stream, _("Usage: %s [option(s)] [file(s)]\n"), program_name);
|
||||
fprintf (stream, _(" Displays the sizes of sections inside binary files\n"));
|
||||
fprintf (stream, _(" If no input file(s) are specified, a.out is assumed\n"));
|
||||
fprintf (stream, _(" The options are:\n\
|
||||
-A|-B --format={sysv|berkeley} Select output style (default is %s)\n\
|
||||
-o|-d|-h --radix={8|10|16} Display numbers in octal, decimal or hex\n\
|
||||
--target=<bfdname> Set the binary file format\n\
|
||||
-h --help Display this information\n\
|
||||
-v --version Display the program's version\n\
|
||||
\n"),
|
||||
#if BSD_DEFAULT
|
||||
fputs (_("default is --format=berkeley\n"), stream);
|
||||
"berkeley"
|
||||
#else
|
||||
fputs (_("default is --format=sysv\n"), stream);
|
||||
"sysv"
|
||||
#endif
|
||||
);
|
||||
list_supported_targets (program_name, stream);
|
||||
if (status == 0)
|
||||
fprintf (stream, _("Report bugs to %s\n"), REPORT_BUGS_TO);
|
||||
@ -127,7 +133,7 @@ main (argc, argv)
|
||||
bfd_init ();
|
||||
set_default_bfd_target ();
|
||||
|
||||
while ((c = getopt_long (argc, argv, "ABVdfox", long_options,
|
||||
while ((c = getopt_long (argc, argv, "ABHhVvdfox", long_options,
|
||||
(int *) 0)) != EOF)
|
||||
switch (c)
|
||||
{
|
||||
@ -181,6 +187,7 @@ main (argc, argv)
|
||||
case 'B':
|
||||
berkeley_format = 1;
|
||||
break;
|
||||
case 'v':
|
||||
case 'V':
|
||||
show_version = 1;
|
||||
break;
|
||||
@ -205,6 +212,8 @@ main (argc, argv)
|
||||
break;
|
||||
case 0:
|
||||
break;
|
||||
case 'h':
|
||||
case 'H':
|
||||
case '?':
|
||||
usage (stderr, 1);
|
||||
}
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,6 +1,6 @@
|
||||
/* strings -- print the strings of printable characters in files
|
||||
Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
|
||||
Free Software Foundation, Inc.
|
||||
Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
|
||||
2002 Free Software Foundation, Inc.
|
||||
|
||||
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
|
||||
@ -176,7 +176,7 @@ main (argc, argv)
|
||||
target = NULL;
|
||||
encoding = 's';
|
||||
|
||||
while ((optc = getopt_long (argc, argv, "afn:ot:e:v0123456789",
|
||||
while ((optc = getopt_long (argc, argv, "afhHn:ot:e:Vv0123456789",
|
||||
long_options, (int *) 0)) != EOF)
|
||||
{
|
||||
switch (optc)
|
||||
@ -189,6 +189,7 @@ main (argc, argv)
|
||||
print_filenames = true;
|
||||
break;
|
||||
|
||||
case 'H':
|
||||
case 'h':
|
||||
usage (stdout, 0);
|
||||
|
||||
@ -238,6 +239,7 @@ main (argc, argv)
|
||||
encoding = optarg[0];
|
||||
break;
|
||||
|
||||
case 'V':
|
||||
case 'v':
|
||||
print_version ("strings");
|
||||
break;
|
||||
@ -645,11 +647,20 @@ usage (stream, status)
|
||||
FILE *stream;
|
||||
int status;
|
||||
{
|
||||
fprintf (stream, _("\
|
||||
Usage: %s [-afov] [-n min-len] [-min-len] [-t {o,x,d}] [-e {s,b,l,B,L}]\n\
|
||||
[-] [--all] [--print-file-name] [--bytes=min-len] [--radix={o,x,d}]\n\
|
||||
[--target=bfdname] [--encoding {s,b,l,B,L}] [--help] [--version] file...\n"),
|
||||
program_name);
|
||||
fprintf (stream, _("Usage: %s [option(s)] [file(s)]\n"), program_name);
|
||||
fprintf (stream, _(" Display printable strings in [file(s)] (stdin by default)\n"));
|
||||
fprintf (stream, _(" The options are:\n\
|
||||
-a - --all Scan the entire file, not just the data section\n\
|
||||
-f --print-file-name Print the name of the file before each string\n\
|
||||
-n --bytes=[number] Locate & print any NUL-terminated sequence of at\n\
|
||||
-<number> least [number] characters (default 4).\n\
|
||||
-t --radix={o,x,d} Print the location of the string in base 8, 10 or 16\n\
|
||||
-o An alias for --radix=o\n\
|
||||
-T --target=<BFDNAME> Specify the binary file format\n\
|
||||
-e --encoding={s,b,l,B,L} Select character size and endianness:\n\
|
||||
s = 8-bit, {b,l} = 16-bit, {B,L} = 32-bit\n\
|
||||
-h --help Display this information\n\
|
||||
-v --version Print the program's version number\n"));
|
||||
list_supported_targets (program_name, stream);
|
||||
if (status == 0)
|
||||
fprintf (stream, _("Report bugs to %s\n"), REPORT_BUGS_TO);
|
||||
|
@ -1,5 +1,6 @@
|
||||
/* Sysroff object format dumper.
|
||||
Copyright 1994, 1995, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
|
||||
Copyright 1994, 1995, 1998, 1999, 2000, 2001, 2002
|
||||
Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Binutils.
|
||||
|
||||
@ -22,7 +23,7 @@
|
||||
/* Written by Steve Chamberlain <sac@cygnus.com>.
|
||||
|
||||
This program reads a SYSROFF object file and prints it in an
|
||||
almost human readable form to stdout. */
|
||||
almost human readable form to stdout. */
|
||||
|
||||
#include "bfd.h"
|
||||
#include "bucomm.h"
|
||||
@ -52,7 +53,6 @@ static void dump_symbol_info PARAMS ((void));
|
||||
static void derived_type PARAMS ((void));
|
||||
static void module PARAMS ((void));
|
||||
static void show_usage PARAMS ((FILE *, int));
|
||||
static void show_help PARAMS ((void));
|
||||
|
||||
extern char *getCHARS PARAMS ((unsigned char *, int *, int, int));
|
||||
extern int fillup PARAMS ((char *));
|
||||
@ -73,14 +73,13 @@ getCHARS (ptr, idx, size, max)
|
||||
int oc = *idx / 8;
|
||||
char *r;
|
||||
int b = size;
|
||||
|
||||
if (b >= max)
|
||||
{
|
||||
return "*undefined*";
|
||||
}
|
||||
return "*undefined*";
|
||||
|
||||
if (b == 0)
|
||||
{
|
||||
/* Got to work out the length of the string from self */
|
||||
/* Got to work out the length of the string from self. */
|
||||
b = ptr[oc++];
|
||||
(*idx) += 8;
|
||||
}
|
||||
@ -89,6 +88,7 @@ getCHARS (ptr, idx, size, max)
|
||||
r = xcalloc (b + 1, 1);
|
||||
memcpy (r, ptr + oc, b);
|
||||
r[b] = 0;
|
||||
|
||||
return r;
|
||||
}
|
||||
|
||||
@ -116,10 +116,12 @@ dh (ptr, size)
|
||||
for (j = 0; j < span && j + i < size; j++)
|
||||
{
|
||||
int c = ptr[i + j];
|
||||
|
||||
if (c < 32 || c > 127)
|
||||
c = '.';
|
||||
printf ("%c", c);
|
||||
}
|
||||
|
||||
printf ("\n");
|
||||
}
|
||||
}
|
||||
@ -131,18 +133,17 @@ fillup (ptr)
|
||||
int size;
|
||||
int sum;
|
||||
int i;
|
||||
|
||||
size = getc (file) - 2;
|
||||
fread (ptr, 1, size, file);
|
||||
sum = code + size + 2;
|
||||
|
||||
for (i = 0; i < size; i++)
|
||||
{
|
||||
sum += ptr[i];
|
||||
}
|
||||
sum += ptr[i];
|
||||
|
||||
if ((sum & 0xff) != 0xff)
|
||||
{
|
||||
printf ("SUM IS %x\n", sum);
|
||||
}
|
||||
printf ("SUM IS %x\n", sum);
|
||||
|
||||
if (dump)
|
||||
dh (ptr, size);
|
||||
|
||||
@ -160,12 +161,13 @@ getBARRAY (ptr, idx, dsize, max)
|
||||
int i;
|
||||
int byte = *idx / 8;
|
||||
int size = ptr[byte++];
|
||||
|
||||
res.len = size;
|
||||
res.data = (unsigned char *) xmalloc (size);
|
||||
|
||||
for (i = 0; i < size; i++)
|
||||
{
|
||||
res.data[i] = ptr[byte++];
|
||||
}
|
||||
res.data[i] = ptr[byte++];
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
@ -180,13 +182,14 @@ getINT (ptr, idx, size, max)
|
||||
int byte = *idx / 8;
|
||||
|
||||
if (byte >= max)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
return 0;
|
||||
|
||||
if (size == -2)
|
||||
size = addrsize;
|
||||
|
||||
if (size == -1)
|
||||
size = 0;
|
||||
|
||||
switch (size)
|
||||
{
|
||||
case 0:
|
||||
@ -203,6 +206,7 @@ getINT (ptr, idx, size, max)
|
||||
default:
|
||||
abort ();
|
||||
}
|
||||
|
||||
*idx += size * 8;
|
||||
return n;
|
||||
}
|
||||
@ -233,14 +237,15 @@ itheader (name, code)
|
||||
}
|
||||
|
||||
static int indent;
|
||||
|
||||
static void
|
||||
p ()
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i = 0; i < indent; i++)
|
||||
{
|
||||
printf ("| ");
|
||||
}
|
||||
printf ("| ");
|
||||
|
||||
printf ("> ");
|
||||
}
|
||||
|
||||
@ -255,12 +260,13 @@ pbarray (y)
|
||||
barray *y;
|
||||
{
|
||||
int x;
|
||||
|
||||
printf ("%d (", y->len);
|
||||
|
||||
for (x = 0; x < y->len; x++)
|
||||
{
|
||||
printf ("(%02x %c)", y->data[x],
|
||||
ISPRINT (y->data[x]) ? y->data[x] : '.');
|
||||
}
|
||||
printf ("(%02x %c)", y->data[x],
|
||||
ISPRINT (y->data[x]) ? y->data[x] : '.');
|
||||
|
||||
printf (")\n");
|
||||
}
|
||||
|
||||
@ -269,27 +275,26 @@ pbarray (y)
|
||||
|
||||
#include "sysroff.c"
|
||||
|
||||
/*
|
||||
* FIXME: sysinfo, which generates sysroff.[ch] from sysroff.info, can't
|
||||
* hack the special case of the tr block, which has no contents. So we
|
||||
* implement our own functions for reading in and printing out the tr
|
||||
* block.
|
||||
*/
|
||||
/* FIXME: sysinfo, which generates sysroff.[ch] from sysroff.info, can't
|
||||
hack the special case of the tr block, which has no contents. So we
|
||||
implement our own functions for reading in and printing out the tr
|
||||
block. */
|
||||
|
||||
#define IT_tr_CODE 0x7f
|
||||
|
||||
void
|
||||
sysroff_swap_tr_in()
|
||||
{
|
||||
char raw[255];
|
||||
char raw[255];
|
||||
|
||||
memset(raw, 0, 255);
|
||||
fillup(raw);
|
||||
memset (raw, 0, 255);
|
||||
fillup (raw);
|
||||
}
|
||||
|
||||
void
|
||||
sysroff_print_tr_out()
|
||||
{
|
||||
itheader("tr", IT_tr_CODE);
|
||||
itheader ("tr", IT_tr_CODE);
|
||||
}
|
||||
|
||||
static int
|
||||
@ -297,6 +302,7 @@ getone (type)
|
||||
int type;
|
||||
{
|
||||
int c = getc (file);
|
||||
|
||||
code = c;
|
||||
|
||||
if ((c & 0x7f) != type)
|
||||
@ -314,6 +320,7 @@ getone (type)
|
||||
sysroff_print_cs_out (&dummy);
|
||||
}
|
||||
break;
|
||||
|
||||
case IT_dln_CODE:
|
||||
{
|
||||
struct IT_dln dummy;
|
||||
@ -321,6 +328,7 @@ getone (type)
|
||||
sysroff_print_dln_out (&dummy);
|
||||
}
|
||||
break;
|
||||
|
||||
case IT_hd_CODE:
|
||||
{
|
||||
struct IT_hd dummy;
|
||||
@ -329,6 +337,7 @@ getone (type)
|
||||
sysroff_print_hd_out (&dummy);
|
||||
}
|
||||
break;
|
||||
|
||||
case IT_dar_CODE:
|
||||
{
|
||||
struct IT_dar dummy;
|
||||
@ -336,6 +345,7 @@ getone (type)
|
||||
sysroff_print_dar_out (&dummy);
|
||||
}
|
||||
break;
|
||||
|
||||
case IT_dsy_CODE:
|
||||
{
|
||||
struct IT_dsy dummy;
|
||||
@ -343,6 +353,7 @@ getone (type)
|
||||
sysroff_print_dsy_out (&dummy);
|
||||
}
|
||||
break;
|
||||
|
||||
case IT_dfp_CODE:
|
||||
{
|
||||
struct IT_dfp dummy;
|
||||
@ -350,6 +361,7 @@ getone (type)
|
||||
sysroff_print_dfp_out (&dummy);
|
||||
}
|
||||
break;
|
||||
|
||||
case IT_dso_CODE:
|
||||
{
|
||||
struct IT_dso dummy;
|
||||
@ -357,6 +369,7 @@ getone (type)
|
||||
sysroff_print_dso_out (&dummy);
|
||||
}
|
||||
break;
|
||||
|
||||
case IT_dpt_CODE:
|
||||
{
|
||||
struct IT_dpt dummy;
|
||||
@ -364,6 +377,7 @@ getone (type)
|
||||
sysroff_print_dpt_out (&dummy);
|
||||
}
|
||||
break;
|
||||
|
||||
case IT_den_CODE:
|
||||
{
|
||||
struct IT_den dummy;
|
||||
@ -371,6 +385,7 @@ getone (type)
|
||||
sysroff_print_den_out (&dummy);
|
||||
}
|
||||
break;
|
||||
|
||||
case IT_dbt_CODE:
|
||||
{
|
||||
struct IT_dbt dummy;
|
||||
@ -378,6 +393,7 @@ getone (type)
|
||||
sysroff_print_dbt_out (&dummy);
|
||||
}
|
||||
break;
|
||||
|
||||
case IT_dty_CODE:
|
||||
{
|
||||
struct IT_dty dummy;
|
||||
@ -385,6 +401,7 @@ getone (type)
|
||||
sysroff_print_dty_out (&dummy);
|
||||
}
|
||||
break;
|
||||
|
||||
case IT_un_CODE:
|
||||
{
|
||||
struct IT_un dummy;
|
||||
@ -392,6 +409,7 @@ getone (type)
|
||||
sysroff_print_un_out (&dummy);
|
||||
}
|
||||
break;
|
||||
|
||||
case IT_sc_CODE:
|
||||
{
|
||||
struct IT_sc dummy;
|
||||
@ -399,6 +417,7 @@ getone (type)
|
||||
sysroff_print_sc_out (&dummy);
|
||||
}
|
||||
break;
|
||||
|
||||
case IT_er_CODE:
|
||||
{
|
||||
struct IT_er dummy;
|
||||
@ -406,6 +425,7 @@ getone (type)
|
||||
sysroff_print_er_out (&dummy);
|
||||
}
|
||||
break;
|
||||
|
||||
case IT_ed_CODE:
|
||||
{
|
||||
struct IT_ed dummy;
|
||||
@ -413,6 +433,7 @@ getone (type)
|
||||
sysroff_print_ed_out (&dummy);
|
||||
}
|
||||
break;
|
||||
|
||||
case IT_sh_CODE:
|
||||
{
|
||||
struct IT_sh dummy;
|
||||
@ -420,6 +441,7 @@ getone (type)
|
||||
sysroff_print_sh_out (&dummy);
|
||||
}
|
||||
break;
|
||||
|
||||
case IT_ob_CODE:
|
||||
{
|
||||
struct IT_ob dummy;
|
||||
@ -427,6 +449,7 @@ getone (type)
|
||||
sysroff_print_ob_out (&dummy);
|
||||
}
|
||||
break;
|
||||
|
||||
case IT_rl_CODE:
|
||||
{
|
||||
struct IT_rl dummy;
|
||||
@ -434,6 +457,7 @@ getone (type)
|
||||
sysroff_print_rl_out (&dummy);
|
||||
}
|
||||
break;
|
||||
|
||||
case IT_du_CODE:
|
||||
{
|
||||
struct IT_du dummy;
|
||||
@ -442,6 +466,7 @@ getone (type)
|
||||
sysroff_print_du_out (&dummy);
|
||||
}
|
||||
break;
|
||||
|
||||
case IT_dus_CODE:
|
||||
{
|
||||
struct IT_dus dummy;
|
||||
@ -449,6 +474,7 @@ getone (type)
|
||||
sysroff_print_dus_out (&dummy);
|
||||
}
|
||||
break;
|
||||
|
||||
case IT_dul_CODE:
|
||||
{
|
||||
struct IT_dul dummy;
|
||||
@ -456,6 +482,7 @@ getone (type)
|
||||
sysroff_print_dul_out (&dummy);
|
||||
}
|
||||
break;
|
||||
|
||||
case IT_dss_CODE:
|
||||
{
|
||||
struct IT_dss dummy;
|
||||
@ -463,6 +490,7 @@ getone (type)
|
||||
sysroff_print_dss_out (&dummy);
|
||||
}
|
||||
break;
|
||||
|
||||
case IT_hs_CODE:
|
||||
{
|
||||
struct IT_hs dummy;
|
||||
@ -470,6 +498,7 @@ getone (type)
|
||||
sysroff_print_hs_out (&dummy);
|
||||
}
|
||||
break;
|
||||
|
||||
case IT_dps_CODE:
|
||||
{
|
||||
struct IT_dps dummy;
|
||||
@ -477,24 +506,27 @@ getone (type)
|
||||
sysroff_print_dps_out (&dummy);
|
||||
}
|
||||
break;
|
||||
|
||||
case IT_tr_CODE:
|
||||
{
|
||||
sysroff_swap_tr_in ();
|
||||
sysroff_print_tr_out ();
|
||||
}
|
||||
sysroff_swap_tr_in ();
|
||||
sysroff_print_tr_out ();
|
||||
break;
|
||||
|
||||
case IT_dds_CODE:
|
||||
{
|
||||
struct IT_dds dummy;
|
||||
|
||||
sysroff_swap_dds_in (&dummy);
|
||||
sysroff_print_dds_out (&dummy);
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
printf ("GOT A %x\n", c);
|
||||
return 0;
|
||||
break;
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
@ -552,9 +584,7 @@ must (x)
|
||||
int x;
|
||||
{
|
||||
if (!getone (x))
|
||||
{
|
||||
printf ("WANTED %x!!\n", x);
|
||||
}
|
||||
printf ("WANTED %x!!\n", x);
|
||||
}
|
||||
|
||||
static void
|
||||
@ -563,6 +593,7 @@ tab (i, s)
|
||||
char *s;
|
||||
{
|
||||
indent += i;
|
||||
|
||||
if (s)
|
||||
{
|
||||
p ();
|
||||
@ -575,6 +606,7 @@ static void
|
||||
dump_symbol_info ()
|
||||
{
|
||||
tab (1, "SYMBOL INFO");
|
||||
|
||||
while (opt (IT_dsy_CODE))
|
||||
{
|
||||
if (opt (IT_dty_CODE))
|
||||
@ -584,6 +616,7 @@ dump_symbol_info ()
|
||||
must (IT_dty_CODE);
|
||||
}
|
||||
}
|
||||
|
||||
tab (-1, "");
|
||||
}
|
||||
|
||||
@ -591,6 +624,7 @@ static void
|
||||
derived_type ()
|
||||
{
|
||||
tab (1, "DERIVED TYPE");
|
||||
|
||||
while (1)
|
||||
{
|
||||
if (opt (IT_dpp_CODE))
|
||||
@ -730,16 +764,15 @@ show_usage (file, status)
|
||||
FILE *file;
|
||||
int status;
|
||||
{
|
||||
fprintf (file, _("Usage: %s [-hV] in-file\n"), program_name);
|
||||
exit (status);
|
||||
}
|
||||
fprintf (file, _("Usage: %s [option(s)] in-file\n"), program_name);
|
||||
fprintf (file, _("Print a human readable interpretation of a SYSROFF object file\n"));
|
||||
fprintf (file, _(" The options are:\n\
|
||||
-h --help Display this information\n\
|
||||
-v --version Print the program's version number\n"));
|
||||
|
||||
static void
|
||||
show_help ()
|
||||
{
|
||||
printf (_("%s: Print a human readable interpretation of a SYSROFF object file\n"),
|
||||
program_name);
|
||||
show_usage (stdout, 0);
|
||||
if (status == 0)
|
||||
fprintf (file, _("Report bugs to %s\n"), REPORT_BUGS_TO);
|
||||
exit (status);
|
||||
}
|
||||
|
||||
int
|
||||
@ -768,13 +801,15 @@ main (ac, av)
|
||||
program_name = av[0];
|
||||
xmalloc_set_program_name (program_name);
|
||||
|
||||
while ((opt = getopt_long (ac, av, "hV", long_options, (int *) NULL)) != EOF)
|
||||
while ((opt = getopt_long (ac, av, "HhVv", long_options, (int *) NULL)) != EOF)
|
||||
{
|
||||
switch (opt)
|
||||
{
|
||||
case 'H':
|
||||
case 'h':
|
||||
show_help ();
|
||||
show_usage (stdout, 0);
|
||||
/*NOTREACHED*/
|
||||
case 'v':
|
||||
case 'V':
|
||||
print_version ("sysdump");
|
||||
exit (0);
|
||||
@ -790,20 +825,15 @@ main (ac, av)
|
||||
/* The input and output files may be named on the command line. */
|
||||
|
||||
if (optind < ac)
|
||||
{
|
||||
input_file = av[optind];
|
||||
}
|
||||
input_file = av[optind];
|
||||
|
||||
if (!input_file)
|
||||
{
|
||||
fatal (_("no input file specified"));
|
||||
}
|
||||
fatal (_("no input file specified"));
|
||||
|
||||
file = fopen (input_file, FOPEN_RB);
|
||||
|
||||
if (!file)
|
||||
{
|
||||
fatal (_("cannot open input file %s"), input_file);
|
||||
}
|
||||
fatal (_("cannot open input file %s"), input_file);
|
||||
|
||||
module ();
|
||||
return 0;
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* windres.c -- a program to manipulate Windows resources
|
||||
Copyright 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
|
||||
Copyright 1997, 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
|
||||
Written by Ian Lance Taylor, Cygnus Support.
|
||||
|
||||
This file is part of GNU Binutils.
|
||||
@ -638,13 +638,11 @@ format_from_filename (filename, input)
|
||||
|
||||
/* If we don't recognize the name of an output file, assume it's a
|
||||
COFF file. */
|
||||
|
||||
if (! input)
|
||||
return RES_FORMAT_COFF;
|
||||
|
||||
/* Read the first few bytes of the file to see if we can guess what
|
||||
it is. */
|
||||
|
||||
e = fopen (filename, FOPEN_RB);
|
||||
if (e == NULL)
|
||||
fatal ("%s: %s", filename, strerror (errno));
|
||||
@ -701,45 +699,46 @@ usage (stream, status)
|
||||
FILE *stream;
|
||||
int status;
|
||||
{
|
||||
fprintf (stream, _("Usage: %s [options] [input-file] [output-file]\n"),
|
||||
fprintf (stream, _("Usage: %s [option(s)] [input-file] [output-file]\n"),
|
||||
program_name);
|
||||
fprintf (stream, _("\
|
||||
Options:\n\
|
||||
-i FILE, --input FILE Name input file\n\
|
||||
-o FILE, --output FILE Name output file\n\
|
||||
-I FORMAT, --input-format FORMAT\n\
|
||||
Specify input format\n\
|
||||
-O FORMAT, --output-format FORMAT\n\
|
||||
Specify output format\n\
|
||||
-F TARGET, --target TARGET Specify COFF target\n\
|
||||
--preprocessor PROGRAM Program to use to preprocess rc file\n\
|
||||
--include-dir DIR Include directory when preprocessing rc file\n\
|
||||
-DSYM[=VAL], --define SYM[=VAL]\n\
|
||||
Define SYM when preprocessing rc file\n\
|
||||
-v Verbose - tells you what it's doing\n\
|
||||
--language VAL Set language when reading rc file\n\
|
||||
--use-temp-file Use a temporary file instead of popen to read\n\
|
||||
the preprocessor output\n\
|
||||
--no-use-temp-file Use popen (default)\n"));
|
||||
fprintf (stream, _(" The options are:\n\
|
||||
-i --input=<file> Name input file\n\
|
||||
-o --output=<file> Name output file\n\
|
||||
-I --input-format=<format> Specify input format\n\
|
||||
-O --output-format=<format> Specify output format\n\
|
||||
-F --target=<target> Specify COFF target\n\
|
||||
--preprocessor=<program> Program to use to preprocess rc file\n\
|
||||
--include-dir=<dir> Include directory when preprocessing rc file\n\
|
||||
-D --define <sym>[=<val>] Define SYM when preprocessing rc file\n\
|
||||
-v --verbose Verbose - tells you what it's doing\n\
|
||||
--language=<val> Set language when reading rc file\n\
|
||||
--use-temp-file Use a temporary file instead of popen to read\n\
|
||||
the preprocessor output\n\
|
||||
--no-use-temp-file Use popen (default)\n"));
|
||||
#ifdef YYDEBUG
|
||||
fprintf (stream, _("\
|
||||
--yydebug Turn on parser debugging\n"));
|
||||
--yydebug Turn on parser debugging\n"));
|
||||
#endif
|
||||
fprintf (stream, _("\
|
||||
--help Print this help message\n\
|
||||
--version Print version information\n"));
|
||||
-h --help Print this help message\n\
|
||||
-V --version Print version information\n"));
|
||||
fprintf (stream, _("\
|
||||
FORMAT is one of rc, res, or coff, and is deduced from the file name\n\
|
||||
extension if not specified. A single file name is an input file.\n\
|
||||
No input-file is stdin, default rc. No output-file is stdout, default rc.\n"));
|
||||
|
||||
list_supported_targets (program_name, stream);
|
||||
|
||||
if (status == 0)
|
||||
fprintf (stream, _("Report bugs to %s\n"), REPORT_BUGS_TO);
|
||||
|
||||
exit (status);
|
||||
}
|
||||
|
||||
/* Quote characters that will confuse the shell when we run the preprocessor */
|
||||
static const char *quot (string)
|
||||
/* Quote characters that will confuse the shell when we run the preprocessor. */
|
||||
|
||||
static const char *
|
||||
quot (string)
|
||||
const char *string;
|
||||
{
|
||||
static char *buf = 0;
|
||||
@ -813,7 +812,7 @@ main (argc, argv)
|
||||
language = -1;
|
||||
use_temp_file = 0;
|
||||
|
||||
while ((c = getopt_long (argc, argv, "i:o:I:O:F:D:v", long_options,
|
||||
while ((c = getopt_long (argc, argv, "i:o:I:O:F:D:hHvV", long_options,
|
||||
(int *) 0)) != EOF)
|
||||
{
|
||||
switch (c)
|
||||
@ -916,10 +915,13 @@ main (argc, argv)
|
||||
break;
|
||||
#endif
|
||||
|
||||
case 'h':
|
||||
case 'H':
|
||||
case OPTION_HELP:
|
||||
usage (stdout, 0);
|
||||
break;
|
||||
|
||||
case 'V':
|
||||
case OPTION_VERSION:
|
||||
print_version ("windres");
|
||||
break;
|
||||
|
Loading…
Reference in New Issue
Block a user