Skip to content

Commit 6463e8b

Browse files
committed
Port scripts to Godot 4.0.dev, remove server build
The `server` platform has now been replaced by the "headless" `DisplayServer` which is registered on all desktop platforms. Disable JavaScript and UWP builds which are not currently supported in 4.0.
1 parent 8405945 commit 6463e8b

File tree

5 files changed

+104
-195
lines changed

5 files changed

+104
-195
lines changed

build-linux/build.sh

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -16,33 +16,36 @@ mkdir godot
1616
cd godot
1717
tar xf /root/godot.tar.gz --strip-components=1
1818

19+
# pkg-config wrongly points to lib instead of lib64 for arch-dependent header.
20+
sed -i ${GODOT_SDK_LINUX_X86_64}/x86_64-godot-linux-gnu/sysroot/usr/lib/pkgconfig/dbus-1.pc -e "s@/lib@/lib64@g"
21+
1922
# Classical
2023

2124
if [ "${CLASSICAL}" == "1" ]; then
2225
echo "Starting classical build for Linux..."
2326

2427
export PATH="${GODOT_SDK_LINUX_X86_64}/bin:${BASE_PATH}"
2528

26-
$SCONS platform=x11 $OPTIONS tools=yes target=release_debug
29+
$SCONS platform=linuxbsd $OPTIONS tools=yes target=release_debug
2730
mkdir -p /root/out/x64/tools
2831
cp -rvp bin/* /root/out/x64/tools
2932
rm -rf bin
3033

31-
$SCONS platform=x11 $OPTIONS tools=no target=release_debug
32-
$SCONS platform=x11 $OPTIONS tools=no target=release
34+
$SCONS platform=linuxbsd $OPTIONS tools=no target=release_debug
35+
$SCONS platform=linuxbsd $OPTIONS tools=no target=release
3336
mkdir -p /root/out/x64/templates
3437
cp -rvp bin/* /root/out/x64/templates
3538
rm -rf bin
3639

3740
export PATH="${GODOT_SDK_LINUX_X86}/bin:${BASE_PATH}"
3841

39-
$SCONS platform=x11 $OPTIONS tools=yes target=release_debug bits=32
42+
$SCONS platform=linuxbsd $OPTIONS tools=yes target=release_debug bits=32
4043
mkdir -p /root/out/x86/tools
4144
cp -rvp bin/* /root/out/x86/tools
4245
rm -rf bin
4346

44-
$SCONS platform=x11 $OPTIONS tools=no target=release_debug bits=32
45-
$SCONS platform=x11 $OPTIONS tools=no target=release bits=32
47+
$SCONS platform=linuxbsd $OPTIONS tools=no target=release_debug bits=32
48+
$SCONS platform=linuxbsd $OPTIONS tools=no target=release bits=32
4649
mkdir -p /root/out/x86/templates
4750
cp -rvp bin/* /root/out/x86/templates
4851
rm -rf bin
@@ -60,27 +63,27 @@ if [ "${MONO}" == "1" ]; then
6063
export PATH="${GODOT_SDK_LINUX_X86_64}/bin:${BASE_PATH}"
6164
export OPTIONS_MONO_PREFIX="${OPTIONS} ${OPTIONS_MONO} mono_prefix=${MONO_PREFIX_X86_64}"
6265

63-
$SCONS platform=x11 $OPTIONS_MONO_PREFIX tools=yes target=release_debug copy_mono_root=yes
66+
$SCONS platform=linuxbsd $OPTIONS $OPTIONS_MONO tools=yes target=release_debug copy_mono_root=yes
6467
mkdir -p /root/out/x64/tools-mono
6568
cp -rvp bin/* /root/out/x64/tools-mono
6669
rm -rf bin
6770

68-
$SCONS platform=x11 $OPTIONS_MONO_PREFIX tools=no target=release_debug
69-
$SCONS platform=x11 $OPTIONS_MONO_PREFIX tools=no target=release
71+
$SCONS platform=linuxbsd $OPTIONS_MONO_PREFIX tools=no target=release_debug
72+
$SCONS platform=linuxbsd $OPTIONS_MONO_PREFIX tools=no target=release
7073
mkdir -p /root/out/x64/templates-mono
7174
cp -rvp bin/* /root/out/x64/templates-mono
7275
rm -rf bin
7376

7477
export PATH="${GODOT_SDK_LINUX_X86}/bin:${BASE_PATH}"
7578
export OPTIONS_MONO_PREFIX="${OPTIONS} ${OPTIONS_MONO} mono_prefix=${MONO_PREFIX_X86}"
7679

77-
$SCONS platform=x11 $OPTIONS_MONO_PREFIX tools=yes target=release_debug copy_mono_root=yes bits=32
80+
$SCONS platform=linuxbsd $OPTIONS_MONO_PREFIX tools=yes target=release_debug copy_mono_root=yes bits=32
7881
mkdir -p /root/out/x86/tools-mono
7982
cp -rvp bin/* /root/out/x86/tools-mono
8083
rm -rf bin
8184

82-
$SCONS platform=x11 $OPTIONS_MONO_PREFIX tools=no target=release_debug bits=32
83-
$SCONS platform=x11 $OPTIONS_MONO_PREFIX tools=no target=release bits=32
85+
$SCONS platform=linuxbsd $OPTIONS_MONO_PREFIX tools=no target=release_debug bits=32
86+
$SCONS platform=linuxbsd $OPTIONS_MONO_PREFIX tools=no target=release bits=32
8487
mkdir -p /root/out/x86/templates-mono
8588
cp -rvp bin/* /root/out/x86/templates-mono
8689
rm -rf bin

build-mono-glue/build.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,10 @@ if [ "${MONO}" == "1" ]; then
2222
mono --version
2323
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/lib/pkgconfig/
2424

25-
${SCONS} platform=x11 bits=64 ${OPTIONS} target=release_debug tools=yes module_mono_enabled=yes mono_glue=no
25+
${SCONS} platform=linuxbsd bits=64 ${OPTIONS} target=release_debug tools=yes module_mono_enabled=yes mono_glue=no
2626

2727
rm -rf /root/mono-glue/*
28-
xvfb-run bin/godot.x11.opt.tools.64.mono --audio-driver Dummy --generate-mono-glue /root/mono-glue || /bin/true
28+
bin/godot.linuxbsd.opt.tools.64.mono --display-driver headless --audio-driver Dummy --generate-mono-glue /root/mono-glue || /bin/true
2929
fi
3030

3131
echo "Mono glue generated successfully"

build-release.sh

Lines changed: 83 additions & 120 deletions
Original file line numberDiff line numberDiff line change
@@ -169,24 +169,24 @@ if [ "${build_classical}" == "1" ]; then
169169
## Linux (Classical) ##
170170

171171
# Editor
172-
binname="${godot_basename}_x11.64"
173-
cp out/linux/x64/tools/godot.x11.opt.tools.64 ${binname}
172+
binname="${godot_basename}_linux.64"
173+
cp out/linux/x64/tools/godot.linuxbsd.opt.tools.64 ${binname}
174174
strip ${binname}
175175
zip -q -9 "${reldir}/${binname}.zip" ${binname}
176176
rm ${binname}
177177

178-
binname="${godot_basename}_x11.32"
179-
cp out/linux/x86/tools/godot.x11.opt.tools.32 ${binname}
178+
binname="${godot_basename}_linux.32"
179+
cp out/linux/x86/tools/godot.linuxbsd.opt.tools.32 ${binname}
180180
strip ${binname}
181181
zip -q -9 "${reldir}/${binname}.zip" ${binname}
182182
rm ${binname}
183183

184184
# Templates
185-
cp out/linux/x64/templates/godot.x11.opt.64 ${templatesdir}/linux_x11_64_release
186-
cp out/linux/x64/templates/godot.x11.opt.debug.64 ${templatesdir}/linux_x11_64_debug
187-
cp out/linux/x86/templates/godot.x11.opt.32 ${templatesdir}/linux_x11_32_release
188-
cp out/linux/x86/templates/godot.x11.opt.debug.32 ${templatesdir}/linux_x11_32_debug
189-
strip ${templatesdir}/linux_x11_*
185+
cp out/linux/x64/templates/godot.linuxbsd.opt.64 ${templatesdir}/linux_x11_64_release
186+
cp out/linux/x64/templates/godot.linuxbsd.opt.debug.64 ${templatesdir}/linux_x11_64_debug
187+
cp out/linux/x86/templates/godot.linuxbsd.opt.32 ${templatesdir}/linux_x11_32_release
188+
cp out/linux/x86/templates/godot.linuxbsd.opt.debug.32 ${templatesdir}/linux_x11_32_debug
189+
strip ${templatesdir}/linux_x11*
190190

191191
## Windows (Classical) ##
192192

@@ -245,39 +245,23 @@ if [ "${build_classical}" == "1" ]; then
245245
rm -rf osx_template.app
246246
sign_macos_template ${templatesdir} 0
247247

248-
## Server (Classical) ##
249-
250-
# Headless (editor)
251-
binname="${godot_basename}_linux_headless.64"
252-
cp out/server/x64/tools/godot_server.x11.opt.tools.64 ${binname}
253-
strip ${binname}
254-
zip -q -9 "${reldir}/${binname}.zip" ${binname}
255-
rm ${binname}
256-
257-
# Server (template)
258-
binname="${godot_basename}_linux_server.64"
259-
cp out/server/x64/templates/godot_server.x11.opt.64 ${binname}
260-
strip ${binname}
261-
zip -q -9 "${reldir}/${binname}.zip" ${binname}
262-
rm ${binname}
263-
264-
## Javascript (Classical) ##
265-
266-
# Editor
267-
unzip out/javascript/tools/godot.javascript.opt.tools.threads.zip -d ${webdir}/
268-
brotli --keep --force --quality=11 ${webdir}/*
269-
binname="${godot_basename}_web_editor.zip"
270-
cp out/javascript/tools/godot.javascript.opt.tools.threads.zip ${reldir}/${binname}
271-
272-
# Templates
273-
cp out/javascript/templates/godot.javascript.opt.zip ${templatesdir}/webassembly_release.zip
274-
cp out/javascript/templates/godot.javascript.opt.debug.zip ${templatesdir}/webassembly_debug.zip
275-
276-
cp out/javascript/templates/godot.javascript.opt.threads.zip ${templatesdir}/webassembly_threads_release.zip
277-
cp out/javascript/templates/godot.javascript.opt.debug.threads.zip ${templatesdir}/webassembly_threads_debug.zip
278-
279-
cp out/javascript/templates/godot.javascript.opt.gdnative.zip ${templatesdir}/webassembly_gdnative_release.zip
280-
cp out/javascript/templates/godot.javascript.opt.debug.gdnative.zip ${templatesdir}/webassembly_gdnative_debug.zip
248+
# ## Javascript (Classical) ##
249+
#
250+
# # Editor
251+
# unzip out/javascript/tools/godot.javascript.opt.tools.threads.zip -d ${webdir}/
252+
# brotli --keep --force --quality=11 ${webdir}/*
253+
# binname="${godot_basename}_web_editor.zip"
254+
# cp out/javascript/tools/godot.javascript.opt.tools.threads.zip ${reldir}/${binname}
255+
#
256+
# # Templates
257+
# cp out/javascript/templates/godot.javascript.opt.zip ${templatesdir}/webassembly_release.zip
258+
# cp out/javascript/templates/godot.javascript.opt.debug.zip ${templatesdir}/webassembly_debug.zip
259+
#
260+
# cp out/javascript/templates/godot.javascript.opt.threads.zip ${templatesdir}/webassembly_threads_release.zip
261+
# cp out/javascript/templates/godot.javascript.opt.debug.threads.zip ${templatesdir}/webassembly_threads_debug.zip
262+
#
263+
# cp out/javascript/templates/godot.javascript.opt.gdnative.zip ${templatesdir}/webassembly_gdnative_release.zip
264+
# cp out/javascript/templates/godot.javascript.opt.debug.gdnative.zip ${templatesdir}/webassembly_gdnative_debug.zip
281265

282266
## Android (Classical) ##
283267

@@ -305,42 +289,42 @@ if [ "${build_classical}" == "1" ]; then
305289
cd ..
306290
rm -rf ios_xcode
307291

308-
## UWP (Classical) ##
309-
310-
if [ ! -d "deps/angle" ]; then
311-
echo "Downloading ANGLE binaries from https://github.com/GodotBuilder/godot-builds/releases/tag/_tools"
312-
mkdir -p deps && cd deps
313-
curl -LO https://github.com/GodotBuilder/godot-builds/releases/download/_tools/angle.7z
314-
7z x angle.7z && rm -f angle.7z
315-
cd ..
316-
fi
317-
318-
rm -rf uwp_template_*
319-
for arch in ARM Win32 x64; do
320-
cp -r git/misc/dist/uwp_template uwp_template_${arch}
321-
cp deps/angle/winrt/10/src/Release_${arch}/libEGL.dll \
322-
deps/angle/winrt/10/src/Release_${arch}/libGLESv2.dll \
323-
uwp_template_${arch}/
324-
cp -r uwp_template_${arch} uwp_template_${arch}_debug
325-
done
326-
327-
cp out/uwp/arm/godot.uwp.opt.32.arm.exe uwp_template_ARM/godot.uwp.exe
328-
cp out/uwp/arm/godot.uwp.opt.debug.32.arm.exe uwp_template_ARM_debug/godot.uwp.exe
329-
cd uwp_template_ARM && zip -q -9 -r "${templatesdir}/uwp_arm_release.zip" * && cd ..
330-
cd uwp_template_ARM_debug && zip -q -9 -r "${templatesdir}/uwp_arm_debug.zip" * && cd ..
331-
rm -rf uwp_template_ARM*
332-
333-
cp out/uwp/x86/godot.uwp.opt.32.x86.exe uwp_template_Win32/godot.uwp.exe
334-
cp out/uwp/x86/godot.uwp.opt.debug.32.x86.exe uwp_template_Win32_debug/godot.uwp.exe
335-
cd uwp_template_Win32 && zip -q -9 -r "${templatesdir}/uwp_x86_release.zip" * && cd ..
336-
cd uwp_template_Win32_debug && zip -q -9 -r "${templatesdir}/uwp_x86_debug.zip" * && cd ..
337-
rm -rf uwp_template_Win32*
338-
339-
cp out/uwp/x64/godot.uwp.opt.64.x64.exe uwp_template_x64/godot.uwp.exe
340-
cp out/uwp/x64/godot.uwp.opt.debug.64.x64.exe uwp_template_x64_debug/godot.uwp.exe
341-
cd uwp_template_x64 && zip -q -9 -r "${templatesdir}/uwp_x64_release.zip" * && cd ..
342-
cd uwp_template_x64_debug && zip -q -9 -r "${templatesdir}/uwp_x64_debug.zip" * && cd ..
343-
rm -rf uwp_template_x64*
292+
# ## UWP (Classical) ##
293+
#
294+
# if [ ! -d "deps/angle" ]; then
295+
# echo "Downloading ANGLE binaries from https://github.com/GodotBuilder/godot-builds/releases/tag/_tools"
296+
# mkdir -p deps && cd deps
297+
# curl -LO https://github.com/GodotBuilder/godot-builds/releases/download/_tools/angle.7z
298+
# 7z x angle.7z && rm -f angle.7z
299+
# cd ..
300+
# fi
301+
#
302+
# rm -rf uwp_template_*
303+
# for arch in ARM Win32 x64; do
304+
# cp -r git/misc/dist/uwp_template uwp_template_${arch}
305+
# cp deps/angle/winrt/10/src/Release_${arch}/libEGL.dll \
306+
# deps/angle/winrt/10/src/Release_${arch}/libGLESv2.dll \
307+
# uwp_template_${arch}/
308+
# cp -r uwp_template_${arch} uwp_template_${arch}_debug
309+
# done
310+
#
311+
# cp out/uwp/arm/godot.uwp.opt.32.arm.exe uwp_template_ARM/godot.uwp.exe
312+
# cp out/uwp/arm/godot.uwp.opt.debug.32.arm.exe uwp_template_ARM_debug/godot.uwp.exe
313+
# cd uwp_template_ARM && zip -q -9 -r "${templatesdir}/uwp_arm_release.zip" * && cd ..
314+
# cd uwp_template_ARM_debug && zip -q -9 -r "${templatesdir}/uwp_arm_debug.zip" * && cd ..
315+
# rm -rf uwp_template_ARM*
316+
#
317+
# cp out/uwp/x86/godot.uwp.opt.32.x86.exe uwp_template_Win32/godot.uwp.exe
318+
# cp out/uwp/x86/godot.uwp.opt.debug.32.x86.exe uwp_template_Win32_debug/godot.uwp.exe
319+
# cd uwp_template_Win32 && zip -q -9 -r "${templatesdir}/uwp_x86_release.zip" * && cd ..
320+
# cd uwp_template_Win32_debug && zip -q -9 -r "${templatesdir}/uwp_x86_debug.zip" * && cd ..
321+
# rm -rf uwp_template_Win32*
322+
#
323+
# cp out/uwp/x64/godot.uwp.opt.64.x64.exe uwp_template_x64/godot.uwp.exe
324+
# cp out/uwp/x64/godot.uwp.opt.debug.64.x64.exe uwp_template_x64_debug/godot.uwp.exe
325+
# cd uwp_template_x64 && zip -q -9 -r "${templatesdir}/uwp_x64_release.zip" * && cd ..
326+
# cd uwp_template_x64_debug && zip -q -9 -r "${templatesdir}/uwp_x64_debug.zip" * && cd ..
327+
# rm -rf uwp_template_x64*
344328

345329
## Templates TPZ (Classical) ##
346330

@@ -366,31 +350,31 @@ if [ "${build_mono}" == "1" ]; then
366350
## Linux (Mono) ##
367351

368352
# Editor
369-
binbasename="${godot_basename}_mono_x11"
353+
binbasename="${godot_basename}_mono_linux"
370354
mkdir -p ${binbasename}_64
371-
cp out/linux/x64/tools-mono/godot.x11.opt.tools.64.mono ${binbasename}_64/${binbasename}.64
355+
cp out/linux/x64/tools-mono/godot.linuxbsd.opt.tools.64.mono ${binbasename}_64/${binbasename}.64
372356
strip ${binbasename}_64/${binbasename}.64
373357
cp -rp out/linux/x64/tools-mono/GodotSharp ${binbasename}_64/
374358
cp -rp out/aot-compilers ${binbasename}_64/GodotSharp/Tools/
375359
zip -r -q -9 "${reldir_mono}/${binbasename}_64.zip" ${binbasename}_64
376360
rm -rf ${binbasename}_64
377361

378-
binbasename="${godot_basename}_mono_x11"
362+
binbasename="${godot_basename}_mono_linux"
379363
mkdir -p ${binbasename}_32
380-
cp out/linux/x86/tools-mono/godot.x11.opt.tools.32.mono ${binbasename}_32/${binbasename}.32
364+
cp out/linux/x86/tools-mono/godot.linuxbsd.opt.tools.32.mono ${binbasename}_32/${binbasename}.32
381365
strip ${binbasename}_32/${binbasename}.32
382366
cp -rp out/linux/x86/tools-mono/GodotSharp/ ${binbasename}_32/
383367
cp -rp out/aot-compilers ${binbasename}_32/GodotSharp/Tools/
384368
zip -r -q -9 "${reldir_mono}/${binbasename}_32.zip" ${binbasename}_32
385369
rm -rf ${binbasename}_32
386370

387371
# Templates
388-
cp -rp out/linux/x64/templates-mono/data.mono.x11.64.* ${templatesdir_mono}/
389-
cp out/linux/x64/templates-mono/godot.x11.opt.debug.64.mono ${templatesdir_mono}/linux_x11_64_debug
390-
cp out/linux/x64/templates-mono/godot.x11.opt.64.mono ${templatesdir_mono}/linux_x11_64_release
391-
cp -rp out/linux/x86/templates-mono/data.mono.x11.32.* ${templatesdir_mono}/
392-
cp out/linux/x86/templates-mono/godot.x11.opt.debug.32.mono ${templatesdir_mono}/linux_x11_32_debug
393-
cp out/linux/x86/templates-mono/godot.x11.opt.32.mono ${templatesdir_mono}/linux_x11_32_release
372+
cp -rp out/linux/x64/templates-mono/data.mono.linuxbsd.64.* ${templatesdir_mono}/
373+
cp out/linux/x64/templates-mono/godot.linuxbsd.opt.debug.64.mono ${templatesdir_mono}/linux_x11_64_debug
374+
cp out/linux/x64/templates-mono/godot.linuxbsd.opt.64.mono ${templatesdir_mono}/linux_x11_64_release
375+
cp -rp out/linux/x86/templates-mono/data.mono.linuxbsd.32.* ${templatesdir_mono}/
376+
cp out/linux/x86/templates-mono/godot.linuxbsd.opt.debug.32.mono ${templatesdir_mono}/linux_x11_32_debug
377+
cp out/linux/x86/templates-mono/godot.linuxbsd.opt.32.mono ${templatesdir_mono}/linux_x11_32_release
394378
strip ${templatesdir_mono}/linux_x11*
395379

396380
mkdir -p ${templatesdir_mono}/bcl
@@ -468,35 +452,14 @@ if [ "${build_mono}" == "1" ]; then
468452
rm -rf osx_template.app
469453
sign_macos_template ${templatesdir_mono} 1
470454

471-
## Server (Mono) ##
472-
473-
# Headless (editor)
474-
binbasename="${godot_basename}_mono_linux_headless"
475-
mkdir -p ${binbasename}_64
476-
cp out/server/x64/tools-mono/godot_server.x11.opt.tools.64.mono ${binbasename}_64/${binbasename}.64
477-
strip ${binbasename}_64/${binbasename}.64
478-
cp -rp out/server/x64/tools-mono/GodotSharp ${binbasename}_64/
479-
cp -rp out/aot-compilers ${binbasename}_64/GodotSharp/Tools/
480-
zip -r -q -9 "${reldir_mono}/${binbasename}_64.zip" ${binbasename}_64
481-
rm -rf ${binbasename}_64
482-
483-
# Server (template)
484-
binbasename="${godot_basename}_mono_linux_server"
485-
mkdir -p ${binbasename}_64
486-
cp out/server/x64/templates-mono/godot_server.x11.opt.64.mono ${binbasename}_64/${binbasename}.64
487-
strip ${binbasename}_64/${binbasename}.64
488-
cp -rp out/server/x64/templates-mono/data.mono.server.64.release ${binbasename}_64/data_${binbasename}_64
489-
zip -r -q -9 "${reldir_mono}/${binbasename}_64.zip" ${binbasename}_64
490-
rm -rf ${binbasename}_64
491-
492-
## Javascript (Mono) ##
493-
494-
# Templates
495-
cp out/javascript/templates-mono/godot.javascript.opt.debug.mono.zip ${templatesdir_mono}/webassembly_debug.zip
496-
cp out/javascript/templates-mono/godot.javascript.opt.mono.zip ${templatesdir_mono}/webassembly_release.zip
497-
498-
mkdir -p ${templatesdir_mono}/bcl
499-
cp -r out/javascript/templates-mono/bcl/wasm ${templatesdir_mono}/bcl/
455+
# ## Javascript (Mono) ##
456+
#
457+
# # Templates
458+
# cp out/javascript/templates-mono/godot.javascript.opt.debug.mono.zip ${templatesdir_mono}/webassembly_debug.zip
459+
# cp out/javascript/templates-mono/godot.javascript.opt.mono.zip ${templatesdir_mono}/webassembly_release.zip
460+
#
461+
# mkdir -p ${templatesdir_mono}/bcl
462+
# cp -r out/javascript/templates-mono/bcl/wasm ${templatesdir_mono}/bcl/
500463

501464
## Android (Mono) ##
502465

@@ -532,9 +495,9 @@ if [ "${build_mono}" == "1" ]; then
532495
cp -r out/ios/templates-mono/bcl/monotouch* ${templatesdir_mono}/bcl/
533496
cp -r out/ios/templates-mono/iphone-mono-libs ${templatesdir_mono}
534497

535-
## UWP (Mono) ##
536-
537-
# Not supported yet.
498+
# ## UWP (Mono) ##
499+
#
500+
# # Not supported yet.
538501

539502
## Templates TPZ (Mono) ##
540503

0 commit comments

Comments
 (0)