guix-devel
[Top][All Lists]
Advanced

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

Re: [PATCH] Add vcflib.


From: Ricardo Wurmus
Subject: Re: [PATCH] Add vcflib.
Date: Tue, 26 Apr 2016 16:47:09 +0200

Roel Janssen <address@hidden> writes:

> 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, looks good, except for having the inputs before the arguments.
I tried to apply the patch to master but it failed.  Could you please
rebase it onto master and resend?

~~ Ricardo



reply via email to

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