Compare commits

...
Sign in to create a new pull request.

33 commits

Author SHA1 Message Date
Yaakov Selkowitz
50fc2b0fda Add dependencies on new subpackages to metapackage
boost-devel Requires: boost, which itself needs to Requires all
library subpackages so that the libboost_*.so symlinks are resolved,
and packages can safely link to them.
2026-01-14 20:16:20 -05:00
Jonathan Wakely
4a0779ec8c Fix libboost_system.so linker script to avoid ldcondig warning 2026-01-13 15:59:13 +00:00
Jonathan Wakely
5379719078 Add patch for boost/range/detail/any_iterator_interface.hpp 2026-01-12 12:22:41 +00:00
Jonathan Wakely
ec7383f6bd Rebase to 1.90.0
See https://fedoraproject.org/wiki/Changes/F44_Boost_1_90
Drop boost-system subpackage and libboost_thread.so linker script
Add new boost-charconv, boost-cobalt, and boost-process subpackages
2026-01-10 22:49:17 +00:00
Python Maint
403199971d Rebuilt for Python 3.14.0rc3 bytecode 2025-09-19 12:09:30 +02:00
Python Maint
4a984a6238 Rebuilt for Python 3.14.0rc2 bytecode 2025-08-15 12:40:18 +02:00
František Zatloukal
2f2bd5aba3 Rebuilt for icu 77.1 2025-08-05 19:09:43 +02:00
Fedora Release Engineering
bb27bd2d27 Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild 2025-07-23 17:49:38 +00:00
Python Maint
9784bfcbb7 Rebuilt for Python 3.14 2025-06-03 12:29:48 +02:00
Wolfgang Stöggl
bd0476d632 Fix no member named ‘that’ error
- Add boost-1.83-fix-no-member-named_that_error.patch
- Fixes FTBS of Poedit (#2341086)
2025-01-26 07:44:25 +01:00
Fedora Release Engineering
7e04e7d896 Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild 2025-01-16 12:45:41 +00:00
Sandro
3cc264041a
Backport patches for NumPy 2.x
Fix build error since upgrade to NumPy 2.x.
2024-12-25 09:40:28 +01:00
Pete Walter
0d18786666 Rebuild for ICU 76 2024-12-06 12:34:24 +00:00
Adam Williamson
a893d9ada9 Handle RPM 4.20 build directory change
RPM 4.20 adds another level to the build directory path, see
https://github.com/rpm-software-management/rpm/issues/3147 .
This tries to handle it.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-08-01 09:36:55 -07:00
Fedora Release Engineering
750fb0618c Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild 2024-07-17 18:30:44 +00:00
Python Maint
8a9a6c5073 Rebuilt for Python 3.13 2024-06-08 08:07:49 +02:00
Jonathan Wakely
74cf822853 Add missing Requires for rpminspect errors 2024-06-06 17:03:33 +01:00
U2FsdGVkX1
531b5cfda3 Backport patch to fix RISC-V functions missing 2024-06-06 19:04:31 +08:00
Kefu Chai
e13a584ab7 Add patch for addressing a Boost.Math bug
This change addresses the issue of
https://github.com/boostorg/math/issues/1132

the patch addresses the issue where float_next() and float_prior() return
a domain error instead +INF or -INF. this issue is a regression in
Boost 1.79.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2024-05-25 12:58:19 +08:00
Kefu Chai
dce3f3406f Add patch for addressing a Boost.Multiprecision bug
This change addresses the issue of
https://github.com/boostorg/multiprecision/issues/553,
the fix prevents an application from crash due to an exception
thrown in a function marked `noexcept`, when converting a `cpp_int`
to a float, if the value of this `cpp_int` cannot be represented with
a float. this issue is a regression in Boost 1.79, see more details
at https://github.com/boostorg/multiprecision/pull/618

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2024-05-05 10:30:54 +08:00
Pete Walter
932a39a687 Rebuild for ICU 74 2024-01-31 19:14:40 +00:00
Fedora Release Engineering
fe1d35be50 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-23 00:41:49 +00:00
Fedora Release Engineering
73e87aacff Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-19 14:36:38 +00:00
Patrick Palka
177b2b775d Rebase to 1.83.0
See https://fedoraproject.org/wiki/Changes/F40Boost183

Follow-up build fixes to dependent packages include:

  https://src.fedoraproject.org/fork/ppalka/rpms/aqsis/commits/rawhide
  https://src.fedoraproject.org/fork/ppalka/rpms/auryn/commits/rawhide
  https://src.fedoraproject.org/fork/ppalka/rpms/Field3D/commits/rawhide
  https://src.fedoraproject.org/fork/ppalka/rpms/python-graph-tool/commits/rawhide
  https://src.fedoraproject.org/fork/ppalka/rpms/scantailor/commits/rawhide
2023-12-06 14:24:37 -05:00
Yaakov Selkowitz
2dfe9ef974 Disable openmpi on RHEL 10+
RHEL 10 follows Fedora 40 and therefore also dropped the i686 build of
openmpi.
2023-12-05 17:54:28 -05:00
Orion Poplawski
56ec04471d Rework conditional 2023-10-29 12:44:09 -06:00
Orion Poplawski
d121d46377 Rebuild for openmpi 5.0.0, drops support for i686 2023-10-29 12:09:30 -06:00
Jonathan Wakely
bab1cef729 Remove dropped patches
These were dropped from the spec file but not removed from git.
2023-09-12 13:07:32 +01:00
Michal Kolar
a9ff19d2d3 tests/boost-testsuite-sanity: adapt to rpm package > 4.18.91, use the proper rpm macro value to determine the required path 2023-09-07 11:54:15 +00:00
Michal Kolar
bffabb9a28 Revert "tests/boost-testsuite-sanity: adapt to rpm package > 4.18.91"
This reverts commit 10a5ee96ff.
2023-09-07 11:44:26 +00:00
Michal Kolar
10a5ee96ff tests/boost-testsuite-sanity: adapt to rpm package > 4.18.91 2023-09-04 21:36:31 +00:00
Tom Callaway
39785c3bbd apply upstream fixes for failing random tests 2023-08-29 16:21:15 -04:00
Kefu Chai
33b1e83abc Add patch for Boost.Accumulators bug
This change silences the warning when compiling Boost.accumulators
with GCC 13. as some projects using Boost.Accumulators are compiled
with -Werror. Without this change, these project would have to disable
-Wuninitialized warning or silence it temporarily when including
the offending headers. Neither of these two solution is ideal from
a developer's perspective. so let's apply the patch when packaging
Boost. The patch was included by Boost 1.83.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2023-08-20 01:12:37 +08:00
14 changed files with 368 additions and 414 deletions

View file

@ -1,114 +0,0 @@
From f364ee7be2bb1a44a2724d92f67490deaf19dc5e Mon Sep 17 00:00:00 2001
From: Andrey Semashev <andrey.semashev@gmail.com>
Date: Mon, 11 May 2020 19:59:23 +0300
Subject: [PATCH] Removed usage of deprecated header boost/detail/iterator.hpp.
The header was deprecated in favor of <iterator>. It generates compiler
warnings and will be removed in a future release.
---
boost/detail/algorithm.hpp | 2 +-
boost/graph/adjacency_iterator.hpp | 6 +++---
boost/graph/detail/adjacency_list.hpp | 5 +++--
boost/graph/incremental_components.hpp | 6 +++---
4 files changed, 10 insertions(+), 9 deletions(-)
diff --git a/boost/detail/algorithm.hpp b/boost/detail/algorithm.hpp
index 7793fb357..9b3195cbf 100644
--- a/boost/detail/algorithm.hpp
+++ b/boost/detail/algorithm.hpp
@@ -30,7 +30,7 @@
#ifndef BOOST_ALGORITHM_HPP
#define BOOST_ALGORITHM_HPP
-#include <boost/detail/iterator.hpp>
+
// Algorithms on sequences
//
// The functions in this file have not yet gone through formal
diff --git a/boost/graph/adjacency_iterator.hpp b/boost/graph/adjacency_iterator.hpp
index 5325e7875..4693e3a3a 100644
--- a/boost/graph/adjacency_iterator.hpp
+++ b/boost/graph/adjacency_iterator.hpp
@@ -10,7 +10,7 @@
#ifndef BOOST_ADJACENCY_ITERATOR_HPP
#define BOOST_ADJACENCY_ITERATOR_HPP
-#include <boost/detail/iterator.hpp>
+#include <iterator>
#include <boost/iterator/iterator_adaptor.hpp>
#include <boost/graph/graph_traits.hpp>
@@ -45,7 +45,7 @@ template < class Graph,
class adjacency_iterator_generator
{
typedef
- typename boost::detail::iterator_traits< OutEdgeIter >::difference_type
+ typename std::iterator_traits< OutEdgeIter >::difference_type
difference_type;
public:
@@ -81,7 +81,7 @@ template < class Graph,
class inv_adjacency_iterator_generator
{
typedef
- typename boost::detail::iterator_traits< InEdgeIter >::difference_type
+ typename std::iterator_traits< InEdgeIter >::difference_type
difference_type;
public:
diff --git a/boost/graph/detail/adjacency_list.hpp b/boost/graph/detail/adjacency_list.hpp
index 4b11fa516..c1a2ada23 100644
--- a/boost/graph/detail/adjacency_list.hpp
+++ b/boost/graph/detail/adjacency_list.hpp
@@ -21,6 +21,7 @@
#include <boost/range/irange.hpp>
#include <boost/graph/graph_traits.hpp>
#include <memory>
+#include <iterator>
#include <algorithm>
#include <boost/limits.hpp>
@@ -2370,7 +2371,7 @@ namespace detail
typedef typename OutEdgeList::size_type degree_size_type;
typedef typename OutEdgeList::iterator OutEdgeIter;
- typedef boost::detail::iterator_traits< OutEdgeIter >
+ typedef std::iterator_traits< OutEdgeIter >
OutEdgeIterTraits;
typedef
typename OutEdgeIterTraits::iterator_category OutEdgeIterCat;
@@ -2398,7 +2399,7 @@ namespace detail
// Edge Iterator
- typedef boost::detail::iterator_traits< EdgeIter > EdgeIterTraits;
+ typedef std::iterator_traits< EdgeIter > EdgeIterTraits;
typedef typename EdgeIterTraits::iterator_category EdgeIterCat;
typedef typename EdgeIterTraits::difference_type EdgeIterDiff;
diff --git a/boost/graph/incremental_components.hpp b/boost/graph/incremental_components.hpp
index 1ad8c9403..f16882e2a 100644
--- a/boost/graph/incremental_components.hpp
+++ b/boost/graph/incremental_components.hpp
@@ -13,10 +13,10 @@
#ifndef BOOST_INCREMENTAL_COMPONENTS_HPP
#define BOOST_INCREMENTAL_COMPONENTS_HPP
-#include <boost/detail/iterator.hpp>
+#include <boost/tuple/tuple.hpp>
#include <boost/graph/detail/incremental_components.hpp>
#include <boost/iterator/counting_iterator.hpp>
-#include <boost/make_shared.hpp>
+#include <boost/smart_ptr/make_shared.hpp>
#include <boost/pending/disjoint_sets.hpp>
#include <iterator>
@@ -69,7 +69,7 @@ void compress_components(ParentIterator first, ParentIterator last)
}
template < class ParentIterator >
-typename boost::detail::iterator_traits< ParentIterator >::difference_type
+typename std::iterator_traits< ParentIterator >::difference_type
component_count(ParentIterator first, ParentIterator last)
{
std::ptrdiff_t count = 0;

View file

@ -1,27 +0,0 @@
From d1343f28dcbe25b100b082b34775bd92ead4602c Mon Sep 17 00:00:00 2001
From: jzmaddock <john@johnmaddock.co.uk>
Date: Tue, 25 Jan 2022 09:27:40 +0000
Subject: [PATCH] Update gcc Intel intrinsic usage config. Fixes
https://github.com/boostorg/multiprecision/issues/419.
---
include/boost/multiprecision/cpp_int/intel_intrinsics.hpp | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/include/boost/multiprecision/cpp_int/intel_intrinsics.hpp b/include/boost/multiprecision/cpp_int/intel_intrinsics.hpp
index eb4624bb4..37717cd51 100644
--- a/include/boost/multiprecision/cpp_int/intel_intrinsics.hpp
+++ b/include/boost/multiprecision/cpp_int/intel_intrinsics.hpp
@@ -19,7 +19,11 @@
// If this is GCC/clang, then check that the actual intrinsic exists:
//
#if defined(__has_builtin) && defined(__GNUC__)
-#if !__has_builtin(__builtin_ia32_addcarryx_u64) && defined(BOOST_MP_HAS_IMMINTRIN_H) && !(defined(BOOST_GCC) && (__GNUC__ >= 9))
+#if !__has_builtin(__builtin_ia32_addcarryx_u64) && defined(BOOST_MP_HAS_IMMINTRIN_H) \
+ && !(defined(BOOST_GCC) && (__GNUC__ >= 9) \
+ && (defined(__amd64__) || defined(__amd64) || defined(__x86_64__) || defined(__x86_64)\
+ || defined(i386) || defined(__i386) || defined(__i386__) || defined(_M_AMD64) \
+ || defined(_M_X64) || defined(__amd64__) || defined(_M_X64)))
#undef BOOST_MP_HAS_IMMINTRIN_H
#endif
#elif defined(BOOST_MP_HAS_IMMINTRIN_H) && defined(__GNUC__) && !(defined(BOOST_GCC) && (__GNUC__ >= 9))

View file

@ -1,34 +0,0 @@
From c3ada7a1b2b54f4b27585f72308a76984f8489b4 Mon Sep 17 00:00:00 2001
From: jzmaddock <john@johnmaddock.co.uk>
Date: Tue, 16 Mar 2021 10:47:16 +0000
Subject: [PATCH] Add missing #includes.
---
test/multiprecision_float_test.cpp | 1 +
test/multiprecision_int_test.cpp | 1 +
2 files changed, 2 insertions(+)
diff --git a/test/multiprecision_float_test.cpp b/test/multiprecision_float_test.cpp
index 904c59d8f..bc2a9364d 100644
--- boost_1_76_0/libs/random/test/multiprecision_float_test.cpp
+++ boost_1_76_0/libs/random/test/multiprecision_float_test.cpp
@@ -20,6 +20,7 @@
#include <boost/multiprecision/debug_adaptor.hpp>
#include <boost/scoped_ptr.hpp>
#include <boost/random.hpp>
+#include <boost/mpl/list.hpp>
#include <sstream>
diff --git a/test/multiprecision_int_test.cpp b/test/multiprecision_int_test.cpp
index 577e52aff..41ec229b5 100644
--- boost_1_76_0/libs/random/test/multiprecision_int_test.cpp
+++ boost_1_76_0/libs/random/test/multiprecision_int_test.cpp
@@ -32,6 +32,7 @@
#include <boost/random/uniform_int.hpp>
#include <boost/random/uniform_smallint.hpp>
#include <boost/random/discrete_distribution.hpp>
+#include <boost/mpl/list.hpp>
#include <sstream>
typedef boost::mpl::list <

View file

@ -1,72 +0,0 @@
From 78fd284a42caabe8815cb0870b46e5567872e75b Mon Sep 17 00:00:00 2001
From: Dmitry <grisumbras@gmail.com>
Date: Sat, 11 Dec 2021 16:58:23 +0300
Subject: [PATCH] Don't skip install targets if there's <build>no in ureqs
(#113)
---
src/tools/stage.jam | 4 ++++
test/install_build_no.py | 26 ++++++++++++++++++++++++++
test/test_all.py | 1 +
3 files changed, 31 insertions(+)
create mode 100755 test/install_build_no.py
diff --git a/tools/build/src/tools/stage.jam b/tools/build/src/tools/stage.jam
index c5f02e3ba4..325129dc81 100644
--- a/tools/build/src/tools/stage.jam
+++ b/tools/build/src/tools/stage.jam
@@ -478,6 +478,10 @@ class install-target-class : basic-target
return [ sequence.unique $(result2) ] ;
}
+ rule skip-from-usage-requirements ( )
+ {
+ }
+
# Returns true iff 'type' is subtype of some element of 'types-to-include'.
#
local rule include-type ( type : types-to-include * )
diff --git a/tools/build/test/install_build_no.py b/tools/build/test/install_build_no.py
new file mode 100755
index 0000000000..0ccf3c5cc6
--- /dev/null
+++ b/tools/build/test/install_build_no.py
@@ -0,0 +1,26 @@
+#!/usr/bin/python
+
+# Copyright 2021 Dmitry Arkhipov (grisumbras@gmail.com)
+# Distributed under the Boost Software License, Version 1.0.
+# (See accompanying file LICENSE.txt or https://www.bfgroup.xyz/b2/LICENSE.txt)
+
+# Check that <build>no in usage-requirements of dependencies does not affect
+# install rule, i.e. a skipped installed target does not affect insallation of
+# other targets.
+
+import BoostBuild
+
+t = BoostBuild.Tester()
+
+t.write("a.cpp", "int main() {}\n")
+
+t.write("jamroot.jam", """
+make x : : maker : <build>no ;
+exe a : a.cpp ;
+install install : x a ;
+""")
+
+t.run_build_system()
+t.expect_addition("install/a.exe")
+
+t.cleanup()
diff --git a/tools/build/test/test_all.py b/tools/build/test/test_all.py
index b7ef5ad701..9ed729d017 100644
--- a/tools/build/test/test_all.py
+++ b/tools/build/test/test_all.py
@@ -250,6 +250,7 @@ def reorder_tests(tests, first_test):
"inherit_toolset",
"inherited_dependency",
"inline",
+ "install_build_no",
"libjpeg",
"liblzma",
"libpng",

View file

@ -1,31 +0,0 @@
From 25e4220a4564a3f8ec22607fcdbee90c81f040d6 Mon Sep 17 00:00:00 2001
From: Thomas W Rodgers <trodgers@redhat.com>
Date: Mon, 28 Feb 2022 21:24:07 -0800
Subject: [PATCH 2/3] Adjust options to remove RPATH for Fedora package builds
---
src/tools/gcc.jam | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/tools/build/src/tools/gcc.jam b/tools/build/src/tools/gcc.jam
index 543cfd84..fd213ccb 100644
--- a/tools/build/src/tools/gcc.jam
+++ b/tools/build/src/tools/gcc.jam
@@ -1045,12 +1045,11 @@ actions link.dll.mingw bind LIBRARIES
actions link bind LIBRARIES
{
- "$(CONFIG_COMMAND)" -L"$(LINKPATH)" -Wl,$(RPATH_OPTION:E=-R)$(SPACE)-Wl,$(RPATH) -Wl,-rpath-link$(SPACE)-Wl,"$(RPATH_LINK)" -o "$(<)" $(START-GROUP) "$(>)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS)
-}
+ "$(CONFIG_COMMAND)" -L"$(LINKPATH)" -o "$(<)" $(START-GROUP) "$(>)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS)}
actions link.dll bind LIBRARIES
{
- "$(CONFIG_COMMAND)" -L"$(LINKPATH)" -Wl,$(RPATH_OPTION:E=-R)$(SPACE)-Wl,$(RPATH) "$(.IMPLIB-COMMAND)$(<[1])" -o "$(<[-1])" $(HAVE_SONAME)-Wl,$(SONAME_OPTION)$(SPACE)-Wl,$(<[-1]:D=) -shared $(START-GROUP) "$(>)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS)
+ "$(CONFIG_COMMAND)" -L"$(LINKPATH)" "$(.IMPLIB-COMMAND)$(<[1])" -o "$(<[-1])" $(HAVE_SONAME)-Wl,$(SONAME_OPTION)$(SPACE)-Wl,$(<[-1]:D=) -shared $(START-GROUP) "$(>)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS)
}
###
--
2.35.1

View file

@ -1,20 +0,0 @@
--- boost_1_81_0/boost/phoenix/stl/tuple.hpp~ 2023-03-15 09:31:59.327721489 +0000
+++ boost_1_81_0/boost/phoenix/stl/tuple.hpp 2023-03-15 09:32:02.787722445 +0000
@@ -106,14 +106,16 @@
tuple_detail::idx_wrap<N>(), t);
}
+#ifndef BOOST_PHOENIX_NO_PREDEFINED_TERMINALS
// Make unpacked argument placeholders
namespace placeholders {
#define BOOST_PP_LOCAL_LIMITS (1, BOOST_PHOENIX_ARG_LIMIT)
#define BOOST_PP_LOCAL_MACRO(N) \
- auto uarg##N = \
+ const auto uarg##N = \
boost::phoenix::get_<(N)-1>(boost::phoenix::placeholders::arg1);
#include BOOST_PP_LOCAL_ITERATE()
}
+#endif
}} // namespace boost::phoenix
#endif // C++ 14

View file

@ -1,35 +1,35 @@
From aabd16d1a74a1c2be151e16bda9ff55af4f0beba Mon Sep 17 00:00:00 2001
From: Thomas W Rodgers <rodgert@twrodgers.com>
Date: Thu, 12 Jan 2023 11:54:59 -0800
From ebc90bc3e372dc8e5db21f79d2a79e4f5c4d01ee Mon Sep 17 00:00:00 2001
From: Patrick Palka <ppalka@redhat.com>
Date: Mon, 4 Dec 2023 09:24:20 -0500
Subject: [PATCH] Adjust options for Fedora package build
---
src/tools/gcc.jam | 36 ++++++++++++++++++------------------
1 file changed, 18 insertions(+), 18 deletions(-)
tools/build/src/tools/gcc.jam | 30 +++++++++++++++---------------
1 file changed, 15 insertions(+), 15 deletions(-)
diff --git a/src/tools/gcc.jam b/src/tools/gcc.jam
index 14be886f5..9dd0ba0a6 100644
diff --git a/tools/build/src/tools/gcc.jam b/tools/build/src/tools/gcc.jam
index 834f5e1bf..c753afc23 100644
--- a/tools/build/src/tools/gcc.jam
+++ b/tools/build/src/tools/gcc.jam
@@ -511,7 +511,7 @@ rule compile.fortran ( targets * : sources * : properties * )
@@ -513,7 +513,7 @@ rule compile.fortran ( targets * : sources * : properties * )
actions compile.c++ bind PCH_FILE
{
- "$(CONFIG_COMMAND)" $(LANG) -ftemplate-depth-$(TEMPLATE_DEPTH) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -include"$(PCH_FILE:S=)" -I"$(INCLUDES)" -include"$(FORCE_INCLUDES)" -c -o "$(<:W)" "$(>:W)"
+ "$(CONFIG_COMMAND)" $(LANG) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -include"$(PCH_FILE:S=)" -I"$(INCLUDES)" -include"$(FORCE_INCLUDES)" -c -o "$(<:W)" "$(>:W)"
- "$(CONFIG_COMMAND)" $(LANG) -ftemplate-depth-$(TEMPLATE_DEPTH) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) $(INCLUDE-GCH)$(_)"$(PCH_FILE:S=)" $(INCLUDE-PCH)$(_)"$(PCH_FILE)" -I"$(INCLUDES)" -include$(_)"$(FORCE_INCLUDES)" -c -o "$(<)" "$(>:T)"
+ "$(CONFIG_COMMAND)" $(LANG) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) $(INCLUDE-GCH)$(_)"$(PCH_FILE:S=)" $(INCLUDE-PCH)$(_)"$(PCH_FILE)" -I"$(INCLUDES)" -include$(_)"$(FORCE_INCLUDES)" -c -o "$(<)" "$(>:T)"
}
actions compile.c bind PCH_FILE
@@ -521,7 +521,7 @@ actions compile.c bind PCH_FILE
@@ -523,7 +523,7 @@ actions compile.c bind PCH_FILE
actions compile.c++.preprocess bind PCH_FILE
{
- "$(CONFIG_COMMAND)" $(LANG) -ftemplate-depth-$(TEMPLATE_DEPTH) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -include"$(PCH_FILE:S=)" -I"$(INCLUDES)" -include"$(FORCE_INCLUDES)" "$(>:W)" -E >"$(<:W)"
+ "$(CONFIG_COMMAND)" $(LANG) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -include"$(PCH_FILE:S=)" $(PCH_FILE:D)" -I"$(INCLUDES)" -include"$(FORCE_INCLUDES)" "$(>:W)" -E >"$(<:W)"
- "$(CONFIG_COMMAND)" $(LANG) -ftemplate-depth-$(TEMPLATE_DEPTH) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) $(INCLUDE-GCH)$(_)"$(PCH_FILE:S=)" $(INCLUDE-PCH)$(_)"$(PCH_FILE)" -I"$(INCLUDES)" -include$(_)"$(FORCE_INCLUDES)" "$(>:T)" -E >"$(<)"
+ "$(CONFIG_COMMAND)" $(LANG) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) $(INCLUDE-GCH)$(_)"$(PCH_FILE:S=)" $(INCLUDE-PCH)$(_)"$(PCH_FILE)" -I"$(INCLUDES)" -include$(_)"$(FORCE_INCLUDES)" "$(>:T)" -E >"$(<)"
}
actions compile.c.preprocess bind PCH_FILE
@@ -624,22 +624,22 @@ actions compile.c.pch
@@ -627,22 +627,22 @@ actions compile.c.pch
###
# Declare flags and action for compilation.
@ -37,28 +37,25 @@ index 14be886f5..9dd0ba0a6 100644
-toolset.flags gcc.compile OPTIONS <optimization>speed : -O3 ;
-toolset.flags gcc.compile OPTIONS <optimization>space : -Os ;
-toolset.flags gcc.compile OPTIONS <optimization>minimal : -O1 ;
-toolset.flags gcc.compile OPTIONS <optimization>debug : -Og ;
-
+toolset.flags gcc.compile OPTIONS <optimization>off : ;
+toolset.flags gcc.compile OPTIONS <optimization>speed : ;
+toolset.flags gcc.compile OPTIONS <optimization>space : ;
+toolset.flags gcc.compile OPTIONS <optimization>minimal : ;
toolset.flags gcc.compile OPTIONS <optimization>debug : -Og ;
-toolset.flags gcc.compile OPTIONS <inlining>off : -fno-inline ;
-toolset.flags gcc.compile OPTIONS <inlining>on : -Wno-inline ;
-toolset.flags gcc.compile OPTIONS <inlining>full : -finline-functions -Wno-inline ;
-
+toolset.flags gcc.compile OPTIONS <inlining>off : ;
+toolset.flags gcc.compile OPTIONS <inlining>on : ;
+toolset.flags gcc.compile OPTIONS <inlining>full : ;
-toolset.flags gcc.compile OPTIONS <warnings>off : -w ;
-toolset.flags gcc.compile OPTIONS <warnings>on : -Wall ;
-toolset.flags gcc.compile OPTIONS <warnings>all : -Wall ;
-toolset.flags gcc.compile OPTIONS <warnings>extra : -Wall -Wextra ;
-toolset.flags gcc.compile OPTIONS <warnings>pedantic : -Wall -Wextra -pedantic ;
-toolset.flags gcc.compile OPTIONS <warnings-as-errors>on : -Werror ;
+toolset.flags gcc.compile OPTIONS <optimization>off : ;
+toolset.flags gcc.compile OPTIONS <optimization>speed : ;
+toolset.flags gcc.compile OPTIONS <optimization>space : ;
+toolset.flags gcc.compile OPTIONS <optimization>minimal : ;
+toolset.flags gcc.compile OPTIONS <optimization>debug : ;
+
+toolset.flags gcc.compile OPTIONS <inlining>off : ;
+toolset.flags gcc.compile OPTIONS <inlining>on : ;
+toolset.flags gcc.compile OPTIONS <inlining>full : ;
+
+toolset.flags gcc.compile OPTIONS <warnings>off : ;
+toolset.flags gcc.compile OPTIONS <warnings>on : ;
+toolset.flags gcc.compile OPTIONS <warnings>all : ;
@ -69,5 +66,5 @@ index 14be886f5..9dd0ba0a6 100644
toolset.flags gcc.compile OPTIONS <debug-symbols>on : -g ;
toolset.flags gcc.compile OPTIONS <profiling>on : -pg ;
--
2.39.0
2.43.0

42
boost-1.90-system.patch Normal file
View file

@ -0,0 +1,42 @@
From d9554db26c3dbb00a6a293ee4fd4966e4e278da8 Mon Sep 17 00:00:00 2001
From: Peter Dimov <pdimov@gmail.com>
Date: Mon, 15 Dec 2025 21:51:45 +0200
Subject: [PATCH] Install boost_system as header-only
---
boost-install.jam | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/boost-install.jam b/boost-install.jam
index b87e308..5e6bfa6 100644
--- a/tools/boost_install/boost-install.jam
+++ b/tools/boost_install/boost-install.jam
@@ -1015,7 +1015,7 @@ local rule install-cmake-config- ( install-or-stage : version : name : requireme
local library-type = UNKNOWN ;
- if $(name) = boost_headers || $(name) = boost_math || $(name) = boost_exception
+ if $(name) = boost_headers || $(name) = boost_math || $(name) = boost_exception || $(name) = boost_system
{
library-type = INTERFACE ;
}
From 9529e070ea9e9afd1da17edd48993d560fdc0d7a Mon Sep 17 00:00:00 2001
From: Peter Dimov <pdimov@gmail.com>
Date: Mon, 15 Dec 2025 21:52:49 +0200
Subject: [PATCH] Still install boost_system, for the CMake configuration. Refs
#132.
---
build.jam | 1 +
1 file changed, 1 insertion(+)
diff --git a/build.jam b/build.jam
index 65da5aa6..5b6545c8 100644
--- a/libs/system//build.jam
+++ b/libs/system//build.jam
@@ -21,4 +21,5 @@ explicit
;
call-if : boost-library system
+ : install boost_system
;

View file

@ -0,0 +1,31 @@
From 6a8ff06728b64a1121a6179d891ab0baf3b9290b Mon Sep 17 00:00:00 2001
From: Patrick Palka <ppalka@redhat.com>
Date: Mon, 4 Dec 2023 09:27:13 -0500
Subject: [PATCH] Adjust options to remove RPATH for Fedora package builds
---
tools/build/src/tools/gcc.jam | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/tools/build/src/tools/gcc.jam b/tools/build/src/tools/gcc.jam
index c753afc23..e0b627726 100644
--- a/tools/build/src/tools/gcc.jam
+++ b/tools/build/src/tools/gcc.jam
@@ -1035,12 +1035,12 @@ rule link.dll ( targets * : sources * : properties * )
actions link bind LIBRARIES
{
- "$(CONFIG_COMMAND)" @($(<[1]:T).rsp:O=FC:<=@":>=":E=-L"$(LINKPATH)" -Wl,$(RPATH_OPTION)$(SPACE)-Wl,$(RPATH) -Wl,-rpath-link$(SPACE)-Wl,"$(RPATH_LINK)" -o "$(<:T)" $(START-GROUP) "$(>:T)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS))
+ "$(CONFIG_COMMAND)" @($(<[1]:T).rsp:O=FC:<=@":>=":E=-L"$(LINKPATH)" -o "$(<:T)" $(START-GROUP) "$(>:T)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS))
}
actions link.dll bind LIBRARIES
{
- "$(CONFIG_COMMAND)" @($(<[1]:T).rsp:O=FC:<=@":>=":E=-L"$(LINKPATH)" -Wl,$(RPATH_OPTION)$(SPACE)-Wl,$(RPATH) -Wl,$(IMPLIB_OPTION:E=--out-implib),"$(<[2]:T)" -o "$(<[1]:T)" $(HAVE_SONAME)-Wl,$(SONAME_OPTION)$(SPACE)-Wl,"$(SONAME_PREFIX:E=)$(<[1]:D=)" $(SHARED_OPTION:E=-shared) $(START-GROUP) "$(>:T)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS))
+ "$(CONFIG_COMMAND)" @($(<[1]:T).rsp:O=FC:<=@":>=":E=-L"$(LINKPATH)" -Wl,$(IMPLIB_OPTION:E=--out-implib),"$(<[2]:T)" -o "$(<[1]:T)" $(HAVE_SONAME)-Wl,$(SONAME_OPTION)$(SPACE)-Wl,"$(SONAME_PREFIX:E=)$(<[1]:D=)" $(SHARED_OPTION:E=-shared) $(START-GROUP) "$(>:T)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS))
}
###
--
2.43.0

22
boost-1.90.0-range.patch Normal file
View file

@ -0,0 +1,22 @@
From 9ac89e9936b826c13e90611cb9a81a7aa0508d20 Mon Sep 17 00:00:00 2001
From: Michael Cho <michael@michaelcho.dev>
Date: Sun, 30 Mar 2025 21:45:49 -0400
Subject: [PATCH] Add include for add_const
Signed-off-by: Michael Cho <michael@michaelcho.dev>
---
include/boost/range/detail/any_iterator_interface.hpp | 1 +
1 file changed, 1 insertion(+)
diff --git a/include/boost/range/detail/any_iterator_interface.hpp b/include/boost/range/detail/any_iterator_interface.hpp
index 1103be6c..79e71dbd 100644
--- boost_1_90_0/boost/range/detail/any_iterator_interface.hpp
+++ boost_1_90_0/boost/range/detail/any_iterator_interface.hpp
@@ -13,6 +13,7 @@
#include <boost/mpl/if.hpp>
#include <boost/range/detail/any_iterator_buffer.hpp>
#include <boost/iterator/iterator_categories.hpp>
+#include <boost/type_traits/add_const.hpp>
#include <boost/type_traits/is_convertible.hpp>
#include <boost/type_traits/is_reference.hpp>
#include <boost/type_traits/remove_const.hpp>

View file

@ -16,9 +16,13 @@
# All arches have mpich
%bcond_without mpich
%ifarch s390
# No OpenMPI support on these arches
%bcond_with openmpi
%if 0%{?fedora} >= 40 || 0%{?rhel} >= 10
%ifarch %{ix86}
# No OpenMPI support on these arches
%bcond_with openmpi
%else
%bcond_without openmpi
%endif
%else
%bcond_without openmpi
%endif
@ -38,11 +42,17 @@
%bcond_without quadmath
%endif
%ifnarch x86_64
%bcond_with stacktrace_from_exception
%else
%bcond_without stacktrace_from_exception
%endif
Name: boost
%global real_name boost
Summary: The free peer-reviewed portable C++ source libraries
Version: 1.81.0
Release: 7%{?dist}
Version: 1.90.0
Release: 4%{?dist}
License: BSL-1.0 AND MIT AND Python-2.0.1
# Replace each . with _ in %%{version}
@ -54,12 +64,11 @@ License: BSL-1.0 AND MIT AND Python-2.0.1
%global toplev_dirname %{real_name}_%{version_enc}
URL: http://www.boost.org
# https://boostorg.jfrog.io/artifactory/main/release/1.81.0/source/boost_1_81_0.tar.bz2
Source0: https://boostorg.jfrog.io/artifactory/main/release/%{version}/source/%{name}_%{version_enc}.tar.bz2
Source1: libboost_thread.so
# https://archives.boost.io/release/1.90.0/source/boost_1_90_0.tar.bz2
Source0: https://archives.boost.io/release/%{version}/source/%{name}_%{version_enc}.tar.bz2
# Add a manual page for b2, based on the online documentation:
# http://www.boost.org/boost-build2/doc/html/bbv2/overview.html
Source2: b2.1
Source1: b2.1
# Since Fedora 13, the Boost libraries are delivered with sonames
# equal to the Boost version (e.g., 1.41.0).
@ -72,7 +81,9 @@ Source2: b2.1
# The subpackages that don't install shared libraries are also not pulled in
# (b2, build, doc, doctools, examples, static).
Requires: %{name}-atomic%{?_isa} = %{version}-%{release}
Requires: %{name}-charconv%{?_isa} = %{version}-%{release}
Requires: %{name}-chrono%{?_isa} = %{version}-%{release}
Requires: %{name}-cobalt%{?_isa} = %{version}-%{release}
Requires: %{name}-container%{?_isa} = %{version}-%{release}
Requires: %{name}-contract%{?_isa} = %{version}-%{release}
%if %{with context}
@ -91,6 +102,7 @@ Requires: %{name}-locale%{?_isa} = %{version}-%{release}
Requires: %{name}-log%{?_isa} = %{version}-%{release}
Requires: %{name}-math%{?_isa} = %{version}-%{release}
Requires: %{name}-nowide%{?_isa} = %{version}-%{release}
Requires: %{name}-process%{?_isa} = %{version}-%{release}
Requires: %{name}-program-options%{?_isa} = %{version}-%{release}
%if %{with python3}
Requires: %{name}-python3%{?_isa} = %{version}-%{release}
@ -99,12 +111,15 @@ Requires: %{name}-random%{?_isa} = %{version}-%{release}
Requires: %{name}-regex%{?_isa} = %{version}-%{release}
Requires: %{name}-serialization%{?_isa} = %{version}-%{release}
Requires: %{name}-stacktrace%{?_isa} = %{version}-%{release}
Requires: %{name}-system%{?_isa} = %{version}-%{release}
Requires: %{name}-test%{?_isa} = %{version}-%{release}
Requires: %{name}-thread%{?_isa} = %{version}-%{release}
Requires: %{name}-timer%{?_isa} = %{version}-%{release}
Requires: %{name}-type_erasure%{?_isa} = %{version}-%{release}
Requires: %{name}-url%{?_isa} = %{version}-%{release}
Requires: %{name}-wave%{?_isa} = %{version}-%{release}
# F44 dropped the boost-system subpackage
Obsoletes: boost-system < 1.90.0
Conflicts: boost-system < 1.90.0
%if %{with python3}
Recommends: (boost-numpy3 if python3-numpy)
@ -131,7 +146,7 @@ BuildRequires: libzstd-devel
Patch0: boost-1.81.0-build-optflags.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=1318383
Patch1: boost-1.78.0-no-rpath.patch
Patch1: boost-1.90.0-no-rpath.patch
# https://lists.boost.org/Archives/boost/2020/04/248812.php
Patch2: boost-1.73.0-cmakedir.patch
@ -139,18 +154,17 @@ Patch2: boost-1.73.0-cmakedir.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=1541035
Patch3: boost-1.78.0-b2-build-flags.patch
# https://github.com/boostorg/random/issues/82
Patch4: boost-1.76.0-random-test.patch
# PR https://github.com/boostorg/interval/pull/30
# Fixes narrowing conversions for ppc -
# https://github.com/boostorg/interval/issues/29
Patch5: boost-1.76.0-fix-narrowing-conversions-for-ppc.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=2178210
# https://github.com/boostorg/phoenix/issues/111
# https://github.com/boostorg/phoenix/issues/115
Patch6: boost-1.81-phoenix-multiple-defn.patch
# Install boost_system for the CMake configuration
# https://github.com/boostorg/system/issues/132
Patch6: boost-1.90-system.patch
# https://github.com/boostorg/range/pull/157
Patch7: boost-1.90.0-range.patch
%bcond_with tests
%bcond_with docs_generated
@ -175,14 +189,33 @@ types and operations on these data types, as well as memory ordering
constraints required for coordinating multiple threads through atomic
variables.
%package charconv
Summary: Run-time component of boost charconv library
%description charconv
Run-time support for Boost.Charconv, an implementation of <charconv>
in C++11.
%package chrono
Summary: Run-time component of boost chrono library
Requires: %{name}-system%{?_isa} = %{version}-%{release}
Obsoletes: boost-system < 1.90.0
Conflicts: boost-system < 1.90.0
%description chrono
Run-time support for Boost.Chrono, a set of useful time utilities.
%package cobalt
Summary: Run-time component of boost cobalt library
%description cobalt
Boost.Cobalt provides a set of easy to use coroutine primitives & utilities
running on top of boost.asio. These will be of interest for applications that
perform a lot of IO that want to not block unnecessarily, yet still want to
have linear & readable code (i..e. avoid callbacks).
%package container
Summary: Run-time component of boost container library
@ -191,7 +224,8 @@ Summary: Run-time component of boost container library
Boost.Container library implements several well-known containers,
including STL containers. The aim of the library is to offer advanced
features not present in standard containers or to offer the latest
standard draft features for compilers that comply with C++03.
standard draft features for compilers that don't comply with the
latest C++ standard.
%package contract
Summary: Run-time component of boost contract library
@ -216,6 +250,7 @@ provides a sort of cooperative multitasking on a single thread.
%package coroutine
Summary: Run-time component of boost coroutine library
Requires: %{name}-context%{?_isa} = %{version}-%{release}
%description coroutine
Run-time support for Boost.Coroutine, a library that provides
@ -235,6 +270,8 @@ on generic programming concepts.
%if %{with context}
%package fiber
Summary: Run-time component of boost fiber library
Requires: %{name}-context%{?_isa} = %{version}-%{release}
Requires: %{name}-filesystem%{?_isa} = %{version}-%{release}
%description fiber
@ -244,7 +281,9 @@ micro-/userland-threads (fibers) scheduled cooperatively.
%package filesystem
Summary: Run-time component of boost filesystem library
Requires: %{name}-system%{?_isa} = %{version}-%{release}
Requires: %{name}-atomic%{?_isa} = %{version}-%{release}
Obsoletes: boost-system < 1.90.0
Conflicts: boost-system < 1.90.0
%description filesystem
@ -272,6 +311,7 @@ stream buffers and i/o filters.
%package json
Summary: Run-time component of boost json library
Requires: %{name}-container%{?_isa} = %{version}-%{release}
%description json
@ -282,8 +322,9 @@ simply "JSON"
%package locale
Summary: Run-time component of boost locale library
Requires: %{name}-chrono%{?_isa} = %{version}-%{release}
Requires: %{name}-system%{?_isa} = %{version}-%{release}
Requires: %{name}-thread%{?_isa} = %{version}-%{release}
Obsoletes: boost-system < 1.90.0
Conflicts: boost-system < 1.90.0
%description locale
@ -292,20 +333,25 @@ handling tools.
%package log
Summary: Run-time component of boost logging library
Requires: %{name}-atomic%{?_isa} = %{version}-%{release}
Requires: %{name}-chrono%{?_isa} = %{version}-%{release}
Requires: %{name}-filesystem%{?_isa} = %{version}-%{release}
Requires: %{name}-regex%{?_isa} = %{version}-%{release}
Requires: %{name}-thread%{?_isa} = %{version}-%{release}
%description log
Boost.Log library aims to make logging significantly easier for the
application developer. It provides a wide range of out-of-the-box
tools along with public interfaces for extending the library.
Run-time support for Boost.Log, a modular and extensible logging
library that supports both narrow-character and wide-character logging.
%package math
Summary: Math functions for boost TR1 library
Summary: Run-time component of boost math toolkit
%description math
Run-time support for C99 and C++ TR1 C-style Functions from the math
portion of Boost.TR1.
Run-time support for Boost.Math, including floating-point utilities,
specific width floating-point types, mathematical constants,
statistical distributions, special functions, and more.
%package nowide
Summary: Standard library functions with UTF-8 API on Windows
@ -331,6 +377,14 @@ support for the NumPy extension of the Boost Python Library for Python 3.
%endif
%package process
Summary: Run-time component of boost process library
%description process
Run-time support of the Boost.Process library, for managing system
processes.
%package program-options
Summary: Run-time component of boost program_options library
@ -382,14 +436,6 @@ Summary: Run-time component of boost stacktrace library
Run-time component of the Boost stacktrace library.
%package system
Summary: Run-time component of boost system support library
%description system
Run-time component of Boost operating system support library, including
the diagnostics support that is part of the C++11 standard library.
%package test
Summary: Run-time component of boost test library
@ -400,7 +446,8 @@ program execution monitoring.
%package thread
Summary: Run-time component of boost thread library
Requires: %{name}-system%{?_isa} = %{version}-%{release}
Obsoletes: boost-system < 1.90.0
Conflicts: boost-system < 1.90.0
%description thread
@ -412,7 +459,8 @@ data specific to individual threads.
%package timer
Summary: Run-time component of boost timer library
Requires: %{name}-chrono%{?_isa} = %{version}-%{release}
Requires: %{name}-system%{?_isa} = %{version}-%{release}
Obsoletes: boost-system < 1.90.0
Conflicts: boost-system < 1.90.0
%description timer
@ -423,7 +471,9 @@ with as little as one #include and one additional line of code.
%package type_erasure
Summary: Run-time component of boost type erasure library
Requires: %{name}-chrono%{?_isa} = %{version}-%{release}
Requires: %{name}-system%{?_isa} = %{version}-%{release}
Requires: %{name}-thread%{?_isa} = %{version}-%{release}
Obsoletes: boost-system < 1.90.0
Conflicts: boost-system < 1.90.0
%description type_erasure
@ -443,8 +493,9 @@ Summary: Run-time component of boost C99/C++ preprocessing library
Requires: %{name}-chrono%{?_isa} = %{version}-%{release}
Requires: %{name}-date-time%{?_isa} = %{version}-%{release}
Requires: %{name}-filesystem%{?_isa} = %{version}-%{release}
Requires: %{name}-system%{?_isa} = %{version}-%{release}
Requires: %{name}-thread%{?_isa} = %{version}-%{release}
Obsoletes: boost-system < 1.90.0
Conflicts: boost-system < 1.90.0
%description wave
@ -694,7 +745,7 @@ using python : %{python3_version} : /usr/bin/python3 : /usr/include/python%{pyth
EOF
%endif
./bootstrap.sh --with-toolset=%{toolchain} --with-icu
./bootstrap.sh --with-toolset=%{toolchain} --with-icu --prefix=$RPM_BUILD_ROOT%{_prefix}
# N.B. When we build the following with PCH, parts of boost (math
# library in particular) end up being built second time during
@ -711,20 +762,12 @@ echo ============================= build serial ==================
variant=release threading=multi debug-symbols=on pch=off \
%if %{with python3}
python=%{python3_version} \
%endif
%if !%{with stacktrace_from_exception}
boost.stacktrace.from_exception=off \
%endif
stage
# See libs/thread/build/Jamfile.v2 for where this file comes from.
if [ $(find serial -type f -name has_atomic_flag_lockfree \
-print -quit | wc -l) -ne 0 ]; then
DEF=D
else
DEF=U
fi
m4 -${DEF}HAS_ATOMIC_FLAG_LOCKFREE -DVERSION=%{version} \
%{SOURCE1} > $(basename %{SOURCE1})
# Build MPI parts of Boost with OpenMPI support
%if %{with openmpi} || %{with mpich}
@ -766,7 +809,7 @@ export PATH=/bin${PATH:+:}$PATH
echo ============================= build Boost.Build ==================
(cd tools/build
./bootstrap.sh --with-toolset=%{toolchain})
./bootstrap.sh --with-toolset=%{toolchain} --prefix=$RPM_BUILD_ROOT%{_prefix})
%check
:
@ -857,14 +900,23 @@ echo ============================= install serial ==================
variant=release threading=multi debug-symbols=on pch=off \
%if %{with python3}
python=%{python3_version} \
%endif
%if !%{with stacktrace_from_exception}
boost.stacktrace.from_exception=off \
%endif
install
# Override DSO symlink with a linker script. See the linker script
# itself for details of why we need to do this.
[ -f $RPM_BUILD_ROOT%{_libdir}/libboost_thread.so ] # Must be present
rm -f $RPM_BUILD_ROOT%{_libdir}/libboost_thread.so
install -p -m 644 $(basename %{SOURCE1}) $RPM_BUILD_ROOT%{_libdir}/
cat > $RPM_BUILD_ROOT%{_libdir}/libboost_system.so << EOT
/* GNU ld script
There is no runtime library for Boost.System.
This empty linker script exists to support Fedora packages which use
-lboost_system when linking and so require a library with that name.
This linker script will be remove in a future Fedora release.
*/
EOT
chmod 644 $RPM_BUILD_ROOT%{_libdir}/libboost_system.so
echo ============================= install Boost.Build ==================
(cd tools/build
@ -887,7 +939,7 @@ echo ============================= install Boost.Build ==================
rm $RPM_BUILD_ROOT%{_datadir}/boost-build/src/tools/doxygen/windows-paths-check.hpp
rm -f $RPM_BUILD_ROOT%{_datadir}/boost-build/src/tools/doxygen/windows-paths-check.hpp
# Install the manual page
%{__install} -p -m 644 %{SOURCE2} -D $RPM_BUILD_ROOT%{_mandir}/man1/b2.1
%{__install} -p -m 644 %{SOURCE1} -D $RPM_BUILD_ROOT%{_mandir}/man1/b2.1
)
echo ============================= install Boost.QuickBook ==================
@ -963,6 +1015,11 @@ rm -f tmp-doc-files-to-be-installed
rm -f tmp-doc-directories
%{__install} -p -m 644 -t $EXAMPLESPATH LICENSE_1_0.txt
# The predef_check utility doesn't seem useful to package.
(cd $RPM_BUILD_ROOT/%{_datadir}
rm boost_predef/tools/check/*
rm boost_predef/build.jam
)
%post doctools
CATALOG=%{_sysconfdir}/xml/catalog
@ -997,10 +1054,19 @@ fi
%license LICENSE_1_0.txt
%{_libdir}/libboost_atomic.so.%{sonamever}
%files charconv
%license LICENSE_1_0.txt
%{_libdir}/libboost_charconv.so.%{sonamever}
%files chrono
%license LICENSE_1_0.txt
%{_libdir}/libboost_chrono.so.%{sonamever}
%files cobalt
%license LICENSE_1_0.txt
%{_libdir}/libboost_cobalt.so.%{sonamever}
%{_libdir}/libboost_cobalt_io.so.%{sonamever}
%files container
%license LICENSE_1_0.txt
%{_libdir}/libboost_container.so.%{sonamever}
@ -1071,6 +1137,10 @@ fi
%{_libdir}/libboost_numpy%{python3_version_nodots}.so.%{sonamever}
%endif
%files process
%license LICENSE_1_0.txt
%{_libdir}/libboost_process.so.%{sonamever}
%files test
%license LICENSE_1_0.txt
%{_libdir}/libboost_prg_exec_monitor.so.%{sonamever}
@ -1104,10 +1174,9 @@ fi
%{_libdir}/libboost_stacktrace_addr2line.so.%{sonamever}
%{_libdir}/libboost_stacktrace_basic.so.%{sonamever}
%{_libdir}/libboost_stacktrace_noop.so.%{sonamever}
%files system
%license LICENSE_1_0.txt
%{_libdir}/libboost_system.so.%{sonamever}
%if %{with stacktrace_from_exception}
%{_libdir}/libboost_stacktrace_from_exception.so.%{sonamever}
%endif
%files thread
%license LICENSE_1_0.txt
@ -1144,7 +1213,10 @@ fi
%{_includedir}/%{name}
%{_libdir}/cmake
%{_libdir}/libboost_atomic.so
%{_libdir}/libboost_charconv.so
%{_libdir}/libboost_chrono.so
%{_libdir}/libboost_cobalt.so
%{_libdir}/libboost_cobalt_io.so
%{_libdir}/libboost_container.so
%{_libdir}/libboost_contract.so
%if %{with context}
@ -1172,6 +1244,7 @@ fi
%if %{with python3}
%{_libdir}/libboost_numpy%{python3_version_nodots}.so
%endif
%{_libdir}/libboost_process.so
%{_libdir}/libboost_prg_exec_monitor.so
%{_libdir}/libboost_unit_test_framework.so
%{_libdir}/libboost_program_options.so
@ -1185,6 +1258,9 @@ fi
%{_libdir}/libboost_stacktrace_addr2line.so
%{_libdir}/libboost_stacktrace_basic.so
%{_libdir}/libboost_stacktrace_noop.so
%if %{with stacktrace_from_exception}
%{_libdir}/libboost_stacktrace_from_exception.so
%endif
%{_libdir}/libboost_system.so
%{_libdir}/libboost_thread.so
%{_libdir}/libboost_timer.so
@ -1213,7 +1289,9 @@ fi
%license LICENSE_1_0.txt
%{_libdir}/openmpi/lib/cmake
%{_libdir}/openmpi/lib/libboost_mpi.so
%{_libdir}/openmpi/lib/libboost_graph.so
%{_libdir}/openmpi/lib/libboost_graph_parallel.so
%{_libdir}/openmpi/lib/libboost_container.so
%if %{with python3}
@ -1230,7 +1308,9 @@ fi
%files graph-openmpi
%license LICENSE_1_0.txt
%{_libdir}/openmpi/lib/libboost_graph.so.%{sonamever}
%{_libdir}/openmpi/lib/libboost_graph_parallel.so.%{sonamever}
%{_libdir}/openmpi/lib/libboost_container.so.%{sonamever}
%endif
@ -1245,7 +1325,9 @@ fi
%license LICENSE_1_0.txt
%{_libdir}/mpich/lib/cmake
%{_libdir}/mpich/lib/libboost_mpi.so
%{_libdir}/mpich/lib/libboost_graph.so
%{_libdir}/mpich/lib/libboost_graph_parallel.so
%{_libdir}/mpich/lib/libboost_container.so
%if %{with python3}
@ -1261,7 +1343,9 @@ fi
%files graph-mpich
%license LICENSE_1_0.txt
%{_libdir}/mpich/lib/libboost_graph.so.%{sonamever}
%{_libdir}/mpich/lib/libboost_graph_parallel.so.%{sonamever}
%{_libdir}/mpich/lib/libboost_container.so.%{sonamever}
%endif
@ -1281,6 +1365,94 @@ fi
%{_mandir}/man1/b2.1*
%changelog
* Thu Jan 15 2026 Yaakov Selkowitz <yselkowi@redhat.com> - 1.90.0-4
- Add dependencies on new subpackages to metapackage
* Tue Jan 13 2026 Jonathan Wakely <jwakely@fedoraproject.org> - 1.90.0-3
- Fix libboost_system.so linker script to avoid ldcondig warning
* Mon Jan 12 2026 Jonathan Wakely <jwakely@fedoraproject.org> - 1.90.0-2
- Add patch for boost/range/detail/any_iterator_interface.hpp
* Sat Jan 10 2026 Jonathan Wakely <jwakely@fedoraproject.org> - 1.90.0-1
- Rebase to 1.90.0
- See https://fedoraproject.org/wiki/Changes/F44Boost189
- Drop boost-system subpackage and libboost_thread.so linker script
- Add new boost-charconv, boost-cobalt, and boost-process subpackages
* Fri Sep 19 2025 Python Maint <python-maint@redhat.com> - 1.83.0-17
- Rebuilt for Python 3.14.0rc3 bytecode
* Fri Aug 15 2025 Python Maint <python-maint@redhat.com> - 1.83.0-16
- Rebuilt for Python 3.14.0rc2 bytecode
* Tue Aug 05 2025 František Zatloukal <fzatlouk@redhat.com> - 1.83.0-15
- Rebuilt for icu 77.1
* Wed Jul 23 2025 Fedora Release Engineering <releng@fedoraproject.org> - 1.83.0-14
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Tue Jun 03 2025 Python Maint <python-maint@redhat.com> - 1.83.0-13
- Rebuilt for Python 3.14
* Sun Jan 26 2025 Wolfgang Stöggl <c72578@yahoo.de> - 1.83.0-12
- Add boost-1.83-fix-no-member-named_that_error.patch
* Thu Jan 16 2025 Fedora Release Engineering <releng@fedoraproject.org> - 1.83.0-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Tue Dec 24 2024 Sandro <devel@penguinpee.nl> - 1.83.0-10
- Backport patches for NumPy 2.x
* Fri Dec 06 2024 Pete Walter <pwalter@fedoraproject.org> - 1.83.0-9
- Rebuild for ICU 76
* Wed Jul 17 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.83.0-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Sat Jun 08 2024 Python Maint <python-maint@redhat.com> - 1.83.0-7
- Rebuilt for Python 3.13
* Thu Jun 06 2024 Jonathan Wakely <jwakely@fedoraproject.org> - 1.83.0-6
- Add missing Requires for rpminspect errors.
* Sun Jun 02 2024 Songsong Zhang <U2FsdGVkX1@gmail.com> - 1.83.0-6
- Backport patch to fix RISC-V functions missing
* Sat May 25 2024 Kefu Chai <tchaikov@fedoraproject.org> - 1.83.0-5
- Add patch to fix Boost.Math bug where float_next(+INF) and float_prior(-INF)
returns NaN, but they should return +INF and -INF respectively.
See https://github.com/boostorg/math/issues/1132 and its fix at
* Sun May 05 2024 Kefu Chai <tchaikov@fedoraproject.org> - 1.83.0-4
- Add patch for Boost.Multiprecision bug
See https://github.com/boostorg/multiprecision/pull/618
* Wed Jan 31 2024 Pete Walter <pwalter@fedoraproject.org> - 1.83.0-3
- Rebuild for ICU 74
* Tue Jan 23 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.83.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.83.0-1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Wed Dec 06 2023 Patrick Palka <ppalka@redhat.com> - 1.83.0-0
- Rebase to 1.83.0
- See https://fedoraproject.org/wiki/Changes/F40Boost183
- Drop patch for accumulators library that has since been applied upstream.
- Fix spurious Boost.Regex test failures.
* Sun Oct 29 2023 Orion Poplawski <orion@nwra.com> - 1.81.0-10
- Rebuild for openmpi 5.0.0, drops support for i686
* Tue Aug 29 2023 Tom Callaway <spot@fedoraproject.org> - 1.81.0-9
- apply upstream fixes for failing random tests
* Sun Aug 20 2023 Kefu Chai <tchaikov@fedoraproject.org> - 1.81.0-8
- Add patch for Boost.Accumulators bug
See https://github.com/boostorg/accumulators/pull/54
* Wed Aug 2 2023 Tom Callaway <spot@fedoraproject.org> - 1.81.0-7
- add symlink for b2 files

View file

@ -1,21 +0,0 @@
changequote(`[', `]')dnl
/* GNU ld script
Boost.Thread header files pull in enough of Boost.System that
symbols from the latter library are referenced by a compiled object
that includes Boost.Thread headers. libboost_system-mt.so is among
libboost_thread-mt.so's DT_NEEDED, but program linker requires that
missing symbols are satisfied by direct dependency, not by a
transitive one. Hence this linker script, which brings in the
Boost.System DSO. */
INPUT(libboost_thread.so.VERSION)
INPUT(libboost_system.so.VERSION)
ifdef([HAS_ATOMIC_FLAG_LOCKFREE],[],
[
/* If the given architecture doesn't have lock-free implementation of
boost::atomic_flag, the dependency on Boost.Atomic may leak from
the header files to client binaries. */
INPUT(libboost_atomic.so.VERSION)
])dnl

View file

@ -1 +1 @@
SHA512 (boost_1_81_0.tar.bz2) = a04201e73da59f68fa02761b333c864a96ebaf268247b6b10cb19ed3d70ee9ad3da4c53123f2a7a4a9b9e1408793b51e1adbcc6fd09f60fecef3ca9522bb6b36
SHA512 (boost_1_90_0.tar.bz2) = 1c81b60f63367d7249f277f0a569c181926dcf5a725e30433dd336205f1782880489dd00df6a1a74fd107765d3ca2cd49f806788cabb7d5700a8a55927a9a199

View file

@ -54,17 +54,26 @@ rlJournalStart
rlPhaseStartSetup "build boost"
rlRun "rpm -D \"_topdir $TmpDir\" -U *.src.rpm"
rlRun "dnf builddep -y $TmpDir/SPECS/*.spec"
rlRun "sed -i -e 's/^%prep/%prep\n%dump/' $TmpDir/SPECS/*.spec"
rlRun "su -c 'rpmbuild -D \"_topdir $TmpDir\" -bp $TmpDir/SPECS/*.spec &>$TmpDir/rpmbuild.log' $BUILD_USER"
rlRun "rlFileSubmit $TmpDir/rpmbuild.log"
rlRun "cd $TmpDir/BUILD/boost*"
rlRun "toplev_dirname=`awk '/toplev_dirname/{print $3; exit}' $TmpDir/rpmbuild.log`"
cd $TmpDir/BUILD/$toplev_dirname
if [ $? -ne 0 ]; then
# handle rpm 4.20 build directory difference
# https://github.com/rpm-software-management/rpm/issues/3147
rlRun "cd $TmpDir/BUILD/*-build/$toplev_dirname"
fi
# now we know the top-level build dir, keep it for later
rlRun "BuildDir=$(pwd)"
rlRun "su -c './bootstrap.sh &>$TmpDir/bootstrap.log' $BUILD_USER"
rlRun "rlFileSubmit $TmpDir/bootstrap.log"
rlPhaseEnd
rlPhaseStartTest "run testsuite"
while read test_path; do
if [ -f $TmpDir/BUILD/boost*/libs/$test_path/test/Jamfile* ]; then
rlRun "cd $TmpDir/BUILD/boost*/libs/$test_path/test"
if [ -f $BuildDir/libs/$test_path/test/Jamfile* ]; then
rlRun "cd $BuildDir/libs/$test_path/test"
rlRun "su -c '/usr/bin/b2 -d1 --build-dir=$TmpDir/test-build &>>$TmpDir/testsuite.log' $BUILD_USER"
rm -fr $TmpDir/test-build
else