summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2022-09-10 11:57:58 +0100
committerSam James <sam@gentoo.org>2022-09-10 11:57:58 +0100
commit301f5e6332309bfe2bdc10aea941bbe0bd9a16cb (patch)
treefc697d25f900a650bb9d6c02fb97fad44ebe9cfb /dev-libs/boost
parentmedia-libs/flac: add github upstream metadata (diff)
downloadgentoo-301f5e6332309bfe2bdc10aea941bbe0bd9a16cb.tar.gz
gentoo-301f5e6332309bfe2bdc10aea941bbe0bd9a16cb.tar.bz2
gentoo-301f5e6332309bfe2bdc10aea941bbe0bd9a16cb.zip
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@gmail.com> Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'dev-libs/boost')
-rw-r--r--dev-libs/boost/boost-1.80.0.ebuild1
-rw-r--r--dev-libs/boost/files/boost-1.80.0-unary-function.patch27
2 files changed, 28 insertions, 0 deletions
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 <john@johnmaddock.co.uk>
+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 ---
+