This makes emsdk [install|activate] latest get the latest fastcomp release from emscripten-releases, replacing our usage of the old mozilla build infrastructure. This is only for "latest", so there should be no change to older releases. This does remove non-release old stuff from the mozilla infrastructure, like "nightly" builds (that I don't think were even working?). After this PR, only old releases should be used from there. Context: we've asked that people test the emscripten-releases builds for 1.38.33, and fixed a few issues people found. There are no open showstoppers, so this is us moving to the next step, serving latest builds from the new infrastructure.
42 lines
1.8 KiB
Docker
42 lines
1.8 KiB
Docker
# For travis
|
|
FROM buildpack-deps:xenial
|
|
SHELL ["/bin/bash", "-c"]
|
|
ENV DEBIAN_FRONTEND=noninteractive LANG=C.UTF-8
|
|
RUN mkdir -p /root/emsdk/
|
|
COPY . /root/emsdk/
|
|
|
|
RUN cd /root/ \
|
|
&& echo "int main() {}" > hello_world.cpp \
|
|
&& apt-get update \
|
|
&& apt-get install -y python python3 cmake build-essential openjdk-9-jre-headless \
|
|
&& /root/emsdk/emsdk update-tags \
|
|
&& echo "test latest" \
|
|
&& /root/emsdk/emsdk install latest \
|
|
&& /root/emsdk/emsdk activate latest \
|
|
&& python -c "import os ; assert 'fastcomp' in open(os.path.expanduser('~/.emscripten')).read()" \
|
|
&& python -c "import os ; assert 'upstream' not in open(os.path.expanduser('~/.emscripten')).read()" \
|
|
&& source /root/emsdk/emsdk_env.sh --build=Release \
|
|
&& emcc hello_world.cpp \
|
|
&& emcc hello_world.cpp -s WASM=0 \
|
|
&& emcc --clear-cache \
|
|
&& echo "test latest-releases-upstream" \
|
|
&& python2 /root/emsdk/emsdk install latest-upstream \
|
|
&& /root/emsdk/emsdk activate latest-upstream \
|
|
&& source /root/emsdk/emsdk_env.sh --build=Release \
|
|
&& emcc hello_world.cpp \
|
|
&& python -c "import os ; assert open(os.path.expanduser('~/.emscripten')).read().count('LLVM_ROOT') == 1" \
|
|
&& python -c "import os ; assert 'upstream' in open(os.path.expanduser('~/.emscripten')).read()" \
|
|
&& python -c "import os ; assert 'fastcomp' not in open(os.path.expanduser('~/.emscripten')).read()" \
|
|
&& echo "test tot-upstream" \
|
|
&& /root/emsdk/emsdk install tot-upstream \
|
|
&& /root/emsdk/emsdk activate tot-upstream \
|
|
&& source /root/emsdk/emsdk_env.sh --build=Release \
|
|
&& emcc hello_world.cpp \
|
|
&& echo "test tot-fastcomp" \
|
|
&& /root/emsdk/emsdk install tot-fastcomp \
|
|
&& /root/emsdk/emsdk activate tot-fastcomp \
|
|
&& source /root/emsdk/emsdk_env.sh --build=Release \
|
|
&& emcc hello_world.cpp \
|
|
&& echo "test binaryen source build" \
|
|
&& /root/emsdk/emsdk install --build=Release binaryen-master-64bit
|