guix-commits
[Top][All Lists]
Advanced

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

02/02: gnu: bioperl-minimal: Avoid top-level cross-module references.


From: guix-commits
Subject: 02/02: gnu: bioperl-minimal: Avoid top-level cross-module references.
Date: Thu, 1 Jul 2021 11:15:09 -0400 (EDT)

civodul pushed a commit to branch master
in repository guix.

commit ebb8e44a4a08b6169801a96e1cd41315628e278d
Author: Ludovic Courtès <ludo@gnu.org>
AuthorDate: Thu Jul 1 17:11:16 2021 +0200

    gnu: bioperl-minimal: Avoid top-level cross-module references.
    
    This could lead to circular reference breakage.
    
    * gnu/packages/bioinformatics.scm (bioperl-minimal): Move top-level
    references to perl-* variables and their transitive inputs to
    'arguments' and 'inputs'.
---
 gnu/packages/bioinformatics.scm | 109 ++++++++++++++++++++--------------------
 1 file changed, 55 insertions(+), 54 deletions(-)

diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index e5aa9eb..df012c0 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -1147,62 +1147,63 @@ alignments and perform the following operations:
     (license license:expat)))
 
 (define-public bioperl-minimal
-  (let* ((inputs `(("perl-module-build" ,perl-module-build)
-                   ("perl-data-stag" ,perl-data-stag)
-                   ("perl-libwww" ,perl-libwww)
-                   ("perl-uri" ,perl-uri)))
-         (transitive-inputs
-          (map (compose package-name cadr)
-               (delete-duplicates
-                (concatenate
-                 (map (compose package-transitive-target-inputs cadr) 
inputs))))))
-    (package
-      (name "bioperl-minimal")
-      (version "1.7.0")
-      (source
-       (origin
-         (method git-fetch)
-         (uri (git-reference
-                (url "https://github.com/bioperl/bioperl-live";)
-                (commit (string-append "release-"
-                                       (string-map (lambda (c)
-                                                     (if (char=? c #\.)
-                                                         #\- c)) version)))))
-         (file-name (git-file-name name version))
-         (sha256
-          (base32
-           "0wl8yvzcls59pwwk6m8ahy87pwg6nnibzy5cldbvmcwg2x2w7783"))))
-      (build-system perl-build-system)
-      (arguments
+  (package
+    (name "bioperl-minimal")
+    (version "1.7.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/bioperl/bioperl-live";)
+             (commit (string-append "release-"
+                                    (string-map (lambda (c)
+                                                  (if (char=? c #\.)
+                                                      #\- c)) version)))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "0wl8yvzcls59pwwk6m8ahy87pwg6nnibzy5cldbvmcwg2x2w7783"))))
+    (build-system perl-build-system)
+    (arguments
+     (let ((transitive-inputs
+            (map (compose package-name cadr)
+                 (delete-duplicates
+                  (concatenate
+                   (map (compose package-transitive-target-inputs cadr)
+                        (package-inputs this-package)))))))
        `(#:phases
          (modify-phases %standard-phases
            (add-after
-            'install 'wrap-programs
-            (lambda* (#:key outputs #:allow-other-keys)
-              ;; Make sure all executables in "bin" find the required Perl
-              ;; modules at runtime.  As the PERL5LIB variable contains also
-              ;; the paths of native inputs, we pick the transitive target
-              ;; inputs from %build-inputs.
-              (let* ((out  (assoc-ref outputs "out"))
-                     (bin  (string-append out "/bin/"))
-                     (path (string-join
-                            (cons (string-append out "/lib/perl5/site_perl")
-                                  (map (lambda (name)
-                                         (assoc-ref %build-inputs name))
-                                       ',transitive-inputs))
-                            ":")))
-                (for-each (lambda (file)
-                            (wrap-program file
-                              `("PERL5LIB" ":" prefix (,path))))
-                          (find-files bin "\\.pl$"))
-                #t))))))
-      (inputs inputs)
-      (native-inputs
-       `(("perl-test-most" ,perl-test-most)))
-      (home-page "https://metacpan.org/release/BioPerl";)
-      (synopsis "Bioinformatics toolkit")
-      (description
-       "BioPerl is the product of a community effort to produce Perl code which
+               'install 'wrap-programs
+             (lambda* (#:key outputs #:allow-other-keys)
+               ;; Make sure all executables in "bin" find the required Perl
+               ;; modules at runtime.  As the PERL5LIB variable contains also
+               ;; the paths of native inputs, we pick the transitive target
+               ;; inputs from %build-inputs.
+               (let* ((out  (assoc-ref outputs "out"))
+                      (bin  (string-append out "/bin/"))
+                      (path (string-join
+                             (cons (string-append out "/lib/perl5/site_perl")
+                                   (map (lambda (name)
+                                          (assoc-ref %build-inputs name))
+                                        ',transitive-inputs))
+                             ":")))
+                 (for-each (lambda (file)
+                             (wrap-program file
+                               `("PERL5LIB" ":" prefix (,path))))
+                           (find-files bin "\\.pl$"))
+                 #t)))))))
+    (inputs
+     `(("perl-module-build" ,perl-module-build)
+       ("perl-data-stag" ,perl-data-stag)
+       ("perl-libwww" ,perl-libwww)
+       ("perl-uri" ,perl-uri)))
+    (native-inputs
+     `(("perl-test-most" ,perl-test-most)))
+    (home-page "https://metacpan.org/release/BioPerl";)
+    (synopsis "Bioinformatics toolkit")
+    (description
+     "BioPerl is the product of a community effort to produce Perl code which
 is useful in biology.  Examples include Sequence objects, Alignment objects
 and database searching objects.  These objects not only do what they are
 advertised to do in the documentation, but they also interact - Alignment
@@ -1210,7 +1211,7 @@ objects are made from the Sequence objects, Sequence 
objects have access to
 Annotation and SeqFeature objects and databases, Blast objects can be
 converted to Alignment objects, and so on.  This means that the objects
 provide a coordinated and extensible framework to do computational biology.")
-      (license license:perl-license))))
+    (license license:perl-license)))
 
 (define-public perl-bio-db-hts
   (package



reply via email to

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