commit: 301f5e6332309bfe2bdc10aea941bbe0bd9a16cb Author: Sam James <sam <AT> gentoo <DOT> org> AuthorDate: Sat Sep 10 10:57:58 2022 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Sat Sep 10 10:57:58 2022 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=301f5e63
dev-libs/boost: fix build with libcxx No revbump as: 1. Didn't build with libcxx anyway; 2. Mixing libcxx and libstdc++ isn't supported (suppose built Boost with libstdc++ & tried to use libcxx in an application) so no need to worry about that case, although doubt things would work enough that you'd get to the point where this caused a problem. Closes: https://bugs.gentoo.org/869401 Thanks-to: Peter Dimov <pdimov <AT> gmail.com> Signed-off-by: Sam James <sam <AT> gentoo.org> dev-libs/boost/boost-1.80.0.ebuild | 1 + .../boost/files/boost-1.80.0-unary-function.patch | 27 ++++++++++++++++++++++ 2 files changed, 28 insertions(+) diff --git a/dev-libs/boost/boost-1.80.0.ebuild b/dev-libs/boost/boost-1.80.0.ebuild index e0c8fcaf0060..d70b29fc1bf3 100644 --- a/dev-libs/boost/boost-1.80.0.ebuild +++ b/dev-libs/boost/boost-1.80.0.ebuild @@ -51,6 +51,7 @@ PATCHES=( "${FILESDIR}"/${PN}-1.80.0-fix-mips1-transition.patch # (upstreamed) "${FILESDIR}"/${PN}-1.80.0-unordered-fix.patch + "${FILESDIR}"/${PN}-1.80.0-unary-function.patch ) python_bindings_needed() { diff --git a/dev-libs/boost/files/boost-1.80.0-unary-function.patch b/dev-libs/boost/files/boost-1.80.0-unary-function.patch new file mode 100644 index 000000000000..7941d7c66395 --- /dev/null +++ b/dev-libs/boost/files/boost-1.80.0-unary-function.patch @@ -0,0 +1,27 @@ +https://bugs.gentoo.org/869401 +https://github.com/boostorg/config/commit/f0af4a9184457939b89110795ae2d293582c5f66 +https://github.com/boostorg/container_hash/issues/24 + +From: jzmaddock <[email protected]> +Date: Mon, 11 Jul 2022 18:26:07 +0100 +Subject: [PATCH] The std lib unary/binary_function base classes are + deprecated/removed from libcpp15. Fixes + https://github.com/boostorg/container_hash/issues/24. + +--- a/boost/config/stdlib/libcpp.hpp ++++ b/boost/config/stdlib/libcpp.hpp +@@ -168,4 +168,13 @@ + # define BOOST_NO_CXX14_HDR_SHARED_MUTEX + #endif + ++#if _LIBCPP_VERSION >= 15000 ++// ++// Unary function is now deprecated in C++11 and later: ++// ++#if __cplusplus >= 201103L ++#define BOOST_NO_CXX98_FUNCTION_BASE ++#endif ++#endif ++ + // --- end --- +
