unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Roel Janssen <roel@gnu.org>
To: Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>
Cc: guix-devel@gnu.org
Subject: Re: [PATCH] Add vcflib.
Date: Fri, 22 Apr 2016 09:24:57 +0200	[thread overview]
Message-ID: <878u06hzqu.fsf@gnu.org> (raw)
In-Reply-To: <idjwpnsa1nm.fsf@bimsb-sys02.mdc-berlin.net>

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: 0001-gnu-Add-tabixpp.patch --]
[-- Type: text/x-patch, Size: 2281 bytes --]

From 58ecd585411a8981f7cefdb6928e199ef77de476 Mon Sep 17 00:00:00 2001
From: Roel Janssen <roel@gnu.org>
Date: Fri, 22 Apr 2016 09:15:52 +0200
Subject: [PATCH] gnu: Add tabixpp.

* gnu/packages/bioinformatics.scm (tabixpp): New variable.
---
 gnu/packages/bioinformatics.scm | 34 ++++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)

diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index c49b0a9..d3895fd 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -5074,3 +5074,37 @@ negative binomial distribution to model the read counts among the samples in
 the same group, and look for consistent differences between ChIP and control
 group or two ChIP groups run under different conditions.")
     (license license:gpl3+)))
+
+(define-public tabixpp
+  (package
+   (name "tabixpp")
+   (version "1.0.0")
+   (source (origin
+     (method url-fetch)
+     (uri (string-append "https://github.com/ekg/tabixpp/archive/v"
+                         version ".tar.gz"))
+     (file-name (string-append name "-" version ".tar.gz"))
+     (sha256
+      (base32 "1s0lgks7qlvlhvcjhi2wm18nnza1bwcnic44ij7z8wfg88h4ivwn"))))
+   (build-system gnu-build-system)
+   (inputs
+    `(("htslib" ,htslib)
+      ("zlib" ,zlib)))
+   (arguments
+    `(#:tests? #f ; There are no tests to run.
+      #:make-flags (let ((htslib-ref (assoc-ref %build-inputs "htslib")))
+                    `("HTS_HEADERS=" ; Do not check for local htslib headers.
+                      ,(string-append "HTS_LIB=" htslib-ref "/lib/libhts.a")
+                      ,(string-append "LIBPATH=-L. -L" htslib-ref "/include")))
+      #:phases
+      (modify-phases %standard-phases
+        (delete 'configure) ; There is no configure phase.
+        (replace 'install
+          (lambda* (#:key outputs #:allow-other-keys)
+            (let ((bin (string-append (assoc-ref outputs "out") "/bin")))
+              (install-file "tabix++" bin)))))))
+   (home-page "https://github.com/ekg/tabixpp")
+   (synopsis "C++ wrapper around Tabix project")
+   (description "This is a C++ wrapper around the Tabix project which abstracts
+some of the details of opening and jumping in Tabix-indexed files.")
+   (license license:expat)))
-- 
2.5.5


[-- Attachment #2: Type: text/plain, Size: 3405 bytes --]

Hello Ricardo,

Thank you for your review.

Ricardo Wurmus writes:

> Roel Janssen <roel@gnu.org> writes:
>> From dfc9b373bbce0f36882407cec47440a0a44c78d1 Mon Sep 17 00:00:00 2001
>> From: Roel Janssen <roel@gnu.org>
>> Date: Tue, 22 Mar 2016 14:59:05 +0100
>> Subject: [PATCH 1/8] gnu: Add tabixpp.
>
>> * gnu/packages/bioinformatics.scm (tabixpp): New variable.
>> ---
>>  gnu/packages/bioinformatics.scm | 39 +++++++++++++++++++++++++++++++++++++++
>>  1 file changed, 39 insertions(+)
>
>> diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
>> index 281bd1f..6792be9 100644
>> --- a/gnu/packages/bioinformatics.scm
>> +++ b/gnu/packages/bioinformatics.scm
>> @@ -4791,3 +4791,42 @@ negative binomial distribution to model the read counts among the samples in
>>  the same group, and look for consistent differences between ChIP and control
>>  group or two ChIP groups run under different conditions.")
>>      (license license:gpl3+)))
>> +
>> +(define-public tabixpp
>> +  (package
>> +   (name "tabixpp")
>> +   (version "1.0.0")
>> +   (source (origin
>> +     (method url-fetch)
>> +     (uri (string-append "https://github.com/ekg/tabixpp/archive/v"
>> +                         version ".tar.gz"))
>> +     (file-name (string-append name "-" version ".tar.gz"))
>> +     (sha256
>> +      (base32 "1s0lgks7qlvlhvcjhi2wm18nnza1bwcnic44ij7z8wfg88h4ivwn"))))
>> +   (build-system gnu-build-system)
>> +   (inputs
>> +    `(("htslib" ,htslib)
>> +      ("zlib" ,zlib)))
>> +   (arguments
>> +    `(#:tests? #f ; There are no tests to run.
>> +      #:phases
>> +      (modify-phases %standard-phases
>> +        (delete 'configure) ; There is no configure phase.
>> +        ;; Modify the build phase to use the separately packaged htslib.
>> +        (replace 'build
>> +          (lambda* (#:key inputs #:allow-other-keys)
>> +            (let ((htslib-ref (assoc-ref inputs "htslib")))
>> +              (zero?
>> +               (system* "make"
>> +                 (string-append "HTS_LIB=" htslib-ref "/lib/libhts.a")
>> +                 "HTS_HEADERS=" ; Do not check for local htslib headers.
>> +                 (string-append "LIBPATH=-L. -L" htslib-ref
>> "/include"))))))
>
> Is this really necessary or could you use make-flags instead?  That
> would be the preferred way of doing this rather than replacing the build
> phase.

So I had tried, but my Scheme skills failed there.
In the new patch I used make-flags instead.  I hope the (let ...) is
appropriate there.  I like it because it allows me to stay within 80
columns, and avoid repetitive (assoc-ref %build-inputs "htslib").

>> +        (replace 'install
>> +          (lambda* (#:key outputs #:allow-other-keys)
>> +            (let ((bin (string-append (assoc-ref outputs "out") "/bin")))
>> +              (install-file "tabix++" bin)))))))
>> +   (home-page "https://github.com/ekg/tabixpp")
>> +   (synopsis "C++ wrapper around tabix project")
>
> “tabix” or “Tabix”?

Tabix I suppose.

>> +   (description "This is a C++ wrapper around the Tabix project which abstracts
>> +some of the details of opening and jumping in tabix-indexed files.")
>> +   (license license:expat)))
>
> “tabix” or “Tabix”?

Right.  I changed both occurrences to “Tabix”.

> Could you please send an updated patch?

Here it is.


Thanks again for your valuable time.

Kind regards,
Roel Janssen

  reply	other threads:[~2016-04-22  7:25 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-03-22 15:24 [PATCH] Add vcflib Roel Janssen
2016-03-23 13:49 ` Ricardo Wurmus
2016-04-20 12:39   ` Roel Janssen
2016-04-20 12:46 ` Ricardo Wurmus
2016-04-22  7:24   ` Roel Janssen [this message]
2016-04-26 14:47     ` Ricardo Wurmus
2016-04-26 17:31       ` Roel Janssen
2017-01-16 21:59         ` Ricardo Wurmus
2016-04-20 12:49 ` Ricardo Wurmus
2016-04-26 21:50   ` Roel Janssen
2017-01-16 22:04     ` Ricardo Wurmus
2016-04-20 12:53 ` Ricardo Wurmus
2016-04-22  7:40   ` Roel Janssen
2016-04-26 14:47     ` Ricardo Wurmus
2016-04-26 17:37       ` Roel Janssen
2017-01-16 21:56         ` Ricardo Wurmus
2016-04-20 12:56 ` Ricardo Wurmus
2016-04-20 12:58 ` Ricardo Wurmus
2016-04-22  8:04   ` Roel Janssen
2016-04-22 11:27     ` Ricardo Wurmus
2016-04-25  9:20       ` Roel Janssen
2016-04-26 14:42         ` Ricardo Wurmus
2016-04-20 13:06 ` Ricardo Wurmus
2016-04-20 13:08 ` Ricardo Wurmus
2016-04-26 17:50   ` Roel Janssen
2016-04-26 17:51     ` Roel Janssen
2017-01-16 21:54       ` Ricardo Wurmus
2017-01-17 21:57         ` Roel Janssen
2017-01-18  8:24           ` Ricardo Wurmus
2016-04-20 13:18 ` Ricardo Wurmus

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=878u06hzqu.fsf@gnu.org \
    --to=roel@gnu.org \
    --cc=guix-devel@gnu.org \
    --cc=ricardo.wurmus@mdc-berlin.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).