This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc 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: testroot.pristine creation falls over copying dynamic linker


On Wed, 31 Jul 2019, Carlos O'Donell wrote:

> > > 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?

I think it's desirable for 2.30 (to avoid problems testing for an ABI on a 
system without that ABI's dynamic linker installed in the root filesystem 
under its canonical name), but I haven't really thought about what cases 
ought to be tested to confirm the change is safe.

For reference, this is the implied patch of DJ's that I tested.

diff --git a/Makefile b/Makefile
index ac1125853b..c91e151042 100644
--- a/Makefile
+++ b/Makefile
@@ -385,7 +385,7 @@ ifeq ($(run-built-tests),yes)
 	for dso in `$(test-wrapper-env) LD_TRACE_LOADED_OBJECTS=1  \
 		$(rtld-prefix) \
 		$(objpfx)testroot.pristine/bin/sh \
-	        | grep / | sed 's/^[^/]*//' | sed 's/ .*//'` ;\
+	        | grep / | sed 's@.*=> /@/@' | sed 's/^[^/]*//' | sed 's/ .*//'` ;\
 	  do \
 	    test -d `dirname $(objpfx)testroot.pristine$$dso` || \
 	      mkdir -p `dirname $(objpfx)testroot.pristine$$dso` ;\
@@ -394,7 +394,7 @@ ifeq ($(run-built-tests),yes)
 	for dso in `$(test-wrapper-env) LD_TRACE_LOADED_OBJECTS=1  \
 		$(rtld-prefix) \
 		$(objpfx)support/$(LINKS_DSO_PROGRAM) \
-	        | grep / | sed 's/^[^/]*//' | sed 's/ .*//'` ;\
+	        | grep / | sed 's@.*=> /@/@' | sed 's/^[^/]*//' | sed 's/ .*//'` ;\
 	  do \
 	    test -d `dirname $(objpfx)testroot.pristine$$dso` || \
 	      mkdir -p `dirname $(objpfx)testroot.pristine$$dso` ;\

-- 
Joseph S. Myers
joseph@codesourcery.com


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