diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index f1a49d5..608ac21 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -65,6 +65,7 @@ jobs: # Android images - { image: "android-arm", + arm_host: "", stockfish: "yes", stockfish_arg: "ARCH=armv7 COMP=ndk", ninja: "no", @@ -86,6 +87,7 @@ jobs: } - { image: "android-arm64", + arm_host: "", stockfish: "yes", stockfish_arg: "ARCH=armv8 COMP=ndk", ninja: "no", @@ -107,6 +109,7 @@ jobs: } - { image: "android-x86", + arm_host: "", stockfish: "yes", stockfish_arg: "ARCH=x86-32 COMP=ndk", ninja: "no", @@ -128,6 +131,7 @@ jobs: } - { image: "android-x86_64", + arm_host: "", stockfish: "yes", stockfish_arg: "ARCH=x86-64 COMP=ndk", ninja: "no", @@ -150,6 +154,7 @@ jobs: # Linux arm64/armv8 images - { image: "linux-arm64", + arm_host: "", stockfish: "yes", stockfish_arg: "ARCH=armv8", ninja: "yes", @@ -171,6 +176,7 @@ jobs: } - { image: "linux-arm64-lts", + arm_host: "", stockfish: "yes", stockfish_arg: "ARCH=armv8", ninja: "yes", @@ -192,6 +198,7 @@ jobs: } - { image: "linux-arm64-musl", + arm_host: "", stockfish: "yes", stockfish_arg: "ARCH=armv8", ninja: "yes", @@ -213,6 +220,7 @@ jobs: } - { image: "linux-arm64-full", + arm_host: "", stockfish: "yes", stockfish_arg: "ARCH=armv8", ninja: "yes", @@ -235,6 +243,7 @@ jobs: # Linux mipel images - { image: "linux-mipsel-lts", + arm_host: "", stockfish: "no", stockfish_arg: "", ninja: "no", @@ -257,6 +266,7 @@ jobs: # Linux armv5 images - { image: "linux-armv5", + arm_host: "", stockfish: "no", stockfish_arg: "", ninja: "yes", @@ -278,6 +288,7 @@ jobs: } - { image: "linux-armv5-musl", + arm_host: "", stockfish: "no", stockfish_arg: "", ninja: "yes", @@ -299,6 +310,7 @@ jobs: } - { image: "linux-armv5-uclibc", + arm_host: "", stockfish: "no", stockfish_arg: "", ninja: "yes", @@ -321,6 +333,7 @@ jobs: # Linux armv6 images - { image: "linux-armv6", + arm_host: "", stockfish: "no", stockfish_arg: "", ninja: "yes", @@ -342,6 +355,7 @@ jobs: } - { image: "linux-armv6-lts", + arm_host: "", stockfish: "no", stockfish_arg: "", ninja: "yes", @@ -363,6 +377,7 @@ jobs: } - { image: "linux-armv6-musl", + arm_host: "", stockfish: "no", stockfish_arg: "", ninja: "yes", @@ -385,6 +400,7 @@ jobs: # Linux armv7 images - { image: "linux-armv7", + arm_host: "", stockfish: "yes", stockfish_arg: "ARCH=armv7", ninja: "yes", @@ -406,6 +422,7 @@ jobs: } - { image: "linux-armv7a", + arm_host: "", stockfish: "yes", stockfish_arg: "ARCH=armv7-neon", ninja: "yes", @@ -427,6 +444,7 @@ jobs: } - { image: "linux-armv7a-lts", + arm_host: "", stockfish: "yes", stockfish_arg: "ARCH=armv7-neon", ninja: "yes", @@ -448,6 +466,7 @@ jobs: } - { image: "linux-armv7-lts", + arm_host: "", stockfish: "yes", stockfish_arg: "ARCH=armv7", ninja: "yes", @@ -469,6 +488,7 @@ jobs: } - { image: "linux-armv7l-musl", + arm_host: "", stockfish: "yes", stockfish_arg: "ARCH=armv7", ninja: "yes", @@ -491,6 +511,7 @@ jobs: # Linux x86 images - { image: "linux-x86", + arm_host: "", stockfish: "yes", stockfish_arg: "ARCH=x86-32-sse41-popcnt", ninja: "yes", @@ -513,6 +534,7 @@ jobs: # Linux i686 images - { image: "linux-i686", + arm_host: "", stockfish: "no", stockfish_arg: "", ninja: "yes", @@ -535,6 +557,7 @@ jobs: # Linux x86_64 images - { image: "linux-x64", + arm_host: "", stockfish: "yes", stockfish_arg: "ARCH=x86-64-modern", ninja: "yes", @@ -556,6 +579,7 @@ jobs: } - { image: "linux-x64-tinycc", + arm_host: "", stockfish: "yes", stockfish_arg: "ARCH=x86-64-modern", ninja: "yes", @@ -577,6 +601,7 @@ jobs: } - { image: "linux-x64-clang", + arm_host: "", stockfish: "yes", stockfish_arg: "ARCH=x86-64-modern COMP=clang", ninja: "yes", @@ -598,6 +623,7 @@ jobs: } - { image: "linux-x86_64-full", + arm_host: "", stockfish: "yes", stockfish_arg: "ARCH=x86-64-modern", ninja: "yes", @@ -620,6 +646,7 @@ jobs: # Linux riscv images - { image: "linux-riscv32", + arm_host: "", stockfish: "no", stockfish_arg: "", ninja: "yes", @@ -641,6 +668,7 @@ jobs: } - { image: "linux-riscv64", + arm_host: "", stockfish: "no", stockfish_arg: "", ninja: "yes", @@ -663,6 +691,7 @@ jobs: # Linux s390x images - { image: "linux-s390x", + arm_host: "", stockfish: "no", stockfish_arg: "", ninja: "yes", @@ -685,6 +714,7 @@ jobs: # Linux mips images - { image: "linux-mips", + arm_host: "", stockfish: "no", stockfish_arg: "", ninja: "yes", @@ -706,6 +736,7 @@ jobs: } - { image: "linux-mips-uclibc", + arm_host: "", stockfish: "no", stockfish_arg: "", ninja: "yes", @@ -728,6 +759,7 @@ jobs: # Linux mips images - { image: "linux-mips-lts", + arm_host: "", stockfish: "no", stockfish_arg: "", ninja: "yes", @@ -772,6 +804,7 @@ jobs: # Linux ppc64le images - { image: "linux-ppc64le", + arm_host: "", stockfish: "yes", stockfish_arg: "ARCH=ppc-64", ninja: "yes", @@ -794,6 +827,7 @@ jobs: # Linux ppc64le-lts images - { image: "linux-ppc64le-lts", + arm_host: "", stockfish: "yes", stockfish_arg: "ARCH=ppc-64", ninja: "yes", @@ -816,6 +850,7 @@ jobs: # Linux m68k images - { image: "linux-m68k-uclibc", + arm_host: "", stockfish: "no", stockfish_arg: "", ninja: "no", @@ -838,6 +873,7 @@ jobs: # Linux xtensa images - { image: "linux-xtensa-uclibc", + arm_host: "", stockfish: "no", stockfish_arg: "", ninja: "yes", @@ -860,6 +896,7 @@ jobs: # Windows x86_x64 images - { image: "windows-static-x64", + arm_host: "", stockfish: "yes", stockfish_arg: "ARCH=x86-64-modern COMP=mingw", ninja: "no", @@ -881,6 +918,7 @@ jobs: } - { image: "windows-static-x64-posix", + arm_host: "", stockfish: "yes", stockfish_arg: "ARCH=x86-64-modern COMP=mingw", ninja: "no", @@ -902,6 +940,7 @@ jobs: } - { image: "windows-shared-x64", + arm_host: "", stockfish: "no", stockfish_arg: "", ninja: "no", @@ -923,6 +962,7 @@ jobs: } - { image: "windows-shared-x64-posix", + arm_host: "", stockfish: "no", stockfish_arg: "", ninja: "no", @@ -945,6 +985,7 @@ jobs: # Windows x86 images - { image: "windows-static-x86", + arm_host: "", stockfish: "yes", stockfish_arg: "ARCH=x86-32-sse41-popcnt COMP=mingw", ninja: "no", @@ -966,6 +1007,7 @@ jobs: } - { image: "windows-shared-x86", + arm_host: "", stockfish: "no", stockfish_arg: "", ninja: "no", @@ -988,6 +1030,7 @@ jobs: # Windows arm images - { image: "windows-armv7", + arm_host: "", stockfish: "no", stockfish_arg: "ARCH=armv7-neon COMP=clang", ninja: "yes", @@ -1009,6 +1052,7 @@ jobs: } - { image: "windows-arm64", + arm_host: "", stockfish: "no", stockfish_arg: "ARCH=armv8 COMP=clang", ninja: "yes", @@ -1031,6 +1075,7 @@ jobs: # manylinux_2_28 images - { image: "manylinux_2_28-x64", + arm_host: "", stockfish: "yes", stockfish_arg: "ARCH=x86-64-modern", ninja: "yes", @@ -1053,6 +1098,7 @@ jobs: # manylinux2014 images - { image: "manylinux2014-x86", + arm_host: "", stockfish: "yes", stockfish_arg: "ARCH=x86-32-sse41-popcnt", ninja: "yes", @@ -1074,6 +1120,7 @@ jobs: } - { image: "manylinux2014-x64", + arm_host: "", stockfish: "yes", stockfish_arg: "ARCH=x86-64-modern", ninja: "yes", @@ -1095,6 +1142,7 @@ jobs: } - { image: "manylinux2014-aarch64", + arm_host: "", stockfish: "no", stockfish_arg: "", ninja: "no", @@ -1117,6 +1165,7 @@ jobs: # web-wasm images - { image: "web-wasm", + arm_host: "", stockfish: "no", stockfish_arg: "", ninja: "no", @@ -1138,6 +1187,7 @@ jobs: } - { image: "web-wasi", + arm_host: "", stockfish: "no", stockfish_arg: "", ninja: "no", @@ -1159,6 +1209,7 @@ jobs: } - { image: "web-wasi-threads", + arm_host: "", stockfish: "no", stockfish_arg: "", ninja: "no", @@ -1181,6 +1232,7 @@ jobs: # Bare metal images - { image: "bare-armv7emhf-nano_newlib", + arm_host: "", stockfish: "no", stockfish_arg: "", ninja: "no", @@ -1222,7 +1274,11 @@ jobs: - name: build env: BUILD_CMD: build --cache-from type=gha --cache-to type=gha,mode=max - run: make ${{ matrix.arch_name.image }} + run: | + if test "${{ matrix.arch_name.arm_host }}" = "yes"; then + export BUILD_CMD="buildx build --platform linux/amd64,linux/arm64" + fi + make ${{ matrix.arch_name.image }} - name: basic test run: make ${{ matrix.arch_name.image }}.test