about summary refs log tree commit diff
path: root/src/ci/docker/arm-android
diff options
context:
space:
mode:
authorAlex Crichton <alex@alexcrichton.com>2016-12-12 11:36:52 -0800
committerAlex Crichton <alex@alexcrichton.com>2016-12-14 15:40:18 -0800
commit96a5fc76dcce1bd6669a9e288721ee6aad521096 (patch)
tree9fb1678923a567cd6de665b3e3acbbb004aace1e /src/ci/docker/arm-android
parent0d558d012a4be0273e547864923bfe29b14e30d5 (diff)
downloadrust-96a5fc76dcce1bd6669a9e288721ee6aad521096.tar.gz
rust-96a5fc76dcce1bd6669a9e288721ee6aad521096.zip
rustbuild: Add sccache support
This commit adds support for sccache, a ccache-like compiler which works on MSVC
and stores results into an S3 bucket. This also switches over all Travis and
AppVeyor automation to using sccache to ensure a shared and unified cache over
time which can be shared across builders.

The support for sccache manifests as a new `--enable-sccache` option which
instructs us to configure LLVM differently to use a 'sccache' binary instead of
a 'ccache' binary. All docker images for Travis builds are updated to download
Mozilla's tooltool builds of sccache onto various containers and systems.
Additionally a new `rust-lang-ci-sccache` bucket is configured to hold all of
our ccache goodies.
Diffstat (limited to 'src/ci/docker/arm-android')
-rw-r--r--src/ci/docker/arm-android/Dockerfile7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/ci/docker/arm-android/Dockerfile b/src/ci/docker/arm-android/Dockerfile
index 5489fb7304d..8911b4ff0cb 100644
--- a/src/ci/docker/arm-android/Dockerfile
+++ b/src/ci/docker/arm-android/Dockerfile
@@ -16,7 +16,8 @@ RUN dpkg --add-architecture i386 && \
   expect \
   openjdk-9-jre \
   sudo \
-  libstdc++6:i386
+  libstdc++6:i386 \
+  xz-utils
 
 WORKDIR /android/
 ENV PATH=$PATH:/android/ndk-arm-9/bin:/android/sdk/tools:/android/sdk/platform-tools
@@ -33,6 +34,10 @@ COPY start-emulator.sh /android/
 
 ENTRYPOINT ["/usr/bin/dumb-init", "--", "/android/start-emulator.sh"]
 
+ENV SCCACHE_DIGEST=7237e38e029342fa27b7ac25412cb9d52554008b12389727320bd533fd7f05b6a96d55485f305caf95e5c8f5f97c3313e10012ccad3e752aba2518f3522ba783
+RUN curl -L https://api.pub.build.mozilla.org/tooltool/sha512/$SCCACHE_DIGEST | \
+      tar xJf - -C /usr/local/bin --strip-components=1
+
 ENV TARGETS=arm-linux-androideabi
 ENV TARGETS=$TARGETS,i686-linux-android
 ENV TARGETS=$TARGETS,aarch64-linux-android