]> git.lizzy.rs Git - rust.git/blob - src/ci/docker/test-various/Dockerfile
Auto merge of #62452 - Centril:rollup-5jww3h7, r=Centril
[rust.git] / src / ci / docker / test-various / Dockerfile
1 FROM ubuntu:18.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   python \
10   git \
11   cmake \
12   sudo \
13   gdb \
14   libssl-dev \
15   pkg-config \
16   xz-utils \
17   wget \
18   patch
19
20 RUN curl -sL https://nodejs.org/dist/v9.2.0/node-v9.2.0-linux-x64.tar.xz | \
21   tar -xJ
22
23 WORKDIR /build/
24 COPY scripts/musl-toolchain.sh /build/
25 RUN bash musl-toolchain.sh x86_64 && rm -rf build
26 WORKDIR /
27
28 COPY scripts/sccache.sh /scripts/
29 RUN sh /scripts/sccache.sh
30
31 ENV RUST_CONFIGURE_ARGS \
32   --musl-root-x86_64=/usr/local/x86_64-linux-musl \
33   --set build.nodejs=/node-v9.2.0-linux-x64/bin/node \
34   --set rust.lld
35
36 # Some run-make tests have assertions about code size, and enabling debug
37 # assertions in libstd causes the binary to be much bigger than it would
38 # otherwise normally be. We already test libstd with debug assertions in lots of
39 # other contexts as well
40 ENV NO_DEBUG_ASSERTIONS=1
41
42 ENV WASM_TARGETS=wasm32-unknown-unknown
43 ENV WASM_SCRIPT python2.7 /checkout/x.py test --target $WASM_TARGETS \
44   src/test/run-make \
45   src/test/ui \
46   src/test/run-pass \
47   src/test/compile-fail \
48   src/test/mir-opt \
49   src/test/codegen-units \
50   src/libcore
51
52 ENV NVPTX_TARGETS=nvptx64-nvidia-cuda
53 ENV NVPTX_SCRIPT python2.7 /checkout/x.py test --target $NVPTX_TARGETS \
54   src/test/run-make \
55   src/test/assembly
56
57 ENV MUSL_TARGETS=x86_64-unknown-linux-musl \
58     CC_x86_64_unknown_linux_musl=x86_64-linux-musl-gcc \
59     CXX_x86_64_unknown_linux_musl=x86_64-linux-musl-g++
60 ENV MUSL_SCRIPT python2.7 /checkout/x.py test --target $MUSL_TARGETS
61
62 ENV SCRIPT $WASM_SCRIPT && $NVPTX_SCRIPT && $MUSL_SCRIPT