mirror of
https://github.com/bensuperpc/dockcross.git
synced 2025-06-21 02:13:34 +02:00
add support for manylinux2014-aarch64
This commit is contained in:

committed by
Jean-Christophe Fillion-Robin

parent
35db3a37f6
commit
fdb8d43e34
53
manylinux2014-aarch64/Dockerfile.in
Normal file
53
manylinux2014-aarch64/Dockerfile.in
Normal file
@ -0,0 +1,53 @@
|
||||
# For manylinux2014-aarch64, cross-compilation will be hosted at x86_64 using manylinux2014 x86_64 image to generate target for aarch64. Toolchain available at https://github.com/pypa/manylinux/blob/manylinux2014/docker/Dockerfile-aarch64, is for host aarch64.
|
||||
FROM dockcross/manylinux2014-x64
|
||||
|
||||
# This is for 64-bit ARM Manylinux machine
|
||||
|
||||
#include "common-manylinux.crosstool"
|
||||
|
||||
# The cross-compiling emulator
|
||||
RUN \
|
||||
yum update && \
|
||||
yum -y install \
|
||||
qemu-user \
|
||||
qemu-system-arm && \
|
||||
yum clean all
|
||||
|
||||
# The CROSS_TRIPLE is a configured alias of the "aarch64-unknown-linux-gnueabi" target.
|
||||
ENV CROSS_TRIPLE aarch64-unknown-linux-gnueabi
|
||||
|
||||
ENV CROSS_ROOT ${XCC_PREFIX}/${CROSS_TRIPLE}
|
||||
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
||||
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
||||
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
||||
CPP=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-cpp \
|
||||
CXX=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-g++ \
|
||||
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
||||
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
||||
|
||||
ENV QEMU_LD_PREFIX "${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
||||
ENV QEMU_SET_ENV "LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
||||
|
||||
COPY manylinux2014-aarch64/Toolchain.cmake ${CROSS_ROOT}/
|
||||
ENV CMAKE_TOOLCHAIN_FILE ${CROSS_ROOT}/Toolchain.cmake
|
||||
|
||||
ENV PKG_CONFIG_PATH /usr/lib/aarch64-linux-gnu/pkgconfig
|
||||
|
||||
# Linux kernel cross compilation variables
|
||||
ENV PATH ${PATH}:${CROSS_ROOT}/bin
|
||||
ENV CROSS_COMPILE ${CROSS_TRIPLE}-
|
||||
ENV ARCH arm64
|
||||
|
||||
# Build-time metadata as defined at http://label-schema.org
|
||||
ARG BUILD_DATE
|
||||
ARG IMAGE=dockcross/manylinux2014-aarch64
|
||||
ARG VERSION=latest
|
||||
ARG VCS_REF
|
||||
ARG VCS_URL
|
||||
LABEL org.label-schema.build-date=$BUILD_DATE \
|
||||
org.label-schema.name=$IMAGE \
|
||||
org.label-schema.version=$VERSION \
|
||||
org.label-schema.vcs-ref=$VCS_REF \
|
||||
org.label-schema.vcs-url=$VCS_URL \
|
||||
org.label-schema.schema-version="1.0"
|
||||
ENV DEFAULT_DOCKCROSS_IMAGE ${IMAGE}:${VERSION}
|
Reference in New Issue
Block a user