Skip to content

fixes and modified tests #19

fixes and modified tests

fixes and modified tests #19

name: Linux multi-architecture build
on:
push:
branches: ["main"]
paths:
- '**/*.cpp'
- '**/*.hpp'
- '.github/workflows/build-multi-arch.yml'
pull_request:
branches: ["main"]
paths:
- '**/*.cpp'
- '**/*.hpp'
- '.github/workflows/build-multi-arch.yml'
workflow_dispatch:
env:
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true
jobs:
build:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
- arch: amd64
platform: linux/amd64
image: debian:bookworm
- arch: arm64
platform: linux/arm64
image: debian:bookworm
- arch: armhf
platform: linux/arm/v7
image: debian:bookworm
- arch: armel
platform: linux/arm/v6
image: debian:bookworm
- arch: i386
platform: linux/386
image: debian:bookworm
- arch: mips64el
platform: linux/mips64le
image: debian:bookworm
- arch: ppc64el
platform: linux/ppc64le
image: debian:bookworm
- arch: riscv64
platform: linux/riscv64
image: debian:sid
- arch: s390x
platform: linux/s390x
image: debian:bookworm
steps:
- uses: actions/checkout@v4
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Build (${{ matrix.arch }})
run: |
docker run --rm \
--platform ${{ matrix.platform }} \
-v ${{ github.workspace }}:/src \
-w /src \
${{ matrix.image }} \
bash -c "
apt-get update -q &&
apt-get install -y --no-install-recommends g++ build-essential cmake git ca-certificates &&
cmake -B build -DCMAKE_BUILD_TYPE=Debug &&
cmake --build build --config Debug --parallel
"