guix-commits
[Top][All Lists]
Advanced

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

13/109: gnu: rust-rust-hawktracer-sys-0.4: Generate bindings during buil


From: guix-commits
Subject: 13/109: gnu: rust-rust-hawktracer-sys-0.4: Generate bindings during build.
Date: Wed, 27 Dec 2023 10:10:42 -0500 (EST)

efraim pushed a commit to branch rust-team
in repository guix.

commit d754b217fe8931ead39b247c70e7123514725874
Author: Efraim Flashner <efraim@flashner.co.il>
AuthorDate: Wed Dec 27 09:45:00 2023 +0200

    gnu: rust-rust-hawktracer-sys-0.4: Generate bindings during build.
    
    * gnu/packages/crates-io.scm (rust-rust-hawktracer-sys-0.4)[source]: Add
    snippet to use a newer version of rust-bindgen, remove pre-generated
    bindings and fix building bundled library.
    [arguments]: Don't skip the build.
    [cargo-inputs]: Replace rust-bindgen-0.37 with 0.56.
    [native-inputs]: Add clang, cmake-minimal.
    
    Change-Id: I01dd8b5b13aa449977f53296fc843153e409a1ea
---
 gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++------
 1 file changed, 23 insertions(+), 6 deletions(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 7ad198b3a3..3d0a3e79a2 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -67055,18 +67055,35 @@ the file-system during development.")
          (string-append name "-" version ".tar.gz"))
         (sha256
          (base32
-          "15acrj881y2g7cwsgf1nr22cixrknp8m4x08dkx1an6zf4q8bk37"))))
+          "15acrj881y2g7cwsgf1nr22cixrknp8m4x08dkx1an6zf4q8bk37"))
+        (snippet
+         #~(begin (use-modules (guix build utils))
+                  (delete-file "pregenerated_bindings.rs")
+                  ;; TODO: Unbundle hawktracer
+                  (substitute* "Cargo.toml"
+                    (("0\\.37\\.0") "0.56")
+                    ;; Generate the bindings by default since we delete the
+                    ;; pregenerated bindings.
+                    (("\\[features\\]")
+                     "[features]\ndefault = ['generate_bindings']"))
+                  (substitute* "build.rs"
+                    (("( +)\\.generate" _ space)
+                     (string-append space ".size_t_is_usize(true)\n"
+                                    space ".generate")))
+                  (substitute* "hawktracer/CMakeLists.txt"
+                    (("(ENABLE_DOC.*) ON" _ enable_doc)
+                     (string-append enable_doc " OFF")))))))
     (build-system cargo-build-system)
     (arguments
-     `(#:skip-build? #t
-       #:cargo-inputs
+     `(#:cargo-inputs
        (("rust-cmake" ,rust-cmake-0.1)
         ("rust-pkg-config" ,rust-pkg-config-0.3)
-        ("rust-bindgen" ,rust-bindgen-0.37)
+        ("rust-bindgen" ,rust-bindgen-0.56)
         ("rust-itertools" ,rust-itertools-0.8))))
+    (native-inputs
+     (list clang cmake-minimal))
     (home-page "https://github.com/AlexEne/rust_hawktracer_sys";)
-    (synopsis
-     "Sys crate for the rust_hawktracer library")
+    (synopsis "Sys crate for the rust_hawktracer library")
     (description
      "This package provides a sys crate for the rust_hawktracer library.")
     (license (list license:expat license:asl2.0))))



reply via email to

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