diff --git a/src/ci/docker/host-x86_64/x86_64-gnu-autodiff/Dockerfile b/src/ci/docker/host-x86_64/x86_64-gnu-autodiff/Dockerfile new file mode 100644 index 0000000000000..f4633f951c645 --- /dev/null +++ b/src/ci/docker/host-x86_64/x86_64-gnu-autodiff/Dockerfile @@ -0,0 +1,37 @@ +FROM ubuntu:24.04 + +ARG DEBIAN_FRONTEND=noninteractive + +RUN apt-get update && apt-get install -y --no-install-recommends \ + g++ \ + make \ + ninja-build \ + file \ + curl \ + ca-certificates \ + python3 \ + git \ + cmake \ + pkg-config \ + xz-utils \ + zlib1g-dev \ + && rm -rf /var/lib/apt/lists/* + +COPY scripts/sccache.sh /scripts/ +RUN sh /scripts/sccache.sh + +COPY scripts/autodiff.sh /scripts/ + +ENV NO_DOWNLOAD_CI_LLVM 1 +ENV CODEGEN_BACKENDS llvm + +ENV RUST_CONFIGURE_ARGS \ + --build=x86_64-unknown-linux-gnu \ + --enable-llvm-enzyme \ + --enable-llvm-link-shared \ + --enable-ninja \ + --enable-option-checking \ + --disable-docs \ + --set llvm.download-ci-llvm=false + +ENV SCRIPT /scripts/autodiff.sh diff --git a/src/ci/docker/scripts/autodiff.sh b/src/ci/docker/scripts/autodiff.sh new file mode 100755 index 0000000000000..78f314316d4cb --- /dev/null +++ b/src/ci/docker/scripts/autodiff.sh @@ -0,0 +1,11 @@ +#!/bin/bash + +set -ex + +../x.py build --stage 1 library + +../x.py test --stage 1 tests/codegen-llvm/autodiff +../x.py test --stage 1 tests/pretty/autodiff +../x.py test --stage 1 tests/ui/autodiff +../x.py test --stage 1 tests/run-make/autodiff +../x.py test --stage 1 tests/ui/feature-gates/feature-gate-autodiff.rs diff --git a/src/ci/github-actions/jobs.yml b/src/ci/github-actions/jobs.yml index 2bdf83a9c006b..7f692f4d03593 100644 --- a/src/ci/github-actions/jobs.yml +++ b/src/ci/github-actions/jobs.yml @@ -142,6 +142,8 @@ pr: <<: *job-linux-4c - name: x86_64-gnu-miri <<: *job-linux-4c + - name: x86_64-gnu-autodiff # should we move this to auto: ? + <<: *job-linux-4c - name: x86_64-gnu-gcc doc_url: https://rustc-dev-guide.rust-lang.org/tests/codegen-backend-tests/cg_gcc.html env: