ARG ORG=dockcross
FROM ${ORG}/base:latest
MAINTAINER Matt McCormick "matt@mmmccormick.com"
RUN \
  echo Enabled: no >> /etc/apt/sources.list.d/debian.sources && \
  dpkg --add-architecture arm64 && \
  apt-get update

# The cross-compiling emulator
RUN apt-get update && apt-get install -y \
  qemu-user \
  qemu-user-static \
  unzip

ENV CROSS_TRIPLE=aarch64-linux-android
ENV CROSS_ROOT=/usr/${CROSS_TRIPLE}
ENV ANDROID_NDK=${CROSS_ROOT}
ENV AS=${CROSS_ROOT}/bin/llvm-as \
    AR=${CROSS_ROOT}/bin/llvm-ar \
    CC=${CROSS_ROOT}/bin/clang \
    CXX=${CROSS_ROOT}/bin/clang++ \
    LD=${CROSS_ROOT}/bin/ld

ENV ANDROID_NDK_REVISION 25b
ENV ANDROID_API 23

RUN mkdir -p /build && \
    cd /build && \
    curl -O https://dl.google.com/android/repository/android-ndk-r${ANDROID_NDK_REVISION}-linux.zip && \
    unzip ./android-ndk-r${ANDROID_NDK_REVISION}-linux.zip && \
    cd android-ndk-r${ANDROID_NDK_REVISION} && \
    ./build/tools/make_standalone_toolchain.py \
      --arch arm64 \
      --api ${ANDROID_API} \
      --stl=libc++ \
      --install-dir=${CROSS_ROOT} && \
    cd / && \
    rm -rf /build && \
    find ${CROSS_ROOT} -exec chmod a+r '{}' \; && \
    find ${CROSS_ROOT} -executable -exec chmod a+x '{}' \;

# Prepare Rust
ENV PATH="/root/.cargo/bin/:$PATH"
RUN rustup target add aarch64-linux-android
COPY config.toml /root/.cargo/

# Prepare CMake
COPY Toolchain.cmake ${CROSS_ROOT}/
ENV CMAKE_TOOLCHAIN_FILE ${CROSS_ROOT}/Toolchain.cmake

#include "common.label-and-env"