diff options
author | Matthew Kraai <kraai@ftbfs.org> | 2020-12-07 14:47:39 -0800 |
---|---|---|
committer | Jakub Kądziołka <kuba@kadziolka.net> | 2021-01-02 19:19:57 +0100 |
commit | 402e697a1144788102b16ca8c9ea74607d2c2c3c (patch) | |
tree | 588373a52ce94dde9fd04786271ac8d2ba86af0f /gnu | |
parent | 7d0e111e272dc9f337f8907310f561e22a3ef329 (diff) | |
download | guix-402e697a1144788102b16ca8c9ea74607d2c2c3c.tar guix-402e697a1144788102b16ca8c9ea74607d2c2c3c.tar.gz |
gnu: Add Rust 1.48.
* gnu/packages/rust.scm (rust-1.48): New variable.
Signed-off-by: Jakub Kądziołka <kuba@kadziolka.net>
Diffstat (limited to 'gnu')
-rw-r--r-- | gnu/packages/patches/rust-1.48-linker-locale.patch | 14 | ||||
-rw-r--r-- | gnu/packages/rust.scm | 28 |
2 files changed, 42 insertions, 0 deletions
diff --git a/gnu/packages/patches/rust-1.48-linker-locale.patch b/gnu/packages/patches/rust-1.48-linker-locale.patch new file mode 100644 index 0000000000..d06dcbe682 --- /dev/null +++ b/gnu/packages/patches/rust-1.48-linker-locale.patch @@ -0,0 +1,14 @@ +https://github.com/rust-lang/rust/pull/74416 +diff --git a/compiler/rustc_codegen_ssa/src/back/linker.rs b/compiler/rustc_codegen_ssa/src/back/linker.rs +index 3df956c465e..f45fee45be4 100644 +--- a/compiler/rustc_codegen_ssa/src/back/linker.rs ++++ b/compiler/rustc_codegen_ssa/src/back/linker.rs +@@ -28,7 +28,7 @@ + pub fn disable_localization(linker: &mut Command) { + // No harm in setting both env vars simultaneously. + // Unix-style linkers. +- linker.env("LC_ALL", "C"); ++ linker.env("LC_ALL", "en_US.UTF-8"); + // MSVC's `link.exe`. + linker.env("VSLANG", "1033"); + } diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm index 3c09f09edd..334c2621dc 100644 --- a/gnu/packages/rust.scm +++ b/gnu/packages/rust.scm @@ -1357,5 +1357,33 @@ move around." (generate-all-checksums "vendor") #t))))))))) +(define-public rust-1.48 + (let ((base-rust + (rust-bootstrapped-package rust-1.47 "1.48.0" + "0fz4gbb5hp5qalrl9lcl8yw4kk7ai7wx511jb28nypbxninkwxhf"))) + (package + (inherit base-rust) + (source + (origin + (inherit (package-source base-rust)) + ;; New patch required due to the second part of the source code rearrangement: + ;; the relevant source code is now in the compiler directory. + (patches (search-patches "rust-1.48-linker-locale.patch")))) + (arguments + (substitute-keyword-arguments (package-arguments base-rust) + ((#:phases phases) + `(modify-phases ,phases + ;; Some tests got split out into separate files. + (replace 'patch-tests + (lambda* (#:key inputs #:allow-other-keys) + (let ((bash (assoc-ref inputs "bash"))) + (substitute* "library/std/src/process/tests.rs" + (("\"/bin/sh\"") (string-append "\"" bash "/bin/sh\""))) + (substitute* "library/std/src/sys/unix/process/process_common/tests.rs" + (("fn test_process_mask") "#[allow(unused_attributes)] + #[ignore] + fn test_process_mask")) + #t)))))))))) + ;; TODO(staging): Bump this variable to the latest packaged rust. (define-public rust rust-1.45) |