diff --git a/boost-1.58.0-pool.patch b/boost-1.58.0-pool.patch index ed8449e..3654b66 100644 --- a/boost-1.58.0-pool.patch +++ b/boost-1.58.0-pool.patch @@ -1,7 +1,7 @@ Index: boost/pool/pool.hpp =================================================================== ---- boost/pool/pool.hpp (revision 78317) -+++ boost/pool/pool.hpp (revision 78326) +--- ./boost/pool/pool.hpp (revision 78317) ++++ ./boost/pool/pool.hpp (revision 78326) @@ -27,4 +27,6 @@ #include diff --git a/boost-1.76.0-fix-narrowing-conversions-for-ppc.patch b/boost-1.76.0-fix-narrowing-conversions-for-ppc.patch index 42662dd..ce49540 100644 --- a/boost-1.76.0-fix-narrowing-conversions-for-ppc.patch +++ b/boost-1.76.0-fix-narrowing-conversions-for-ppc.patch @@ -13,8 +13,8 @@ Fixes #29 diff --git a/include/boost/numeric/interval/detail/ppc_rounding_control.hpp b/include/boost/numeric/interval/detail/ppc_rounding_control.hpp index 87fe8ee..99f9986 100644 ---- a/include/boost/numeric/interval/detail/ppc_rounding_control.hpp -+++ b/include/boost/numeric/interval/detail/ppc_rounding_control.hpp +--- boost_1_76_0/boost/numeric/interval/detail/ppc_rounding_control.hpp ++++ boost_1_76_0/boost/numeric/interval/detail/ppc_rounding_control.hpp @@ -28,10 +28,10 @@ typedef union { double dmode; } rounding_mode_struct; diff --git a/boost-1.76.0-fix_multiprecision_issue_419-ppc64le.patch b/boost-1.76.0-fix_multiprecision_issue_419-ppc64le.patch index 5cd6d40..cf091e4 100644 --- a/boost-1.76.0-fix_multiprecision_issue_419-ppc64le.patch +++ b/boost-1.76.0-fix_multiprecision_issue_419-ppc64le.patch @@ -10,8 +10,8 @@ Subject: [PATCH] Update gcc Intel intrinsic usage config. Fixes 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 +--- include/boost/multiprecision/cpp_int/intel_intrinsics.hpp ++++ include/boost/multiprecision/cpp_int/intel_intrinsics.hpp @@ -19,7 +19,11 @@ // If this is GCC/clang, then check that the actual intrinsic exists: // diff --git a/boost-1.81.0-always-initialize-member-variable.patch b/boost-1.81.0-always-initialize-member-variable.patch new file mode 100644 index 0000000..14c48ae --- /dev/null +++ b/boost-1.81.0-always-initialize-member-variable.patch @@ -0,0 +1,41 @@ +From ecdc3d41be93d994cf293b6ce08cc33cb9e39e71 Mon Sep 17 00:00:00 2001 +From: Kefu Chai +Date: Thu, 27 Apr 2023 13:09:28 +0800 +Subject: [PATCH] always initialize member variable + +in this change, impl::extended_p_square_quantile_impl::probability is +zero-initialized to silence -Wuninitialized warning from GCC-13. + +despite that this variable is always initialized in +impl::extended_p_square_quantile_impl::result(), it is still referenced +by, for instance the copy constructor, which could be called before +`result()` gets called. and GCC-13 rightly warn us like: + +In copy constructor ‘constexpr boost::accumulators::impl::extended_p_square_quantile_impl::extended_p_square_quantile_impl(const boost::accumulators::impl::extended_p_square_quantile_impl&)’, + inlined from ‘boost::accumulators::detail::accumulator_wrapper::accumulator_wrapper(const boost::accumulators::detail::accumulator_wrapper&) [with Accumulator = boost::accumulators::impl::extended_p_square_quantile_impl; Feature = boost::accumulators::tag::extended_p_square_quantile_quadratic]’ at /usr/include/boost/accumulators/framework/depends_on.hpp:320:69, + inlined from ‘constexpr boost::fusion::cons::cons(typename boost::fusion::detail::call_param::type, typename boost::fusion::detail::call_param::type) [with Car = boost::accumulators::detail::accumulator_wrapper, boost::accumulators::tag::extended_p_square_quantile_quadratic>; Cdr = boost::fusion::cons, boost::accumulators::tag::sum>, boost::fusion::cons, boost::accumulators::tag::mean>, boost::fusion::cons, boost::accumulators::tag::max>, boost::fusion::nil_> > >]’ at /usr/include/boost/fusion/container/list/cons.hpp:66:15, + inlined from ‘static boost::accumulators::detail::build_acc_list::type boost::accumulators::detail::build_acc_list::call(const Args&, const First&, const Last&) [with Args = boost::parameter::aux::flat_like_arg_list, void> >, std::integral_constant >, boost::parameter::aux::flat_like_arg_tuple, boost::parameter::aux::tagged_argument, std::array >, std::integral_constant > >; First = boost::fusion::mpl_iterator, boost::accumulators::tag::max>, boost::mpl::v_item, boost::accumulators::tag::mean>, boost::mpl::v_item, boost::accumulators::tag::sum>, boost::mpl::v_item, boost::accumulators::tag::extended_p_square_quantile_quadratic>, boost::mpl::v_item, boost::accumulators::tag::extended_p_square>, boost::mpl::v_item, boost::mpl::vector0, 0>, 0>, 0>, 0>, 0>, 0>, 2> >; Last = boost::fusion::mpl_iterator, boost::accumulators::tag::max>, boost::mpl::v_item, boost::accumulators::tag::mean>, boost::mpl::v_item, boost::accumulators::tag::sum>, boost::mpl::v_item, boost::accumulators::tag::extended_p_square_quantile_quadratic>, boost::mpl::v_item, boost::accumulators::tag::extended_p_square>, boost::mpl::v_item, boost::mpl::vector0, 0>, 0>, 0>, 0>, 0>, 0>, 6> >]’ at /usr/include/boost/accumulators/framework/depends_on.hpp:252:86, + inlined from ‘static boost::accumulators::detail::build_acc_list::type boost::accumulators::detail::build_acc_list::call(const Args&, const First&, const Last&) [with Args = boost::parameter::aux::flat_like_arg_list, void> >, std::integral_constant >, boost::parameter::aux::flat_like_arg_tuple, boost::parameter::aux::tagged_argument, std::array >, std::integral_constant > >; First = boost::fusion::mpl_iterator, boost::accumulators::tag::max>, boost::mpl::v_item, boost::accumulators::tag::mean>, boost::mpl::v_item, boost::accumulators::tag::sum>, boost::mpl::v_item, boost::accumulators::tag::extended_p_square_quantile_quadratic>, boost::mpl::v_item, boost::accumulators::tag::extended_p_square>, boost::mpl::v_item, boost::mpl::vector0, 0>, 0>, 0>, 0>, 0>, 0>, 1> >; Last = boost::fusion::mpl_iterator, boost::accumulators::tag::max>, boost::mpl::v_item, boost::accumulators::tag::mean>, boost::mpl::v_item, boost::accumulators::tag::sum>, boost::mpl::v_item, boost::accumulators::tag::extended_p_square_quantile_quadratic>, boost::mpl::v_item, boost::accumulators::tag::extended_p_square>, boost::mpl::v_item, boost::mpl::vector0, 0>, 0>, 0>, 0>, 0>, 0>, 6> >]’ at /usr/include/boost/accumulators/framework/depends_on.hpp:252:86: +/usr/include/boost/accumulators/statistics/extended_p_square_quantile.hpp:57:12: error: ‘.boost::accumulators::detail::accumulator_wrapper, boost::accumulators::tag::extended_p_square_quantile_quadratic>::.boost::accumulators::impl::extended_p_square_quantile_impl::probability’ is used uninitialized [-Werror=uninitialized] + 57 | struct extended_p_square_quantile_impl + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Signed-off-by: Kefu Chai +--- + boost/accumulators/statistics/extended_p_square_quantile.hpp | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/boost/accumulators/statistics/extended_p_square_quantile.hpp b/boost/accumulators/statistics/extended_p_square_quantile.hpp +index f57304c..a4ac3cd 100644 +--- a/boost/accumulators/statistics/extended_p_square_quantile.hpp ++++ b/boost/accumulators/statistics/extended_p_square_quantile.hpp +@@ -76,6 +76,7 @@ namespace impl + boost::begin(args[extended_p_square_probabilities]) + , boost::end(args[extended_p_square_probabilities]) + ) ++ , probability() + { + } + +-- +2.39.2 diff --git a/boost.spec b/boost.spec index 151e133..29c3d44 100644 --- a/boost.spec +++ b/boost.spec @@ -42,7 +42,7 @@ Name: boost %global real_name boost Summary: The free peer-reviewed portable C++ source libraries Version: 1.78.0 -Release: 11%{?dist} +Release: 14%{?dist} License: Boost and MIT and Python # Replace each . with _ in %%{version} @@ -130,48 +130,51 @@ BuildRequires: libzstd-devel # https://bugzilla.redhat.com/show_bug.cgi?id=828856 # https://bugzilla.redhat.com/show_bug.cgi?id=828857 # https://svn.boost.org/trac/boost/ticket/6701 -Patch15: boost-1.58.0-pool.patch +Patch0: boost-1.58.0-pool.patch # https://svn.boost.org/trac/boost/ticket/9038 -Patch51: boost-1.58.0-pool-test_linking.patch +Patch1: boost-1.58.0-pool-test_linking.patch # https://bugzilla.redhat.com/show_bug.cgi?id=1541035 -Patch105: boost-1.78.0-build-optflags.patch +Patch2: boost-1.78.0-build-optflags.patch # https://bugzilla.redhat.com/show_bug.cgi?id=1318383 -Patch106: boost-1.78.0-no-rpath.patch +Patch3: boost-1.78.0-no-rpath.patch # https://lists.boost.org/Archives/boost/2020/04/248812.php -Patch88: boost-1.73.0-cmakedir.patch +Patch4: boost-1.73.0-cmakedir.patch # https://bugzilla.redhat.com/show_bug.cgi?id=1899888 # https://github.com/boostorg/locale/issues/52 -Patch94: boost-1.73-locale-empty-vector.patch +Patch5: boost-1.73-locale-empty-vector.patch # https://bugzilla.redhat.com/show_bug.cgi?id=1541035 -Patch107: boost-1.78.0-b2-build-flags.patch +Patch6: boost-1.78.0-b2-build-flags.patch # https://github.com/boostorg/random/issues/82 -Patch102: boost-1.76.0-random-test.patch +Patch7: boost-1.76.0-random-test.patch # PR https://github.com/boostorg/multiprecision/pull/421 # fixes ppc64le issue https://github.com/boostorg/multiprecision/issues/419 -Patch103: boost-1.76.0-fix_multiprecision_issue_419-ppc64le.patch +Patch8: boost-1.76.0-fix_multiprecision_issue_419-ppc64le.patch # PR https://github.com/boostorg/interval/pull/30 # Fixes narrowing conversions for ppc - # https://github.com/boostorg/interval/issues/29 -Patch104: boost-1.76.0-fix-narrowing-conversions-for-ppc.patch +Patch9: boost-1.76.0-fix-narrowing-conversions-for-ppc.patch # https://github.com/boostorg/ptr_container/pull/27 -Patch108: boost-1.76.0-ptr_cont-xml.patch +Patch10: boost-1.76.0-ptr_cont-xml.patch # Fixes missing libboost_fiber.so # https://github.com/boostorg/boost/issues/632 -Patch109: boost-1.78.0-fix-b2-staging.patch +Patch11: boost-1.78.0-fix-b2-staging.patch # https://github.com/boostorg/python/pull/385 -Patch110: boost-1.76.0-enum_type_object-type-python-3.11.patch +Patch12: boost-1.76.0-enum_type_object-type-python-3.11.patch + +# PR https://github.com/boostorg/accumulators/pull/54 +Patch13: boost-1.81.0-always-initialize-member-variable.patch %bcond_with tests %bcond_with docs_generated @@ -672,23 +675,9 @@ Historically, B2 was based on on FTJam and on Perforce Jam but has grown a number of significant features and is now developed independently. %prep -%setup -q -n %{toplev_dirname} +%autosetup -n %{toplev_dirname} -p1 find ./boost -name '*.hpp' -perm /111 | xargs --no-run-if-empty chmod a-x -%patch15 -p0 -%patch51 -p1 -%patch105 -p1 -%patch106 -p1 -%patch107 -p1 -%patch88 -p1 -%patch94 -p1 -%patch102 -p1 -%patch103 -p2 -%patch104 -p2 -%patch108 -p1 -%patch109 -p1 -%patch110 -p1 - %build %set_build_flags # Dump the versions being used into the build logs. @@ -1293,6 +1282,16 @@ fi %{_mandir}/man1/b2.1* %changelog +* Tue Sep 12 2023 Jonathan Wakely - 1.78.0-14 +- Change spec file to use autosetup for applying patches + +* Fri Sep 01 2023 Jonathan Wakely - 1.78.0-13 +- Fix outdated CI configuration + +* Tue Aug 22 2023 Kefu Chai - 1.78.0-12 +- Add patch for Boost.Accumulators bug + See https://github.com/boostorg/accumulators/pull/54 + * Wed Jan 18 2023 Fedora Release Engineering - 1.78.0-11 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild diff --git a/plans/ci.fmf b/plans/ci.fmf index 1ad2c12..3fd3ab7 100644 --- a/plans/ci.fmf +++ b/plans/ci.fmf @@ -1,6 +1,5 @@ summary: CI Gating Plan discover: how: fmf - directory: tests execute: - how: beakerlib + how: tmt