From 846300baf46e880dad812c238cf797110cd7d0a9 Mon Sep 17 00:00:00 2001 From: Marcus Holland-Moritz Date: Wed, 30 Jul 2025 10:27:42 +0200 Subject: [PATCH] chore: test more cross-compiled builds --- .docker/build-linux.sh | 2 +- .github/workflows/build.yml | 47 +++++++++++++++++++++++++++++++++++++ 2 files changed, 48 insertions(+), 1 deletion(-) diff --git a/.docker/build-linux.sh b/.docker/build-linux.sh index 107c8a6c..09cceb43 100755 --- a/.docker/build-linux.sh +++ b/.docker/build-linux.sh @@ -334,7 +334,7 @@ if [[ "-$BUILD_TYPE-" == *-static-* ]]; then export CXXFLAGS="${CXXFLAGS} -isystem $_staticprefix/include" if [[ "$_MARCH" == "i386" ]]; then - export LDFLAGS="${LDFLAGS} -lucontext" + export LDFLAGS="${LDFLAGS} -lucontext -latomic" fi CMAKE_ARGS="${CMAKE_ARGS} -DCMAKE_SYSROOT=$_SYSROOT -DCMAKE_FIND_ROOT_PATH=$_staticprefix;$_sslprefix;$_jemallocprefix -DCMAKE_PREFIX_PATH=$_staticprefix;$_sslprefix;$_jemallocprefix -DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=ONLY -DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=ONLY -DSTATIC_BUILD_DO_NOT_USE=1 -DWITH_UNIVERSAL_BINARY=1 -DWITH_FUSE_EXTRACT_BINARY=1" diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 8f4dd74d..b3712909 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -107,6 +107,7 @@ jobs: needs: package-source strategy: + fail-fast: false matrix: include: - build_arch: amd64 @@ -287,16 +288,62 @@ jobs: build_type: clang-relsize-libressl-lto-ninja-static cross_arch: riscv64 + - build_arch: amd64 + build_dist: alpine + build_type: clang-relsize-lto-ninja-static + cross_arch: riscv64 + + - build_arch: amd64 + build_dist: alpine + build_type: clang-release-ninja-static + cross_arch: riscv64 + + - build_arch: amd64 + build_dist: alpine + build_type: gcc-release-ninja-static + cross_arch: riscv64 + - build_arch: amd64 build_dist: alpine build_type: clang-relsize-libressl-lto-ninja-static cross_arch: i386 + - build_arch: amd64 + build_dist: alpine + build_type: clang-relsize-lto-ninja-static + cross_arch: i386 + + - build_arch: amd64 + build_dist: alpine + build_type: clang-release-ninja-static + cross_arch: i386 + + - build_arch: amd64 + build_dist: alpine + build_type: gcc-release-ninja-static + cross_arch: i386 + - build_arch: amd64 build_dist: alpine build_type: clang-relsize-libressl-lto-ninja-static cross_arch: arm + - build_arch: amd64 + build_dist: alpine + build_type: clang-relsize-lto-ninja-static + cross_arch: arm + + - build_arch: amd64 + build_dist: alpine + build_type: clang-release-ninja-static + cross_arch: arm + + ######### fails: static_assert(std::atomic::is_always_lock_free); + # - build_arch: amd64 + # build_dist: alpine + # build_type: gcc-release-ninja-static + # cross_arch: arm + - build_arch: amd64 build_dist: alpine build_type: gcc-release-ninja-static