37
37
fail-fast : false
38
38
matrix :
39
39
config :
40
- - {name: "macOS-latest", os: "macOS-latest", cmake_extra: "-DCMAKE_OSX_DEPLOYMENT_TARGET=10.15 -DLSL_UNITTESTS=ON -DLSL_BENCHMARKS=ON" }
40
+ - {name: "macOS-latest", os: "macOS-latest", cmake_extra: "-DCMAKE_OSX_DEPLOYMENT_TARGET=10.15 -DLSL_UNITTESTS=ON -DLSL_BENCHMARKS=ON -DCMAKE_OSX_ARCHITECTURES=\"x86_64;arm64\" " }
41
41
- {name: "iOS", os: "macOS-latest", cmake_extra: "-DCMAKE_TOOLCHAIN_FILE=cmake/ios.toolchain.cmake -DPLATFORM=OS64" }
42
+ - {name: "iOS Simulator", os: "macOS-latest", cmake_extra: "-DCMAKE_TOOLCHAIN_FILE=cmake/ios.toolchain.cmake -DPLATFORM=SIMULATOR64COMBINED -G Xcode" }
42
43
43
44
steps :
44
45
- uses : actions/checkout@v4
60
61
-DCMAKE_BUILD_TYPE=Release \
61
62
-DCMAKE_INSTALL_PREFIX=${PWD}/install \
62
63
-DCPACK_PACKAGE_DIRECTORY=${PWD}/package \
63
- -DCMAKE_OSX_ARCHITECTURES="x86_64;arm64" \
64
64
-DLSL_FRAMEWORK=ON \
65
65
-Dlslgitrevision=${{ github.sha }} \
66
66
-Dlslgitbranch=${{ github.ref }} \
75
75
run : cmake --build build --config Release --target install
76
76
77
77
- name : test install using examples
78
- if : matrix.config.name != 'iOS '
78
+ if : matrix.config.name == 'macOS-latest '
79
79
run : |
80
80
# Test that the in-tree install was successful by building the examples
81
81
cmake -S examples -B examples/build \
94
94
--entitlements lsl.entitlements --options runtime \
95
95
install/Frameworks/lsl.framework/Versions/A/lsl
96
96
codesign -vvv --verify --deep --strict install/Frameworks/lsl.framework/Versions/A/lsl
97
- elif [[ "${{ matrix.config.name }}" == "iOS" ]]; then
97
+ elif [[ "${{ matrix.config.name }}" == "iOS" || "${{ matrix.config.name }}" == "iOS Simulator" ]]; then
98
98
codesign -vvv --force --deep --sign "$APPLE_CODE_SIGN_IDENTITY_APP" \
99
99
install/Frameworks/lsl.framework/lsl
100
100
codesign -vvv --verify --deep --strict install/Frameworks/lsl.framework/lsl
@@ -106,7 +106,7 @@ jobs:
106
106
107
107
# run internal tests
108
108
- name : unit tests
109
- if : matrix.config.name != 'iOS '
109
+ if : matrix.config.name == 'macOS-latest '
110
110
run : |
111
111
mkdir -p dumps
112
112
install/bin/lsl_test_internal --order rand --wait-for-keypress never --durations yes
@@ -159,7 +159,7 @@ jobs:
159
159
path : |
160
160
package/*.pkg
161
161
install/Frameworks/lsl.framework.zip
162
- # Note: the artifact will preserves the folder structure up to the common root, in this case all.
162
+ # Note: the artifact will preserve the folder structure up to the common root, in this case all.
163
163
164
164
- name : Upload iOS Framework
165
165
if : matrix.config.name == 'iOS'
@@ -169,6 +169,13 @@ jobs:
169
169
path : install/Frameworks/lsl.framework.zip
170
170
# Note: the artifact drops the folder structure and only keeps the zip.
171
171
172
+ - name : Upload iOS Simulator Framework
173
+ if : matrix.config.name == 'iOS Simulator'
174
+ uses : actions/upload-artifact@v4
175
+ with :
176
+ name : build-iOS-Simulator
177
+ path : install/Frameworks/lsl.framework.zip
178
+
172
179
xcframework_and_deploy :
173
180
name : XCFramework and Deploy
174
181
needs : build
@@ -183,6 +190,10 @@ jobs:
183
190
with :
184
191
name : build-iOS
185
192
path : build-iOS
193
+ - uses : actions/download-artifact@v4
194
+ with :
195
+ name : build-iOS-Simulator
196
+ path : build-iOS-Simulator
186
197
187
198
- name : Unzip macOS Framework
188
199
run : |
@@ -192,6 +203,10 @@ jobs:
192
203
run : |
193
204
unzip build-iOS/lsl.framework.zip -d build-iOS/Frameworks
194
205
206
+ - name : Unzip iOS Simulator Framework
207
+ run : |
208
+ unzip build-iOS-Simulator/lsl.framework.zip -d build-iOS-Simulator/Frameworks
209
+
195
210
- name : Install certificates and provisioning profiles
196
211
uses : ./.github/actions/install-apple-certs
197
212
with :
@@ -205,6 +220,7 @@ jobs:
205
220
xcodebuild -create-xcframework \
206
221
-framework build-macOS-latest/Frameworks/lsl.framework \
207
222
-framework build-iOS/Frameworks/lsl.framework \
223
+ -framework build-iOS-Simulator/Frameworks/lsl.framework \
208
224
-output lsl.xcframework
209
225
210
226
codesign -vvv --force --deep --sign "$APPLE_CODE_SIGN_IDENTITY_APP" lsl.xcframework
0 commit comments