gnu: Add rust-ndarray-0.12.
authorEfraim Flashner <efraim@flashner.co.il>
Tue, 15 Dec 2020 08:20:16 +0000 (10:20 +0200)
committerEfraim Flashner <efraim@flashner.co.il>
Tue, 15 Dec 2020 08:57:37 +0000 (10:57 +0200)
* gnu/packages/crates-io.scm (rust-ndarray-0.12): New variable.
* gnu/packages/patches/rust-ndarray-remove-blas-src-dep.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.

gnu/local.mk
gnu/packages/crates-io.scm
gnu/packages/patches/rust-ndarray-remove-blas-src-dep.patch [new file with mode: 0644]

index 0b4cf23..59ef362 100644 (file)
@@ -1592,6 +1592,7 @@ dist_patch_DATA =                                         \
   %D%/packages/patches/rust-1.45-linker-locale.patch           \
   %D%/packages/patches/rust-bootstrap-stage0-test.patch                \
   %D%/packages/patches/rust-coresimd-doctest.patch             \
+  %D%/packages/patches/rust-ndarray-remove-blas-src-dep.patch  \
   %D%/packages/patches/rust-nettle-disable-vendor.patch                 \
   %D%/packages/patches/rust-nettle-sys-disable-vendor.patch     \
   %D%/packages/patches/rust-reproducible-builds.patch           \
index 49f865c..385160d 100644 (file)
@@ -16874,6 +16874,39 @@ IO of Windows's named pipes.")
      "This package provides a crate to perform natural ordering for Rust.")
     (license license:expat)))
 
+(define-public rust-ndarray-0.12
+  (package
+    (name "rust-ndarray")
+    (version "0.12.1")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (crate-uri "ndarray" version))
+        (file-name (string-append name "-" version ".tar.gz"))
+        (sha256
+         (base32
+          "0a5rfwcbqnvbwi3nw5sfz6kf0flhmjxs64s0b4kxc6lhmyl81wvw"))
+        (patches (search-patches "rust-ndarray-remove-blas-src-dep.patch"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-itertools" ,rust-itertools-0.7)
+        ("rust-matrixmultiply" ,rust-matrixmultiply-0.1)
+        ("rust-num-complex" ,rust-num-complex-0.2)
+        ("rust-cblas-sys" ,rust-cblas-sys-0.1)
+        ("rust-rustc-serialize" ,rust-rustc-serialize-0.3)
+        ("rust-serde" ,rust-serde-1))
+       #:cargo-development-inputs
+       (("rust-defmac" ,rust-defmac-0.1)
+        ("rust-quickcheck" ,rust-quickcheck-0.7)
+        ("rust-rawpointer" ,rust-rawpointer-0.1))))
+    (home-page "https://github.com/rust-ndarray/ndarray")
+    (synopsis "N-dimensional container for general elements and for numerics")
+    (description "@code{ndarray} implements an n-dimensional container for
+general elements and for numerics.")
+    (license (list license:asl2.0
+                   license:expat))))
+
 (define-public rust-net2-0.2
   (package
     (name "rust-net2")
diff --git a/gnu/packages/patches/rust-ndarray-remove-blas-src-dep.patch b/gnu/packages/patches/rust-ndarray-remove-blas-src-dep.patch
new file mode 100644 (file)
index 0000000..7221fdd
--- /dev/null
@@ -0,0 +1,36 @@
+From ed09f3c91e915c3b436854a7936566edceb3e8de Mon Sep 17 00:00:00 2001
+From: Efraim Flashner <efraim@flashner.co.il>
+Date: Tue, 15 Dec 2020 10:09:45 +0200
+Subject: [PATCH] remove blas-src dependency
+
+---
+ Cargo.toml | 6 +-----
+ 1 file changed, 1 insertion(+), 5 deletions(-)
+
+diff --git a/Cargo.toml b/Cargo.toml
+index 1f3e1b6..36bc816 100644
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -37,10 +37,6 @@ debug = true
+ name = "ndarray"
+ test = true
+ bench = false
+-[dependencies.blas-src]
+-version = "0.2.0"
+-optional = true
+-default-features = false
+ [dependencies.cblas-sys]
+ version = "0.1.4"
+@@ -78,7 +74,7 @@ default-features = false
+ version = "0.1"
+ [features]
+-blas = ["cblas-sys", "blas-src"]
++blas = ["cblas-sys"]
+ docs = ["rustc-serialize", "serde-1"]
+ serde-1 = ["serde"]
+ test = ["test-blas-openblas-sys"]
+-- 
+2.29.2
+