summary refs log tree commit diff
path: root/gnu/packages/bioinformatics.scm
diff options
context:
space:
mode:
authorRicardo Wurmus <rekado@elephly.net>2023-04-27 11:38:16 +0200
committerRicardo Wurmus <rekado@elephly.net>2023-04-27 11:38:16 +0200
commit133957f7bb81d9c9f33216ea8afe649866267b5e (patch)
treeb0bb4505645cb6549efefc12944ceaf71c69c43b /gnu/packages/bioinformatics.scm
parent479f2558feb6a98852ac8e7eeeee3ab11414ad99 (diff)
downloadguix-133957f7bb81d9c9f33216ea8afe649866267b5e.tar.gz
gnu: vcflib: Use libwfa2.pc.
* gnu/packages/bioinformatics.scm (vcflib)[source]: Use pkg-config to look for
libwfa2.
[inputs]: Move wfa2-lib from here...
[propagated-inputs]: ...to here.
[arguments]: Drop WFA_LINK_LIBRARIES option; fix typo in build phase name;
patch IntervalTree.h includes; add libwfa2 to pkg-config file.
Diffstat (limited to 'gnu/packages/bioinformatics.scm')
-rw-r--r--gnu/packages/bioinformatics.scm19
1 files changed, 14 insertions, 5 deletions
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index a0f4738933..113bdc5675 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -17220,11 +17220,13 @@ sequences to accelerate the alignment process.")
               ((".*smithwaterman.*") "")
               (("(pkg_check_modules\\(TABIXPP)" text)
                (string-append
+                "pkg_check_modules(WFA2 REQUIRED libwfa2)\n"
                 "pkg_check_modules(FASTAHACK REQUIRED fastahack)\n"
                 "pkg_check_modules(SMITHWATERMAN REQUIRED smithwaterman)\n"
                 text))
               (("\\$\\{TABIXPP_LIBRARIES\\}" text)
                (string-append "${FASTAHACK_LIBRARIES} "
+                              "${WFA2_LIBRARIES} "
                               "${SMITHWATERMAN_LIBRARIES} "
                               text)))
             (substitute* (find-files "." "\\.(h|c)(pp)?$")
@@ -17244,9 +17246,10 @@ sequences to accelerate the alignment process.")
            pybind11
            smithwaterman
            tabixpp
-           wfa2-lib
            xz
            zlib))
+    (propagated-inputs
+     (list wfa2-lib))
     (native-inputs
      `(("pkg-config" ,pkg-config)
        ;; Submodules.
@@ -17262,7 +17265,6 @@ sequences to accelerate the alignment process.")
               "-DTABIXPP_LOCAL=OFF"
               "-DTABIX_FOUND=ON"
               "-DWFA_GITMODULE=OFF"
-              "-DWFA_LINK_LIBRARIES=-lwfa2cpp"
               (string-append "-DPKG_CONFIG_EXECUTABLE="
                              (search-input-file
                               %build-inputs (string-append
@@ -17270,7 +17272,7 @@ sequences to accelerate the alignment process.")
       #:tests? #f                       ; no tests
       #:phases
       #~(modify-phases %standard-phases
-          (add-after 'unpack 'find-wf2lib-headers
+          (add-after 'unpack 'find-wfa2lib-headers
             (lambda _
               (setenv "CPLUS_INCLUDE_PATH"
                       (string-append
@@ -17297,7 +17299,14 @@ sequences to accelerate the alignment process.")
                  (unpack "filevercmp-src" "contrib/filevercmp")
                  (unpack "fsom-src" "contrib/fsom")
                  (unpack "intervaltree-src" "contrib/intervaltree")
-                 (unpack "multichoose-src" "contrib/multichoose")))))
+                 (unpack "multichoose-src" "contrib/multichoose"))
+
+                ;; This is needed for downstream packages to allow building
+                ;; with GCC 11+.
+                (substitute* "contrib/intervaltree/IntervalTree.h"
+                  (("#include <vector>" m)
+                   (string-append m "
+#include <limits> /* std::numeric_limits */"))))))
           ;; This pkg-config file is provided by other distributions.
           (add-after 'install 'install-pkg-config-file
             (lambda _
@@ -17313,7 +17322,7 @@ includedir=${prefix}/include~@
 ~@
 Name: vcflib~@
 Version: ~a~@
-Requires: smithwaterman, fastahack, tabixpp~@
+Requires: libwfa2, smithwaterman, fastahack, tabixpp~@
 Description: C++ library for parsing and manipulating VCF files~@
 Libs: -L${libdir} -lvcflib~@
 Cflags: -I${includedir}~%"