From: Nikolai Merinov To: address@hidden Subject: [PATCH] gnu: rust: make rust 1.25.0 build reproducible * gnu/packages/rust.scm (rust-1.25): switch back to address@hidden still builds with address@hidden is not reproducible. Remove all address@hidden related twicks. (rust-1.26): switch to address@hidden still rust-1.26 can build reproducible binaries with new llvm release. Enable address@hidden related twicks. --- gnu/packages/rust.scm | 39 ++++++++++++++++++--------------------- 1 file changed, 18 insertions(+), 21 deletions(-) diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm index 28bffb44b..1095070eb 100644 --- a/gnu/packages/rust.scm +++ b/gnu/packages/rust.scm @@ -545,10 +545,6 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\" "0baxjr99311lvwdq0s38bipbnj72pn6fgbk6lcq7j555xq53mxpf"))) (package (inherit base-rust) - (inputs - ;; Use LLVM 6.0 - (alist-replace "llvm" (list llvm) - (package-inputs base-rust))) (arguments (substitute-keyword-arguments (package-arguments base-rust) ((#:phases phases) @@ -559,23 +555,6 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\" ;; This test wants to update the crate index. (("fn no_index_update") "#[ignore]\nfn no_index_update")) #t)) - (add-after 'configure 'enable-codegen-tests - (lambda _ - (substitute* "config.toml" - (("codegen-tests = false") "")) - #t)) - (replace 'patch-aarch64-test - (lambda _ - (substitute* "src/librustc_metadata/dynamic_lib.rs" - ;; This test is known to fail on aarch64 and powerpc64le: - ;; https://github.com/rust-lang/rust/issues/45410 - (("fn test_loading_cosine") "#[ignore]\nfn test_loading_cosine")) - ;; This test fails on aarch64 with address@hidden: - ;; https://github.com/rust-lang/rust/issues/49807 - ;; other possible solution: - ;; https://github.com/rust-lang/rust/pull/47688 - (delete-file "src/test/debuginfo/by-value-self-argument-in-trait-impl.rs") - #t)) (delete 'ignore-glibc-2.27-incompatible-test)))))))) (define-public rust-1.26 @@ -585,6 +564,10 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\" #:patches '("rust-coresimd-doctest.patch")))) (package (inherit base-rust) + (inputs + ;; Use LLVM 6.0 + (alist-replace "llvm" (list llvm) + (package-inputs base-rust))) (arguments (substitute-keyword-arguments (package-arguments base-rust) ((#:phases phases) @@ -624,6 +607,20 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\" (substitute* "src/tools/cargo/tests/testsuite/generate_lockfile.rs" ;; This test wants to update the crate index. (("fn no_index_update") "#[ignore]\nfn no_index_update")) + #t)) + (add-after 'patch-aarch64-test 'patch-aarch64-llvm6-test + (lambda _ + ;; This test fails on aarch64 with address@hidden: + ;; https://github.com/rust-lang/rust/issues/49807 + ;; other possible solution: + ;; https://github.com/rust-lang/rust/pull/47688 + (delete-file "src/test/debuginfo/by-value-self-argument-in-trait-impl.rs") + #t)) + (add-after 'configure 'enable-codegen-tests + (lambda* _ + (substitute* "config.toml" + ;; codegen test should pass with LLVM 6 + (("codegen-tests = false") "")) #t))))))))) (define-public rust -- 2.17.1