~ruther/guix-local

b49c5a58dcbc6f10ebeaef7ccb3d24ff59695db8 — Ricardo Wurmus 10 years ago c6a24d6
gnu: preseq: Update to 2.0.

* gnu/packages/bioinformatics.scm (preseq): Update to 2.0.
[source]: Add file-name field, remove patches.
[arguments]: Remove unused build phases, add make flags.
[inputs]: Add smithlab-cpp.
* gnu/packages/patches/preseq-1.0.2-link-with-libbam.patch: Remove file.
* gnu/packages/patches/preseq-1.0.2-install-to-PREFIX.patch: Remove
  file.
* gnu-system.am (dist_patch_DATA): Remove them.
4 files changed, 18 insertions(+), 97 deletions(-)

M gnu-system.am
M gnu/packages/bioinformatics.scm
D gnu/packages/patches/preseq-1.0.2-install-to-PREFIX.patch
D gnu/packages/patches/preseq-1.0.2-link-with-libbam.patch
M gnu-system.am => gnu-system.am +0 -2
@@ 657,8 657,6 @@ dist_patch_DATA =						\
  gnu/packages/patches/plotutils-libpng-jmpbuf.patch		\
  gnu/packages/patches/polkit-drop-test.patch			\
  gnu/packages/patches/portaudio-audacity-compat.patch		\
  gnu/packages/patches/preseq-1.0.2-install-to-PREFIX.patch	\
  gnu/packages/patches/preseq-1.0.2-link-with-libbam.patch	\
  gnu/packages/patches/procps-make-3.82.patch			\
  gnu/packages/patches/pt-scotch-build-parallelism.patch	\
  gnu/packages/patches/pulseaudio-fix-mult-test.patch		\

M gnu/packages/bioinformatics.scm => gnu/packages/bioinformatics.scm +18 -25
@@ 2590,46 2590,39 @@ structures, classes for genomic regions, mapped sequencing reads, etc.")
(define-public preseq
  (package
    (name "preseq")
    (version "1.0.2")
    (version "2.0")
    (source (origin
              (method url-fetch)
              (uri
               (string-append "http://smithlabresearch.org/downloads/preseq-"
                              version ".tar.bz2"))
              (uri (string-append "https://github.com/smithlabcode/"
                                  "preseq/archive/v" version ".tar.gz"))
              (file-name (string-append name "-" version ".tar.gz"))
              (sha256
               (base32 "0r7sw07p6nv8ygvc17gd78lisbw5336v3vhs86b5wv8mw3pwqksc"))
              (patches (list (search-patch "preseq-1.0.2-install-to-PREFIX.patch")
                             (search-patch "preseq-1.0.2-link-with-libbam.patch")))
               (base32 "08r684l50pnxjpvmhzjgqq56yv9rfw90k8vx0nsrnrzk8mf9hsdq"))
              (modules '((guix build utils)))
              (snippet
               ;; Remove bundled samtools.
               '(delete-file-recursively "preseq-master/samtools"))))
               '(delete-file-recursively "samtools"))))
    (build-system gnu-build-system)
    (arguments
     `(#:tests? #f ;no "check" target
       #:phases
       (modify-phases %standard-phases
         (add-after
          'unpack 'enter-dir
          (lambda _
            (chdir "preseq-master")
            #t))
         (add-after
          'enter-dir 'use-samtools-headers
          (lambda _
            (substitute* '("smithlab_cpp/SAM.cpp"
                           "smithlab_cpp/SAM.hpp")
              (("sam.h") "samtools/sam.h"))
            #t))
         (delete 'configure))
       #:make-flags (list (string-append "PREFIX="
                                         (assoc-ref %outputs "out"))
                          (string-append "LIBBAM="
                                         (assoc-ref %build-inputs "samtools")
                                         "/lib/libbam.a"))))
       #:make-flags
       (list (string-append "PREFIX="
                            (assoc-ref %outputs "out"))
             (string-append "LIBBAM="
                            (assoc-ref %build-inputs "samtools")
                            "/lib/libbam.a")
             (string-append "SMITHLAB_CPP="
                            (assoc-ref %build-inputs "smithlab-cpp")
                            "/lib")
             "PROGS=preseq"
             "INCLUDEDIRS=$(SMITHLAB_CPP)/../include/smithlab-cpp $(SAMTOOLS_DIR)")))
    (inputs
     `(("gsl" ,gsl)
       ("samtools" ,samtools-0.1)
       ("smithlab-cpp" ,smithlab-cpp)
       ("zlib" ,zlib)))
    (home-page "http://smithlabresearch.org/software/preseq/")
    (synopsis "Program for analyzing library complexity")

D gnu/packages/patches/preseq-1.0.2-install-to-PREFIX.patch => gnu/packages/patches/preseq-1.0.2-install-to-PREFIX.patch +0 -37
@@ 1,37 0,0 @@
This patch has been submitted upstream: https://github.com/smithlabcode/preseq/pull/15

From 65387b0d766e6c06a15cf8d8f9183d9a4ba644bb Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>
Date: Thu, 25 Jun 2015 15:01:53 +0200
Subject: [PATCH] Install to PREFIX

---
 Makefile | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/Makefile b/Makefile
index 4d0367a..e334f2f 100644
--- a/preseq-master/Makefile
+++ b/preseq-master/Makefile
@@ -22,6 +22,10 @@ ifndef ROOT
 ROOT = $(shell pwd)
 endif
 
+ifndef PREFIX
+PREFIX = $(ROOT)
+endif
+
 ifndef SMITHLAB_CPP
 SMITHLAB_CPP=$(ROOT)/smithlab_cpp/
 endif
@@ -91,8 +95,8 @@ endif
 	$(CXX) $(CXXFLAGS) -o $@ $^ $(INCLUDEARGS) $(LIBS)
 
 install: $(PROGS)
-	@mkdir -p $(ROOT)/bin
-	@install -m 755 $(PROGS) $(ROOT)/bin
+	@mkdir -p $(PREFIX)/bin
+	@install -m 755 $(PROGS) $(PREFIX)/bin
 
 clean:
 	@-rm -f $(PROGS) *.o *~

D gnu/packages/patches/preseq-1.0.2-link-with-libbam.patch => gnu/packages/patches/preseq-1.0.2-link-with-libbam.patch +0 -33
@@ 1,33 0,0 @@
This patch has been submitted upstream: https://github.com/smithlabcode/preseq/pull/15

From a937a54d56e8a6ff06237471e568154d1fa5f267 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>
Date: Thu, 25 Jun 2015 15:02:35 +0200
Subject: [PATCH] Link with libbam.a if provided via LIBBAM

---
 Makefile | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/Makefile b/Makefile
index e334f2f..de310e4 100644
--- a/preseq-master/Makefile
+++ b/preseq-master/Makefile
@@ -83,10 +83,17 @@ $(PROGS): $(addprefix $(SMITHLAB_CPP)/, \
 preseq: continued_fraction.o load_data_for_complexity.o moment_sequence.o
 
 ifdef SAMTOOLS_DIR
+ifdef LIBBAM
+LIBS += -pthread
+bam2mr preseq: $(addprefix $(SMITHLAB_CPP)/, SAM.o) \
+        $(LIBBAM)
+else
 bam2mr preseq: $(addprefix $(SMITHLAB_CPP)/, SAM.o) \
         $(addprefix $(SAMTOOLS_DIR)/, sam.o bam.o bam_import.o bam_pileup.o \
         faidx.o bam_aux.o kstring.o knetfile.o sam_header.o razf.o bgzf.o)
 endif
+endif # SAMTOOLS_DIR
+
 
 %.o: %.cpp %.hpp
 	$(CXX) $(CXXFLAGS) -c -o $@ $< $(INCLUDEARGS)