From a13db7e2ab05ee3ab9a42dd6a101130b8896fee0 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sat, 25 Jan 2020 21:39:04 +0200 Subject: build: cargo-build-system: Allow patched crates. * guix/build/cargo-build-system.scm (crate-src?): Don't check for a gzipped tarball, just make sure it's not a directory. --- guix/build/cargo-build-system.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'guix/build') diff --git a/guix/build/cargo-build-system.scm b/guix/build/cargo-build-system.scm index 8a8d74ee1b..78c27a29e4 100644 --- a/guix/build/cargo-build-system.scm +++ b/guix/build/cargo-build-system.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2016 David Craven ;;; Copyright © 2017 Mathieu Othacehe ;;; Copyright © 2019 Ivan Petkov -;;; Copyright © 2019 Efraim Flashner +;;; Copyright © 2019, 2020 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -58,7 +58,7 @@ (define (crate-src? path) "Check if PATH refers to a crate source, namely a gzipped tarball with a Cargo.toml file present at its root." - (and (gzip-file? path) + (and (not (directory-exists? path)) ; not a tarball ;; First we print out all file names within the tarball to see if it ;; looks like the source of a crate. However, the tarball will include ;; an extra path component which we would like to ignore (since we're -- cgit v1.2.3 From 61b95c15cfb2c9b0d02cf09f93c0df76be0972b5 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 27 Jan 2020 09:17:32 +0200 Subject: build: cargo-build-system: Add pkg-config environment variables. * guix/build/cargo-build-system.scm (configure): Add environment variables to use system libgit2 and libssh2. * gnu/packages/crates-io.scm (rust-libgit2-sys-0.10, rust-libssh2-sys-0.2)[arguments]: Remove LIBGIT2 and LIBSSH2 environment variable settings. * gnu/packages/rust-apps.scm (tokei)[arguments]: Same. --- gnu/packages/crates-io.scm | 3 --- gnu/packages/rust-apps.scm | 4 +--- guix/build/cargo-build-system.scm | 2 ++ 3 files changed, 3 insertions(+), 6 deletions(-) (limited to 'guix/build') diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index 1099a25d87..a5f224f99e 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -5626,8 +5626,6 @@ values of all the exported APIs match the platform that libc is compiled for.") (lambda* (#:key inputs #:allow-other-keys) (let ((openssl (assoc-ref inputs "openssl"))) (setenv "OPENSSL_DIR" openssl)) - (setenv "LIBGIT2_SYS_USE_PKG_CONFIG" "1") - (setenv "LIBSSH2_SYS_USE_PKG_CONFIG" "1") #t))))) (native-inputs `(("libgit2" ,libgit2) @@ -5734,7 +5732,6 @@ functions and static variables these libraries contain.") (lambda* (#:key inputs #:allow-other-keys) (let ((openssl (assoc-ref inputs "openssl"))) (setenv "OPENSSL_DIR" openssl)) - (setenv "LIBSSH2_SYS_USE_PKG_CONFIG" "1") #t))))) (native-inputs `(("libssh2" ,libssh2) diff --git a/gnu/packages/rust-apps.scm b/gnu/packages/rust-apps.scm index d9a672f777..90bd146442 100644 --- a/gnu/packages/rust-apps.scm +++ b/gnu/packages/rust-apps.scm @@ -143,9 +143,7 @@ gitignore rules.") (add-after 'configure 'unvendor-libraries-from-crates (lambda* (#:key inputs #:allow-other-keys) (let ((openssl (assoc-ref inputs "openssl"))) - (setenv "OPENSSL_DIR" openssl) - (setenv "LIBGIT2_SYS_USE_PKG_CONFIG" "1") - (setenv "LIBSSH2_SYS_USE_PKG_CONFIG" "1")) + (setenv "OPENSSL_DIR" openssl)) #t))))) (native-inputs `(("libgit2" ,libgit2) diff --git a/guix/build/cargo-build-system.scm b/guix/build/cargo-build-system.scm index 78c27a29e4..0721989589 100644 --- a/guix/build/cargo-build-system.scm +++ b/guix/build/cargo-build-system.scm @@ -119,6 +119,8 @@ directory = '" port) ;; upgrading the compiler for example. (setenv "RUSTFLAGS" "--cap-lints allow") (setenv "CC" (string-append (assoc-ref inputs "gcc") "/bin/gcc")) + (setenv "LIBGIT2_SYS_USE_PKG_CONFIG" "1") + (setenv "LIBSSH2_SYS_USE_PKG_CONFIG" "1") ;; We don't use the Cargo.lock file to determine the package versions we use ;; during building, and in any case if one is not present it is created -- cgit v1.2.3