Archived
1
0
Fork 0

gnu: blast+: Update to 2.14.0.

* gnu/packages/bioinformatics.scm (blast+): Update to 2.14.0.
[arguments]: Remove trailing #T from build phases; let WHICH* return #FALSE on
failure; use G-expression.
[inputs]: Drop package labels.
This commit is contained in:
Ricardo Wurmus 2023-05-14 12:49:44 +02:00
parent 28bfc5cd08
commit 68ccd1a0d8
No known key found for this signature in database
GPG key ID: 197A5888235FACAC

View file

@ -2474,7 +2474,7 @@ package provides command line tools using the Bio++ library.")
(define-public blast+ (define-public blast+
(package (package
(name "blast+") (name "blast+")
(version "2.11.0") (version "2.14.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -2482,7 +2482,7 @@ package provides command line tools using the Bio++ library.")
version "/ncbi-blast-" version "+-src.tar.gz")) version "/ncbi-blast-" version "+-src.tar.gz"))
(sha256 (sha256
(base32 (base32
"0m0r9vkw631ky1za1wilsfk9k9spwqh22nkrb9a57rbwmrc1i3nq")) "003mn7m4y306k7visv3in3ikfgm8m41z0jq9lyvz10iv1hdpyixz"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
'(begin '(begin
@ -2518,103 +2518,101 @@ package provides command line tools using the Bio++ library.")
(("cksum") "cksum >/dev/null")))))) (("cksum") "cksum >/dev/null"))))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(;; There are two(!) tests for this massive library, and both fail with (list
;; "unparsable timing stats". ;; There are two(!) tests for this massive library, and both fail with
;; ERR [127] -- [serial/datatool] datatool.sh (unparsable timing stats) ;; "unparsable timing stats".
;; ERR [127] -- [serial/datatool] datatool_xml.sh (unparsable timing stats) ;; ERR [127] -- [serial/datatool] datatool.sh (unparsable timing stats)
#:tests? #f ;; ERR [127] -- [serial/datatool] datatool_xml.sh (unparsable timing stats)
#:out-of-source? #t #:tests? #f
#:parallel-build? #f ; not supported #:out-of-source? #t
#:phases #:parallel-build? #f ;not supported
(modify-phases %standard-phases #:phases
(add-before 'configure 'set-HOME #~(modify-phases %standard-phases
;; $HOME needs to be set at some point during the configure phase (add-before 'configure 'set-HOME
(lambda _ (setenv "HOME" "/tmp") #t)) ;; $HOME needs to be set at some point during the configure phase
(add-after 'unpack 'enter-dir (lambda _ (setenv "HOME" "/tmp")))
(lambda _ (chdir "c++") #t)) (add-after 'unpack 'enter-dir
(add-after 'enter-dir 'fix-build-system (lambda _ (chdir "c++")))
(lambda _ (add-after 'enter-dir 'fix-build-system
(define (which* cmd) (lambda _
(cond ((string=? cmd "date") (define (which* cmd)
;; make call to "date" deterministic (cond ((string=? cmd "date")
"date -d @0") ;; make call to "date" deterministic
((which cmd) "date -d @0")
=> identity) ((which cmd)
(else => identity)
(format (current-error-port) (else
"WARNING: Unable to find absolute path for ~s~%" (format (current-error-port)
cmd) "WARNING: Unable to find absolute path for ~s~%"
#f))) cmd)
#false)))
;; Rewrite hardcoded paths to various tools ;; Rewrite hardcoded paths to various tools
(substitute* (append '("src/build-system/configure.ac" (substitute* (append '("src/build-system/configure.ac"
"src/build-system/configure" "src/build-system/configure"
"src/build-system/helpers/run_with_lock.c" "src/build-system/helpers/run_with_lock.c"
"scripts/common/impl/if_diff.sh" "scripts/common/impl/if_diff.sh"
"scripts/common/impl/run_with_lock.sh" "scripts/common/impl/run_with_lock.sh"
"src/build-system/Makefile.configurables.real" "src/build-system/Makefile.configurables.real"
"src/build-system/Makefile.in.top" "src/build-system/Makefile.in.top"
"src/build-system/Makefile.meta.gmake=no" "src/build-system/Makefile.meta.gmake=no"
"src/build-system/Makefile.meta.in" "src/build-system/Makefile.meta.in"
"src/build-system/Makefile.meta_l" "src/build-system/Makefile.meta_l"
"src/build-system/Makefile.meta_p" "src/build-system/Makefile.meta_p"
"src/build-system/Makefile.meta_r" "src/build-system/Makefile.meta_r"
"src/build-system/Makefile.mk.in" "src/build-system/Makefile.mk.in"
"src/build-system/Makefile.requirements" "src/build-system/Makefile.requirements"
"src/build-system/Makefile.rules_with_autodep.in") "src/build-system/Makefile.rules_with_autodep.in")
(find-files "scripts/common/check" "\\.sh$")) (find-files "scripts/common/check" "\\.sh$"))
(("(/usr/bin/|/bin/)([a-z][-_.a-z]*)" all dir cmd) (("(/usr/bin/|/bin/)([a-z][-_.a-z]*(\\+\\+)?)" all dir cmd)
(or (which* cmd) all))) (or (which* cmd) all)))
(substitute* (find-files "src/build-system" "^config.*") (substitute* (find-files "src/build-system" "^config.*")
(("LN_S=/bin/\\$LN_S") (string-append "LN_S=" (which "ln"))) (("LN_S=/bin/\\$LN_S") (string-append "LN_S=" (which "ln")))
(("^PATH=.*") "")) (("^PATH=.*") ""))
;; rewrite "/var/tmp" in check script ;; rewrite "/var/tmp" in check script
(substitute* "scripts/common/check/check_make_unix.sh" (substitute* "scripts/common/check/check_make_unix.sh"
(("/var/tmp") "/tmp")) (("/var/tmp") "/tmp"))
;; do not reset PATH ;; do not reset PATH
(substitute* (find-files "scripts/common/impl/" "\\.sh$") (substitute* (find-files "scripts/common/impl/" "\\.sh$")
(("^ *PATH=.*") "") (("^ *PATH=.*") "")
(("action=/bin/") "action=") (("action=/bin/") "action=")
(("export PATH") ":")) (("export PATH") ":"))))
#t)) (replace 'configure
(replace 'configure (lambda _
(lambda* (#:key inputs outputs #:allow-other-keys) (let ((lib (string-append #$output:lib "/lib"))
(let ((out (assoc-ref outputs "out")) (include (string-append #$output:include
(lib (string-append (assoc-ref outputs "lib") "/lib")) "/include/ncbi-tools++")))
(include (string-append (assoc-ref outputs "include") ;; The 'configure' script doesn't recognize things like
"/include/ncbi-tools++"))) ;; '--enable-fast-install'.
;; The 'configure' script doesn't recognize things like (invoke "./configure.orig"
;; '--enable-fast-install'. (string-append "--with-build-root=" (getcwd) "/build")
(invoke "./configure.orig" (string-append "--prefix=" #$output)
(string-append "--with-build-root=" (getcwd) "/build") (string-append "--libdir=" lib)
(string-append "--prefix=" out) (string-append "--includedir=" include)
(string-append "--libdir=" lib) (string-append "--with-bz2="
(string-append "--includedir=" include) #$(this-package-input "bzip2"))
(string-append "--with-bz2=" (string-append "--with-z="
(assoc-ref inputs "bzip2")) #$(this-package-input "zlib"))
(string-append "--with-z=" (string-append "--with-pcre="
(assoc-ref inputs "zlib")) #$(this-package-input "pcre"))
(string-append "--with-pcre=" ;; Each library is built twice by default, once
(assoc-ref inputs "pcre")) ;; with "-static" in its name, and again
;; Each library is built twice by default, once ;; without.
;; with "-static" in its name, and again "--without-static"
;; without. "--with-dll")))))))
"--without-static"
"--with-dll")
#t))))))
(outputs '("out" ; 21 MB (outputs '("out" ; 21 MB
"lib" ; 226 MB "lib" ; 226 MB
"include")) ; 33 MB "include")) ; 33 MB
(inputs (inputs
`(("bzip2" ,bzip2) (list bzip2
("lmdb" ,lmdb) lmdb
("zlib" ,zlib) zlib
("pcre" ,pcre) pcre
("perl" ,perl) perl
("python" ,python-wrapper))) python-wrapper))
(native-inputs (native-inputs
(list cpio)) (list cpio))
(home-page "https://blast.ncbi.nlm.nih.gov") (home-page "https://blast.ncbi.nlm.nih.gov")