Skip to content

Commit f594dbe

Browse files
committed
ci: Add Windows ARM64 build configuration
1 parent ed079a5 commit f594dbe

File tree

1 file changed

+29
-7
lines changed

1 file changed

+29
-7
lines changed

.github/workflows/ci.yml

Lines changed: 29 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,9 @@ jobs:
1717
fail-fast: false
1818
matrix:
1919
config:
20-
- name: Windows MSVC Release
20+
- name: Windows MSVC x64 Release
2121
os: windows-latest
22+
arch: x64
2223
msvc: true
2324
buildtype: release
2425
args: >-
@@ -34,6 +35,25 @@ jobs:
3435
-Dfribidi:tests=false
3536
-Dfribidi:docs=false
3637
-Dlibass:fontconfig=disabled
38+
- name: Windows MSVC ARM64 Release
39+
os: windows-11-arm
40+
arch: arm64
41+
msvc: true
42+
buildtype: release
43+
args: >-
44+
-Ddefault_library=static
45+
--force-fallback-for=zlib,harfbuzz,freetype2,fribidi,libpng
46+
-Dfreetype2:harfbuzz=disabled
47+
-Dharfbuzz:freetype=disabled
48+
-Dharfbuzz:cairo=disabled
49+
-Dharfbuzz:glib=disabled
50+
-Dharfbuzz:gobject=disabled
51+
-Dharfbuzz:tests=disabled
52+
-Dharfbuzz:docs=disabled
53+
-Dfribidi:tests=false
54+
-Dfribidi:docs=false
55+
-Dlibass:fontconfig=disabled
56+
-Dlibass:asm=disabled
3757
#- {
3858
# name: Windows MinGW,
3959
# os: windows-latest,
@@ -79,11 +99,13 @@ jobs:
7999
pip install meson==1.7.2
80100
81101
- name: Setup MSVC
82-
if: matrix.config.os == 'windows-latest' && matrix.config.msvc == true
102+
if: startsWith(matrix.config.os, 'windows-') && matrix.config.msvc == true
83103
uses: ilammy/msvc-dev-cmd@v1
104+
with:
105+
arch: ${{ matrix.config.arch }}
84106

85107
- name: Install dependencies (Windows)
86-
if: matrix.config.os == 'windows-latest'
108+
if: startsWith(matrix.config.os, 'windows-')
87109
run: |
88110
choco install ninja innosetup
89111
@@ -130,27 +152,27 @@ jobs:
130152

131153
# Windows artifacts
132154
- name: Generate Windows installer
133-
if: matrix.config.os == 'windows-latest'
155+
if: startsWith(matrix.config.os, 'windows-')
134156
env:
135157
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
136158
run:
137159
meson compile win-installer -C build
138160

139161
- name: Generate Windows portable installer
140-
if: matrix.config.os == 'windows-latest'
162+
if: startsWith(matrix.config.os, 'windows-')
141163
run: cd build && ninja win-portable
142164

143165
- name: Upload artifacts - win_installer
144166
uses: actions/upload-artifact@v4
145-
if: matrix.config.os == 'windows-latest'
167+
if: startsWith(matrix.config.os, 'windows-')
146168
with:
147169
name: ${{ matrix.config.name }} - installer
148170
path: build/Aegisub-*.exe
149171
if-no-files-found: error
150172

151173
- name: Upload artifacts - portable.zip
152174
uses: actions/upload-artifact@v4
153-
if: matrix.config.os == 'windows-latest'
175+
if: startsWith(matrix.config.os, 'windows-')
154176
with:
155177
name: ${{ matrix.config.name }} - portable
156178
path: build/aegisub-portable-64.zip

0 commit comments

Comments
 (0)