e7624d708d
The test-container.c file assumes that ld.so is always named something like /elf/ld-linux-*. But e.g. on s390x it is named ld64.so.1 or ld.so.1 on s390. There are other architectures like power or mips with similar names. This patch introduces the new global variable support_objdir_elf_ldso which contains the absolute path to the runtime linker used by the testsuite, e.g. OBJDIR_PATH/elf/ld-linux-x86-64.so.2. The check in test-container.c is now comparing against this path. Without this patch, test-container.c is searching invalid files / directories and fails to find glibc/nss/tst-nss-test3.root/tst-nss-test3.script. Then the test tst-nss-test3 fails! Reviewed-by: Carlos O'Donell <carlos@redhat.com> ChangeLog: * support/support.h (support_objdir_elf_ldso): New variable. * support/support_paths.c (support_objdir_elf_ldso): Likewise. * support/Makefile (CFLAGS-support_paths.c): Add definition for OBJDIR_ELF_LDSO_PATH. * support/test-container.c (main): Search for the ld.so which is also used by the testsuite.
This subdirectory contains infrastructure which is not put into installed libraries, but may be linked into programs (installed or not) and tests. # Error-checking wrappers These wrappers test for error return codes an terminate the process on error. They are declared in these header files: * support.h * xsignal.h * xthread.h In general, new wrappers should be added to support.h if possible. However, support.h must remain fully compatible with C90 and therefore cannot include headers which use identifers not reserved in C90. If the wrappers need additional types, additional headers such as signal.h need to be introduced. # Test framework The test framework provides a main program for tests, including a timeout for hanging tests. See README-testing.c for a minimal example, and test-driver.c for details how to use it. The following header files provide related declarations: * check.h * temp_file.h * test-driver.h