Mono: WebAssembly and Server builds, pack BCL

This commit is contained in:
Rémi Verschelde
2019-12-02 10:06:49 +01:00
parent 84f058dd24
commit 77091a9872
5 changed files with 69 additions and 15 deletions

View File

@@ -57,3 +57,6 @@ mkdir -p /root/out/templates-mono
cp bin/android_source.zip /root/out/templates-mono
cp bin/android_debug.apk /root/out/templates-mono/android_debug.apk
cp bin/android_release.apk /root/out/templates-mono/android_release.apk
mkdir /root/out/templates-mono/bcl
cp -r /root/mono-installs/android-bcl/monodroid /root/out/templates-mono/bcl/

View File

@@ -5,7 +5,7 @@ set -e
export BUILD_NAME=official
export SCONS="scons -j${NUM_CORES} 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 OPTIONS_MONO="module_mono_enabled=yes mono_static=yes mono_prefix=/root/mono-installs/wasm-runtime-release"
export TERM=xterm
source /root/emsdk/emsdk_env.sh
@@ -15,7 +15,22 @@ mkdir godot
cd godot
tar xf /root/godot.tar.gz --strip-components=1
cp /root/mono-glue/*.cpp modules/mono/glue/
cp -r /root/mono-glue/Managed/Generated modules/mono/glue/Managed/
$SCONS platform=javascript ${OPTIONS} target=release_debug tools=no
$SCONS platform=javascript ${OPTIONS} target=release tools=no
cp -rvp bin/* /root/out/
mkdir -p /root/out/templates
cp -rvp bin/*.zip /root/out/templates
rm -f bin/*.zip
$SCONS platform=javascript ${OPTIONS} ${OPTIONS_MONO} target=release_debug tools=no
$SCONS platform=javascript ${OPTIONS} ${OPTIONS_MONO} target=release tools=no
mkdir -p /root/out/templates-mono
cp -rvp bin/*.zip /root/out/templates-mono
rm -f bin/*.zip
mkdir -p /root/out/templates-mono/bcl
cp -r /root/mono-installs/wasm-bcl/wasm /root/out/templates-mono/bcl/

View File

@@ -255,10 +255,32 @@ zip -q -9 Godot_v${GODOT_VERSION}_linux_headless.64.zip Godot_v${GODOT_VERSION}_
mv Godot_v${GODOT_VERSION}_linux_headless.64.zip release-${GODOT_VERSION}
rm Godot_v${GODOT_VERSION}_linux_headless.64
mkdir -p Godot_v${GODOT_VERSION}_mono_linux_server_64
cp out/server/x64/templates/godot_server.x11.opt.64.mono Godot_v${GODOT_VERSION}_mono_linux_server_64/Godot_v${GODOT_VERSION}_mono_linux_server.64
cp -rp out/server/x64/templates/data.mono.server.64.release Godot_v${GODOT_VERSION}_mono_linux_server_64/data_Godot_v${GODOT_VERSION}_mono_linux_server
zip -r -q -9 Godot_v${GODOT_VERSION}_mono_linux_server_64.zip Godot_v${GODOT_VERSION}_mono_linux_server_64
mv Godot_v${GODOT_VERSION}_mono_linux_server_64.zip mono/release-${GODOT_VERSION}
rm -rf Godot_v${GODOT_VERSION}_mono_linux_server_64
mkdir -p Godot_v${GODOT_VERSION}_mono_linux_headless_64
cp out/server/x64/tools/godot_server.x11.opt.tools.64.mono Godot_v${GODOT_VERSION}_mono_linux_headless_64/Godot_v${GODOT_VERSION}_mono_linux_headless.64
cp -rp out/server/x64/tools/GodotSharp Godot_v${GODOT_VERSION}_mono_linux_headless_64
zip -r -q -9 Godot_v${GODOT_VERSION}_mono_linux_headless_64.zip Godot_v${GODOT_VERSION}_mono_linux_headless_64
mv Godot_v${GODOT_VERSION}_mono_linux_headless_64.zip mono/release-${GODOT_VERSION}
rm -rf Godot_v${GODOT_VERSION}_mono_linux_headless_64
# Javascript
cp out/javascript/godot.javascript.opt.zip templates/webassembly_release.zip
cp out/javascript/godot.javascript.opt.debug.zip templates/webassembly_debug.zip
cp out/javascript/templates/godot.javascript.opt.zip templates/webassembly_release.zip
cp out/javascript/templates/godot.javascript.opt.debug.zip templates/webassembly_debug.zip
mkdir -p mono/templates
cp out/javascript/templates-mono/godot.javascript.opt.mono.zip mono/templates/webassembly_release.zip
cp out/javascript/templates-mono/godot.javascript.opt.debug.mono.zip mono/templates/webassembly_debug.zip
mkdir -p mono/templates/bcl
cp -r out/javascript/templates-mono/bcl/wasm mono/templates/bcl/
# Android
@@ -268,6 +290,9 @@ cp out/android/templates/android_source.zip templates
cp out/android/templates-mono/*.apk mono/templates
cp out/android/templates-mono/android_source.zip mono/templates
mkdir -p mono/templates/bcl
cp -r out/android/templates-mono/bcl/monodroid mono/templates/bcl/
# iOS
cp -r git/misc/dist/ios_xcode ios_xcode

View File

@@ -5,10 +5,8 @@ set -e
export BUILD_NAME=official
export SCONS="scons -j${NUM_CORES} 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 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"
@@ -17,14 +15,27 @@ 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
cp /root/mono-glue/*.cpp modules/mono/glue/
cp -r /root/mono-glue/Managed/Generated modules/mono/glue/Managed/
$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
#$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 $OPTIONS_MONO tools=yes target=release_debug copy_mono_root=yes
mkdir -p /root/out/tools
cp -rvp bin/* /root/out/tools
rm -rf bin
#$SCONS platform=server CC=$CC CXX=$CXX $OPTIONS $OPTIONS_MONO tools=no target=release_debug
$SCONS platform=server CC=$CC CXX=$CXX $OPTIONS $OPTIONS_MONO tools=no target=release
mkdir -p /root/out/templates
cp -rvp bin/* /root/out/templates
rm -rf bin

View File

@@ -141,9 +141,6 @@ ${podman_run} -v ${basedir}/build-linux:/root/build -v ${basedir}/out/linux/x64:
mkdir -p ${basedir}/out/linux/x86
${podman_run} -v ${basedir}/build-linux:/root/build -v ${basedir}/out/linux/x86:/root/out ${registry}/godot/ubuntu-32:latest bash build/build.sh 2>&1 | tee ${basedir}/out/logs/linux32
mkdir -p ${basedir}/out/server/x64
${podman_run} -v ${basedir}/build-server:/root/build -v ${basedir}/out/server/x64:/root/out ${registry}/godot/ubuntu-64:latest bash build/build.sh 2>&1 | tee ${basedir}/out/logs/server
mkdir -p ${basedir}/out/javascript
${podman_run} -v ${basedir}/build-javascript:/root/build -v ${basedir}/out/javascript:/root/out ${registry}/godot/javascript:latest bash build/build.sh 2>&1 | tee ${basedir}/out/logs/javascript
@@ -156,6 +153,9 @@ ${podman_run} -v ${basedir}/build-android:/root/build -v ${basedir}/out/android:
mkdir -p ${basedir}/out/ios
${podman_run} -v ${basedir}/build-ios:/root/build -v ${basedir}/out/ios:/root/out ${registry}/godot-private/ios:latest bash build/build.sh 2>&1 | tee ${basedir}/out/logs/ios
mkdir -p ${basedir}/out/server/x64
${podman_run} -v ${basedir}/build-server:/root/build -v ${basedir}/out/server/x64:/root/out ${registry}/godot/ubuntu-64:latest bash build/build.sh 2>&1 | tee ${basedir}/out/logs/server
mkdir -p ${basedir}/out/uwp
${podman_run} --ulimit nofile=32768:32768 -v ${basedir}/build-uwp:/root/build -v ${basedir}/out/uwp:/root/out ${registry}/godot-private/uwp:latest bash build/build.sh 2>&1 | tee ${basedir}/out/logs/uwp