>From 3ed14719121a952fca48a8ad3426588ebb58a130 Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Tue, 22 Mar 2016 15:57:33 +0100 Subject: [PATCH 7/8] gnu: Add intervaltree. * gnu/packages/bioinformatics.scm (intervaltree): New variable. --- gnu/packages/bioinformatics.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 9cbde46..5a0eb16 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4985,3 +4985,35 @@ automatically handles index file generation and use.") ;; this program is a submodule, is licensed MIT, which is the same as ;; the Expat license. (license (list license:gpl2 license:expat))))) + +(define-public intervaltree + (let ((commit "dbb4c513d1ad3baac516fc1484c995daf9b42838")) + (package + (name "intervaltree") + (version (string-append "0-1." (string-take commit 7))) + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/ekg/intervaltree/archive/" commit ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 "19prwpn2wxsrijp5svfqvfcxl5nj7zdhm3jycd5kqhl9nifpmcks")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (delete 'configure) ; There is no configure phase. + (replace 'check + (lambda _ + (zero? (system* "./interval_tree_test")))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((include (string-append (assoc-ref outputs "out") + "/include/intervaltree"))) + (install-file "IntervalTree.h" include))))))) + (home-page "https://github.com/ekg/intervaltree/") + (synopsis "Minimal C++ interval tree implementation") + (description "This library provides a basic implementation of an interval +tree using C++ templates, allowing the insertion of arbitrary types into the +tree.") + (license license:expat)))) -- 2.5.5