test: fix blank-check tests to use code flash #90
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| branches: [master, win32_port] | |
| pull_request: | |
| branches: [master] | |
| jobs: | |
| format: | |
| name: Check formatting | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install clang-format | |
| run: sudo apt-get install -y clang-format | |
| - name: Check formatting | |
| run: | | |
| find src tests -name '*.c' -o -name '*.h' | xargs clang-format --dry-run --Werror | |
| shellcheck: | |
| name: Shellcheck | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install shellcheck | |
| run: sudo apt-get install -y shellcheck | |
| - name: Run shellcheck | |
| run: shellcheck install.sh scripts/*.sh | |
| build: | |
| name: Build and test | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install dependencies | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y meson ninja-build libcmocka-dev libssl-dev help2man | |
| - name: Configure | |
| run: meson setup build | |
| - name: Build | |
| run: meson compile -C build | |
| - name: Run tests | |
| run: meson test -C build --print-errorlogs | |
| - name: Upload artifact | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: radfu-linux-x86_64 | |
| path: build/radfu | |
| build-static: | |
| name: Build static | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install dependencies | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y meson ninja-build libssl-dev help2man | |
| - name: Configure static build | |
| run: meson setup build-static -Dstatic=true -Dtests=false | |
| - name: Build static | |
| run: meson compile -C build-static | |
| - name: Verify static linking | |
| run: file build-static/radfu | grep -q "statically linked" | |
| - name: Upload artifact | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: radfu-linux-x86_64-static | |
| path: build-static/radfu | |
| build-linux-arm64: | |
| name: Build Linux ARM64 | |
| runs-on: ubuntu-24.04-arm | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install dependencies | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y meson ninja-build libcmocka-dev libssl-dev | |
| - name: Configure | |
| run: meson setup build | |
| - name: Build | |
| run: meson compile -C build | |
| - name: Run tests | |
| run: meson test -C build --print-errorlogs | |
| - name: Upload artifact | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: radfu-linux-arm64 | |
| path: build/radfu | |
| build-linux-arm64-static: | |
| name: Build Linux ARM64 static | |
| runs-on: ubuntu-24.04-arm | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install dependencies | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y meson ninja-build libssl-dev | |
| - name: Configure static build | |
| run: meson setup build-static -Dstatic=true -Dtests=false | |
| - name: Build static | |
| run: meson compile -C build-static | |
| - name: Verify static linking | |
| run: file build-static/radfu | grep -q "statically linked" | |
| - name: Upload artifact | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: radfu-linux-arm64-static | |
| path: build-static/radfu | |
| build-macos: | |
| name: Build macOS | |
| runs-on: macos-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install dependencies | |
| run: brew install meson ninja openssl | |
| - name: Configure | |
| run: meson setup build -Dtests=false | |
| - name: Build | |
| run: meson compile -C build | |
| - name: Verify binary | |
| run: file build/radfu | |
| - name: Upload artifact | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: radfu-macos-arm64 | |
| path: build/radfu | |
| build-windows: | |
| name: Build Windows | |
| runs-on: windows-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install Meson | |
| run: pip install meson ninja | |
| - name: Setup MSVC | |
| uses: ilammy/msvc-dev-cmd@v1 | |
| - name: Install dependencies via vcpkg | |
| run: | | |
| Remove-Item Env:VCPKG_ROOT | |
| vcpkg install cmocka:x64-windows openssl:x64-windows | |
| vcpkg integrate install | |
| - name: Configure | |
| run: | | |
| $env:PKG_CONFIG_PATH = "C:\vcpkg\installed\x64-windows\lib\pkgconfig" | |
| meson setup build --pkg-config-path="C:\vcpkg\installed\x64-windows\lib\pkgconfig" --cmake-prefix-path="C:\vcpkg\installed\x64-windows" | |
| - name: Build | |
| run: meson compile -C build | |
| - name: Run tests | |
| run: meson test -C build --print-errorlogs | |
| - name: Verify binary | |
| run: Get-Item build\radfu.exe | |
| - name: Upload artifact | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: radfu-windows-x86_64 | |
| path: build/radfu.exe |