nm: Add --quiet to suppress "no symbols" diagnostic
PR binutils/27408 * readelf.c (quiet): New option flag. (enum long_option_values): New enum to hold long option value. (long_options): Add --quiet. (usage): Mention --quiet. (display_rel_file): If quiet is enabled, suppress "no symbols". (main): Handle the new option. * NEWS: Mention --quiet. * docs/binutils.texi: Document --quiet.
This commit is contained in:
parent
fe0171d248
commit
7fe1b1388f
@ -1,3 +1,15 @@
|
||||
2021-02-26 Fangrui Song <maskray@google.com>
|
||||
|
||||
PR 27408
|
||||
* readelf.c (quiet): New option flag.
|
||||
(enum long_option_values): New enum to hold long option value.
|
||||
(long_options): Add --quiet.
|
||||
(usage): Mention --quiet.
|
||||
(display_rel_file): If quiet is enabled, suppress "no symbols".
|
||||
(main): Handle the new option.
|
||||
* NEWS: Mention --quiet.
|
||||
* docs/binutils.texi: Document --quiet.
|
||||
|
||||
2021-02-26 Tom de Vries <tdevries@suse.de>
|
||||
|
||||
* dwarf.c (display_debug_addr): Handle dwarf-5 .debug_addr bits.
|
||||
|
@ -10,6 +10,9 @@
|
||||
restored by the use of the --enable-follow-debug-links=no configure time
|
||||
option.
|
||||
|
||||
* Nm has a new command line option: --quiet. This suppresses "no symbols"
|
||||
diagnostic.
|
||||
|
||||
Changes in 2.36:
|
||||
|
||||
* Update elfedit and readelf with LAM_U48 and LAM_U57 support.
|
||||
|
@ -4741,6 +4741,7 @@ readelf [@option{-a}|@option{--all}]
|
||||
[@option{-s}|@option{--syms}|@option{--symbols}]
|
||||
[@option{--dyn-syms}|@option{--lto-syms}]
|
||||
[@option{--demangle@var{=style}}|@option{--no-demangle}]
|
||||
[@option{--quiet}]
|
||||
[@option{--recurse-limit}|@option{--no-recurse-limit}]
|
||||
[@option{-n}|@option{--notes}]
|
||||
[@option{-r}|@option{--relocs}]
|
||||
@ -4822,6 +4823,10 @@ file.
|
||||
Displays the information contained in the file's segment headers, if it
|
||||
has any.
|
||||
|
||||
@item --quiet
|
||||
@cindex quiet
|
||||
Suppress "no symbols" diagnostic.
|
||||
|
||||
@item -S
|
||||
@itemx --sections
|
||||
@itemx --section-headers
|
||||
|
@ -161,6 +161,7 @@ static int show_version = 0; /* Show the version number. */
|
||||
static int show_synthetic = 0; /* Display synthesized symbols too. */
|
||||
static int line_numbers = 0; /* Print line numbers for symbols. */
|
||||
static int allow_special_symbols = 0; /* Allow special symbols. */
|
||||
static int quiet = 0; /* Suppress "no symbols" diagnostic. */
|
||||
|
||||
/* The characters to use for global and local ifunc symbols. */
|
||||
#if DEFAULT_F_FOR_IFUNC_SYMBOLS
|
||||
@ -200,7 +201,8 @@ enum long_option_values
|
||||
OPTION_RECURSE_LIMIT,
|
||||
OPTION_NO_RECURSE_LIMIT,
|
||||
OPTION_IFUNC_CHARS,
|
||||
OPTION_WITH_SYMBOL_VERSIONS
|
||||
OPTION_WITH_SYMBOL_VERSIONS,
|
||||
OPTION_QUIET
|
||||
};
|
||||
|
||||
static struct option long_options[] =
|
||||
@ -224,6 +226,7 @@ static struct option long_options[] =
|
||||
{"print-armap", no_argument, &print_armap, 1},
|
||||
{"print-file-name", no_argument, 0, 'o'},
|
||||
{"print-size", no_argument, 0, 'S'},
|
||||
{"quiet", no_argument, 0, OPTION_QUIET},
|
||||
{"radix", required_argument, 0, 't'},
|
||||
{"recurse-limit", no_argument, NULL, OPTION_RECURSE_LIMIT},
|
||||
{"recursion-limit", no_argument, NULL, OPTION_RECURSE_LIMIT},
|
||||
@ -279,6 +282,7 @@ usage (FILE *stream, int status)
|
||||
fprintf (stream, _("\
|
||||
-S, --print-size Print size of defined symbols\n\
|
||||
-s, --print-armap Include index for symbols from archive members\n\
|
||||
--quiet Suppress \"no symbols\" diagnostic\n\
|
||||
--size-sort Sort symbols by size\n\
|
||||
--special-syms Include special symbols in the output\n\
|
||||
--synthetic Display synthetic symbols as well\n\
|
||||
@ -1130,7 +1134,8 @@ display_rel_file (bfd *abfd, bfd *archive_bfd)
|
||||
{
|
||||
if (!(bfd_get_file_flags (abfd) & HAS_SYMS))
|
||||
{
|
||||
non_fatal (_("%s: no symbols"), bfd_get_filename (abfd));
|
||||
if (!quiet)
|
||||
non_fatal (_("%s: no symbols"), bfd_get_filename (abfd));
|
||||
return;
|
||||
}
|
||||
}
|
||||
@ -1140,7 +1145,8 @@ display_rel_file (bfd *abfd, bfd *archive_bfd)
|
||||
{
|
||||
if (dynamic && bfd_get_error () == bfd_error_no_symbols)
|
||||
{
|
||||
non_fatal (_("%s: no symbols"), bfd_get_filename (abfd));
|
||||
if (!quiet)
|
||||
non_fatal (_("%s: no symbols"), bfd_get_filename (abfd));
|
||||
return;
|
||||
}
|
||||
|
||||
@ -1149,7 +1155,8 @@ display_rel_file (bfd *abfd, bfd *archive_bfd)
|
||||
|
||||
if (symcount == 0)
|
||||
{
|
||||
non_fatal (_("%s: no symbols"), bfd_get_filename (abfd));
|
||||
if (!quiet)
|
||||
non_fatal (_("%s: no symbols"), bfd_get_filename (abfd));
|
||||
return;
|
||||
}
|
||||
|
||||
@ -1776,6 +1783,9 @@ main (int argc, char **argv)
|
||||
case OPTION_WITH_SYMBOL_VERSIONS:
|
||||
/* Ignored for backward compatibility. */
|
||||
break;
|
||||
case OPTION_QUIET:
|
||||
quiet = 1;
|
||||
break;
|
||||
case 'D':
|
||||
dynamic = 1;
|
||||
break;
|
||||
|
Loading…
x
Reference in New Issue
Block a user