[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
06/12: gnu: Add java-picard.
From: |
Ricardo Wurmus |
Subject: |
06/12: gnu: Add java-picard. |
Date: |
Mon, 27 Nov 2017 06:13:14 -0500 (EST) |
rekado pushed a commit to branch master
in repository guix.
commit d7fed31ad2d115f2708e1801607df727e985ae52
Author: Ricardo Wurmus <address@hidden>
Date: Sun Nov 19 13:02:23 2017 +0100
gnu: Add java-picard.
* gnu/packages/bioinformatics.scm (java-picard): New variable.
---
gnu/packages/bioinformatics.scm | 78 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 78 insertions(+)
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index 5164da0..636e912 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -3008,6 +3008,84 @@ sequencing (HTS) data. There are also an number of
useful utilities for
manipulating HTS data.")
(license license:expat)))
+;; This version matches java-htsjdk 2.3.0. Later versions also require a more
+;; recent version of java-htsjdk, which depends on gradle.
+(define-public java-picard
+ (package
+ (name "java-picard")
+ (version "2.3.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/broadinstitute/picard.git")
+ (commit version)))
+ (file-name (string-append "java-picard-" version "-checkout"))
+ (sha256
+ (base32
+ "1ll7mf4r3by92w2nhlmpa591xd1f46xlkwh59mq6fvbb5pdwzvx6"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Delete pre-built binaries.
+ (delete-file-recursively "lib")
+ (mkdir-p "lib")
+ (substitute* "build.xml"
+ ;; Remove build-time dependency on git.
+ (("failifexecutionfails=\"true\"")
+ "failifexecutionfails=\"false\"")
+ ;; Use our htsjdk.
+ (("depends=\"compile-htsjdk, ")
+ "depends=\"")
+ (("depends=\"compile-htsjdk-tests, ")
+ "depends=\"")
+ ;; Build picard-lib.jar before building picard.jar
+ (("name=\"picard-jar\" depends=\"" line)
+ (string-append line "picard-lib-jar, ")))
+ #t))))
+ (build-system ant-build-system)
+ (arguments
+ `(#:build-target "picard-jar"
+ #:test-target "test"
+ ;; Tests require jacoco:coverage.
+ #:tests? #f
+ #:make-flags
+ (list (string-append "-Dhtsjdk_lib_dir="
+ (assoc-ref %build-inputs "java-htsjdk")
+ "/share/java/htsjdk/")
+ "-Dhtsjdk-classes=dist/tmp"
+ (string-append "-Dhtsjdk-version="
+ ,(package-version java-htsjdk)))
+ #:jdk ,icedtea-8
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'use-our-htsjdk
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "build.xml"
+ (("\\$\\{htsjdk\\}/lib")
+ (string-append (assoc-ref inputs "java-htsjdk")
+ "/share/java/htsjdk/")))
+ #t))
+ (add-after 'unpack 'make-test-target-independent
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "build.xml"
+ (("name=\"test\" depends=\"compile, ")
+ "name=\"test\" depends=\""))
+ #t))
+ (replace 'install (install-jars "dist")))))
+ (inputs
+ `(("java-htsjdk" ,java-htsjdk)
+ ("java-guava" ,java-guava)))
+ (native-inputs
+ `(("java-testng" ,java-testng)))
+ (home-page "http://broadinstitute.github.io/picard/")
+ (synopsis "Tools for manipulating high-throughput sequencing data and
formats")
+ (description "Picard is a set of Java command line tools for manipulating
+high-throughput sequencing (HTS) data and formats. Picard is implemented
+using the HTSJDK Java library to support accessing file formats that are
+commonly used for high-throughput sequencing data such as SAM, BAM, CRAM and
+VCF.")
+ (license license:expat)))
+
(define-public htslib
(package
(name "htslib")
- 02/12: gnu: Add javacc., (continued)
- 02/12: gnu: Add javacc., Ricardo Wurmus, 2017/11/27
- 05/12: gnu: java-htsjdk: Update to 2.3.0., Ricardo Wurmus, 2017/11/27
- 10/12: gnu: Add ant-junit., Ricardo Wurmus, 2017/11/27
- 08/12: gnu: Add java-commons-bcel., Ricardo Wurmus, 2017/11/27
- 04/12: gnu: Add java-commons-jexl-2., Ricardo Wurmus, 2017/11/27
- 07/12: gnu: Add java-cofoja., Ricardo Wurmus, 2017/11/27
- 09/12: gnu: Add ant-apache-bcel., Ricardo Wurmus, 2017/11/27
- 01/12: gnu: Add java-snappy-1., Ricardo Wurmus, 2017/11/27
- 03/12: gnu: Add javacc-4., Ricardo Wurmus, 2017/11/27
- 12/12: gnu: Add java-jbzip2., Ricardo Wurmus, 2017/11/27
- 06/12: gnu: Add java-picard.,
Ricardo Wurmus <=
- 11/12: gnu: Add java-picard-1.113., Ricardo Wurmus, 2017/11/27