The build failure is triggered for other dependend packages like libzypp too, 
e.g.:
https://buildd.debian.org/status/package.php?p=libzypp&suite=sid

Various 32-bit architectures are affected, namely: hppa, m68k, sh4 (maybe more).

Problem is, that for all 32-bit binary boost packages, the generated cmake file 
starts with:
# Generated by Boost 1.90.0
if(CMAKE_SIZEOF_VOID_P EQUAL 4)
  _BOOST_SKIPPED("libboost_program_options.so.1.90.0" "64 bit, need 32")
  return()
endif()
See for example /usr/lib/hppa-linux-gnu/cmake/boost_program_options-1.90.0/libboost_program_options-variant-shared.cmake

but the package

(hppa-chroot)root@p100:/# dpkg -L libboost-program-options1.90-dev:hppa
/usr/lib/hppa-linux-gnu/cmake/boost_program_options-1.90.0/boost_program_options-config-version.cmake
/usr/lib/hppa-linux-gnu/cmake/boost_program_options-1.90.0/boost_program_options-config.cmake
/usr/lib/hppa-linux-gnu/cmake/boost_program_options-1.90.0/libboost_program_options-variant-shared.cmake
/usr/lib/hppa-linux-gnu/cmake/boost_program_options-1.90.0/libboost_program_options-variant-static.cmake
/usr/lib/hppa-linux-gnu/libboost_program_options.a
/usr/lib/hppa-linux-gnu/libboost_program_options.so

actually ships (correctly) a 32-bit binary:

(hppa-chroot)root@p100:/# file -L 
/usr/lib/hppa-linux-gnu/libboost_program_options.so
/usr/lib/hppa-linux-gnu/libboost_program_options.so: ELF 32-bit MSB shared 
object, PA-RISC, 1.1 version 1
(GNU/Linux), dynamically linked, 
BuildID[sha1]=f681ee151d80928f58aa2a2757e0b1d72113a283, stripped

So, the generated header "if" clause is wrong for 32-bit architectures.


Adrian Bunk noted:
I don't understand immediately what jam is doing that it gets the wrong
value, but something like the following untested patch might help:

--- boost1.90-1.90.0/debian/rules       2026-04-01 07:53:39.000000000 +0300
+++ boost1.90-1.90.0/debian/rules       2026-04-01 07:53:39.000000000 +0300
@@ -174,7 +174,7 @@
 bbv2dir = $(CURDIR)/tools/build
# With --ignore-site-config, can probably drop Build-Conflicts on boost-build.
-JAM = $(b2) $(JOBS) -q -d2 $(JAM_OPT) --layout=system --ignore-site-config 
--user-config=$(CURDIR)/user-config.jam debug-symbols=on
+JAM = $(b2) $(JOBS) -q -d2 $(JAM_OPT) --layout=system --ignore-site-config 
--user-config=$(CURDIR)/user-config.jam debug-symbols=on 
address-model=$(DEB_TARGET_ARCH_BITS)
 JAM_DOC = $(b2) $(JOBS) -q -d2 --ignore-site-config 
--user-config=$(CURDIR)/user-config-doc.jam

Reply via email to