Commit 84035e01 authored by jdgleaver's avatar jdgleaver
Browse files

Initial commit

parent 82d95938
Pipeline #9677 failed with stage
in 2 minutes and 7 seconds
docker-build-master:
# Official docker image.
image: docker:latest
stage: build
services:
- docker:dind
before_script:
- docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
script:
- docker build --pull -t "$CI_REGISTRY_IMAGE" --build-arg NUMPROC=$(($(nproc)/5)) .
- docker push "$CI_REGISTRY_IMAGE"
- docker build --pull -t "$CI_REGISTRY_IMAGE:gcc10" --build-arg NUMPROC=$(($(nproc)/5)) --file Dockerfile.gcc10 .
- docker push "$CI_REGISTRY_IMAGE:gcc10"
only:
- master
docker-build:
# Official docker image.
image: docker:latest
stage: build
services:
- docker:dind
before_script:
- docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
script:
- docker build --pull -t "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG" --build-arg NUMPROC=$(($(nproc)/5)) .
- docker push "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG"
- docker build --pull -t "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG-gcc10" --build-arg NUMPROC=$(($(nproc)/5)) --file Dockerfile.gcc10 .
- docker push "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG-gcc10"
except:
- master
FROM ubuntu:bionic
ENV DEBIAN_FRONTEND="noninteractive"
ARG uid
ARG branch=master
ENV branch=$branch
ENV PACKAGES \
build-essential \
bash \
ccache \
curl \
gcc \
g++ \
gettext \
git \
gnupg \
gnupg2 \
make \
cmake \
nsis \
python3-yaml \
python3-sphinx \
python3-setuptools \
texinfo
RUN set -eux; \
apt-get update; \
apt-get -y install $PACKAGES; \
useradd -d /developer -m developer; \
chown -R developer:developer /developer
ENV MXE_PACKAGES \
mxe-x86-64-w64-mingw32.static-bzip2 \
mxe-x86-64-w64-mingw32.static-curl \
mxe-x86-64-w64-mingw32.static-gcc \
mxe-x86-64-w64-mingw32.static-glib \
mxe-x86-64-w64-mingw32.static-gmp \
mxe-x86-64-w64-mingw32.static-gnutls \
mxe-x86-64-w64-mingw32.static-libpng \
mxe-x86-64-w64-mingw32.static-nettle \
mxe-x86-64-w64-mingw32.static-nsis \
mxe-x86-64-w64-mingw32.static-pixman \
mxe-x86-64-w64-mingw32.static-pkgconf \
mxe-x86-64-w64-mingw32.static-dlfcn-win32 \
mxe-x86-64-w64-mingw32.static-libsndfile \
mxe-x86-64-w64-mingw32.static-sdl2 \
mxe-x86-64-w64-mingw32.static-zlib \
mxe-x86-64-w64-mingw32.static-libxml2 \
mxe-x86-64-w64-mingw32.static-freetype \
mxe-x86-64-w64-mingw32.static-fribidi \
mxe-x86-64-w64-mingw32.static-cmake \
mxe-x86-64-w64-mingw32.static-ninja \
mxe-x86-64-w64-mingw32.static-nasm \
mxe-i686-w64-mingw32.static-bzip2 \
mxe-i686-w64-mingw32.static-curl \
mxe-i686-w64-mingw32.static-gcc \
mxe-i686-w64-mingw32.static-glib \
mxe-i686-w64-mingw32.static-gmp \
mxe-i686-w64-mingw32.static-gnutls \
mxe-i686-w64-mingw32.static-libpng \
mxe-i686-w64-mingw32.static-nettle \
mxe-i686-w64-mingw32.static-nsis \
mxe-i686-w64-mingw32.static-pixman \
mxe-i686-w64-mingw32.static-pkgconf \
mxe-i686-w64-mingw32.static-dlfcn-win32 \
mxe-i686-w64-mingw32.static-libsndfile \
mxe-i686-w64-mingw32.static-sdl2 \
mxe-i686-w64-mingw32.static-zlib \
mxe-i686-w64-mingw32.static-libxml2 \
mxe-i686-w64-mingw32.static-freetype \
mxe-i686-w64-mingw32.static-fribidi \
mxe-i686-w64-mingw32.static-cmake \
mxe-i686-w64-mingw32.static-ninja \
mxe-i686-w64-mingw32.static-nasm
RUN set -eux; \
echo "deb http://pkg.mxe.cc/repos/apt bionic main" > /etc/apt/sources.list.d/mxeapt.list; \
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys C6BF758A33A3A276; \
apt-get update; \
apt-get install -y $MXE_PACKAGES; \
apt-get -y autoremove; \
apt-get -y clean; \
rm -rf /var/lib/apt/lists/*
RUN echo "developer:developer" | chpasswd && adduser developer sudo
ENV HOME=/developer
ENV PATH=/usr/lib/mxe/usr/bin:$PATH
USER root
WORKDIR /developer
VOLUME /developer
CMD /bin/bash
FROM ubuntu:bionic
ENV DEBIAN_FRONTEND="noninteractive"
ARG uid
ARG branch=master
ENV branch=$branch
ARG NUMPROC
ARG MXE_GCC_VERSION=gcc10
ENV PACKAGES \
build-essential \
bash \
curl \
ccache \
gcc \
g++ \
g++-multilib \
gettext \
git \
gnupg \
gnupg2 \
make \
cmake \
nsis \
python \
python2.7 \
python-mako \
python3-pip \
python3-yaml \
python3-sphinx \
python3-setuptools \
texinfo \
autoconf \
automake \
autopoint \
bison \
bzip2 \
flex \
gettext \
gperf \
intltool \
less \
libc6-dev-i386 \
libgdk-pixbuf2.0-dev \
libltdl-dev \
libssl-dev \
libtool \
libtool-bin \
libxml-parser-perl \
lzip \
meson \
ninja-build \
openssl \
p7zip-full \
patch \
perl \
pkg-config \
ruby \
sed \
unzip \
wget \
xz-utils
RUN set -eux; \
apt-get update; \
apt-get -y install $PACKAGES; \
apt-get -y autoremove; \
apt-get -y clean; \
rm -rf /var/lib/apt/lists/*; \
useradd -d /developer -m developer; \
chown -R developer:developer /developer
ENV MXE_PACKAGES \
cc \
cmake \
bzip2 \
curl \
gcc \
glib \
gmp \
gnutls \
libpng \
nettle \
pixman \
pkgconf \
dlfcn-win32 \
libsndfile \
sdl_net \
sdl2 \
zlib \
libxml2 \
freetype \
fribidi \
ninja \
nasm
RUN set -eux; \
cd /usr/lib; \
mkdir mxe; \
cd mxe; \
git init; \
git remote add origin 'https://github.com/mxe/mxe.git'; \
git fetch --depth=1 origin master; \
git checkout master; \
make check-requirements; \
echo '' >> settings.mk; \
echo 'JOBS :=' ${NUMPROC} >> settings.mk; \
echo 'MXE_TMP := /tmp/mxe' >> settings.mk; \
echo 'MXE_TARGETS := x86_64-w64-mingw32.static i686-w64-mingw32.static' >> settings.mk; \
echo 'override MXE_PLUGIN_DIRS += plugins/'${MXE_GCC_VERSION} >> settings.mk; \
echo 'MXE_USE_CCACHE=' >> settings.mk; \
echo '' >> settings.mk; \
echo 'gcc_CONFIGURE_OPTS := --enable-languages=c,c++' >> settings.mk;
RUN set -eux; \
cd /usr/lib/mxe; \
make $MXE_PACKAGES; \
make clean-junk; \
rm -rf pkg/*
RUN echo "developer:developer" | chpasswd && adduser developer sudo
ENV HOME=/developer
ENV PATH=/usr/lib/mxe/usr/bin:$PATH
USER root
WORKDIR /developer
VOLUME /developer
CMD /bin/bash
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment