me
/
guix
Archived
1
0
Fork 0

gnu: vcflib: Use G-expressions.

* gnu/packages/bioinformatics.scm (vcflib)[source, arguments]: Rewrite using
G-expressions.
[arguments]: Do not return #t from custom phases.

Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
master
Arun Isaac 2022-04-26 18:16:37 +05:30 committed by Efraim Flashner
parent 9258576eea
commit 9a68c07507
No known key found for this signature in database
GPG Key ID: 41AAE7DCCA3D8351
1 changed files with 51 additions and 52 deletions

View File

@ -14567,27 +14567,27 @@ library automatically handles index file generation and use.")
(base32 "1r7pnajg997zdjkf1b38m14v0zqnfx52w7nbldwh1xpbpahb1hjh")) (base32 "1r7pnajg997zdjkf1b38m14v0zqnfx52w7nbldwh1xpbpahb1hjh"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
'(begin #~(begin
(substitute* "CMakeLists.txt" (substitute* "CMakeLists.txt"
((".*fastahack.*") "") ((".*fastahack.*") "")
((".*smithwaterman.*") "") ((".*smithwaterman.*") "")
(("(pkg_check_modules\\(TABIXPP)" text) (("(pkg_check_modules\\(TABIXPP)" text)
(string-append (string-append
"pkg_check_modules(FASTAHACK REQUIRED fastahack)\n" "pkg_check_modules(FASTAHACK REQUIRED fastahack)\n"
"pkg_check_modules(SMITHWATERMAN REQUIRED smithwaterman)\n" "pkg_check_modules(SMITHWATERMAN REQUIRED smithwaterman)\n"
text)) text))
(("\\$\\{TABIXPP_LIBRARIES\\}" text) (("\\$\\{TABIXPP_LIBRARIES\\}" text)
(string-append "${FASTAHACK_LIBRARIES} " (string-append "${FASTAHACK_LIBRARIES} "
"${SMITHWATERMAN_LIBRARIES} " "${SMITHWATERMAN_LIBRARIES} "
text))) text)))
(substitute* (find-files "." "\\.(h|c)(pp)?$") (substitute* (find-files "." "\\.(h|c)(pp)?$")
(("\"SmithWatermanGotoh.h\"") "<smithwaterman/SmithWatermanGotoh.h>") (("\"SmithWatermanGotoh.h\"") "<smithwaterman/SmithWatermanGotoh.h>")
(("\"convert.h\"") "<smithwaterman/convert.h>") (("\"convert.h\"") "<smithwaterman/convert.h>")
(("\"disorder.h\"") "<smithwaterman/disorder.h>") (("\"disorder.h\"") "<smithwaterman/disorder.h>")
(("Fasta.h") "fastahack/Fasta.h")) (("Fasta.h") "fastahack/Fasta.h"))
(for-each delete-file-recursively (for-each delete-file-recursively
'("fastahack" "filevercmp" "fsom" "googletest" "intervaltree" '("fastahack" "filevercmp" "fsom" "googletest" "intervaltree"
"libVCFH" "multichoose" "smithwaterman")))))) "libVCFH" "multichoose" "smithwaterman"))))))
(build-system cmake-build-system) (build-system cmake-build-system)
(inputs (inputs
(list bzip2 (list bzip2
@ -14608,39 +14608,39 @@ library automatically handles index file generation and use.")
("intervaltree-src" ,(package-source intervaltree)) ("intervaltree-src" ,(package-source intervaltree))
("multichoose-src" ,(package-source multichoose)))) ("multichoose-src" ,(package-source multichoose))))
(arguments (arguments
`(#:tests? #f ; no tests (list #:tests? #f ; no tests
#:phases #:phases
(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'build-shared-library (add-after 'unpack 'build-shared-library
(lambda _
(substitute* "CMakeLists.txt"
(("vcflib STATIC") "vcflib SHARED"))
(substitute* "test/Makefile"
(("libvcflib.a") "libvcflib.so"))))
(add-after 'unpack 'unpack-submodule-sources
(lambda* (#:key inputs #:allow-other-keys)
(let ((unpack (lambda (source target)
(mkdir target)
(with-directory-excursion target
(if (file-is-directory? (assoc-ref inputs source))
(copy-recursively (assoc-ref inputs source) ".")
(invoke "tar" "xvf"
(assoc-ref inputs source)
"--strip-components=1"))))))
(and
(unpack "filevercmp-src" "filevercmp")
(unpack "fsom-src" "fsom")
(unpack "intervaltree-src" "intervaltree")
(unpack "multichoose-src" "multichoose")))))
;; This pkg-config file is provided by other distributions.
(add-after 'install 'install-pkg-config-file
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(pkgconfig (string-append out "/lib/pkgconfig")))
(mkdir-p pkgconfig)
(with-output-to-file (string-append pkgconfig "/vcflib.pc")
(lambda _ (lambda _
(format #t "prefix=~a~@ (substitute* "CMakeLists.txt"
(("vcflib STATIC") "vcflib SHARED"))
(substitute* "test/Makefile"
(("libvcflib.a") "libvcflib.so"))))
(add-after 'unpack 'unpack-submodule-sources
(lambda* (#:key inputs #:allow-other-keys)
(let ((unpack (lambda (source target)
(mkdir target)
(with-directory-excursion target
(if (file-is-directory? (assoc-ref inputs source))
(copy-recursively (assoc-ref inputs source) ".")
(invoke "tar" "xvf"
(assoc-ref inputs source)
"--strip-components=1"))))))
(and
(unpack "filevercmp-src" "filevercmp")
(unpack "fsom-src" "fsom")
(unpack "intervaltree-src" "intervaltree")
(unpack "multichoose-src" "multichoose")))))
;; This pkg-config file is provided by other distributions.
(add-after 'install 'install-pkg-config-file
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(pkgconfig (string-append out "/lib/pkgconfig")))
(mkdir-p pkgconfig)
(with-output-to-file (string-append pkgconfig "/vcflib.pc")
(lambda _
(format #t "prefix=~a~@
exec_prefix=${prefix}~@ exec_prefix=${prefix}~@
libdir=${exec_prefix}/lib~@ libdir=${exec_prefix}/lib~@
includedir=${prefix}/include~@ includedir=${prefix}/include~@
@ -14651,8 +14651,7 @@ library automatically handles index file generation and use.")
Description: C++ library for parsing and manipulating VCF files~@ Description: C++ library for parsing and manipulating VCF files~@
Libs: -L${libdir} -lvcflib~@ Libs: -L${libdir} -lvcflib~@
Cflags: -I${includedir}~%" Cflags: -I${includedir}~%"
out ,version))) out #$version)))))))))
#t))))))
(home-page "https://github.com/vcflib/vcflib/") (home-page "https://github.com/vcflib/vcflib/")
(synopsis "Library for parsing and manipulating VCF files") (synopsis "Library for parsing and manipulating VCF files")
(description "Vcflib provides methods to manipulate and interpret (description "Vcflib provides methods to manipulate and interpret