gnu: khmer: Update to 2.1.2.

* gnu/packages/bioinformatics.scm (khmer): Update to 2.1.2.
[source]: Fetch from git; remove bundled libraries in snippet.
[arguments]: Remove "set-paths" phase; remove "post-install-check" phase;
remove "reset-gzip-timestamps" phase.
[native-inputs]: Remove seqan and python-nose; add python-cython,
python-pytest, and python-pytest-runner.
[inputs]: Remove gcc-4.9.
This commit is contained in:
Ricardo Wurmus 2018-10-21 22:59:37 +02:00
parent 50e33c3a8c
commit 4b8f4536ce
No known key found for this signature in database
GPG key ID: 197A5888235FACAC

View file

@ -3742,75 +3742,48 @@ (define-public jellyfish
(define-public khmer
(package
(name "khmer")
(version "2.0")
(version "2.1.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "khmer" version))
(method git-fetch)
(uri (git-reference
(url "https://github.com/dib-lab/khmer.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0wb05shqh77v00256qlm68vbbx3kl76fyzihszbz5nhanl4ni33a"))
(patches (search-patches "khmer-use-libraries.patch"))))
"02x38d9jw2r58y8dmnj4hffy9wxv1yc1jwbvdbhby9dxndv94r9m"))
(patches (search-patches "khmer-use-libraries.patch"))
(modules '((guix build utils)))
(snippet
'(begin
;; Delete bundled libraries. We do not replace the bundled seqan
;; as it is a modified subset of the old version 1.4.1.
;;
;; We do not replace the bundled MurmurHash as the canonical
;; repository for this code 'SMHasher' is unsuitable for providing
;; a library. See
;; https://lists.gnu.org/archive/html/guix-devel/2016-06/msg00977.html
(delete-file-recursively "third-party/zlib")
(delete-file-recursively "third-party/bzip2")
#t))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'set-paths
(lambda* (#:key inputs outputs #:allow-other-keys)
;; Delete bundled libraries.
(delete-file-recursively "third-party/zlib")
(delete-file-recursively "third-party/bzip2")
;; Replace bundled seqan.
(let* ((seqan-all "third-party/seqan")
(seqan-include (string-append
seqan-all "/core/include")))
(delete-file-recursively seqan-all)
(copy-recursively (string-append (assoc-ref inputs "seqan")
"/include/seqan")
(string-append seqan-include "/seqan")))
;; We do not replace the bundled MurmurHash as the canonical
;; repository for this code 'SMHasher' is unsuitable for
;; providing a library. See
;; https://lists.gnu.org/archive/html/guix-devel/2016-06/msg00977.html
#t))
(add-after 'unpack 'set-cc
(lambda _
(setenv "CC" "gcc")
#t))
;; It is simpler to test after installation.
(delete 'check)
(add-after 'install 'post-install-check
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(setenv "PATH"
(string-append
(getenv "PATH")
":"
(assoc-ref outputs "out")
"/bin"))
(setenv "PYTHONPATH"
(string-append
(getenv "PYTHONPATH")
":"
out
"/lib/python"
(string-take (string-take-right
(assoc-ref inputs "python") 5) 3)
"/site-packages"))
(with-directory-excursion "build"
(zero? (system* "nosetests" "khmer" "--attr"
"!known_failing")))))))))
(lambda _ (setenv "CC" "gcc") #t))
;; FIXME: This fails with "permission denied".
(delete 'reset-gzip-timestamps))))
(native-inputs
`(("seqan" ,seqan)
("python-nose" ,python-nose)))
`(("python-cython" ,python-cython)
("python-pytest" ,python-pytest)
("python-pytest-runner" ,python-pytest-runner)))
(inputs
`(("zlib" ,zlib)
("bzip2" ,bzip2)
("python-screed" ,python-screed)
("python-bz2file" ,python-bz2file)
;; Tests fail when gcc-5 is used for compilation. Use gcc-4.9 at least
;; until the next version of khmer (likely 2.1) is released.
("gcc" ,gcc-4.9)))
("python-bz2file" ,python-bz2file)))
(home-page "https://khmer.readthedocs.org/")
(synopsis "K-mer counting, filtering and graph traversal library")
(description "The khmer software is a set of command-line tools for