Skip to content

Commit d53d464

Browse files
all da changes
1 parent 2692dc1 commit d53d464

12 files changed

Lines changed: 300 additions & 361 deletions

.github/workflows/build-nightly.yaml

Lines changed: 59 additions & 85 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,6 @@ on:
55
tags:
66
- 'nightly_*'
77

8-
env:
9-
QT_VERSION: 5.12.12
10-
118
jobs:
129
build_linux:
1310
strategy:
@@ -21,7 +18,7 @@ jobs:
2118
arch: arm64
2219
name: Linux
2320
runs-on: ${{ matrix.os }}
24-
container: ghcr.io/scp-fs2open/linux_build:sha-71099c9
21+
container: ghcr.io/scp-fs2open/linux_build:sha-ab87451
2522
steps:
2623
- uses: actions/checkout@v7
2724
name: Checkout
@@ -40,8 +37,7 @@ jobs:
4037
working-directory: ./build
4138
env:
4239
CONFIGURATION: ${{ matrix.configuration }}
43-
run: |
44-
LD_LIBRARY_PATH=$Qt5_DIR/lib:$LD_LIBRARY_PATH ninja -k 20 all
40+
run: ninja -k 20 all
4541
- name: Run Tests
4642
working-directory: ./build
4743
env:
@@ -62,7 +58,7 @@ jobs:
6258
name: Build Linux distribution zip
6359
needs: build_linux
6460
runs-on: ubuntu-latest
65-
container: ghcr.io/scp-fs2open/sftp_upload:sha-844131c
61+
container: ghcr.io/scp-fs2open/sftp_upload:sha-ab87451
6662
strategy:
6763
matrix:
6864
arch: [x86_64, arm64]
@@ -107,10 +103,22 @@ jobs:
107103
strategy:
108104
matrix:
109105
configuration: [FastDebug, Release]
110-
arch: [Win32, x64]
111-
simd: [SSE2]
106+
os: [windows-2022, windows-11-arm]
107+
arch: [Win32, x64, ARM64]
108+
simd: [SSE2, ""]
109+
exclude:
110+
- arch: Win32
111+
os: windows-11-arm
112+
- arch: x64
113+
os: windows-11-arm
114+
- arch: ARM64
115+
os: windows-2022
116+
- os: windows-2022
117+
simd: ""
118+
- os: windows-11-arm
119+
simd: SSE2
112120
name: Windows
113-
runs-on: windows-2022
121+
runs-on: ${{ matrix.os }}
114122
steps:
115123
- uses: actions/checkout@v7
116124
name: Checkout
@@ -119,36 +127,6 @@ jobs:
119127
- name: Set workspace as safe
120128
# This appears to be broken in current actions, so do it manually
121129
run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
122-
# - name: Cache Qt
123-
# id: cache-qt-win
124-
# uses: actions/cache@v1
125-
# with:
126-
# path: ${{ github.workspace }}/../Qt
127-
# key: ${{ runner.os }}-${{ matrix.arch }}-QtCache-${{ env.QT_VERSION }}
128-
# - name: Install Qt (32 bit)
129-
# uses: jurplel/install-qt-action@v2
130-
# if: ${{ matrix.arch == 'Win32' }}
131-
# with:
132-
# version: ${{ env.QT_VERSION }}
133-
# dir: ${{ github.workspace }}/..
134-
# arch: win32_msvc2017
135-
# cached: ${{ steps.cache-qt-win.outputs.cache-hit }}
136-
# aqtversion: ==0.8
137-
# - name: Install Qt (64 bit)
138-
# uses: jurplel/install-qt-action@v2
139-
# if: ${{ matrix.arch == 'x64' }}
140-
# with:
141-
# version: ${{ env.QT_VERSION }}
142-
# dir: ${{ github.workspace }}/..
143-
# arch: win64_msvc2017_64
144-
# cached: ${{ steps.cache-qt-win.outputs.cache-hit }}
145-
# aqtversion: ==0.8
146-
- name: Prepare Vulkan SDK
147-
uses: humbletim/setup-vulkan-sdk@v1.2.1
148-
with:
149-
vulkan-query-version: 1.4.304.1
150-
vulkan-components: Vulkan-Headers, Vulkan-Loader
151-
vulkan-use-cache: true
152130
- name: Configure CMake
153131
env:
154132
CONFIGURATION: ${{ matrix.configuration }}
@@ -158,20 +136,11 @@ jobs:
158136
run: |
159137
mkdir build
160138
cd build
161-
162-
if [ "$ARCHITECTURE" = "Win32" ]; then
163-
cmake -DCMAKE_INSTALL_PREFIX="$(pwd)/install" -DFSO_USE_SPEECH="ON" \
164-
-DFSO_USE_VOICEREC="ON" -DFORCED_SIMD_INSTRUCTIONS="$SIMD" \
165-
-DFSO_BUILD_QTFRED=OFF -DFSO_BUILD_TESTS=ON \
166-
-DFSO_INSTALL_DEBUG_FILES="ON" -DFSO_BUILD_WITH_VULKAN="OFF" -A "$ARCHITECTURE" \
167-
-G "Visual Studio 17 2022" -T "v143" -DCMAKE_BUILD_TYPE=$CONFIGURATION ..
168-
else
169-
cmake -DCMAKE_INSTALL_PREFIX="$(pwd)/install" -DFSO_USE_SPEECH="ON" \
170-
-DFSO_USE_VOICEREC="ON" -DFORCED_SIMD_INSTRUCTIONS="$SIMD" \
171-
-DFSO_BUILD_QTFRED=OFF -DFSO_BUILD_TESTS=ON \
172-
-DFSO_INSTALL_DEBUG_FILES="ON" -A "$ARCHITECTURE" \
173-
-G "Visual Studio 17 2022" -T "v143" -DCMAKE_BUILD_TYPE=$CONFIGURATION ..
174-
fi
139+
cmake -DCMAKE_INSTALL_PREFIX="$(pwd)/install" -DFSO_USE_SPEECH="ON" \
140+
-DFSO_USE_VOICEREC="ON" -DFORCED_SIMD_INSTRUCTIONS="$SIMD" \
141+
-DFSO_BUILD_QTFRED=OFF -DFSO_BUILD_TESTS=ON \
142+
-DFSO_INSTALL_DEBUG_FILES="ON" -A "$ARCHITECTURE" \
143+
-G "Visual Studio 17 2022" -T "v143" -DCMAKE_BUILD_TYPE=$CONFIGURATION ..
175144
- name: Compile
176145
working-directory: ./build
177146
env:
@@ -187,20 +156,37 @@ jobs:
187156
CONFIGURATION: ${{ matrix.configuration }}
188157
shell: bash
189158
run: ./bin/$CONFIGURATION/unittests --gtest_shuffle
159+
- name: Set artifact id
160+
shell: bash
161+
run: |
162+
id=
163+
if [ -n "${{ matrix.simd }}" ]; then
164+
id="${{ matrix.configuration }}-${{ matrix.arch }}-${{ matrix.simd }}"
165+
else
166+
id="${{ matrix.configuration }}-${{ matrix.arch }}"
167+
fi
168+
echo "artifact_id=${id}" >> $GITHUB_ENV
190169
- name: Upload build result
191170
uses: actions/upload-artifact@v7
192171
with:
193-
name: windows-${{ matrix.configuration }}-${{ matrix.arch }}-${{ matrix.simd }}
172+
name: windows-${{ env.artifact_id }}
194173
path: ${{ github.workspace }}/build/install/*
195174
windows_zip:
196175
name: Build Windows distribution zip
197176
needs: build_windows
198177
runs-on: ubuntu-latest
199-
container: ghcr.io/scp-fs2open/sftp_upload:sha-844131c
178+
container: ghcr.io/scp-fs2open/sftp_upload:sha-ab87451
200179
strategy:
201180
matrix:
202-
arch: [Win32, x64]
203-
simd: [SSE2]
181+
arch: [Win32, x64, ARM64]
182+
simd: [SSE2, ""]
183+
exclude:
184+
- arch: Win32
185+
simd: ""
186+
- arch: x64
187+
simd: ""
188+
- arch: ARM64
189+
simd: SSE2
204190
steps:
205191
- uses: actions/checkout@v7
206192
name: Checkout
@@ -210,22 +196,31 @@ jobs:
210196
- name: Set workspace as safe
211197
# This appears to be broken in current actions, so do it manually
212198
run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
199+
- name: Set artifact id
200+
shell: bash
201+
run: |
202+
id=
203+
if [ -n "${{ matrix.simd }}" ]; then
204+
id="${{ matrix.arch }}-${{ matrix.simd }}"
205+
else
206+
id="${{ matrix.arch }}"
207+
fi
208+
echo "artifact_id=${id}" >> $GITHUB_ENV
213209
- name: Download Release builds
214210
uses: actions/download-artifact@v8
215211
with:
216-
name: windows-Release-${{ matrix.arch }}-${{ matrix.simd }}
212+
name: windows-Release-${{ env.artifact_id }}
217213
path: builds
218214
- name: Download FastDebug builds
219215
uses: actions/download-artifact@v8
220216
with:
221-
name: windows-FastDebug-${{ matrix.arch }}-${{ matrix.simd }}
217+
name: windows-FastDebug-${{ env.artifact_id }}
222218
path: builds
223219
- name: Create Distribution package
224220
working-directory: ./builds
225221
shell: bash
226222
env:
227-
ARCH: ${{ matrix.arch }}
228-
SIMD: ${{ matrix.simd }}
223+
ID: ${{ env.artifact_id }}
229224
run: $GITHUB_WORKSPACE/ci/linux/create_dist_pack.sh Windows
230225
- name: Upload result package
231226
working-directory: ./builds
@@ -246,21 +241,6 @@ jobs:
246241
name: Mac
247242
runs-on: macos-latest
248243
steps:
249-
# - name: Cache Qt
250-
# id: cache-qt-mac
251-
# uses: actions/cache@v1
252-
# with:
253-
# path: ${{ github.workspace }}/../Qt
254-
# key: ${{ runner.os }}-QtCache-${{ env.QT_VERSION }}
255-
# - name: Install Qt
256-
# uses: jurplel/install-qt-action@v2
257-
# with:
258-
# version: ${{ env.QT_VERSION }}
259-
# dir: ${{ github.workspace }}/..
260-
# cached: ${{ steps.cache-qt-mac.outputs.cache-hit }}
261-
# setup-python: 'false'
262-
# aqtversion: ==1.1.3
263-
# py7zrversion: '==0.19.*'
264244
- uses: actions/checkout@v7
265245
name: Checkout
266246
with:
@@ -269,12 +249,6 @@ jobs:
269249
- name: Set workspace as safe
270250
# This appears to be broken in current actions, so do it manually
271251
run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
272-
- name: Prepare Vulkan SDK
273-
uses: humbletim/setup-vulkan-sdk@v1.2.1
274-
with:
275-
vulkan-query-version: 1.4.304.1
276-
vulkan-components: Vulkan-Headers, Vulkan-Loader
277-
vulkan-use-cache: true
278252
- name: Set up test version
279253
shell: bash
280254
run: |
@@ -291,7 +265,7 @@ jobs:
291265
run: $GITHUB_WORKSPACE/ci/linux/configure_cmake.sh
292266
- name: Compile
293267
working-directory: ./build
294-
run: LD_LIBRARY_PATH=$Qt5_DIR/lib:$LD_LIBRARY_PATH ninja all
268+
run: ninja all
295269
- name: Run Tests
296270
working-directory: ./build
297271
env:
@@ -325,7 +299,7 @@ jobs:
325299
name: Build Mac distribution zip
326300
needs: build_mac
327301
runs-on: ubuntu-latest
328-
container: ghcr.io/scp-fs2open/sftp_upload:sha-844131c
302+
container: ghcr.io/scp-fs2open/sftp_upload:sha-ab87451
329303
strategy:
330304
matrix:
331305
arch: [x86_64, arm64]

0 commit comments

Comments
 (0)