Hi gcc-patches mailing list, pietro <[email protected]> has requested that the following forgejo pull request be published on the mailing list.
Created on: 2025-12-18 23:08:10+00:00 Latest update: 2026-01-08 02:06:53+00:00 Changes: 5 changed files, 435 additions, 0 deletions Head revision: pietro/gcc-TEST ref forge-cfile commit e951f424937d8b81d669bcd1bf29a5b868ad28bc Base revision: gcc/gcc-TEST ref trunk commit cdb15b390035fc4843e11363bcc4e0eff419d6a3 r16-6513-gcdb15b390035fc Merge base: cdb15b390035fc4843e11363bcc4e0eff419d6a3 Full diff url: https://forge.sourceware.org/gcc/gcc-TEST/pulls/132.diff Discussion: https://forge.sourceware.org/gcc/gcc-TEST/pulls/132 Requested Reviewers: rdfm, clyon Add a Containerfile for the forge action and create an action to build it. Currently, the action does not push the built image to a registry. --- Changes since v4: - Use variables for autoconf and automake versions. --- Changes since v3: - Added script to buid images. - Added readme with instructions on how to build images. - Renamed directory to `contrib/ci-containers` --- Changes since v3: - Copy autoregen.py from builder repository. - Squash all commits into one. --- Changes since v2: - Use fedora image to build containers --- Changes since v1: - Added action to build containers Changed files: - A: .forgejo/workflows/build-containers.yaml - A: contrib/ci-containers/README - A: contrib/ci-containers/autoregen/Containerfile - A: contrib/ci-containers/autoregen/autoregen.py - A: contrib/ci-containers/build-image.sh Pietro Monteiro (1): Containerfile for base forge actions .forgejo/workflows/build-containers.yaml | 55 +++++++ contrib/ci-containers/README | 47 ++++++ contrib/ci-containers/autoregen/Containerfile | 83 ++++++++++ contrib/ci-containers/autoregen/autoregen.py | 146 ++++++++++++++++++ contrib/ci-containers/build-image.sh | 104 +++++++++++++ 5 files changed, 435 insertions(+) create mode 100644 .forgejo/workflows/build-containers.yaml create mode 100644 contrib/ci-containers/README create mode 100644 contrib/ci-containers/autoregen/Containerfile create mode 100755 contrib/ci-containers/autoregen/autoregen.py create mode 100755 contrib/ci-containers/build-image.sh Range-diff against v4: 1: c90915df14c0 ! 1: e951f424937d Containerfile for base forge actions @@ contrib/ci-containers/autoregen/Containerfile (new) @@ +FROM debian:stable-slim + ++ARG AUTOCONF_VERSION=2.69 ++ARG AUTOMAKE_VERSION=1.15.1 ++ +# Run time deps +RUN set -eux; \ + apt-get update; \ @@ contrib/ci-containers/autoregen/Containerfile (new) +# Get and install the autoregen.py script +COPY --chmod=755 autoregen.py /usr/local/bin/autoregen.py + -+# Build and install autoconf-2.69 and automake-1.15.1 ++# Build and install autoconf and automake +# Automake depends on autoconf, which is built and installed first +RUN set -eux; \ + \ @@ contrib/ci-containers/autoregen/Containerfile (new) + 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; \ ++ cd "${builddir}"; \ ++ AUTOCONF_VERSION_SHORT="$(echo $AUTOCONF_VERSION | awk -F. '{ print $1 "." $2 }')"; \ ++ wget -q "https://ftp.gnu.org/gnu/autoconf/autoconf-${AUTOCONF_VERSION}.tar.gz"; \ ++ tar xf "autoconf-${AUTOCONF_VERSION}.tar.gz"; \ ++ cd "autoconf-${AUTOCONF_VERSION}"; \ ++ ./configure --program-suffix="-${AUTOCONF_VERSION}"; \ + 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; \ ++ for f in autoconf autoheader autom4te autoreconf autoscan autoupdate ifnames; do \ ++ ln -sv "$f-$AUTOCONF_VERSION" "$f"; \ ++ [ ! "$AUTOCONF_VERSION" = "$AUTOCONF_VERSION_SHORT" ] && \ ++ ln -sv "$f-$AUTOCONF_VERSION" "$f-$AUTOCONF_VERSION_SHORT"; \ ++ done; \ + \ + 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; \ ++ AUTOMAKE_VERSION_SHORT="$(echo $AUTOMAKE_VERSION | awk -F. '{ print $1 "." $2 }')"; \ ++ wget -q "https://ftp.gnu.org/gnu/automake/automake-${AUTOMAKE_VERSION}.tar.gz"; \ ++ tar xf "automake-${AUTOMAKE_VERSION}.tar.gz"; \ ++ cd "automake-${AUTOMAKE_VERSION}"; \ ++ ./configure --program-suffix="-${AUTOMAKE_VERSION}"; \ + 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; \ ++ for f in aclocal automake; do \ ++ ln -sv "$f-$AUTOMAKE_VERSION" "$f"; \ ++ [ ! "$AUTOMAKE_VERSION" = "$AUTOMAKE_VERSION_SHORT" ] && \ ++ ln -sv "$f-$AUTOMAKE_VERSION" "$f-$AUTOMAKE_VERSION_SHORT"; \ ++ done; \ + \ + rm -rf "${builddir}"; \ + \ -- 2.52.0
