Use Release as default build type. #161
This file contains 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: build | |
on: [push] | |
permissions: | |
contents: read | |
jobs: | |
all: | |
runs-on: ${{ matrix.os }} | |
name: ${{ matrix.os }}${{ matrix.name_extra }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [macos-latest, ubuntu-latest, windows-latest] | |
cmake_extra: [""] | |
name_extra: [""] | |
include: | |
- os: windows-latest | |
cmake_extra: "-T ClangCl" | |
name_extra: " clang-cl" | |
steps: | |
- name: checkout | |
uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: install python and pip | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.11' | |
- name: install latest CMake and Ninja for lukka/run-vcpkg (Windows) | |
if: ${{ runner.os == 'Windows' }} | |
uses: lukka/get-cmake@latest | |
- name: install dependencies (Windows) | |
if: ${{ runner.os == 'Windows' }} | |
uses: lukka/run-vcpkg@v11 | |
with: | |
vcpkgGitCommitId: 2cf957350da28ad032178a974607f59f961217d9 | |
- name: prepare build directory and install nihtest | |
run: | | |
cmake -E make_directory ${{runner.workspace}}/build | |
pip install nihtest | |
- name: configure (Unix) | |
if: ${{ runner.os != 'Windows' }} | |
working-directory: ${{runner.workspace}}/build | |
run: | | |
cmake ${{ matrix.cmake_extra }} ${{github.workspace}} | |
- name: configure (Windows) | |
if: ${{ runner.os == 'Windows' }} | |
working-directory: ${{runner.workspace}}/build | |
run: | | |
cmake ${{ matrix.cmake_extra }} -DCMAKE_TOOLCHAIN_FILE=${{env.VCPKG_ROOT}}/scripts/buildsystems/vcpkg.cmake ${{github.workspace}} | |
- name: Archive production artifacts | |
if: ${{ runner.os == 'Windows' }} | |
uses: actions/upload-artifact@v4 | |
with: | |
name: build-directory-${{ matrix.os }}-${{ matrix.name_extra }} | |
path: | | |
${{runner.workspace}}/build | |
- name: build | |
working-directory: ${{runner.workspace}}/build | |
run: | | |
cmake --build . --config Release | |
- name: test | |
working-directory: ${{runner.workspace}}/build | |
run: | | |
ctest --output-on-failure --verbose -C Release |