diff --git a/package/ci/travis-emscripten.sh b/package/ci/travis-emscripten.sh index f09413a2a..8e886ecf4 100755 --- a/package/ci/travis-emscripten.sh +++ b/package/ci/travis-emscripten.sh @@ -24,7 +24,7 @@ cd .. mkdir build-emscripten && cd build-emscripten cmake .. \ -DCORRADE_RC_EXECUTABLE=$HOME/deps-native/bin/corrade-rc \ - -DCMAKE_TOOLCHAIN_FILE="../../toolchains/generic/Emscripten.cmake" \ + -DCMAKE_TOOLCHAIN_FILE="../../toolchains/generic/Emscripten-wasm.cmake" \ -DEMSCRIPTEN_PREFIX=$(echo /usr/local/Cellar/emscripten/*/libexec) \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_CXX_FLAGS_RELEASE="-DNDEBUG -O1" \ @@ -41,7 +41,7 @@ cd .. mkdir build-emscripten && cd build-emscripten cmake .. \ -DCORRADE_RC_EXECUTABLE=$HOME/deps-native/bin/corrade-rc \ - -DCMAKE_TOOLCHAIN_FILE="../toolchains/generic/Emscripten.cmake" \ + -DCMAKE_TOOLCHAIN_FILE="../toolchains/generic/Emscripten-wasm.cmake" \ -DEMSCRIPTEN_PREFIX=$(echo /usr/local/Cellar/emscripten/*/libexec) \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_CXX_FLAGS_RELEASE="-DNDEBUG -O1" \ diff --git a/package/ci/travis.yml b/package/ci/travis.yml index 942c7ed55..1b62a5371 100644 --- a/package/ci/travis.yml +++ b/package/ci/travis.yml @@ -224,7 +224,12 @@ install: - if [ "$TRAVIS_OS_NAME" == "osx" ] && [[ "$CMAKE_CXX_FLAGS" == *"--coverage"* ]]; then HOMEBREW_NO_AUTO_UPDATE=1 brew install lcov; fi - if [ "$TRAVIS_OS_NAME" == "osx" ] && [ "$TARGET" == "desktop" ]; then export PLATFORM_GL_API=CGL; fi - if [ "$TRAVIS_OS_NAME" == "osx" ] && [ "$TARGET" == "ios-simulator" ]; then gem install xcpretty; fi -- if [ "$TRAVIS_OS_NAME" == "osx" ] && [ "$TARGET" == "emscripten" ]; then HOMEBREW_NO_AUTO_UPDATE=1 brew install emscripten && export LLVM=/usr/local/opt/emscripten/libexec/llvm/bin && emcc; fi +# binaryen is a dependency for wasm targets, but homebrew devs don't give a +# shit: https://github.com/Homebrew/homebrew-core/issues/47869 Also the +# generated .emscripten doesn't have a newline at EOL so the workaround listed +# in the issue doesn't work and one has to add explicit \n there to make it +# work. EVERYTHING SUCKS NOWADAYS. +- if [ "$TRAVIS_OS_NAME" == "osx" ] && [ "$TARGET" == "emscripten" ]; then HOMEBREW_NO_AUTO_UPDATE=1 brew install emscripten binaryen && export LLVM=/usr/local/opt/emscripten/libexec/llvm/bin && emcc && echo -e "\nBINARYEN_ROOT = '/usr/local'\n" >> ~/.emscripten; fi - if [ "$TARGET" == "desktop" ] || [ "$TARGET" == "desktop-sanitizers" ] || [ "$TARGET" == "desktop-gles" ]; then printf "[General]\ndrivers=null" > ~/.alsoftrc; fi # SDL on macOS and iOS (cached)