import: opam: Emit new-style package inputs.

* guix/import/opam.scm (opam->guix-package): Wrap INPUTS and
NATIVE-INPUTS in 'list' instead of 'quasiquote'.
(dependency-list->inputs): Return a list of symbols.
* tests/opam.scm ("opam->guix-package"): Adjust accordingly.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
Sarah Morgensen 2021-07-14 18:40:36 -07:00 committed by Ludovic Courtès
parent fa7db21f59
commit 3d5a36c457
No known key found for this signature in database
GPG Key ID: 090B11993D9AEBB5
2 changed files with 8 additions and 13 deletions

View File

@ -2,6 +2,7 @@
;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2020 Martin Becze <mjbecze@riseup.net>
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
;;;
;;; This file is part of GNU Guix.
;;;
@ -269,10 +270,8 @@ path to the repository."
(map dependency->native-input depends)))
(define (dependency-list->inputs lst)
(map
(lambda (dependency)
(list dependency (list 'unquote (string->symbol dependency))))
(ocaml-names->guix-names lst)))
(map string->symbol
(ocaml-names->guix-names lst)))
(define* (opam-fetch name #:optional (repository (get-opam-repository)))
(and-let* ((repository repository)
@ -325,10 +324,10 @@ or #f on failure."
'ocaml-build-system))
,@(if (null? inputs)
'()
`((propagated-inputs ,(list 'quasiquote inputs))))
`((propagated-inputs (list ,@inputs))))
,@(if (null? native-inputs)
'()
`((native-inputs ,(list 'quasiquote native-inputs))))
`((native-inputs (list ,@native-inputs))))
,@(if (equal? name (guix-name->opam-name (ocaml-name->guix-name name)))
'()
`((properties

View File

@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
;;;
;;; This file is part of GNU Guix.
;;;
@ -101,13 +102,8 @@ url {
('base32
(? string? hash)))))
('build-system 'ocaml-build-system)
('propagated-inputs
('quasiquote
(("ocaml-zarith" ('unquote 'ocaml-zarith)))))
('native-inputs
('quasiquote
(("ocaml-alcotest" ('unquote 'ocaml-alcotest))
("ocamlbuild" ('unquote 'ocamlbuild)))))
('propagated-inputs ('list 'ocaml-zarith))
('native-inputs ('list 'ocaml-alcotest 'ocamlbuild))
('home-page "https://example.org/")
('synopsis "Some example package")
('description "This package is just an example.")