aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEfraim Flashner <efraim@flashner.co.il>2020-01-21 12:52:11 +0200
committerEfraim Flashner <efraim@flashner.co.il>2020-01-21 16:24:01 +0200
commitc40e3d0bade9cc594c9959ce75d6c747d2973617 (patch)
tree59beab56ca96ae3c8490e5fc3a7095746221e885
parent6dc67c2d11895f3516117a06b741690aed517784 (diff)
downloadguix-c40e3d0bade9cc594c9959ce75d6c747d2973617.tar.gz
guix-c40e3d0bade9cc594c9959ce75d6c747d2973617.zip
gnu: tokei: Unbundle some dependencies.
* gnu/packages/rust-apps.scm (tokei)[arguments]: Add custom phase to delete vendored sources and set environment variables. Remove rust-cc-1.0, rust-pkg-config-0.3, rust-toml-0.5 from cargo-inputs. [native-inputs]: Add libgit2, openssl, pkg-config, zlib.
-rw-r--r--gnu/packages/rust-apps.scm40
1 files changed, 33 insertions, 7 deletions
diff --git a/gnu/packages/rust-apps.scm b/gnu/packages/rust-apps.scm
index 1272d40d50..8ad3c0ced4 100644
--- a/gnu/packages/rust-apps.scm
+++ b/gnu/packages/rust-apps.scm
@@ -22,7 +22,11 @@
#:use-module (guix build-system cargo)
#:use-module (guix download)
#:use-module (guix packages)
- #:use-module (gnu packages crates-io))
+ #:use-module (gnu packages compression)
+ #:use-module (gnu packages crates-io)
+ #:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages tls)
+ #:use-module (gnu packages version-control))
(define-public ripgrep
(package
@@ -125,11 +129,7 @@ gitignore rules.")
("rust-serde-json" ,rust-serde-json-1.0)
("rust-serde-yaml" ,rust-serde-yaml-0.8)
("rust-term-size" ,rust-term-size-0.3)
- ("rust-toml" ,rust-toml-0.5)
- ;; Transitive build dependencies:
- ("rust-cc" ,rust-cc-1.0)
- ("rust-pkg-config" ,rust-pkg-config-0.3)
- ("rust-vcpkg" ,rust-vcpkg-0.2))
+ ("rust-toml" ,rust-toml-0.5))
#:cargo-development-inputs
(("rust-git2" ,rust-git2-0.11)
("rust-handlebars" ,rust-handlebars-2.0)
@@ -137,7 +137,33 @@ gitignore rules.")
("rust-lazy-static" ,rust-lazy-static-1.4)
("rust-regex" ,rust-regex-1.3)
("rust-serde-json" ,rust-serde-json-1.0)
- ("rust-tempfile" ,rust-tempfile-3.0))))
+ ("rust-tempfile" ,rust-tempfile-3.0))
+ #:phases
+ (modify-phases %standard-phases
+ (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")
+ (delete-file-recursively
+ (string-append "guix-vendor/rust-libgit2-sys-"
+ ,(package-version rust-libgit2-sys-0.10)
+ ".crate/libgit2"))
+ (delete-file-recursively
+ (string-append "guix-vendor/rust-libssh2-sys-"
+ ,(package-version rust-libssh2-sys-0.2)
+ ".crate/libssh2"))
+ (delete-file-recursively
+ (string-append "guix-vendor/rust-libz-sys-"
+ ,(package-version rust-libz-sys-1.0)
+ ".crate/src/zlib")))
+ #t)))))
+ (native-inputs
+ `(("libgit2" ,libgit2)
+ ("openssl" ,openssl)
+ ("pkg-config" ,pkg-config)
+ ("zlib" ,zlib)))
(home-page "https://tokei.rs")
(synopsis "Count code, quickly")
(description