From f1d136957d0d5634e60e5389a046a917169cdb9e Mon Sep 17 00:00:00 2001 From: David Craven Date: Thu, 29 Dec 2016 16:29:24 +0100 Subject: build-system: cargo: Handle Cargo.lock file not present. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * guix/build-system/cargo.scm (cargo-build): Add src output. (private-keywords): Add #:outputs. * guix/build/cargo-build-system.scm (configure): Use /share/rust-source when replacing inputs. (build, check): Don't do anything when there isn't a Cargo.lock file present. (install): Install sources to src output. When a Cargo.lock file is present use cargo install to install binaries to out. * guix/import/crate.scm (make-crate-sexp): Importer uses the src output for crate inputs by default. * guix/import/utils.scm (package-names->package-inputs, maybe-inputs, maybe-native-inputs): Take an optional output argument. * tests/crate.scm (crate->guix-package test): Update. Problem reported by Francisco Gómez García . --- guix/build-system/cargo.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'guix/build-system') diff --git a/guix/build-system/cargo.scm b/guix/build-system/cargo.scm index 8d835dda1d..ffc0afda3b 100644 --- a/guix/build-system/cargo.scm +++ b/guix/build-system/cargo.scm @@ -109,7 +109,7 @@ to NAME and VERSION." #:inputs inputs #:system system #:modules imported-modules - #:outputs outputs + #:outputs (cons "src" outputs) #:guile-for-build guile-for-build)) (define* (lower name @@ -121,7 +121,7 @@ to NAME and VERSION." "Return a bag for NAME." (define private-keywords - '(#:source #:target #:cargo #:rustc #:inputs #:native-inputs)) + '(#:source #:target #:cargo #:rustc #:inputs #:native-inputs #:outputs)) (and (not target) ;; TODO: support cross-compilation (bag -- cgit v1.2.3