docker: Bump the base images to Ubuntu 22.04

This raises the versions of bundled software, providing e.g.
autoconf 2.71, which is needed for Python 3.12.

As the releases are built (without a surrounding extra container)
on GitHub Actions these days, we don't need to hold the docker
images back to an old version for the sake of compatibility;
instead, updating to a newer version provides more modern tools
for users of the docker image.
This commit is contained in:
Martin Storsjö committed 2024-02-20 14:33:13 +02:00
1 parent 4dbd39ecbf
commit 373c32f91a
5 files changed
+4 -46

No files matched your search

+1 -11
View File
@@ -1,4 +1,4 @@
FROM ubuntu:20.04
FROM ubuntu:22.04
RUN apt-get update -qq && \
DEBIAN_FRONTEND="noninteractive" apt-get install -qqy --no-install-recommends \
@@ -8,16 +8,6 @@ RUN apt-get update -qq && \
apt-get clean -y && \
rm -rf /var/lib/apt/lists/*
# Manually install a newer version of CMake; this is needed since building
# LLVM requires CMake 3.20, while Ubuntu 20.04 ships with 3.16.3. If
# updating to a newer distribution, this can be dropped.
RUN cd /opt && \
curl -LO https://github.com/Kitware/CMake/releases/download/v3.26.4/cmake-3.26.4-Linux-$(uname -m).tar.gz && \
tar -zxf cmake-*.tar.gz && \
rm cmake-*.tar.gz && \
mv cmake-* cmake
ENV PATH=/opt/cmake/bin:$PATH
RUN git config --global user.name "LLVM MinGW" && \
git config --global user.email root@localhost
-12
View File
@@ -16,18 +16,6 @@ RUN apt-get update -qq && \
apt-get clean -y && \
rm -rf /var/lib/apt/lists/*
# Install Autoconf 2.71. Ubuntu 20.04 comes with Autoconf 2.69, but
# libffi 3.4.3 or newer requres Autoconf 2.71.
RUN curl -LO https://ftp.gnu.org/gnu/autoconf/autoconf-2.71.tar.xz && \
tar -Jxvf autoconf-*.tar.xz && \
rm autoconf-*.tar.xz && \
cd autoconf-* && \
./configure --prefix=/opt/autotools && \
make -j$(nproc) install && \
rm -rf autoconf-*
ENV PATH=/opt/autotools/bin:$PATH
COPY build-python.sh .
ARG WITH_PYTHON
+1 -11
View File
@@ -1,4 +1,4 @@
FROM ubuntu:20.04
FROM ubuntu:22.04
RUN apt-get update -qq && \
DEBIAN_FRONTEND="noninteractive" apt-get install -qqy --no-install-recommends \
@@ -8,16 +8,6 @@ RUN apt-get update -qq && \
apt-get clean -y && \
rm -rf /var/lib/apt/lists/*
# Manually install a newer version of CMake; this is needed since building
# LLVM requires CMake 3.20, while Ubuntu 20.04 ships with 3.16.3. If
# updating to a newer distribution, this can be dropped.
RUN cd /opt && \
curl -LO https://github.com/Kitware/CMake/releases/download/v3.26.4/cmake-3.26.4-Linux-$(uname -m).tar.gz && \
tar -zxf cmake-*.tar.gz && \
rm cmake-*.tar.gz && \
mv cmake-* cmake
ENV PATH=/opt/cmake/bin:$PATH
RUN git config --global user.name "LLVM MinGW" && \
git config --global user.email root@localhost
+1 -11
View File
@@ -1,4 +1,4 @@
FROM ubuntu:20.04
FROM ubuntu:22.04
RUN apt-get update -qq && \
DEBIAN_FRONTEND="noninteractive" apt-get install -qqy --no-install-recommends \
@@ -8,16 +8,6 @@ RUN apt-get update -qq && \
apt-get clean -y && \
rm -rf /var/lib/apt/lists/*
# Manually install a newer version of CMake; this is needed since building
# LLVM requires CMake 3.20, while Ubuntu 20.04 ships with 3.16.3. If
# updating to a newer distribution, this can be dropped.
RUN cd /opt && \
curl -LO https://github.com/Kitware/CMake/releases/download/v3.26.4/cmake-3.26.4-Linux-$(uname -m).tar.gz && \
tar -zxf cmake-*.tar.gz && \
rm cmake-*.tar.gz && \
mv cmake-* cmake
ENV PATH=/opt/cmake/bin:$PATH
RUN git config --global user.name "LLVM MinGW" && \
git config --global user.email root@localhost
+1 -1
View File
@@ -29,7 +29,7 @@ fi
time docker build -f Dockerfile . -t mstorsjo/llvm-mingw:latest -t mstorsjo/llvm-mingw:$TAG
DISTRO=ubuntu-20.04-$(uname -m)
DISTRO=ubuntu-22.04-$(uname -m)
docker run --rm mstorsjo/llvm-mingw:latest sh -c "cd /opt && mv llvm-mingw llvm-mingw-$TAG-ucrt-$DISTRO && tar -Jcvf - --format=ustar --numeric-owner --owner=0 --group=0 llvm-mingw-$TAG-ucrt-$DISTRO" > llvm-mingw-$TAG-ucrt-$DISTRO.tar.xz
if [ -n "$NATIVEONLY" ]; then