]> git.lizzy.rs Git - rust.git/blob - src/ci/docker/dist-android/Dockerfile
Rollup merge of #41249 - GuillaumeGomez:rustdoc-render, r=steveklabnik,frewsxcv
[rust.git] / src / ci / docker / dist-android / Dockerfile
1 FROM ubuntu:16.04
2
3 RUN dpkg --add-architecture i386 && \
4     apt-get update && \
5     apt-get install -y --no-install-recommends \
6   g++ \
7   make \
8   file \
9   curl \
10   ca-certificates \
11   python2.7 \
12   git \
13   cmake \
14   unzip \
15   expect \
16   openjdk-9-jre \
17   sudo \
18   libstdc++6:i386 \
19   xz-utils \
20   libssl-dev \
21   pkg-config
22
23 WORKDIR /android/
24 ENV PATH=$PATH:/android/ndk-arm-9/bin:/android/sdk/tools:/android/sdk/platform-tools
25
26 COPY install-ndk.sh /android/
27 RUN sh /android/install-ndk.sh
28
29 RUN curl -OL https://github.com/Yelp/dumb-init/releases/download/v1.2.0/dumb-init_1.2.0_amd64.deb && \
30     dpkg -i dumb-init_*.deb && \
31     rm dumb-init_*.deb
32 ENTRYPOINT ["/usr/bin/dumb-init", "--"]
33
34 RUN curl -o /usr/local/bin/sccache \
35       https://s3.amazonaws.com/rust-lang-ci/rust-ci-mirror/2017-04-04-sccache-x86_64-unknown-linux-musl && \
36       chmod +x /usr/local/bin/sccache
37
38 ENV TARGETS=arm-linux-androideabi
39 ENV TARGETS=$TARGETS,i686-linux-android
40 ENV TARGETS=$TARGETS,aarch64-linux-android
41 ENV TARGETS=$TARGETS,armv7-linux-androideabi
42
43 ENV RUST_CONFIGURE_ARGS \
44       --target=$TARGETS \
45       --enable-extended \
46       --arm-linux-androideabi-ndk=/android/ndk-arm-9 \
47       --armv7-linux-androideabi-ndk=/android/ndk-arm-9 \
48       --i686-linux-android-ndk=/android/ndk-x86-9 \
49       --aarch64-linux-android-ndk=/android/ndk-aarch64
50
51 ENV SCRIPT python2.7 ../x.py dist --target $TARGETS