mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-24 21:38:07 -05:00
gnu: Boost: Fix a bug that breaks libetonyek.
This fixes <https://issues.guix.gnu.org/72040>. * gnu/packages/patches/boost-fix-duplicate-definitions-bug.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/boost.scm (boost)[source]: Use it. (boost-for-source-highlight): New variable, not using the patch. * gnu/packages/pretty-print.scm (source-highlight)[inputs]: Replace BOOST with BOOST-FOR-SOURCE-HIGHLIGHT. Change-Id: I5fbc9eb5000aefd7d3a14cc7a0482741032b5400
This commit is contained in:
parent
1c322552dd
commit
8a20f58420
4 changed files with 63 additions and 4 deletions
|
@ -1022,6 +1022,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/bloomberg-bde-cmake-module-path.patch \
|
||||
%D%/packages/patches/bloomberg-bde-tools-fix-install-path.patch \
|
||||
%D%/packages/patches/boolector-find-googletest.patch \
|
||||
%D%/packages/patches/boost-fix-duplicate-definitions-bug.patch \
|
||||
%D%/packages/patches/breezy-fix-gio.patch \
|
||||
%D%/packages/patches/byobu-writable-status.patch \
|
||||
%D%/packages/patches/bubblewrap-fix-locale-in-tests.patch \
|
||||
|
|
|
@ -74,9 +74,11 @@ (define-public boost
|
|||
version "/source/boost_"
|
||||
(version-with-underscores version) ".tar.bz2"))
|
||||
(patches
|
||||
(append
|
||||
(search-patches "boost-fix-duplicate-definitions-bug.patch")
|
||||
(list (boost-patch
|
||||
"0001-unordered-fix-copy-assign.patch" version
|
||||
"09j61m5xh7099k5na9i43x5rra51znf7vm2nyh89yqpizcll9q66")))
|
||||
"09j61m5xh7099k5na9i43x5rra51znf7vm2nyh89yqpizcll9q66"))))
|
||||
(patch-flags '("-p2"))
|
||||
(sha256
|
||||
(base32
|
||||
|
@ -204,6 +206,24 @@ (define-public boost
|
|||
(license (license:x11-style "https://www.boost.org/LICENSE_1_0.txt"
|
||||
"Some components have other similar licences."))))
|
||||
|
||||
(define-public boost-for-source-highlight
|
||||
(hidden-package (package (inherit boost)
|
||||
(name "boost")
|
||||
(version "1.83.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://boostorg.jfrog.io/artifactory/main/release/"
|
||||
version "/source/boost_"
|
||||
(version-with-underscores version) ".tar.bz2"))
|
||||
(patches
|
||||
(list (boost-patch
|
||||
"0001-unordered-fix-copy-assign.patch" version
|
||||
"09j61m5xh7099k5na9i43x5rra51znf7vm2nyh89yqpizcll9q66")))
|
||||
(patch-flags '("-p2"))
|
||||
(sha256
|
||||
(base32
|
||||
"13iviiwk1srpw9dmiwabkxv56v0pl0zggjp8zxy1419k5zzfsy34")))))))
|
||||
|
||||
;; Sadly, this is needed for irods. It won't link with 1.69 or later.
|
||||
(define-public boost-for-irods
|
||||
(package
|
||||
|
|
|
@ -0,0 +1,38 @@
|
|||
Fix the build of libetonyek / libreoffice:
|
||||
|
||||
https://issues.guix.gnu.org/72040
|
||||
|
||||
Patch copied from upstream source repository:
|
||||
|
||||
https://github.com/boostorg/phoenix/commit/8913607a3788cb82d48ed461ea59c919b7bad3df
|
||||
|
||||
From 8913607a3788cb82d48ed461ea59c919b7bad3df Mon Sep 17 00:00:00 2001
|
||||
From: djowel <djowel@gmail.com>
|
||||
Date: Tue, 29 Aug 2023 14:32:41 +0800
|
||||
Subject: [PATCH] Disabled this for now, due to ODR violations $$$ Fix Me $$$
|
||||
|
||||
---
|
||||
include/boost/phoenix/stl/tuple.hpp | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/include/boost/phoenix/stl/tuple.hpp b/include/boost/phoenix/stl/tuple.hpp
|
||||
index fb9440d2..a2e42bec 100644
|
||||
--- a/include/boost/phoenix/stl/tuple.hpp
|
||||
+++ b/include/boost/phoenix/stl/tuple.hpp
|
||||
@@ -106,6 +106,7 @@ namespace boost { namespace phoenix {
|
||||
tuple_detail::idx_wrap<N>(), t);
|
||||
}
|
||||
|
||||
+#if 0 // Disabled this for now due to ODR viaolations $$$ Fix Me $$$
|
||||
// Make unpacked argument placeholders
|
||||
namespace placeholders {
|
||||
#define BOOST_PP_LOCAL_LIMITS (1, BOOST_PHOENIX_ARG_LIMIT)
|
||||
@@ -114,6 +115,8 @@ namespace boost { namespace phoenix {
|
||||
boost::phoenix::get_<(N)-1>(boost::phoenix::placeholders::arg1);
|
||||
#include BOOST_PP_LOCAL_ITERATE()
|
||||
}
|
||||
+#endif
|
||||
+
|
||||
}} // namespace boost::phoenix
|
||||
|
||||
#endif // C++ 14
|
|
@ -305,7 +305,7 @@ (define-public source-highlight
|
|||
;; The ctags that comes with emacs does not support the --excmd options,
|
||||
;; so can't be used
|
||||
(inputs
|
||||
(list boost))
|
||||
(list boost-for-source-highlight))
|
||||
(native-inputs
|
||||
(list bison flex))
|
||||
(arguments
|
||||
|
|
Loading…
Reference in a new issue