summary refs log tree commit diff
diff options
context:
space:
mode:
authorRoel Janssen <roel@gnu.org>2018-03-29 14:58:15 +0200
committerLeo Famulari <leo@famulari.name>2018-03-30 10:48:01 -0400
commitfdc306879b388b08be63ead6209473c184daa1e0 (patch)
treea7e7e2e8f0fadaf0b49993d550416157af11c4a6
parent183ce9884924794677eefca78cf445ada5551260 (diff)
downloadguix-fdc306879b388b08be63ead6209473c184daa1e0.tar.gz
gnu: Add delly.
* gnu/packages/bioinformatics.scm (delly): New variable.
* gnu/packages/patches/delly-use-system-libraries.patch: New file.
* gnu/local.mk: Include delly-use-system-libraries.patch.

Signed-off-by: Leo Famulari <leo@famulari.name>
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/bioinformatics.scm47
-rw-r--r--gnu/packages/patches/delly-use-system-libraries.patch56
3 files changed, 104 insertions, 0 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 0575a2fe32..2705fb37a5 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -621,6 +621,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/cyrus-sasl-CVE-2013-4122.patch		\
   %D%/packages/patches/dbus-helper-search-path.patch		\
   %D%/packages/patches/deja-dup-use-ref-keyword-for-iter.patch	\
+  %D%/packages/patches/delly-use-system-libraries.patch		\
   %D%/packages/patches/dfu-programmer-fix-libusb.patch		\
   %D%/packages/patches/diffutils-gets-undeclared.patch		\
   %D%/packages/patches/diffutils-getopt.patch			\
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index af515c026e..66d5bd3707 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -2030,6 +2030,53 @@ normalized and standardized files, multiple visualizations can be created to
 identify enrichments with functional annotations of the genome.")
     (license license:gpl3+)))
 
+(define-public delly
+  (package
+    (name "delly")
+    (version "0.7.7")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "https://github.com/tobiasrausch/delly/archive/v"
+                    version ".tar.gz"))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32 "0dkwy3pyxmi6dhh1lpsr3698ri5sslw9qz67hfys0bz8dgrqwabj"))
+              (patches (search-patches "delly-use-system-libraries.patch"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f ; There are no tests to run.
+       #:make-flags '("PARALLEL=1") ; Allow parallel execution at run-time.
+       #:phases
+       (modify-phases %standard-phases
+         (delete 'configure) ; There is no configure phase.
+         (replace 'install
+           (lambda _
+             (let ((bin (string-append (assoc-ref %outputs "out") "/bin"))
+                   (templates (string-append (assoc-ref %outputs "out")
+                                             "/share/delly/templates")))
+               (mkdir-p bin)
+               (mkdir-p templates)
+               (copy-recursively "excludeTemplates" templates)
+               (install-file "src/cov" bin)
+               (install-file "src/delly" bin)
+               (install-file "src/dpe" bin)))))))
+    (native-inputs
+     `(("python" ,python-2)))
+    (inputs
+     `(("boost" ,boost)
+       ("htslib" ,htslib)
+       ("zlib" ,zlib)
+       ("bzip2" ,bzip2)))
+    (home-page "https://github.com/tobiasrausch/delly")
+    (synopsis "Integrated structural variant prediction method")
+    (description "Delly is an integrated structural variant prediction method
+that can discover and genotype deletions, tandem duplications, inversions and
+translocations at single-nucleotide resolution in short-read massively parallel
+sequencing data.  It uses paired-ends and split-reads to sensitively and
+accurately delineate genomic rearrangements throughout the genome.")
+    (license license:gpl3+)))
+
 (define-public diamond
   (package
     (name "diamond")
diff --git a/gnu/packages/patches/delly-use-system-libraries.patch b/gnu/packages/patches/delly-use-system-libraries.patch
new file mode 100644
index 0000000000..3315c2a176
--- /dev/null
+++ b/gnu/packages/patches/delly-use-system-libraries.patch
@@ -0,0 +1,56 @@
+--- a/Makefile	2017-04-09 12:48:15.000000000 +0200
++++ b/Makefile	2017-06-21 14:26:02.749282787 +0200
+@@ -9,8 +9,8 @@
+ 
+ # Flags
+ CXX=g++
+-CXXFLAGS += -isystem ${SEQTK_ROOT} -isystem ${BOOST_ROOT} -pedantic -W -Wall -Wno-unknown-pragmas -D__STDC_LIMIT_MACROS -fno-strict-aliasing
+-LDFLAGS += -L${SEQTK_ROOT} -L${BOOST_ROOT}/stage/lib -lboost_iostreams -lboost_filesystem -lboost_system -lboost_program_options -lboost_date_time 
++CXXFLAGS += -pedantic -W -Wall -Wno-unknown-pragmas -D__STDC_LIMIT_MACROS -fno-strict-aliasing
++LDFLAGS += -lboost_iostreams -lboost_filesystem -lboost_system -lboost_program_options -lboost_date_time 
+ 
+ # Additional flags for release/debug
+ ifeq (${PARALLEL}, 1)
+@@ -23,7 +23,7 @@
+ ifeq (${STATIC}, 1)
+ 	LDFLAGS += -static -static-libgcc -pthread -lhts -lz
+ else
+-	LDFLAGS += -lhts -lz -Wl,-rpath,${SEQTK_ROOT},-rpath,${BOOST_ROOT}/stage/lib
++	LDFLAGS += -lhts -lz
+ endif
+ ifeq (${DEBUG}, 1)
+ 	CXXFLAGS += -g -O0 -fno-inline -DDEBUG
+@@ -41,29 +41,17 @@
+ DELLYSOURCES = $(wildcard src/*.h) $(wildcard src/*.cpp)
+ 
+ # Targets
+-TARGETS = .htslib .bcftools .boost src/delly src/cov src/dpe
++TARGETS = src/delly src/cov src/dpe
+ 
+ all:   	$(TARGETS)
+ 
+-.htslib: $(HTSLIBSOURCES)
+-	cd src/htslib && make && make lib-static && cd ../../ && touch .htslib
+-
+-.bcftools: $(HTSLIBSOURCES)
+-	cd src/bcftools && make && cd ../../ && touch .bcftools
+-
+-.boost: $(BOOSTSOURCES)
+-	cd src/modular-boost && ./bootstrap.sh --prefix=${PWD}/src/modular-boost --without-icu --with-libraries=iostreams,filesystem,system,program_options,date_time && ./b2 && ./b2 headers && cd ../../ && touch .boost
+-
+-src/delly: .htslib .bcftools .boost $(DELLYSOURCES)
+-	$(CXX) $(CXXFLAGS) $@.cpp -o $@ $(LDFLAGS)
+-
+-src/cov: .htslib .bcftools .boost $(DELLYSOURCES)
++src/cov: $(DELLYSOURCES)
+ 	$(CXX) $(CXXFLAGS) $@.cpp -o $@ $(LDFLAGS)
+ 
+-src/dpe: .htslib .bcftools .boost $(DELLYSOURCES)
++src/dpe: $(DELLYSOURCES)
+ 	$(CXX) $(CXXFLAGS) $@.cpp -o $@ $(LDFLAGS)
+ 
+ clean:
+ 	cd src/htslib && make clean
+ 	cd src/modular-boost && ./b2 --clean-all
+-	rm -f $(TARGETS) $(TARGETS:=.o) .htslib .boost .bcftools
++	rm -f $(TARGETS) $(TARGETS:=.o)