From 7d0e111e272dc9f337f8907310f561e22a3ef329 Mon Sep 17 00:00:00 2001 From: Matthew Kraai Date: Sun, 6 Dec 2020 16:03:09 -0800 Subject: gnu: Add Rust 1.47. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/rust.scm (rust-1.47): New variable. Signed-off-by: Jakub Kądziołka --- gnu/packages/rust.scm | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm index 91b5d6b6ec..3c09f09edd 100644 --- a/gnu/packages/rust.scm +++ b/gnu/packages/rust.scm @@ -10,6 +10,7 @@ ;;; Copyright © 2019 Ivan Petkov ;;; Copyright © 2020 Jakub Kądziołka ;;; Copyright © 2020 Pierre Langlois +;;; Copyright © 2020 Matthew Kraai ;;; ;;; This file is part of GNU Guix. ;;; @@ -1319,5 +1320,42 @@ move around." (rust-bootstrapped-package rust-1.45 "1.46.0" "0a17jby2pd050s24cy4dfc0gzvgcl585v3vvyfilniyvjrqknsid")) +(define-public rust-1.47 + (let ((base-rust + (rust-bootstrapped-package rust-1.46 "1.47.0" + "07fqd2vp7cf1ka3hr207dnnz93ymxml4935vp74g4is79h3dz19i"))) + (package + (inherit base-rust) + (inputs + (alist-replace "llvm" (list llvm-11) + (package-inputs base-rust))) + (arguments + (substitute-keyword-arguments (package-arguments base-rust) + ((#:phases phases) + `(modify-phases ,phases + ;; The source code got rearranged: libstd is now in the newly created library folder. + (replace 'patch-tests + (lambda* (#:key inputs #:allow-other-keys) + (let ((bash (assoc-ref inputs "bash"))) + (substitute* "library/std/src/process.rs" + (("\"/bin/sh\"") (string-append "\"" bash "/bin/sh\""))) + ;; + (substitute* "library/std/src/sys/unix/process/process_common.rs" + (("fn test_process_mask") "#[allow(unused_attributes)] + #[ignore] + fn test_process_mask")) + #t))) + (delete 'patch-cargo-checksums) + (add-after 'patch-generated-file-shebangs 'patch-cargo-checksums + ;; Generate checksums after patching generated files (in + ;; particular, vendor/jemalloc/rep/Makefile). + (lambda* _ + (use-modules (guix build cargo-utils)) + (substitute* "Cargo.lock" + (("(checksum = )\".*\"" all name) + (string-append name "\"" ,%cargo-reference-hash "\""))) + (generate-all-checksums "vendor") + #t))))))))) + ;; TODO(staging): Bump this variable to the latest packaged rust. (define-public rust rust-1.45) -- cgit v1.2.3