aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--delly-use-system-libraries.patch65
-rw-r--r--gn/packages/bioinformatics.scm56
2 files changed, 121 insertions, 0 deletions
diff --git a/delly-use-system-libraries.patch b/delly-use-system-libraries.patch
new file mode 100644
index 0000000..3ce817f
--- /dev/null
+++ b/delly-use-system-libraries.patch
@@ -0,0 +1,65 @@
+This patch let's Delly use the system versions of htslib and boost.
+
+Patch by Roel Janssen <roel@gnu.org>
+--- a/Makefile 2016-03-16 13:08:49.936706607 +0100
++++ b/Makefile 2016-03-16 13:09:12.351706212 +0100
+@@ -9,8 +9,8 @@
+
+ # Flags
+ CXX=g++
+-CXXFLAGS += -isystem ${SEQTK_ROOT} -isystem ${BOOST_ROOT} -pedantic -W -Wall -Wno-unknown-pragmas
+-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
++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,32 +41,24 @@
+ DELLYSOURCES = $(wildcard src/*.h) $(wildcard src/*.cpp)
+
+ # Targets
+-TARGETS = .htslib .boost src/delly src/extract src/cov src/iover src/stats
++TARGETS = src/delly src/extract src/cov src/iover src/stats
+
+ all: $(TARGETS)
+
+-.htslib: $(HTSLIBSOURCES)
+- cd src/htslib && make && make lib-static && cd ../../ && touch .htslib
+-
+-.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 .boost $(DELLYSOURCES)
++src/delly: $(DELLYSOURCES)
+ $(CXX) $(CXXFLAGS) $@.cpp -o $@ $(LDFLAGS)
+
+-src/extract: .htslib .boost $(DELLYSOURCES)
++src/extract: $(DELLYSOURCES)
+ $(CXX) $(CXXFLAGS) $@.cpp -o $@ $(LDFLAGS)
+
+-src/cov: .htslib .boost $(DELLYSOURCES)
++src/cov: $(DELLYSOURCES)
+ $(CXX) $(CXXFLAGS) $@.cpp -o $@ $(LDFLAGS)
+
+-src/iover: .htslib .boost $(DELLYSOURCES)
++src/iover: $(DELLYSOURCES)
+ $(CXX) $(CXXFLAGS) $@.cpp -o $@ $(LDFLAGS)
+
+-src/stats: .htslib .boost $(DELLYSOURCES)
++src/stats: $(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
++ rm -f $(TARGETS) $(TARGETS:=.o)
diff --git a/gn/packages/bioinformatics.scm b/gn/packages/bioinformatics.scm
index a0a375b..a4d14b0 100644
--- a/gn/packages/bioinformatics.scm
+++ b/gn/packages/bioinformatics.scm
@@ -113,6 +113,62 @@ standard alignment formats (BAM/SAM) and outputs in variant call format
package.")
(license license:gpl3+)))
+(define boost-delly
+ (package (inherit boost)
+ (name "boost-delly")
+ (version "1.57.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://sourceforge/boost/boost_"
+ (string-map (lambda (x) (if (eq? x #\.) #\_ x)) version)
+ ".tar.bz2"))
+ (sha256
+ (base32
+ "0rs94vdmg34bwwj23fllva6mhrml2i7mvmlb11zyrk1k5818q34i"))))))
+
+(define-public delly
+ (package
+ (name "delly")
+ (version "0.7.2")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/tobiasrausch/delly/archive/v"
+ version ".tar.gz"))
+ (sha256
+ (base32 "173mmg43dbxqkyq0kiffz63xbmggr2kzd55mwxci9yfh5md1zprn"))
+ (patches (list (search-patch "delly-use-system-libraries.patch")))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("python" ,python-2)))
+ (inputs
+ `(("boost" ,boost-delly) ; Use version 1.57.0 instead.
+ ("htslib" ,htslib)
+ ("zlib" ,zlib)
+ ("bzip2" ,bzip2)))
+ (arguments
+ `(#:tests? #f ; There are no tests to run.
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure) ; There is no configure phase.
+ (replace 'install
+ (lambda _
+ (let ((bin (string-append (assoc-ref %outputs "out") "/bin")))
+ (install-file "src/cov" bin)
+ (install-file "src/delly" bin)
+ (install-file "src/extract" bin)
+ (install-file "src/iover" bin)
+ (install-file "src/stats" bin)))))))
+ (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. Structural
+variants can be visualized using Delly-maze and Delly-suave.")
+ (license license:gpl3)))
+
(define-public freec
(package
(name "control-freec")