Read-only mirrors. Development, issues and pull requests are on GitHub.

summaryrefslogtreecommitdiffhomepage
path: root/.github/workflows/alternative-build-systems.yml
diff options
context:
space:
mode:
authorLeitwolf112026-09-24 22:07:03 +0300
committerLeitwolf112026-09-24 22:07:03 +0300
commit9ad804cedf4cc4a85ef89fe097f97a3b44654360 (patch)
treef088e919776b22d19387377bdbec727daa2429c0 /.github/workflows/alternative-build-systems.yml
parent02f8b5593a15cdec8558256e6f40a0c7fb5862d6 (diff)
downloadcatch3-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.yml64
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