summaryrefslogtreecommitdiff
path: root/gnu/packages/rust.scm
diff options
context:
space:
mode:
authorEfraim Flashner <efraim@flashner.co.il>2023-12-17 12:59:13 +0200
committerEfraim Flashner <efraim@flashner.co.il>2024-02-20 13:56:20 +0200
commit4bf325381f76d8388944df2d81b08e52f1cb33f7 (patch)
tree9582e1ff280afec17f9af603cb671b362407b4ca /gnu/packages/rust.scm
parent072a9c60ab6b55666c647a80aebab82fd21cb32b (diff)
gnu: rust: Update to 1.74.1.
* gnu/packages/rust.scm (rust-1.74): New variable. (rust): Inherit from rust-1.74. [arguments]: Don't inherit #:tests. Change-Id: I9724ccbc93bbfd4e1bdf1d6a20dfa7a4d0ea3a5e
Diffstat (limited to 'gnu/packages/rust.scm')
-rw-r--r--gnu/packages/rust.scm31
1 files changed, 27 insertions, 4 deletions
diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm
index c3a7838a34..64ce9b77a2 100644
--- a/gnu/packages/rust.scm
+++ b/gnu/packages/rust.scm
@@ -824,6 +824,29 @@ safety and thread safety guarantees.")
(("features = \\[\"fs\"" all)
(string-append all ", \"use-libc\""))))))))))
+(define rust-1.74
+ (let ((base-rust (rust-bootstrapped-package rust-1.73 "1.74.1"
+ "07930r17dkj3dnsrmilywb6p9i2g2jx56ndfpa2wh8crzhi3xnv7")))
+ (package
+ (inherit base-rust)
+ (source
+ (origin
+ (inherit (package-source base-rust))
+ (snippet
+ '(begin
+ (for-each delete-file-recursively
+ '("src/llvm-project"
+ "vendor/tikv-jemalloc-sys/jemalloc"))
+ ;; Remove vendored dynamically linked libraries.
+ ;; find . -not -type d -executable -exec file {} \+ | grep ELF
+ ;; Also remove the bundled (mostly Windows) libraries.
+ (for-each delete-file
+ (find-files "vendor" "\\.(a|dll|exe|lib)$"))
+ ;; Adjust vendored dependency to explicitly use rustix with libc backend.
+ (substitute* "vendor/tempfile/Cargo.toml"
+ (("features = \\[\"fs\"" all)
+ (string-append all ", \"use-libc\""))))))))))
+
(define (make-ignore-test-list strs)
"Function to make creating a list to ignore tests a bit easier."
(map (lambda (str)
@@ -838,15 +861,15 @@ safety and thread safety guarantees.")
;;; Here we take the latest included Rust, make it public, and re-enable tests
;;; and extra components such as rustfmt.
(define-public rust
- (let ((base-rust rust-1.73))
+ (let ((base-rust rust-1.74))
(package
(inherit base-rust)
(properties (alist-delete 'hidden? (package-properties base-rust)))
(outputs (cons* "rust-src" "tools" (package-outputs base-rust)))
(arguments
- (substitute-keyword-arguments (package-arguments base-rust)
- ((#:tests? _ #f)
- (not (%current-target-system)))
+ (substitute-keyword-arguments
+ (strip-keyword-arguments '(#:tests?)
+ (package-arguments base-rust))
((#:phases phases)
`(modify-phases ,phases
(add-after 'unpack 'relax-gdb-auto-load-safe-path