Your message dated Sun, 09 Nov 2025 23:07:47 +0000
with message-id <[email protected]>
and subject line Bug#1057298: fixed in nodejs 22.21.1+dfsg+~cs22.19.0-1
has caused the Debian Bug report #1057298,
regarding nodejs: improve passing of --dest-* options for cross builds
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
1057298: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1057298
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Source: nodejs
Version: 18.19.0+dfsg-3
Tags: patch
User: [email protected]
Usertags: ftcbfs

Hi,

I can see that quite some effort went into cross build support for
nodejs. Thank you. Unfortunately, it doesn't quite just work.

For one thing, doing a cross build without --dest-os or --dest-cpu is
doomed to fail in surprising ways. Hence, the build should fail when
they are missing (for cross builds only). Then the computation of their
values is subtly wrong:
 * There is no Debian architecture named aarch64.
 * Prefer matching of DEB_HOST_ARCH_CPU over DEB_HOST_ARCH to avoid
   repeating cases for different kernels.
 * Increase coverage for loong64, ppc64el and s390.
 * Simplify matching when DEB_HOST_ARCH_CPU is what --dest-cpu wants.

This moves quite some cases further, but in the end it does not make
nodejs cross buildable for any architecture I tried. The issues are
strange and I have no solutions at this time. While this bug is about
passing of --dest-os and --dest-cpu and I ask you to close it when
addressing that aspect, I'll also go into some detail on what goes wrong
next:

 * arm64: Somehow manages to pass arm64-specific compiler options to a
   build architecture compiler. Not sure how they escaped.
 * armel/armhf: Very strange failure about missing header
   "bits/libc-header-start.h".
 * s390x: deps/v8/src/execution/s390/simulator-s390.cc uses bare isnan
   and signbit. gcc suggests you may want to be using std::isnan and
   std::signbit here. Not sure why this works in native builds.

The s390x one looks fixable at least. In any case, I'm attaching a patch
for the debian/rules aspects that I understand well and hope you agree
with it.

Helmut
diff --minimal -Nru nodejs-18.19.0+dfsg/debian/changelog 
nodejs-18.19.0+dfsg/debian/changelog
--- nodejs-18.19.0+dfsg/debian/changelog        2023-12-02 02:12:25.000000000 
+0100
+++ nodejs-18.19.0+dfsg/debian/changelog        2023-12-02 19:10:51.000000000 
+0100
@@ -1,3 +1,10 @@
+nodejs (18.19.0+dfsg-3.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Improve passing of --dest-* options. (Closes: #-1)
+
+ -- Helmut Grohne <[email protected]>  Sat, 02 Dec 2023 19:10:51 +0100
+
 nodejs (18.19.0+dfsg-3) unstable; urgency=medium
 
   * patch: drop fixed openssl test patch
diff --minimal -Nru nodejs-18.19.0+dfsg/debian/rules 
nodejs-18.19.0+dfsg/debian/rules
--- nodejs-18.19.0+dfsg/debian/rules    2023-11-30 16:59:46.000000000 +0100
+++ nodejs-18.19.0+dfsg/debian/rules    2023-12-02 19:10:51.000000000 +0100
@@ -50,23 +50,13 @@
 # map HOST ARCH AND OS, and if unknown let upstream guess
 
 destCpu =
-destCpu := $(or $(destCpu),$(if $(filter i386,$(DEB_HOST_ARCH)),ia32))
-destCpu := $(or $(destCpu),$(if $(filter x32,$(DEB_HOST_ARCH)),x32))
-destCpu := $(or $(destCpu),$(if $(filter kfreebsd-i386,$(DEB_HOST_ARCH)),ia32))
-destCpu := $(or $(destCpu),$(if $(filter hurd-i386,$(DEB_HOST_ARCH)),ia32))
-destCpu := $(or $(destCpu),$(if $(filter amd64,$(DEB_HOST_ARCH)),x64))
-destCpu := $(or $(destCpu),$(if $(filter kfreebsd-amd64,$(DEB_HOST_ARCH)),x64))
-destCpu := $(or $(destCpu),$(if $(filter armel,$(DEB_HOST_ARCH)),arm))
-destCpu := $(or $(destCpu),$(if $(filter armhf,$(DEB_HOST_ARCH)),arm))
-destCpu := $(or $(destCpu),$(if $(filter aarch64,$(DEB_HOST_ARCH)),arm64))
-destCpu := $(or $(destCpu),$(if $(filter mipsel,$(DEB_HOST_ARCH)),mipsel))
-destCpu := $(or $(destCpu),$(if $(filter mips64el,$(DEB_HOST_ARCH)),mips64el))
-destCpu := $(or $(destCpu),$(if $(filter 
mips64r6el,$(DEB_HOST_ARCH)),mips64el))
-destCpu := $(or $(destCpu),$(if $(filter mips,$(DEB_HOST_ARCH)),mips))
-destCpu := $(or $(destCpu),$(if $(filter powerpc,$(DEB_HOST_ARCH)),ppc))
-destCpu := $(or $(destCpu),$(if $(filter ppc64,$(DEB_HOST_ARCH)),ppc64))
-destCpu := $(or $(destCpu),$(if $(filter riscv64,$(DEB_HOST_ARCH)),riscv64))
-destCpu := $(or $(destCpu),$(if $(filter s390x,$(DEB_HOST_ARCH)),s390x))
+destCpu := $(or $(destCpu),$(if $(filter i386,$(DEB_HOST_ARCH_CPU)),ia32))
+destCpu := $(or $(destCpu),$(if $(filter 
amd64_32,$(DEB_HOST_ARCH_CPU)_$(DEB_HOST_ARCH_BITS)),x32))
+destCpu := $(or $(destCpu),$(if $(filter amd64,$(DEB_HOST_ARCH_CPU)),x64))
+destCpu := $(or $(destCpu),$(if $(filter 
mips64r6el,$(DEB_HOST_ARCH_CPU)),mips64el))
+destCpu := $(or $(destCpu),$(if $(filter powerpc,$(DEB_HOST_ARCH_CPU)),ppc))
+destCpu := $(or $(destCpu),$(if $(filter ppc64el,$(DEB_HOST_ARCH_CPU)),ppc64))
+destCpu := $(or $(destCpu),$(filter arm arm64 loong64 mipsel mips64el mips 
ppc64 riscv64 s390 s390x,$(DEB_HOST_ARCH_CPU)))
 
 # solaris freebsd openbsd linux
 destOs =
@@ -75,12 +65,20 @@
 
 ifneq (, $(destOs))
 DEB_CONFIGURE_EXTRA_FLAGS += --dest-os=$(destOs)
+else
+ifneq ($(DEB_BUILD_ARCH),$(DEB_HOST_ARCH))
+$(error "unknown --dest-os for cross compiling nodejs to $(DEB_HOST_ARCH)")
+endif
 endif
 ifeq (unsupported, $(destCpu))
 $(error "nodejs cannot run on $(DEB_HOST_ARCH), please consult maintainers")
 endif
 ifneq (, $(destCpu))
 DEB_CONFIGURE_EXTRA_FLAGS += --dest-cpu=$(destCpu)
+else
+ifneq ($(DEB_BUILD_ARCH),$(DEB_HOST_ARCH))
+$(error "unknown --dest-cpu for cross compiling nodejs to $(DEB_HOST_ARCH)")
+endif
 endif
 
 ifeq (freebsd, $(destOs))

--- End Message ---
--- Begin Message ---
Source: nodejs
Source-Version: 22.21.1+dfsg+~cs22.19.0-1
Done: Jérémy Lal <[email protected]>

We believe that the bug you reported is fixed in the latest version of
nodejs, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Jérémy Lal <[email protected]> (supplier of updated nodejs package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Format: 1.8
Date: Sun, 09 Nov 2025 23:36:12 +0100
Source: nodejs
Architecture: source
Version: 22.21.1+dfsg+~cs22.19.0-1
Distribution: experimental
Urgency: medium
Maintainer: Debian Javascript Maintainers 
<[email protected]>
Changed-By: Jérémy Lal <[email protected]>
Closes: 1057298 11110524
Changes:
 nodejs (22.21.1+dfsg+~cs22.19.0-1) experimental; urgency=medium
 .
   * New upstream version 22.21.1+dfsg+~cs22.19.0
     Closes: #11110524.
   * B-D simdjson >= 3.13.0
   * B-D libada-url
   * Remove install of amaro shim
   * Skip expected failing tests
   * patch: we build without-amaro for now, disable strip-types
   * Improve passing of --dest-* options. (Closes: #1057298)
   * Refresh patches
Checksums-Sha1:
 2061d717ff0cb59a2df4a2c8bc1e34055aa98d8f 4687 
nodejs_22.21.1+dfsg+~cs22.19.0-1.dsc
 36d594cccc87915a298fccaa4f30843f6a7af2ec 274900 
nodejs_22.21.1+dfsg+~cs22.19.0.orig-ada.tar.xz
 f63468364bdb4e5d09ab9861f5065f74117e9936 327996 
nodejs_22.21.1+dfsg+~cs22.19.0.orig-types-node.tar.xz
 32049742e108bcabfa23040a861c46393da306ff 23159124 
nodejs_22.21.1+dfsg+~cs22.19.0.orig.tar.xz
 f79d226125a8f2c800fddec9861361f369f09019 161204 
nodejs_22.21.1+dfsg+~cs22.19.0-1.debian.tar.xz
 6d4877a48992532c0beeff1b169ecf13be9995c8 11242 
nodejs_22.21.1+dfsg+~cs22.19.0-1_source.buildinfo
Checksums-Sha256:
 d3f462c97ebecaadad7ba37f2f97fca321e3ba0742856b9a5ad5bc9e85faf84a 4687 
nodejs_22.21.1+dfsg+~cs22.19.0-1.dsc
 26deff017c505b316f2498aaf293c896f4ab92b5349b367cf21fe14fa2cbd1e1 274900 
nodejs_22.21.1+dfsg+~cs22.19.0.orig-ada.tar.xz
 e61ece08b402d57eca6159e44a9c674073432b888b5611de01dfbae03212ac06 327996 
nodejs_22.21.1+dfsg+~cs22.19.0.orig-types-node.tar.xz
 e1a6c400987262cc90645748ec44bee0c32e8dbff0ef323b62900266b4bdb9b0 23159124 
nodejs_22.21.1+dfsg+~cs22.19.0.orig.tar.xz
 70ef6badd7abe4a932050f05f152ba17ddec64802067d1af3a1077a66d5d0071 161204 
nodejs_22.21.1+dfsg+~cs22.19.0-1.debian.tar.xz
 ced7578b3f8d93fa25f43331152e7081aae8185c5ffe738ca2b068abdbd03d90 11242 
nodejs_22.21.1+dfsg+~cs22.19.0-1_source.buildinfo
Files:
 01c6f9a3156394ff007035b3e121d901 4687 javascript optional 
nodejs_22.21.1+dfsg+~cs22.19.0-1.dsc
 fd9ff3be8b8b43905dd24c5af24aab16 274900 javascript optional 
nodejs_22.21.1+dfsg+~cs22.19.0.orig-ada.tar.xz
 81eca6940a72fe994f96ab1c0c4298f3 327996 javascript optional 
nodejs_22.21.1+dfsg+~cs22.19.0.orig-types-node.tar.xz
 5252faf4408417a4ce49f0a6d03a0b2b 23159124 javascript optional 
nodejs_22.21.1+dfsg+~cs22.19.0.orig.tar.xz
 1c244ce71896a0465f611502b644ad57 161204 javascript optional 
nodejs_22.21.1+dfsg+~cs22.19.0-1.debian.tar.xz
 53527fae3361c2fc864f4472ed91ac20 11242 javascript optional 
nodejs_22.21.1+dfsg+~cs22.19.0-1_source.buildinfo

-----BEGIN PGP SIGNATURE-----

iQJGBAEBCAAwFiEEA8Tnq7iA9SQwbkgVZhHAXt0583QFAmkRF4cSHGthcG91ZXJA
bWVsaXgub3JnAAoJEGYRwF7dOfN0e7kP/2kHd/OOZ43egIlSfdA187tiMDEU3311
TWCrHWOp/F9YJCWpr9siUSRmXkZUf2T2UfJK1dM4JcP2daMBXPQyNMBThkmJ8nQe
5V6Ic1Z73z97WBFoT7QJKL+U7irLvfOQu+PmeW1wwn0SzidwCt7ZduGBWqnSDy3W
CfyZlF99EDPCMaoNrDhJVAMXrzH9wTB1bnil3W5xlLbnltFkER/TaYHnw0TBmQHu
pO6suSzh+9Xq3sAFkuey/R3Soby+etC9162jWabMNAtGuvtCLIBhMWZJ+nM7sRkE
QAupehMkoQKghfgdB1CT5pYOr/UmbvF/KRxYUTM7Pt+d/L2Kk8PmkZF0vrhFzeu3
VuwkwEi7Vj8kLkB56/6SNt0YupDiqnBM4EYvbQWmMJhKEjKnQzH/lG0hrVuYfvgY
DGPj176LshkY1+FLrZTGQWrNJcFLYoatzx+DHdMiY2pWWjKwvruVV5ApqSB1Oz3n
nEpWImBn8ttbgV5NkQiLnbP9SVJGVGHPirtajsGTcghIZQI9X/HXD/b6K6dEioZ7
WGkOJ0oD7jsJ23MkiLv/ZENjsIcBlrn+cGl2AMcLwN3BUU79nkbZlin+2opNIS7w
2MPCKAw7H7slJ3DLjEzwLyf1RuPGNRyzWrwhSNXw9yFDk5RE+iBl8kOT/7Her3vI
ACT+RSwzzaBR
=56NE
-----END PGP SIGNATURE-----

Attachment: pgpSRfW8NeCWX.pgp
Description: PGP signature


--- End Message ---
-- 
Pkg-javascript-devel mailing list
[email protected]
https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/pkg-javascript-devel

Reply via email to