Skip to content
Snippets Groups Projects
  • Aaron Merey's avatar
    301a9420
    Add support for debuginfod to the binutils (disable by default, enabled via a... · 301a9420
    Aaron Merey authored
    Add support for debuginfod to the binutils (disable by default, enabled via a configure time option).
    
    debuginfod is a lightweight web service that indexes ELF/DWARF
    debugging resources by build-id and serves them over HTTP. This patch
    enables objdump and readelf to query debuginfod servers when they are
    otherwise not able to find separate debug files. Binutils can be built
    with debuginfod using the --with-debuginfod configure option. This
    requires that libdebuginfod be installed and found at configure time.
    debuginfod is packaged with elfutils, starting with version 0.178. For
    more information see https://sourceware.org/elfutils/.
    
    toplevel* config/debuginfod.m4: New file. Add macro AC_DEBUGINFOD. Adds
            new configure option --with-debuginfod.
            * configure: Regenerate.
            * configure.ac: Call AC_DEBUGINFOD.
    
    binutils* Makefile.am (readelf_LDADD, objdump_LDADD): Add libdebuginfod.
            * Makefile.in: Regenerate.
            * NEWS: Update.
            * config.in: Regenerate.
            * configure: Regenerate.
            * configure.ac: Call AC_DEBUGINFOD.
            * doc/Makefile.in: Regenerate.
            * doc/binutils.texi: Add section on using binutils
            with debuginfod.
            * dwarf.c (debuginfod_fetch_separate_debug_info): New function.
            Query debuginfod servers for the target debug file.
            (load_separate_debug_info): Call
            debuginfod_fetch_separate_debug_info if configured with
            debuginfod.
            (load_separate_debug_files): Add file argument to
            load_separate_debug_info calls.
            * dwarf.h (get_build_id): Add declaration.
            * objdump.c (get_build_id): New function. Get build-id of file.
            * readelf.c (get_build_id): Likewise.
            * testsuite/binutils-all/debuginfod.exp: New tests.
            * testsuite/binutils-all/linkdebug.s: Add .note.gnu.build-id
            section.
    301a9420
    History
    Add support for debuginfod to the binutils (disable by default, enabled via a...
    Aaron Merey authored
    Add support for debuginfod to the binutils (disable by default, enabled via a configure time option).
    
    debuginfod is a lightweight web service that indexes ELF/DWARF
    debugging resources by build-id and serves them over HTTP. This patch
    enables objdump and readelf to query debuginfod servers when they are
    otherwise not able to find separate debug files. Binutils can be built
    with debuginfod using the --with-debuginfod configure option. This
    requires that libdebuginfod be installed and found at configure time.
    debuginfod is packaged with elfutils, starting with version 0.178. For
    more information see https://sourceware.org/elfutils/.
    
    toplevel* config/debuginfod.m4: New file. Add macro AC_DEBUGINFOD. Adds
            new configure option --with-debuginfod.
            * configure: Regenerate.
            * configure.ac: Call AC_DEBUGINFOD.
    
    binutils* Makefile.am (readelf_LDADD, objdump_LDADD): Add libdebuginfod.
            * Makefile.in: Regenerate.
            * NEWS: Update.
            * config.in: Regenerate.
            * configure: Regenerate.
            * configure.ac: Call AC_DEBUGINFOD.
            * doc/Makefile.in: Regenerate.
            * doc/binutils.texi: Add section on using binutils
            with debuginfod.
            * dwarf.c (debuginfod_fetch_separate_debug_info): New function.
            Query debuginfod servers for the target debug file.
            (load_separate_debug_info): Call
            debuginfod_fetch_separate_debug_info if configured with
            debuginfod.
            (load_separate_debug_files): Add file argument to
            load_separate_debug_info calls.
            * dwarf.h (get_build_id): Add declaration.
            * objdump.c (get_build_id): New function. Get build-id of file.
            * readelf.c (get_build_id): Likewise.
            * testsuite/binutils-all/debuginfod.exp: New tests.
            * testsuite/binutils-all/linkdebug.s: Add .note.gnu.build-id
            section.