mirror of
https://codeberg.org/guix/guix.git
synced 2025-10-02 02:15:12 +00:00
guix build: Add '--with-git-url'.
* guix/scripts/build.scm (%not-equal): New variable. (evaluate-git-replacement-specs): Use it instead of local variable 'not-equal'. (transform-package-source-git-url): New procedure. (%transformations): Add 'with-git-url'. (%transformation-options, show-transformation-options-help): Add '--with-git-url'. * tests/scripts-build.scm ("options->transformation, with-git-url"): New test.
This commit is contained in:
parent
55da450a1f
commit
880916ac52
3 changed files with 87 additions and 20 deletions
|
@ -1,5 +1,5 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2016, 2017, 2019 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -23,6 +23,7 @@
|
|||
#:use-module (guix scripts build)
|
||||
#:use-module (guix ui)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (guix git)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages busybox)
|
||||
|
@ -164,4 +165,25 @@
|
|||
((("x" dep))
|
||||
(eq? (package-replacement dep) findutils)))))))))))
|
||||
|
||||
(test-equal "options->transformation, with-git-url"
|
||||
(let ((source (git-checkout (url "https://example.org")
|
||||
(recursive? #t))))
|
||||
(list source source))
|
||||
(let* ((p (dummy-package "guix.scm"
|
||||
(inputs `(("foo" ,grep)
|
||||
("bar" ,(dummy-package "chbouib"
|
||||
(native-inputs `(("x" ,grep)))))))))
|
||||
(t (options->transformation '((with-git-url . "grep=https://example.org")))))
|
||||
(with-store store
|
||||
(let ((new (t store p)))
|
||||
(and (not (eq? new p))
|
||||
(match (package-inputs new)
|
||||
((("foo" dep1) ("bar" dep2))
|
||||
(and (string=? (package-full-name dep1)
|
||||
(package-full-name grep))
|
||||
(string=? (package-name dep2) "chbouib")
|
||||
(match (package-native-inputs dep2)
|
||||
((("x" dep3))
|
||||
(map package-source (list dep1 dep3))))))))))))
|
||||
|
||||
(test-end)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue