Skip to content

feat(build): No need to enable CMP0065 CMake policy anymore #35

feat(build): No need to enable CMP0065 CMake policy anymore

feat(build): No need to enable CMP0065 CMake policy anymore #35

name: Basic compilation test for most common platforms
on:
push:
branches: [main]
paths:
- '.github/workflows/build-basic-test.yml'
- 'CMakeLists.txt'
- 'src/**'
pull_request:
branches: [main]
paths:
- '.github/workflows/build-basic-test.yml'
- 'CMakeLists.txt'
- 'src/**'
env:
BUILD_TYPE: RelWithDebInfo
jobs:
build:
name: Build on ${{ matrix.name }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
include:
- name: 'Ubuntu 20.04 (default settings)'
os: ubuntu-20.04
extraargs: ''
- name: 'Ubuntu 24.04 (g++ 14)'
os: ubuntu-24.04
extraargs: '-DCMAKE_CXX_COMPILER=g++-14'
- name: 'Windows Server 2019 (win32)'
os: windows-2019
extraargs: '-DCMAKE_GENERATOR_PLATFORM=Win32'
- name: 'macOS 12 (x86_64 and arm64)'
os: macos-12
extraargs: '-DCMAKE_OSX_ARCHITECTURES="x86_64;arm64"'
steps:
- uses: actions/checkout@v4
- name: 'Install g++-14 (Ubuntu 24.04 only)'
if: matrix.os == 'ubuntu-24.04'
run: |
sudo apt-get -qq update
sudo apt-get -qq install -o=Dpkg::Use-Pty=0 -y g++-14
sudo apt-get clean
- name: Print CMake version
run: cmake --version
- name: Configure for ${{env.BUILD_TYPE}}
run: cmake -S . -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} ${{ matrix.extraargs }}
- name: Build
run: cmake --build ${{github.workspace}}/build -j1