32
32
arch : x86_64
33
33
msystem : ucrt64
34
34
toolchain : ucrt-x86_64
35
+ - name : Windows-ARM64
36
+ os : windows-11-arm
37
+ arch : aarch64
38
+ msystem : clangarm64
39
+ toolchain : clang-aarch64
35
40
steps :
36
41
- name : Checkout
37
42
uses : actions/checkout@v4
@@ -169,17 +174,22 @@ jobs:
169
174
"mingw-w64-${TOOLCHAIN}-curl-winssl"
170
175
"mingw-w64-${TOOLCHAIN}-gcc"
171
176
"mingw-w64-${TOOLCHAIN}-graphviz"
172
- "mingw-w64-${TOOLCHAIN}-MinHook"
173
177
"mingw-w64-${TOOLCHAIN}-miniupnpc"
174
178
"mingw-w64-${TOOLCHAIN}-nlohmann-json"
175
179
"mingw-w64-${TOOLCHAIN}-nodejs"
176
- "mingw-w64-${TOOLCHAIN}-nsis"
177
180
"mingw-w64-${TOOLCHAIN}-onevpl"
178
181
"mingw-w64-${TOOLCHAIN}-openssl"
179
182
"mingw-w64-${TOOLCHAIN}-opus"
180
183
"mingw-w64-${TOOLCHAIN}-toolchain"
181
184
)
182
185
186
+ if [[ ${MSYSTEM} == "ucrt64" ]]; then
187
+ dependencies+=(
188
+ "mingw-w64-${TOOLCHAIN}-MinHook"
189
+ "mingw-w64-${TOOLCHAIN}-nsis" # TODO: how to create an arm64 installer?
190
+ )
191
+ fi
192
+
183
193
# do not modify below this line
184
194
185
195
ignore_packages=()
@@ -266,26 +276,36 @@ jobs:
266
276
-B build \
267
277
-G Ninja \
268
278
-S . \
269
- -DBUILD_WERROR=ON \
270
279
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
271
280
-DSUNSHINE_ASSETS_DIR=assets \
272
281
-DSUNSHINE_PUBLISHER_NAME='${{ github.repository_owner }}' \
273
282
-DSUNSHINE_PUBLISHER_WEBSITE='https://app.lizardbyte.dev' \
274
283
-DSUNSHINE_PUBLISHER_ISSUE_URL='https://app.lizardbyte.dev/support'
275
284
ninja -C build
276
285
277
- - name : Package Windows
286
+ - name : Package Windows Installer
287
+ if : runner.arch == 'X86' || runner.arch == 'X64'
278
288
shell : msys2 {0}
279
289
run : |
280
290
mkdir -p artifacts
281
291
cd build
282
292
283
293
# package
284
294
cpack -G NSIS
285
- cpack -G ZIP
286
295
287
296
# move
288
297
mv ./cpack_artifacts/Sunshine.exe ../artifacts/Sunshine-${{ matrix.name }}-installer.exe
298
+
299
+ - name : Package Windows Portable
300
+ shell : msys2 {0}
301
+ run : |
302
+ mkdir -p artifacts
303
+ cd build
304
+
305
+ # package
306
+ cpack -G ZIP
307
+
308
+ # move
289
309
mv ./cpack_artifacts/Sunshine.zip ../artifacts/Sunshine-${{ matrix.name }}-portable.zip
290
310
291
311
- name : Run tests
@@ -298,7 +318,7 @@ jobs:
298
318
- name : Generate gcov report
299
319
id : test_report
300
320
# any except canceled or skipped
301
- if : always() && (steps.test.outcome == 'success' || steps.test.outcome == 'failure')
321
+ if : always() && (steps.test.outcome == 'success' || steps.test.outcome == 'failure') && runner.arch == 'X86' || runner.arch == 'X64'
302
322
shell : msys2 {0}
303
323
working-directory : build
304
324
run : |
0 commit comments