diff options
author | Robert Vollmert <rob@vllmrt.net> | 2019-07-15 21:41:55 +0200 |
---|---|---|
committer | Danny Milosavljevic <dannym@scratchpost.org> | 2019-07-16 09:54:12 +0200 |
commit | 4fde0030d42068b347d7af58ed3b746c5ea2f877 (patch) | |
tree | 6876137485bf223255d9b07446aa629f08b54702 | |
parent | 848862f0297dfb50197638a0828ba1e714a07074 (diff) | |
download | guix-4fde0030d42068b347d7af58ed3b746c5ea2f877.tar guix-4fde0030d42068b347d7af58ed3b746c5ea2f877.tar.gz |
build/cargo-build-system: Use bundled json instead of guile-json.
* guix/build/cargo-build-system.scm: Use (gnu build json) instead
of (json parser).
* guix/build-system/cargo.scm: Import (gnu build json) instead of
(json parser).
Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
-rw-r--r-- | guix/build-system/cargo.scm | 2 | ||||
-rw-r--r-- | guix/build/cargo-build-system.scm | 8 |
2 files changed, 5 insertions, 5 deletions
diff --git a/guix/build-system/cargo.scm b/guix/build-system/cargo.scm index fa211d456d..10a1bac844 100644 --- a/guix/build-system/cargo.scm +++ b/guix/build-system/cargo.scm @@ -61,7 +61,7 @@ to NAME and VERSION." (define %cargo-build-system-modules ;; Build-side modules imported by default. `((guix build cargo-build-system) - (json parser) + (guix build json) ,@%cargo-utils-modules)) (define* (cargo-build store name inputs diff --git a/guix/build/cargo-build-system.scm b/guix/build/cargo-build-system.scm index e4e62dd838..f38de16cf7 100644 --- a/guix/build/cargo-build-system.scm +++ b/guix/build/cargo-build-system.scm @@ -20,6 +20,7 @@ (define-module (guix build cargo-build-system) #:use-module ((guix build gnu-build-system) #:prefix gnu:) + #:use-module (guix build json) #:use-module (guix build utils) #:use-module (guix build cargo-utils) #:use-module (ice-9 popen) @@ -27,7 +28,6 @@ #:use-module (ice-9 ftw) #:use-module (ice-9 format) #:use-module (ice-9 match) - #:use-module (json parser) #:use-module (srfi srfi-1) #:use-module (srfi srfi-26) #:export (%standard-phases @@ -42,15 +42,15 @@ (define (manifest-targets) "Extract all targets from the Cargo.toml manifest" (let* ((port (open-input-pipe "cargo read-manifest")) - (data (json->scm port)) - (targets (hash-ref data "targets" '()))) + (data (read-json port)) + (targets (or (assoc-ref data "targets") '()))) (close-port port) targets)) (define (has-executable-target?) "Check if the current cargo project declares any binary targets." (let* ((bin? (lambda (kind) (string=? kind "bin"))) - (get-kinds (lambda (dep) (hash-ref dep "kind"))) + (get-kinds (lambda (dep) (assoc-ref dep "kind"))) (bin-dep? (lambda (dep) (find bin? (get-kinds dep))))) (find bin-dep? (manifest-targets)))) |