aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/rust.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/rust.scm')
-rw-r--r--gnu/packages/rust.scm33
1 files changed, 11 insertions, 22 deletions
diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm
index f3fee4c126..cec565bbc8 100644
--- a/gnu/packages/rust.scm
+++ b/gnu/packages/rust.scm
@@ -4,7 +4,7 @@
;;; Copyright © 2016 ng0 <ng0@n0.is>
;;; Copyright © 2017 Ben Woodcroft <donttrustben@gmail.com>
;;; Copyright © 2017, 2018 Nikolai Merinov <nikolai.merinov@member.fsf.org>
-;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Danny Milosavljevic <dannym+a@scratchpost.org>
;;; Copyright © 2019 Ivan Petkov <ivanppetkov@gmail.com>
@@ -196,7 +196,7 @@ safety and thread safety guarantees.")
(properties '((timeout . 72000) ;20 hours
(max-silent-time . 18000))) ;5 hours (for armel)
(arguments
- `(#:imported-modules ,%cargo-utils-modules ;for `generate-checksums'
+ `(#:imported-modules ,%cargo-utils-modules ;for `generate-all-checksums'
#:modules ((guix build utils) (ice-9 match) (guix build gnu-build-system))
#:phases
(modify-phases %standard-phases
@@ -270,19 +270,11 @@ test = { path = \"../libtest\" }
#t))
(add-after 'patch-source-shebangs 'patch-cargo-checksums
(lambda* _
+ (use-modules (guix build cargo-utils))
(substitute* "src/Cargo.lock"
(("(\"checksum .* = )\".*\"" all name)
(string-append name "\"" ,%cargo-reference-hash "\"")))
- (for-each
- (lambda (filename)
- (use-modules (guix build cargo-utils))
- (delete-file filename)
- (let* ((dir (dirname filename)))
- (display (string-append
- "patch-cargo-checksums: generate-checksums for "
- dir "\n"))
- (generate-checksums dir)))
- (find-files "src/vendor" ".cargo-checksum.json"))
+ (generate-all-checksums "src/vendor")
#t))
;; This phase is overridden by newer versions.
(replace 'configure
@@ -787,6 +779,11 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\"
"rust-bootstrap-stage0-test.patch"
"rust-1.25-accept-more-detailed-gdb-lines.patch"
"rust-reproducible-builds.patch")))))
+ (native-inputs
+ ;; FIXME: Rust 1.27 and some later versions require GDB 8.2 specifically.
+ ;; See <https://bugs.gnu.org/37810>.
+ (alist-replace "gdb" (list gdb-8.2)
+ (package-native-inputs base-rust)))
(arguments
(substitute-keyword-arguments (package-arguments base-rust)
((#:phases phases)
@@ -972,19 +969,11 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\"
;; root of the rust tarball
(replace 'patch-cargo-checksums
(lambda* _
+ (use-modules (guix build cargo-utils))
(substitute* "Cargo.lock"
(("(\"checksum .* = )\".*\"" all name)
(string-append name "\"" ,%cargo-reference-hash "\"")))
- (for-each
- (lambda (filename)
- (use-modules (guix build cargo-utils))
- (delete-file filename)
- (let* ((dir (dirname filename)))
- (display (string-append
- "patch-cargo-checksums: generate-checksums for "
- dir "\n"))
- (generate-checksums dir)))
- (find-files "vendor" ".cargo-checksum.json"))
+ (generate-all-checksums "vendor")
#t))
(add-after 'enable-codegen-tests 'override-jemalloc
(lambda* (#:key inputs #:allow-other-keys)