Subject: bug#30985: closed (Re: [bug#30985] [PATCH] gnu: Add delly.)

From: [email-masked] (GNU bug Tracking System)
Date: Fri, 30 Mar 2018 14:52:02 +0000

Your bug report

#30985: [PATCH] gnu: Add delly.

which was filed against the guix-patches package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
30985: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=30985
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: [bug#30985] [PATCH] gnu: Add delly.
From: Leo Famulari <[email-masked]>
To: Roel Janssen <[email-masked]>
Cc: [email-masked]
Date: Fri, 30 Mar 2018 10:51:16 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

On Thu, Mar 29, 2018 at 03:02:12PM +0200, Roel Janssen wrote:
> Dear Guix,
> 
> I'd like to add Delly.  Note that there's a newer version (0.7.8) out.
> We extensively tested 0.7.7 in our research lab.  Building 0.7.8 failed
> because the patch for unbundling dependencies no longer applies to this
> new version.
> 
> So I'd like to add 0.7.7 first, and do more testing/patching on 0.7.8
> before we update it in Guix.

Okay!

> From b333dd0f027e8dfdcd67bc96ab94f6fc79cf0854 Mon Sep 17 00:00:00 2001
> From: Roel Janssen <[email-masked]>
> 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.

Pushed as fdc306879b388b08be63ead6209473c184daa1e0 with these changes:

> +              (patches
> +               (list
> +                (search-patch "delly-use-system-libraries.patch")))))

I changed this to use search-patches...

> +    (inputs
> +     `(("boost" ,boost)
> +       ("htslib" ,htslib)
> +       ("zlib" ,zlib)
> +       ("bzip2" ,bzip2)))
> +    (native-inputs
> +     `(("python" ,python-2)))
> +    (inputs
> +     `(("boost" ,boost)
> +       ("htslib" ,htslib)
> +       ("zlib" ,zlib)
> +       ("bzip2" ,bzip2)))

... and removed the extra part.

Subject: [PATCH] gnu: Add delly.
From: Roel Janssen <[email-masked]>
To: guix-patches <[email-masked]>
Date: Thu, 29 Mar 2018 15:02:12 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Dear Guix,

I'd like to add Delly.  Note that there's a newer version (0.7.8) out.
We extensively tested 0.7.7 in our research lab.  Building 0.7.8 failed
because the patch for unbundling dependencies no longer applies to this
new version.

So I'd like to add 0.7.7 first, and do more testing/patching on 0.7.8
before we update it in Guix.

Thanks for your time!

Kind regards,
Roel Janssen
>From b333dd0f027e8dfdcd67bc96ab94f6fc79cf0854 Mon Sep 17 00:00:00 2001
From: Roel Janssen <[email-masked]>
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) $@.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)
-- 
2.16.2