testroot.pristine creation falls over copying dynamic linker

Carlos O'Donell carlos@redhat.com
Wed Jul 31 20:26:00 GMT 2019


On 7/31/19 11:52 AM, Joseph Myers wrote:
> On Mon, 29 Jul 2019, DJ Delorie wrote:
> 
>> Joseph Myers <joseph@codesourcery.com> writes:
>>>          /lib32/ld.so.1 => /scratch/jmyers/glibc/mbs/obj/glibc-8-0-mips64-linux-gnu-x86_64-linux-gnu/default/elf/ld.so.1 (0x7747b000)
>>
>>> - it must only copy the path on the right hand side of =>.
>>
>> There isn't always a path on the RHS of =>
>>
>> $ ldd hello.x86-64
>>          linux-vdso.so.1 =>  (0x00007ffc94dc8000)
>>          libc.so.6 => /lib64/libc.so.6 (0x00007f0ce3675000)
>>          /lib64/ld-linux-x86-64.so.2 (0x00007f0ce3a42000)
>>
>> The Makefile would need to be smart enough to say "if there's a path
>> after =>, use that" but... do we copy the RHS to RHS inside the
>> testroot, or the expected LHS once it's inside the testroot?
>>
>> Maybe we need a filter like this?  It just prefers the RHS path if there
>> is on, else uses the first path available:
>>
>> -	        | grep / | sed 's/^[^/]*//' | sed 's/ .*//'` ;\
>> +	        | grep / | sed 's@.*=> /@/@' | sed 's/^[^/]*//' | sed 's/ .*//'` ;\
> 
> I can confirm that doing that (for both Makefile lines with such a sed
> command) allows the MIPS tests to run in cases where they previously fell
> over because the path on the LHS does not exist in the root filesystem.

Shall we get this fix in for 2.30?

-- 
Cheers,
Carlos.



More information about the Libc-alpha mailing list