2023-09-15 10:45:49 +00:00
|
|
|
# beacon_chain
|
|
|
|
# Copyright (c) 2021-2023 Status Research & Development GmbH
|
|
|
|
# Licensed and distributed under either of
|
|
|
|
# * MIT license (license terms in the root directory or at https://opensource.org/licenses/MIT).
|
|
|
|
# * Apache v2 license (license terms in the root directory or at https://www.apache.org/licenses/LICENSE-2.0).
|
|
|
|
# at your option. This file may not be copied, modified, or distributed except according to those terms.
|
|
|
|
|
2021-02-02 22:31:01 +00:00
|
|
|
# This Docker image can change from one build to another, because the upstream
|
|
|
|
# Debian/Ubuntu package index is continuously updated and we have to run
|
|
|
|
# `apt-get update` in here.
|
|
|
|
#
|
|
|
|
# The only way to make this a part of our reproducible build system is to build
|
|
|
|
# it once, upload it to Docker Hub and make sure it's being pulled regularly so
|
|
|
|
# it's not deleted after 6 months of inactivity.
|
|
|
|
|
|
|
|
FROM ubuntu:20.04
|
|
|
|
|
|
|
|
SHELL ["/bin/bash", "-c"]
|
|
|
|
|
|
|
|
ENV DEBIAN_FRONTEND=noninteractive TZ="Etc/UTC"
|
|
|
|
RUN \
|
|
|
|
apt-get -qq update \
|
2023-09-15 10:45:49 +00:00
|
|
|
&& apt-get -qq -y install git-lfs gnupg software-properties-common lsb cmake &>/dev/null \
|
2022-03-28 08:03:11 +00:00
|
|
|
&& apt-get -qq -y install \
|
|
|
|
autoconf \
|
|
|
|
automake \
|
|
|
|
autopoint \
|
|
|
|
bison \
|
|
|
|
bzip2 \
|
|
|
|
flex \
|
|
|
|
g++ \
|
|
|
|
g++-multilib \
|
|
|
|
gettext \
|
|
|
|
gperf \
|
|
|
|
intltool \
|
|
|
|
libc6-dev-i386 \
|
|
|
|
libltdl-dev \
|
|
|
|
libssl-dev \
|
|
|
|
libtool-bin \
|
|
|
|
lzip \
|
|
|
|
make \
|
|
|
|
openssl \
|
|
|
|
p7zip-full \
|
|
|
|
patch \
|
|
|
|
perl \
|
|
|
|
python \
|
|
|
|
ruby \
|
|
|
|
sed \
|
|
|
|
unzip \
|
|
|
|
wget \
|
|
|
|
xz-utils &>/dev/null \
|
2021-02-02 22:31:01 +00:00
|
|
|
&& apt-get -qq clean \
|
2022-03-28 08:03:11 +00:00
|
|
|
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* \
|
|
|
|
&& git clone --depth 1 https://github.com/mxe/mxe.git /opt/mxe \
|
|
|
|
&& cd /opt/mxe \
|
|
|
|
&& make -j $(nproc) MXE_TARGETS='x86_64-w64-mingw32.static' MXE_USE_CCACHE='' DONT_CHECK_REQUIREMENTS=1 cc \
|
|
|
|
&& rm -rf /opt/mxe/.log /opt/mxe/pkg
|
2021-02-02 22:31:01 +00:00
|
|
|
|