Skip to content

Commit ea4bd77

Browse files
committed
Add commands to make ARM64 Windows engine builds, update Mesa/NIR and ANGLE downloads to the latest releases.
1 parent a29f0a2 commit ea4bd77

File tree

3 files changed

+71
-6
lines changed

3 files changed

+71
-6
lines changed

build-release.sh

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -293,15 +293,30 @@ if [ "${build_classical}" == "1" ]; then
293293
zip -q -9 "${reldir}/${binname}.zip" ${binname} ${wrpname}
294294
rm ${binname} ${wrpname}
295295

296+
binname="${godot_basename}_arm64.exe"
297+
wrpname="${godot_basename}_arm64_console.exe"
298+
cp out/windows/arm64/tools/godot.windows.editor.arm64.exe ${binname}
299+
strip ${binname}
300+
sign_windows ${binname}
301+
cp out/windows/arm64/tools/godot.windows.editor.arm64.console.exe ${wrpname}
302+
strip ${wrpname}
303+
sign_windows ${wrpname}
304+
zip -q -9 "${reldir}/${binname}.zip" ${binname} ${wrpname}
305+
rm ${binname} ${wrpname}
306+
296307
# Templates
297308
cp out/windows/x86_64/templates/godot.windows.template_release.x86_64.exe ${templatesdir}/windows_release_x86_64.exe
298309
cp out/windows/x86_64/templates/godot.windows.template_debug.x86_64.exe ${templatesdir}/windows_debug_x86_64.exe
299310
cp out/windows/x86_32/templates/godot.windows.template_release.x86_32.exe ${templatesdir}/windows_release_x86_32.exe
300311
cp out/windows/x86_32/templates/godot.windows.template_debug.x86_32.exe ${templatesdir}/windows_debug_x86_32.exe
312+
cp out/windows/arm64/templates/godot.windows.template_release.arm64.exe ${templatesdir}/windows_release_arm64.exe
313+
cp out/windows/arm64/templates/godot.windows.template_debug.arm64.exe ${templatesdir}/windows_debug_arm64.exe
301314
cp out/windows/x86_64/templates/godot.windows.template_release.x86_64.console.exe ${templatesdir}/windows_release_x86_64_console.exe
302315
cp out/windows/x86_64/templates/godot.windows.template_debug.x86_64.console.exe ${templatesdir}/windows_debug_x86_64_console.exe
303316
cp out/windows/x86_32/templates/godot.windows.template_release.x86_32.console.exe ${templatesdir}/windows_release_x86_32_console.exe
304317
cp out/windows/x86_32/templates/godot.windows.template_debug.x86_32.console.exe ${templatesdir}/windows_debug_x86_32_console.exe
318+
cp out/windows/arm64/templates/godot.windows.template_release.arm64.console.exe ${templatesdir}/windows_release_arm64_console.exe
319+
cp out/windows/arm64/templates/godot.windows.template_debug.arm64.console.exe ${templatesdir}/windows_debug_arm64_console.exe
305320
strip ${templatesdir}/windows*.exe
306321

307322
## macOS (Classical) ##
@@ -471,15 +486,32 @@ if [ "${build_mono}" == "1" ]; then
471486
zip -r -q -9 "${reldir_mono}/${binname}.zip" ${binname}
472487
rm -rf ${binname}
473488

489+
binname="${godot_basename}_mono_arm64"
490+
wrpname="${godot_basename}_mono_arm64_console"
491+
mkdir -p ${binname}
492+
cp out/windows/arm64/tools-mono/godot.windows.editor.arm64.mono.exe ${binname}/${binname}.exe
493+
strip ${binname}/${binname}.exe
494+
sign_windows ${binname}/${binname}.exe
495+
cp -rp out/windows/arm64/tools-mono/GodotSharp ${binname}/
496+
cp out/windows/arm64/tools-mono/godot.windows.editor.arm64.mono.console.exe ${binname}/${wrpname}.exe
497+
strip ${binname}/${wrpname}.exe
498+
sign_windows ${binname}/${wrpname}.exe
499+
zip -r -q -9 "${reldir_mono}/${binname}.zip" ${binname}
500+
rm -rf ${binname}
501+
474502
# Templates
475503
cp out/windows/x86_64/templates-mono/godot.windows.template_debug.x86_64.mono.exe ${templatesdir_mono}/windows_debug_x86_64.exe
476504
cp out/windows/x86_64/templates-mono/godot.windows.template_release.x86_64.mono.exe ${templatesdir_mono}/windows_release_x86_64.exe
477505
cp out/windows/x86_32/templates-mono/godot.windows.template_debug.x86_32.mono.exe ${templatesdir_mono}/windows_debug_x86_32.exe
478506
cp out/windows/x86_32/templates-mono/godot.windows.template_release.x86_32.mono.exe ${templatesdir_mono}/windows_release_x86_32.exe
507+
cp out/windows/arm64/templates-mono/godot.windows.template_debug.arm64.mono.exe ${templatesdir_mono}/windows_debug_arm64.exe
508+
cp out/windows/arm64/templates-mono/godot.windows.template_release.arm64.mono.exe ${templatesdir_mono}/windows_release_arm64.exe
479509
cp out/windows/x86_64/templates-mono/godot.windows.template_debug.x86_64.mono.console.exe ${templatesdir_mono}/windows_debug_x86_64_console.exe
480510
cp out/windows/x86_64/templates-mono/godot.windows.template_release.x86_64.mono.console.exe ${templatesdir_mono}/windows_release_x86_64_console.exe
481511
cp out/windows/x86_32/templates-mono/godot.windows.template_debug.x86_32.mono.console.exe ${templatesdir_mono}/windows_debug_x86_32_console.exe
482512
cp out/windows/x86_32/templates-mono/godot.windows.template_release.x86_32.mono.console.exe ${templatesdir_mono}/windows_release_x86_32_console.exe
513+
cp out/windows/arm64/templates-mono/godot.windows.template_debug.arm64.mono.console.exe ${templatesdir_mono}/windows_debug_arm64_console.exe
514+
cp out/windows/arm64/templates-mono/godot.windows.template_release.arm64.mono.console.exe ${templatesdir_mono}/windows_release_arm64_console.exe
483515
strip ${templatesdir_mono}/windows*.exe
484516

485517
## macOS (Mono) ##

build-windows/build.sh

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,17 @@ if [ "${CLASSICAL}" == "1" ]; then
4040
mkdir -p /root/out/x86_32/templates
4141
cp -rvp bin/* /root/out/x86_32/templates
4242
rm -rf bin
43+
44+
$SCONS platform=windows arch=arm64 $OPTIONS target=editor use_mingw=yes use_llvm=yes mingw_prefix=/root/llvm-mingw
45+
mkdir -p /root/out/arm64/tools
46+
cp -rvp bin/* /root/out/arm64/tools
47+
rm -rf bin
48+
49+
$SCONS platform=windows arch=arm64 $OPTIONS target=template_debug use_mingw=yes use_llvm=yes mingw_prefix=/root/llvm-mingw
50+
$SCONS platform=windows arch=arm64 $OPTIONS target=template_release use_mingw=yes use_llvm=yes mingw_prefix=/root/llvm-mingw
51+
mkdir -p /root/out/arm64/templates
52+
cp -rvp bin/* /root/out/arm64/templates
53+
rm -rf bin
4354
fi
4455

4556
# Mono
@@ -73,6 +84,18 @@ if [ "${MONO}" == "1" ]; then
7384
mkdir -p /root/out/x86_32/templates-mono
7485
cp -rvp bin/* /root/out/x86_32/templates-mono
7586
rm -rf bin
87+
88+
$SCONS platform=windows arch=arm64 $OPTIONS $OPTIONS_MONO target=editor use_mingw=yes use_llvm=yes mingw_prefix=/root/llvm-mingw
89+
./modules/mono/build_scripts/build_assemblies.py --godot-output-dir=./bin --godot-platform=windows
90+
mkdir -p /root/out/arm64/tools-mono
91+
cp -rvp bin/* /root/out/arm64/tools-mono
92+
rm -rf bin
93+
94+
$SCONS platform=windows arch=arm64 $OPTIONS $OPTIONS_MONO target=template_debug use_mingw=yes use_llvm=yes mingw_prefix=/root/llvm-mingw
95+
$SCONS platform=windows arch=arm64 $OPTIONS $OPTIONS_MONO target=template_release use_mingw=yes use_llvm=yes mingw_prefix=/root/llvm-mingw
96+
mkdir -p /root/out/arm64/templates-mono
97+
cp -rvp bin/* /root/out/arm64/templates-mono
98+
rm -rf bin
7699
fi
77100

78101
echo "Windows build successful"

build.sh

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -148,19 +148,29 @@ if [ ! -d "deps/angle" ]; then
148148
echo "Missing ANGLE libraries, downloading them."
149149
mkdir -p deps/angle
150150
pushd deps/angle
151-
curl -L -o windows.zip https://github.com/godotengine/godot-angle-static/releases/download/chromium%2F6029/Windows.6029-1.MinGW_11.x86_64.x86_32.zip
152-
curl -L -o macos.zip https://github.com/godotengine/godot-angle-static/releases/download/chromium%2F6029.1/macOS.6029.1.Xcode_15.arm64.x86_64.zip
153-
unzip windows.zip && rm -f windows.zip
154-
unzip macos.zip && rm -f macos.zip
151+
curl -L -o windows_arm64.zip https://github.com/godotengine/godot-angle-static/releases/download/chromium%2F6601/godot-angle-static-arm64-llvm-release.zip
152+
curl -L -o windows_x86_64.zip https://github.com/godotengine/godot-angle-static/releases/download/chromium%2F6601/godot-angle-static-x86_64-gcc-release.zip
153+
curl -L -o windows_x86_32.zip https://github.com/godotengine/godot-angle-static/releases/download/chromium%2F6601/godot-angle-static-x86_32-gcc-release.zip
154+
curl -L -o macos_arm64.zip https://github.com/godotengine/godot-angle-static/releases/download/chromium%2F6601/godot-angle-static-arm64-macos-release.zip
155+
curl -L -o macos_x86_64.zip https://github.com/godotengine/godot-angle-static/releases/download/chromium%2F6601/godot-angle-static-x86_64-macos-release.zip
156+
unzip -o windows_arm64.zip && rm -f windows_arm64.zip
157+
unzip -o windows_x86_64.zip && rm -f windows_x86_64.zip
158+
unzip -o windows_x86_32.zip && rm -f windows_x86_32.zip
159+
unzip -o macos_arm64.zip && rm -f macos_arm64.zip
160+
unzip -o macos_x86_64.zip && rm -f macos_x86_64.zip
155161
popd
156162
fi
157163

158164
if [ ! -d "deps/mesa" ]; then
159165
echo "Missing Mesa/NIR libraries, downloading them."
160166
mkdir -p deps/mesa
161167
pushd deps/mesa
162-
curl -L -o mesa.zip https://github.com/godotengine/godot-nir-static/releases/download/23.1.9/godot-nir-23.1.9.zip
163-
unzip mesa.zip && rm -f mesa.zip
168+
curl -L -o mesa_arm64.zip https://github.com/godotengine/godot-nir-static/releases/download/23.1.9-1/godot-nir-static-arm64-llvm-release.zip
169+
curl -L -o mesa_x86_64.zip https://github.com/godotengine/godot-nir-static/releases/download/23.1.9-1/godot-nir-static-x86_64-gcc-release.zip
170+
curl -L -o mesa_x86_32.zip https://github.com/godotengine/godot-nir-static/releases/download/23.1.9-1/godot-nir-static-x86_32-gcc-release.zip
171+
unzip -o mesa_arm64.zip && rm -f mesa_arm64.zip
172+
unzip -o mesa_x86_64.zip && rm -f mesa_x86_64.zip
173+
unzip -o mesa_x86_32.zip && rm -f mesa_x86_32.zip
164174
popd
165175
fi
166176

0 commit comments

Comments
 (0)