@@ -69,8 +69,16 @@ folded-finish() {
6969
7070folded ... concurrently GIT_UPDATE_PID git submodule update --init --depth 1 --jobs " $N_PARALLEL_UPDATE "
7171
72+ install-emsdk () {
73+ git clone https://github.com/emscripten-core/emsdk.git .build-emsdk
74+ cd .build-emsdk
75+ ./emsdk install latest
76+ ./emsdk activate latest
77+ }
78+
79+ [ " $TRAVIS_OS_NAME " = windows ] || [ " $EMSCRIPTEN " != 1 ] || folded ... concurrently EMSCRIPTEN_INSTALL_PID install-emsdk
80+
7281if [ " $TRAVIS_OS_NAME " = osx ]; then
73- [ " $EMSCRIPTEN " != 1 ] || HOMEBREW_NO_INSTALL_CLEANUP=1 folded ... concurrently EMSCRIPTEN_INSTALL_PID locked brew install emscripten
7482 [ " $CODECOV " != 1 ] || HOMEBREW_NO_INSTALL_CLEANUP=1 folded ... concurrently LCOV_INSTALL_PID locked brew install lcov
7583 [ " $FORMAT_CHECK " = 0 ] || HOMEBREW_NO_INSTALL_CLEANUP=1 folded ... concurrently FORMAT_INSTALL_PID locked brew install prettier clang-format
7684elif [ " $TRAVIS_OS_NAME " = windows ]; then
@@ -124,12 +132,12 @@ run-tests() {
124132 kill -9 $( ps | grep -o " ^ *[0-9]\\ + *$$ " | sed -e ' s#^ *##g' -e ' s# .*##g' ) 2> /dev/null || true
125133 fi
126134
127- if [ " $TRAVIS_OS_NAME " = osx ] && [ " $EMSCRIPTEN " = 1 ]; then
135+ if [ " $TRAVIS_OS_NAME " != windows ] && [ " $EMSCRIPTEN " = 1 ]; then
128136 folded-finish EMSCRIPTEN_INSTALL_PID
129- local EMSCRIPTEN_TOOLCHAIN_FILE
130- EMSCRIPTEN_TOOLCHAIN_FILE=" $( find /usr/local -name Emscripten.cmake) "
137+ folded " Sourcing Emscripten environment " . .build-emsdk/emsdk_env.sh
138+ local EMSCRIPTEN_TOOLCHAIN_FILE=" $EMSDK /upstream/emscripten/cmake/Modules/Platform/ Emscripten.cmake"
131139 for CONFIG in Debug Release; do
132- CMAKE_BUILD_TYPE=$CONFIG CMAKE_TOOLCHAIN_FILE=" $EMSCRIPTEN_TOOLCHAIN_FILE " folded " Emscripten $CONFIG " cppsm test
140+ CMAKE_BUILD_TYPE=$CONFIG CMAKE_TOOLCHAIN_FILE=" $EMSCRIPTEN_TOOLCHAIN_FILE " CC= ' ' CXX= ' ' folded " Emscripten $CONFIG " cppsm test
133141 done
134142 fi
135143}
0 commit comments