summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorGreg Hogan <code@greghogan.com>2021-01-25 17:35:27 +0000
committerLudovic Courtès <ludo@gnu.org>2021-01-26 23:32:54 +0100
commit94cf36763491cfd7155a058e0354da5a422a07b2 (patch)
tree6508d8b86071b0e2e3fa076d1a94c2dc4ff82392 /gnu
parentced3d5cbf99eac429a45e33191335ec0662f1df3 (diff)
downloadguix-94cf36763491cfd7155a058e0354da5a422a07b2.tar.gz
gnu: boost: Patch transitive linking bug.
* gnu/packages/patches/boost-fix-transitive-linking.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/boost.scm (boost)[source]: Use it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/local.mk2
-rw-r--r--gnu/packages/boost.scm3
-rw-r--r--gnu/packages/patches/boost-fix-transitive-linking.patch16
3 files changed, 21 insertions, 0 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index f84f859bdf..0e8e9c37b9 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -40,6 +40,7 @@
 # Copyright © 2020 Malte Frank Gerdes <mate.f.gerdes@gmail.com>
 # Copyright © 2020 Vinicius Monego <monego@posteo.net>
 # Copyright © 2021 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
+# Copyright © 2021 Greg Hogan <code@greghogan.com>
 #
 # This file is part of GNU Guix.
 #
@@ -866,6 +867,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/blender-2.79-oiio2.patch			\
   %D%/packages/patches/blender-2.79-python-3.7-fix.patch	\
   %D%/packages/patches/blender-2.79-python-3.8-fix.patch	\
+  %D%/packages/patches/boost-fix-transitive-linking.patch	\
   %D%/packages/patches/bpftrace-disable-bfd-disasm.patch	\
   %D%/packages/patches/byobu-writable-status.patch		\
   %D%/packages/patches/calibre-no-updates-dialog.patch		\
diff --git a/gnu/packages/boost.scm b/gnu/packages/boost.scm
index 1db173bd16..bc0e95b1ba 100644
--- a/gnu/packages/boost.scm
+++ b/gnu/packages/boost.scm
@@ -15,6 +15,7 @@
 ;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2020 Jonathan Brielmaier <jonathan.brielmaier@web.de>
 ;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
+;;; Copyright © 2021 Greg Hogan <code@greghogan.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -68,6 +69,8 @@
               (uri (string-append "https://dl.bintray.com/boostorg/release/"
                                   version "/source/boost_"
                                   (version-with-underscores version) ".tar.bz2"))
+              ; Should be included in next Boost update
+              (patches (search-patches "boost-fix-transitive-linking.patch"))
               (sha256
                (base32
                 "1js9zpij58l60kx46s3lxdp5207igppjnhqigwhbpdvd04gb6gcm"))))
diff --git a/gnu/packages/patches/boost-fix-transitive-linking.patch b/gnu/packages/patches/boost-fix-transitive-linking.patch
new file mode 100644
index 0000000000..a42feab109
--- /dev/null
+++ b/gnu/packages/patches/boost-fix-transitive-linking.patch
@@ -0,0 +1,16 @@
+Patch from https://github.com/boostorg/boost_install/issues/47
+which should be included in the Boost 1.76 release.
+
+This patch prevents CMake from explicitly linking against Boost dependencies
+when building against the shared Boost libraries.
+--- a/tools/boost_install/boost-install.jam
++++ b/tools/boost_install/boost-install.jam
+@@ -483,7 +483,7 @@ rule generate-cmake-variant- ( target : sources * : properties * )
+ 
+     .info "  deps3=" $(deps3) ;
+ 
+-    if $(deps3)
++    if $(deps3) && $(link) = static
+     {
+         print.text
+