summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorRicardo Wurmus <rekado@elephly.net>2024-01-11 17:08:56 +0100
committerRicardo Wurmus <rekado@elephly.net>2024-01-11 17:10:24 +0100
commit59706daf02296a3814ffb3128d2ceb2a71de3950 (patch)
treea7564df7164eca162df51d8e259e75f790e407d1 /gnu
parent24f000a49a00b8dd3e9f51e08f0ef5567edf04aa (diff)
downloadguix-59706daf02296a3814ffb3128d2ceb2a71de3950.tar.gz
gnu: r-cytolib: Unbundle boost.
* gnu/packages/bioconductor.scm (r-cytolib)[source]: Remove bundled copy of
boost.
[arguments]: Change build system to link with existing boost library.
[inputs]: Add boost, openblas, protobuf, and zlib.

Change-Id: I3d1b7d10c80ddaf8ed8eedfe9178ab212ef48e8d
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/bioconductor.scm25
1 files changed, 24 insertions, 1 deletions
diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm
index 69e6677062..d82a73ac51 100644
--- a/gnu/packages/bioconductor.scm
+++ b/gnu/packages/bioconductor.scm
@@ -59,6 +59,7 @@
   #:use-module (gnu packages python)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages protobuf)
   #:use-module (gnu packages statistics)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages web)
@@ -17756,9 +17757,31 @@ of the analyses while minimizing technical noise.")
        (uri (bioconductor-uri "cytolib" version))
        (sha256
         (base32
-         "1r2slhzrp3gf45k5gknqgj3vjz7p0rx2yjzrbp020inj82fp4mgi"))))
+         "1r2slhzrp3gf45k5gknqgj3vjz7p0rx2yjzrbp020inj82fp4mgi"))
+       ;; Remove bundled boost sources
+       (modules '((guix build utils)))
+       (snippet
+        '(delete-file-recursively "src/boost"))))
     (properties `((upstream-name . "cytolib")))
     (build-system r-build-system)
+    (arguments
+     (list
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'unbundle
+            (lambda _
+              (substitute* "src/Makevars.in"
+                (("\\$\\(USERLIB\\): \\$\\{boost_fs_objs\\}")
+                 "$(USERLIB):")
+                (("\\$\\{cytolib_objs\\} \\$\\{boost_fs_objs\\} \\$\\{boost_sys_objs\\}")
+                 "${cytolib_objs}")
+                (("PKG_CPPFLAGS =")
+                 "PKG_CPPFLAGS = -lboost_filesystem")
+                #;
+                (("^BOOSTFSLIB.*")
+                 (string-append "BOOSTFSLIB="
+                                #$(this-package-input "boost") "/libboost_filesystem.so\n"))))))))
+    (inputs (list boost openblas protobuf zlib))
     (native-inputs
      (list r-knitr))
     (propagated-inputs