Control: tags 914283 + patch
Control: tags 914283 + pending
Control: tags 1130963 + pending

Dear maintainer,

I've prepared an NMU for boost1.90 (versioned as 1.90.0-6.1) and 
uploaded it to DELAYED/7. Please feel free to tell me if I should
cancel it.

   * Enable context everywhere. (Closes: #914283)
   * Build with address-model=$(DEB_TARGET_ARCH_BITS). (Closes: #1130963)
   * Stop disabling pch on arm64.
   * Disable numpy on x32 until it is available again.
   * Fix the autopkgtest for GCC 16.
   * Fix and re-enable the graph autopkgtest.
   * Remove remnants of the removed system autopkgtest.
   * Improve reproducibility.

cu
Adrian
diffstat for boost1.90-1.90.0 boost1.90-1.90.0

 changelog                         |   14 +++++++
 control                           |   34 +++++++++----------
 patches/make_reproducible_2.patch |   15 ++++++++
 patches/series                    |    1 
 rules                             |   14 +++----
 tests/control                     |   12 ++----
 tests/srcs/graph/CMakeLists.txt   |    2 -
 tests/srcs/locale/demo2.cpp       |   67 +++++++++++++++++---------------------
 tests/system                      |   27 ---------------
 9 files changed, 89 insertions(+), 97 deletions(-)

diff -Nru boost1.90-1.90.0/debian/changelog boost1.90-1.90.0/debian/changelog
--- boost1.90-1.90.0/debian/changelog	2026-04-01 07:53:39.000000000 +0300
+++ boost1.90-1.90.0/debian/changelog	2026-08-09 21:10:47.000000000 +0300
@@ -1,3 +1,17 @@
+boost1.90 (1.90.0-6.1) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * Enable context everywhere. (Closes: #914283)
+  * Build with address-model=$(DEB_TARGET_ARCH_BITS). (Closes: #1130963)
+  * Stop disabling pch on arm64.
+  * Disable numpy on x32 until it is available again.
+  * Fix the autopkgtest for GCC 16.
+  * Fix and re-enable the graph autopkgtest.
+  * Remove remnants of the removed system autopkgtest.
+  * Improve reproducibility.
+
+ -- Adrian Bunk <[email protected]>  Sun, 09 Aug 2026 21:10:47 +0300
+
 boost1.90 (1.90.0-6) unstable; urgency=medium
 
   [ John Paul Adrian Glaubitz ]
diff -Nru boost1.90-1.90.0/debian/control boost1.90-1.90.0/debian/control
--- boost1.90-1.90.0/debian/control	2026-04-01 07:53:39.000000000 +0300
+++ boost1.90-1.90.0/debian/control	2026-08-07 20:40:57.000000000 +0300
@@ -11,7 +11,7 @@
  docbook-xsl, docbook-xml, texlive-latex-base, ghostscript,
  dh-python,
  g++,
- python3, python3-all-dev, python3-numpy
+ python3, python3-all-dev, python3-numpy [!x32]
 Build-Depends-Indep: graphviz
 Build-Conflicts: libopenmpi-dev (= 1.3.2-2)
 Vcs-Browser: https://salsa.debian.org/debian/boost
@@ -27,12 +27,12 @@
  libboost-atomic1.90-dev,
  libboost-chrono1.90-dev,
  libboost-container1.90-dev,
- libboost-context1.90-dev [i386 hurd-i386 amd64 hurd-amd64 armel armhf arm64 loong64 mips mipsel mips64el powerpc ppc64el riscv64 s390x sparc64],
+ libboost-context1.90-dev,
  libboost-contract1.90-dev,
- libboost-coroutine1.90-dev [i386 hurd-i386 amd64 hurd-amd64 armel armhf arm64 loong64 mips mipsel mips64el powerpc ppc64el riscv64 s390x sparc64],
+ libboost-coroutine1.90-dev,
  libboost-date-time1.90-dev,
  libboost-exception1.90-dev,
- libboost-fiber1.90-dev [i386 hurd-i386 amd64 hurd-amd64 armel armhf arm64 loong64 mips mipsel mips64el powerpc ppc64el riscv64 s390x sparc64],
+ libboost-fiber1.90-dev,
  libboost-filesystem1.90-dev,
  libboost-graph-parallel1.90-dev,
  libboost-graph1.90-dev,
@@ -44,7 +44,7 @@
  libboost-mpi-python1.90-dev,
  libboost-mpi1.90-dev,
  libboost-nowide1.90-dev,
- libboost-numpy1.90-dev,
+ libboost-numpy1.90-dev [!x32],
  libboost-program-options1.90-dev,
  libboost-python1.90-dev,
  libboost-random1.90-dev,
@@ -110,11 +110,11 @@
  libboost-atomic1.90-dev,
  libboost-chrono1.90-dev,
  libboost-container1.90-dev,
- libboost-context1.90-dev [i386 hurd-i386 amd64 hurd-amd64 armel armhf arm64 loong64 mips mipsel mips64el powerpc ppc64el riscv64 s390x sparc64],
- libboost-coroutine1.90-dev [i386 hurd-i386 amd64 hurd-amd64 armel armhf arm64 loong64 mips mipsel mips64el powerpc ppc64el riscv64 s390x sparc64],
+ libboost-context1.90-dev,
+ libboost-coroutine1.90-dev,
  libboost-date-time1.90-dev,
  libboost-exception1.90-dev,
- libboost-fiber1.90-dev [i386 hurd-i386 amd64 hurd-amd64 armel armhf arm64 loong64 mips mipsel mips64el powerpc ppc64el riscv64 s390x sparc64],
+ libboost-fiber1.90-dev,
  libboost-filesystem1.90-dev,
  libboost-graph-parallel1.90-dev,
  libboost-graph1.90-dev,
@@ -126,7 +126,7 @@
  libboost-mpi-python1.90-dev,
  libboost-mpi1.90-dev,
  libboost-nowide1.90-dev,
- libboost-numpy1.90-dev,
+ libboost-numpy1.90-dev [!x32],
  libboost-process1.90-dev,
  libboost-program-options1.90-dev,
  libboost-python1.90-dev,
@@ -376,7 +376,7 @@
 
 Package: libboost-context1.90.0
 Homepage: http://www.boost.org/libs/context/
-Architecture: i386 hurd-i386 amd64 hurd-amd64 armel armhf arm64 loong64 mips mipsel mips64el powerpc ppc64 ppc64el riscv64 s390x sparc64
+Architecture: any
 Multi-Arch: same
 Depends: ${misc:Depends}, ${shlibs:Depends}
 Pre-Depends: ${misc:Pre-Depends}
@@ -395,7 +395,7 @@
 
 Package: libboost-context1.90-dev
 Homepage: http://www.boost.org/libs/context/
-Architecture: i386 hurd-i386 amd64 hurd-amd64 armel armhf arm64 loong64 mips mipsel mips64el powerpc ppc64el riscv64 s390x sparc64
+Architecture: any
 Multi-Arch: same
 Section: libdevel
 Depends: ${misc:Depends},
@@ -457,7 +457,7 @@
 
 Package: libboost-coroutine1.90.0
 Homepage: http://www.boost.org/libs/coroutine/
-Architecture: i386 hurd-i386 amd64 hurd-amd64 armel armhf arm64 loong64 mips mipsel mips64el powerpc ppc64el riscv64 s390x sparc64
+Architecture: any
 Multi-Arch: same
 Depends: ${misc:Depends}, ${shlibs:Depends}
 Pre-Depends: ${misc:Pre-Depends}
@@ -481,7 +481,7 @@
 
 Package: libboost-coroutine1.90-dev
 Homepage: http://www.boost.org/libs/coroutine/
-Architecture: i386 hurd-i386 amd64 hurd-amd64 armel armhf arm64 loong64 mips mipsel mips64el powerpc ppc64el riscv64 s390x sparc64
+Architecture: any
 Multi-Arch: same
 Section: libdevel
 Depends: ${misc:Depends},
@@ -553,7 +553,7 @@
 
 Package: libboost-fiber1.90.0
 Homepage: http://www.boost.org/libs/fiber/
-Architecture: i386 hurd-i386 amd64 hurd-amd64 armel armhf arm64 loong64 mips mipsel mips64el powerpc ppc64el riscv64 s390x sparc64
+Architecture: any
 Multi-Arch: same
 Depends: ${misc:Depends}, ${shlibs:Depends}
 Pre-Depends: ${misc:Pre-Depends}
@@ -582,7 +582,7 @@
 
 Package: libboost-fiber1.90-dev
 Homepage: http://www.boost.org/libs/fiber/
-Architecture: i386 hurd-i386 amd64 hurd-amd64 armel armhf arm64 loong64 mips mipsel mips64el powerpc ppc64el riscv64 s390x sparc64
+Architecture: any
 Multi-Arch: same
 Section: libdevel
 Depends: ${misc:Depends},
@@ -1027,7 +1027,7 @@
 
 Package: libboost-numpy1.90.0
 Homepage: http://www.boost.org/libs/python/
-Architecture: any
+Architecture: alpha amd64 arm64 armel armhf hppa hurd-amd64 hurd-i386 i386 loong64 m68k powerpc ppc64 ppc64el riscv64 s390x sh4 sparc64
 Depends: ${misc:Depends}, ${shlibs:Depends}
 Pre-Depends: ${misc:Pre-Depends}
 Suggests: python3
@@ -1043,7 +1043,7 @@
 
 Package: libboost-numpy1.90-dev
 Homepage: http://www.boost.org/libs/python/
-Architecture: any
+Architecture: alpha amd64 arm64 armel armhf hppa hurd-amd64 hurd-i386 i386 loong64 m68k powerpc ppc64 ppc64el riscv64 s390x sh4 sparc64
 Section: libdevel
 Depends: ${misc:Depends},
  libboost-numpy1.90.0 (= ${binary:Version})
diff -Nru boost1.90-1.90.0/debian/patches/make_reproducible_2.patch boost1.90-1.90.0/debian/patches/make_reproducible_2.patch
--- boost1.90-1.90.0/debian/patches/make_reproducible_2.patch	1970-01-01 02:00:00.000000000 +0200
+++ boost1.90-1.90.0/debian/patches/make_reproducible_2.patch	2026-08-07 20:40:57.000000000 +0300
@@ -0,0 +1,15 @@
+Description: Improve reproducibility
+Author: Adrian Bunk <[email protected]>
+
+--- boost1.90-1.90.0.orig/tools/build/src/build/version.jam
++++ boost1.90-1.90.0/tools/build/src/build/version.jam
+@@ -27,8 +27,7 @@ rule info ( )
+     local si = [ new system_info ] ;
+ 
+     local OS = [ modules.peek : OS ] ;
+-    local jobs = [ $(si).cpu_thread_count ] ;
+-    return "OS=$(OS)" "jobs=$(jobs)" ;
++    return "OS=$(OS)" ;
+ }
+ 
+ 
diff -Nru boost1.90-1.90.0/debian/patches/series boost1.90-1.90.0/debian/patches/series
--- boost1.90-1.90.0/debian/patches/series	2026-04-01 07:53:39.000000000 +0300
+++ boost1.90-1.90.0/debian/patches/series	2026-08-07 20:40:57.000000000 +0300
@@ -9,3 +9,4 @@
 0001-Don-t-clear-CXXFLAGS-when-bootstrapping-b2.patch
 546.patch
 make_reproducible.patch
+make_reproducible_2.patch
diff -Nru boost1.90-1.90.0/debian/rules boost1.90-1.90.0/debian/rules
--- boost1.90-1.90.0/debian/rules	2026-04-01 07:53:39.000000000 +0300
+++ boost1.90-1.90.0/debian/rules	2026-08-09 21:10:47.000000000 +0300
@@ -136,13 +136,8 @@
 BUILD_LONG_DOUBLE = no
 endif
 
-# Disable context, coroutine, fiber on some architectures
-ifneq (,$(filter $(DEB_HOST_ARCH), alpha hppa ia64 m68k mips64 powerpcspe s390 sh4 sparc x32))
-BUILD_CONTEXT = no
-endif
-
-ifeq ($(DEB_BUILD_ARCH), arm64)
-JAM_OPT += pch=off
+ifeq ($(DEB_BUILD_ARCH), x32)
+BUILD_NUMPY = no
 endif
 
 # we dsable stacktrace from exceptions on some platforms due to possible memory leaks. See #1102107
@@ -153,6 +148,9 @@
 # if we're building with context, coroutine, fiber, add the libraries to the list
 ifeq ($(BUILD_CONTEXT), yes)
 boost_libs += context coroutine fiber
+ifneq (,$(filter $(DEB_HOST_ARCH), alpha hppa m68k ppc64 sh4 x32))
+JAM_OPT += context-impl=ucontext
+endif
 else
 JAM_WITHOUT += --without-context --without-coroutine --without-fiber
 endif
@@ -174,7 +172,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
 
 %:
diff -Nru boost1.90-1.90.0/debian/tests/control boost1.90-1.90.0/debian/tests/control
--- boost1.90-1.90.0/debian/tests/control	2026-04-01 07:53:39.000000000 +0300
+++ boost1.90-1.90.0/debian/tests/control	2026-08-09 21:10:47.000000000 +0300
@@ -26,9 +26,9 @@
 Tests: filesystem
 Depends: libboost-filesystem1.90-dev, build-essential, cmake
 
-#Tests: graph
-#Depends: libboost-graph1.90-dev, build-essential, cmake
-#Restrictions: allow-stderr
+Tests: graph
+Depends: libboost-graph1.90-dev, build-essential, cmake
+Restrictions: allow-stderr
 
 #Tests: graph-parallel
 #Depends: libboost-graph-parallel1.90-dev, libboost-mpi1.90-dev, mpi-default-dev, build-essential, libgraph-easy-perl, cmake
@@ -77,10 +77,6 @@
 Tests: stacktrace
 Depends: libboost-stacktrace1.90-dev, build-essential, cmake
 
-#Tests: system
-#Depends: build-essential, cmake
-#Restrictions: allow-stderr
-
 Tests: test
 Depends: libboost-test1.90-dev, build-essential, cmake
 Restrictions: allow-stderr
@@ -94,6 +90,8 @@
 
 Tests: type-erasure
 Depends: libboost-type-erasure1.90-dev, build-essential, cmake
+Restrictions: allow-stderr
 
 Tests: wave
 Depends: libboost-wave1.90-dev, libboost-thread1.90-dev, build-essential, cmake
+Restrictions: allow-stderr
diff -Nru boost1.90-1.90.0/debian/tests/srcs/graph/CMakeLists.txt boost1.90-1.90.0/debian/tests/srcs/graph/CMakeLists.txt
--- boost1.90-1.90.0/debian/tests/srcs/graph/CMakeLists.txt	2026-04-01 07:53:39.000000000 +0300
+++ boost1.90-1.90.0/debian/tests/srcs/graph/CMakeLists.txt	2026-08-09 21:10:47.000000000 +0300
@@ -1,7 +1,7 @@
 cmake_minimum_required(VERSION 3.18)
 project(Boost CXX)
 
-FIND_PACKAGE(Boost COMPONENTS graph regex serialization test REQUIRED)
+FIND_PACKAGE(Boost COMPONENTS graph regex serialization REQUIRED)
 INCLUDE_DIRECTORIES (${Boost_INCLUDE_DIRS})
 
 ADD_EXECUTABLE(demo1 demo1.cpp)
diff -Nru boost1.90-1.90.0/debian/tests/srcs/locale/demo2.cpp boost1.90-1.90.0/debian/tests/srcs/locale/demo2.cpp
--- boost1.90-1.90.0/debian/tests/srcs/locale/demo2.cpp	2026-04-01 07:53:39.000000000 +0300
+++ boost1.90-1.90.0/debian/tests/srcs/locale/demo2.cpp	2026-08-09 21:10:47.000000000 +0300
@@ -1,42 +1,35 @@
-// https://www.boost.org/doc/libs/1_67_0/libs/locale/doc/html/hello_8cpp-example.html
-
-//
-//  Copyright (c) 2009-2011 Artyom Beilis (Tonkikh)
 //
-//  Distributed under the Boost Software License, Version 1.0. (See
-//  accompanying file LICENSE_1_0.txt or copy at
-//  http://www.boost.org/LICENSE_1_0.txt)
+// Copyright (c) 2009-2011 Artyom Beilis (Tonkikh)
 //
+// Distributed under the Boost Software License, Version 1.0.
+// https://www.boost.org/LICENSE_1_0.txt
+
 #include <boost/locale.hpp>
 #include <ctime>
 #include <iostream>
-int main() {
-  using namespace boost::locale;
-  using namespace std;
-  generator gen;
-  locale loc = gen("");
-  // Create system default locale
-  locale::global(loc);
-  // Make it system global
-
-  cout.imbue(loc);
-  // Set as default locale for output
-
-  cout << format("Today {1,date} at {1,time} we had run our first localization "
-                 "example") %
-              time(0)
-       << endl;
-
-  cout << "This is how we show numbers in this locale " << as::number << 103.34
-       << endl;
-  cout << "This is how we show currency in this locale " << as::currency
-       << 103.34 << endl;
-  cout << "This is typical date in the locale " << as::date << std::time(0)
-       << endl;
-  cout << "This is typical time in the locale " << as::time << std::time(0)
-       << endl;
-  cout << "This is upper case " << to_upper("Hello World!") << endl;
-  cout << "This is lower case " << to_lower("Hello World!") << endl;
-  cout << "This is title case " << to_title("Hello World!") << endl;
-  cout << "This is fold case " << fold_case("Hello World!") << endl;
-}
\ No newline at end of file
+
+int main()
+{
+    using namespace boost::locale;
+    generator gen;
+    std::locale loc = gen("");
+    // Create system default locale
+
+    std::locale::global(loc);
+    // Make it system global
+
+    std::cout.imbue(loc);
+    // Set as default locale for output
+
+    std::cout << format("Today {1,date} at {1,time} we had run our first localization example") % std::time(nullptr)
+              << std::endl;
+
+    std::cout << "This is how we show numbers in this locale " << as::number << 103.34 << std::endl;
+    std::cout << "This is how we show currency in this locale " << as::currency << 103.34 << std::endl;
+    std::cout << "This is typical date in the locale " << as::date << std::time(nullptr) << std::endl;
+    std::cout << "This is typical time in the locale " << as::time << std::time(nullptr) << std::endl;
+    std::cout << "This is upper case " << to_upper("Hello World!") << std::endl;
+    std::cout << "This is lower case " << to_lower("Hello World!") << std::endl;
+    std::cout << "This is title case " << to_title("Hello World!") << std::endl;
+    std::cout << "This is fold case " << fold_case("Hello World!") << std::endl;
+}
diff -Nru boost1.90-1.90.0/debian/tests/system boost1.90-1.90.0/debian/tests/system
--- boost1.90-1.90.0/debian/tests/system	2026-04-01 07:53:39.000000000 +0300
+++ boost1.90-1.90.0/debian/tests/system	1970-01-01 02:00:00.000000000 +0200
@@ -1,27 +0,0 @@
-#!/bin/sh
-# (C) 2018 Anton Gladky
-
-set -e
-
-WORKDIR=$(mktemp -d)
-trap "rm -rf $WORKDIR" 0 INT QUIT ABRT PIPE TERM
-mkdir -p $WORKDIR/src
-mkdir -p $WORKDIR/build
-
-cp debian/tests/srcs/system/* $WORKDIR/src/
-
-cd $WORKDIR/build
-cmake -DCMAKE_POLICY_DEFAULT_CMP0167=NEW ./../src
-make
-
-echo "build: OK"
-
-[ -x demo1 ]
-./demo1
-
-echo "run: demo1 OK"
-
-[ -x demo2 ]
-./demo2
-
-echo "run: demo2 OK"

Reply via email to