|
| 1 | +FROM ubuntu:16.04 |
| 2 | + |
| 3 | +RUN apt-get update && apt-get install -y --no-install-recommends \ |
| 4 | + g++ \ |
| 5 | + make \ |
| 6 | + file \ |
| 7 | + curl \ |
| 8 | + ca-certificates \ |
| 9 | + python2.7 \ |
| 10 | + python-minimal \ |
| 11 | + git \ |
| 12 | + cmake \ |
| 13 | + ccache \ |
| 14 | + sudo \ |
| 15 | + gcc-aarch64-linux-gnu libc6-dev-arm64-cross \ |
| 16 | + gcc-arm-linux-gnueabi libc6-dev-armel-cross \ |
| 17 | + gcc-arm-linux-gnueabihf libc6-dev-armhf-cross \ |
| 18 | + gcc-mips-linux-gnu libc6-dev-mips-cross \ |
| 19 | + gcc-mipsel-linux-gnu libc6-dev-mipsel-cross \ |
| 20 | + gcc-mips64-linux-gnuabi64 libc6-dev-mips64-cross \ |
| 21 | + gcc-mips64el-linux-gnuabi64 libc6-dev-mips64el-cross \ |
| 22 | + gcc-powerpc-linux-gnu libc6-dev-powerpc-cross \ |
| 23 | + gcc-powerpc64-linux-gnu libc6-dev-ppc64-cross \ |
| 24 | + gcc-powerpc64le-linux-gnu libc6-dev-ppc64el-cross \ |
| 25 | + gcc-s390x-linux-gnu libc6-dev-s390x-cross |
| 26 | + |
| 27 | +ENV TARGETS=aarch64-unknown-linux-gnu |
| 28 | +ENV TARGETS=$TARGETS,arm-unknown-linux-gnueabi |
| 29 | +ENV TARGETS=$TARGETS,arm-unknown-linux-gnueabihf |
| 30 | +ENV TARGETS=$TARGETS,armv7-unknown-linux-gnueabihf |
| 31 | +ENV TARGETS=$TARGETS,asmjs-unknown-emscripten |
| 32 | +ENV TARGETS=$TARGETS,mips-unknown-linux-gnu |
| 33 | +ENV TARGETS=$TARGETS,mips64-unknown-linux-gnuabi64 |
| 34 | +ENV TARGETS=$TARGETS,mips64el-unknown-linux-gnuabi64 |
| 35 | +ENV TARGETS=$TARGETS,mipsel-unknown-linux-gnu |
| 36 | +ENV TARGETS=$TARGETS,powerpc-unknown-linux-gnu |
| 37 | +ENV TARGETS=$TARGETS,powerpc64-unknown-linux-gnu |
| 38 | +ENV TARGETS=$TARGETS,powerpc64le-unknown-linux-gnu |
| 39 | +ENV TARGETS=$TARGETS,s390x-unknown-linux-gnu |
| 40 | +ENV TARGETS=$TARGETS,wasm32-unknown-emscripten |
| 41 | + |
| 42 | +#ENV TARGETS=$TARGETS,mips-unknown-linux-musl |
| 43 | +#ENV TARGETS=$TARGETS,arm-unknown-linux-musleabi |
| 44 | +#ENV TARGETS=$TARGETS,arm-unknown-linux-musleabihf |
| 45 | +#ENV TARGETS=$TARGETS,armv7-unknown-linux-musleabihf |
| 46 | +#ENV TARGETS=$TARGETS,x86_64-rumprun-netbsd |
| 47 | + |
| 48 | +ENV RUST_CONFIGURE_ARGS \ |
| 49 | + --target=$TARGETS \ |
| 50 | + --enable-rustbuild |
| 51 | +ENV RUST_CHECK_TARGET "" |
| 52 | + |
| 53 | +ENV AR_s390x_unknown_linux_gnu=s390x-linux-gnu-ar \ |
| 54 | + CC_s390x_unknown_linux_gnu=s390x-linux-gnu-gcc \ |
| 55 | + AR_mips64_unknown_linux_gnuabi64=mips64-linux-gnuabi64-ar \ |
| 56 | + CC_mips64_unknown_linux_gnuabi64=mips64-linux-gnuabi64-gcc \ |
| 57 | + AR_mips64el_unknown_linux_gnuabi64=mips64el-linux-gnuabi64-ar \ |
| 58 | + CC_mips64el_unknown_linux_gnuabi64=mips64el-linux-gnuabi64-gcc \ |
| 59 | + AR_powerpc64_unknown_linux_gnu=powerpc64-linux-gnu-ar \ |
| 60 | + CC_powerpc64_unknown_linux_gnu=powerpc64-linux-gnu-gcc |
| 61 | + |
| 62 | +# FIXME(rust-lang/rust#36150): powerpc unfortunately aborts right now |
| 63 | +ENV NO_LLVM_ASSERTIONS=1 |
| 64 | + |
| 65 | +RUN mkdir /tmp/obj |
| 66 | +RUN chmod 777 /tmp/obj |
0 commit comments