summary refs log tree commit diff
path: root/gnu/packages/rust-apps.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/rust-apps.scm')
-rw-r--r--gnu/packages/rust-apps.scm51
1 files changed, 50 insertions, 1 deletions
diff --git a/gnu/packages/rust-apps.scm b/gnu/packages/rust-apps.scm
index af51c0fcfc..5d0521a216 100644
--- a/gnu/packages/rust-apps.scm
+++ b/gnu/packages/rust-apps.scm
@@ -3,6 +3,7 @@
 ;;; Copyright © 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
 ;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
+;;; Copyright © 2020 Leo Famulari <leo@famulari.name>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -290,7 +291,7 @@ gitignore rules.")
         ("serde" ,rust-serde-1.0)
         ("serde-json" ,rust-serde-json-1.0)
         ("syn" ,rust-syn-1.0)
-        ("tempfile" ,rust-tempfile-3.0)
+        ("tempfile" ,rust-tempfile-3.1)
         ("toml" ,rust-toml-0.5))))
     (home-page "https://github.com/eqrion/cbindgen/")
     (synopsis "Tool for generating C bindings to Rust code")
@@ -298,6 +299,21 @@ gitignore rules.")
      "This package provides a tool for generating C/C++ bindings to Rust code.")
     (license license:mpl2.0)))
 
+(define-public rust-cbindgen-0.12
+  (package
+    (inherit rust-cbindgen)
+    (name "rust-cbindgen")
+    (version "0.12.2")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (crate-uri "cbindgen" version))
+        (file-name
+         (string-append name "-" version ".tar.gz"))
+        (sha256
+         (base32
+          "13jzbmjz1bmmfr0i80hw6ar484mgabx3hbpb2ynhk0ddqi0yr58m"))))))
+
 (define-public tokei
   (package
     (name "tokei")
@@ -358,3 +374,36 @@ gitignore rules.")
 show number of files, total lines within those files and code, comments, and
 blanks grouped by language.")
     (license (list license:expat license:asl2.0))))
+
+(define-public rust-cargo-c
+  (package
+    (name "rust-cargo-c")
+    (version "0.5.2")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (crate-uri "cargo-c" version))
+        (file-name
+         (string-append name "-" version ".tar.gz"))
+        (sha256
+         (base32
+          "1is72jm0r73pqx2g3h1n6lvrcirwd91mmajsmb3jjg4jnayfkp0w"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-cbindgen" ,rust-cbindgen-0.12)
+        ("rust-pretty-env-logger" ,rust-pretty-env-logger-0.3)
+        ("rust-structopt" ,rust-structopt-0.3)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-toml" ,rust-toml-0.5)
+        ("rust-cargo-metadata" ,rust-cargo-metadata-0.9)
+        ("rust-serde" ,rust-serde-1.0)
+        ("rust-serde-derive" ,rust-serde-derive-1.0)
+        ("rust-regex" ,rust-regex-1.3))))
+    (home-page "https://github.com/lu-zero/cargo-c")
+    (synopsis "Build and install C-compatible libraries")
+    (description
+     "This package produces and installs a correct pkg-config file, a static
+library and a dynamic library, and a C header to be used by any C (and
+C-compatible) software.")
+    (license license:expat)))