2018-10-08 19:07:42 +00:00
|
|
|
# This image can be used to build an Android app using the NDK, since $ANDROID_HOME is set.
|
|
|
|
# The only "Skia-specific" thing is the depot_tools, everything else is pretty generic.
|
|
|
|
#
|
|
|
|
# The base Docker image (butomo1989/docker-android-x86-8.1:1.4-p1) has an android emulator
|
|
|
|
# that can be run by doing the following
|
|
|
|
# docker run --privileged -d --name android_em -e DEVICE="Samsung Galaxy S6" butomo1989/docker-android-x86-8.1:1.4-p1
|
|
|
|
# Then, the running container can be attached to by:
|
|
|
|
# docker exec -it android_em /bin/bash
|
|
|
|
# Of course, this Docker image can also do that, it's just a bit heavier for "emulation only"
|
|
|
|
# tasks.
|
|
|
|
|
|
|
|
FROM butomo1989/docker-android-x86-8.1:1.4-p1
|
|
|
|
|
|
|
|
RUN apt-get update && apt-get upgrade -y && \
|
|
|
|
apt-get install -y \
|
|
|
|
clang-6.0 \
|
|
|
|
git \
|
|
|
|
python
|
|
|
|
|
|
|
|
RUN git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git /opt/depot_tools
|
|
|
|
|
|
|
|
WORKDIR /root
|
|
|
|
|
|
|
|
RUN wget -O /root/android-ndk-r18-linux-x86_64.zip https://storage.googleapis.com/skia-cdn/android-sdk/android-ndk-r18-linux-x86_64.zip && \
|
|
|
|
unzip /root/android-ndk-r18-linux-x86_64.zip && \
|
|
|
|
rm -f /root/android-ndk-r18-linux-x86_64.zip
|
|
|
|
|
2019-01-22 23:09:30 +00:00
|
|
|
# "yes" agrees to the license. (You might think it's waiting for input, but it's not.)
|
|
|
|
RUN yes | sdkmanager ndk-bundle "lldb;3.1" "cmake;3.6.4111459"
|
2018-10-08 19:07:42 +00:00
|
|
|
|
|
|
|
RUN update-alternatives --install /usr/bin/cc cc /usr/lib/llvm-6.0/bin/clang 20 && \
|
|
|
|
update-alternatives --install /usr/bin/c++ c++ /usr/lib/llvm-6.0/bin/clang++ 20
|
|
|
|
|
|
|
|
ENV CC="/usr/lib/llvm-6.0/bin/clang" \
|
|
|
|
CXX="/usr/lib/llvm-6.0/bin/clang++" \
|
|
|
|
PATH=/usr/lib/llvm-6.0/bin:$PATH
|
|
|
|
|
|
|
|
ENV PATH=$PATH:/opt/depot_tools
|
|
|
|
|
|
|
|
ENV ANDROID_NDK=/root/android-ndk-r18
|