Merge pull request #8 from godotengine/mono-ubuntu-cil

Mono: Workaround segfault issue with Mono MSBuild on Ubuntu 14.04
This commit is contained in:
Rémi Verschelde
2020-06-22 08:47:26 +02:00
committed by GitHub
3 changed files with 18 additions and 2 deletions

View File

@@ -48,7 +48,11 @@ if [ "${MONO}" == "1" ]; then
cp -r /root/mono-glue/GodotSharp/GodotSharpEditor/Generated modules/mono/glue/GodotSharp/GodotSharpEditor/
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/lib/pkgconfig/
$SCONS platform=x11 CC=$CC CXX=$CXX $OPTIONS $OPTIONS_MONO tools=yes target=release_debug copy_mono_root=yes
# Workaround for MSBuild segfault on Ubuntu containers, we build the CIL on Fedora and copy here.
mkdir -p bin
cp -r /root/mono-glue/cil/GodotSharp bin/
$SCONS platform=x11 CC=$CC CXX=$CXX $OPTIONS $OPTIONS_MONO tools=yes target=release_debug copy_mono_root=yes build_cil=no
mkdir -p /root/out/tools-mono
cp -rvp bin/* /root/out/tools-mono
rm -rf bin

View File

@@ -26,6 +26,14 @@ if [ "${MONO}" == "1" ]; then
rm -rf /root/mono-glue/*
xvfb-run bin/godot.x11.opt.tools.64.mono --generate-mono-glue /root/mono-glue || /bin/true
# Build and copy CIL that we'll need for Ubuntu 14.04 Linux builds
# to workaround Mono MSBuild segfault in our containers.
xvfb-run bin/godot.x11.opt.tools.64.mono --generate-mono-glue modules/mono/glue || /bin/true
${SCONS} platform=x11 bits=64 ${OPTIONS} target=release_debug tools=yes module_mono_enabled=yes mono_glue=yes build_cil=yes
mkdir /root/mono-glue/cil
cp -r bin/GodotSharp /root/mono-glue/cil/
fi
echo "Mono glue generated successfully"

View File

@@ -43,7 +43,11 @@ if [ "${MONO}" == "1" ]; then
cp -r /root/mono-glue/GodotSharp/GodotSharp/Generated modules/mono/glue/GodotSharp/GodotSharp/
cp -r /root/mono-glue/GodotSharp/GodotSharpEditor/Generated modules/mono/glue/GodotSharp/GodotSharpEditor/
$SCONS platform=server CC=$CC CXX=$CXX $OPTIONS $OPTIONS_MONO tools=yes target=release_debug copy_mono_root=yes
# Workaround for MSBuild segfault on Ubuntu containers, we build the CIL on Fedora and copy here.
mkdir -p bin
cp -r /root/mono-glue/cil/GodotSharp bin/
$SCONS platform=server CC=$CC CXX=$CXX $OPTIONS $OPTIONS_MONO tools=yes target=release_debug copy_mono_root=yes build_cil=no
mkdir -p /root/out/tools-mono
cp -rvp bin/* /root/out/tools-mono
rm -rf bin