Fix test isolation for elf/tst-ifunc-fault-lazy, elf/tst-ifunc-fault-bindnow
Commit Message
* Andreas Schwab:
> On Dez 19 2019, Florian Weimer wrote:
>
>> diff --git a/elf/Makefile b/elf/Makefile
>> index 72a5aa88b1..2c52e8ae19 100644
>> --- a/elf/Makefile
>> +++ b/elf/Makefile
>> @@ -1374,11 +1374,13 @@ $(objpfx)ifuncmain5picstatic: $(addprefix $(objpfx),ifuncdep5pic.o)
>>
>> LDFLAGS-tst-ifunc-fault-lazy = -Wl,-z,lazy
>> LDFLAGS-tst-ifunc-fault-bindnow = -Wl,-z,now
>> +tst-ifunc-fault-script-ldso = \
>> + $(objpfx)ld.so --library-path $(common-objpfx):$(objpfx)
>
> How about using rtld-prefix?
Thanks, it seems to work, even --enable-hardcoded-path-in-tets.
Florian
8<------------------------------------------------------------------8<
Previously, ld.so was invoked only with the elf subdirectory on the
library search path. Since the soname link for libc.so only exists in
the top-level build directory, this leaked the system libc into the
test.
---
elf/Makefile | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
Comments
On Dez 19 2019, Florian Weimer wrote:
> Previously, ld.so was invoked only with the elf subdirectory on the
> library search path. Since the soname link for libc.so only exists in
> the top-level build directory, this leaked the system libc into the
> test.
Ok.
Andreas.
@@ -1375,10 +1375,9 @@ $(objpfx)ifuncmain5picstatic: $(addprefix $(objpfx),ifuncdep5pic.o)
LDFLAGS-tst-ifunc-fault-lazy = -Wl,-z,lazy
LDFLAGS-tst-ifunc-fault-bindnow = -Wl,-z,now
define tst-ifunc-fault-script
-( $(objpfx)ld.so --verify --library-path $(objpfx) $^ \
- && LD_TRACE_LOADED_OBJECTS=1 $(objpfx)ld.so --library-path $(objpfx) $^ \
- && LD_TRACE_LOADED_OBJECTS=1 LD_DEBUG=unused \
- $(objpfx)ld.so --library-path $(objpfx) $^ \
+( $(rtld-prefix) --verify $^ \
+ && LD_TRACE_LOADED_OBJECTS=1 $(rtld-prefix) $^ \
+ && LD_TRACE_LOADED_OBJECTS=1 LD_DEBUG=unused $(rtld-prefix) $^ \
) > $@; $(evaluate-test)
endef
$(objpfx)tst-ifunc-fault-lazy.out: $(objpfx)tst-ifunc-fault-lazy $(objpfx)ld.so