Skip to content

add macos-14 to FFI CI matrix #700

add macos-14 to FFI CI matrix

add macos-14 to FFI CI matrix #700

Workflow file for this run

on:
push:
branches: [main, dev]
pull_request:
name: Test C/C++ examples
jobs:
test_ffi_examples:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, macos-13, macos-14]
rust:
- stable
steps:
- name: Cancel Previous Runs
uses: styfle/cancel-workflow-action@0.12.1
with:
access_token: ${{ secrets.GITHUB_TOKEN }}
- uses: actions/checkout@v4
with:
token: ${{ secrets.GITHUB_TOKEN }}
submodules: recursive
- uses: actions-rs/toolchain@v1
with:
toolchain: ${{ matrix.rust }}
override: true
- name: Setup cmake
uses: jwlawson/actions-setup-cmake@v2.0
with:
cmake-version: '3.22.x'
- uses: Swatinem/rust-cache@v2
- name: Install cbindgen
uses: baptiste0928/cargo-install@v3
with:
crate: cbindgen
version: "=0.24.3"
- name: Run cmake on demes-forward example
run: |
cmake -Sdemes-forward-capi/c_example -Bbuild
- name: Build demes-forward example
run: |
cmake --build build
- name: Run demes-forward C example
run: |
./build/example demes-forward-capi/example_yaml/*.yaml
- name: cleanup
run: |
rm -rf build
- name: Run cmake on demes example
run: |
cmake -Sdemes/c_example -Bbuild
- name: Build demes example
run: |
cmake --build build
- name: Run demes C example
run: |
./build/example demes/demes-spec/examples/browning_america.yaml
- run: sudo apt-get update -y
if: matrix.os == 'ubuntu-latest'
- run: sudo apt-get install -y valgrind
if: matrix.os == 'ubuntu-latest'
- name: Run demes C example through valgrind
if: matrix.os == 'ubuntu-latest'
run: |
valgrind ./build/example demes/demes-spec/examples/browning_america.yaml