[PATCH v2] tests/docker: Update hexagon cross toolchain to 22.1.0

Brian Cain posted 1 patch 1 month, 1 week ago
Failed in applying to current master (apply log)
.../dockerfiles/debian-hexagon-cross.docker   | 19 +++++++++++--------
1 file changed, 11 insertions(+), 8 deletions(-)
[PATCH v2] tests/docker: Update hexagon cross toolchain to 22.1.0
Posted by Brian Cain 1 month, 1 week ago
Update the hexagon cross-compiler Docker container to use toolchain
version 22.1.0, replacing the previous 12.Dec.2023 release.  This release
has valuable compiler and linker bugfixes, but more importantly it will
enable us to target DSP arches up to v81.

This requires upgrading the base image from Debian 11 to Debian 12
because the new toolchain needs glibc >= 2.34. Additional changes
to accommodate the new base image and toolchain:

* Use DEB822 format for enabling deb-src
* Add libc++1, libc++abi1, libunwind-14 runtime deps for the new
toolchain
* Add zstd for the new .tar.zst archive format
* Replace pip3 install tomli with python3-tomli system package
(Debian 12 enforces PEP 668)

Signed-off-by: Brian Cain <brian.cain@oss.qualcomm.com>
---
 .../dockerfiles/debian-hexagon-cross.docker   | 19 +++++++++++--------
 1 file changed, 11 insertions(+), 8 deletions(-)

diff --git a/tests/docker/dockerfiles/debian-hexagon-cross.docker b/tests/docker/dockerfiles/debian-hexagon-cross.docker
index 23152b4918..00d7834506 100644
--- a/tests/docker/dockerfiles/debian-hexagon-cross.docker
+++ b/tests/docker/dockerfiles/debian-hexagon-cross.docker
@@ -5,10 +5,10 @@
 # needs to be able to build QEMU itself in CI we include its
 # build-deps.
 #
-FROM docker.io/library/debian:11-slim
+FROM docker.io/library/debian:12-slim
 
-# Duplicate deb line as deb-src
-RUN cat /etc/apt/sources.list | sed "s/^deb\ /deb-src /" >> /etc/apt/sources.list
+# Enable deb-src for build-dep support
+RUN sed -i 's/^Types: deb$/Types: deb deb-src/' /etc/apt/sources.list.d/debian.sources
 RUN apt-get update && \
     DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata && \
     DEBIAN_FRONTEND=noninteractive eatmydata \
@@ -17,7 +17,11 @@ RUN apt-get update && \
         curl \
         ccache \
         xz-utils \
+        zstd \
         ca-certificates \
+        libc++1 \
+        libc++abi1 \
+        libunwind-14 \
         bison \
         flex \
         git \
@@ -25,6 +29,7 @@ RUN apt-get update && \
         python3-pip \
         python3-setuptools \
         python3-venv \
+        python3-tomli \
         python3-wheel && \
 # Install QEMU build deps for use in CI
     DEBIAN_FRONTEND=noninteractive eatmydata \
@@ -36,15 +41,13 @@ RUN apt-get update && \
     ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc && \
     dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt
 
-RUN /usr/bin/pip3 install tomli
-
 ENV TOOLCHAIN_INSTALL /opt
-ENV TOOLCHAIN_RELEASE 12.Dec.2023
+ENV TOOLCHAIN_RELEASE 22.1.0
 ENV TOOLCHAIN_BASENAME "clang+llvm-${TOOLCHAIN_RELEASE}-cross-hexagon-unknown-linux-musl"
-ENV TOOLCHAIN_URL https://codelinaro.jfrog.io/artifactory/codelinaro-toolchain-for-hexagon/${TOOLCHAIN_RELEASE}/${TOOLCHAIN_BASENAME}.tar.xz
+ENV TOOLCHAIN_URL https://artifacts.codelinaro.org/artifactory/codelinaro-toolchain-for-hexagon/${TOOLCHAIN_RELEASE}_/${TOOLCHAIN_BASENAME}.tar.zst
 ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
 
-RUN curl -#SL "$TOOLCHAIN_URL" | tar -xJC "$TOOLCHAIN_INSTALL"
+RUN curl -#SL "$TOOLCHAIN_URL" | tar --zstd -xC "$TOOLCHAIN_INSTALL"
 ENV PATH $PATH:${TOOLCHAIN_INSTALL}/${TOOLCHAIN_BASENAME}/x86_64-linux-gnu/bin
 ENV MAKE /usr/bin/make
 # As a final step configure the user (if env is defined)
-- 
2.34.1
Re: [PATCH v2] tests/docker: Update hexagon cross toolchain to 22.1.0
Posted by Alex Bennée 1 month, 1 week ago
Brian Cain <brian.cain@oss.qualcomm.com> writes:

> Update the hexagon cross-compiler Docker container to use toolchain
> version 22.1.0, replacing the previous 12.Dec.2023 release.  This release
> has valuable compiler and linker bugfixes, but more importantly it will
> enable us to target DSP arches up to v81.
>
> This requires upgrading the base image from Debian 11 to Debian 12
> because the new toolchain needs glibc >= 2.34. Additional changes
> to accommodate the new base image and toolchain:
>
> * Use DEB822 format for enabling deb-src
> * Add libc++1, libc++abi1, libunwind-14 runtime deps for the new
> toolchain
> * Add zstd for the new .tar.zst archive format
> * Replace pip3 install tomli with python3-tomli system package
> (Debian 12 enforces PEP 668)
>
> Signed-off-by: Brian Cain <brian.cain@oss.qualcomm.com>

Looks like there is enough around to put together another testing/next...

Queued to testing/next, thanks.

-- 
Alex Bennée
Virtualisation Tech Lead @ Linaro
Re: [PATCH v2] tests/docker: Update hexagon cross toolchain to 22.1.0
Posted by Daniel P. Berrangé 1 month, 1 week ago
On Tue, Mar 03, 2026 at 09:54:44AM -0800, Brian Cain wrote:
> Update the hexagon cross-compiler Docker container to use toolchain
> version 22.1.0, replacing the previous 12.Dec.2023 release.  This release
> has valuable compiler and linker bugfixes, but more importantly it will
> enable us to target DSP arches up to v81.
> 
> This requires upgrading the base image from Debian 11 to Debian 12
> because the new toolchain needs glibc >= 2.34. Additional changes
> to accommodate the new base image and toolchain:
> 
> * Use DEB822 format for enabling deb-src
> * Add libc++1, libc++abi1, libunwind-14 runtime deps for the new
> toolchain
> * Add zstd for the new .tar.zst archive format
> * Replace pip3 install tomli with python3-tomli system package
> (Debian 12 enforces PEP 668)
> 
> Signed-off-by: Brian Cain <brian.cain@oss.qualcomm.com>
> ---
>  .../dockerfiles/debian-hexagon-cross.docker   | 19 +++++++++++--------
>  1 file changed, 11 insertions(+), 8 deletions(-)
> 
> diff --git a/tests/docker/dockerfiles/debian-hexagon-cross.docker b/tests/docker/dockerfiles/debian-hexagon-cross.docker
> index 23152b4918..00d7834506 100644
> --- a/tests/docker/dockerfiles/debian-hexagon-cross.docker
> +++ b/tests/docker/dockerfiles/debian-hexagon-cross.docker
> @@ -5,10 +5,10 @@
>  # needs to be able to build QEMU itself in CI we include its
>  # build-deps.
>  #
> -FROM docker.io/library/debian:11-slim
> +FROM docker.io/library/debian:12-slim

Can we go straight to 13 please.   We just updated all the non-hand
written docker files to Debian 13, on the basis that 12 is going
end of life in June.

With regards,
Daniel
-- 
|: https://berrange.com       ~~        https://hachyderm.io/@berrange :|
|: https://libvirt.org          ~~          https://entangle-photo.org :|
|: https://pixelfed.art/berrange   ~~    https://fstop138.berrange.com :|
Re: [PATCH v2] tests/docker: Update hexagon cross toolchain to 22.1.0
Posted by Brian Cain 1 month, 1 week ago
Sure - will do

On Tue, Mar 3, 2026 at 12:11 PM Daniel P. Berrangé <berrange@redhat.com>
wrote:

> On Tue, Mar 03, 2026 at 09:54:44AM -0800, Brian Cain wrote:
> > Update the hexagon cross-compiler Docker container to use toolchain
> > version 22.1.0, replacing the previous 12.Dec.2023 release.  This release
> > has valuable compiler and linker bugfixes, but more importantly it will
> > enable us to target DSP arches up to v81.
> >
> > This requires upgrading the base image from Debian 11 to Debian 12
> > because the new toolchain needs glibc >= 2.34. Additional changes
> > to accommodate the new base image and toolchain:
> >
> > * Use DEB822 format for enabling deb-src
> > * Add libc++1, libc++abi1, libunwind-14 runtime deps for the new
> > toolchain
> > * Add zstd for the new .tar.zst archive format
> > * Replace pip3 install tomli with python3-tomli system package
> > (Debian 12 enforces PEP 668)
> >
> > Signed-off-by: Brian Cain <brian.cain@oss.qualcomm.com>
> > ---
> >  .../dockerfiles/debian-hexagon-cross.docker   | 19 +++++++++++--------
> >  1 file changed, 11 insertions(+), 8 deletions(-)
> >
> > diff --git a/tests/docker/dockerfiles/debian-hexagon-cross.docker
> b/tests/docker/dockerfiles/debian-hexagon-cross.docker
> > index 23152b4918..00d7834506 100644
> > --- a/tests/docker/dockerfiles/debian-hexagon-cross.docker
> > +++ b/tests/docker/dockerfiles/debian-hexagon-cross.docker
> > @@ -5,10 +5,10 @@
> >  # needs to be able to build QEMU itself in CI we include its
> >  # build-deps.
> >  #
> > -FROM docker.io/library/debian:11-slim
> > +FROM docker.io/library/debian:12-slim
>
> Can we go straight to 13 please.   We just updated all the non-hand
> written docker files to Debian 13, on the basis that 12 is going
> end of life in June.
>
> With regards,
> Daniel
> --
> |: https://berrange.com       ~~        https://hachyderm.io/@berrange :|
> |: https://libvirt.org          ~~          https://entangle-photo.org :|
> |: https://pixelfed.art/berrange   ~~    https://fstop138.berrange.com :|
>
>
Re: [PATCH v2] tests/docker: Update hexagon cross toolchain to 22.1.0
Posted by Pierrick Bouvier 1 month, 1 week ago
On 3/3/26 9:54 AM, Brian Cain wrote:
> Update the hexagon cross-compiler Docker container to use toolchain
> version 22.1.0, replacing the previous 12.Dec.2023 release.  This release
> has valuable compiler and linker bugfixes, but more importantly it will
> enable us to target DSP arches up to v81.
> 
> This requires upgrading the base image from Debian 11 to Debian 12
> because the new toolchain needs glibc >= 2.34. Additional changes
> to accommodate the new base image and toolchain:
> 
> * Use DEB822 format for enabling deb-src
> * Add libc++1, libc++abi1, libunwind-14 runtime deps for the new
> toolchain
> * Add zstd for the new .tar.zst archive format
> * Replace pip3 install tomli with python3-tomli system package
> (Debian 12 enforces PEP 668)
> 
> Signed-off-by: Brian Cain <brian.cain@oss.qualcomm.com>
> ---
>   .../dockerfiles/debian-hexagon-cross.docker   | 19 +++++++++++--------
>   1 file changed, 11 insertions(+), 8 deletions(-)
> 

Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>