Skip to content

Commit 0a81cda

Browse files
committed
Added macOS x64 build
1 parent 53aac9f commit 0a81cda

1 file changed

Lines changed: 41 additions & 15 deletions

File tree

.github/workflows/cmake.yml

Lines changed: 41 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ jobs:
1010
build:
1111
strategy:
1212
matrix:
13-
os: [macos-14, windows-latest, ubuntu-latest]
13+
os: [macos-14, macos-13, windows-latest, ubuntu-latest]
1414
build_type: [Release]
1515

1616
# The CMake configure and build commands are platform agnostic and should work equally well on Windows or Mac.
@@ -20,14 +20,20 @@ jobs:
2020

2121
steps:
2222
- name: List Xcode installations
23-
if: matrix.os == 'macos-14'
23+
if: runner.os == 'macOS'
2424
run: sudo ls -1 /Applications | grep "Xcode"
25-
- name: Select Xcode 16.2
25+
26+
- name: Select Xcode 16.2 (macOS 14 ARM)
2627
if: matrix.os == 'macos-14'
2728
run: sudo xcode-select -s /Applications/Xcode_16.2.0.app/Contents/Developer
29+
30+
- name: Select Xcode 15.2 (macOS 13 Intel)
31+
if: matrix.os == 'macos-13'
32+
run: sudo xcode-select -s /Applications/Xcode_15.2.app/Contents/Developer
33+
2834
- uses: actions/checkout@v4
2935
with:
30-
submodules: recursive # ← This ensures Eigen is fetched
36+
submodules: recursive
3137

3238
- name: Cache CPM dependencies
3339
uses: actions/cache@v4
@@ -66,19 +72,39 @@ jobs:
6672
libgl1-mesa-dev \
6773
pkg-config
6874
69-
- name: Configure CMake
70-
run: cmake -S . -B ${{github.workspace}}/build
71-
-DCMAKE_BUILD_TYPE=${{ matrix.build_type }}
72-
-DCMAKE_TOOLCHAIN_FILE=${{ github.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake
73-
-DCMAKE_CXX_FLAGS="-Wno-error"
74-
if: matrix.os != 'windows-latest'
75+
- name: Configure CMake (macOS ARM64)
76+
if: matrix.os == 'macos-14'
77+
run: |
78+
cmake -S . -B ${{github.workspace}}/build \
79+
-DCMAKE_BUILD_TYPE=${{ matrix.build_type }} \
80+
-DCMAKE_TOOLCHAIN_FILE=${{ github.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake \
81+
-DVCPKG_TARGET_TRIPLET=arm64-osx-dynamic \
82+
-DCMAKE_CXX_FLAGS="-Wno-error"
83+
84+
- name: Configure CMake (macOS x64)
85+
if: matrix.os == 'macos-13'
86+
run: |
87+
cmake -S . -B ${{github.workspace}}/build \
88+
-DCMAKE_BUILD_TYPE=${{ matrix.build_type }} \
89+
-DCMAKE_TOOLCHAIN_FILE=${{ github.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake \
90+
-DVCPKG_TARGET_TRIPLET=x64-osx-dynamic \
91+
-DCMAKE_CXX_FLAGS="-Wno-error"
92+
93+
- name: Configure CMake (Linux)
94+
if: matrix.os == 'ubuntu-latest'
95+
run: |
96+
cmake -S . -B ${{github.workspace}}/build \
97+
-DCMAKE_BUILD_TYPE=${{ matrix.build_type }} \
98+
-DCMAKE_TOOLCHAIN_FILE=${{ github.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake \
99+
-DCMAKE_CXX_FLAGS="-Wno-error"
75100
76101
- name: Configure CMake (Windows)
77-
run: cmake -S . -B ${{github.workspace}}/build
78-
-DCMAKE_BUILD_TYPE=${{ matrix.build_type }}
79-
-DCMAKE_TOOLCHAIN_FILE=${{ github.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake
80-
-DCMAKE_CXX_FLAGS="/WX-"
81102
if: matrix.os == 'windows-latest'
103+
run: |
104+
cmake -S . -B ${{github.workspace}}/build \
105+
-DCMAKE_BUILD_TYPE=${{ matrix.build_type }} \
106+
-DCMAKE_TOOLCHAIN_FILE=${{ github.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake \
107+
-DCMAKE_CXX_FLAGS="/WX-"
82108
83109
- name: Build
84110
# Build your program with the given configuration
@@ -87,7 +113,7 @@ jobs:
87113
- name: Upload VST3 artifact
88114
uses: actions/upload-artifact@v4
89115
with:
90-
name: XenRoll-${{ matrix.os }}-${{ matrix.build_type }}
116+
name: XenRoll-${{ matrix.os == 'macos-14' && 'macOS-arm64' || matrix.os == 'macos-13' && 'macOS-x64' || matrix.os == 'windows-latest' && 'windows' || 'linux_x86_64' }}-${{ matrix.build_type }}
91117
path: |
92118
${{github.workspace}}/build/**/XenRoll.vst3/**
93119
${{github.workspace}}/build/XenRoll_artefacts/**/VST3/*.vst3/**

0 commit comments

Comments
 (0)