guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

83/85: gnu: Add rust-nettle-sys-2.


From: guix-commits
Subject: 83/85: gnu: Add rust-nettle-sys-2.
Date: Tue, 5 May 2020 07:56:40 -0400 (EDT)

htgoebel pushed a commit to branch master
in repository guix.

commit 5effc5bfe1f9bbe94be9ac8bd40e2f2875b08720
Author: Hartmut Goebel <address@hidden>
AuthorDate: Thu Apr 23 23:10:51 2020 +0200

    gnu: Add rust-nettle-sys-2.
    
    * gnu/packages/crates-io.scm (rust-nettle-sys-2): New variable.
    * gnu/packages/patches/rust-nettle-sys-disable-vendor.patch: New file.
    * gnu/local.mk: Add it.
---
 gnu/local.mk                                       |  1 +
 gnu/packages/crates-io.scm                         | 31 ++++++++++++++
 .../patches/rust-nettle-sys-disable-vendor.patch   | 48 ++++++++++++++++++++++
 3 files changed, 80 insertions(+)

diff --git a/gnu/local.mk b/gnu/local.mk
index 0797efb..3d9f418 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1433,6 +1433,7 @@ dist_patch_DATA =                                         
\
   %D%/packages/patches/rust-1.25-accept-more-detailed-gdb-lines.patch \
   %D%/packages/patches/rust-bootstrap-stage0-test.patch                \
   %D%/packages/patches/rust-coresimd-doctest.patch             \
+  %D%/packages/patches/rust-nettle-sys-disable-vendor.patch     \
   %D%/packages/patches/rust-reproducible-builds.patch           \
   %D%/packages/patches/rust-openssl-sys-no-vendor.patch        \
   %D%/packages/patches/rxvt-unicode-escape-sequences.patch     \
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index a0be357..5980282 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -38,6 +38,7 @@
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages jemalloc)
   #:use-module (gnu packages llvm)
+  #:use-module (gnu packages nettle)
   #:use-module (gnu packages pcre)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
@@ -13184,6 +13185,36 @@ types as proposed in RFC 1158.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-nettle-sys-2
+  (package
+    (name "rust-nettle-sys")
+    (version "2.0.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "nettle-sys" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1yq1w6dlcmg89x529i7s20j29afdhgim7qnsa7978fszzwrr6qmq"))
+       (patches (search-patches "rust-nettle-sys-disable-vendor.patch"))))
+    (build-system cargo-build-system)
+    (native-inputs
+     `(("clang" ,clang)
+       ("pkg-config" ,pkg-config)))
+    (inputs
+     `(("nettle", nettle)))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-development-inputs
+       (("rust-bindgen" ,rust-bindgen-0.51)
+        ("rust-pkg-config" ,rust-pkg-config-0.3))))
+    (home-page "https://gitlab.com/sequoia-pgp/nettle-sys";)
+    (synopsis "Low-level Rust bindings for the Nettle cryptographic library")
+    (description "This package provides low-level Rust bindings for the Nettle
+cryptographic library.")
+    (license ;; licensed under either of these, at your option
+     (list license:lgpl3 license:gpl2 license:gpl3))))
+
 (define-public rust-new-debug-unreachable-1.0
   (package
     (name "rust-new-debug-unreachable")
diff --git a/gnu/packages/patches/rust-nettle-sys-disable-vendor.patch 
b/gnu/packages/patches/rust-nettle-sys-disable-vendor.patch
new file mode 100644
index 0000000..ae5ef5e
--- /dev/null
+++ b/gnu/packages/patches/rust-nettle-sys-disable-vendor.patch
@@ -0,0 +1,48 @@
+Subject: nettle-sys: clear out "vendored" feature cruft from build.rs
+From: Daniel Kahn Gillmor's avatarDaniel Kahn Gillmor <address@hidden>
+
+https://salsa.debian.org/rust-team/debcargo-conf/-/commit/0c71150ad26bb66a8396dcdab055181af232ddc5
+https://sources.debian.org/src/rust-nettle-sys/2.0.4-3/debian/patches/disable-vendor.diff/
+--- a/Cargo.toml       2019-10-23 13:08:07.000000000 -0400
++++ b/Cargo.toml       2019-10-23 14:08:46.644064014 -0400
+@@ -29,12 +29,9 @@
+ version = "0.51.1"
+ default-features = false
+ 
+-[build-dependencies.nettle-src]
+-version = "3.5.1-0"
+-optional = true
+-
+ [build-dependencies.pkg-config]
+ version = "0.3"
+ 
+ [features]
+ vendored = ["nettle-src"]
++nettle-src = []
+diff --git a/build.rs b/build.rs
+index 44f7af3..ede4b2f 100644
+--- a/build.rs
++++ b/build.rs
+@@ -1,7 +1,5 @@
+ extern crate bindgen;
+ extern crate pkg_config;
+-#[cfg(feature = "vendored")]
+-extern crate nettle_src;
+ 
+ use std::env;
+ use std::fs;
+@@ -36,14 +34,6 @@ fn main() {
+     println!("cargo:rerun-if-env-changed=NETTLE_STATIC");
+     println!("cargo:rerun-if-env-changed={}", NETTLE_PREGENERATED_BINDINGS);
+ 
+-    #[cfg(feature = "vendored")]
+-    {
+-        let artifacts = nettle_src::Build::new().build();
+-        println!("cargo:vendored=1");
+-        env::set_var("PKG_CONFIG_PATH",
+-                     artifacts.lib_dir().join("pkgconfig"));
+-    }
+-
+     let nettle = pkg_config::probe_library("nettle hogweed").unwrap();
+ 
+     let mode = match env::var_os("NETTLE_STATIC") {



reply via email to

[Prev in Thread] Current Thread [Next in Thread]