Subject: [PATCH v4 09/11] import: cpan: Use 'maybe-upstream-inputs' procedure.

From: Herman Rimm <[email-masked]>
Date: Mon, 9 Dec 2024 20:58:13 +0100

* guix/import/cpan.scm (maybe-inputs): Delete procedure.
(cpan-module->sexp): Use 'maybe-upstream-inputs' procedure.

Change-Id: I4fa99da62d81f02c2998ad96f5ea81e27df071cd
---
 guix/import/cpan.scm | 25 ++++++++-----------------
 1 file changed, 8 insertions(+), 17 deletions(-)

diff --git a/guix/import/cpan.scm b/guix/import/cpan.scm
index 85e5e69098..e26cc85491 100644
--- a/guix/import/cpan.scm
+++ b/guix/import/cpan.scm
@@ -5,6 +5,7 @@
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <[email-masked]>
 ;;; Copyright © 2020, 2021, 2023 Ludovic Courtès <[email-masked]>
 ;;; Copyright © 2022 Hartmut Goebel <[email-masked]>
+;;; Copyright © 2024 Herman Rimm <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -37,8 +38,9 @@ (define-module (guix import cpan)
   #:use-module (guix utils)
   #:use-module (guix base32)
   #:use-module ((guix download) #:select (download-to-store url-fetch))
-  #:use-module ((guix import utils)
-                #:select (factorize-uri recursive-import))
+  #:use-module ((guix import utils) #:select (factorize-uri
+                                              maybe-upstream-inputs
+                                              recursive-import))
   #:use-module (guix import json)
   #:use-module (guix packages)
   #:use-module (guix upstream)
@@ -277,15 +279,6 @@ (define (cpan-module->sexp release)
   (define version (cpan-release-version release))
   (define source-url (cpan-source-url release))
 
-  (define (maybe-inputs input-type inputs)
-    (match inputs
-      (()
-       '())
-      ((inputs ...)
-       `((,input-type (list ,@(map (compose string->symbol
-                                            upstream-input-downstream-name)
-                                   inputs)))))))
-
   (let* ((tarball (with-store store
                    (download-to-store store source-url)))
          (inputs (cpan-module-inputs release))
@@ -300,12 +293,10 @@ (define (cpan-module->sexp release)
                           (base32
                             ,(bytevector->nix-base32-string (file-sha256 tarball))))))
               (build-system perl-build-system)
-              ,@(maybe-inputs 'native-inputs
-                              (filter (upstream-input-type-predicate 'native)
-                                      inputs))
-              ,@(maybe-inputs 'propagated-inputs
-                              (filter (upstream-input-type-predicate 'propagated)
-                                      inputs))
+              ,@(maybe-upstream-inputs 'native-inputs
+                  (filter (upstream-input-type-predicate 'native) inputs))
+              ,@(maybe-upstream-inputs 'propagated-inputs
+                  (filter (upstream-input-type-predicate 'propagated) inputs))
               (home-page ,(cpan-home name))
               (synopsis ,(cpan-release-abstract release))
               (description fill-in-yourself!)
-- 
2.45.2