From c46b706620eb9b27fa06e26406ffa4f79d9292e6 Mon Sep 17 00:00:00 2001 From: Nick Clifton Date: Fri, 12 Feb 2021 14:52:22 +0000 Subject: Change the readelf and objdump programs so that they will automatically follow links to separate debug info files. * configure.ac (follow-debug-links): Add option to enable or disable the following of debug links by default. Set the default for the option to be 'follow'. * dwarf.c (do_follow_links): Initialise with DEFAULT_FOR_FOLLOW_LINKS. (dwarf_select_sections_by_names): Add no-follow-links option. (dwarf_select_sections_by_letter): Add 'N' option. * objdump.c (usage): Add conditional text describing the follow links option. (slurp_symtab): Ensure that there is a NULL entry at the end of the symbol table. (slurp_dynamic_symtab): Likewise. (dump_bfd): When extending the symbol table, ensure that there is still a NULL entry at the end. * readelf.c (usage): Add conditional text describing the follow links option. * doc/binutils.texi: Update documentation for objcopy and readelf. * doc/debug.options.texi: Update documentation of the follow-links option. * config.in: Regenerate. * configure: Regenerate. * testsuite/binutils-all/compress.exp: Add the -WN option to objdump command lines that are not expecting to follow links. * testsuite/binutils-all/readelf.exp: Add the --debug-dump=no-follow-links option to tests that are not expecting to follow debug links. gas * testsuite/gas/mach-o/sections-1.d: Stop automatic debug link following. * testsuite/gas/xgate/insns-dwarf2.d: Likewise. ld * testsuite/ld-elf/sec64k.exp: Stop readelf from automatically following debug links. --- binutils/doc/debug.options.texi | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'binutils/doc/debug.options.texi') diff --git a/binutils/doc/debug.options.texi b/binutils/doc/debug.options.texi index 31260c1..2ad8f03 100644 --- a/binutils/doc/debug.options.texi +++ b/binutils/doc/debug.options.texi @@ -61,6 +61,17 @@ In addition, when displaying DWARF attributes, if a form is found that references the separate debug info file, then the referenced contents will also be displayed. +Note - in some distributions this option is enabled by default. It +can be disabled via the @option{N} debug option. The default can be +chosen when configuring the binutils via the +@option{--enable-follow-debug-links=yes} or +@option{--enable-follow-debug-links=no} options. If these are not +used then the default is to enable the following of debug links. + +@item N +@itemx =no-follow-links +Disables the following of links to separate debug info files. + @item l @itemx =rawline Displays the contents of the @samp{.debug_line} section in a raw -- cgit v1.1