summaryrefslogtreecommitdiff
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
parentced3d5cbf99eac429a45e33191335ec0662f1df3 (diff)
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>
-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
+