Clang can be too aggressive at optimizations, which can end up breaking our test suite. See f9f5ab57189b for details.
As a result of this, since 7944700b4037 we are automatically disabling tests when Clang is used unless it supports the -fsemantic-interposition compiler flag. Since the version of Clang included in macOS doesn't support that compiler flag, we end up always disabling the test suite on that platform. This is already far from ideal, considering that it was just last year when we finally managed to get the test suite to successfully pass on macOS, and it would be a real shame if the situation regressed again. With the upcoming changes, which will turn running 'meson test' into a hard failure if tests are disabled, this behavior will result in every single pipeline failing. Work around the problem the only way we can: disabling optimizations entirely for the macOS CI jobs. Signed-off-by: Andrea Bolognani <abolo...@redhat.com> --- ci/cirrus/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci/cirrus/build.yml b/ci/cirrus/build.yml index 519e5ae144..60ac90eee0 100644 --- a/ci/cirrus/build.yml +++ b/ci/cirrus/build.yml @@ -24,7 +24,7 @@ build_task: - git fetch origin "${CI_MERGE_REQUEST_REF_PATH:-$CI_COMMIT_REF_NAME}" - git reset --hard "$CI_COMMIT_SHA" build_script: - - meson setup build + - if test "$(uname)" = "Darwin"; then meson setup build --optimization 0; else meson setup build; fi - meson dist -C build --no-tests - meson compile -C build - meson test -C build --no-suite syntax-check --print-errorlogs || (cat ~/Library/Logs/DiagnosticReports/*.crash && exit 1) -- 2.41.0