summaryrefslogtreecommitdiff
path: root/gnu/packages/rust.scm
diff options
context:
space:
mode:
authorBrennan Vincent <brennan@umanwizard.com>2024-03-24 10:27:38 -0400
committerEfraim Flashner <efraim@flashner.co.il>2024-06-26 12:35:26 +0300
commita47b695926e12850fc8055ede6c342d02ecd18ec (patch)
treeaaf9eb49c6ca2fdc583c161b595cb8344b902c59 /gnu/packages/rust.scm
parent0d9a97d7a980240911377e74dac4b5b2165990d8 (diff)
downloadguix-patches-a47b695926e12850fc8055ede6c342d02ecd18ec.tar
guix-patches-a47b695926e12850fc8055ede6c342d02ecd18ec.tar.gz
gnu: Add rust-1.77.0.
* gnu/packages/rust.scm (rust-1.77): New variable. Change-Id: Ia4611b0ea153bce1de97e711af6d3f7396a6bf85 Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
Diffstat (limited to 'gnu/packages/rust.scm')
-rw-r--r--gnu/packages/rust.scm24
1 files changed, 24 insertions, 0 deletions
diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm
index dc4b0aa094..9d3dfa65ad 100644
--- a/gnu/packages/rust.scm
+++ b/gnu/packages/rust.scm
@@ -957,6 +957,30 @@ safety and thread safety guarantees.")
(inputs (modify-inputs (package-inputs base-rust)
(replace "llvm" llvm-17))))))
+(define-public rust-1.77
+ (let ((base-rust (rust-bootstrapped-package rust-1.76 "1.77.0"
+ "11rda8d8qj24a5mkjzj1x6x9pkvaq0zlhkgdp5b39zj5m0gwsv0d")))
+ (package
+ (inherit base-rust)
+ (arguments
+ (substitute-keyword-arguments (package-arguments base-rust)
+ ((#:phases phases)
+ `(modify-phases ,phases
+ (add-after 'configure 'no-optimized-compiler-builtins
+ (lambda _
+ ;; Pre-1.77, the behavior was equivalent to this flag being
+ ;; "false" if the llvm-project submodule wasn't checked out.
+ ;;
+ ;; Now there's an explicit check, so the build fails if we don't
+ ;; manually disable this (given that we don't have the submodule checked out).
+ ;; Thus making the build behave the same as it did in 1.76 and earlier.
+ ;;
+ ;; TODO - make the build system depend on system llvm for this, so we
+ ;; can get the performance benefits of setting this to true?
+ (substitute* "config.toml"
+ (("\\[build\\]")
+ "[build]\noptimized-compiler-builtins = false")))))))))))
+
(define (make-ignore-test-list strs)
"Function to make creating a list to ignore tests a bit easier."
(map (lambda (str)