All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Philippe Mathieu-Daudé" <philmd@linaro.org>
To: qemu-devel@nongnu.org
Cc: "Daniel P. Berrangé" <berrange@redhat.com>,
	"Thomas Huth" <thuth@redhat.com>,
	qemu-arm@nongnu.org, "Paolo Bonzini" <pbonzini@redhat.com>,
	"Gerd Hoffmann" <kraxel@redhat.com>,
	"John Snow" <jsnow@redhat.com>, "Cleber Rosa" <crosa@redhat.com>,
	"Marc-André Lureau" <marcandre.lureau@redhat.com>,
	"Philippe Mathieu-Daudé" <philmd@linaro.org>,
	"Alex Bennée" <alex.bennee@linaro.org>
Subject: [PATCH-for-10.2 1/2] gitlab: Stop cross-testing for 32-bit ARM hosts
Date: Mon, 17 Nov 2025 16:41:53 +0100	[thread overview]
Message-ID: <20251117154154.79090-2-philmd@linaro.org> (raw)
In-Reply-To: <20251117154154.79090-1-philmd@linaro.org>

32-bit host support is deprecated since commit 6d701c9bac1
("meson: Deprecate 32-bit host support"). Next commits will
remove support for 32-bit ARM hosts. Stop cross-building
QEMU on our CI. Remove the CI jobs and related Docker files.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
 configure                                     |   9 -
 .gitlab-ci.d/container-cross.yml              |   6 -
 .gitlab-ci.d/crossbuilds.yml                  |   7 -
 python/qemu/utils/accel.py                    |   1 -
 roms/edk2-build.py                            |   4 -
 .../dockerfiles/debian-armhf-cross.docker     | 188 ------------------
 tests/docker/dockerfiles/debian-bootstrap.pre |   5 +-
 tests/lcitool/refresh                         |   5 -
 8 files changed, 1 insertion(+), 224 deletions(-)
 delete mode 100644 tests/docker/dockerfiles/debian-armhf-cross.docker

diff --git a/configure b/configure
index a2f66f7ff9c..4b8f92e822b 100755
--- a/configure
+++ b/configure
@@ -1334,8 +1334,6 @@ fi
 : ${cross_prefix_aarch64="aarch64-linux-gnu-"}
 : ${cross_prefix_aarch64_be="$cross_prefix_aarch64"}
 : ${cross_prefix_alpha="alpha-linux-gnu-"}
-: ${cross_prefix_arm="arm-linux-gnueabihf-"}
-: ${cross_prefix_armeb="$cross_prefix_arm"}
 : ${cross_prefix_hexagon="hexagon-unknown-linux-musl-"}
 : ${cross_prefix_loongarch64="loongarch64-unknown-linux-gnu-"}
 : ${cross_prefix_hppa="hppa-linux-gnu-"}
@@ -1359,8 +1357,6 @@ fi
 
 : ${cross_cc_aarch64_be="$cross_cc_aarch64"}
 : ${cross_cc_cflags_aarch64_be="-mbig-endian"}
-: ${cross_cc_armeb="$cross_cc_arm"}
-: ${cross_cc_cflags_armeb="-mbig-endian"}
 : ${cross_cc_hexagon="hexagon-unknown-linux-musl-clang"}
 : ${cross_cc_cflags_hexagon="-mv73 -O2 -static"}
 : ${cross_cc_cflags_i386="-m32"}
@@ -1481,11 +1477,6 @@ probe_target_compiler() {
         # We don't have any bigendian build tools so we only use this for AArch64
         container_image=debian-arm64-cross
         ;;
-      arm)
-        # We don't have any bigendian build tools so we only use this for ARM
-        container_image=debian-armhf-cross
-        container_cross_prefix=arm-linux-gnueabihf-
-        ;;
       hexagon)
         container_cross_prefix=hexagon-unknown-linux-musl-
         container_cross_cc=${container_cross_prefix}clang
diff --git a/.gitlab-ci.d/container-cross.yml b/.gitlab-ci.d/container-cross.yml
index 0fd7341afac..e7ce1392770 100644
--- a/.gitlab-ci.d/container-cross.yml
+++ b/.gitlab-ci.d/container-cross.yml
@@ -22,12 +22,6 @@ arm64-debian-cross-container:
   variables:
     NAME: debian-arm64-cross
 
-armhf-debian-cross-container:
-  extends: .container_job_template
-  stage: containers
-  variables:
-    NAME: debian-armhf-cross
-
 hexagon-cross-container:
   extends: .container_job_template
   stage: containers
diff --git a/.gitlab-ci.d/crossbuilds.yml b/.gitlab-ci.d/crossbuilds.yml
index 99dfa7eea6f..e0a68c2023d 100644
--- a/.gitlab-ci.d/crossbuilds.yml
+++ b/.gitlab-ci.d/crossbuilds.yml
@@ -1,13 +1,6 @@
 include:
   - local: '/.gitlab-ci.d/crossbuild-template.yml'
 
-cross-armhf-user:
-  extends: .cross_user_build_job
-  needs:
-    - job: armhf-debian-cross-container
-  variables:
-    IMAGE: debian-armhf-cross
-
 cross-arm64-system:
   extends: .cross_system_build_job
   needs:
diff --git a/python/qemu/utils/accel.py b/python/qemu/utils/accel.py
index f915b646692..e6fca304b33 100644
--- a/python/qemu/utils/accel.py
+++ b/python/qemu/utils/accel.py
@@ -26,7 +26,6 @@
 # support which often includes its 32 bit cousin.
 ADDITIONAL_ARCHES = {
     "x86_64": "i386",
-    "aarch64": "armhf",
     "ppc64le": "ppc64",
 }
 
diff --git a/roms/edk2-build.py b/roms/edk2-build.py
index c7e9dc58ec0..683c622c3d6 100755
--- a/roms/edk2-build.py
+++ b/roms/edk2-build.py
@@ -289,10 +289,6 @@ def prepare_env(cfg, silent = False):
     os.environ['PYTHONHASHSEED'] = '1'
 
     # for cross builds
-    if binary_exists('arm-linux-gnueabi-gcc'):
-        # ubuntu
-        os.environ['GCC5_ARM_PREFIX'] = 'arm-linux-gnueabi-'
-        os.environ['GCC_ARM_PREFIX'] = 'arm-linux-gnueabi-'
     if binary_exists('loongarch64-linux-gnu-gcc'):
         os.environ['GCC5_LOONGARCH64_PREFIX'] = 'loongarch64-linux-gnu-'
         os.environ['GCC_LOONGARCH64_PREFIX'] = 'loongarch64-linux-gnu-'
diff --git a/tests/docker/dockerfiles/debian-armhf-cross.docker b/tests/docker/dockerfiles/debian-armhf-cross.docker
deleted file mode 100644
index 627d41c6dee..00000000000
--- a/tests/docker/dockerfiles/debian-armhf-cross.docker
+++ /dev/null
@@ -1,188 +0,0 @@
-# THIS FILE WAS AUTO-GENERATED
-#
-#  $ lcitool dockerfile --layers all --cross-arch armv7l debian-13 qemu
-#
-# https://gitlab.com/libvirt/libvirt-ci
-
-FROM docker.io/library/debian:13-slim
-
-RUN export DEBIAN_FRONTEND=noninteractive && \
-    apt-get update && \
-    apt-get install -y eatmydata && \
-    eatmydata apt-get dist-upgrade -y && \
-    eatmydata apt-get install --no-install-recommends -y \
-                      bash \
-                      bc \
-                      bindgen \
-                      bison \
-                      bsdextrautils \
-                      bzip2 \
-                      ca-certificates \
-                      ccache \
-                      dbus \
-                      debianutils \
-                      diffutils \
-                      exuberant-ctags \
-                      findutils \
-                      flex \
-                      gcc \
-                      gcovr \
-                      gettext \
-                      git \
-                      hostname \
-                      libclang-rt-dev \
-                      libglib2.0-dev \
-                      llvm \
-                      locales \
-                      make \
-                      mtools \
-                      ncat \
-                      ninja-build \
-                      openssh-client \
-                      pkgconf \
-                      python3 \
-                      python3-numpy \
-                      python3-opencv \
-                      python3-pillow \
-                      python3-pip \
-                      python3-setuptools \
-                      python3-sphinx \
-                      python3-sphinx-rtd-theme \
-                      python3-tomli \
-                      python3-venv \
-                      python3-wheel \
-                      python3-yaml \
-                      rpm2cpio \
-                      rustc \
-                      sed \
-                      socat \
-                      sparse \
-                      swtpm \
-                      tar \
-                      tesseract-ocr \
-                      tesseract-ocr-eng \
-                      vulkan-tools \
-                      xorriso \
-                      zstd && \
-    eatmydata apt-get autoremove -y && \
-    eatmydata apt-get autoclean -y && \
-    sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
-    dpkg-reconfigure locales && \
-    rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
-
-RUN /usr/bin/pip3 install meson==1.8.1
-
-ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
-ENV LANG "en_US.UTF-8"
-ENV MAKE "/usr/bin/make"
-ENV NINJA "/usr/bin/ninja"
-ENV PYTHON "/usr/bin/python3"
-
-RUN export DEBIAN_FRONTEND=noninteractive && \
-    dpkg --add-architecture armhf && \
-    eatmydata apt-get update && \
-    eatmydata apt-get dist-upgrade -y && \
-    eatmydata apt-get install --no-install-recommends -y dpkg-dev && \
-    eatmydata apt-get install --no-install-recommends -y \
-                      gcc-arm-linux-gnueabihf \
-                      libaio-dev:armhf \
-                      libasan8:armhf \
-                      libasound2-dev:armhf \
-                      libattr1-dev:armhf \
-                      libbpf-dev:armhf \
-                      libbrlapi-dev:armhf \
-                      libbz2-dev:armhf \
-                      libc6-dev:armhf \
-                      libcacard-dev:armhf \
-                      libcap-ng-dev:armhf \
-                      libcapstone-dev:armhf \
-                      libcbor-dev:armhf \
-                      libcmocka-dev:armhf \
-                      libcurl4-gnutls-dev:armhf \
-                      libdaxctl-dev:armhf \
-                      libdrm-dev:armhf \
-                      libepoxy-dev:armhf \
-                      libfdt-dev:armhf \
-                      libffi-dev:armhf \
-                      libfuse3-dev:armhf \
-                      libgbm-dev:armhf \
-                      libgcrypt20-dev:armhf \
-                      libglib2.0-dev:armhf \
-                      libgnutls28-dev:armhf \
-                      libgtk-3-dev:armhf \
-                      libgtk-vnc-2.0-dev:armhf \
-                      libibverbs-dev:armhf \
-                      libiscsi-dev:armhf \
-                      libjemalloc-dev:armhf \
-                      libjpeg62-turbo-dev:armhf \
-                      libjson-c-dev:armhf \
-                      liblttng-ust-dev:armhf \
-                      liblzo2-dev:armhf \
-                      libncursesw5-dev:armhf \
-                      libnfs-dev:armhf \
-                      libnuma-dev:armhf \
-                      libpam0g-dev:armhf \
-                      libpcre2-dev:armhf \
-                      libpipewire-0.3-dev:armhf \
-                      libpixman-1-dev:armhf \
-                      libpng-dev:armhf \
-                      libpulse-dev:armhf \
-                      librdmacm-dev:armhf \
-                      libsasl2-dev:armhf \
-                      libsdl2-dev:armhf \
-                      libsdl2-image-dev:armhf \
-                      libseccomp-dev:armhf \
-                      libselinux1-dev:armhf \
-                      libslirp-dev:armhf \
-                      libsnappy-dev:armhf \
-                      libsndio-dev:armhf \
-                      libspice-protocol-dev:armhf \
-                      libspice-server-dev:armhf \
-                      libssh-dev:armhf \
-                      libstd-rust-dev:armhf \
-                      libsystemd-dev:armhf \
-                      libtasn1-6-dev:armhf \
-                      libubsan1:armhf \
-                      libudev-dev:armhf \
-                      liburing-dev:armhf \
-                      libusb-1.0-0-dev:armhf \
-                      libusbredirhost-dev:armhf \
-                      libvdeplug-dev:armhf \
-                      libvirglrenderer-dev:armhf \
-                      libvte-2.91-dev:armhf \
-                      libxdp-dev:armhf \
-                      libzstd-dev:armhf \
-                      nettle-dev:armhf \
-                      systemtap-sdt-dev:armhf \
-                      zlib1g-dev:armhf && \
-    eatmydata apt-get autoremove -y && \
-    eatmydata apt-get autoclean -y && \
-    mkdir -p /usr/local/share/meson/cross && \
-    printf "[binaries]\n\
-c = '/usr/bin/arm-linux-gnueabihf-gcc'\n\
-ar = '/usr/bin/arm-linux-gnueabihf-gcc-ar'\n\
-strip = '/usr/bin/arm-linux-gnueabihf-strip'\n\
-pkgconfig = '/usr/bin/arm-linux-gnueabihf-pkg-config'\n\
-\n\
-[host_machine]\n\
-system = 'linux'\n\
-cpu_family = 'arm'\n\
-cpu = 'armhf'\n\
-endian = 'little'\n" > /usr/local/share/meson/cross/arm-linux-gnueabihf && \
-    dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
-    mkdir -p /usr/libexec/ccache-wrappers && \
-    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabihf-cc && \
-    ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/arm-linux-gnueabihf-gcc
-
-ENV ABI "arm-linux-gnueabihf"
-ENV MESON_OPTS "--cross-file=arm-linux-gnueabihf"
-ENV RUST_TARGET "armv7-unknown-linux-gnueabihf"
-ENV QEMU_CONFIGURE_OPTS --cross-prefix=arm-linux-gnueabihf-
-ENV DEF_TARGET_LIST arm-softmmu,arm-linux-user
-# As a final step configure the user (if env is defined)
-ARG USER
-ARG UID
-RUN if [ "${USER}" ]; then \
-  id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
-
-ENV ENABLE_RUST 1
diff --git a/tests/docker/dockerfiles/debian-bootstrap.pre b/tests/docker/dockerfiles/debian-bootstrap.pre
index 35c85f7db8a..0a652754dfd 100755
--- a/tests/docker/dockerfiles/debian-bootstrap.pre
+++ b/tests/docker/dockerfiles/debian-bootstrap.pre
@@ -21,7 +21,7 @@ if [ -z $FAKEROOT ]; then
 fi
 
 if [ -z "${DEB_ARCH}" ]; then
-    echo "Please set DEB_ARCH to choose an architecture (e.g. armhf)" >&2
+    echo "Please set DEB_ARCH to choose an architecture (e.g. arm64)" >&2
     exit_and_skip
 
 fi
@@ -99,9 +99,6 @@ else
         amd64)
             QEMU=qemu-i386
             ;;
-        armel|armhf)
-            QEMU=qemu-arm
-            ;;
         arm64)
             QEMU=qemu-aarch64
             ;;
diff --git a/tests/lcitool/refresh b/tests/lcitool/refresh
index df186caffe6..d3743ba73e8 100755
--- a/tests/lcitool/refresh
+++ b/tests/lcitool/refresh
@@ -208,11 +208,6 @@ try:
                         trailer=cross_build("aarch64-linux-gnu-",
                                             "aarch64-softmmu,aarch64-linux-user"))
 
-    generate_dockerfile("debian-armhf-cross", "debian-13",
-                        cross="armv7l",
-                        trailer=cross_build("arm-linux-gnueabihf-",
-                                            "arm-softmmu,arm-linux-user"))
-
     generate_dockerfile("debian-i686-cross", "debian-13",
                         cross="i686",
                         trailer=cross_build("i686-linux-gnu-",
-- 
2.51.0



  reply	other threads:[~2025-11-17 15:42 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-11-17 15:41 [PATCH-for-10.2 0/2] tcg: Remove support for 32-bit arm hosts Philippe Mathieu-Daudé
2025-11-17 15:41 ` Philippe Mathieu-Daudé [this message]
2025-11-17 16:54   ` [PATCH-for-10.2 1/2] gitlab: Stop cross-testing for 32-bit ARM hosts Alex Bennée
2025-11-17 15:41 ` [PATCH-for-10.2 2/2] buildsys: Remove support " Philippe Mathieu-Daudé
2025-11-17 15:59 ` [PATCH-for-10.2 0/2] tcg: Remove support for 32-bit arm hosts Peter Maydell
2025-11-17 17:04   ` Philippe Mathieu-Daudé

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20251117154154.79090-2-philmd@linaro.org \
    --to=philmd@linaro.org \
    --cc=alex.bennee@linaro.org \
    --cc=berrange@redhat.com \
    --cc=crosa@redhat.com \
    --cc=jsnow@redhat.com \
    --cc=kraxel@redhat.com \
    --cc=marcandre.lureau@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-arm@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=thuth@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.