summary refs log tree commit diff
path: root/gnu/packages/rust.scm
diff options
context:
space:
mode:
authorEfraim Flashner <efraim@flashner.co.il>2024-01-17 10:13:45 +0200
committerEfraim Flashner <efraim@flashner.co.il>2024-02-20 13:57:42 +0200
commitf8f8bd9eba0cfd1bc027b40a3daf347cf353dcf4 (patch)
tree9017f0641cbd16bcbff6c2a3478c0556daeb19ba /gnu/packages/rust.scm
parent630273175054a85b642bd1b62f8a7c6d3f26bc33 (diff)
downloadguix-f8f8bd9eba0cfd1bc027b40a3daf347cf353dcf4.tar.gz
gnu: rust-bootstrap: Fix building on riscv64-linux.
* gnu/packages/rust-bootstrap.scm [properties]: Increase timeout to 36
hours.
[inputs]: When building for riscv64 add clang-13.
[arguments]: When building for riscv64 start the build using clang and
then switch to gcc later.

Change-Id: I661934ff6862e5c8d826dd637ceeaf316b877c23
Diffstat (limited to 'gnu/packages/rust.scm')
-rw-r--r--gnu/packages/rust.scm11
1 files changed, 7 insertions, 4 deletions
diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm
index d7d2f0eb0d..42be029c28 100644
--- a/gnu/packages/rust.scm
+++ b/gnu/packages/rust.scm
@@ -178,11 +178,12 @@
        (patch-flags '("-p0"))))         ;default is -p1
     (outputs '("out" "cargo"))
     (properties '((hidden? . #t)
-                  (timeout . 72000)           ;20 hours
+                  (timeout . 129600)          ;36 hours
                   (max-silent-time . 18000))) ;5 hours (for armel)
     (build-system gnu-build-system)
     (inputs
-     `(,@(if (target-ppc64le?)
+     `(,@(if (or (target-ppc64le?)
+                 (target-riscv64?))
              `(("clang" ,clang-13))
              `())
        ("llvm" ,llvm-13)
@@ -288,7 +289,8 @@
                (setenv "CARGO_HOME" cargo-home))))
          (replace 'configure
            (lambda _
-             ,@(if (target-ppc64le?)
+             ,@(if (or (target-ppc64le?)
+                       (target-riscv64?))
                    `((setenv "CC" "clang")
                      (setenv "CXX" "clang++"))
                    `((setenv "CC" "gcc")
@@ -332,7 +334,8 @@
                ;; We can to continue the build with gcc after building rustc.
                ;; librustc_driver.so undefined reference to
                ;; `llvm::cfg::Update<llvm::BasicBlock*>::dump() const'
-               ,@(if (target-ppc64le?)
+               ,@(if (or (target-ppc64le?)
+                         (target-riscv64?))
                      `((setenv "CC" "gcc")
                        (setenv "CXX" "g++"))
                      `())