From: Pietro Monteiro <[email protected]>
contrib/ChangeLog:
* ci-container/essential/Containerfile: New file.
Signed-off-by: Pietro Monteiro <[email protected]>
---
contrib/ci-container/essential/Containerfile | 80 ++++++++++++++++++++
1 file changed, 80 insertions(+)
create mode 100644 contrib/ci-container/essential/Containerfile
diff --git a/contrib/ci-container/essential/Containerfile
b/contrib/ci-container/essential/Containerfile
new file mode 100644
index 000000000000..8bd160d94489
--- /dev/null
+++ b/contrib/ci-container/essential/Containerfile
@@ -0,0 +1,80 @@
+FROM debian:stable-slim
+
+# Run time deps
+RUN set -eux; \
+ apt-get update; \
+ apt-get upgrade -y; \
+ apt-get install -y --no-install-recommends \
+ autogen \
+ ca-certificates \
+ git \
+ m4 \
+ nodejs \
+ perl \
+ python3 \
+ python3-git \
+ python3-termcolor \
+ python3-unidiff \
+ wget; \
+ rm -rf /var/lib/apt/lists/*
+
+# Get and install the autoregen.py script
+RUN wget -O /usr/local/bin/autoregen.py \
+
'https://sourceware.org/cgit/builder/plain/builder/containers/autoregen.py' \
+ && chmod 755 /usr/local/bin/autoregen.py
+
+# Build and install autoconf-2.69 and automake-1.15.1
+# Automake depends on autoconf, which is built and installed first
+RUN set -eux; \
+ \
+ savedAptMark="$(apt-mark showmanual)"; \
+ apt-get update; \
+ apt-get install -y --no-install-recommends \
+ build-essential \
+ ca-certificates \
+ gzip \
+ m4 \
+ tar \
+ wget \
+ ; \
+ rm -r /var/lib/apt/lists/*; \
+ \
+ builddir="$(mktemp -d)"; \
+ cd "${builddir}"; \
+ \
+ wget https://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz; \
+ tar xf autoconf-2.69.tar.gz; \
+ cd autoconf-2.69; \
+ ./configure --program-suffix=-2.69; \
+ make; \
+ make install; \
+ cd .. ;\
+ rm -rf autoconf*; \
+ cd /usr/local/bin; \
+ ln -s autoconf-2.69 autoconf; \
+ ln -s autoheader-2.69 autoheader; \
+ ln -s autom4te-2.69 autom4te; \
+ ln -s autoreconf-2.69 autoreconf; \
+ ln -s autoscan-2.69 autoscan; \
+ ln -s autoupdate-2.69 autoupdate; \
+ \
+ cd "${builddir}"; \
+ wget https://ftp.gnu.org/gnu/automake/automake-1.15.1.tar.gz; \
+ tar xf automake-1.15.1.tar.gz; \
+ cd automake-1.15.1; \
+ ./configure --program-suffix=-1.15.1; \
+ make; \
+ make install; \
+ cd ..; \
+ rm -rf automake*; \
+ cd /usr/local/bin; \
+ ln -s aclocal-1.15.1 aclocal-1.15; \
+ ln -s aclocal-1.15.1 aclocal; \
+ ln -s automake-1.15.1 automake-1.15; \
+ ln -s automake-1.15.1 automake; \
+ \
+ rm -rf "${builddir}"; \
+ \
+ apt-mark auto '.*' > /dev/null; \
+ [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; \
+ apt-get purge -y --auto-remove -o
APT::AutoRemove::RecommendsImportant=false
--
2.52.0