Bug#1131165: gcc-15 FTBFS for musl-linux-amd64

Matthias Klose <[email protected]> Fri, 1 May 2026 10:59:46 +0200
Newsgroups gmane.linux.debian.devel.gcc
Message-ID <9193a686-0d44-4c6f-9d08-bfd3ccc84b4d__30062.2374912322$1777626085$gmane$org@debian.org>
On 4/28/26 13:14, Helmut Grohne wrote:
> Hi Matthias,
> 
> On Tue, Apr 28, 2026 at 09:54:38AM +0200, Matthias Klose wrote:
>> Is there any documentation for musl, which triplets and/or multiarch
>> identifiers are used for these musl packages?
> 
> I don't think so.
> 
> Generally, you can turn most of any-gnu-linux-any architectures into
> musl architectures by prepending "musl-linux-" to the Debian
> architecture name. When it comes to the GNU triplet, the typical Debian
> architecture looks like CPU-linux-gnuABI. When you move from glibc to
> musl, that becomes CPU-linux-muslABI. The multiarch tuple works the way.
> Examples:
> 
> glibc                        | musl
> Debian | GNU                 | Debian           | GNU
> amd64  | x86_64-linux-gnu    | musl-linux-amd64 | x86_64-linux-musl
> i386   | i686-linux-gnu      | musl-linux-i386  | i686-linux-musl
> armhf  | arm-linux-gnueabihf | musl-linux-armhf | arm-linux-musleabihf
> 
> For musl-linux-i386, the multiarch tuple becomes i386-linux-musl. For
> everything else, there is no difference to the GNU triplet.

please check if that works for you:

--- a/debian/rules.defs
+++ b/debian/rules.defs
@@ -2044,6 +2044,14 @@ ifeq ($(derivative),Ubuntu)
  else ifeq ($(derivative),Debian)
    biarchx32archs := /amd64/i386/
  endif
+
+ifneq (,$(findstring musl, $(DEB_TARGET_GNU_TYPE)))
+  biarch32archs  :=
+  biarch64archs  :=
+  biarchn32archs :=
+  biarchx32archs :=
+endif
+
  $(foreach x,32 64 n32 x32,$(eval $(call gen_biarch,$(x))))

  ifeq ($(DEB_TARGET_ARCH),sh4)