about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorPietro Albini <pietro@pietroalbini.org>2020-06-23 12:33:22 +0200
committerPietro Albini <pietro@pietroalbini.org>2020-07-03 09:34:31 +0200
commit65f2dce042182003d83b5ed2a59e0f43521869ac (patch)
tree152cbd24d7700d9113f15be992f4160b63a05216 /src
parente1ea006701f99455647a007546eafe45a0cfe162 (diff)
downloadrust-65f2dce042182003d83b5ed2a59e0f43521869ac.tar.gz
rust-65f2dce042182003d83b5ed2a59e0f43521869ac.zip
ci: add native aarch64-gnu docker builder
Diffstat (limited to 'src')
-rw-r--r--src/ci/docker/host-aarch64/aarch64-gnu/Dockerfile26
-rw-r--r--src/ci/docker/scripts/sccache.sh14
2 files changed, 38 insertions, 2 deletions
diff --git a/src/ci/docker/host-aarch64/aarch64-gnu/Dockerfile b/src/ci/docker/host-aarch64/aarch64-gnu/Dockerfile
new file mode 100644
index 00000000000..114ac832cf5
--- /dev/null
+++ b/src/ci/docker/host-aarch64/aarch64-gnu/Dockerfile
@@ -0,0 +1,26 @@
+FROM ubuntu:20.04
+
+RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
+  g++ \
+  make \
+  file \
+  curl \
+  ca-certificates \
+  python3 \
+  git \
+  cmake \
+  sudo \
+  gdb \
+  libssl-dev \
+  pkg-config \
+  xz-utils
+
+COPY scripts/sccache.sh /scripts/
+RUN sh /scripts/sccache.sh
+
+ENV RUST_CONFIGURE_ARGS \
+ --build=aarch64-unknown-linux-gnu \
+ --enable-sanitizers \
+ --enable-profiler \
+ --enable-compiler-docs
+ENV SCRIPT python3 ../x.py test
diff --git a/src/ci/docker/scripts/sccache.sh b/src/ci/docker/scripts/sccache.sh
index 552afbfee7c..cebba57344b 100644
--- a/src/ci/docker/scripts/sccache.sh
+++ b/src/ci/docker/scripts/sccache.sh
@@ -1,6 +1,16 @@
 set -ex
 
-curl -fo /usr/local/bin/sccache \
-  https://ci-mirrors.rust-lang.org/rustc/2018-04-02-sccache-x86_64-unknown-linux-musl
+case "$(uname -m)" in
+    x86_64)
+        url="https://ci-mirrors.rust-lang.org/rustc/2018-04-02-sccache-x86_64-unknown-linux-musl"
+        ;;
+    aarch64)
+        url="https://ci-mirrors.rust-lang.org/rustc/2019-12-17-sccache-aarch64-unknown-linux-gnu"
+        ;;
+    *)
+        echo "unsupported architecture: $(uname -m)"
+        exit 1
+esac
 
+curl -fo /usr/local/bin/sccache "${url}"
 chmod +x /usr/local/bin/sccache