Skip to content

Add CMake CI

Add CMake CI #19

Workflow file for this run

# ref: https://github.com/actions/runner-images
name: arm64 MacOS
on: [push, pull_request, workflow_dispatch]
# Building using the github runner environement directly.
jobs:
native:
strategy:
matrix:
cmake: [
{generator: "Xcode", config: Release, build_target: ALL_BUILD, test_target: RUN_TESTS, install_target: install},
{generator: "Unix Makefiles", config: Release, build_target: all, test_target: test, install_target: install},
]
fail-fast: false
name: MacOS • ${{ matrix.cmake.generator }}
runs-on: macos-latest # macos M1 based runner
steps:
- uses: actions/checkout@v4
- name: Check cmake
run: cmake --version
- name: Install CoinUtils
run: >
cd /tmp
&& git clone -b stable/2.11 --depth=1 https://github.com/Mizux/CoinUtils.git
&& cd CoinUtils
&& cmake -S. -Bbuild
&& cmake --build build --config Release
&& sudo cmake --build build --config Release --target install
&& cd ..
&& rm -rf CoinUtils
- name: Configure
run: >
cmake -S. -Bbuild
-G "${{ matrix.cmake.generator }}"
-DCMAKE_BUILD_TYPE=${{ matrix.cmake.config }}
-DCMAKE_INSTALL_PREFIX=build/install
- name: Build
run: >
cmake --build build
--config ${{ matrix.cmake.config }}
--target ${{ matrix.cmake.build_target }}
-v -j2
- name: Test
run: >
CTEST_OUTPUT_ON_FAILURE=1
cmake --build build
--config ${{ matrix.cmake.config }}
--target ${{ matrix.cmake.test_target }}
-v
- name: Install
run: >
cmake --build build
--config ${{ matrix.cmake.config }}
--target ${{ matrix.cmake.install_target }}
-v