Skip to content

Commit 1e0c524

Browse files
committed
ci: add macOS and Windows builds
1 parent dc6dce7 commit 1e0c524

File tree

1 file changed

+26
-3
lines changed

1 file changed

+26
-3
lines changed

.github/workflows/ci.yml

Lines changed: 26 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,20 +6,43 @@ on:
66

77
jobs:
88
build:
9-
runs-on: ubuntu-latest
9+
strategy:
10+
fail-fast: false
11+
matrix:
12+
os: [ubuntu-latest, macos-latest, windows-latest]
13+
runs-on: ${{ matrix.os }}
1014
steps:
1115
- name: Checkout (with submodules)
1216
uses: actions/checkout@v4
1317
with:
1418
submodules: recursive
1519

16-
- name: Install dependencies
20+
- name: Install dependencies (Linux)
21+
if: runner.os == 'Linux'
1722
run: |
1823
sudo apt-get update
1924
sudo apt-get install -y build-essential cmake libboost-all-dev
2025
26+
- name: Install dependencies (macOS)
27+
if: runner.os == 'macOS'
28+
run: |
29+
brew update
30+
brew install cmake boost
31+
32+
- name: Install dependencies (Windows)
33+
if: runner.os == 'Windows'
34+
shell: pwsh
35+
run: |
36+
choco install -y cmake --installargs 'ADD_CMAKE_TO_PATH=System'
37+
choco install -y boost-msvc-14.3
38+
2139
- name: Configure
2240
run: cmake -S . -B build -DCMAKE_POLICY_VERSION_MINIMUM=3.5
2341

24-
- name: Build
42+
- name: Build (Windows)
43+
if: runner.os == 'Windows'
44+
run: cmake --build build --config Release
45+
46+
- name: Build (Linux/macOS)
47+
if: runner.os != 'Windows'
2548
run: cmake --build build -- -j2

0 commit comments

Comments
 (0)