* nm.c: HOST_64_BIT was renamed to BFD_HOST_64_BIT.

This commit is contained in:
Ian Lance Taylor 1994-06-10 21:14:49 +00:00
parent f8015b8526
commit 8291be48a9
2 changed files with 43 additions and 15 deletions

View File

@ -1,5 +1,7 @@
Fri Jun 10 15:41:25 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com)
* nm.c: HOST_64_BIT was renamed to BFD_HOST_64_BIT.
* objcopy.c (copy_archive): Make the temporary directory in the
same directory as the output BFD, since we may not have write
permission on the current directory. Set the permissions of the

View File

@ -152,6 +152,7 @@ static int print_armap = 0; /* describe __.SYMDEF data in archive files. */
static int reverse_sort = 0; /* sort in downward(alpha or numeric) order */
static int sort_numerically = 0; /* sort in numeric rather than alpha order */
static int undefined_only = 0; /* print undefined symbols only */
static int dynamic = 0; /* print dynamic symbols. */
static int show_version = 0; /* show the version number */
/* When to print the names of files. Not mutually exclusive in SYSV format. */
@ -159,7 +160,7 @@ static int filename_per_file = 0; /* Once per file, on its own line. */
static int filename_per_symbol = 0; /* Once per symbol, at start of line. */
/* Print formats for printing a symbol value. */
#ifdef HOST_64_BIT
#ifdef BFD_HOST_64_BIT
static char value_format[] = "%08x%08x";
#else
static char value_format[] = "%08lx";
@ -178,6 +179,7 @@ static struct option long_options[] =
{
{"debug-syms", no_argument, &print_debug_syms, 1},
{"demangle", no_argument, &do_demangle, 1},
{"dynamic", no_argument, &dynamic, 1},
{"extern-only", no_argument, &external_only, 1},
{"format", required_argument, 0, 'f'},
{"help", no_argument, 0, 'h'},
@ -202,11 +204,11 @@ usage (stream, status)
int status;
{
fprintf (stream, "\
Usage: %s [-aABCgnopPrsuvV] [-t radix] [--radix=radix] [--target=bfdname]\n\
Usage: %s [-aABCDgnopPrsuvV] [-t radix] [--radix=radix] [--target=bfdname]\n\
[--debug-syms] [--extern-only] [--print-armap] [--print-file-name]\n\
[--numeric-sort] [--no-sort] [--reverse-sort] [--undefined-only]\n\
[--portability] [-f {bsd,sysv,posix}] [--format={bsd,sysv,posix}]\n\
[--demangle] [--version] [--help] [file...]\n",
[--demangle] [--dynamic] [--version] [--help] [file...]\n",
program_name);
exit (status);
}
@ -222,7 +224,7 @@ set_print_radix (radix)
case 'd':
case 'o':
case 'x':
#ifdef HOST_64_BIT
#ifdef BFD_HOST_64_BIT
value_format[3] = value_format[7] = *radix;
#else
value_format[4] = *radix;
@ -275,7 +277,7 @@ main (argc, argv)
bfd_init ();
while ((c = getopt_long (argc, argv, "aABCf:gnopPrst:uvV", long_options, (int *) 0)) != EOF)
while ((c = getopt_long (argc, argv, "aABCDf:gnopPrst:uvV", long_options, (int *) 0)) != EOF)
{
switch (c)
{
@ -292,6 +294,9 @@ main (argc, argv)
case 'C':
do_demangle = 1;
break;
case 'D':
dynamic = 1;
break;
case 'f':
set_output_format (optarg);
break;
@ -509,26 +514,47 @@ display_rel_file (abfd, archive_bfd)
asymbol **syms;
long symcount = 0;
if (!(bfd_get_file_flags (abfd) & HAS_SYMS))
if (dynamic)
{
printf ("No symbols in \"%s\".\n", bfd_get_filename (abfd));
return;
if (!(bfd_get_file_flags (abfd) & DYNAMIC))
{
printf ("\"%s\" is not a dynamic object.\n",
bfd_get_filename (abfd));
return;
}
}
else
{
if (!(bfd_get_file_flags (abfd) & HAS_SYMS))
{
printf ("No symbols in \"%s\".\n", bfd_get_filename (abfd));
return;
}
}
storage = bfd_get_symtab_upper_bound (abfd);
if (dynamic)
storage = bfd_get_dynamic_symtab_upper_bound (abfd);
else
storage = bfd_get_symtab_upper_bound (abfd);
if (storage < 0)
bfd_fatal (bfd_get_filename (abfd));
if (storage == 0)
{
nosymz:
fprintf (stderr, "%s: Symflags set but there are none?\n",
bfd_get_filename (abfd));
if (dynamic)
fprintf (stderr, "%s: no symbols\n", bfd_get_filename (abfd));
else
fprintf (stderr, "%s: Symflags set but there are none?\n",
bfd_get_filename (abfd));
return;
}
syms = (asymbol **) xmalloc (storage);
symcount = bfd_canonicalize_symtab (abfd, syms);
if (dynamic)
symcount = bfd_canonicalize_dynamic_symtab (abfd, syms);
else
symcount = bfd_canonicalize_symtab (abfd, syms);
if (symcount < 0)
bfd_fatal (bfd_get_filename (abfd));
if (symcount == 0)
@ -800,7 +826,7 @@ print_symbol_info_bsd (info, abfd)
printf (" ");
else
{
#ifdef HOST_64_BIT
#ifdef BFD_HOST_64_BIT
printf (value_format, uint64_typeHIGH (info->value),
uint64_typeLOW (info->value));
#else
@ -830,7 +856,7 @@ print_symbol_info_sysv (info, abfd)
printf (" "); /* Value */
else
{
#ifdef HOST_64_BIT
#ifdef BFD_HOST_64_BIT
printf (value_format, uint64_typeHIGH (info->value),
uint64_typeLOW (info->value));
#else
@ -860,7 +886,7 @@ print_symbol_info_posix (info, abfd)
printf (" ");
else
{
#ifdef HOST_64_BIT
#ifdef BFD_HOST_64_BIT
printf (value_format, uint64_typeHIGH (info->value),
uint64_typeLOW (info->value));
#else