Package: nasm Version: 2.16.01-1 Tags: patch User: debian-cr...@lists.debian.org Usertags: ftcbfs Control: affects -1 + src:libjpeg-turbo
libjpeg-turbo cannot be cross built for multiple reasons. Initially its Build-Depends are not cross-satisfiable. Once you get past this, you notice that it fails running nasm with an "Exec format error". Usually, this means that a package (nasm) was installed for the wrong architecture. The common solution is marking the package (nasm) Multi-Arch: foreign. It is not so clear that such a marking is correct though. The marking is a strong promise on the interface being independent of the architecture of the package. However, nasm's package description says that it is an x86 assembler, so that part of the architecture is kinda implied in the interface. I also tried cross building (a modified) nasm from arm64 to both amd64 and i386 with a native nasm and that part worked in both cases. As such, I am inclined to say that Multi-Arch: foreign actually is correct just as binutils-x86-64-linux-gnu is Multi-Arch: foreign. Consider applying the attached patch. Helmut
diff --minimal -Nru nasm-2.16.01/debian/changelog nasm-2.16.01/debian/changelog --- nasm-2.16.01/debian/changelog 2022-12-30 22:55:58.000000000 +0100 +++ nasm-2.16.01/debian/changelog 2023-12-14 16:30:01.000000000 +0100 @@ -1,3 +1,10 @@ +nasm (2.16.01-1.1) UNRELEASED; urgency=medium + + * Non-maintainer upload. + * Mark nasm Multi-Arch: foreign. (Closes: #-1) + + -- Helmut Grohne <hel...@subdivi.de> Thu, 14 Dec 2023 16:30:01 +0100 + nasm (2.16.01-1) unstable; urgency=medium * New upstream release diff --minimal -Nru nasm-2.16.01/debian/control nasm-2.16.01/debian/control --- nasm-2.16.01/debian/control 2022-12-30 02:52:32.000000000 +0100 +++ nasm-2.16.01/debian/control 2023-12-14 16:29:59.000000000 +0100 @@ -20,6 +20,7 @@ Package: nasm Architecture: any +Multi-Arch: foreign Depends: dpkg (>= 1.15.4) | install-info, ${misc:Depends},