test-container: Avoid copying unintended system libraries

Some DSOs are distributed in hardware capability directories, e.g.
/usr/lib64/power7/libc.so.6
Whenever the processor is able to use one of these hardware-enabled
DSOs, testroot.pristine ends up with copies of glibc-provided libraries
from the system because it can't overwrite or remove them.

This patch avoids the unintended copies by executing ld.so with the same
arguments passed to each glibc test.

	* Makefile (testroot.pristine/install.stamp): Execute ld.so with
	the same arguments used in all tests.
This commit is contained in:
Tulio Magno Quites Machado Filho 2019-07-22 16:30:45 -03:00
parent dcf36bcad3
commit 95da14dac0
2 changed files with 7 additions and 2 deletions

View File

@ -1,3 +1,8 @@
2019-07-23 Tulio Magno Quites Machado Filho <tuliom@linux.ibm.com>
* Makefile (testroot.pristine/install.stamp): Execute ld.so with
the same arguments used in all tests.
2019-07-22 Szabolcs Nagy <szabolcs.nagy@arm.com>
* NEWS: Mention the AArch64 IFUNC resolver ABI change.

View File

@ -383,7 +383,7 @@ $(objpfx)testroot.pristine/install.stamp :
ifeq ($(run-built-tests),yes)
# Copy these DSOs first so we can overwrite them with our own.
for dso in `$(test-wrapper-env) LD_TRACE_LOADED_OBJECTS=1 \
$(objpfx)elf/$(rtld-installed-name) \
$(rtld-prefix) \
$(objpfx)testroot.pristine/bin/sh \
| grep / | sed 's/^[^/]*//' | sed 's/ .*//'` ;\
do \
@ -392,7 +392,7 @@ ifeq ($(run-built-tests),yes)
$(test-wrapper) cp $$dso $(objpfx)testroot.pristine$$dso ;\
done
for dso in `$(test-wrapper-env) LD_TRACE_LOADED_OBJECTS=1 \
$(objpfx)elf/$(rtld-installed-name) \
$(rtld-prefix) \
$(objpfx)support/$(LINKS_DSO_PROGRAM) \
| grep / | sed 's/^[^/]*//' | sed 's/ .*//'` ;\
do \