695f5e3 Add support for finding separate debug info files via the build-id method.

Authored and Committed by nickc 7 years ago
    Add support for finding separate debug info files via the build-id method.
    
    	PR binutils/20876
    bfd	* opncls.c (find_separate_debug_file): Add include_dirs
    	parameter.  Only include the directory part of the bfd's filename
    	in search paths if include_dirs is true.  Add a couple of extra
    	locations for looking for debug files.
    	( bfd_follow_gnu_debuglink): Update invocation of
    	find_separate_debug_file.
    	(bfd_follow_gnu_debugaltlink): Likewise.
    	(get_build_id): New function: Finds the build-id of the given bfd.
    	(get_build_id_name): New function: Computes the name of the
    	separate debug info file for a bfd, based upon its build-id.
    	(check_build_id_file): New function: Checks to see if a separate
    	debug info file exists at the given location, and that its
    	build-id matches that of the original bfd.
    	(bfd_follow_build_id_debuglink): New function: Finds a separate
    	debug info file for a given bfd by using the build-id method.
    	* dwarf2.c (_bfd_dwarf2_slurp_debug_info): Try using the build-id
    	method of locating a separate debug info file before using the
    	debuglink method.
    	* bfd-in2.h: Regenerate.
    
    binutils* NEWS: Mention the new feature.
    	* testsuite/binutils-all/objdump.exp (test_build_id_debuglink):
    	New proc to test the location of separate debug info files using
    	the build-id method.
    
        
file modified
+23 -0
file modified
+2 -0
file modified
+5 -1
file modified
+334 -39
file modified
+8 -0
file modified
+4 -0