diff options
author | Efraim Flashner <efraim@flashner.co.il> | 2024-01-16 20:48:31 +0200 |
---|---|---|
committer | Efraim Flashner <efraim@flashner.co.il> | 2024-02-20 13:57:42 +0200 |
commit | fb295a6a1269c9375a4251192775221e584a7afd (patch) | |
tree | 7dc925967056758bafac772c8731a0169fce71bf /gnu/packages/rust.scm | |
parent | c4f676b24edc0769c396eea5b98332ca050ab0f3 (diff) | |
download | guix-fb295a6a1269c9375a4251192775221e584a7afd.tar.gz |
gnu: rust-1.70: Fix building on powerpc64le-linux.
* gnu/packages/rust.scm (rust-1.70)[source]: Adjust snippet to fix building rustix on all architectures. Change-Id: Ic9f57e00c8602cd400db65e5b2c2499e972bef17
Diffstat (limited to 'gnu/packages/rust.scm')
-rw-r--r-- | gnu/packages/rust.scm | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm index 73c63cf801..85f497d041 100644 --- a/gnu/packages/rust.scm +++ b/gnu/packages/rust.scm @@ -786,6 +786,22 @@ safety and thread safety guarantees.") (source (origin (inherit (package-source base-rust)) + (snippet + '(begin + (for-each delete-file-recursively + '("src/llvm-project" + "vendor/openssl-src/openssl" + "vendor/tikv-jemalloc-sys/jemalloc")) + ;; Adjust rustix to always build with cc. + (substitute* "Cargo.lock" + (("\"errno\",") "\"cc\",\n \"errno\",")) + ;; Add a dependency on the the 'cc' feature of rustix. + (substitute* '("vendor/is-terminal/Cargo.toml" + "vendor/is-terminal-0.4.4/Cargo.toml") + (("\"termios\"") "\"termios\", \"cc\"")) + ;; Also remove the bundled (mostly Windows) libraries. + (for-each delete-file + (find-files "vendor" "\\.(a|dll|exe|lib)$")))) ;; Rust 1.70 adds the rustix library which depends on the vendored ;; fd-lock crate. The fd-lock crate uses Outline assembly which expects ;; a precompiled static library. Enabling the "cc" feature tells the |