Added shotgun as Guess::type (#60) #84
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: CMake on multiple platforms | |
| on: | |
| push: | |
| branches: [ "main" ] | |
| pull_request: | |
| branches: [ "main" ] | |
| jobs: | |
| # ------------------------------------------------------------------------- | |
| # Build + test (developer tree) | |
| # ------------------------------------------------------------------------- | |
| build: | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ubuntu-latest, windows-latest] | |
| build_type: [Release] | |
| c_compiler: [gcc, clang, cl] | |
| include: | |
| - os: windows-latest | |
| c_compiler: cl | |
| cpp_compiler: cl | |
| - os: ubuntu-latest | |
| c_compiler: gcc | |
| cpp_compiler: g++ | |
| - os: ubuntu-latest | |
| c_compiler: clang | |
| cpp_compiler: clang++ | |
| exclude: | |
| - os: windows-latest | |
| c_compiler: gcc | |
| - os: windows-latest | |
| c_compiler: clang | |
| - os: ubuntu-latest | |
| c_compiler: cl | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Configure CMake | |
| run: > | |
| cmake -B ${{ github.workspace }}/build | |
| -DCMAKE_CXX_COMPILER=${{ matrix.cpp_compiler }} | |
| -DCMAKE_C_COMPILER=${{ matrix.c_compiler }} | |
| -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} | |
| -S ${{ github.workspace }} | |
| - name: Build | |
| run: cmake --build ${{ github.workspace }}/build --config ${{ matrix.build_type }} | |
| - name: Test | |
| working-directory: ${{ github.workspace }}/build | |
| run: ctest --build-config ${{ matrix.build_type }} --output-on-failure | |
| # ------------------------------------------------------------------------- | |
| # Install + test_package (consumer smoke test) | |
| # Verifies that find_package(Blast) works from an installed tree. | |
| # Only runs on Linux/GCC to keep CI fast; the logic is platform-agnostic. | |
| # ------------------------------------------------------------------------- | |
| install-test: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Configure Blast | |
| run: > | |
| cmake -B ${{ github.workspace }}/build | |
| -DCMAKE_BUILD_TYPE=Release | |
| -DCMAKE_INSTALL_PREFIX=${{ github.workspace }}/install | |
| -S ${{ github.workspace }} | |
| - name: Build Blast | |
| run: cmake --build ${{ github.workspace }}/build --config Release | |
| - name: Install Blast | |
| run: cmake --install ${{ github.workspace }}/build --config Release | |
| - name: Configure test_package | |
| run: > | |
| cmake -B ${{ github.workspace }}/test_package/build | |
| -DCMAKE_BUILD_TYPE=Release | |
| -DCMAKE_PREFIX_PATH=${{ github.workspace }}/install | |
| -S ${{ github.workspace }}/test_package | |
| - name: Build test_package | |
| run: cmake --build ${{ github.workspace }}/test_package/build --config Release | |
| - name: Run test_package | |
| run: ${{ github.workspace }}/test_package/build/test_consumer |