1
0
mirror of https://git.savannah.gnu.org/git/guix.git synced 2026-05-27 03:21:49 +02:00

gnu: Add rust-1.86.

* gnu/packages/rust.scm (rust-1.86): New variable.

Change-Id: I01f4d4e0953199b6f26d639274b69c0c4c4164dd
Signed-off-by: Hilton Chain <hako@ultrarare.space>
This commit is contained in:
Efraim Flashner
2025-07-02 11:41:03 +03:00
committed by Hilton Chain
parent 0617edfd7f
commit 3fa7d00920
+39
View File
@@ -1320,6 +1320,45 @@ safety and thread safety guarantees.")
(("features = \\[\"fs\"" all)
(string-append all ", \"use-libc\""))))))))))
(define-public rust-1.86
(let ((base-rust
(rust-bootstrapped-package rust-1.85 "1.86.0"
"107d3vbmwhn4b71gzr1kv31jwwyld7dxj9yj8jh00ygndll2fah2")))
(package
(inherit base-rust)
(source
(origin
(inherit (package-source base-rust))
(snippet
'(begin
(for-each delete-file-recursively
'("src/llvm-project"
"vendor/jemalloc-sys-0.3.2"
"vendor/jemalloc-sys-0.5.3+5.3.0-patched/jemalloc"
"vendor/openssl-src-111.17.0+1.1.1m/openssl"
"vendor/openssl-src-111.28.2+1.1.1w/openssl"
"vendor/tikv-jemalloc-sys-0.5.4+5.3.0-patched/jemalloc"
"vendor/tikv-jemalloc-sys-0.6.0+5.3.0-1-ge13ca993e8ccb9ba9847cc330696e02839f328f7/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-3.14.0/Cargo.toml"
"vendor/tempfile-3.15.0/Cargo.toml"
"vendor/tempfile-3.16.0/Cargo.toml")
(("features = \\[\"fs\"" all)
(string-append all ", \"use-libc\"")))))))
(arguments
(substitute-keyword-arguments (package-arguments base-rust)
((#:phases phases)
`(modify-phases ,phases
(add-after 'use-system-llvm 'disable-lld-wrapper
(lambda _
(substitute* "config.toml"
(("\\[rust\\]") "[rust]\nlld = false")))))))))))
(define (make-ignore-test-list strs)
"Function to make creating a list to ignore tests a bit easier."
(map (lambda (str)