guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] Add vcflib.


From: Roel Janssen
Subject: Re: [PATCH] Add vcflib.
Date: Fri, 22 Apr 2016 09:24:57 +0200
User-agent: mu4e 0.9.17; emacs 25.1.50.1

Attachment: 0001-gnu-Add-tabixpp.patch
Description: Text Data

Hello Ricardo,

Thank you for your review.

Ricardo Wurmus writes:

> Roel Janssen <address@hidden> writes:
>> From dfc9b373bbce0f36882407cec47440a0a44c78d1 Mon Sep 17 00:00:00 2001
>> From: Roel Janssen <address@hidden>
>> 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 via email to

[Prev in Thread] Current Thread [Next in Thread]