[packages/boost] up to 1.92.0

arekm arekm at pld-linux.org
Tue Aug 18 21:22:15 CEST 2026


commit 90fac37e591d31c9b87552d51f91fbb1289c6472
Author: Arkadiusz Miśkiewicz <arekm at maven.pl>
Date:   Tue Aug 18 16:49:57 2026 +0200

    up to 1.92.0
    
    Fix cc_version string compare that forced -std=c++11 and silently killed
    Boost.Math and Boost.Graph; drop boost-system, header-only upstream now.

 boost-clean-gcc-flags.patch    | 14 ++++----
 boost-link.patch               | 12 +++----
 boost-python-abi_letters.patch | 20 +++++------
 boost.spec                     | 53 ++++++++---------------------
 includes.patch                 | 10 ------
 numpy2.patch                   | 76 ------------------------------------------
 thread-typo.patch              | 24 -------------
 7 files changed, 38 insertions(+), 171 deletions(-)
---
diff --git a/boost.spec b/boost.spec
index 9fdcec5..6f0a0d5 100644
--- a/boost.spec
+++ b/boost.spec
@@ -13,19 +13,16 @@
 Summary:	The Boost C++ Libraries
 Summary(pl.UTF-8):	Biblioteki C++ "Boost"
 Name:		boost
-Version:	1.85.0
-Release:	8
+Version:	1.92.0
+Release:	1
 Epoch:		1
 License:	Boost Software License and others
 Group:		Libraries
-Source0:	https://boostorg.jfrog.io/artifactory/main/release/%{version}/source/%{name}_%{fver}.tar.bz2
-# Source0-md5:	429d451cb9197143cc77962c5ff272ef
+Source0:	https://archives.boost.io/release/%{version}/source/%{name}_%{fver}.tar.bz2
+# Source0-md5:	1a0ff25792aa24fd84d55e63c5fbb24c
 Patch0:		%{name}-link.patch
 Patch1:		%{name}-clean-gcc-flags.patch
 Patch2:		%{name}-fallthrough.patch
-Patch3:		includes.patch
-Patch4:		numpy2.patch
-Patch5:		thread-typo.patch
 # FC Patches:
 Patch201:	%{name}-python-abi_letters.patch
 # https://svn.boost.org/trac/boost/ticket/5637
@@ -51,6 +48,7 @@ BuildRequires:	rpm-pythonprov
 BuildRequires:	rpmbuild(macros) >= 1.750
 BuildRequires:	zlib-devel
 Obsoletes:	boost-signals < 1.69
+Obsoletes:	%{name}-system < %{epoch}:%{version}
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define		specflags	-DBOOST_IOSTREAMS_USE_DEPRECATED=1
@@ -98,7 +96,6 @@ Requires:	%{name}-locale = %{epoch}:%{version}-%{release}
 Requires:	%{name}-log = %{epoch}:%{version}-%{release}
 Requires:	%{name}-program_options = %{epoch}:%{version}-%{release}
 Requires:	%{name}-regex = %{epoch}:%{version}-%{release}
-Requires:	%{name}-system = %{epoch}:%{version}-%{release}
 Requires:	%{name}-test = %{epoch}:%{version}-%{release}
 Requires:	%{name}-thread = %{epoch}:%{version}-%{release}
 Requires:	%{name}-timer = %{epoch}:%{version}-%{release}
@@ -334,7 +331,6 @@ zarządzania i synchronizacji wątków podobne do boost.thread.
 Summary:	Portable paths, iteration over directories, and other useful filesystem operations
 Summary(pl.UTF-8):	Przenośne ścieżki, iteracje katalogów i inne użyteczne operacje na systemie plików
 Group:		Libraries
-Requires:	%{name}-system = %{epoch}:%{version}-%{release}
 Obsoletes:	boost < 1.33
 
 %description filesystem
@@ -422,22 +418,6 @@ Shared library for Boost C++ regular expressions.
 %description regex -l pl.UTF-8
 Biblioteka współdzielona do obsługi wyrażeń regularnych w C++.
 
-%package system
-Summary:	Support for getting system specific error codes
-Summary(pl.UTF-8):	Wsparcie dla pobierania specyficznych dla systemu kodów błędów
-Group:		Libraries
-
-%description system
-The Boost System library provides simple, light-weight error_code
-objects that encapsulate system-specific error code values, yet also
-provide access to more abstract and portable error conditions objects.
-
-%description system -l pl.UTF-8
-Biblioteka Boost System udostępnia proste, lekkie obiekty error_code
-obudowujące wartości kodów błędów specyficznych dla systemu, dając
-jednocześnie dostęp do bardziej abstrakcyjnych i przenośnych obiektów
-błędów.
-
 %package test
 Summary:	Support for program testing and execution monitoring
 Summary(pl.UTF-8):	Wsparcie dla testowania i monitorowania programu
@@ -515,18 +495,15 @@ Dokumentacja dla biblioteki Boost C++.
 %patch -P 0 -p1
 %patch -P 1 -p1
 %patch -P 2 -p1
-%patch -P 3 -p1
-%patch -P 4 -p1 -d libs/python
-%patch -P 5 -p2
 
 %patch -P 201 -p1
 %patch -P 203 -p0
 %patch -P 221 -p1
 
-%if "%{cc_version}" < "6.0"
-CPPSTD="-std=c++11"
-%else
+%if %{_ver_ge "%{cc_version}" "6.0"}
 CPPSTD=
+%else
+CPPSTD="-std=c++11"
 %endif
 cat << EOF > tools/build/src/user-config.jam
 using gcc : %{cxx_version} : %{__cxx} : <cflags>"%{rpmcflags} -fPIC" <cxxflags>"%{rpmcxxflags} $CPPSTD -fPIC" <linkflags>"%{rpmldflags}" ;
@@ -687,8 +664,6 @@ rm -rf $RPM_BUILD_ROOT
 %post	regex -p /sbin/ldconfig
 %postun regex -p /sbin/ldconfig
 
-%post	system -p /sbin/ldconfig
-%postun	system -p /sbin/ldconfig
 
 %post	test -p /sbin/ldconfig
 %postun	test -p /sbin/ldconfig
@@ -713,7 +688,9 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_libdir}/libboost_contract.so.*.*.*
 %attr(755,root,root) %{_libdir}/libboost_coroutine.so.*.*.*
 %attr(755,root,root) %{_libdir}/libboost_iostreams.so.*.*.*
+%attr(755,root,root) %{_libdir}/libboost_math_*.so.*.*.*
 %attr(755,root,root) %{_libdir}/libboost_nowide.so.*.*.*
+%attr(755,root,root) %{_libdir}/libboost_process.so.*.*.*
 %attr(755,root,root) %{_libdir}/libboost_random.so.*.*.*
 %attr(755,root,root) %{_libdir}/libboost_serialization.so.*.*.*
 %attr(755,root,root) %{_libdir}/libboost_stacktrace_*.so.*.*.*
@@ -738,14 +715,15 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_libdir}/libboost_locale.so
 %attr(755,root,root) %{_libdir}/libboost_log.so
 %attr(755,root,root) %{_libdir}/libboost_log_setup.so
+%attr(755,root,root) %{_libdir}/libboost_math_*.so
 %attr(755,root,root) %{_libdir}/libboost_nowide.so
 %attr(755,root,root) %{_libdir}/libboost_prg_exec_monitor.so
+%attr(755,root,root) %{_libdir}/libboost_process.so
 %attr(755,root,root) %{_libdir}/libboost_program_options.so
 %attr(755,root,root) %{_libdir}/libboost_regex.so
 %attr(755,root,root) %{_libdir}/libboost_random.so
 %attr(755,root,root) %{_libdir}/libboost_serialization.so
 %attr(755,root,root) %{_libdir}/libboost_stacktrace_*.so
-%attr(755,root,root) %{_libdir}/libboost_system.so
 %attr(755,root,root) %{_libdir}/libboost_thread.so
 %attr(755,root,root) %{_libdir}/libboost_timer.so
 %attr(755,root,root) %{_libdir}/libboost_type_erasure.so
@@ -779,14 +757,15 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdir}/libboost_locale.a
 %{_libdir}/libboost_log.a
 %{_libdir}/libboost_log_setup.a
+%{_libdir}/libboost_math_*.a
 %{_libdir}/libboost_nowide.a
 %{_libdir}/libboost_prg_exec_monitor.a
+%{_libdir}/libboost_process.a
 %{_libdir}/libboost_program_options.a
 %{_libdir}/libboost_random.a
 %{_libdir}/libboost_regex.a
 %{_libdir}/libboost_serialization.a
 %{_libdir}/libboost_stacktrace_*.a
-%{_libdir}/libboost_system.a
 %{_libdir}/libboost_test_exec_monitor.a
 %{_libdir}/libboost_timer.a
 %{_libdir}/libboost_url.a
@@ -899,10 +878,6 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libboost_regex.so.*.*.*
 
-%files system
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libboost_system.so.*.*.*
-
 %files test
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libboost_prg_exec_monitor.so.*.*.*
diff --git a/boost-clean-gcc-flags.patch b/boost-clean-gcc-flags.patch
index 9918d59..477739f 100644
--- a/boost-clean-gcc-flags.patch
+++ b/boost-clean-gcc-flags.patch
@@ -1,18 +1,20 @@
---- boost_1_67_0/tools/build/src/tools/gcc.jam.orig	2018-04-11 15:49:09.000000000 +0200
-+++ boost_1_67_0/tools/build/src/tools/gcc.jam	2018-07-16 19:40:36.332045183 +0200
-@@ -356,11 +356,6 @@
+--- boost_1_92_0/tools/build/src/tools/gcc.jam.orig
++++ boost_1_92_0/tools/build/src/tools/gcc.jam
+@@ -382,13 +382,6 @@
  
      compile-link-flags <target-os>hpux/<address-model>32 : -milp32 ;
      compile-link-flags <target-os>hpux/<address-model>64 : -mlp64 ;
 -
 -    local generic-os = [ set.difference $(all-os) : aix hpux ] ;
+-    compile-link-flags <target-os>$(generic-os)/<architecture>s390x/<address-model>32 : -m31 ;
+-    compile-link-flags <target-os>$(generic-os)/<architecture>s390x/<address-model>64 : -m64 ;
 -    local arch = power sparc x86 ;
 -    compile-link-flags <target-os>$(generic-os)/<architecture>$(arch)/<address-model>32 : -m32 ;
 -    compile-link-flags <target-os>$(generic-os)/<architecture>$(arch)/<address-model>64 : -m64 ;
  }
  
  {
-@@ -624,11 +619,11 @@
+@@ -657,11 +650,11 @@
  ###
  
  # Declare flags and action for compilation.
@@ -29,7 +31,7 @@
  
  toolset.flags gcc.compile OPTIONS <inlining>off  : -fno-inline ;
  toolset.flags gcc.compile OPTIONS <inlining>on   : -Wno-inline ;
-@@ -637,8 +632,8 @@
+@@ -674,8 +667,8 @@
  toolset.flags gcc.compile OPTIONS <warnings>pedantic : -Wall -Wextra -pedantic ;
  toolset.flags gcc.compile OPTIONS <warnings-as-errors>on : -Werror ;
  
@@ -40,7 +42,7 @@
  
  toolset.flags gcc.compile OPTIONS <local-visibility>hidden : -fvisibility=hidden ;
  toolset.flags gcc.compile.c++ OPTIONS <local-visibility>hidden : -fvisibility-inlines-hidden ;
-@@ -1069,7 +1064,7 @@
+@@ -1157,7 +1150,7 @@
  # x86 and compatible
  # The 'native' option appeared in gcc 4.2 so we cannot safely use it as default.
  # Use i686 instead for 32-bit.
diff --git a/boost-link.patch b/boost-link.patch
index f934349..20dc815 100644
--- a/boost-link.patch
+++ b/boost-link.patch
@@ -1,15 +1,15 @@
---- boost_1_67_0/tools/build/src/tools/python.jam.orig	2018-04-11 15:49:09.000000000 +0200
-+++ boost_1_67_0/tools/build/src/tools/python.jam	2018-07-16 19:34:14.205382890 +0200
-@@ -380,7 +380,7 @@
+--- boost_1_92_0/tools/build/src/tools/python.jam.orig
++++ boost_1_92_0/tools/build/src/tools/python.jam
+@@ -389,7 +389,7 @@
  #
  local rule split-version ( version )
  {
--    local major-minor = [ MATCH "^([0-9]+)\.([0-9]+)(.*)$" : $(version) : 1 2 3 ] ;
-+    local major-minor = [ MATCH "^([0-9]+)\.([0-9m]+)(.*)$" : $(version) : 1 2 3 ] ;
+-    local major-minor = [ MATCH "^([0-9]+)\\.([0-9]+)(.*)$" : $(version) ] ;
++    local major-minor = [ MATCH "^([0-9]+)\\.([0-9m]+)(.*)$" : $(version) ] ;
      if ! $(major-minor[2]) || $(major-minor[3])
      {
          ECHO "Warning: \"using python\" expects a two part (major, minor) version number; got" $(version) instead ;
-@@ -1033,7 +1033,7 @@
+@@ -1099,7 +1099,7 @@
              :
              : $(target-requirements)
              :
diff --git a/boost-python-abi_letters.patch b/boost-python-abi_letters.patch
index 7e25618..1cb04dc 100644
--- a/boost-python-abi_letters.patch
+++ b/boost-python-abi_letters.patch
@@ -1,15 +1,15 @@
---- boost_1_57_0/tools/build/src/tools/python.jam	2013-05-21 06:14:18.000000000 +0200
-+++ boost_1_55_0/tools/build/src/tools/python.jam	2014-05-29 19:09:12.115413877 +0200
-@@ -94,7 +94,7 @@ feature.feature pythonpath : : free opti
+--- boost_1_92_0/tools/build/src/tools/python.jam.orig
++++ boost_1_92_0/tools/build/src/tools/python.jam
+@@ -99,7 +99,7 @@
  #   using python : 2.3 : /usr/local/bin/python ;
  #
  rule init ( version ? : cmd-or-prefix ? : includes * : libraries ?
 -    : condition * : extension-suffix ? )
 +    : condition * : extension-suffix ? : abi-letters ? )
  {
-     project.push-current $(.project) ;
- 
-@@ -107,7 +107,7 @@ rule init ( version ? : cmd-or-prefix ? 
+     if ! $(.initialized)
+     {
+@@ -124,7 +124,7 @@
          }
      }
  
@@ -18,7 +18,7 @@
  
      project.pop-current ;
  }
-@@ -653,7 +653,7 @@ local rule system-library-dependencies (
+@@ -728,7 +728,7 @@
  
  # Declare a target to represent Python's library.
  #
@@ -27,7 +27,7 @@
  {
      # Compute the representation of Python version in the name of Python's
      # library file.
-@@ -677,13 +677,13 @@ local rule declare-libpython-target ( ve
+@@ -752,13 +752,13 @@
      }
  
      # Declare it.
@@ -43,7 +43,7 @@
  {
      local prefix ;
      local exec-prefix ;
-@@ -699,6 +699,7 @@ local rule configure ( version ? : cmd-o
+@@ -774,6 +774,7 @@
          extension-suffix ?= _d ;
      }
      extension-suffix ?= "" ;
@@ -51,7 +51,7 @@
  
      local cmds-to-try ;
  
-@@ -922,7 +923,7 @@ local rule configure ( version ? : cmd-o
+@@ -1030,7 +1031,7 @@
      }
      else
      {
diff --git a/includes.patch b/includes.patch
deleted file mode 100644
index 1b991aa..0000000
--- a/includes.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- boost_1_87_0/boost/lockfree/detail/freelist.hpp.orig	2024-12-05 01:53:33.000000000 +0100
-+++ boost_1_87_0/boost/lockfree/detail/freelist.hpp	2024-12-23 17:20:21.772444369 +0100
-@@ -10,6 +10,7 @@
- #ifndef BOOST_LOCKFREE_FREELIST_HPP_INCLUDED
- #define BOOST_LOCKFREE_FREELIST_HPP_INCLUDED
- 
-+#include <cstdint>
- #include <cstring>
- #include <limits>
- #include <memory>
diff --git a/numpy2.patch b/numpy2.patch
deleted file mode 100644
index 075d73a..0000000
--- a/numpy2.patch
+++ /dev/null
@@ -1,76 +0,0 @@
-From 0474de0f6cc9c6e7230aeb7164af2f7e4ccf74bf Mon Sep 17 00:00:00 2001
-From: Alexis DUBURCQ <alexis.duburcq at gmail.com>
-Date: Fri, 15 Mar 2024 14:10:16 +0100
-Subject: [PATCH] Support numpy 2.0.0b1
-
----
- src/numpy/dtype.cpp | 8 +++++++-
- 1 file changed, 7 insertions(+), 1 deletion(-)
-
-diff --git a/src/numpy/dtype.cpp b/src/numpy/dtype.cpp
-index 88a20a27b5..da30d1927b 100644
---- a/src/numpy/dtype.cpp
-+++ b/src/numpy/dtype.cpp
-@@ -98,7 +98,13 @@ python::detail::new_reference dtype::convert(object const & arg, bool align)
-   return python::detail::new_reference(reinterpret_cast<PyObject*>(obj));
- }
- 
--int dtype::get_itemsize() const { return reinterpret_cast<PyArray_Descr*>(ptr())->elsize;}
-+int dtype::get_itemsize() const {
-+#if NPY_ABI_VERSION < 0x02000000
-+  return reinterpret_cast<PyArray_Descr*>(ptr())->elsize;
-+#else
-+  return PyDataType_ELSIZE(reinterpret_cast<PyArray_Descr*>(ptr()));
-+#endif
-+}
- 
- bool equivalent(dtype const & a, dtype const & b) {
-     // On Windows x64, the behaviour described on 
-From 99a5352b5cf790c559a7b976c1ba99520431d9d1 Mon Sep 17 00:00:00 2001
-From: "Billy K. Poon" <bkpoon at lbl.gov>
-Date: Mon, 15 Jul 2024 15:48:38 -0700
-Subject: [PATCH] Another fix for numpy 2.0
-
-- Compare pointers directly instead of using PyArray_EquivTypes
----
- src/numpy/dtype.cpp | 27 +--------------------------
- 1 file changed, 1 insertion(+), 26 deletions(-)
-
-diff --git a/src/numpy/dtype.cpp b/src/numpy/dtype.cpp
-index da30d1927..1ce8c6ec3 100644
---- a/src/numpy/dtype.cpp
-+++ b/src/numpy/dtype.cpp
-@@ -107,32 +107,7 @@ int dtype::get_itemsize() const {
- }
- 
- bool equivalent(dtype const & a, dtype const & b) {
--    // On Windows x64, the behaviour described on 
--    // http://docs.scipy.org/doc/numpy/reference/c-api.array.html for
--    // PyArray_EquivTypes unfortunately does not extend as expected:
--    // "For example, on 32-bit platforms, NPY_LONG and NPY_INT are equivalent".
--    // This should also hold for 64-bit platforms (and does on Linux), but not
--    // on Windows. Implement an alternative:
--#ifdef _MSC_VER
--    if (sizeof(long) == sizeof(int) &&
--        // Manually take care of the type equivalence.
--        ((a == dtype::get_builtin<long>() || a == dtype::get_builtin<int>()) &&
--         (b == dtype::get_builtin<long>() || b == dtype::get_builtin<int>()) ||
--         (a == dtype::get_builtin<unsigned int>() || a == dtype::get_builtin<unsigned long>()) &&
--         (b == dtype::get_builtin<unsigned int>() || b == dtype::get_builtin<unsigned long>()))) {
--        return true;
--    } else {
--        return PyArray_EquivTypes(
--            reinterpret_cast<PyArray_Descr*>(a.ptr()),
--            reinterpret_cast<PyArray_Descr*>(b.ptr())
--        );
--    }
--#else
--    return PyArray_EquivTypes(
--        reinterpret_cast<PyArray_Descr*>(a.ptr()),
--        reinterpret_cast<PyArray_Descr*>(b.ptr())
--    );
--#endif
-+  return a == b;
- }
- 
- namespace
diff --git a/thread-typo.patch b/thread-typo.patch
deleted file mode 100644
index 55e1a88..0000000
--- a/thread-typo.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From 49ccf9c30a0ca556873dbf64b12b0d741d1b3e66 Mon Sep 17 00:00:00 2001
-From: Arvid Norlander <arvid-norlander at users.noreply.github.com>
-Date: Fri, 8 Nov 2024 16:48:43 +0100
-Subject: [PATCH] Fix build on clang-19 (which checks more things in
- uninstantiated templates)
-
-Fixes issue #402
----
- include/boost/thread/future.hpp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/include/boost/thread/future.hpp b/include/boost/thread/future.hpp
-index 00f504b9b..d15d7ffa5 100644
---- a/include/boost/thread/future.hpp
-+++ b/include/boost/thread/future.hpp
-@@ -4668,7 +4668,7 @@ namespace detail
-       }
-       run_it& operator=(BOOST_THREAD_RV_REF(run_it) x) BOOST_NOEXCEPT {
-         if (this != &x) {
--          that_=x.that;
-+          that_=x.that_;
-           x.that_.reset();
-         }
-         return *this;
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/boost.git/commitdiff/90fac37e591d31c9b87552d51f91fbb1289c6472



More information about the pld-cvs-commit mailing list