Delete .github/workflows/codeql.yml #23
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 ] | |
| pull_request: | |
| branches: [ master ] | |
| jobs: | |
| build: | |
| name: ${{ matrix.os }} / ${{ matrix.compiler }} | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| - os: ubuntu-latest | |
| compiler: gcc | |
| cc: gcc | |
| cxx: g++ | |
| - os: ubuntu-latest | |
| compiler: clang | |
| cc: clang | |
| cxx: clang++ | |
| - os: windows-latest | |
| compiler: msvc | |
| - os: macos-latest | |
| compiler: apple-clang | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Configure CMake | |
| run: > | |
| cmake -B build | |
| -DPCG_CPP_BUILD_SAMPLES=ON | |
| -DPCG_CPP_BUILD_TESTS=ON | |
| -DCMAKE_BUILD_TYPE=Release | |
| env: | |
| CC: ${{ matrix.cc }} | |
| CXX: ${{ matrix.cxx }} | |
| - name: Build | |
| run: cmake --build build --config Release | |
| - name: Run CTest | |
| run: | | |
| cd build | |
| ctest -C Release --output-on-failure | |
| - name: Run Scripted Tests (Linux/macOS) | |
| if: runner.os != 'Windows' | |
| run: | | |
| chmod +x ./test-high/run-tests.sh | |
| # run-tests.sh expects binaries in specific locations or build dir | |
| # Our updated run-tests.sh supports ../build/test-high | |
| ./test-high/run-tests.sh | |
| - name: Run Scripted Tests (Windows) | |
| if: runner.os == 'Windows' | |
| shell: pwsh | |
| run: | | |
| ./test-high/run-tests.ps1 | |
| freebsd: | |
| runs-on: ubuntu-latest | |
| name: FreeBSD | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Test on FreeBSD | |
| uses: vmactions/freebsd-vm@v1 | |
| with: | |
| usesh: true | |
| prepare: pkg install -y cmake | |
| run: | | |
| cmake -B build -DPCG_CPP_BUILD_SAMPLES=ON -DPCG_CPP_BUILD_TESTS=ON -DCMAKE_BUILD_TYPE=Release | |
| cmake --build build --config Release | |
| cd build | |
| ctest -C Release --output-on-failure | |
| cd .. | |
| chmod +x ./test-high/run-tests.sh | |
| ./test-high/run-tests.sh | |
| ./test-high/run-tests.sh | |
| linux-arm64: | |
| runs-on: ubuntu-latest | |
| name: Linux ARM64 (QEMU) | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Set up QEMU | |
| uses: docker/setup-qemu-action@v3 | |
| - name: Run build and test in ARM64 container | |
| run: | | |
| docker run --rm --platform linux/arm64 -v $PWD:/src -w /src ubuntu:latest /bin/bash -c " | |
| apt-get update && apt-get install -y cmake g++ make | |
| cmake -B build-arm64 -DPCG_CPP_BUILD_SAMPLES=ON -DPCG_CPP_BUILD_TESTS=ON -DCMAKE_BUILD_TYPE=Release | |
| cmake --build build-arm64 --config Release | |
| cd build-arm64 && ctest -C Release --output-on-failure | |
| cd .. | |
| chmod +x ./test-high/run-tests.sh | |
| # Set explicit build dir for run-tests.sh since different name | |
| export BINDIR=./build-arm64/test-high | |
| # run-tests.sh might need adaptation for explicit BINDIR or we move binaries. | |
| # Simplest is to just run ctest which covers C++ tests. | |
| # But for script tests, we rely on run-tests.sh auto-detection or adaptation. | |
| # Let's rely on CTest for now as it's cleaner in container, | |
| # but we can try run-tests.sh if it finds them. | |
| ./test-high/run-tests.sh | |
| " | |
| windows-arm64-build: | |
| runs-on: windows-latest | |
| name: Windows ARM64 (Cross-Compile) | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Configure CMake for ARM64 | |
| run: > | |
| cmake -B build-arm64 | |
| -A ARM64 | |
| -DPCG_CPP_BUILD_SAMPLES=ON | |
| -DPCG_CPP_BUILD_TESTS=ON | |
| -DCMAKE_BUILD_TYPE=Release | |
| - name: Build (ARM64) | |
| run: cmake --build build-arm64 --config Release | |
| # Note: We cannot run CTest or generated binaries on x64 host without emulation. | |
| # This job verifies that the code compiles successfully for ARM64 target. |