3 RUN apt-get update && apt-get install -y --no-install-recommends \
15 g++-arm-linux-gnueabi \
16 g++-arm-linux-gnueabihf \
17 g++-aarch64-linux-gnu \
18 gcc-sparc64-linux-gnu \
19 libc6-dev-sparc64-cross \
27 COPY cross/build-rumprun.sh /tmp/
28 RUN ./build-rumprun.sh
30 COPY cross/build-arm-musl.sh /tmp/
31 RUN ./build-arm-musl.sh
33 COPY cross/install-mips-musl.sh /tmp/
34 RUN ./install-mips-musl.sh
36 COPY cross/install-mipsel-musl.sh /tmp/
37 RUN ./install-mipsel-musl.sh
39 COPY cross/install-x86_64-redox.sh /tmp/
40 RUN ./install-x86_64-redox.sh
42 ENV TARGETS=asmjs-unknown-emscripten
43 ENV TARGETS=$TARGETS,wasm32-unknown-emscripten
44 ENV TARGETS=$TARGETS,x86_64-rumprun-netbsd
45 ENV TARGETS=$TARGETS,mips-unknown-linux-musl
46 ENV TARGETS=$TARGETS,mipsel-unknown-linux-musl
47 ENV TARGETS=$TARGETS,arm-unknown-linux-musleabi
48 ENV TARGETS=$TARGETS,arm-unknown-linux-musleabihf
49 ENV TARGETS=$TARGETS,armv7-unknown-linux-musleabihf
50 ENV TARGETS=$TARGETS,aarch64-unknown-linux-musl
51 ENV TARGETS=$TARGETS,sparc64-unknown-linux-gnu
52 ENV TARGETS=$TARGETS,x86_64-unknown-redox
54 ENV CC_mipsel_unknown_linux_musl=mipsel-openwrt-linux-gcc \
55 CC_mips_unknown_linux_musl=mips-openwrt-linux-gcc \
56 CC_sparc64_unknown_linux_gnu=sparc64-linux-gnu-gcc \
57 CC_x86_64_unknown_redox=x86_64-unknown-redox-gcc
59 # Suppress some warnings in the openwrt toolchains we downloaded
62 ENV RUST_CONFIGURE_ARGS \
65 --musl-root-arm=/usr/local/arm-linux-musleabi \
66 --musl-root-armhf=/usr/local/arm-linux-musleabihf \
67 --musl-root-armv7=/usr/local/armv7-linux-musleabihf \
68 --musl-root-aarch64=/usr/local/aarch64-linux-musl
69 ENV SCRIPT python2.7 ../x.py dist --target $TARGETS
72 COPY scripts/sccache.sh /scripts/
73 RUN sh /scripts/sccache.sh