diff options
| author | Leitwolf11 | 2026-09-24 22:07:03 +0300 |
|---|---|---|
| committer | Leitwolf11 | 2026-09-24 22:07:03 +0300 |
| commit | 9ad804cedf4cc4a85ef89fe097f97a3b44654360 (patch) | |
| tree | f088e919776b22d19387377bdbec727daa2429c0 /.github/workflows/alternative-build-systems.yml | |
| parent | 02f8b5593a15cdec8558256e6f40a0c7fb5862d6 (diff) | |
| download | catch3-0.1.0.tar.gz | |
Add Progmasoft Catch3 property testing and build support0.1.0
Introduce deterministic property execution, built-in generators, shrinking, replayable seeds, and a separate Progmasoft-owned header API while preserving Catch2 compatibility targets and the C++14 engine baseline.
Add Bazel, Meson, Xmake, and Premake integration and tests alongside the existing CMake build. Replace Linux-only workflow coverage with Windows and macOS jobs and document the Catch2/Catch3 distinction.
Diffstat (limited to '.github/workflows/alternative-build-systems.yml')
| -rw-r--r-- | .github/workflows/alternative-build-systems.yml | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/.github/workflows/alternative-build-systems.yml b/.github/workflows/alternative-build-systems.yml new file mode 100644 index 00000000..7f2cf531 --- /dev/null +++ b/.github/workflows/alternative-build-systems.yml @@ -0,0 +1,64 @@ +name: Alternative Build Systems + +on: [push, pull_request] + +jobs: + xmake: + name: Xmake on ${{ matrix.os }} + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + os: [windows-2025, macos-15] + + steps: + - uses: actions/checkout@v6 + + - uses: xmake-io/github-action-setup-xmake@v1 + with: + xmake-version: '3.1.1' + + - name: Configure Clang build + run: xmake f --toolchain=clang -m debug -y + + - name: Build + run: xmake -j 4 + + - name: Run property tests + run: xmake run ProgmasoftPropertyTests + + premake: + name: Premake on ${{ matrix.os }} + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + os: [windows-2022, macos-15] + + steps: + - uses: actions/checkout@v6 + + - uses: abel0b/setup-premake@v2.4 + with: + version: '5.0.0-beta7' + + - name: Generate and build Visual Studio projects + if: runner.os == 'Windows' + shell: pwsh + run: | + premake5 vs2022 + msbuild build/premake/Catch3.sln /m /p:Configuration=Debug /p:Platform=x64 /nologo + + - name: Run property tests on Windows + if: runner.os == 'Windows' + run: build/premake/bin/Debug/ProgmasoftPropertyTests.exe + + - name: Generate and build Clang Makefiles + if: runner.os == 'macOS' + run: | + premake5 gmake + make -C build/premake config=debug -j 4 + + - name: Run property tests on macOS + if: runner.os == 'macOS' + run: build/premake/bin/Debug/ProgmasoftPropertyTests |