mirror of
git://sourceware.org/git/glibc.git
synced 2025-04-24 14:41:06 +08:00
From the tests point of view, this is a necessary step for another patch [1] and allows parsing macros such as "#define A | B". Without it, a few tests [2] choke when the other patch [1] is applied: /src/glibc/scripts/../elf/elf.h:4167: error: uninterpretable macro token sequence: ( EF_ARC_MACH_MSK | EF_ARC_OSABI_MSK ) Traceback (most recent call last): File "/src/glibc/elf/tst-glibcelf.py", line 23, in <module> import glibcelf File "/src/glibc/scripts/glibcelf.py", line 226, in <module> _elf_h = _parse_elf_h() ^^^^^^^^^^^^^^ File "/src/glibc/scripts/glibcelf.py", line 223, in _parse_elf_h raise IOError('parse error in elf.h') OSError: parse error in elf.h [1] ARC: update definitions in elf/elf.h https://sourceware.org/pipermail/libc-alpha/2022-November/143503.html [2] tst-glibcelf, tst-relro-ldso, and tst-relro-libc Reviewed-by: Florian Weimer <fweimer@redhat.com> Signed-off-by: Shahab Vahedi <shahab@synopsys.com>
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 * xtime.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 For tests that make use of struct timespec, the following header files contain additional macros and helper functions: * timespec.h