dockcross/android-arm64/Dockerfile
Jean-Christophe Fillion-Robin 2936ea53c7
android=arm64: Fix image build removing "debian-security" from sources.list
This commit is an attempt to fix the following error:

  W: Failed to fetch http://cdn-fastly.deb.debian.org/debian-security/dists/jessie/updates/InRelease  Unable to find expected entry 'main/binary-arm64/Packages' in Release file (Wrong sources.list entry or malformed file)
  E: Some index files failed to download. They have been ignored, or old ones used instead.

Looking at "http://cdn-fastly.deb.debian.org/debian-security/dists/jessie/updates/InRelease", it
doesn't list "arm64", it only lists the following ones:

  Architectures: amd64 armel armhf i386

Considering that the build of June 15 was successful (see https://circleci.com/gh/dockcross/dockcross/1950),
the architecture was most likely dropped in a recent update. It could be
related to the fact security support for Debian Jessie ended on June 17 2018.
See https://en.wikipedia.org/wiki/Debian_version_history#Release_table
2018-07-09 19:05:45 -04:00

57 lines
1.8 KiB
Docker

FROM dockcross/base:latest
MAINTAINER Matt McCormick "matt.mccormick@kitware.com"
RUN \
sed -i '/debian-security/d' /etc/apt/sources.list && \
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 AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-clang \
CPP=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-cpp \
CXX=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-clang++ \
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
ENV ANDROID_NDK_REVISION 16b
ENV ANDROID_NDK_API 21
RUN mkdir -p /build && \
cd /build && \
curl -O https://dl.google.com/android/repository/android-ndk-r${ANDROID_NDK_REVISION}-linux-x86_64.zip && \
unzip ./android-ndk-r${ANDROID_NDK_REVISION}-linux-x86_64.zip && \
cd android-ndk-r${ANDROID_NDK_REVISION} && \
./build/tools/make_standalone_toolchain.py \
--arch arm64 \
--api ${ANDROID_NDK_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 '{}' \;
ENV DEFAULT_DOCKCROSS_IMAGE dockcross/android-arm64
COPY Toolchain.cmake ${CROSS_ROOT}/
ENV CMAKE_TOOLCHAIN_FILE ${CROSS_ROOT}/Toolchain.cmake
# Build-time metadata as defined at http://label-schema.org
ARG BUILD_DATE
ARG IMAGE
ARG VCS_REF
ARG VCS_URL
LABEL org.label-schema.build-date=$BUILD_DATE \
org.label-schema.name=$IMAGE \
org.label-schema.vcs-ref=$VCS_REF \
org.label-schema.vcs-url=$VCS_URL \
org.label-schema.schema-version="1.0"