all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* bug#72040: [core-updates] libetonyek link failure
@ 2024-07-10 17:33 Leo Famulari
  2024-07-11 16:00 ` Leo Famulari
  0 siblings, 1 reply; 8+ messages in thread
From: Leo Famulari @ 2024-07-10 17:33 UTC (permalink / raw)
  To: 72040


[-- Attachment #1.1: Type: text/plain, Size: 11898 bytes --]

On core-updates commit 736939037346, libetonyek fails to build like
this (sorry in advance for the looooong lines, full log attached):

------
  CXXLD    libetonyek-0.1.la                                                                                                                                                                    ld: ./.libs/libetonyek_internal.a(libetonyek_internal_la-KEY1DivElement.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boost-1.83.0/include/boost/preprocessor/iteration/detail/limits/local_256
.hpp:43: multiple definition of `boost::phoenix::placeholders::uarg10'; ./.libs/libetonyek_internal.a(libetonyek_internal_la-IWORKFormula.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boost-1.83.0/include/boost/preprocessor/iteration/detail/limits/local_256.hpp:43: first defined here                                                                                                   ld: ./.libs/libetonyek_internal.a(libetonyek_internal_la-KEY1DivElement.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boost-1.83.0/include/boost/preprocessor/iteration/detail/limits/local_256
.hpp:40: multiple definition of `boost::phoenix::placeholders::uarg9'; ./.libs/libetonyek_internal.a(libetonyek_internal_la-IWORKFormula.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boost-1.83.0/include/boost/preprocessor/iteration/detail/limits/local_256.hpp:40: first defined here                                                                                                    ld: ./.libs/libetonyek_internal.a(libetonyek_internal_la-KEY1DivElement.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boost-1.83.0/include/boost/preprocessor/iteration/detail/limits/local_256
.hpp:37: multiple definition of `boost::phoenix::placeholders::uarg8'; ./.libs/libetonyek_internal.a(libetonyek_internal_la-IWORKFormula.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boost-1.83.0/include/boost/preprocessor/iteration/detail/limits/local_256.hpp:37: first defined here                                                                                                    ld: ./.libs/libetonyek_internal.a(libetonyek_internal_la-KEY1DivElement.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boost-1.83.0/include/boost/preprocessor/iteration/detail/limits/local_256
.hpp:34: multiple definition of `boost::phoenix::placeholders::uarg7'; ./.libs/libetonyek_internal.a(libetonyek_internal_la-IWORKFormula.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boost-1.83.0/include/boost/preprocessor/iteration/detail/limits/local_256.hpp:34: first defined here                                                                                                    ld: ./.libs/libetonyek_internal.a(libetonyek_internal_la-KEY1DivElement.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boost-1.83.0/include/boost/preprocessor/iteration/detail/limits/local_256
.hpp:31: multiple definition of `boost::phoenix::placeholders::uarg6'; ./.libs/libetonyek_internal.a(libetonyek_internal_la-IWORKFormula.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boost-1.
83.0/include/boost/preprocessor/iteration/detail/limits/local_256.hpp:31: first defined here                                                                                                    
ld: ./.libs/libetonyek_internal.a(libetonyek_internal_la-KEY1DivElement.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boost-1.83.0/include/boost/preprocessor/iteration/detail/limits/local_256
.hpp:28: multiple definition of `boost::phoenix::placeholders::uarg5'; ./.libs/libetonyek_internal.a(libetonyek_internal_la-IWORKFormula.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boost-1.
83.0/include/boost/preprocessor/iteration/detail/limits/local_256.hpp:28: first defined here                                                                                                    
ld: ./.libs/libetonyek_internal.a(libetonyek_internal_la-KEY1DivElement.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boost-1.83.0/include/boost/preprocessor/iteration/detail/limits/local_256
.hpp:25: multiple definition of `boost::phoenix::placeholders::uarg4'; ./.libs/libetonyek_internal.a(libetonyek_internal_la-IWORKFormula.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boost-1.
83.0/include/boost/preprocessor/iteration/detail/limits/local_256.hpp:25: first defined here                                                                                                    
ld: ./.libs/libetonyek_internal.a(libetonyek_internal_la-KEY1DivElement.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boost-1.83.0/include/boost/preprocessor/iteration/detail/limits/local_256
.hpp:22: multiple definition of `boost::phoenix::placeholders::uarg3'; ./.libs/libetonyek_internal.a(libetonyek_internal_la-IWORKFormula.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boost-1.
83.0/include/boost/preprocessor/iteration/detail/limits/local_256.hpp:22: first defined here                                                                                                    
ld: ./.libs/libetonyek_internal.a(libetonyek_internal_la-KEY1DivElement.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boost-1.83.0/include/boost/preprocessor/iteration/detail/limits/local_256
.hpp:19: multiple definition of `boost::phoenix::placeholders::uarg2'; ./.libs/libetonyek_internal.a(libetonyek_internal_la-IWORKFormula.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boost-1.
83.0/include/boost/preprocessor/iteration/detail/limits/local_256.hpp:19: first defined here                                                                                                    
ld: ./.libs/libetonyek_internal.a(libetonyek_internal_la-KEY1DivElement.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boost-1.83.0/include/boost/preprocessor/iteration/detail/limits/local_256
.hpp:16: multiple definition of `boost::phoenix::placeholders::uarg1'; ./.libs/libetonyek_internal.a(libetonyek_internal_la-IWORKFormula.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boost-1.
83.0/include/boost/preprocessor/iteration/detail/limits/local_256.hpp:16: first defined here                                                                                                    
ld: ./.libs/libetonyek_internal.a(libetonyek_internal_la-KEY1StringConverter.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boost-1.83.0/include/boost/preprocessor/iteration/detail/limits/loca
l_256.hpp:43: multiple definition of `boost::phoenix::placeholders::uarg10'; ./.libs/libetonyek_internal.a(libetonyek_internal_la-IWORKFormula.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-bo
ost-1.83.0/include/boost/preprocessor/iteration/detail/limits/local_256.hpp:43: first defined here
ld: ./.libs/libetonyek_internal.a(libetonyek_internal_la-KEY1StringConverter.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boost-1.83.0/include/boost/preprocessor/iteration/detail/limits/loca
l_256.hpp:40: multiple definition of `boost::phoenix::placeholders::uarg9'; ./.libs/libetonyek_internal.a(libetonyek_internal_la-IWORKFormula.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boo
st-1.83.0/include/boost/preprocessor/iteration/detail/limits/local_256.hpp:40: first defined here
ld: ./.libs/libetonyek_internal.a(libetonyek_internal_la-KEY1StringConverter.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boost-1.83.0/include/boost/preprocessor/iteration/detail/limits/loca
l_256.hpp:37: multiple definition of `boost::phoenix::placeholders::uarg8'; ./.libs/libetonyek_internal.a(libetonyek_internal_la-IWORKFormula.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boo
st-1.83.0/include/boost/preprocessor/iteration/detail/limits/local_256.hpp:37: first defined here
ld: ./.libs/libetonyek_internal.a(libetonyek_internal_la-KEY1StringConverter.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boost-1.83.0/include/boost/preprocessor/iteration/detail/limits/loca
l_256.hpp:34: multiple definition of `boost::phoenix::placeholders::uarg7'; ./.libs/libetonyek_internal.a(libetonyek_internal_la-IWORKFormula.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boo
st-1.83.0/include/boost/preprocessor/iteration/detail/limits/local_256.hpp:34: first defined here
ld: ./.libs/libetonyek_internal.a(libetonyek_internal_la-KEY1StringConverter.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boost-1.83.0/include/boost/preprocessor/iteration/detail/limits/loca
l_256.hpp:31: multiple definition of `boost::phoenix::placeholders::uarg6'; ./.libs/libetonyek_internal.a(libetonyek_internal_la-IWORKFormula.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boo
st-1.83.0/include/boost/preprocessor/iteration/detail/limits/local_256.hpp:31: first defined here
ld: ./.libs/libetonyek_internal.a(libetonyek_internal_la-KEY1StringConverter.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boost-1.83.0/include/boost/preprocessor/iteration/detail/limits/loca
l_256.hpp:28: multiple definition of `boost::phoenix::placeholders::uarg5'; ./.libs/libetonyek_internal.a(libetonyek_internal_la-IWORKFormula.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boo
st-1.83.0/include/boost/preprocessor/iteration/detail/limits/local_256.hpp:28: first defined here
ld: ./.libs/libetonyek_internal.a(libetonyek_internal_la-KEY1StringConverter.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boost-1.83.0/include/boost/preprocessor/iteration/detail/limits/loca
l_256.hpp:25: multiple definition of `boost::phoenix::placeholders::uarg4'; ./.libs/libetonyek_internal.a(libetonyek_internal_la-IWORKFormula.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boo
st-1.83.0/include/boost/preprocessor/iteration/detail/limits/local_256.hpp:25: first defined here
ld: ./.libs/libetonyek_internal.a(libetonyek_internal_la-KEY1StringConverter.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boost-1.83.0/include/boost/preprocessor/iteration/detail/limits/loca
l_256.hpp:22: multiple definition of `boost::phoenix::placeholders::uarg3'; ./.libs/libetonyek_internal.a(libetonyek_internal_la-IWORKFormula.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boo
st-1.83.0/include/boost/preprocessor/iteration/detail/limits/local_256.hpp:22: first defined here
ld: ./.libs/libetonyek_internal.a(libetonyek_internal_la-KEY1StringConverter.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boost-1.83.0/include/boost/preprocessor/iteration/detail/limits/loca
l_256.hpp:19: multiple definition of `boost::phoenix::placeholders::uarg2'; ./.libs/libetonyek_internal.a(libetonyek_internal_la-IWORKFormula.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boo
st-1.83.0/include/boost/preprocessor/iteration/detail/limits/local_256.hpp:19: first defined here
ld: ./.libs/libetonyek_internal.a(libetonyek_internal_la-KEY1StringConverter.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boost-1.83.0/include/boost/preprocessor/iteration/detail/limits/loca
l_256.hpp:16: multiple definition of `boost::phoenix::placeholders::uarg1'; ./.libs/libetonyek_internal.a(libetonyek_internal_la-IWORKFormula.o):/gnu/store/3x98sgvvn7nagmkapva3yjr28v971wvq-boo
st-1.83.0/include/boost/preprocessor/iteration/detail/limits/local_256.hpp:16: first defined here
collect2: error: ld returned 1 exit status
make[4]: *** [Makefile:1130: libetonyek-0.1.la] Error 1
make[4]: Leaving directory '/tmp/guix-build-libetonyek-0.1.10.drv-0/libetonyek-0.1.10/src/lib'
make[3]: *** [Makefile:1047: all] Error 2
make[3]: Leaving directory '/tmp/guix-build-libetonyek-0.1.10.drv-0/libetonyek-0.1.10/src/lib'
make[2]: *** [Makefile:402: all-recursive] Error 1
make[2]: Leaving directory '/tmp/guix-build-libetonyek-0.1.10.drv-0/libetonyek-0.1.10/src'
make[1]: *** [Makefile:510: all-recursive] Error 1
make[1]: Leaving directory '/tmp/guix-build-libetonyek-0.1.10.drv-0/libetonyek-0.1.10'
make: *** [Makefile:421: all] Error 2
error: in phase 'build': uncaught exception:
%exception #<&invoke-error program: "make" arguments: ("-j" "1") exit-status: 2 term-signal: #f stop-signal: #f> 
phase `build' failed after 286.1 seconds
------

Any ideas?

[-- Attachment #1.2: wihshbiv8bvidnycx0g9amka22h6j1-libetonyek-0.1.10.drv.gz --]
[-- Type: application/x-gunzip, Size: 9922 bytes --]

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#72040: [core-updates] libetonyek link failure
  2024-07-10 17:33 bug#72040: [core-updates] libetonyek link failure Leo Famulari
@ 2024-07-11 16:00 ` Leo Famulari
  2024-07-11 16:41   ` Leo Famulari
  0 siblings, 1 reply; 8+ messages in thread
From: Leo Famulari @ 2024-07-11 16:00 UTC (permalink / raw)
  To: 72040

I think this upstream report (closed without resolution) describes the
problem:

https://bugs.documentfoundation.org/show_bug.cgi?id=152569

Boost 1.81 (and presumably 1.83, which we have on core-updates) is not
compatible with the libetonyek code.




^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#72040: [core-updates] libetonyek link failure
  2024-07-11 16:00 ` Leo Famulari
@ 2024-07-11 16:41   ` Leo Famulari
  2024-07-11 19:15     ` bug#72040: [core-updates] Boost bug / breaks libreoffice [was libetonyek link failure] Leo Famulari
  0 siblings, 1 reply; 8+ messages in thread
From: Leo Famulari @ 2024-07-11 16:41 UTC (permalink / raw)
  To: 72040

On Thu, Jul 11, 2024 at 12:00:56PM -0400, Leo Famulari wrote:
> I think this upstream report (closed without resolution) describes the
> problem:
> 
> https://bugs.documentfoundation.org/show_bug.cgi?id=152569

I sent a report to the mailing list where build failures are supposed to
be reported:

https://lists.freedesktop.org/archives/libreoffice/2024-July/thread.html

It hasn't shown up yet, presumably being hold for moderation. I'll link
to it here when it appears.




^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#72040: [core-updates] Boost bug / breaks libreoffice [was libetonyek link failure]
  2024-07-11 16:41   ` Leo Famulari
@ 2024-07-11 19:15     ` Leo Famulari
  2024-07-11 20:23       ` Leo Famulari
  0 siblings, 1 reply; 8+ messages in thread
From: Leo Famulari @ 2024-07-11 19:15 UTC (permalink / raw)
  To: 72040

I found the bug report, which is for Boost:

https://github.com/boostorg/phoenix/issues/111

Basically, versions 1.81 through 1.83 exhibit this defect.

I'm testing a patch for Boost now. It will cause a huge number of
rebuilds, so it would be great to come up with another approach.




^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#72040: [core-updates] Boost bug / breaks libreoffice [was libetonyek link failure]
  2024-07-11 19:15     ` bug#72040: [core-updates] Boost bug / breaks libreoffice [was libetonyek link failure] Leo Famulari
@ 2024-07-11 20:23       ` Leo Famulari
  2024-07-13 17:39         ` Leo Famulari
  2024-07-24 21:48         ` Leo Famulari
  0 siblings, 2 replies; 8+ messages in thread
From: Leo Famulari @ 2024-07-11 20:23 UTC (permalink / raw)
  To: 72040


[-- Attachment #1.1: Type: text/plain, Size: 479 bytes --]

On Thu, Jul 11, 2024 at 03:15:27PM -0400, Leo Famulari wrote:
> I'm testing a patch for Boost now. It will cause a huge number of
> rebuilds, so it would be great to come up with another approach.

Here's a patch that patches Boost, while also creating a hidden package
boost-for-source-highlight. This variant is only used by the
source-highlight package, which is used by gdb, and thus rust. So, it
aims to avoid rebuilding everything rust.

I'm testing it now.

Any thoughts?

[-- Attachment #1.2: 0001-WIP-Boost-Fix-a-bug-that-breaks-libetonyek.patch --]
[-- Type: text/plain, Size: 6059 bytes --]

From 405919330bbb26a8f9eee3d801376c5925882e28 Mon Sep 17 00:00:00 2001
Message-ID: <405919330bbb26a8f9eee3d801376c5925882e28.1720729374.git.leo@famulari.name>
From: Leo Famulari <leo@famulari.name>
Date: Thu, 11 Jul 2024 15:18:51 -0400
Subject: [PATCH] WIP: 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
---
 gnu/local.mk                                  |  1 +
 gnu/packages/boost.scm                        | 26 +++++++++++--
 .../boost-fix-duplicate-definitions-bug.patch | 38 +++++++++++++++++++
 gnu/packages/pretty-print.scm                 |  2 +-
 4 files changed, 63 insertions(+), 4 deletions(-)
 create mode 100644 gnu/packages/patches/boost-fix-duplicate-definitions-bug.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 8a9c89225b..f722acfb8a 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1016,6 +1016,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	\
diff --git a/gnu/packages/boost.scm b/gnu/packages/boost.scm
index 70774617f0..2fdea80896 100644
--- a/gnu/packages/boost.scm
+++ b/gnu/packages/boost.scm
@@ -74,9 +74,11 @@ (define-public boost
                                   version "/source/boost_"
                                   (version-with-underscores version) ".tar.bz2"))
               (patches
-               (list (boost-patch
-                      "0001-unordered-fix-copy-assign.patch" version
-                      "09j61m5xh7099k5na9i43x5rra51znf7vm2nyh89yqpizcll9q66")))
+                (append
+                 (search-patches "boost-fix-duplicate-definitions-bug.patch")
+                 (list (boost-patch
+                        "0001-unordered-fix-copy-assign.patch" version
+                        "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
diff --git a/gnu/packages/patches/boost-fix-duplicate-definitions-bug.patch b/gnu/packages/patches/boost-fix-duplicate-definitions-bug.patch
new file mode 100644
index 0000000000..f2e3decedb
--- /dev/null
+++ b/gnu/packages/patches/boost-fix-duplicate-definitions-bug.patch
@@ -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
diff --git a/gnu/packages/pretty-print.scm b/gnu/packages/pretty-print.scm
index 220761fc07..d8ff1664b4 100644
--- a/gnu/packages/pretty-print.scm
+++ b/gnu/packages/pretty-print.scm
@@ -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

base-commit: 50243774824597dbd141a074a7be0117dc450cef
-- 
2.45.2


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* bug#72040: [core-updates] Boost bug / breaks libreoffice [was libetonyek link failure]
  2024-07-11 20:23       ` Leo Famulari
@ 2024-07-13 17:39         ` Leo Famulari
  2024-07-13 17:40           ` Leo Famulari
  2024-07-24 21:48         ` Leo Famulari
  1 sibling, 1 reply; 8+ messages in thread
From: Leo Famulari @ 2024-07-13 17:39 UTC (permalink / raw)
  To: 72040

On Thu, Jul 11, 2024 at 04:23:09PM -0400, Leo Famulari wrote:
> Here's a patch that patches Boost, while also creating a hidden package
> boost-for-source-highlight. This variant is only used by the
> source-highlight package, which is used by gdb, and thus rust. So, it
> aims to avoid rebuilding everything rust.

Here's an updated patchset that builds on the previous patch.

It patches Boost to fix the bug, creates the Boost variant for
source-highlight / gdb / Rust, and then finally fixes a missing
dependency failure in Libreoffice.

It does cause several thousand rebuilds (5933 rebuilds), but much fewer than if we did
not avoid changing the source-highlight derivation (15383 rebuilds).

There is some discussion on the Libreoffice mailing list, but so far
it's inconclusive from my perspective. But if I understand correctly,
their recommended solution would be to create a source origin of
Boost >=1.84, copy that into the Libreoffice and libetonyek source
trees, and build the programs against that "internal" Boost. I'm not
sure that's better than simply updating Boost.




^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#72040: [core-updates] Boost bug / breaks libreoffice [was libetonyek link failure]
  2024-07-13 17:39         ` Leo Famulari
@ 2024-07-13 17:40           ` Leo Famulari
  0 siblings, 0 replies; 8+ messages in thread
From: Leo Famulari @ 2024-07-13 17:40 UTC (permalink / raw)
  To: 72040

On Sat, Jul 13, 2024 at 01:39:21PM -0400, Leo Famulari wrote:
> There is some discussion on the Libreoffice mailing list, but so far
> it's inconclusive from my perspective. But if I understand correctly,
> their recommended solution would be to create a source origin of
> Boost >=1.84, copy that into the Libreoffice and libetonyek source
> trees, and build the programs against that "internal" Boost. I'm not
> sure that's better than simply updating Boost.

I forgot, here is the link to the discussion on their mailing list:

https://lists.freedesktop.org/archives/libreoffice/2024-July/092177.html




^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#72040: [core-updates] Boost bug / breaks libreoffice [was libetonyek link failure]
  2024-07-11 20:23       ` Leo Famulari
  2024-07-13 17:39         ` Leo Famulari
@ 2024-07-24 21:48         ` Leo Famulari
  1 sibling, 0 replies; 8+ messages in thread
From: Leo Famulari @ 2024-07-24 21:48 UTC (permalink / raw)
  To: 72040-done

[-- Attachment #1: Type: text/plain, Size: 731 bytes --]

On Thu, Jul 11, 2024 at 04:23:09PM -0400, Leo Famulari wrote:
> Subject: [PATCH] WIP: 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.

Pushed as 1ab3e3b26fdc43d48826119d4f51379571dd89b6 along with a followup
patch that fixes another problem with Libreoffice. With these changes,
we have Libreoffice on core-updates.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2024-07-24 21:49 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-10 17:33 bug#72040: [core-updates] libetonyek link failure Leo Famulari
2024-07-11 16:00 ` Leo Famulari
2024-07-11 16:41   ` Leo Famulari
2024-07-11 19:15     ` bug#72040: [core-updates] Boost bug / breaks libreoffice [was libetonyek link failure] Leo Famulari
2024-07-11 20:23       ` Leo Famulari
2024-07-13 17:39         ` Leo Famulari
2024-07-13 17:40           ` Leo Famulari
2024-07-24 21:48         ` Leo Famulari

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.