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.
This commit is contained in:
Ricardo Wurmus 2023-04-27 11:38:16 +02:00
parent 479f2558fe
commit 133957f7bb
No known key found for this signature in database
GPG key ID: 197A5888235FACAC

View file

@ -17220,11 +17220,13 @@ (define-public vcflib
((".*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 @@ (define-public vcflib
pybind11
smithwaterman
tabixpp
wfa2-lib
xz
zlib))
(propagated-inputs
(list wfa2-lib))
(native-inputs
`(("pkg-config" ,pkg-config)
;; Submodules.
@ -17262,7 +17265,6 @@ (define-public vcflib
"-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 @@ (define-public vcflib
#: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 @@ (define-public vcflib
(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 @@ (define-public vcflib
~@
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}~%"