Subject: [bug#64486] [PATCH 22/22] gnu: licensecheck: Use G-Expressions. Refactor phases.

From: Bruno Victal <[email-masked]>
Date: Thu, 6 Jul 2023 07:42:53 +0100

* gnu/packages/license.scm (licensecheck)[arguments]: Use G-Expressions.
Drop trailing #t.
<#:phases>: Rename 'wrap-program to 'wrap-licensecheck. Add 'check-wrap.
---
 gnu/packages/license.scm | 29 ++++++++++++++++++-----------
 1 file changed, 18 insertions(+), 11 deletions(-)

diff --git a/gnu/packages/license.scm b/gnu/packages/license.scm
index 025e1aa3bb..0760b6d7d2 100644
--- a/gnu/packages/license.scm
+++ b/gnu/packages/license.scm
@@ -35,6 +35,7 @@ (define-module (gnu packages license)
   #:use-module (guix build-system python)
   #:use-module (guix build-system pyproject)
   #:use-module (guix download)
+  #:use-module (guix gexp)
   #:use-module (guix git-download)
   #:use-module (guix licenses)
   #:use-module (guix packages))
@@ -181,17 +182,23 @@ (define-public licensecheck
            perl-string-escape
            perl-string-license))
     (arguments
-     `(#:phases
-       (modify-phases %standard-phases
-         (add-after 'install 'wrap-program
-           (lambda* (#:key inputs outputs #:allow-other-keys)
-             (let* ((out (assoc-ref outputs "out"))
-                    (perllib (string-append out "/lib/perl5/site_perl/"
-                                            ,(package-version perl))))
-               (wrap-program (string-append out "/bin/licensecheck")
-                 `("PERL5LIB" ":"
-                   prefix (,(string-append perllib ":" (getenv "PERL5LIB")))))
-               #t))))))
+     (list
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'wrap 'wrap-licensecheck
+            (lambda _
+              (let ((licensecheck (string-append #$output "/bin/licensecheck"))
+                    (perl5lib (string-append #$output "/lib/perl5/site_perl/"
+                                             #$(package-version perl))))
+                (wrap-program licensecheck
+                  `("PERL5LIB" ":" prefix
+                    ,(list perl5lib (getenv "PERL5LIB")))))))
+          (add-after 'wrap-program 'check-wrap
+            (lambda* (#:key tests? #:allow-other-keys)
+              (when tests?
+                (unsetenv "PERL5LIB")
+                (invoke/quiet (string-append #$output "/bin/licensecheck")
+                              "--version")))))))
     (home-page "https://metacpan.org/release/App-Licensecheck")
     (synopsis "License checker for source files")
     (description "Licensecheck attempts to determine the license that applies
-- 
2.40.1