name: Build permissions: contents: read on: push: branches: [ "master", "stable" ] pull_request: branches: [ "master", "stable" ] jobs: build-mac: runs-on: macos-latest steps: - uses: actions/checkout@v5 - run: brew install automake - run: autoreconf -i - run: ./configure --enable-warning-as-error - run: cd raid/test && make all test - run: make all dist check build-linux: runs-on: ubuntu-latest steps: - uses: actions/checkout@v5 - run: autoreconf -i - run: ./configure --enable-warning-as-error - run: make all snapcheck - run: make distcheck build-arm32: runs-on: ubuntu-latest steps: - uses: actions/checkout@v5 - run: | sudo apt-get update sudo apt-get install -y \ gcc-arm-linux-gnueabihf \ libc6-dev-armhf-cross \ qemu-user - run: autoreconf -i - run: | CC=arm-linux-gnueabihf-gcc \ CFLAGS="-O2 -march=armv7-a -mfpu=neon -mfloat-abi=hard" \ TARGET_RUNNER="qemu-arm -cpu cortex-a15 -L /usr/arm-linux-gnueabihf" \ ./configure \ --build="$(./config.guess)" \ --host=arm-linux-gnueabihf \ --enable-warning-as-error - run: make all - run: | file snapraid arm-linux-gnueabihf-readelf -h snapraid - run: | qemu-arm \ -cpu cortex-a15 \ -L /usr/arm-linux-gnueabihf \ ./snapraid -V - run: make check build-win: runs-on: windows-latest defaults: run: shell: msys2 {0} steps: - uses: actions/checkout@v5 - uses: msys2/setup-msys2@v2 with: msystem: MINGW64 update: true install: mingw-w64-x86_64-gcc autoconf automake make - run: autoreconf -i - run: ./configure --enable-warning-as-error - run: make all dist check