This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PING] [PATCH v2 0/4] Some fixes for debug files and sysroots


On 2/11/19 6:53 PM, Simon Marchi wrote:
> On 2019-02-11 12:54 p.m., John Baldwin wrote:
>> On 1/28/19 12:47 PM, John Baldwin wrote:
>>> Relative to the first series:
>>>
>>> 1) I combined the duplicate checks for "are we in a sysroot" in the
>>>    first patch as as suggested by Simon.
>>>
>>> 2) I dropped the second patch (trim trailing '/' from sysroot).
>>>
>>> 3) Patches 2 and 3 are a different take on solving the issue when the
>>>    sysroot ends in '/'.  Patch 2 adds a 'child_path' function to
>>>    determine if a child path is a child of a parent (requiring the child
>>>    to have at least one component "below" the parent).  It also returns
>>>    a pointer to the first component below the parent (but after the
>>>    directory separator).  Patch 3 uses child_path in
>>>    find_separate_debug_file which fixes it in the case that the sysroot
>>>    ends in a /.
>>>
>>> 4) The 4th patch is a new patch for a different issue I ran into while
>>>    testing this some more today.  The paths to object files are always
>>>    canonical paths with symlinks resolved.  If the sysroot entered by
>>>    the user is a path containing symlinks, the filename_ncmp will
>>>    never match.  To handle sysroot paths that traverse symlinks,
>>>    use gdb_realpath to generate a canonical sysroot path and use that
>>>    instead of gdb_sysroot with child_path.
>>>
>>> As an aside, it's not clear to me when one should use gdb_realpath
>>> instead of lrealpath.  gdb_realpath seems more widespread and also
>>> returns an RAII-friendly type, so I used that.
>>>
>>> John Baldwin (4):
>>>   Look for separate debug files in debug directories under a sysroot.
>>>   Add a new function child_path.
>>>   Use child_path to determine if an object file is under a sysroot.
>>>   Try to use the canonical version of a sysroot for debug file links.
>>
>> Just a ping.
>>
> 
> Hi John,
> 
> Note the comments on patch #2, otherwise this LGTM.
> 
> Thanks!

Thanks, I've pushed it with the fixes in #2.  Do you want to push your
build-id + sysroot fix?

-- 
John Baldwin

                                                                            


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]