File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ name : Linux Multi-Architecture Build
2+
3+ on :
4+ push :
5+ branches : ["main"]
6+ paths :
7+ - ' **/*.cpp'
8+ - ' **/*.hpp'
9+ - ' .github/workflows/build-multi-arch.yml'
10+ pull_request :
11+ branches : ["main"]
12+ paths :
13+ - ' **/*.cpp'
14+ - ' **/*.hpp'
15+ - ' .github/workflows/build-multi-arch.yml'
16+ workflow_dispatch :
17+
18+ env :
19+ FORCE_JAVASCRIPT_ACTIONS_TO_NODE24 : true
20+
21+ jobs :
22+ build :
23+ runs-on : ubuntu-latest
24+ strategy :
25+ fail-fast : false
26+ matrix :
27+ include :
28+ - arch : amd64
29+ platform : linux/amd64
30+ image : debian:bookworm
31+ - arch : arm64
32+ platform : linux/arm64
33+ image : debian:bookworm
34+ - arch : armhf
35+ platform : linux/arm/v7
36+ image : debian:bookworm
37+ - arch : armel
38+ platform : linux/arm/v6
39+ image : debian:bookworm
40+ - arch : i386
41+ platform : linux/386
42+ image : debian:bookworm
43+ - arch : mips64el
44+ platform : linux/mips64le
45+ image : debian:bookworm
46+ - arch : ppc64el
47+ platform : linux/ppc64le
48+ image : debian:bookworm
49+ - arch : riscv64
50+ platform : linux/riscv64
51+ image : debian:sid
52+ - arch : s390x
53+ platform : linux/s390x
54+ image : debian:bookworm
55+
56+ steps :
57+ - uses : actions/checkout@v4
58+
59+ - name : Set up QEMU
60+ uses : docker/setup-qemu-action@v3
61+
62+ - name : Build (${{ matrix.arch }})
63+ run : |
64+ docker run --rm \
65+ --platform ${{ matrix.platform }} \
66+ -v ${{ github.workspace }}:/src \
67+ -w /src \
68+ ${{ matrix.image }} \
69+ bash -c "
70+ apt-get update -q &&
71+ apt-get install -y --no-install-recommends g++ build-essential python3-pip &&
72+ pip3 install cmake --break-system-packages &&
73+ cmake -B build -DCMAKE_BUILD_TYPE=Release &&
74+ cmake --build build --config Release
75+ "
You can’t perform that action at this time.
0 commit comments