From f51e9d4b5120932df43151581345886b5b362c88 Mon Sep 17 00:00:00 2001 From: Rosen Penev Date: Wed, 13 Nov 2024 15:38:48 -0800 Subject: [PATCH 1/3] CI: alpine: test clang instead of GCC Under some platforms, libatomic is needed to be linked to use std::atomic or C atomics. This seems to be a way to test this. Signed-off-by: Rosen Penev --- .github/workflows/build_all.yml | 2 +- .github/workflows/sanity_checks.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build_all.yml b/.github/workflows/build_all.yml index 8dba1fa09..2decccea0 100644 --- a/.github/workflows/build_all.yml +++ b/.github/workflows/build_all.yml @@ -39,7 +39,7 @@ jobs: - uses: jirutka/setup-alpine@v1 with: packages: > - build-base cmake git linux-headers pkgconf py3-pip samurai sudo + binutils clang libc-dev fortify-headers make patch cmake git linux-headers pkgconf py3-pip samurai sudo - uses: actions/checkout@v4 with: diff --git a/.github/workflows/sanity_checks.yml b/.github/workflows/sanity_checks.yml index 7e79d002b..d4f1525fc 100644 --- a/.github/workflows/sanity_checks.yml +++ b/.github/workflows/sanity_checks.yml @@ -34,7 +34,7 @@ jobs: - uses: jirutka/setup-alpine@v1 with: packages: > - build-base cmake git linux-headers pkgconf py3-pip samurai sudo + binutils clang libc-dev fortify-headers make patch cmake git linux-headers pkgconf py3-pip samurai sudo - name: Sanity Checks run: | From ade7de94d433e2daf32820087476829526d969c8 Mon Sep 17 00:00:00 2001 From: Rosen Penev Date: Tue, 27 Aug 2024 11:39:53 -0700 Subject: [PATCH 2/3] CI: sanity_checks: add extra alpine Increase test coverage to extra architectures. Because most of these use QEMU, they are really slow. Thus, limit to sanity_checks. Signed-off-by: Rosen Penev --- .github/workflows/sanity_checks.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/sanity_checks.yml b/.github/workflows/sanity_checks.yml index d4f1525fc..cfd038e91 100644 --- a/.github/workflows/sanity_checks.yml +++ b/.github/workflows/sanity_checks.yml @@ -26,6 +26,9 @@ jobs: Alpine: runs-on: ubuntu-latest + strategy: + matrix: + platform: ['x86', 'riscv64', 'ppc64le', 'armv7'] steps: - uses: actions/checkout@v4 with: @@ -33,6 +36,7 @@ jobs: - uses: jirutka/setup-alpine@v1 with: + arch: ${{matrix.platform}} packages: > binutils clang libc-dev fortify-headers make patch cmake git linux-headers pkgconf py3-pip samurai sudo From 688adbb7802d253b24f7c4cb3f30e3a60361e190 Mon Sep 17 00:00:00 2001 From: Rosen Penev Date: Wed, 13 Nov 2024 15:36:30 -0800 Subject: [PATCH 3/3] openal-soft: fix atomic test It seems __sync_synchronize does not need libatomic. Test __atomic_is_lock_free instead. Signed-off-by: Rosen Penev --- releases.json | 1 + subprojects/packagefiles/openal-soft/meson.build | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/releases.json b/releases.json index 9e22a9ab7..4cfb9fc8d 100644 --- a/releases.json +++ b/releases.json @@ -2694,6 +2694,7 @@ "openal" ], "versions": [ + "1.23.1-3", "1.23.1-2", "1.23.1-1", "1.23.0-1", diff --git a/subprojects/packagefiles/openal-soft/meson.build b/subprojects/packagefiles/openal-soft/meson.build index 2b7aedeb7..36cb684de 100644 --- a/subprojects/packagefiles/openal-soft/meson.build +++ b/subprojects/packagefiles/openal-soft/meson.build @@ -259,7 +259,7 @@ if cdata.get('HAVE_NEON') core_sources += 'core/mixer/mixer_neon.cpp' endif -if host_machine.system() == 'windows' or cpp.links('int main(){__sync_synchronize();}') +if cpp.links('#include \n#include \nint main(){std::atomic> b;std::atomic_is_lock_free(&b);}') atomic_dep = dependency('', required: false) else atomic_dep = cpp.find_library('atomic', required: false)