Skip to content

Commit 552ca6d

Browse files
committed
Use libretro-build-devkitpro image for Wii U builds
1 parent bfb14b4 commit 552ca6d

File tree

1 file changed

+52
-18
lines changed

1 file changed

+52
-18
lines changed

.github/workflows/autobuild.yml

Lines changed: 52 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -345,6 +345,34 @@ jobs:
345345
name: stage1.${{ github.event_name == 'pull_request' && format('PR{0}', github.event.number) || github.ref_name }}-${{ steps.short-sha.outputs.sha }}
346346
path: libretro/build/libretro-stage1
347347

348+
wiiurpxtool:
349+
name: wiiurpxtool
350+
runs-on: ubuntu-latest
351+
container: alpine:latest
352+
steps:
353+
- name: Install dependencies
354+
run: |
355+
apk update
356+
apk add build-base git zlib-dev zlib-static cmake ninja
357+
358+
- name: Build wiiurpxtool
359+
run: |
360+
git clone https://github.com/yawut/wiiurpxtool-ng
361+
cd wiiurpxtool-ng
362+
git checkout 682cc9f587dee507b400a307f5a0787efc5dcb72
363+
git submodule update --init --recursive
364+
mv /usr/lib/libz.so /usr/lib/libz.so.backup
365+
LDFLAGS='-static' cmake -G Ninja .
366+
ninja -v
367+
mv /usr/lib/libz.so.backup /usr/lib/libz.so
368+
mv wiiurpxtool-ng wiiurpxtool
369+
370+
- name: Upload artifact
371+
uses: actions/upload-artifact@v4
372+
with:
373+
name: wiiurpxtool
374+
path: wiiurpxtool-ng/wiiurpxtool
375+
348376
build-libretro-windows:
349377
needs: build-libretro-stage1
350378
name: LR Windows
@@ -1113,11 +1141,15 @@ jobs:
11131141
path: ~/dist
11141142

11151143
build-libretro-wiiu:
1116-
needs: build-libretro-stage1
1144+
needs:
1145+
- build-libretro-stage1
1146+
- wiiurpxtool
11171147
name: LR Wii U
11181148
runs-on: ubuntu-latest
11191149
container:
1120-
image: git.libretro.com:5050/libretro-infrastructure/libretro-build-wiiu:latest
1150+
# We're supposed to use libretro-build-wiiu, but that currently has a really old version of devkitPPC that doesn't support C++17, so it can't compile OpenAL Soft.
1151+
# The libretro-build-devkitpro image that we're using here instead currently has a newer version of devkitPPC but lacks wiiurpxtool, which is why we need to separately install wiiurpxtool.
1152+
image: git.libretro.com:5050/libretro-infrastructure/libretro-build-devkitpro:latest
11211153
options: -u root
11221154
volumes:
11231155
- /tmp:/__e/node20
@@ -1134,22 +1166,6 @@ jobs:
11341166
source ~/miniconda3/bin/activate
11351167
conda install -y nodejs=20 git jq meson cmake
11361168
1137-
- name: Build and install wiiurpxtool
1138-
run: |
1139-
if command -v wiiurpxtool
1140-
then
1141-
echo 'wiiurpxtool already installed'
1142-
else
1143-
cd ~
1144-
git clone https://github.com/yawut/wiiurpxtool-ng
1145-
cd wiiurpxtool-ng
1146-
git checkout 682cc9f587dee507b400a307f5a0787efc5dcb72
1147-
git submodule update --init --recursive
1148-
cmake -G Ninja .
1149-
ninja -v
1150-
mv wiiurpxtool-ng /usr/local/bin/wiiurpxtool
1151-
fi
1152-
11531169
- id: short-sha
11541170
name: Get Git commit hash
11551171
uses: benjlevesque/[email protected]
@@ -1165,6 +1181,24 @@ jobs:
11651181
name: stage1.${{ github.event_name == 'pull_request' && format('PR{0}', github.event.number) || github.ref_name }}-${{ steps.short-sha.outputs.sha }}
11661182
path: libretro/build/libretro-stage1
11671183

1184+
- name: Download wiiurpxtool
1185+
uses: actions/download-artifact@v4
1186+
with:
1187+
name: wiiurpxtool
1188+
path: '~'
1189+
1190+
- name: Install wiiurpxtool
1191+
run: |
1192+
if command -v wiiurpxtool
1193+
then
1194+
echo 'wiiurpxtool already installed'
1195+
else
1196+
mv ~/wiiurpxtool /usr/local/bin
1197+
chmod +x /usr/local/bin/wiiurpxtool
1198+
echo 'wiiurpxtool successfully installed'
1199+
fi
1200+
wiiurpxtool
1201+
11681202
- name: Configure core
11691203
run: |
11701204
echo "[binaries]" | tee -a ~/cross.ini

0 commit comments

Comments
 (0)