[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