diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2021-08-10 07:44:53 +0200 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2021-08-10 09:15:00 +0200 |
commit | 1f6851c6f6d6fee67c56dd4e6e6013ba000eaf84 (patch) | |
tree | e36d3917314f1884bbf97e67900cf072d0e1bd22 /external/boost | |
parent | 29e5fad7ed64459d04df61b57ecd8eaba6d8bfae (diff) |
Upgrade external/boost to latest Boost 1.76.0
* <https://dev-www.libreoffice.org/src/boost_1_76_0.tar.xz> has been generated
(on Fedora 34) with
> $ wget https://boostorg.jfrog.io/native/main/release/1.76.0/source/boost_1_76_0.tar.bz2
> $ printf 'f0397ba6e982c4450f27bf32a2a83292aba035b827a5623a14636ea583318c41 boost_1_76_0.tar.bz2' | sha256sum -c # cf. <https://www.boost.org/users/history/version_1_76_0.html>
> boost_1_76_0.tar.bz2: OK
> $ external/boost/repack_tarball.sh boost_1_76_0.tar.bz2
> Unpacking boost_1_76_0.tar.bz2 ...
> Removing unnecessary files ...
> Creating boost_1_76_0.tar.xz ...
> Cleaning up ...
> adfa0ca971c56006a8304b6146d1382e6369815d568f6e6a7440fe29995d51b8 boost_1_76_0.tar.xz
> Done.
* external/boost/0001-Fix-include-inside-boost-namespace.patch.2 is necessary
to fix
> checking for boost/math/constants/constants.hpp... no
> configure: error: Required boost headers not found.
> make[1]: *** [external/libzmf/ExternalProject_libzmf.mk:28: workdir/ExternalProject/libzmf/build] Error 1
with recent libstdc++ 12 trunk (presumably since
<https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=261d5a4a459bd49942e53bc83334ccc7154a09d5>
"libstdc++: Reduce header dependencies on <array> and <utility>", and with other
standard libraries <utility> was likely already included indirectly earlier, so
the include nested in namespace boost::math::tools::meta_programming in the
middle of workdir/UnpackedTarball/boost/boost/math/tools/mp.hpp didn't cause
harm).
Change-Id: I1eee23915fea48bbb383cbeefc4ddfdeaac63e14
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120253
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Diffstat (limited to 'external/boost')
4 files changed, 39 insertions, 54 deletions
diff --git a/external/boost/0001-Fix-include-inside-boost-namespace.patch.2 b/external/boost/0001-Fix-include-inside-boost-namespace.patch.2 new file mode 100644 index 000000000000..ce123dbb4453 --- /dev/null +++ b/external/boost/0001-Fix-include-inside-boost-namespace.patch.2 @@ -0,0 +1,33 @@ +From 1ec5c98d80de97f9e962c5627e1a0e6096099894 Mon Sep 17 00:00:00 2001 +From: Daniel Scharrer <daniel@constexpr.org> +Date: Wed, 28 Jul 2021 19:56:31 +0200 +Subject: [PATCH] Fix #include inside boost namespace + +The existing code fails to build if <utility> was not already included. +--- + include/boost/math/tools/mp.hpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/include/boost/math/tools/mp.hpp b/include/boost/math/tools/mp.hpp +index 35565646f..dc8440988 100644 +--- a/include/boost/math/tools/mp.hpp ++++ b/include/boost/math/tools/mp.hpp +@@ -13,6 +13,7 @@ + + #include <type_traits> + #include <cstddef> ++#include <utility> + + namespace boost { namespace math { namespace tools { namespace meta_programming { + +@@ -338,7 +339,6 @@ using mp_remove_if_q = mp_remove_if<L, Q::template fn>; + // Index sequence + // Use C++14 index sequence if available + #if defined(__cpp_lib_integer_sequence) && (__cpp_lib_integer_sequence >= 201304) +-#include <utility> + template<std::size_t... I> + using index_sequence = std::index_sequence<I...>; + +-- +2.31.1 + diff --git a/external/boost/0001-Fix-usage-of-deprecated-Boost.Bind-features.patch.2 b/external/boost/0001-Fix-usage-of-deprecated-Boost.Bind-features.patch.2 deleted file mode 100644 index 583a9d905214..000000000000 --- a/external/boost/0001-Fix-usage-of-deprecated-Boost.Bind-features.patch.2 +++ /dev/null @@ -1,48 +0,0 @@ -From d1c8825a45a0717e1ad79583d3283b0e5e32831e Mon Sep 17 00:00:00 2001 -From: Andrey Semashev <Lastique@users.noreply.github.com> -Date: Tue, 28 Apr 2020 22:03:04 +0300 -Subject: [PATCH] Fix usage of deprecated Boost.Bind features - -This fixes deprecation warnings generated by boost/bind.hpp. - -Also, use a more actual include path for ref.hpp. ---- - include/boost/property_tree/json_parser/detail/parser.hpp | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -diff --git a/include/boost/property_tree/json_parser/detail/parser.hpp b/include/boost/property_tree/json_parser/detail/parser.hpp -index 5554990..6cf6363 100644 ---- a/include/boost/property_tree/json_parser/detail/parser.hpp -+++ b/include/boost/property_tree/json_parser/detail/parser.hpp -@@ -3,8 +3,8 @@ - - #include <boost/property_tree/json_parser/error.hpp> - --#include <boost/ref.hpp> --#include <boost/bind.hpp> -+#include <boost/core/ref.hpp> -+#include <boost/bind/bind.hpp> - #include <boost/format.hpp> - - #include <iterator> -@@ -214,7 +214,7 @@ namespace boost { namespace property_tree { - void process_codepoint(Sentinel end, EncodingErrorFn error_fn) { - encoding.transcode_codepoint(cur, end, - boost::bind(&Callbacks::on_code_unit, -- boost::ref(callbacks), _1), -+ boost::ref(callbacks), boost::placeholders::_1), - error_fn); - } - -@@ -517,7 +517,7 @@ namespace boost { namespace property_tree { - void feed(unsigned codepoint) { - encoding.feed_codepoint(codepoint, - boost::bind(&Callbacks::on_code_unit, -- boost::ref(callbacks), _1)); -+ boost::ref(callbacks), boost::placeholders::_1)); - } - - Callbacks& callbacks; --- -2.29.2 - diff --git a/external/boost/UnpackedTarball_boost.mk b/external/boost/UnpackedTarball_boost.mk index c10ed5a55048..5a4607b77bec 100644 --- a/external/boost/UnpackedTarball_boost.mk +++ b/external/boost/UnpackedTarball_boost.mk @@ -35,8 +35,8 @@ boost_patches += windows-no-utf8-locales.patch.0 boost_patches += msvc2017.patch.0 -# Included in boost-1.76.0: -boost_patches += 0001-Fix-usage-of-deprecated-Boost.Bind-features.patch.2 +# From upstream develop branch: +boost_patches += 0001-Fix-include-inside-boost-namespace.patch.2 $(eval $(call gb_UnpackedTarball_UnpackedTarball,boost)) diff --git a/external/boost/boost_1_63_0.undef.warning.patch.1 b/external/boost/boost_1_63_0.undef.warning.patch.1 index 2773138e2765..cdf0d820e203 100644 --- a/external/boost/boost_1_63_0.undef.warning.patch.1 +++ b/external/boost/boost_1_63_0.undef.warning.patch.1 @@ -2,11 +2,11 @@ diff -up boost/boost/math/special_functions/fpclassify.hpp.dt boost/boost/math/s --- boost/boost/math/special_functions/fpclassify.hpp.dt 2017-02-03 07:59:18.805415876 +0100 +++ boost/boost/math/special_functions/fpclassify.hpp 2017-02-03 08:00:45.046494362 +0100 @@ -134,7 +134,7 @@ inline bool is_nan_helper(T, const boost - inline bool is_nan_helper(__float128 f, const boost::true_type&) { return ::isnanq(f); } - inline bool is_nan_helper(__float128 f, const boost::false_type&) { return ::isnanq(f); } + inline bool is_nan_helper(__float128 f, const std::true_type&) { return ::isnanq(f); } + inline bool is_nan_helper(__float128 f, const std::false_type&) { return ::isnanq(f); } #elif defined(BOOST_GNU_STDLIB) && BOOST_GNU_STDLIB && \ - _GLIBCXX_USE_C99_MATH && !_GLIBCXX_USE_C99_FP_MACROS_DYNAMIC + _GLIBCXX_USE_C99_MATH && (!defined(_GLIBCXX_USE_C99_FP_MACROS_DYNAMIC) || !_GLIBCXX_USE_C99_FP_MACROS_DYNAMIC) - inline bool is_nan_helper(__float128 f, const boost::true_type&) { return std::isnan(static_cast<double>(f)); } - inline bool is_nan_helper(__float128 f, const boost::false_type&) { return std::isnan(static_cast<double>(f)); } + inline bool is_nan_helper(__float128 f, const std::true_type&) { return std::isnan(static_cast<double>(f)); } + inline bool is_nan_helper(__float128 f, const std::false_type&) { return std::isnan(static_cast<double>(f)); } #else |