name: ci-native on: push: branches: [main, master] pull_request: branches: [main, master] jobs: build: runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: os: [ubuntu-latest, macos-latest, windows-latest] steps: - uses: actions/checkout@v4 - name: Set up JDK (JNI) uses: actions/setup-java@v4 with: distribution: temurin java-version: "17" - name: Configure & build (Unix) if: runner.os != 'Windows' run: | cmake -S native -B native/build -DCMAKE_BUILD_TYPE=Release cmake --build native/build --parallel - name: Configure & build (Windows) if: runner.os == 'Windows' run: | cmake -S native -B native/build -DCMAKE_BUILD_TYPE=Release cmake --build native/build --config Release --parallel - name: Test (Unix) if: runner.os != 'Windows' working-directory: native/build run: ctest --output-on-failure - name: Test (Windows) if: runner.os == 'Windows' working-directory: native/build run: ctest -C Release --output-on-failure