mirror of
https://github.com/bensuperpc/dockcross.git
synced 2025-06-21 02:13:34 +02:00
Implement "ct-ng" building, add "linux-mips".
Add a mechanism to construct a full cross-compiler environment using the "crosstool-ng" cross-compiler building utility. This is implemented in the new "common.crosstool" include, and augments the "dockcross/base" base image. Update Makefile to consolidate Dockerfile generation, notably the "sed"-based inclusion directives. Finally, employ all of this to generate a "linux-mips" 32-bit hard-float MIPS cross-compiler Dockcross image.
This commit is contained in:

committed by
Matt McCormick

parent
fd4115953d
commit
7dd46fa045
42
linux-mips/Dockerfile.in
Normal file
42
linux-mips/Dockerfile.in
Normal file
@ -0,0 +1,42 @@
|
||||
FROM dockcross/base:latest
|
||||
|
||||
# This is for 32-bit Big-Endian MIPS devices with hard floating point enabled
|
||||
|
||||
#include "common.crosstool"
|
||||
|
||||
# The cross-compiling emulator
|
||||
RUN apt-get update \
|
||||
&& apt-get install -y \
|
||||
qemu-user \
|
||||
qemu-user-static \
|
||||
&& apt-get clean --yes
|
||||
|
||||
# The CROSS_TRIPLE is a configured alias of the "mips-unknown-linux-gnu" target.
|
||||
ENV CROSS_TRIPLE mips-unknown-linux-gnu
|
||||
|
||||
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
|
||||
|
||||
ENV QEMU_LD_PREFIX "${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
||||
ENV QEMU_SET_ENV "LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
||||
|
||||
ENV DEFAULT_DOCKCROSS_IMAGE dockcross/linux-mips
|
||||
|
||||
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"
|
Reference in New Issue
Block a user