ci/unit-tests: enable dlopen note verification tests
Enable the `dlopen` unit test suite in GitHub Actions, except for the following configurations where linker garbage collection (`--gc-sections`) or dead-code elimination fails to drop unused dlopen symbols: - ppc64le (both GCC and Clang) - s390x (GCC only) - Sanitizer-enabled setups
This commit is contained in:
@@ -132,6 +132,12 @@ for phase in "${PHASES[@]}"; do
|
||||
ninja -C build -v
|
||||
# Ensure setting a timezone (like the reproducible build tests do) does not break time/date unit tests
|
||||
TZ=GMT+12 meson test "${MESON_TEST_ARGS[@]}" -C build --print-errorlogs --no-stdsplit --quiet
|
||||
|
||||
# Linker garbage collection for unused symbols appears to be broken on ppc64le (both GCC and CLANG) or s390x (GCC).
|
||||
# Skip the dlopen note verification test in those specific configurations.
|
||||
if ! [[ "$(uname -m)" == "ppc64le" || ( "$(uname -m)" == "s390x" && "$phase" == "RUN_GCC" ) ]]; then
|
||||
meson test -C build --suite=dlopen --print-errorlogs --no-stdsplit --quiet
|
||||
fi
|
||||
;;
|
||||
RUN_ASAN_UBSAN|RUN_GCC_ASAN_UBSAN|RUN_CLANG_ASAN_UBSAN|RUN_CLANG_ASAN_UBSAN_NO_DEPS)
|
||||
# TODO: drop after we switch to ubuntu 26.04
|
||||
|
||||
@@ -99,3 +99,6 @@ jobs:
|
||||
|
||||
- name: Test
|
||||
run: mkosi box -- meson test -C build --print-errorlogs --no-stdsplit --quiet
|
||||
|
||||
- name: Test (dlopen)
|
||||
run: mkosi box -- meson test -C build --print-errorlogs --no-stdsplit --quiet --suite=dlopen
|
||||
|
||||
Reference in New Issue
Block a user