mirror of
https://github.com/godotengine/godot-build-scripts.git
synced 2026-01-05 06:11:49 +03:00
Initial commit
This commit is contained in:
6
.gitignore
vendored
Normal file
6
.gitignore
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
out/
|
||||
templates/
|
||||
git/
|
||||
mono-glue/
|
||||
release-*
|
||||
|
||||
34
build-android/build.sh
Executable file
34
build-android/build.sh
Executable file
@@ -0,0 +1,34 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
export BUILD_NAME=official
|
||||
export SCONS="scons -j16 verbose=yes warnings=no progress=no"
|
||||
export OPTIONS="builtin_libpng=yes builtin_openssl=yes builtin_zlib=yes debug_symbols=no use_static_cpp=yes use_lto=yes"
|
||||
export OPTIONS_MONO="module_mono_enabled=yes mono_static=yes"
|
||||
export TERM=xterm
|
||||
export ANDROID_HOME=/root/
|
||||
export ANDROID_NDK_ROOT=/root/ndk-bundle/
|
||||
|
||||
rm -rf godot
|
||||
mkdir godot
|
||||
cd godot
|
||||
tar xf /root/godot.tar.gz --strip-components=1
|
||||
|
||||
$SCONS platform=android android_arch=armv7 $OPTIONS tools=no target=release_debug
|
||||
$SCONS platform=android android_arch=armv7 $OPTIONS tools=no target=release
|
||||
|
||||
$SCONS platform=android android_arch=arm64v8 $OPTIONS tools=no target=release_debug
|
||||
$SCONS platform=android android_arch=arm64v8 $OPTIONS tools=no target=release
|
||||
|
||||
$SCONS platform=android android_arch=x86 $OPTIONS tools=no target=release_debug
|
||||
$SCONS platform=android android_arch=x86 $OPTIONS tools=no target=release
|
||||
|
||||
$SCONS platform=android android_arch=x86_64 $OPTIONS tools=no target=release_debug
|
||||
$SCONS platform=android android_arch=x86_64 $OPTIONS tools=no target=release
|
||||
|
||||
pushd platform/android/java
|
||||
./gradlew build
|
||||
popd
|
||||
|
||||
cp bin/*.apk /root/out
|
||||
52
build-ios/build.sh
Executable file
52
build-ios/build.sh
Executable file
@@ -0,0 +1,52 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
export BUILD_NAME=official
|
||||
export SCONS="scons -j16 verbose=yes warnings=no progress=no"
|
||||
export OPTIONS="osxcross_sdk=darwin15 builtin_libpng=yes builtin_openssl=yes builtin_zlib=yes debug_symbols=no use_static_cpp=yes"
|
||||
export OPTIONS_MONO="module_mono_enabled=yes mono_static=yes"
|
||||
export TERM=xterm
|
||||
export OSXCROSS_IOS=not_nothing
|
||||
|
||||
rm -rf godot
|
||||
mkdir godot
|
||||
cd godot
|
||||
tar xf /root/godot.tar.gz --strip-components=1
|
||||
|
||||
while ! $SCONS platform=iphone $OPTIONS arch=arm tools=no target=release_debug IPHONESDK="/root/ioscross/arm64/SDK/iPhoneOS11.2.sdk" IPHONEPATH="/root/ioscross/arm64/" ios_triple="arm-apple-darwin11-"; do
|
||||
echo "Retry"
|
||||
done
|
||||
|
||||
while ! $SCONS platform=iphone $OPTIONS arch=arm tools=no target=release IPHONESDK="/root/ioscross/arm64/SDK/iPhoneOS11.2.sdk" IPHONEPATH="/root/ioscross/arm64/" ios_triple="arm-apple-darwin11-"; do
|
||||
echo "Retry"
|
||||
done
|
||||
|
||||
while ! $SCONS platform=iphone $OPTIONS arch=arm64 tools=no target=release_debug IPHONESDK="/root/ioscross/arm64/SDK/iPhoneOS11.2.sdk" IPHONEPATH="/root/ioscross/arm64/" ios_triple="arm-apple-darwin11-"; do
|
||||
echo "Retry"
|
||||
done
|
||||
|
||||
while ! $SCONS platform=iphone $OPTIONS arch=arm64 tools=no target=release IPHONESDK="/root/ioscross/arm64/SDK/iPhoneOS11.2.sdk" IPHONEPATH="/root/ioscross/arm64/" ios_triple="arm-apple-darwin11-"; do
|
||||
echo "Retry"
|
||||
done
|
||||
|
||||
while ! $SCONS platform=iphone $OPTIONS arch=x86 tools=no target=release_debug IPHONESDK="/root/ioscross/x86_64/SDK/iPhoneOS11.2.sdk" IPHONEPATH="/root/ioscross/x86_64/" ios_triple="x86_64-apple-darwin11-"; do
|
||||
echo "Retry"
|
||||
done
|
||||
|
||||
while ! $SCONS platform=iphone $OPTIONS arch=x86 tools=no target=release IPHONESDK="/root/ioscross/x86_64/SDK/iPhoneOS11.2.sdk" IPHONEPATH="/root/ioscross/x86_64/" ios_triple="x86_64-apple-darwin11-"; do
|
||||
echo "Retry"
|
||||
done
|
||||
|
||||
while ! $SCONS platform=iphone $OPTIONS arch=x86_64 tools=no target=release_debug IPHONESDK="/root/ioscross/x86_64/SDK/iPhoneOS11.2.sdk" IPHONEPATH="/root/ioscross/x86_64/" ios_triple="x86_64-apple-darwin11-"; do
|
||||
echo "Retry"
|
||||
done
|
||||
|
||||
while ! $SCONS platform=iphone $OPTIONS arch=x86_64 tools=no target=release IPHONESDK="/root/ioscross/x86_64/SDK/iPhoneOS11.2.sdk" IPHONEPATH="/root/ioscross/x86_64/" ios_triple="x86_64-apple-darwin11-"; do
|
||||
echo "Retry"
|
||||
done
|
||||
|
||||
/root/ioscross/arm64/bin/arm-apple-darwin11-lipo -create bin/libgodot.iphone.opt.arm.a bin/libgodot.iphone.opt.arm64.a bin/libgodot.iphone.opt.x86.a bin/libgodot.iphone.opt.x86_64.a -output /root/out/libgodot.iphone.opt.fat
|
||||
/root/ioscross/arm64/bin/arm-apple-darwin11-lipo -create bin/libgodot.iphone.opt.debug.arm.a bin/libgodot.iphone.opt.debug.arm64.a bin/libgodot.iphone.opt.debug.x86.a bin/libgodot.iphone.opt.debug.x86_64.a -output /root/out/libgodot.iphone.opt.debug.fat
|
||||
|
||||
echo "iOS build successful"
|
||||
21
build-javascript/build.sh
Executable file
21
build-javascript/build.sh
Executable file
@@ -0,0 +1,21 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
export BUILD_NAME=official
|
||||
export SCONS="scons -j16 verbose=yes warnings=no progress=no"
|
||||
export OPTIONS="builtin_libpng=yes builtin_openssl=yes builtin_zlib=yes debug_symbols=no use_static_cpp=yes use_lto=yes"
|
||||
export OPTIONS_MONO="module_mono_enabled=yes mono_static=yes"
|
||||
export TERM=xterm
|
||||
|
||||
source /root/emsdk/emsdk_env.sh
|
||||
|
||||
rm -rf godot
|
||||
mkdir godot
|
||||
cd godot
|
||||
tar xf /root/godot.tar.gz --strip-components=1
|
||||
|
||||
$SCONS platform=javascript ${OPTIONS} target=release_debug tools=no
|
||||
$SCONS platform=javascript ${OPTIONS} target=release tools=no
|
||||
|
||||
cp -rvp bin/* /root/out/
|
||||
43
build-linux/build.sh
Executable file
43
build-linux/build.sh
Executable file
@@ -0,0 +1,43 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
export BUILD_NAME=official
|
||||
export SCONS="scons -j16 verbose=yes warnings=no progress=no"
|
||||
export OPTIONS="builtin_libpng=yes builtin_openssl=yes builtin_zlib=yes debug_symbols=no use_static_cpp=yes use_lto=yes"
|
||||
export OPTIONS_MONO="module_mono_enabled=yes mono_static=yes"
|
||||
export TERM=xterm
|
||||
export MONO32_PREFIX=/usr
|
||||
export MONO64_PREFIX=/usr
|
||||
export CC="gcc-8"
|
||||
export CXX="g++-8"
|
||||
|
||||
rm -rf godot
|
||||
mkdir godot
|
||||
cd godot
|
||||
tar xf /root/godot.tar.gz --strip-components=1
|
||||
|
||||
cp /root/mono-glue/*.cpp modules/mono/glue
|
||||
|
||||
$SCONS platform=x11 CC=$CC CXX=$CXX $OPTIONS tools=yes target=release_debug
|
||||
mkdir -p /root/out/tools
|
||||
cp -rvp bin/* /root/out/tools
|
||||
rm -rf bin
|
||||
|
||||
$SCONS platform=x11 CC=$CC CXX=$CXX $OPTIONS tools=no target=release_debug
|
||||
$SCONS platform=x11 CC=$CC CXX=$CXX $OPTIONS tools=no target=release
|
||||
mkdir -p /root/out/templates
|
||||
cp -rvp bin/* /root/out/templates
|
||||
rm -rf bin
|
||||
|
||||
$SCONS platform=x11 CC=$CC CXX=$CXX $OPTIONS $OPTIONS_MONO tools=yes target=release_debug copy_mono_root=yes
|
||||
mkdir -p /root/out/tools-mono
|
||||
cp -rvp bin/* /root/out/tools-mono
|
||||
rm -rf bin
|
||||
|
||||
$SCONS platform=x11 CC=$CC CXX=$CXX $OPTIONS $OPTIONS_MONO tools=no target=release_debug
|
||||
$SCONS platform=x11 CC=$CC CXX=$CXX $OPTIONS $OPTIONS_MONO tools=no target=release
|
||||
mkdir -p /root/out/templates-mono
|
||||
cp -rvp bin/* /root/out/templates-mono
|
||||
rm -rf bin
|
||||
|
||||
63
build-macosx/build.sh
Executable file
63
build-macosx/build.sh
Executable file
@@ -0,0 +1,63 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
export BUILD_NAME=official
|
||||
export SCONS="scons -j16 verbose=yes warnings=no progress=no"
|
||||
export OPTIONS="osxcross_sdk=darwin17 builtin_libpng=yes builtin_openssl=yes builtin_zlib=yes debug_symbols=no use_static_cpp=yes use_lto=yes"
|
||||
export OPTIONS_MONO="module_mono_enabled=yes mono_static=yes"
|
||||
export TERM=xterm
|
||||
export MONO64_PREFIX=/root/dependencies/mono
|
||||
export PATH=/root/osxcross/target/bin:$PATH
|
||||
export OSXCROSS_ROOT=/root/osxcross
|
||||
|
||||
rm -rf godot
|
||||
mkdir godot
|
||||
cd godot
|
||||
tar xf /root/godot.tar.gz --strip-components=1
|
||||
|
||||
cp /root/mono-glue/*.cpp modules/mono/glue
|
||||
|
||||
while ! $SCONS platform=osx $OPTIONS tools=yes target=release_debug; do
|
||||
echo "Retry"
|
||||
done
|
||||
|
||||
mkdir -p /root/out/tools
|
||||
cp -rvp bin/* /root/out/tools
|
||||
rm -rf bin
|
||||
|
||||
while ! $SCONS platform=osx $OPTIONS tools=no target=release_debug; do
|
||||
echo "Retry"
|
||||
done
|
||||
|
||||
while ! $SCONS platform=osx $OPTIONS tools=no target=release; do
|
||||
echo "Retry"
|
||||
done
|
||||
|
||||
mkdir -p /root/out/templates
|
||||
cp -rvp bin/* /root/out/templates
|
||||
rm -rf bin
|
||||
|
||||
while ! $SCONS platform=osx $OPTIONS $OPTIONS_MONO tools=yes target=release_debug copy_mono_root=yes; do
|
||||
echo "Retry"
|
||||
done
|
||||
|
||||
mkdir -p /root/out/tools-mono
|
||||
cp -rvp bin/* /root/out/tools-mono
|
||||
rm -rf bin
|
||||
|
||||
while ! $SCONS platform=osx $OPTIONS $OPTIONS_MONO tools=no target=release_debug; do
|
||||
echo "Retry"
|
||||
done
|
||||
|
||||
while ! $SCONS platform=osx $OPTIONS $OPTIONS_MONO tools=no target=release; do
|
||||
echo "Retry"
|
||||
done
|
||||
|
||||
mkdir -p /root/out/templates-mono
|
||||
cp -rvp bin/* /root/out/templates-mono
|
||||
rm -rf bin
|
||||
|
||||
find /root/out -name config -exec cp /root/dependencies/mono/etc/config {} \;
|
||||
|
||||
echo "MacOS build successful"
|
||||
24
build-mono-glue/build.sh
Executable file
24
build-mono-glue/build.sh
Executable file
@@ -0,0 +1,24 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
export BUILD_NAME=official
|
||||
export OPTIONS="builtin_libpng=yes builtin_openssl=yes builtin_zlib=yes debug_symbols=no"
|
||||
export SCONS="scons -j16 verbose=yes warnings=no progress=no"
|
||||
export TERM=xterm
|
||||
export MONO32_PREFIX=/usr
|
||||
export MONO64_PREFIX=/usr
|
||||
|
||||
rm -rf godot
|
||||
mkdir godot
|
||||
cd godot
|
||||
tar xf ../godot.tar.gz --strip-components=1
|
||||
|
||||
${SCONS} platform=x11 bits=64 ${OPTIONS} target=release_debug tools=yes module_mono_enabled=yes mono_glue=no
|
||||
xvfb-run bin/godot.x11.opt.tools.64.mono --generate-mono-glue /root/mono-glue || /bin/true
|
||||
|
||||
xvfb-run bin/godot.x11.opt.tools.64.mono --generate-cs-api /tmp/build_GodotSharp || /bin/true
|
||||
xvfb-run msbuild /tmp/build_GodotSharp/GodotSharp.sln /p:Configuration=Release
|
||||
mkdir -p /root/mono-glue/Api
|
||||
cp -r /tmp/build_GodotSharp/GodotSharp/bin/Release/{GodotSharp.dll,GodotSharp.pdb,GodotSharp.xml} /root/mono-glue/Api
|
||||
cp -r /tmp/build_GodotSharp/GodotSharpEditor/bin/Release/{GodotSharpEditor.dll,GodotSharpEditor.pdb,GodotSharpEditor.xml} /root/mono-glue/Api
|
||||
302
build-release.sh
Executable file
302
build-release.sh
Executable file
@@ -0,0 +1,302 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
if [ -z $1 ]; then
|
||||
echo "Usage: $0 <version>"
|
||||
echo " For example: $0 3.0.3-rc3"
|
||||
echo ""
|
||||
exit 1
|
||||
fi
|
||||
|
||||
function sign {
|
||||
./osslsigncode -pkcs12 REDACTED.pkcs12 -pass "REDACTED" -n "Godot Game Engine" -i "https://godotengine.org" -t http://timestamp.comodoca.com -in $1 -out $1-signed
|
||||
mv $1-signed $1
|
||||
}
|
||||
|
||||
export GODOT_VERSION=$1
|
||||
|
||||
# Tarball
|
||||
mkdir -p release-${GODOT_VERSION}
|
||||
rm -rf release-${GODOT_VERSION}/*.xz release-${GODOT_VERSION}/*.sha256
|
||||
zcat godot.tar.gz | xz -c > release-${GODOT_VERSION}/godot-${GODOT_VERSION}.tar.xz
|
||||
sha256sum release-${GODOT_VERSION}/godot-${GODOT_VERSION}.tar.xz > release-${GODOT_VERSION}/godot-${GODOT_VERSION}.tar.xz.sha256
|
||||
|
||||
# Ubuntu-32
|
||||
mkdir -p templates
|
||||
rm -f templates/linux_x11_32*
|
||||
|
||||
cp out/linux/x86/templates/godot.x11.opt.debug.32 templates/linux_x11_32_debug
|
||||
cp out/linux/x86/templates/godot.x11.opt.32 templates/linux_x11_32_release
|
||||
|
||||
mkdir -p release-${GODOT_VERSION}
|
||||
rm -f release-${GODOT_VERSION}/*linux*32*
|
||||
|
||||
cp out/linux/x86/tools/godot.x11.opt.tools.32 Godot_v${GODOT_VERSION}_x11.32
|
||||
zip -q -9 Godot_v${GODOT_VERSION}_x11.32.zip Godot_v${GODOT_VERSION}_x11.32
|
||||
mv Godot_v${GODOT_VERSION}_x11.32.zip release-${GODOT_VERSION}
|
||||
rm Godot_v${GODOT_VERSION}_x11.32
|
||||
|
||||
mkdir -p mono/release-${GODOT_VERSION}
|
||||
rm -rf mono/release-${GODOT_VERSION}/*linux*32*
|
||||
|
||||
mkdir -p Godot_v${GODOT_VERSION}_mono_x11_32
|
||||
cp out/linux/x86/tools-mono/godot.x11.opt.tools.32.mono Godot_v${GODOT_VERSION}_mono_x11_32/Godot_v${GODOT_VERSION}_mono_x11.32
|
||||
cp -rp out/linux/x86/tools-mono/GodotSharp/ Godot_v${GODOT_VERSION}_mono_x11_32
|
||||
cp -rp mono-glue/Api Godot_v${GODOT_VERSION}_mono_x11_32/GodotSharp/Api
|
||||
zip -r -q -9 Godot_v${GODOT_VERSION}_mono_x11_32.zip Godot_v${GODOT_VERSION}_mono_x11_32
|
||||
mv Godot_v${GODOT_VERSION}_mono_x11_32.zip mono/release-${GODOT_VERSION}
|
||||
rm -rf Godot_v${GODOT_VERSION}_mono_x11_32
|
||||
|
||||
mkdir -p mono/templates
|
||||
rm -rf mono/templates/*linux*32*
|
||||
|
||||
cp -rp out/linux/x86/templates-mono/data.mono.x11.32.* mono/templates/
|
||||
cp out/linux/x86/templates-mono/godot.x11.opt.debug.32.mono mono/templates/linux_x11_32_debug
|
||||
cp out/linux/x86/templates-mono/godot.x11.opt.32.mono mono/templates/linux_x11_32_release
|
||||
|
||||
# Ubuntu-64
|
||||
mkdir -p templates
|
||||
rm -f templates/linux_x11_64*
|
||||
|
||||
cp out/linux/x64/templates/godot.x11.opt.debug.64 templates/linux_x11_64_debug
|
||||
cp out/linux/x64/templates/godot.x11.opt.64 templates/linux_x11_64_release
|
||||
|
||||
mkdir -p release-${GODOT_VERSION}
|
||||
rm -f release-${GODOT_VERSION}/*linux*64*
|
||||
|
||||
cp out/linux/x64/tools/godot.x11.opt.tools.64 Godot_v${GODOT_VERSION}_x11.64
|
||||
zip -q -9 Godot_v${GODOT_VERSION}_x11.64.zip Godot_v${GODOT_VERSION}_x11.64
|
||||
mv Godot_v${GODOT_VERSION}_x11.64.zip release-${GODOT_VERSION}
|
||||
rm Godot_v${GODOT_VERSION}_x11.64
|
||||
|
||||
mkdir -p mono/release-${GODOT_VERSION}
|
||||
rm -rf mono/release-${GODOT_VERSION}/*linux*64*
|
||||
|
||||
mkdir -p Godot_v${GODOT_VERSION}_mono_x11_64
|
||||
cp out/linux/x64/tools-mono/godot.x11.opt.tools.64.mono Godot_v${GODOT_VERSION}_mono_x11_64/Godot_v${GODOT_VERSION}_mono_x11.64
|
||||
cp -rp out/linux/x64/tools-mono/GodotSharp Godot_v${GODOT_VERSION}_mono_x11_64
|
||||
cp -rp mono-glue/Api Godot_v${GODOT_VERSION}_mono_x11_64/GodotSharp/Api
|
||||
zip -r -q -9 Godot_v${GODOT_VERSION}_mono_x11_64.zip Godot_v${GODOT_VERSION}_mono_x11_64
|
||||
mv Godot_v${GODOT_VERSION}_mono_x11_64.zip mono/release-${GODOT_VERSION}
|
||||
rm -rf Godot_v${GODOT_VERSION}_mono_x11_64
|
||||
|
||||
mkdir -p mono/templates
|
||||
rm -rf mono/templates/*linux*64*
|
||||
|
||||
cp -rp out/linux/x64/templates-mono/data.mono.x11.64.* mono/templates/
|
||||
cp out/linux/x64/templates-mono/godot.x11.opt.debug.64.mono mono/templates/linux_x11_64_debug
|
||||
cp out/linux/x64/templates-mono/godot.x11.opt.64.mono mono/templates/linux_x11_64_release
|
||||
|
||||
# Server
|
||||
|
||||
cp out/server/x64/templates/godot_server.x11.opt.64 Godot_v${GODOT_VERSION}_linux_server.64
|
||||
zip -q -9 Godot_v${GODOT_VERSION}_linux_server.64.zip Godot_v${GODOT_VERSION}_linux_server.64
|
||||
mv Godot_v${GODOT_VERSION}_linux_server.64.zip release-${GODOT_VERSION}
|
||||
rm Godot_v${GODOT_VERSION}_linux_server.64
|
||||
|
||||
cp out/server/x64/tools/godot_server.x11.opt.tools.64 Godot_v${GODOT_VERSION}_linux_headless.64
|
||||
zip -q -9 Godot_v${GODOT_VERSION}_linux_headless.64.zip Godot_v${GODOT_VERSION}_linux_headless.64
|
||||
mv Godot_v${GODOT_VERSION}_linux_headless.64.zip release-${GODOT_VERSION}
|
||||
rm Godot_v${GODOT_VERSION}_linux_headless.64
|
||||
|
||||
# UWP
|
||||
mkdir -p templates
|
||||
rm -f templates/uwp*
|
||||
rm -rf uwp_template_*
|
||||
|
||||
for arch in ARM Win32 x64; do
|
||||
cp -r git/misc/dist/uwp_template uwp_template_${arch}
|
||||
|
||||
cp angle/winrt/10/src/Release_${arch}/libEGL.dll \
|
||||
angle/winrt/10/src/Release_${arch}/libGLESv2.dll \
|
||||
uwp_template_${arch}/
|
||||
cp -r uwp_template_${arch} uwp_template_${arch}_debug
|
||||
done
|
||||
|
||||
cp out/uwp/arm/godot.uwp.opt.32.arm.exe uwp_template_ARM/godot.uwp.exe
|
||||
cp out/uwp/arm/godot.uwp.opt.debug.32.arm.exe uwp_template_ARM_debug/godot.uwp.exe
|
||||
sign uwp_template_ARM/godot.uwp.exe
|
||||
sign uwp_template_ARM_debug/godot.uwp.exe
|
||||
cd uwp_template_ARM && zip -q -9 -r ../templates/uwp_arm_release.zip * && cd ..
|
||||
cd uwp_template_ARM_debug && zip -q -9 -r ../templates/uwp_arm_debug.zip * && cd ..
|
||||
|
||||
cp out/uwp/x86/godot.uwp.opt.32.x86.exe uwp_template_Win32/godot.uwp.exe
|
||||
cp out/uwp/x86/godot.uwp.opt.debug.32.x86.exe uwp_template_Win32_debug/godot.uwp.exe
|
||||
sign uwp_template_Win32/godot.uwp.exe
|
||||
sign uwp_template_Win32_debug/godot.uwp.exe
|
||||
cd uwp_template_Win32 && zip -q -9 -r ../templates/uwp_x86_release.zip * && cd ..
|
||||
cd uwp_template_Win32_debug && zip -q -9 -r ../templates/uwp_x86_debug.zip * && cd ..
|
||||
|
||||
cp out/uwp/x64/godot.uwp.opt.64.x64.exe uwp_template_x64/godot.uwp.exe
|
||||
cp out/uwp/x64/godot.uwp.opt.debug.64.x64.exe uwp_template_x64_debug/godot.uwp.exe
|
||||
sign uwp_template_x64/godot.uwp.exe
|
||||
sign uwp_template_x64_debug/godot.uwp.exe
|
||||
cd uwp_template_x64 && zip -q -9 -r ../templates/uwp_x64_release.zip * && cd ..
|
||||
cd uwp_template_x64_debug && zip -q -9 -r ../templates/uwp_x64_debug.zip * && cd ..
|
||||
|
||||
rm -rf uwp_template_*
|
||||
|
||||
# Windows
|
||||
|
||||
mkdir -p release-${GODOT_VERSION}
|
||||
rm -f release-${GODOT_VERSION}/*win*zip
|
||||
|
||||
cp out/windows/x64/tools/godot.windows.opt.tools.64.exe Godot_v${GODOT_VERSION}_win64.exe
|
||||
strip Godot_v${GODOT_VERSION}_win64.exe
|
||||
sign Godot_v${GODOT_VERSION}_win64.exe
|
||||
zip -q -9 Godot_v${GODOT_VERSION}_win64.exe.zip Godot_v${GODOT_VERSION}_win64.exe
|
||||
mv Godot_v${GODOT_VERSION}_win64.exe.zip release-${GODOT_VERSION}
|
||||
rm Godot_v${GODOT_VERSION}_win64.exe
|
||||
|
||||
cp out/windows/x86/tools/godot.windows.opt.tools.32.exe Godot_v${GODOT_VERSION}_win32.exe
|
||||
strip Godot_v${GODOT_VERSION}_win32.exe
|
||||
sign Godot_v${GODOT_VERSION}_win32.exe
|
||||
zip -q -9 Godot_v${GODOT_VERSION}_win32.exe.zip Godot_v${GODOT_VERSION}_win32.exe
|
||||
mv Godot_v${GODOT_VERSION}_win32.exe.zip release-${GODOT_VERSION}
|
||||
rm Godot_v${GODOT_VERSION}_win32.exe
|
||||
|
||||
mkdir -p templates
|
||||
rm -rf templates/*win*
|
||||
|
||||
cp out/windows/x64/templates/godot.windows.opt.64.exe templates/windows_64_release.exe
|
||||
cp out/windows/x64/templates/godot.windows.opt.debug.64.exe templates/windows_64_debug.exe
|
||||
cp out/windows/x86/templates/godot.windows.opt.32.exe templates/windows_32_release.exe
|
||||
cp out/windows/x86/templates/godot.windows.opt.debug.32.exe templates/windows_32_debug.exe
|
||||
|
||||
strip templates/windows*.exe
|
||||
|
||||
sign templates/windows_64_release.exe
|
||||
sign templates/windows_64_debug.exe
|
||||
sign templates/windows_32_release.exe
|
||||
sign templates/windows_32_debug.exe
|
||||
|
||||
mkdir -p mono/release-${GODOT_VERSION}
|
||||
rm -rf mono/release-${GODOT_VERSION}/*win*
|
||||
|
||||
mkdir -p mono/templates
|
||||
rm -rf mono/templates/*win*
|
||||
|
||||
mkdir -p Godot_v${GODOT_VERSION}_mono_win64
|
||||
cp out/windows/x64/tools-mono/godot.windows.opt.tools.64.mono.exe Godot_v${GODOT_VERSION}_mono_win64/Godot_v${GODOT_VERSION}_mono_win64.exe
|
||||
strip Godot_v${GODOT_VERSION}_mono_win64/Godot_v${GODOT_VERSION}_mono_win64.exe
|
||||
sign Godot_v${GODOT_VERSION}_mono_win64/Godot_v${GODOT_VERSION}_mono_win64.exe
|
||||
cp -rp out/windows/x64/tools-mono/GodotSharp Godot_v${GODOT_VERSION}_mono_win64
|
||||
cp -rp mono-glue/Api Godot_v${GODOT_VERSION}_mono_win64/GodotSharp/Api
|
||||
zip -r -q -9 Godot_v${GODOT_VERSION}_mono_win64.zip Godot_v${GODOT_VERSION}_mono_win64
|
||||
mv Godot_v${GODOT_VERSION}_mono_win64.zip mono/release-${GODOT_VERSION}
|
||||
rm -rf Godot_v${GODOT_VERSION}_mono_win64
|
||||
|
||||
cp -rp out/windows/x64/templates-mono/data.mono.windows.64.* mono/templates/
|
||||
cp out/windows/x64/templates-mono/godot.windows.opt.debug.64.mono.exe mono/templates/windows_64_debug.exe
|
||||
cp out/windows/x64/templates-mono/godot.windows.opt.64.mono.exe mono/templates/windows_64_release.exe
|
||||
|
||||
mkdir -p Godot_v${GODOT_VERSION}_mono_win32
|
||||
cp out/windows/x86/tools-mono/godot.windows.opt.tools.32.mono.exe Godot_v${GODOT_VERSION}_mono_win32/Godot_v${GODOT_VERSION}_mono_win32.exe
|
||||
strip Godot_v${GODOT_VERSION}_mono_win32/Godot_v${GODOT_VERSION}_mono_win32.exe
|
||||
sign Godot_v${GODOT_VERSION}_mono_win32/Godot_v${GODOT_VERSION}_mono_win32.exe
|
||||
cp -rp out/windows/x86/tools-mono/GodotSharp Godot_v${GODOT_VERSION}_mono_win32
|
||||
cp -rp mono-glue/Api Godot_v${GODOT_VERSION}_mono_win32/GodotSharp/Api
|
||||
zip -r -q -9 Godot_v${GODOT_VERSION}_mono_win32.zip Godot_v${GODOT_VERSION}_mono_win32
|
||||
mv Godot_v${GODOT_VERSION}_mono_win32.zip mono/release-${GODOT_VERSION}
|
||||
rm -rf Godot_v${GODOT_VERSION}_mono_win32
|
||||
|
||||
cp -rp out/windows/x86/templates-mono/data.mono.windows.32.* mono/templates/
|
||||
cp out/windows/x86/templates-mono/godot.windows.opt.debug.32.mono.exe mono/templates/windows_32_debug.exe
|
||||
cp out/windows/x86/templates-mono/godot.windows.opt.32.mono.exe mono/templates/windows_32_release.exe
|
||||
|
||||
strip mono/templates/windows*.exe
|
||||
|
||||
sign mono/templates/windows_64_debug.exe
|
||||
sign mono/templates/windows_64_release.exe
|
||||
sign mono/templates/windows_32_debug.exe
|
||||
sign mono/templates/windows_32_release.exe
|
||||
|
||||
# OSX
|
||||
|
||||
mkdir -p templates
|
||||
rm -f templates/osx*
|
||||
|
||||
rm -rf osx_template
|
||||
mkdir -p osx_template
|
||||
cd osx_template
|
||||
|
||||
cp -r ../git/misc/dist/osx_template.app .
|
||||
mkdir osx_template.app/Contents/MacOS
|
||||
|
||||
cp ../out/macosx/x64/templates/godot.osx.opt.64 osx_template.app/Contents/MacOS/godot_osx_release.64
|
||||
cp ../out/macosx/x64/templates/godot.osx.opt.debug.64 osx_template.app/Contents/MacOS/godot_osx_debug.64
|
||||
chmod +x osx_template.app/Contents/MacOS/godot_osx*
|
||||
zip -q -9 -r osx.zip osx_template.app
|
||||
cd ..
|
||||
|
||||
mv osx_template/osx.zip templates
|
||||
rm -rf osx_template
|
||||
|
||||
mkdir -p release-${GODOT_VERSION}
|
||||
rm -f release-${GODOT_VERSION}/*osx*
|
||||
|
||||
cp -r git/misc/dist/osx_tools.app Godot.app
|
||||
mkdir -p Godot.app/Contents/MacOS
|
||||
cp out/macosx/x64/tools/godot.osx.opt.tools.64 Godot.app/Contents/MacOS/Godot
|
||||
chmod +x Godot.app/Contents/MacOS/Godot
|
||||
zip -q -9 -r "release-${GODOT_VERSION}/Godot_v${GODOT_VERSION}_osx.64.zip" Godot.app
|
||||
rm -rf Godot.app
|
||||
|
||||
mkdir -p mono/templates
|
||||
rm -rf mono/templates/osx*
|
||||
|
||||
rm -rf osx_template
|
||||
mkdir -p osx_template
|
||||
cd osx_template
|
||||
|
||||
cp -r ../git/misc/dist/osx_template.app .
|
||||
mkdir osx_template.app/Contents/MacOS
|
||||
|
||||
cp ../out/macosx/x64/templates-mono/godot.osx.opt.64.mono osx_template.app/Contents/MacOS/godot_osx_release.64
|
||||
cp ../out/macosx/x64/templates-mono/godot.osx.opt.debug.64.mono osx_template.app/Contents/MacOS/godot_osx_debug.64
|
||||
cp -rp ../out/macosx/x64/templates-mono/data.mono.osx.64.* osx_template.app/Contents/MacOS/
|
||||
chmod +x osx_template.app/Contents/MacOS/godot_osx*
|
||||
zip -q -9 -r osx.zip osx_template.app
|
||||
cd ..
|
||||
|
||||
mv osx_template/osx.zip mono/templates
|
||||
rm -rf osx_template
|
||||
|
||||
mkdir -p mono/release-${GODOT_VERSION}
|
||||
rm -f mono/release-${GODOT_VERSION}/*osx*
|
||||
|
||||
cp -r git/misc/dist/osx_tools.app Godot_mono.app
|
||||
mkdir -p Godot_mono.app/Contents/MacOS
|
||||
cp out/macosx/x64/tools-mono/godot.osx.opt.tools.64.mono Godot_mono.app/Contents/MacOS/Godot
|
||||
mkdir -p Godot_mono.app/Contents/{Frameworks,Resources}
|
||||
mkdir -p Godot_mono.app/Contents/{Frameworks,Resources}/GodotSharp
|
||||
mkdir -p Godot_mono.app/Contents/{Frameworks,Resources}/GodotSharp/Mono
|
||||
cp -rp out/macosx/x64/tools-mono/GodotSharp/Mono/lib Godot_mono.app/Contents/Frameworks/GodotSharp/Mono
|
||||
cp -rp out/macosx/x64/tools-mono/GodotSharp/Tools Godot_mono.app/Contents/Frameworks/GodotSharp
|
||||
cp -rp mono-glue/Api Godot_mono.app/Contents/Frameworks/GodotSharp
|
||||
cp -rp out/macosx/x64/tools-mono/GodotSharp/Mono/etc Godot_mono.app/Contents/Resources/GodotSharp/Mono
|
||||
chmod +x Godot_mono.app/Contents/MacOS/Godot
|
||||
zip -q -9 -r "mono/release-${GODOT_VERSION}/Godot_v${GODOT_VERSION}_mono_osx.64.zip" Godot_mono.app
|
||||
rm -rf Godot_mono.app
|
||||
|
||||
# iOS
|
||||
|
||||
cp -r git/misc/dist/ios_xcode ios_xcode
|
||||
cp out/ios/libgodot.iphone.opt.fat ios_xcode/libgodot.iphone.release.fat.a
|
||||
cp out/ios/libgodot.iphone.opt.debug.fat ios_xcode/libgodot.iphone.debug.fat.a
|
||||
|
||||
chmod +x ios_xcode/libgodot.iphone.*
|
||||
cd ios_xcode
|
||||
zip -q -9 -r ../templates/iphone.zip *
|
||||
cd ..
|
||||
rm -rf ios_xcode
|
||||
|
||||
# Android
|
||||
cp out/android/*.apk templates
|
||||
|
||||
# Javascript
|
||||
cp out/javascript/godot.javascript.opt.zip templates/webassembly_release.zip
|
||||
cp out/javascript/godot.javascript.opt.debug.zip templates/webassembly_debug.zip
|
||||
|
||||
exit 0
|
||||
30
build-server/build.sh
Executable file
30
build-server/build.sh
Executable file
@@ -0,0 +1,30 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
export BUILD_NAME=official
|
||||
export SCONS="scons -j16 verbose=yes warnings=no progress=no"
|
||||
export OPTIONS="builtin_libpng=yes builtin_openssl=yes builtin_zlib=yes debug_symbols=no use_static_cpp=yes use_lto=yes"
|
||||
export MONO_OPTIONS="module_mono_enabled=yes mono_static=yes copy_mono_root=yes"
|
||||
export TERM=xterm
|
||||
export MONO32_PREFIX=/usr
|
||||
export MONO64_PREFIX=/usr
|
||||
export CC="gcc-8"
|
||||
export CXX="g++-8"
|
||||
|
||||
rm -rf godot
|
||||
mkdir godot
|
||||
cd godot
|
||||
tar xf /root/godot.tar.gz --strip-components=1
|
||||
|
||||
$SCONS platform=server CC=$CC CXX=$CXX $OPTIONS tools=no target=release_debug
|
||||
$SCONS platform=server CC=$CC CXX=$CXX $OPTIONS tools=no target=release
|
||||
mkdir -p /root/out/templates
|
||||
cp -rvp bin/* /root/out/templates
|
||||
rm -rf bin
|
||||
|
||||
$SCONS platform=server CC=$CC CXX=$CXX $OPTIONS tools=yes target=release_debug
|
||||
mkdir -p /root/out/tools
|
||||
cp -rvp bin/* /root/out/tools
|
||||
rm -rf bin
|
||||
|
||||
26
build-templates.sh
Executable file
26
build-templates.sh
Executable file
@@ -0,0 +1,26 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
if [ -z "$1" ] || [ -z "$2" ]; then
|
||||
echo "usage: $0 <version> <file version>"
|
||||
echo " like : $0 3.0.3.rc1 3.0.3-rc1"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
VERSION=$1
|
||||
FILE_VERSION=$2
|
||||
MONO_VERSION=$3
|
||||
|
||||
echo "$VERSION" > templates/version.txt
|
||||
|
||||
mkdir -p release-${FILE_VERSION}
|
||||
rm -f release-${FILE_VERSION}/*templates.tpz
|
||||
zip -q -9 -r -D release-${FILE_VERSION}/Godot_v${FILE_VERSION}_export_templates.tpz templates
|
||||
|
||||
mkdir -p mono/release-${FILE_VERSION}
|
||||
rm -f mono/release-${FILE_VERSION}/*templates.tpz
|
||||
cd mono
|
||||
echo "$VERSION".mono > templates/version.txt
|
||||
zip -q -9 -r -D release-${FILE_VERSION}/Godot_v${FILE_VERSION}_mono_export_templates.tpz templates
|
||||
cd ..
|
||||
3
build-uwp/build.bat
Executable file
3
build-uwp/build.bat
Executable file
@@ -0,0 +1,3 @@
|
||||
call z:\root\build\env-%1.bat
|
||||
|
||||
%SCONS% platform=uwp %OPTIONS% tools=no target=%2 LINK="\"C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\bin\HostX64\%1\link.exe\""
|
||||
26
build-uwp/build.sh
Executable file
26
build-uwp/build.sh
Executable file
@@ -0,0 +1,26 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
export ANGLE_SRC_PATH='c:\angle'
|
||||
export BUILD_NAME=official
|
||||
export SCONS="call scons -j4 verbose=yes warnings=no progress=no"
|
||||
export OPTIONS="builtin_libpng=yes builtin_openssl=yes builtin_zlib=yes debug_symbols=no"
|
||||
|
||||
rm -rf godot
|
||||
mkdir godot
|
||||
cd godot
|
||||
tar xf /root/godot.tar.gz --strip-components=1
|
||||
|
||||
for arch in x86 x64 arm; do
|
||||
for release in release release_debug; do
|
||||
wine cmd /c /root/build/build.bat $arch $release
|
||||
|
||||
sync
|
||||
wineserver -kw
|
||||
|
||||
mkdir -p /root/out/$arch
|
||||
mv bin/* /root/out/$arch
|
||||
done
|
||||
done
|
||||
|
||||
36
build-uwp/env-arm.bat
Executable file
36
build-uwp/env-arm.bat
Executable file
@@ -0,0 +1,36 @@
|
||||
set ALLUSERSPROFILE=C:\ProgramData
|
||||
set CommandPromptType=Native
|
||||
set CommonProgramFiles=C:\Program Files\Common Files
|
||||
set CommonProgramFiles(x86)=C:\Program Files (x86)\Common Files
|
||||
set CommonProgramW6432=C:\Program Files\Common Files
|
||||
set DevEnvDir=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\
|
||||
set ExtensionSdkDir=C:\Program Files (x86)\Microsoft SDKs\Windows Kits\10\ExtensionSDKs
|
||||
set Framework40Version=v4.0
|
||||
set FrameworkDir=C:\Windows\Microsoft.NET\Framework64\
|
||||
set FrameworkDir64=C:\Windows\Microsoft.NET\Framework64\
|
||||
set FrameworkVersion=v4.0.30319
|
||||
set FrameworkVersion64=v4.0.30319
|
||||
set VCIDEInstallDir=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\VC\
|
||||
set VCINSTALLDIR=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\
|
||||
set VCToolsInstallDir=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\
|
||||
set VCToolsRedistDir=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Redist\MSVC\14.16.27012\
|
||||
set VCToolsVersion=14.16.27023
|
||||
set VisualStudioVersion=15.0
|
||||
set VS150COMNTOOLS=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\Tools\
|
||||
set VSCMD_ARG_app_plat=UWP
|
||||
set Platform=arm
|
||||
set VSCMD_ARG_HOST_ARCH=x86
|
||||
set VSCMD_ARG_TGT_ARCH=arm
|
||||
set VSCMD_ARG_winsdk=10.0.16299.0
|
||||
set VSCMD_VER=15.0
|
||||
set VSINSTALLDIR=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\
|
||||
set Path=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\bin\HostX86\arm;C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\VC\VCPackages;C:\Program Files (x86)\Microsoft Visual Studio\2017\Build Tools\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer;C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\bin\Roslyn;C:\Program Files (x86)\Windows Kits\10\bin\10.0.16299.0\arm;C:\Program Files (x86)\Windows Kits\10\bin\arm;C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\\MSBuild\15.0\bin;C:\Windows\Microsoft.NET\Framework\ v4.0.30319;C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\;C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\Tools\;C:\Program Files\Python37\Scripts\;C:\Program Files\Python37\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\ProgramData\chocolatey\bin;C:\Program Files\OpenSSH-Win64;C:\Program Files\Git\cmd;C:\Windows\system32\config\systemprofile\AppData\Local\Microsoft\WindowsApps;C:\Users\user\AppData\Local\Microsoft\WindowsApps;
|
||||
set INCLUDE=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\include;C:\Program Files (x86)\Windows Kits\10\include\10.0.16299.0\ucrt;C:\Program Files (x86)\Windows Kits\10\include\10.0.16299.0\shared;C:\Program Files (x86)\Windows Kits\10\include\10.0.16299.0\um;C:\Program Files (x86)\Windows Kits\10\include\10.0.16299.0\winrt;C:\Program Files (x86)\Windows Kits\10\include\10.0.16299.0\cppwinrt
|
||||
set LIB=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\lib\arm\store\;C:\Program Files (x86)\Windows Kits\10\lib\10.0.16299.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\lib\10.0.16299.0\um\arm;
|
||||
set LIBPATH=C:\Program Files (x86)\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.VCLibs\14.0\References\CommonConfiguration\neutral;C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\lib\arm\store\references;C:\Program Files (x86)\Windows Kits\10\UnionMetadata\10.0.16299.0;C:\Program Files (x86)\Windows Kits\10\References\10.0.16299.0;C:\Windows\Microsoft.NET\Framework\v4.0.30319;
|
||||
set WindowsLibPath=C:\Program Files (x86)\Windows Kits\10\UnionMetadata\10.0.16299.0;C:\Program Files (x86)\Windows Kits\10\References\10.0.16299.0
|
||||
set WindowsSdkBinPath=C:\Program Files (x86)\Windows Kits\10\bin\
|
||||
set WindowsSdkDir=C:\Program Files (x86)\Windows Kits\10\
|
||||
set WindowsSDKLibVersion=10.0.16299.0\
|
||||
set WindowsSdkVerBinPath=C:\Program Files (x86)\Windows Kits\10\bin\10.0.16299.0\
|
||||
set WindowsSDKVersion=10.0.16299.0\
|
||||
35
build-uwp/env-x64.bat
Executable file
35
build-uwp/env-x64.bat
Executable file
@@ -0,0 +1,35 @@
|
||||
set ALLUSERSPROFILE=C:\ProgramData
|
||||
set CommandPromptType=Native
|
||||
set CommonProgramFiles=C:\Program Files\Common Files
|
||||
set CommonProgramFiles(x86)=C:\Program Files (x86)\Common Files
|
||||
set CommonProgramW6432=C:\Program Files\Common Files
|
||||
set DevEnvDir=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\
|
||||
set ExtensionSdkDir=C:\Program Files (x86)\Microsoft SDKs\Windows Kits\10\ExtensionSDKs
|
||||
set Framework40Version=v4.0
|
||||
set FrameworkDir=C:\Windows\Microsoft.NET\Framework64\
|
||||
set FrameworkDir64=C:\Windows\Microsoft.NET\Framework64\
|
||||
set FrameworkVersion=v4.0.30319
|
||||
set FrameworkVersion64=v4.0.30319
|
||||
set VCIDEInstallDir=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\VC\
|
||||
set VCINSTALLDIR=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\
|
||||
set VCToolsInstallDir=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\
|
||||
set VCToolsRedistDir=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Redist\MSVC\14.16.27012\
|
||||
set VCToolsVersion=14.16.27023
|
||||
set VisualStudioVersion=15.0
|
||||
set VS150COMNTOOLS=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\Tools\
|
||||
set VSCMD_ARG_app_plat=UWP
|
||||
set VSCMD_ARG_HOST_ARCH=x86
|
||||
set VSCMD_ARG_TGT_ARCH=x64
|
||||
set VSCMD_ARG_winsdk=10.0.16299.0
|
||||
set VSCMD_VER=15.0
|
||||
set VSINSTALLDIR=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\
|
||||
set Path=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\bin\HostX86\x64;C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\VC\VCPackages;C:\Program Files (x86)\Microsoft Visual Studio\2017\Build Tools\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer;C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\bin\Roslyn;C:\Program Files (x86)\Windows Kits\10\bin\10.0.16299.0\x64;C:\Program Files (x86)\Windows Kits\10\bin\x64;C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\\MSBuild\15.0\bin;C:\Windows\Microsoft.NET\Framework\ v4.0.30319;C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\;C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\Tools\;C:\Program Files\Python37\Scripts\;C:\Program Files\Python37\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\ProgramData\chocolatey\bin;C:\Program Files\OpenSSH-Win64;C:\Program Files\Git\cmd;C:\Windows\system32\config\systemprofile\AppData\Local\Microsoft\WindowsApps;C:\Users\user\AppData\Local\Microsoft\WindowsApps;
|
||||
set INCLUDE=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\include;C:\Program Files (x86)\Windows Kits\10\include\10.0.16299.0\ucrt;C:\Program Files (x86)\Windows Kits\10\include\10.0.16299.0\shared;C:\Program Files (x86)\Windows Kits\10\include\10.0.16299.0\um;C:\Program Files (x86)\Windows Kits\10\include\10.0.16299.0\winrt;C:\Program Files (x86)\Windows Kits\10\include\10.0.16299.0\cppwinrt
|
||||
set LIB=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\lib\x64\store\;C:\Program Files (x86)\Windows Kits\10\lib\10.0.16299.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\lib\10.0.16299.0\um\x64;
|
||||
set LIBPATH=C:\Program Files (x86)\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.VCLibs\14.0\References\CommonConfiguration\neutral;C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\lib\x64\store\references;C:\Program Files (x86)\Windows Kits\10\UnionMetadata\10.0.16299.0;C:\Program Files (x86)\Windows Kits\10\References\10.0.16299.0;C:\Windows\Microsoft.NET\Framework\v4.0.30319;
|
||||
set WindowsLibPath=C:\Program Files (x86)\Windows Kits\10\UnionMetadata\10.0.16299.0;C:\Program Files (x86)\Windows Kits\10\References\10.0.16299.0
|
||||
set WindowsSdkBinPath=C:\Program Files (x86)\Windows Kits\10\bin\
|
||||
set WindowsSdkDir=C:\Program Files (x86)\Windows Kits\10\
|
||||
set WindowsSDKLibVersion=10.0.16299.0\
|
||||
set WindowsSdkVerBinPath=C:\Program Files (x86)\Windows Kits\10\bin\10.0.16299.0\
|
||||
set WindowsSDKVersion=10.0.16299.0\
|
||||
36
build-uwp/env-x86.bat
Executable file
36
build-uwp/env-x86.bat
Executable file
@@ -0,0 +1,36 @@
|
||||
set ALLUSERSPROFILE=C:\ProgramData
|
||||
set CommandPromptType=Native
|
||||
set CommonProgramFiles=C:\Program Files\Common Files
|
||||
set CommonProgramFiles(x86)=C:\Program Files (x86)\Common Files
|
||||
set CommonProgramW6432=C:\Program Files\Common Files
|
||||
set DevEnvDir=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\
|
||||
set ExtensionSdkDir=C:\Program Files (x86)\Microsoft SDKs\Windows Kits\10\ExtensionSDKs
|
||||
set Framework40Version=v4.0
|
||||
set FrameworkDir=C:\Windows\Microsoft.NET\Framework64\
|
||||
set FrameworkDir64=C:\Windows\Microsoft.NET\Framework64\
|
||||
set FrameworkVersion=v4.0.30319
|
||||
set FrameworkVersion64=v4.0.30319
|
||||
set VCIDEInstallDir=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\VC\
|
||||
set VCINSTALLDIR=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\
|
||||
set VCToolsInstallDir=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\
|
||||
set VCToolsRedistDir=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Redist\MSVC\14.16.27012\
|
||||
set VCToolsVersion=14.16.27023
|
||||
set VisualStudioVersion=15.0
|
||||
set VS150COMNTOOLS=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\Tools\
|
||||
set VSCMD_ARG_app_plat=UWP
|
||||
set VSCMD_ARG_HOST_ARCH=x86
|
||||
set VSCMD_ARG_TGT_ARCH=x86
|
||||
set VSCMD_ARG_winsdk=10.0.16299.0
|
||||
set VSCMD_VER=15.0
|
||||
set VSINSTALLDIR=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\
|
||||
set Path=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\bin\HostX86\x86;C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\VC\VCPackages;C:\Program Files (x86)\Microsoft Visual Studio\2017\Build Tools\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer;C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\bin\Roslyn;C:\Program Files (x86)\Windows Kits\10\bin\10.0.16299.0\x86;C:\Program Files (x86)\Windows Kits\10\bin\x86;C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\\MSBuild\15.0\bin;C:\Windows\Microsoft.NET\Framework\ v4.0.30319;C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\;C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\Tools\;C:\Program Files\Python37\Scripts\;C:\Program Files\Python37\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\ProgramData\chocolatey\bin;C:\Program Files\OpenSSH-Win64;C:\Program Files\Git\cmd;C:\Windows\system32\config\systemprofile\AppData\Local\Microsoft\WindowsApps;C:\Users\user\AppData\Local\Microsoft\WindowsApps;
|
||||
set INCLUDE=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\include;C:\Program Files (x86)\Windows Kits\10\include\10.0.16299.0\ucrt;C:\Program Files (x86)\Windows Kits\10\include\10.0.16299.0\shared;C:\Program Files (x86)\Windows Kits\10\include\10.0.16299.0\um;C:\Program Files (x86)\Windows Kits\10\include\10.0.16299.0\winrt;C:\Program Files (x86)\Windows Kits\10\include\10.0.16299.0\cppwinrt
|
||||
set LIB=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\lib\x86\store\;C:\Program Files (x86)\Windows Kits\10\lib\10.0.16299.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\lib\10.0.16299.0\um\x86;
|
||||
set LIBPATH=C:\Program Files (x86)\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.VCLibs\14.0\References\CommonConfiguration\neutral;C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\lib\x86\store\references;C:\Program Files (x86)\Windows Kits\10\UnionMetadata\10.0.16299.0;C:\Program Files (x86)\Windows Kits\10\References\10.0.16299.0;C:\Windows\Microsoft.NET\Framework\v4.0.30319;
|
||||
set WindowsLibPath=C:\Program Files (x86)\Windows Kits\10\UnionMetadata\10.0.16299.0;C:\Program Files (x86)\Windows Kits\10\References\10.0.16299.0
|
||||
set WindowsSdkBinPath=C:\Program Files (x86)\Windows Kits\10\bin\
|
||||
set WindowsSdkDir=C:\Program Files (x86)\Windows Kits\10\
|
||||
set WindowsSDKLibVersion=10.0.16299.0\
|
||||
set WindowsSdkVerBinPath=C:\Program Files (x86)\Windows Kits\10\bin\10.0.16299.0\
|
||||
set WindowsSDKVersion=10.0.16299.0\
|
||||
|
||||
62
build-windows/build.sh
Executable file
62
build-windows/build.sh
Executable file
@@ -0,0 +1,62 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
export BUILD_NAME=official
|
||||
export SCONS="scons -j16 verbose=yes warnings=no progress=no"
|
||||
export OPTIONS="builtin_libpng=yes builtin_openssl=yes builtin_zlib=yes debug_symbols=no use_static_cpp=yes use_lto=yes"
|
||||
export OPTIONS_MONO="module_mono_enabled=yes mono_static=yes"
|
||||
export TERM=xterm
|
||||
export MONO32_PREFIX=/root/dependencies/mono-32
|
||||
export MONO64_PREFIX=/root/dependencies/mono-64
|
||||
|
||||
rm -rf godot
|
||||
mkdir godot
|
||||
cd godot
|
||||
tar xf /root/godot.tar.gz --strip-components=1
|
||||
|
||||
cp /root/mono-glue/*.cpp modules/mono/glue
|
||||
|
||||
$SCONS platform=windows bits=32 $OPTIONS tools=yes target=release_debug
|
||||
mkdir -p /root/out/x86/tools
|
||||
cp -rvp bin/* /root/out/x86/tools
|
||||
rm -rf bin
|
||||
|
||||
$SCONS platform=windows bits=32 $OPTIONS tools=no target=release_debug
|
||||
$SCONS platform=windows bits=32 $OPTIONS tools=no target=release
|
||||
mkdir -p /root/out/x86/templates
|
||||
cp -rvp bin/* /root/out/x86/templates
|
||||
rm -rf bin
|
||||
|
||||
$SCONS platform=windows bits=32 $OPTIONS $OPTIONS_MONO tools=yes target=release_debug copy_mono_root=yes
|
||||
mkdir -p /root/out/x86/tools-mono
|
||||
cp -rvp bin/* /root/out/x86/tools-mono
|
||||
rm -rf bin
|
||||
|
||||
$SCONS platform=windows bits=32 $OPTIONS $OPTIONS_MONO tools=no target=release_debug
|
||||
$SCONS platform=windows bits=32 $OPTIONS $OPTIONS_MONO tools=no target=release
|
||||
mkdir -p /root/out/x86/templates-mono
|
||||
cp -rvp bin/* /root/out/x86/templates-mono
|
||||
rm -rf bin
|
||||
|
||||
$SCONS platform=windows bits=64 $OPTIONS tools=yes target=release_debug
|
||||
mkdir -p /root/out/x64/tools
|
||||
cp -rvp bin/* /root/out/x64/tools
|
||||
rm -rf bin
|
||||
|
||||
$SCONS platform=windows bits=64 $OPTIONS tools=no target=release_debug
|
||||
$SCONS platform=windows bits=64 $OPTIONS tools=no target=release
|
||||
mkdir -p /root/out/x64/templates
|
||||
cp -rvp bin/* /root/out/x64/templates
|
||||
rm -rf bin
|
||||
|
||||
$SCONS platform=windows bits=64 $OPTIONS $OPTIONS_MONO tools=yes target=release_debug copy_mono_root=yes
|
||||
mkdir -p /root/out/x64/tools-mono
|
||||
cp -rvp bin/* /root/out/x64/tools-mono
|
||||
rm -rf bin
|
||||
|
||||
$SCONS platform=windows bits=64 $OPTIONS $OPTIONS_MONO tools=no target=release_debug
|
||||
$SCONS platform=windows bits=64 $OPTIONS $OPTIONS_MONO tools=no target=release
|
||||
mkdir -p /root/out/x64/templates-mono
|
||||
cp -rvp bin/* /root/out/x64/templates-mono
|
||||
rm -rf bin
|
||||
161
build.sh
Executable file
161
build.sh
Executable file
@@ -0,0 +1,161 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
OPTIND=1
|
||||
|
||||
registry="registry.prehensile-tales.com"
|
||||
username=""
|
||||
password=""
|
||||
godot_version=""
|
||||
template_version=""
|
||||
git_treeish="master"
|
||||
force_download=0
|
||||
skip_download=0
|
||||
skip_git_checkout=0
|
||||
|
||||
while getopts "h?r:u:p:v:t:g:fsc" opt; do
|
||||
case "$opt" in
|
||||
h|\?)
|
||||
echo "Usage: $0 [OPTIONS...]"
|
||||
echo
|
||||
echo " -r registry"
|
||||
echo " -u username"
|
||||
echo " -p password"
|
||||
echo " -v godot version (e.g: 3.1-alpha5) [mandatory]"
|
||||
echo " -t template version (e.g 3.1.alpha) [mandatory]"
|
||||
echo " -g git treeish (e.g: master)"
|
||||
echo " -f force redownload of all images"
|
||||
echo " -s skip downloading"
|
||||
echo " -c skip checkout"
|
||||
echo
|
||||
exit 1
|
||||
;;
|
||||
r) registry=$OPTARG
|
||||
;;
|
||||
u) username=$OPTARG
|
||||
;;
|
||||
p) password=$OPTARG
|
||||
;;
|
||||
v) godot_version=$OPTARG
|
||||
;;
|
||||
t) template_version=$OPTARG
|
||||
;;
|
||||
g) git_treeish=$OPTARG
|
||||
;;
|
||||
f) force_download=1
|
||||
;;
|
||||
s) skip_download=1
|
||||
;;
|
||||
c) skip_git_checkout=1
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
export podman=none
|
||||
if which podman > /dev/null; then
|
||||
export podman=podman
|
||||
elif which docker > /dev/null; then
|
||||
export podman=docker
|
||||
fi
|
||||
|
||||
if [ "${podman}" == "none" ]; then
|
||||
echo "Either podman or docker needs to be installed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ $UID != 0 ]; then
|
||||
echo "WARNING: Running as non-root may cause problems for the uwp build"
|
||||
fi
|
||||
|
||||
if [ -z "${godot_version}" ]; then
|
||||
echo "-v <version> is mandatory!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -z "${template_version}" ]; then
|
||||
echo "-t <version> is mandatory!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ ! -z "${username}" ] && [ ! -z "${password}" ]; then
|
||||
if ${podman} login ${registry} -u "${username}" -p "${password}"; then
|
||||
export logged_in=true
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ $skip_download == 0 ]; then
|
||||
echo "Fetching images"
|
||||
for image in mono-glue windows ubuntu-32 ubuntu-64 javascript; do
|
||||
if [ ${force_download} == 1 ] || ! ${podman} image exists godot/$image; then
|
||||
if ! ${podman} pull ${registry}/godot/${image}; then
|
||||
echo "ERROR: image $image does not exist and can't be downloaded"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
if [ ! -z "${logged_in}" ]; then
|
||||
echo "Fetching private images"
|
||||
|
||||
for image in uwp macosx ios android; do
|
||||
if [ ${force_download} == 1 ] || ! ${podman} image exists godot-private/$image; then
|
||||
if ! ${podman} pull ${registry}/godot-private/${image}; then
|
||||
echo "ERROR: image $image does not exist and can't be downloaded"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
done
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "${skip_git_checkout}" == 0 ]; then
|
||||
git clone https://github.com/godotengine/godot git || /bin/true
|
||||
pushd git
|
||||
git checkout -b ${git_treeish} origin/${git_treeish} || git checkout ${git_treeish}
|
||||
git reset --hard
|
||||
git clean -fd
|
||||
git clean -fx
|
||||
git pull origin ${git_treeish}
|
||||
|
||||
git archive --format=tar $git_treeish --prefix=godot-${godot_version}/ | gzip > ../godot.tar.gz
|
||||
popd
|
||||
fi
|
||||
|
||||
export basedir="$(pwd)"
|
||||
mkdir -p ${basedir}/out
|
||||
mkdir -p ${basedir}/out/logs
|
||||
|
||||
mkdir -p ${basedir}/mono-glue
|
||||
${podman} run -it --rm -v ${basedir}/godot.tar.gz:/root/godot.tar.gz -v ${basedir}/build-mono-glue:/root/build -v ${basedir}/mono-glue:/root/mono-glue -w /root/ ${registry}/godot/mono-glue:latest bash build/build.sh 2>&1 | tee ${basedir}/out/logs/mono-glue
|
||||
|
||||
mkdir -p ${basedir}/out/windows
|
||||
${podman} run -it --rm -v ${basedir}/godot.tar.gz:/root/godot.tar.gz -v ${basedir}/build-windows:/root/build -v ${basedir}/mono-glue:/root/mono-glue -v ${basedir}/out/windows:/root/out -w /root/ ${registry}/godot/windows:latest bash build/build.sh 2>&1 | tee ${basedir}/out/logs/windows
|
||||
|
||||
mkdir -p ${basedir}/out/linux/x86
|
||||
${podman} run -it --rm -v ${basedir}/godot.tar.gz:/root/godot.tar.gz -v ${basedir}/build-linux:/root/build -v ${basedir}/mono-glue:/root/mono-glue -v ${basedir}/out/linux/x86:/root/out -w /root/ ${registry}/godot/ubuntu-32:latest bash build/build.sh 2>&1 | tee ${basedir}/out/logs/linux32
|
||||
|
||||
mkdir -p ${basedir}/out/linux/x64
|
||||
${podman} run -it --rm -v ${basedir}/godot.tar.gz:/root/godot.tar.gz -v ${basedir}/build-linux:/root/build -v ${basedir}/mono-glue:/root/mono-glue -v ${basedir}/out/linux/x64:/root/out -w /root/ ${registry}/godot/ubuntu-64:latest bash build/build.sh 2>&1 | tee ${basedir}/out/logs/linux64
|
||||
|
||||
mkdir -p ${basedir}/out/server/x64
|
||||
${podman} run -it --rm -v ${basedir}/godot.tar.gz:/root/godot.tar.gz -v ${basedir}/build-server:/root/build -v ${basedir}/mono-glue:/root/mono-glue -v ${basedir}/out/server/x64:/root/out -w /root/ ${registry}/godot/ubuntu-64:latest bash build/build.sh 2>&1 | tee ${basedir}/out/logs/server
|
||||
|
||||
mkdir -p ${basedir}/out/javascript
|
||||
${podman} run -it --rm -v ${basedir}/godot.tar.gz:/root/godot.tar.gz -v ${basedir}/build-javascript:/root/build -v ${basedir}/mono-glue:/root/mono-glue -v ${basedir}/out/javascript:/root/out -w /root/ ${registry}/godot/javascript:latest bash build/build.sh 2>&1 | tee ${basedir}/out/logs/javascript
|
||||
|
||||
mkdir -p ${basedir}/out/macosx/x64
|
||||
${podman} run -it --rm -v ${basedir}/godot.tar.gz:/root/godot.tar.gz -v ${basedir}/build-macosx:/root/build -v ${basedir}/mono-glue:/root/mono-glue -v ${basedir}/out/macosx/x64:/root/out -w /root/ ${registry}/godot-private/macosx:latest bash build/build.sh 2>&1 | tee ${basedir}/out/logs/macosx
|
||||
|
||||
mkdir -p ${basedir}/out/uwp
|
||||
${podman} run --ulimit nofile=32768:32768 -it --rm -v ${basedir}/godot.tar.gz:/root/godot.tar.gz -v ${basedir}/build-uwp:/root/build -v ${basedir}/out/uwp:/root/out -w /root/ ${registry}/godot-private/uwp:latest bash build/build.sh 2>&1 | tee ${basedir}/out/logs/uwp
|
||||
|
||||
mkdir -p ${basedir}/out/ios
|
||||
${podman} run -it --rm -v ${basedir}/godot.tar.gz:/root/godot.tar.gz -v ${basedir}/build-ios:/root/build -v ${basedir}/out/ios:/root/out -w /root/ ${registry}/godot-private/ios:latest bash build/build.sh 2>&1 | tee ${basedir}/out/logs/ios
|
||||
|
||||
mkdir -p ${basedir}/out/android
|
||||
${podman} run -it --rm -v ${basedir}/godot.tar.gz:/root/godot.tar.gz -v ${basedir}/build-android:/root/build -v ${basedir}/out/android:/root/out -w /root/ ${registry}/godot-private/android:latest bash build/build.sh 2>&1 | tee ${basedir}/out/logs/android
|
||||
|
||||
if [ ! -z "$SUDO_UID" ]; then
|
||||
chown -R "${SUDO_UID}":"${SUDO_GID}" ${basedir}/out
|
||||
fi
|
||||
|
||||
BIN
osslsigncode
Executable file
BIN
osslsigncode
Executable file
Binary file not shown.
Reference in New Issue
Block a user