ARG ORG=dockcross ARG HOST_ARCH=amd64 FROM ${ORG}/base:latest-${HOST_ARCH} LABEL maintainer="Matt McCormick matt@mmmccormick.com" ENV LLVM_VERSION=19 ENV WASI_VERSION=25 ENV WASI_VERSION_FULL=${WASI_VERSION}.0 ENV WASMTIME_HOME=/wasi-runtimes/wasmtime RUN mkdir -p ${WASMTIME_HOME} && curl https://wasmtime.dev/install.sh -sSf | bash ENV PATH="$WASMTIME_HOME/bin:$PATH" COPY download-build-install-wasi-sdk.sh /usr/local/bin/ RUN /usr/local/bin/download-build-install-wasi-sdk.sh ENV WASI_SYSROOT=/opt/wasi-sdk/share/wasi-sysroot ENV WASI_SDK_PATH=/opt/wasi-sdk COPY clang-wasi-sysroot.sh clang++-wasi-sysroot.sh /usr/local/bin/ ENV CROSS_TRIPLE=wasm32-wasi ENV CROSS_ROOT=${WASI_SDK_PATH} ENV AR=${WASI_SDK_PATH}/bin/llvm-ar \ CC=clang-wasi-sysroot.sh \ CXX=clang++-wasi-sysroot.sh \ LD=${WASI_SDK_PATH}/bin/wasm-ld \ RANLIB=${WASI_SDK_PATH}/bin/llvm-ranlib #include "common.webassembly" COPY WASI.cmake /usr/src/ RUN mv /usr/src/WASI.cmake /usr/share/cmake-*/Modules/Platform/ COPY *.cmake /usr/src/ RUN mv /usr/src/*.cmake /usr/share/cmake-*/Modules/ COPY CheckTypeSize.c.in /usr/src/ RUN mv /usr/src/CheckTypeSize.c.in /usr/share/cmake-*/Modules/ COPY Toolchain.cmake ${CROSS_ROOT}/ ENV CMAKE_TOOLCHAIN_FILE=${CROSS_ROOT}/Toolchain.cmake #include "common.label-and-env"