dockcross/browser-asmjs/Dockerfile.in

46 lines
1.8 KiB
Docker
Raw Normal View History

FROM trzeci/emscripten:sdk-tag-1.36.14-64bit
MAINTAINER Matt McCormick "matt.mccormick@kitware.com"
# Revert back to "/bin/sh" as default shell
# See https://github.com/asRIA/emscripten-docker/blob/master/Dockerfile.in#L4
RUN rm /bin/sh && ln -s /bin/dash /bin/sh
#include "common.debian"
#include "common.docker"
ENV EMSCRIPTEN_VERSION 1.36.14
ENV PATH /emsdk_portable:/emsdk_portable/clang/tag-e${EMSCRIPTEN_VERSION}/build_tag-e${EMSCRIPTEN_VERSION}_64/bin:/emsdk_portable/emscripten/tag-${EMSCRIPTEN_VERSION}:${PATH}
ENV CC=/emsdk_portable/emscripten/tag-${EMSCRIPTEN_VERSION}/emcc \
CXX=/emsdk_portable/emscripten/tag-${EMSCRIPTEN_VERSION}/em++ \
AR=/emsdk_portable/emscripten/tag-${EMSCRIPTEN_VERSION}/emar
# Emscripten generates system libraries the firsts time it runs
ADD test/ /tmp/test/
RUN cd /tmp && \
/bin/echo -e "#include <iostream>\nint main() { std::cout << \"first run\"; return 0; }" > /tmp/first_run.cxx && \
$CXX /tmp/first_run.cxx -o a.out.js && \
rm /tmp/first_run.* && \
/bin/echo -e "#include <stdio.h>\nint main() { printf(\"first run\"); return 0; }" > /tmp/first_run.c && \
$CC /tmp/first_run.c -o a.out.js && \
rm /tmp/first_run.* a.out.js && \
cd /tmp/test && \
python /tmp/test/run.py; python /tmp/test/run.py && \
cd && rm -rf /tmp/test
ENV DEFAULT_DOCKCROSS_IMAGE dockcross/browser-asmjs
ENV CMAKE_TOOLCHAIN_FILE /emsdk_portable/emscripten/tag-${EMSCRIPTEN_VERSION}/cmake/Modules/Platform/Emscripten.cmake
# Build-time metadata as defined at http://label-schema.org
ARG BUILD_DATE
ARG IMAGE
ARG VCS_REF
ARG VCS_URL
LABEL org.label-schema.build-date=$BUILD_DATE \
org.label-schema.name=$IMAGE \
org.label-schema.vcs-ref=$VCS_REF \
org.label-schema.vcs-url=$VCS_URL \
org.label-schema.schema-version="1.0"