ci: add arm_host to arch_name matrix option

Define whether we will also build for an ARM64 host.

"yes" - yes
"no" - explicitly do not build
"" - have not tried yet
This commit is contained in:
Matt McCormick 2024-04-04 06:02:44 -04:00 committed by Matt McCormick
parent 103d6485e6
commit 858a3d8755

View File

@ -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