mirror of
https://github.com/bensuperpc/dockcross.git
synced 2024-11-13 22:51:31 +01:00
cfcc7d6700
This commit build each images with the following arguments: * IMAGE: Name of the image (e.g dockcross/base, dockcross/manylinux-x64, ...) * VCS_REF: dockcross/dockcross commit from which this image is built * VCS_URL: this repository obtained reading remote.origin.url * BUILD_DATE: Date and time when the build was initiated Then, within the Dockerfile, the metadata are associated with the image using the "LABEL" instruction. See https://docs.docker.com/engine/reference/builder/#/label The corresponding labels can be found here: http://label-schema.org/rc1/#build-time-labels See #28
84 lines
2.1 KiB
Docker
84 lines
2.1 KiB
Docker
FROM dockcross/base
|
|
MAINTAINER Matt McCormick "matt.mccormick@kitware.com"
|
|
|
|
# WINE is used as an emulator for try_run and tests with CMake.
|
|
# Other dependencies are from the listed MXE requirements:
|
|
# http://mxe.cc/#requirements
|
|
# 'cmake' is omitted because it is installed from source in the base image
|
|
RUN apt-get update && apt-get -y --force-yes install \
|
|
autoconf \
|
|
automake \
|
|
autopoint \
|
|
bash \
|
|
bison \
|
|
bzip2 \
|
|
flex \
|
|
gettext \
|
|
git \
|
|
g++ \
|
|
g++-multilib \
|
|
gperf \
|
|
intltool \
|
|
libffi-dev \
|
|
libgdk-pixbuf2.0-dev \
|
|
libtool-bin \
|
|
libltdl-dev \
|
|
libssl-dev \
|
|
libxml-parser-perl \
|
|
libc6-dev-i386 \
|
|
make \
|
|
openssl \
|
|
p7zip-full \
|
|
patch \
|
|
perl \
|
|
pkg-config \
|
|
python \
|
|
ruby \
|
|
scons \
|
|
sed \
|
|
unzip \
|
|
wget \
|
|
wine \
|
|
xz-utils
|
|
# Set up wine
|
|
RUN dpkg --add-architecture i386 && \
|
|
apt-get update && \
|
|
apt-get install -y wine32
|
|
ENV WINEARCH win32
|
|
RUN wine hostname
|
|
|
|
WORKDIR /usr/src
|
|
# mxe master 2016-10-25
|
|
RUN git clone https://github.com/mxe/mxe.git && \
|
|
cd mxe && \
|
|
git checkout 2c8b747d9cf58672040ff7443d2c365dba978fa5
|
|
WORKDIR /usr/src/mxe
|
|
COPY settings.mk /usr/src/mxe/
|
|
RUN make -j$(nproc)
|
|
|
|
ENV PATH ${PATH}:/usr/src/mxe/usr/bin
|
|
ENV CROSS_TRIPLE i686-w64-mingw32.static
|
|
ENV AS=/usr/src/mxe/usr/bin/${CROSS_TRIPLE}-as \
|
|
AR=/usr/src/mxe/usr/bin/${CROSS_TRIPLE}-ar \
|
|
CC=/usr/src/mxe/usr/bin/${CROSS_TRIPLE}-gcc \
|
|
CPP=/usr/src/mxe/usr/bin/${CROSS_TRIPLE}-cpp \
|
|
CXX=/usr/src/mxe/usr/bin/${CROSS_TRIPLE}-g++ \
|
|
LD=/usr/src/mxe/usr/bin/${CROSS_TRIPLE}-ld
|
|
|
|
ENV DEFAULT_DOCKCROSS_IMAGE dockcross/windows-x86
|
|
WORKDIR /work
|
|
|
|
ENV CMAKE_TOOLCHAIN_FILE /usr/src/mxe/usr/i686-w64-mingw32.static/share/cmake/mxe-conf.cmake
|
|
RUN echo 'set(CMAKE_CROSSCOMPILING_EMULATOR "/usr/bin/wine")' >> ${CMAKE_TOOLCHAIN_FILE}
|
|
|
|
# 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"
|