diff --git a/CMakeLists.txt b/CMakeLists.txt index aa47a45bbd..239e8aa4e9 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -329,7 +329,7 @@ if(EMSCRIPTEN) # the more languages you add the slower downloading becomes, we decided to # only ship the English language. target_link_libraries(WASM::WASM INTERFACE "--preload-file ${CMAKE_BINARY_DIR}/baseset@/baseset") - target_link_libraries(WASM::WASM INTERFACE "--preload-file ${CMAKE_BINARY_DIR}/lang/english.lng@/lang/english.lng") + target_link_libraries(WASM::WASM INTERFACE "--preload-file ${CMAKE_BINARY_DIR}/lang@/lang") target_link_libraries(WASM::WASM INTERFACE "--preload-file ${CMAKE_SOURCE_DIR}/bin/ai@/ai") target_link_libraries(WASM::WASM INTERFACE "--preload-file ${CMAKE_SOURCE_DIR}/bin/game@/game") diff --git a/os/emscripten/emscripten-build-debug.sh b/os/emscripten/emscripten-build-debug.sh index 054c91cd79..81f980d065 100755 --- a/os/emscripten/emscripten-build-debug.sh +++ b/os/emscripten/emscripten-build-debug.sh @@ -1,30 +1,3 @@ #!/bin/bash -cd ../.. - -[ -z "`which emsdk`" ] && export PATH=`pwd`/../emsdk:$PATH - -[ -z "`which emsdk`" ] && { echo "Put emsdk into your PATH"; exit 1 ; } - -[ -z "$PATH_EMSDK" ] && PATH_EMSDK="`which emsdk | xargs dirname`" - -source "$PATH_EMSDK/emsdk_env.sh" - -mkdir -p build-wasm-debug -cd build-wasm-debug - -[ -e build-host ] || { - rm -rf build-host - mkdir -p build-host - cd build-host - cmake ../.. -DOPTION_TOOLS_ONLY=ON || exit 1 - make -j8 tools || exit 1 - cd .. -} - -embuilder build liblzma - -[ -e Makefile ] || emcmake cmake .. -DHOST_BINARY_DIR=$(pwd)/build-host -DCMAKE_BUILD_TYPE=Debug -DOPTION_USE_ASSERTS=OFF || exit 1 -emmake make -j8 VERBOSE=1 || exit 1 - -cp -f *.html *.js *.mem *.data *.wasm ../media/openttd.256.png ../os/emscripten/openttd.webapp /var/www/html/ +./emscripten-build.sh debug diff --git a/os/emscripten/emscripten-build.sh b/os/emscripten/emscripten-build.sh index bd5b40f5a4..7d1d9c6c6c 100755 --- a/os/emscripten/emscripten-build.sh +++ b/os/emscripten/emscripten-build.sh @@ -1,5 +1,9 @@ #!/bin/bash +BUILD_TYPE=Release +[ "$1" = "debug" ] && BUILD_TYPE=Debug +[ "$1" = "release" ] && BUILD_TYPE=Release + cd ../.. [ -z "`which emsdk`" ] && export PATH=`pwd`/../emsdk:$PATH @@ -10,8 +14,8 @@ cd ../.. source "$PATH_EMSDK/emsdk_env.sh" -mkdir -p build-wasm -cd build-wasm +mkdir -p build-wasm-$BUILD_TYPE +cd build-wasm-$BUILD_TYPE [ -e build-host ] || { rm -rf build-host @@ -22,9 +26,18 @@ cd build-wasm cd .. } +embuilder build liblzma embuilder build --lto liblzma -[ -e Makefile ] || emcmake cmake .. -DHOST_BINARY_DIR=$(pwd)/build-host -DCMAKE_BUILD_TYPE=Release -DOPTION_USE_ASSERTS=OFF || exit 1 +mkdir -p baseset +[ -e baseset/opengfx-0.6.1.tar ] || { + wget https://cdn.openttd.org/opengfx-releases/0.6.1/opengfx-0.6.1-all.zip || exit 1 + unzip opengfx-0.6.1-all.zip || exit 1 + rm opengfx-0.6.1-all.zip + mv opengfx-0.6.1.tar baseset/ +} + +[ -e Makefile ] || emcmake cmake .. -DHOST_BINARY_DIR=$(pwd)/build-host -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DOPTION_USE_ASSERTS=OFF || exit 1 emmake make -j8 VERBOSE=1 || exit 1 cp -f *.html *.js *.mem *.data *.wasm ../media/openttd.256.png ../os/emscripten/openttd.webapp /var/www/html/ diff --git a/os/emscripten/pre.js b/os/emscripten/pre.js index b1ec5486bc..f2c867b986 100644 --- a/os/emscripten/pre.js +++ b/os/emscripten/pre.js @@ -31,7 +31,7 @@ Module.preRun.push(function() { } /* Check if the OpenGFX baseset is already downloaded. */ - if (!FS.analyzePath(content_download_dir + '/baseset/opengfx-0.6.0.tar').exists) { + if (false && !FS.analyzePath(content_download_dir + '/baseset/opengfx-0.6.0.tar').exists) { window.openttd_downloaded_opengfx = true; FS.createPreloadedFile(content_download_dir + '/baseset', 'opengfx-0.6.0.tar', 'https://installer.cdn.openttd.org/emscripten/opengfx-0.6.0.tar', true, true); } else {