| | name: Config |
| |
|
| | on: |
| | workflow_dispatch: |
| | pull_request: |
| | push: |
| | branches: |
| | - master |
| | - stable |
| | - v* |
| |
|
| | jobs: |
| | |
| | |
| | cmake: |
| | strategy: |
| | fail-fast: false |
| | matrix: |
| | runs-on: [ubuntu-latest, macos-latest, windows-latest] |
| | arch: [x64] |
| | cmake: ["3.23"] |
| |
|
| | include: |
| | - runs-on: ubuntu-latest |
| | arch: x64 |
| | cmake: 3.4 |
| |
|
| | - runs-on: macos-latest |
| | arch: x64 |
| | cmake: 3.7 |
| |
|
| | - runs-on: windows-2019 |
| | arch: x64 |
| | cmake: 3.18 |
| |
|
| | name: 🐍 3.7 • CMake ${{ matrix.cmake }} • ${{ matrix.runs-on }} |
| | runs-on: ${{ matrix.runs-on }} |
| |
|
| | steps: |
| | - uses: actions/checkout@v3 |
| |
|
| | - name: Setup Python 3.7 |
| | uses: actions/setup-python@v4 |
| | with: |
| | python-version: 3.7 |
| | architecture: ${{ matrix.arch }} |
| |
|
| | - name: Prepare env |
| | run: python -m pip install -r tests/requirements.txt |
| |
|
| | |
| | |
| | - name: Setup CMake ${{ matrix.cmake }} |
| | uses: jwlawson/actions-setup-cmake@v1.13 |
| | with: |
| | cmake-version: ${{ matrix.cmake }} |
| |
|
| | |
| | - name: Make build directories |
| | run: mkdir "build dir" |
| |
|
| | - name: Configure |
| | working-directory: build dir |
| | shell: bash |
| | run: > |
| | cmake .. |
| | -DPYBIND11_WERROR=ON |
| | -DDOWNLOAD_CATCH=ON |
| | -DPYTHON_EXECUTABLE=$(python -c "import sys; print(sys.executable)") |
| | |
| | |
| | - name: Build |
| | working-directory: build dir |
| | if: github.event_name == 'workflow_dispatch' |
| | run: cmake --build . --config Release |
| |
|
| | - name: Test |
| | working-directory: build dir |
| | if: github.event_name == 'workflow_dispatch' |
| | run: cmake --build . --config Release --target check |
| |
|