Skip to content

Release build shared libs too #10

Release build shared libs too

Release build shared libs too #10

Workflow file for this run

---
name: Continuous Integration
on:
push:
branches:
- master
- develop
pull_request:
branches:
- develop
jobs:
test:
strategy:
fail-fast: false
matrix:
os: [macos-15, ubuntu-24.04, windows-2022]
type: [Debug, Release]
# link: [shared, static]
# include:
# - {link: shared, shared: YES}
# - {link: static, shared: NO}
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- name: Setup Cpp
if: startsWith(matrix.os, 'macos')
uses: aminya/setup-cpp@v1
with:
# compiler: llvm-18
clangtidy: true
cmake: true
ninja: true
- name: Install static analyzers
if: matrix.os == 'ubuntu-24.04'
run: >-
sudo apt-get install clang-tidy-18 ninja-build -y -q
sudo update-alternatives --install
/usr/bin/clang-tidy clang-tidy
/usr/bin/clang-tidy-18 140
- name: Setup MultiToolTask
if: matrix.os == 'windows-2022'
run: |
Add-Content "$env:GITHUB_ENV" 'UseMultiToolTask=true'
Add-Content "$env:GITHUB_ENV" 'EnforceProcessCountAcrossBuilds=true'
- name: Configure
shell: pwsh
run: cmake --preset=${{ matrix.type }}
- name: Setup PATH
if: matrix.os == 'windows-2022' && matrix.type == 'shared'
run: Add-Content "$env:GITHUB_PATH" "$(Get-Location)\build\${{ matrix.type }}"
- name: Build
run: cmake --build build --config ${{ matrix.type }} -j 2
- name: Test
working-directory: build
run: ctest --output-on-failure --no-tests=error -C ${{ matrix.type }}
- name: Install
run: cmake --install build --prefix prefix --config ${{ matrix.type }}