aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/rust.scm
diff options
context:
space:
mode:
authorEfraim Flashner <efraim@flashner.co.il>2024-01-16 20:48:51 +0200
committerEfraim Flashner <efraim@flashner.co.il>2024-02-20 13:57:42 +0200
commit4e058aa7e885a0c10fdeee3e0621d580a6c35b23 (patch)
treefe4c40044447104f5bde9197855b223f021ecc3a /gnu/packages/rust.scm
parentfb295a6a1269c9375a4251192775221e584a7afd (diff)
downloadguix-4e058aa7e885a0c10fdeee3e0621d580a6c35b23.tar
guix-4e058aa7e885a0c10fdeee3e0621d580a6c35b23.tar.gz
gnu: rust-1.71: Fix building on powerpc64le-linux.
* gnu/packages/rust.scm (rust-1.71)[source]: Adjust snippet to fix building rustix on all architectures. Change-Id: I1661ebd9071b3dba92e0f871fad9ed5bcbef38ea
Diffstat (limited to 'gnu/packages/rust.scm')
-rw-r--r--gnu/packages/rust.scm20
1 files changed, 20 insertions, 0 deletions
diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm
index 85f497d041..5ad219f668 100644
--- a/gnu/packages/rust.scm
+++ b/gnu/packages/rust.scm
@@ -815,6 +815,26 @@ safety and thread safety guarantees.")
rust-1.70 "1.71.1" "0bj79syjap1kgpg9pc0r4jxc0zkxwm6phjf3digsfafms580vabg")))
(package
(inherit base-rust)
+ (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"
+ "src/tools/cargo/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.6/Cargo.toml")
+ (("\"termios\"") "\"termios\", \"cc\""))
+ ;; Also remove the bundled (mostly Windows) libraries.
+ (for-each delete-file
+ (find-files "vendor" "\\.(a|dll|exe|lib)$"))))))
(arguments
(substitute-keyword-arguments (package-arguments base-rust)
((#:phases phases)