>From b333dd0f027e8dfdcd67bc96ab94f6fc79cf0854 Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Thu, 29 Mar 2018 14:58:15 +0200 Subject: [PATCH] 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. --- gnu/local.mk | 1 + gnu/packages/bioinformatics.scm | 54 +++++++++++++++++++++ .../patches/delly-use-system-libraries.patch | 56 ++++++++++++++++++++++ 3 files changed, 111 insertions(+) create mode 100644 gnu/packages/patches/delly-use-system-libraries.patch diff --git a/gnu/local.mk b/gnu/local.mk index 0575a2fe3..2705fb37a 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 b16ee2b60..76349d426 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -2030,6 +2030,60 @@ 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 + (list + (search-patch "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))))))) + (inputs + `(("boost" ,boost) + ("htslib" ,htslib) + ("zlib" ,zlib) + ("bzip2" ,bzip2))) + (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 000000000..3315c2a17 --- /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) address@hidden -o $@ $(LDFLAGS) +- +-src/cov: .htslib .bcftools .boost $(DELLYSOURCES) ++src/cov: $(DELLYSOURCES) + $(CXX) $(CXXFLAGS) address@hidden -o $@ $(LDFLAGS) + +-src/dpe: .htslib .bcftools .boost $(DELLYSOURCES) ++src/dpe: $(DELLYSOURCES) + $(CXX) $(CXXFLAGS) address@hidden -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) -- 2.16.2