]>
Commit | Line | Data |
---|---|---|
add651ee | 1 | FROM ubuntu:22.04 |
ff7c6d11 | 2 | |
add651ee FG |
3 | ARG DEBIAN_FRONTEND=noninteractive |
4 | RUN apt-get update && apt-get install -y --no-install-recommends \ | |
487cf647 | 5 | clang-11 \ |
c620b35d | 6 | llvm-11 \ |
ff7c6d11 XL |
7 | g++ \ |
8 | make \ | |
1b1a35ee | 9 | ninja-build \ |
ff7c6d11 XL |
10 | file \ |
11 | curl \ | |
12 | ca-certificates \ | |
ba9703b0 | 13 | python3 \ |
ff7c6d11 XL |
14 | git \ |
15 | cmake \ | |
16 | sudo \ | |
17 | gdb \ | |
416331ca XL |
18 | libssl-dev \ |
19 | pkg-config \ | |
add651ee | 20 | bzip2 \ |
532ac7d7 XL |
21 | xz-utils \ |
22 | wget \ | |
487cf647 FG |
23 | patch \ |
24 | ovmf \ | |
add651ee | 25 | ovmf-ia32 \ |
487cf647 FG |
26 | qemu-efi-aarch64 \ |
27 | qemu-system-arm \ | |
28 | qemu-system-x86 \ | |
29 | && rm -rf /var/lib/apt/lists/* | |
ff7c6d11 | 30 | |
e8be2606 FG |
31 | COPY scripts/nodejs.sh /scripts/ |
32 | RUN sh /scripts/nodejs.sh /node | |
33 | ENV PATH="/node/bin:${PATH}" | |
ff7c6d11 | 34 | |
532ac7d7 XL |
35 | WORKDIR /build/ |
36 | COPY scripts/musl-toolchain.sh /build/ | |
37 | RUN bash musl-toolchain.sh x86_64 && rm -rf build | |
38 | WORKDIR / | |
39 | ||
ff7c6d11 XL |
40 | COPY scripts/sccache.sh /scripts/ |
41 | RUN sh /scripts/sccache.sh | |
42 | ||
04c3a46a | 43 | RUN curl -L https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-23/wasi-sdk-23.0-x86_64-linux.tar.gz | \ |
e8be2606 | 44 | tar -xz |
04c3a46a | 45 | ENV WASI_SDK_PATH=/wasi-sdk-23.0-x86_64-linux |
c620b35d | 46 | |
ff7c6d11 | 47 | ENV RUST_CONFIGURE_ARGS \ |
532ac7d7 | 48 | --musl-root-x86_64=/usr/local/x86_64-linux-musl \ |
e8be2606 | 49 | --set rust.lld |
ff7c6d11 | 50 | |
83c7162d XL |
51 | # Some run-make tests have assertions about code size, and enabling debug |
52 | # assertions in libstd causes the binary to be much bigger than it would | |
53 | # otherwise normally be. We already test libstd with debug assertions in lots of | |
54 | # other contexts as well | |
55 | ENV NO_DEBUG_ASSERTIONS=1 | |
3c0e092e | 56 | ENV NO_OVERFLOW_CHECKS=1 |
83c7162d | 57 | |
e8be2606 | 58 | RUN curl -L https://github.com/bytecodealliance/wasmtime/releases/download/v19.0.0/wasmtime-v19.0.0-x86_64-linux.tar.xz | \ |
c620b35d | 59 | tar -xJ |
e8be2606 | 60 | ENV PATH "$PATH:/wasmtime-v19.0.0-x86_64-linux" |
c620b35d FG |
61 | |
62 | ENV WASM_TARGETS=wasm32-wasip1 | |
1b1a35ee | 63 | ENV WASM_SCRIPT python3 /checkout/x.py --stage 2 test --host='' --target $WASM_TARGETS \ |
9c376795 FG |
64 | tests/run-make \ |
65 | tests/ui \ | |
66 | tests/mir-opt \ | |
67 | tests/codegen-units \ | |
add651ee FG |
68 | tests/codegen \ |
69 | tests/assembly \ | |
3dfed10e | 70 | library/core |
9fa01778 XL |
71 | |
72 | ENV NVPTX_TARGETS=nvptx64-nvidia-cuda | |
1b1a35ee | 73 | ENV NVPTX_SCRIPT python3 /checkout/x.py --stage 2 test --host='' --target $NVPTX_TARGETS \ |
9c376795 FG |
74 | tests/run-make \ |
75 | tests/assembly | |
532ac7d7 XL |
76 | |
77 | ENV MUSL_TARGETS=x86_64-unknown-linux-musl \ | |
78 | CC_x86_64_unknown_linux_musl=x86_64-linux-musl-gcc \ | |
79 | CXX_x86_64_unknown_linux_musl=x86_64-linux-musl-g++ | |
1b1a35ee | 80 | ENV MUSL_SCRIPT python3 /checkout/x.py --stage 2 test --host='' --target $MUSL_TARGETS |
9fa01778 | 81 | |
487cf647 FG |
82 | COPY host-x86_64/test-various/uefi_qemu_test /uefi_qemu_test |
83 | ENV UEFI_TARGETS=aarch64-unknown-uefi,i686-unknown-uefi,x86_64-unknown-uefi \ | |
84 | CC_aarch64_unknown_uefi=clang-11 \ | |
85 | CXX_aarch64_unknown_uefi=clang++-11 \ | |
86 | CC_i686_unknown_uefi=clang-11 \ | |
87 | CXX_i686_unknown_uefi=clang++-11 \ | |
88 | CC_x86_64_unknown_uefi=clang-11 \ | |
89 | CXX_x86_64_unknown_uefi=clang++-11 | |
90 | ENV UEFI_SCRIPT python3 /checkout/x.py --stage 2 build --host='' --target $UEFI_TARGETS && \ | |
91 | python3 -u /uefi_qemu_test/run.py | |
92 | ||
93 | ENV SCRIPT $WASM_SCRIPT && $NVPTX_SCRIPT && $MUSL_SCRIPT && $UEFI_SCRIPT |