123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176 |
- .. _doc_batch_building_templates:
- Batch building templates
- ========================
- .. note:: This page is outdated and needs to be updated or removed.
- The following is almost the same script that we use to build all the
- export templates that go to the website. If you want to build or roll them
- yourself, this might be of use.
- (note: Apple stuff is missing)
- ::
- #This script is intended to run on Linux or OSX. Cygwin might work.
- # if this flag is set, build is tagged as release in the version
- # echo $IS_RELEASE_BUILD
- #Need to set path to EMScripten
- export EMSCRIPTEN_ROOT=/home/to/emscripten
- #Build templates
- #remove this stuff, will be created anew
- rm -rf templates
- mkdir -p templates
- # Windows 32 Release and Debug
- scons -j 4 p=windows target=release tools=no bits=32
- cp bin/godot.windows.opt.32.exe templates/windows_32_release.exe
- upx templates/windows_32_release.exe
- scons -j 4 p=windows target=release_debug tools=no bits=32
- cp bin/godot.windows.opt.debug.32.exe templates/windows_32_debug.exe
- upx templates/windows_32_debug.exe
- # Windows 64 Release and Debug (UPX does not support it yet)
- scons -j 4 p=windows target=release tools=no bits=64
- cp bin/godot.windows.opt.64.exe templates/windows_64_release.exe
- x86_64-w64-mingw32-strip templates/windows_64_release.exe
- scons -j 4 p=windows target=release_debug tools=no bits=64
- cp bin/godot.windows.opt.debug.64.exe templates/windows_64_debug.exe
- x86_64-w64-mingw32-strip templates/windows_64_debug.exe
- # Linux 64 Release and Debug
- scons -j 4 p=x11 target=release tools=no bits=64
- cp bin/godot.x11.opt.64 templates/linux_x11_64_release
- upx templates/linux_x11_64_release
- scons -j 4 p=x11 target=release_debug tools=no bits=64
- cp bin/godot.x11.opt.debug.64 templates/linux_x11_64_debug
- upx templates/linux_x11_64_debug
- # Linux 32 Release and Debug
- scons -j 4 p=x11 target=release tools=no bits=32
- cp bin/godot.x11.opt.32 templates/linux_x11_32_release
- upx templates/linux_x11_32_release
- scons -j 4 p=x11 target=release_debug tools=no bits=32
- cp bin/godot.x11.opt.debug.32 templates/linux_x11_32_debug
- upx templates/linux_x11_32_debug
- # Server for 32 and 64 bits (always in debug)
- scons -j 4 p=server target=release_debug tools=no bits=64
- cp bin/godot_server.server.opt.debug.64 templates/linux_server_64
- upx templates/linux_server_64
- scons -j 4 p=server target=release_debug tools=no bits=32
- cp bin/godot_server.server.opt.debug.32 templates/linux_server_32
- upx templates/linux_server_32
- # Android
- **IMPORTANT REPLACE THIS BY ACTUAL VALUES**
- export ANDROID_HOME=/home/to/android-sdk
- export ANDROID_NDK_ROOT=/home/to/android-ndk
- # git does not allow empty dirs, so create those
- mkdir -p platform/android/java/libs/armeabi
- mkdir -p platform/android/java/libs/x86
- #Android Release
- scons -j 4 p=android target=release
- cp bin/libgodot.android.opt.so platform/android/java/libs/armeabi/libgodot_android.so
- ./gradlew build
- cp platform/android/java/build/outputs/apk/java-release-unsigned.apk templates/android_release.apk
- #Android Debug
- scons -j 4 p=android target=release_debug
- cp bin/libgodot.android.opt.debug.so platform/android/java/libs/armeabi/libgodot_android.so
- ./gradlew build
- cp platform/android/java/build/outputs/apk/java-release-unsigned.apk templates/android_debug.apk
- # EMScripten
- scons -j 4 p=javascript target=release
- cp bin/godot.javascript.opt.html godot.html
- cp bin/godot.javascript.opt.js godot.js
- cp tools/html_fs/filesystem.js .
- zip javascript_release.zip godot.html godot.js filesystem.js
- mv javascript_release.zip templates/
- scons -j 4 p=javascript target=release_debug
- cp bin/godot.javascript.opt.debug.html godot.html
- cp bin/godot.javascript.opt.debug.js godot.js
- cp tools/html_fs/filesystem.js .
- zip javascript_debug.zip godot.html godot.js filesystem.js
- mv javascript_debug.zip templates/
- # BlackBerry 10 (currently disabled)
- #./path/to/bbndk/bbndk-env.sh
- #scons -j 4 platform/bb10/godot_bb10_opt.qnx.armle target=release
- #cp platform/bb10/godot_bb10_opt.qnx.armle platform/bb10/bar
- #scons -j 4 platform/bb10/godot_bb10.qnx.armle target=release_debug
- #cp platform/bb10/godot_bb10.qnx.armle platform/bb10/bar
- #cd platform/bb10/bar
- #zip -r bb10.zip *
- #mv bb10.zip ../../../templates
- #cd ../../..
- # BUILD ON MAC
- [...]
- # Build release executables with editor
- mkdir -p release
- scons -j 4 p=server target=release_debug bits=64
- cp bin/godot_server.server.opt.tools.64 release/linux_server.64
- upx release/linux_server.64
- scons -j 4 p=x11 target=release_debug tools=yes bits=64
- cp bin/godot.x11.opt.tools.64 release/godot_x11.64
- # upx release/godot_x11.64 -- fails on some linux distros
- scons -j 4 p=x11 target=release_debug tools=yes bits=32
- cp bin/godot.x11.opt.tools.32 release/godot_x11.32
- scons -j 4 p=windows target=release_debug tools=yes bits=64
- cp bin/godot.windows.opt.tools.64.exe release/godot_win64.exe
- x86_64-w64-mingw32-strip release/godot_win64.exe
- #upx release/godot_win64.exe
- scons -j 4 p=windows target=release_debug tools=yes bits=32
- cp bin/godot.windows.opt.tools.32.exe release/godot_win32.exe
- x86_64-w64-mingw32-strip release/godot_win32.exe
- #upx release/godot_win64.exe
- [..] # mac stuff
- # Update classes.xml (used to generate doc)
- cp doc/base/classes.xml .
- release/linux_server.64 -doctool classes.xml
- cd demos
- rm -f godot_demos.zip
- zip -r godot_demos *
- cd ..
- cd tools/export/blender25
- zip -r bettercollada *
- mv bettercollada.zip ../../..
- cd ../../..
|