Branch :
| Author | Commit | Date | CI | Message |
|---|---|---|---|---|
| b62f36f3 | 2024-03-13 23:34:55 | test: nlist: make resilient against -Wl,--gc-sections With linker sections GC enabled, we get a test failure in `nlist.c`: ``` nlist: nlist.c:72: main: Assertion `rc == 0' failed. ``` This turns out to be because several sections used by the test can be discarded: ``` ld: removing unused section '.text.func_pub' in file 'nlist.o' ld: removing unused section '.bss.data_pub_uninit' in file 'nlist.o' ld: removing unused section '.data.data_pub_init' in file 'nlist.o' ``` Reproduced with `CFLAGS="-Og -fdata-sections -ffunction-sections"` and `LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--gc-sections -Wl,-z,start-stop-gc"`. Additionally, `LDFLAGS="... -Wl,--print-gc-sections"` can help with diagnosing which sections get removed. We already mark these symbols as `used`, but we need `retain` [0] for them to survive linker GC too. [0] https://releases.llvm.org/18.1.0/tools/lld/docs/ELF/start-stop-gc.html#annotate-c-identifier-name-sections Closes: !29 Signed-off-by: Sam James <sam@gentoo.org> Signed-off-by: Guillem Jover <guillem@hadrons.org> | ||
| 32d18dcf | 2024-02-09 04:32:12 | Add explicit time32 and time64 support Handle the three potential system scenarios: - system time_t is time64 - system time_t is time32 and supports time64 - system time_t is time32 and does not support time64 Add the explicit time32 and time64 functions when necessary and map them accordingly for each of these cases. | ||
| be4aced4 | 2024-02-11 23:55:40 | build: Make almost all exposed interfaces use the new ABI selection Explicitly select what to include as part of the target ABI, instead of letting autoconfiguration potentially break ABI if the system grows functionality provided by the library. Make almost all the library selectable per target. Do not install manual pages for interfaces not included in the library. Control inclusion of symbols in map file via pre-processor macros, and move the comments describing the ABI selection to configure.ac. For now the header files are included as is and filtered through pre-processor conditionals. Eventually they might get switched to be autogenerated at build time. | ||
| 99739877 | 2024-02-14 04:59:44 | build: Rename ABI selection variables from need_ to abi_ This should make the purpose of these variables more clear. | ||
| a81d0b71 | 2024-02-11 23:55:40 | build: Sort variables and their contents in automake files This should make it easier to add new entries, and find them afterwards. | ||
| dd0bdb58 | 2024-01-08 01:58:54 | test: Close all descriptors before initializing them for closefrom() On macOS, closefrom() only sets the close-on-exec flag, so we cannot check whether all file descriptors were closed, which means that if on entry our file descriptor table was filled after the 4th file descriptor, then we might fail the assertions for the flags for odd file descriptors which we expect to be closed. This can easily happen when running the test suite in parallel mode with «make -j8 check» for example. Closes: #23 | ||
| a44f885c | 2023-11-14 19:08:15 | test: Fix short-lived memory leak Warned-by: cppcheck | ||
| dc1bd1a2 | 2023-04-23 02:00:10 | build: Conditionalize only id-from-name functions not the entire pwcache On macOS the name-from-id functions are present, but not the id-from-name ones, so we want to provide those instead of suppressing the entire file. | ||
| edc746ea | 2023-04-22 22:47:10 | build: Conditionalize getprogname()/setprogname on macOS These functions are provided by the system libc, so there is no need for us to provide them. | ||
| 90b7f3ae | 2023-04-17 23:59:19 | test: Do not use /dev/null as compiler output file Some ld(1) implementations, such as the one on AIX, do not support using /dev/null as the output filename for the compiled object. Use an actual filename that we will then clean up. |