1 |
commit: 301f5e6332309bfe2bdc10aea941bbe0bd9a16cb |
2 |
Author: Sam James <sam <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sat Sep 10 10:57:58 2022 +0000 |
4 |
Commit: Sam James <sam <AT> gentoo <DOT> org> |
5 |
CommitDate: Sat Sep 10 10:57:58 2022 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=301f5e63 |
7 |
|
8 |
dev-libs/boost: fix build with libcxx |
9 |
|
10 |
No revbump as: |
11 |
1. Didn't build with libcxx anyway; |
12 |
2. Mixing libcxx and libstdc++ isn't supported (suppose built Boost |
13 |
with libstdc++ & tried to use libcxx in an application) so no |
14 |
need to worry about that case, although doubt things would work |
15 |
enough that you'd get to the point where this caused a problem. |
16 |
|
17 |
Closes: https://bugs.gentoo.org/869401 |
18 |
Thanks-to: Peter Dimov <pdimov <AT> gmail.com> |
19 |
Signed-off-by: Sam James <sam <AT> gentoo.org> |
20 |
|
21 |
dev-libs/boost/boost-1.80.0.ebuild | 1 + |
22 |
.../boost/files/boost-1.80.0-unary-function.patch | 27 ++++++++++++++++++++++ |
23 |
2 files changed, 28 insertions(+) |
24 |
|
25 |
diff --git a/dev-libs/boost/boost-1.80.0.ebuild b/dev-libs/boost/boost-1.80.0.ebuild |
26 |
index e0c8fcaf0060..d70b29fc1bf3 100644 |
27 |
--- a/dev-libs/boost/boost-1.80.0.ebuild |
28 |
+++ b/dev-libs/boost/boost-1.80.0.ebuild |
29 |
@@ -51,6 +51,7 @@ PATCHES=( |
30 |
"${FILESDIR}"/${PN}-1.80.0-fix-mips1-transition.patch |
31 |
# (upstreamed) |
32 |
"${FILESDIR}"/${PN}-1.80.0-unordered-fix.patch |
33 |
+ "${FILESDIR}"/${PN}-1.80.0-unary-function.patch |
34 |
) |
35 |
|
36 |
python_bindings_needed() { |
37 |
|
38 |
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 |
39 |
new file mode 100644 |
40 |
index 000000000000..7941d7c66395 |
41 |
--- /dev/null |
42 |
+++ b/dev-libs/boost/files/boost-1.80.0-unary-function.patch |
43 |
@@ -0,0 +1,27 @@ |
44 |
+https://bugs.gentoo.org/869401 |
45 |
+https://github.com/boostorg/config/commit/f0af4a9184457939b89110795ae2d293582c5f66 |
46 |
+https://github.com/boostorg/container_hash/issues/24 |
47 |
+ |
48 |
+From: jzmaddock <john@××××××××××××××.uk> |
49 |
+Date: Mon, 11 Jul 2022 18:26:07 +0100 |
50 |
+Subject: [PATCH] The std lib unary/binary_function base classes are |
51 |
+ deprecated/removed from libcpp15. Fixes |
52 |
+ https://github.com/boostorg/container_hash/issues/24. |
53 |
+ |
54 |
+--- a/boost/config/stdlib/libcpp.hpp |
55 |
++++ b/boost/config/stdlib/libcpp.hpp |
56 |
+@@ -168,4 +168,13 @@ |
57 |
+ # define BOOST_NO_CXX14_HDR_SHARED_MUTEX |
58 |
+ #endif |
59 |
+ |
60 |
++#if _LIBCPP_VERSION >= 15000 |
61 |
++// |
62 |
++// Unary function is now deprecated in C++11 and later: |
63 |
++// |
64 |
++#if __cplusplus >= 201103L |
65 |
++#define BOOST_NO_CXX98_FUNCTION_BASE |
66 |
++#endif |
67 |
++#endif |
68 |
++ |
69 |
+ // --- end --- |
70 |
+ |