diff options
author | Jakub Kądziołka <kuba@kadziolka.net> | 2020-04-29 11:40:21 +0200 |
---|---|---|
committer | Guix Patches Tester <> | 2020-04-29 10:42:14 +0100 |
commit | 9ceb20ba49c4f8dedb796c19bbd2ecdfe1c58ebd (patch) | |
tree | fd4ccbcecf5b58e5433ead4e215b4ccf5c097e19 | |
parent | 8fe681b9ffc5c5b0056e3174fade2f9e0b58fb97 (diff) | |
download | patches-9ceb20ba49c4f8dedb796c19bbd2ecdfe1c58ebd.tar patches-9ceb20ba49c4f8dedb796c19bbd2ecdfe1c58ebd.tar.gz |
gnu: rust: Add 1.40series-3745
* gnu/packages/rust.scm (rust-1.40): New variable.
-rw-r--r-- | gnu/packages/rust.scm | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm index 11522b933e..a82bfa5912 100644 --- a/gnu/packages/rust.scm +++ b/gnu/packages/rust.scm @@ -1176,4 +1176,38 @@ move around." (generate-all-checksums "vendor") #t))))))))) +(define-public rust-1.40 + (let ((base-rust + (rust-bootstrapped-package rust-1.39 "1.40.0" + "1ba9llwhqm49w7sz3z0gqscj039m53ky9wxzhaj11z6yg1ah15yx"))) + (package + (inherit base-rust) + (source + (origin + (inherit (package-source base-rust)) + ;; llvm-emscripten is no longer bundled, as that codegen backend + ;; got removed. + (snippet '(begin + (delete-file-recursively "src/llvm-project") + (delete-file-recursively "vendor/jemalloc-sys/jemalloc") + #t)))) + (arguments + ;; Rust 1.40 does not ship rustc-internal libraries by default + ;; (see rustc-dev-split). This means that librustc_driver.so is no + ;; longer available in lib/rustlib/$target/lib, which is the directory + ;; included in the runpath of librustc_codegen_llvm-llvm.so. + ;; This is detected by our validate-runpath phase as an error, but it + ;; is harmless as the codegen backend is loaded by librustc_driver.so + ;; itself, which must at that point have been already loaded. + ;; As such, we skip validating the runpath for Rust 1.40. + ;; Rust 1.41 stopped putting the codegen backend in a separate library, + ;; which makes this workaround only necessary for this release. + (cons* #:validate-runpath? #f + (substitute-keyword-arguments (package-arguments base-rust) + ((#:phases phases) + `(modify-phases ,phases + ;; The test got removed in commit 000fe63b6fc57b09828930cacbab20c2ee6e6d15 + ;; "Remove painful test that is not pulling its weight" + (delete 'remove-unsupported-tests))))))))) + (define-public rust rust-1.37) |