mirror of
https://github.com/godotengine/godot-build-scripts.git
synced 2026-01-01 09:48:47 +03:00
Compare commits
21 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c3d199c4d4 | ||
|
|
629090d76e | ||
|
|
834f6223d8 | ||
|
|
1bf0772565 | ||
|
|
7131e406ae | ||
|
|
62a88ec262 | ||
|
|
0c96c1ea15 | ||
|
|
c3f202946a | ||
|
|
3cb13f27ea | ||
|
|
d99668ccaa | ||
|
|
a29f0a255d | ||
|
|
d36a865ff1 | ||
|
|
15810984ed | ||
|
|
a79a7d16ce | ||
|
|
b3ba0ae932 | ||
|
|
0f11496664 | ||
|
|
e321eca2bf | ||
|
|
ef6c745075 | ||
|
|
3fd3880077 | ||
|
|
0da7793d2d | ||
|
|
9bba647a8b |
0
build-android/upload-mavencentral.sh
Normal file → Executable file
0
build-android/upload-mavencentral.sh
Normal file → Executable file
@@ -11,7 +11,7 @@ export OPTIONS="production=yes use_lto=no"
|
||||
export OPTIONS_MONO="module_mono_enabled=yes"
|
||||
export TERM=xterm
|
||||
|
||||
export IOS_SDK="17.0"
|
||||
export IOS_SDK="17.5"
|
||||
export IOS_LIPO="/root/ioscross/arm64/bin/arm-apple-darwin11-lipo"
|
||||
|
||||
rm -rf godot
|
||||
|
||||
@@ -5,9 +5,8 @@ set -e
|
||||
# Config
|
||||
|
||||
export SCONS="scons -j${NUM_CORES} verbose=yes warnings=no progress=no"
|
||||
export OPTIONS="osxcross_sdk=darwin23 production=yes use_volk=no vulkan_sdk_path=/root/vulkansdk angle_libs=/root/angle"
|
||||
export OPTIONS="osxcross_sdk=darwin23.6 production=yes use_volk=no vulkan_sdk_path=/root/moltenvk angle_libs=/root/angle"
|
||||
export OPTIONS_MONO="module_mono_enabled=yes"
|
||||
export STRIP="x86_64-apple-darwin23-strip -u -r"
|
||||
export TERM=xterm
|
||||
|
||||
rm -rf godot
|
||||
@@ -23,7 +22,6 @@ if [ "${CLASSICAL}" == "1" ]; then
|
||||
$SCONS platform=macos $OPTIONS arch=x86_64 target=editor
|
||||
$SCONS platform=macos $OPTIONS arch=arm64 target=editor
|
||||
lipo -create bin/godot.macos.editor.x86_64 bin/godot.macos.editor.arm64 -output bin/godot.macos.editor.universal
|
||||
$STRIP bin/godot.macos.editor.universal
|
||||
|
||||
mkdir -p /root/out/tools
|
||||
cp -rvp bin/* /root/out/tools
|
||||
@@ -32,11 +30,9 @@ if [ "${CLASSICAL}" == "1" ]; then
|
||||
$SCONS platform=macos $OPTIONS arch=x86_64 target=template_debug
|
||||
$SCONS platform=macos $OPTIONS arch=arm64 target=template_debug
|
||||
lipo -create bin/godot.macos.template_debug.x86_64 bin/godot.macos.template_debug.arm64 -output bin/godot.macos.template_debug.universal
|
||||
$STRIP bin/godot.macos.template_debug.universal
|
||||
$SCONS platform=macos $OPTIONS arch=x86_64 target=template_release
|
||||
$SCONS platform=macos $OPTIONS arch=arm64 target=template_release
|
||||
lipo -create bin/godot.macos.template_release.x86_64 bin/godot.macos.template_release.arm64 -output bin/godot.macos.template_release.universal
|
||||
$STRIP bin/godot.macos.template_release.universal
|
||||
|
||||
mkdir -p /root/out/templates
|
||||
cp -rvp bin/* /root/out/templates
|
||||
@@ -54,7 +50,6 @@ if [ "${MONO}" == "1" ]; then
|
||||
$SCONS platform=macos $OPTIONS $OPTIONS_MONO arch=x86_64 target=editor
|
||||
$SCONS platform=macos $OPTIONS $OPTIONS_MONO arch=arm64 target=editor
|
||||
lipo -create bin/godot.macos.editor.x86_64.mono bin/godot.macos.editor.arm64.mono -output bin/godot.macos.editor.universal.mono
|
||||
$STRIP bin/godot.macos.editor.universal.mono
|
||||
./modules/mono/build_scripts/build_assemblies.py --godot-output-dir=./bin --godot-platform=macos
|
||||
|
||||
mkdir -p /root/out/tools-mono
|
||||
@@ -64,11 +59,9 @@ if [ "${MONO}" == "1" ]; then
|
||||
$SCONS platform=macos $OPTIONS $OPTIONS_MONO arch=x86_64 target=template_debug
|
||||
$SCONS platform=macos $OPTIONS $OPTIONS_MONO arch=arm64 target=template_debug
|
||||
lipo -create bin/godot.macos.template_debug.x86_64.mono bin/godot.macos.template_debug.arm64.mono -output bin/godot.macos.template_debug.universal.mono
|
||||
$STRIP bin/godot.macos.template_debug.universal.mono
|
||||
$SCONS platform=macos $OPTIONS $OPTIONS_MONO arch=x86_64 target=template_release
|
||||
$SCONS platform=macos $OPTIONS $OPTIONS_MONO arch=arm64 target=template_release
|
||||
lipo -create bin/godot.macos.template_release.x86_64.mono bin/godot.macos.template_release.arm64.mono -output bin/godot.macos.template_release.universal.mono
|
||||
$STRIP bin/godot.macos.template_release.universal.mono
|
||||
|
||||
mkdir -p /root/out/templates-mono
|
||||
cp -rvp bin/* /root/out/templates-mono
|
||||
|
||||
@@ -274,10 +274,8 @@ if [ "${build_classical}" == "1" ]; then
|
||||
binname="${godot_basename}_win64.exe"
|
||||
wrpname="${godot_basename}_win64_console.exe"
|
||||
cp out/windows/x86_64/tools/godot.windows.editor.x86_64.exe ${binname}
|
||||
strip ${binname}
|
||||
sign_windows ${binname}
|
||||
cp out/windows/x86_64/tools/godot.windows.editor.x86_64.console.exe ${wrpname}
|
||||
strip ${wrpname}
|
||||
sign_windows ${wrpname}
|
||||
zip -q -9 "${reldir}/${binname}.zip" ${binname} ${wrpname}
|
||||
rm ${binname} ${wrpname}
|
||||
@@ -285,10 +283,17 @@ if [ "${build_classical}" == "1" ]; then
|
||||
binname="${godot_basename}_win32.exe"
|
||||
wrpname="${godot_basename}_win32_console.exe"
|
||||
cp out/windows/x86_32/tools/godot.windows.editor.x86_32.exe ${binname}
|
||||
strip ${binname}
|
||||
sign_windows ${binname}
|
||||
cp out/windows/x86_32/tools/godot.windows.editor.x86_32.console.exe ${wrpname}
|
||||
strip ${wrpname}
|
||||
sign_windows ${wrpname}
|
||||
zip -q -9 "${reldir}/${binname}.zip" ${binname} ${wrpname}
|
||||
rm ${binname} ${wrpname}
|
||||
|
||||
binname="${godot_basename}_windows_arm64.exe"
|
||||
wrpname="${godot_basename}_windows_arm64_console.exe"
|
||||
cp out/windows/arm64/tools/godot.windows.editor.arm64.llvm.exe ${binname}
|
||||
sign_windows ${binname}
|
||||
cp out/windows/arm64/tools/godot.windows.editor.arm64.llvm.console.exe ${wrpname}
|
||||
sign_windows ${wrpname}
|
||||
zip -q -9 "${reldir}/${binname}.zip" ${binname} ${wrpname}
|
||||
rm ${binname} ${wrpname}
|
||||
@@ -298,11 +303,14 @@ if [ "${build_classical}" == "1" ]; then
|
||||
cp out/windows/x86_64/templates/godot.windows.template_debug.x86_64.exe ${templatesdir}/windows_debug_x86_64.exe
|
||||
cp out/windows/x86_32/templates/godot.windows.template_release.x86_32.exe ${templatesdir}/windows_release_x86_32.exe
|
||||
cp out/windows/x86_32/templates/godot.windows.template_debug.x86_32.exe ${templatesdir}/windows_debug_x86_32.exe
|
||||
cp out/windows/arm64/templates/godot.windows.template_release.arm64.llvm.exe ${templatesdir}/windows_release_arm64.exe
|
||||
cp out/windows/arm64/templates/godot.windows.template_debug.arm64.llvm.exe ${templatesdir}/windows_debug_arm64.exe
|
||||
cp out/windows/x86_64/templates/godot.windows.template_release.x86_64.console.exe ${templatesdir}/windows_release_x86_64_console.exe
|
||||
cp out/windows/x86_64/templates/godot.windows.template_debug.x86_64.console.exe ${templatesdir}/windows_debug_x86_64_console.exe
|
||||
cp out/windows/x86_32/templates/godot.windows.template_release.x86_32.console.exe ${templatesdir}/windows_release_x86_32_console.exe
|
||||
cp out/windows/x86_32/templates/godot.windows.template_debug.x86_32.console.exe ${templatesdir}/windows_debug_x86_32_console.exe
|
||||
strip ${templatesdir}/windows*.exe
|
||||
cp out/windows/arm64/templates/godot.windows.template_release.arm64.llvm.console.exe ${templatesdir}/windows_release_arm64_console.exe
|
||||
cp out/windows/arm64/templates/godot.windows.template_debug.arm64.llvm.console.exe ${templatesdir}/windows_debug_arm64_console.exe
|
||||
|
||||
## macOS (Classical) ##
|
||||
|
||||
@@ -341,9 +349,15 @@ if [ "${build_classical}" == "1" ]; then
|
||||
cp out/web/templates/godot.web.template_release.wasm32.zip ${templatesdir}/web_release.zip
|
||||
cp out/web/templates/godot.web.template_debug.wasm32.zip ${templatesdir}/web_debug.zip
|
||||
|
||||
cp out/web/templates/godot.web.template_release.wasm32.nothreads.zip ${templatesdir}/web_nothreads_release.zip
|
||||
cp out/web/templates/godot.web.template_debug.wasm32.nothreads.zip ${templatesdir}/web_nothreads_debug.zip
|
||||
|
||||
cp out/web/templates/godot.web.template_release.wasm32.dlink.zip ${templatesdir}/web_dlink_release.zip
|
||||
cp out/web/templates/godot.web.template_debug.wasm32.dlink.zip ${templatesdir}/web_dlink_debug.zip
|
||||
|
||||
cp out/web/templates/godot.web.template_release.wasm32.nothreads.dlink.zip ${templatesdir}/web_dlink_nothreads_release.zip
|
||||
cp out/web/templates/godot.web.template_debug.wasm32.nothreads.dlink.zip ${templatesdir}/web_dlink_nothreads_debug.zip
|
||||
|
||||
## Android (Classical) ##
|
||||
|
||||
# Lib for direct download
|
||||
@@ -367,7 +381,7 @@ if [ "${build_classical}" == "1" ]; then
|
||||
cp out/ios/templates/libgodot.ios.debug.simulator.a ios_xcode/libgodot.ios.debug.xcframework/ios-arm64_x86_64-simulator/libgodot.a
|
||||
cp out/ios/templates/libgodot.ios.a ios_xcode/libgodot.ios.release.xcframework/ios-arm64/libgodot.a
|
||||
cp out/ios/templates/libgodot.ios.debug.a ios_xcode/libgodot.ios.debug.xcframework/ios-arm64/libgodot.a
|
||||
cp -r deps/vulkansdk-macos/MoltenVK/MoltenVK.xcframework ios_xcode/
|
||||
cp -r deps/moltenvk/MoltenVK/MoltenVK.xcframework ios_xcode/
|
||||
rm -rf ios_xcode/MoltenVK.xcframework/{macos,tvos}*
|
||||
cd ios_xcode
|
||||
zip -q -9 -r "${templatesdir}/ios.zip" *
|
||||
@@ -443,11 +457,9 @@ if [ "${build_mono}" == "1" ]; then
|
||||
wrpname="${godot_basename}_mono_win64_console"
|
||||
mkdir -p ${binname}
|
||||
cp out/windows/x86_64/tools-mono/godot.windows.editor.x86_64.mono.exe ${binname}/${binname}.exe
|
||||
strip ${binname}/${binname}.exe
|
||||
sign_windows ${binname}/${binname}.exe
|
||||
cp -rp out/windows/x86_64/tools-mono/GodotSharp ${binname}/
|
||||
cp out/windows/x86_64/tools-mono/godot.windows.editor.x86_64.mono.console.exe ${binname}/${wrpname}.exe
|
||||
strip ${binname}/${wrpname}.exe
|
||||
sign_windows ${binname}/${wrpname}.exe
|
||||
zip -r -q -9 "${reldir_mono}/${binname}.zip" ${binname}
|
||||
rm -rf ${binname}
|
||||
@@ -456,11 +468,20 @@ if [ "${build_mono}" == "1" ]; then
|
||||
wrpname="${godot_basename}_mono_win32_console"
|
||||
mkdir -p ${binname}
|
||||
cp out/windows/x86_32/tools-mono/godot.windows.editor.x86_32.mono.exe ${binname}/${binname}.exe
|
||||
strip ${binname}/${binname}.exe
|
||||
sign_windows ${binname}/${binname}.exe
|
||||
cp -rp out/windows/x86_32/tools-mono/GodotSharp ${binname}/
|
||||
cp out/windows/x86_32/tools-mono/godot.windows.editor.x86_32.mono.console.exe ${binname}/${wrpname}.exe
|
||||
strip ${binname}/${wrpname}.exe
|
||||
sign_windows ${binname}/${wrpname}.exe
|
||||
zip -r -q -9 "${reldir_mono}/${binname}.zip" ${binname}
|
||||
rm -rf ${binname}
|
||||
|
||||
binname="${godot_basename}_mono_windows_arm64"
|
||||
wrpname="${godot_basename}_mono_windows_arm64_console"
|
||||
mkdir -p ${binname}
|
||||
cp out/windows/arm64/tools-mono/godot.windows.editor.arm64.llvm.mono.exe ${binname}/${binname}.exe
|
||||
sign_windows ${binname}/${binname}.exe
|
||||
cp -rp out/windows/arm64/tools-mono/GodotSharp ${binname}/
|
||||
cp out/windows/arm64/tools-mono/godot.windows.editor.arm64.llvm.mono.console.exe ${binname}/${wrpname}.exe
|
||||
sign_windows ${binname}/${wrpname}.exe
|
||||
zip -r -q -9 "${reldir_mono}/${binname}.zip" ${binname}
|
||||
rm -rf ${binname}
|
||||
@@ -470,11 +491,14 @@ if [ "${build_mono}" == "1" ]; then
|
||||
cp out/windows/x86_64/templates-mono/godot.windows.template_release.x86_64.mono.exe ${templatesdir_mono}/windows_release_x86_64.exe
|
||||
cp out/windows/x86_32/templates-mono/godot.windows.template_debug.x86_32.mono.exe ${templatesdir_mono}/windows_debug_x86_32.exe
|
||||
cp out/windows/x86_32/templates-mono/godot.windows.template_release.x86_32.mono.exe ${templatesdir_mono}/windows_release_x86_32.exe
|
||||
cp out/windows/arm64/templates-mono/godot.windows.template_debug.arm64.llvm.mono.exe ${templatesdir_mono}/windows_debug_arm64.exe
|
||||
cp out/windows/arm64/templates-mono/godot.windows.template_release.arm64.llvm.mono.exe ${templatesdir_mono}/windows_release_arm64.exe
|
||||
cp out/windows/x86_64/templates-mono/godot.windows.template_debug.x86_64.mono.console.exe ${templatesdir_mono}/windows_debug_x86_64_console.exe
|
||||
cp out/windows/x86_64/templates-mono/godot.windows.template_release.x86_64.mono.console.exe ${templatesdir_mono}/windows_release_x86_64_console.exe
|
||||
cp out/windows/x86_32/templates-mono/godot.windows.template_debug.x86_32.mono.console.exe ${templatesdir_mono}/windows_debug_x86_32_console.exe
|
||||
cp out/windows/x86_32/templates-mono/godot.windows.template_release.x86_32.mono.console.exe ${templatesdir_mono}/windows_release_x86_32_console.exe
|
||||
strip ${templatesdir_mono}/windows*.exe
|
||||
cp out/windows/arm64/templates-mono/godot.windows.template_debug.arm64.llvm.mono.console.exe ${templatesdir_mono}/windows_debug_arm64_console.exe
|
||||
cp out/windows/arm64/templates-mono/godot.windows.template_release.arm64.llvm.mono.console.exe ${templatesdir_mono}/windows_release_arm64_console.exe
|
||||
|
||||
## macOS (Mono) ##
|
||||
|
||||
@@ -518,7 +542,7 @@ if [ "${build_mono}" == "1" ]; then
|
||||
cp out/ios/templates-mono/libgodot.ios.debug.simulator.a ios_xcode/libgodot.ios.debug.xcframework/ios-arm64_x86_64-simulator/libgodot.a
|
||||
cp out/ios/templates-mono/libgodot.ios.a ios_xcode/libgodot.ios.release.xcframework/ios-arm64/libgodot.a
|
||||
cp out/ios/templates-mono/libgodot.ios.debug.a ios_xcode/libgodot.ios.debug.xcframework/ios-arm64/libgodot.a
|
||||
cp -r deps/vulkansdk-macos/MoltenVK/MoltenVK.xcframework ios_xcode/
|
||||
cp -r deps/moltenvk/MoltenVK/MoltenVK.xcframework ios_xcode/
|
||||
rm -rf ios_xcode/MoltenVK.xcframework/{macos,tvos}*
|
||||
cd ios_xcode
|
||||
zip -q -9 -r "${templatesdir_mono}/ios.zip" *
|
||||
|
||||
@@ -8,12 +8,17 @@ set -e
|
||||
# we run all builds in parallel each from their own folder.
|
||||
export NUM_JOBS=5
|
||||
declare -a JOBS=(
|
||||
"target=editor use_closure_compiler=yes"
|
||||
"target=template_debug"
|
||||
"target=template_release"
|
||||
"target=template_debug dlink_enabled=yes"
|
||||
"target=template_release dlink_enabled=yes"
|
||||
)
|
||||
declare -a JOBS_NOTHREADS=(
|
||||
"target=template_debug threads=no"
|
||||
"target=template_release threads=no"
|
||||
"target=template_debug dlink_enabled=yes threads=no"
|
||||
"target=template_release dlink_enabled=yes threads=no"
|
||||
)
|
||||
|
||||
export SCONS="scons -j$(expr ${NUM_CORES} / ${NUM_JOBS}) verbose=yes warnings=no progress=no"
|
||||
export OPTIONS="production=yes"
|
||||
@@ -32,7 +37,7 @@ tar xf /root/godot.tar.gz --strip-components=1
|
||||
if [ "${CLASSICAL}" == "1" ]; then
|
||||
echo "Starting classical build for Web..."
|
||||
|
||||
for i in {0..4}; do
|
||||
for i in {0..3}; do
|
||||
cp -r /root/godot /root/godot$i
|
||||
cd /root/godot$i
|
||||
echo "$SCONS platform=web ${OPTIONS} ${JOBS[$i]}"
|
||||
@@ -40,16 +45,35 @@ if [ "${CLASSICAL}" == "1" ]; then
|
||||
pids[$i]=$!
|
||||
done
|
||||
|
||||
cd /root/godot
|
||||
echo "$SCONS platform=web ${OPTIONS} target=editor use_closure_compiler=yes"
|
||||
$SCONS platform=web ${OPTIONS} target=editor use_closure_compiler=yes &
|
||||
pid_editor=$!
|
||||
|
||||
for pid in ${pids[*]}; do
|
||||
wait $pid
|
||||
done
|
||||
wait $pid_editor
|
||||
|
||||
for i in {0..3}; do
|
||||
cp -r /root/godot /root/godot-nothreads$i
|
||||
cd /root/godot-nothreads$i
|
||||
echo "$SCONS platform=web ${OPTIONS} ${JOBS_NOTHREADS[$i]}"
|
||||
$SCONS platform=web ${OPTIONS} ${JOBS_NOTHREADS[$i]} &
|
||||
pids_nothreads[$i]=$!
|
||||
done
|
||||
|
||||
for pid in ${pids_nothreads[*]}; do
|
||||
wait $pid
|
||||
done
|
||||
|
||||
mkdir -p /root/out/tools
|
||||
cp -rvp /root/godot0/bin/*.editor*.zip /root/out/tools
|
||||
cp -rvp /root/godot/bin/*.editor*.zip /root/out/tools
|
||||
|
||||
mkdir -p /root/out/templates
|
||||
for i in {1..4}; do
|
||||
for i in {0..3}; do
|
||||
cp -rvp /root/godot$i/bin/*.zip /root/out/templates
|
||||
cp -rvp /root/godot-nothreads$i/bin/*.zip /root/out/templates
|
||||
done
|
||||
fi
|
||||
|
||||
|
||||
@@ -5,8 +5,9 @@ set -e
|
||||
# Config
|
||||
|
||||
export SCONS="scons -j${NUM_CORES} verbose=yes warnings=no progress=no"
|
||||
export OPTIONS="production=yes angle_libs=/root/angle"
|
||||
export OPTIONS="production=yes use_mingw=yes angle_libs=/root/angle mesa_libs=/root/mesa d3d12=yes"
|
||||
export OPTIONS_MONO="module_mono_enabled=yes"
|
||||
export OPTIONS_LLVM="use_llvm=yes mingw_prefix=/root/llvm-mingw"
|
||||
export TERM=xterm
|
||||
|
||||
rm -rf godot
|
||||
@@ -40,6 +41,28 @@ if [ "${CLASSICAL}" == "1" ]; then
|
||||
mkdir -p /root/out/x86_32/templates
|
||||
cp -rvp bin/* /root/out/x86_32/templates
|
||||
rm -rf bin
|
||||
|
||||
$SCONS platform=windows arch=arm64 $OPTIONS $OPTIONS_LLVM target=editor
|
||||
mkdir -p /root/out/arm64/tools
|
||||
cp -rvp bin/* /root/out/arm64/tools
|
||||
rm -rf bin
|
||||
|
||||
$SCONS platform=windows arch=arm64 $OPTIONS $OPTIONS_LLVM target=template_debug
|
||||
$SCONS platform=windows arch=arm64 $OPTIONS $OPTIONS_LLVM target=template_release
|
||||
mkdir -p /root/out/arm64/templates
|
||||
cp -rvp bin/* /root/out/arm64/templates
|
||||
rm -rf bin
|
||||
|
||||
if [ "${STEAM}" == "1" ]; then
|
||||
build_name=${BUILD_NAME}
|
||||
export BUILD_NAME="steam"
|
||||
$SCONS platform=windows arch=x86_64 $OPTIONS target=editor steamapi=yes
|
||||
$SCONS platform=windows arch=x86_32 $OPTIONS target=editor steamapi=yes
|
||||
mkdir -p /root/out/steam
|
||||
cp -rvp bin/* /root/out/steam
|
||||
rm -rf bin
|
||||
export BUILD_NAME=${build_name}
|
||||
fi
|
||||
fi
|
||||
|
||||
# Mono
|
||||
@@ -73,6 +96,18 @@ if [ "${MONO}" == "1" ]; then
|
||||
mkdir -p /root/out/x86_32/templates-mono
|
||||
cp -rvp bin/* /root/out/x86_32/templates-mono
|
||||
rm -rf bin
|
||||
|
||||
$SCONS platform=windows arch=arm64 $OPTIONS $OPTIONS_MONO $OPTIONS_LLVM target=editor
|
||||
./modules/mono/build_scripts/build_assemblies.py --godot-output-dir=./bin --godot-platform=windows
|
||||
mkdir -p /root/out/arm64/tools-mono
|
||||
cp -rvp bin/* /root/out/arm64/tools-mono
|
||||
rm -rf bin
|
||||
|
||||
$SCONS platform=windows arch=arm64 $OPTIONS $OPTIONS_MONO $OPTIONS_LLVM target=template_debug
|
||||
$SCONS platform=windows arch=arm64 $OPTIONS $OPTIONS_MONO $OPTIONS_LLVM target=template_release
|
||||
mkdir -p /root/out/arm64/templates-mono
|
||||
cp -rvp bin/* /root/out/arm64/templates-mono
|
||||
rm -rf bin
|
||||
fi
|
||||
|
||||
echo "Windows build successful"
|
||||
|
||||
50
build.sh
50
build.sh
@@ -28,6 +28,7 @@ godot_version=""
|
||||
git_treeish="master"
|
||||
build_classical=1
|
||||
build_mono=1
|
||||
build_steam=0
|
||||
force_download=0
|
||||
skip_download=1
|
||||
skip_git_checkout=0
|
||||
@@ -100,6 +101,10 @@ case "$choice" in
|
||||
esac
|
||||
export GODOT_VERSION_STATUS="${status}"
|
||||
|
||||
if [ "${status}" == "stable" ]; then
|
||||
build_steam=1
|
||||
fi
|
||||
|
||||
if [ ! -z "${username}" ] && [ ! -z "${password}" ]; then
|
||||
if ${podman} login ${registry} -u "${username}" -p "${password}"; then
|
||||
export logged_in=true
|
||||
@@ -131,9 +136,16 @@ if [ $skip_download == 0 ]; then
|
||||
fi
|
||||
fi
|
||||
|
||||
# macOS and iOS need the Vulkan SDK
|
||||
if [ ! -d "deps/vulkansdk-macos" ]; then
|
||||
echo "Missing Vulkan SDK for macOS, we're going to run into issues!"
|
||||
# macOS needs MoltenVK
|
||||
if [ ! -d "deps/moltenvk" ]; then
|
||||
echo "Missing MoltenVK for macOS, downloading it."
|
||||
mkdir -p deps/moltenvk
|
||||
pushd deps/moltenvk
|
||||
curl -L -o moltenvk.tar https://github.com/godotengine/moltenvk-osxcross/releases/download/vulkan-sdk-1.3.283.0-2/MoltenVK-all.tar
|
||||
tar xf moltenvk.tar && rm -f moltenvk.tar
|
||||
mv MoltenVK/MoltenVK/include/ MoltenVK/
|
||||
mv MoltenVK/MoltenVK/static/MoltenVK.xcframework/ MoltenVK/
|
||||
popd
|
||||
fi
|
||||
|
||||
# Windows and macOS need ANGLE
|
||||
@@ -141,10 +153,30 @@ if [ ! -d "deps/angle" ]; then
|
||||
echo "Missing ANGLE libraries, downloading them."
|
||||
mkdir -p deps/angle
|
||||
pushd deps/angle
|
||||
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
|
||||
curl -L -o macos.zip https://github.com/godotengine/godot-angle-static/releases/download/chromium%2F6029/macOS.6029.Xcode_15.arm64.x86_64.zip
|
||||
unzip windows.zip && rm -f windows.zip
|
||||
unzip macos.zip && rm -f macos.zip
|
||||
base_url=https://github.com/godotengine/godot-angle-static/releases/download/chromium%2F6601.2/godot-angle-static
|
||||
curl -L -o windows_arm64.zip $base_url-arm64-llvm-release.zip
|
||||
curl -L -o windows_x86_64.zip $base_url-x86_64-gcc-release.zip
|
||||
curl -L -o windows_x86_32.zip $base_url-x86_32-gcc-release.zip
|
||||
curl -L -o macos_arm64.zip $base_url-arm64-macos-release.zip
|
||||
curl -L -o macos_x86_64.zip $base_url-x86_64-macos-release.zip
|
||||
unzip -o windows_arm64.zip && rm -f windows_arm64.zip
|
||||
unzip -o windows_x86_64.zip && rm -f windows_x86_64.zip
|
||||
unzip -o windows_x86_32.zip && rm -f windows_x86_32.zip
|
||||
unzip -o macos_arm64.zip && rm -f macos_arm64.zip
|
||||
unzip -o macos_x86_64.zip && rm -f macos_x86_64.zip
|
||||
popd
|
||||
fi
|
||||
|
||||
if [ ! -d "deps/mesa" ]; then
|
||||
echo "Missing Mesa/NIR libraries, downloading them."
|
||||
mkdir -p deps/mesa
|
||||
pushd deps/mesa
|
||||
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
|
||||
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
|
||||
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
|
||||
unzip -o mesa_arm64.zip && rm -f mesa_arm64.zip
|
||||
unzip -o mesa_x86_64.zip && rm -f mesa_x86_64.zip
|
||||
unzip -o mesa_x86_32.zip && rm -f mesa_x86_32.zip
|
||||
popd
|
||||
fi
|
||||
|
||||
@@ -199,7 +231,7 @@ mkdir -p ${basedir}/mono-glue
|
||||
${podman_run} -v ${basedir}/build-mono-glue:/root/build localhost/godot-linux:${img_version} bash build/build.sh 2>&1 | tee ${basedir}/out/logs/mono-glue
|
||||
|
||||
mkdir -p ${basedir}/out/windows
|
||||
${podman_run} -v ${basedir}/build-windows:/root/build -v ${basedir}/out/windows:/root/out -v ${basedir}/deps/angle:/root/angle localhost/godot-windows:${img_version} bash build/build.sh 2>&1 | tee ${basedir}/out/logs/windows
|
||||
${podman_run} -v ${basedir}/build-windows:/root/build -v ${basedir}/out/windows:/root/out -v ${basedir}/deps/angle:/root/angle -v ${basedir}/deps/mesa:/root/mesa --env STEAM=${build_steam} localhost/godot-windows:${img_version} bash build/build.sh 2>&1 | tee ${basedir}/out/logs/windows
|
||||
|
||||
mkdir -p ${basedir}/out/linux
|
||||
${podman_run} -v ${basedir}/build-linux:/root/build -v ${basedir}/out/linux:/root/out localhost/godot-linux:${img_version} bash build/build.sh 2>&1 | tee ${basedir}/out/logs/linux
|
||||
@@ -208,7 +240,7 @@ mkdir -p ${basedir}/out/web
|
||||
${podman_run} -v ${basedir}/build-web:/root/build -v ${basedir}/out/web:/root/out localhost/godot-web:${img_version} bash build/build.sh 2>&1 | tee ${basedir}/out/logs/web
|
||||
|
||||
mkdir -p ${basedir}/out/macos
|
||||
${podman_run} -v ${basedir}/build-macos:/root/build -v ${basedir}/out/macos:/root/out -v ${basedir}/deps/vulkansdk-macos:/root/vulkansdk -v ${basedir}/deps/angle:/root/angle localhost/godot-osx:${img_version} bash build/build.sh 2>&1 | tee ${basedir}/out/logs/macos
|
||||
${podman_run} -v ${basedir}/build-macos:/root/build -v ${basedir}/out/macos:/root/out -v ${basedir}/deps/moltenvk:/root/moltenvk -v ${basedir}/deps/angle:/root/angle localhost/godot-osx:${img_version} bash build/build.sh 2>&1 | tee ${basedir}/out/logs/macos
|
||||
|
||||
mkdir -p ${basedir}/out/android
|
||||
${podman_run} -v ${basedir}/build-android:/root/build -v ${basedir}/out/android:/root/out -v ${basedir}/deps/keystore:/root/keystore localhost/godot-android:${img_version} bash build/build.sh 2>&1 | tee ${basedir}/out/logs/android
|
||||
|
||||
Reference in New Issue
Block a user