[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
471/471: gnu: rust: Re-enable aarch64-linux support.
From: |
guix-commits |
Subject: |
471/471: gnu: rust: Re-enable aarch64-linux support. |
Date: |
Wed, 3 May 2023 09:29:28 -0400 (EDT) |
efraim pushed a commit to branch rust-team
in repository guix.
commit 9f4750a45d58a6763368df81edf502e838d48674
Author: Efraim Flashner <efraim@flashner.co.il>
AuthorDate: Wed May 3 16:13:38 2023 +0300
gnu: rust: Re-enable aarch64-linux support.
* gnu/packages/rust.scm (rust)[arguments]: Only enable parallel-builds
on x86_64-linux. Add a make-flag to adjust CFLAGS. In the custom 'build
phase remove an unneeded environment variable.
[supported-architectures]: Add aarch64-linux.
---
gnu/packages/rust.scm | 14 ++++++++++----
1 file changed, 10 insertions(+), 4 deletions(-)
diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm
index f564133ecd..8e106a9927 100644
--- a/gnu/packages/rust.scm
+++ b/gnu/packages/rust.scm
@@ -197,6 +197,9 @@
;; Rust's own .so library files are not found in any RUNPATH, but
;; that doesn't seem to cause issues.
#:validate-runpath? #f
+ ;; Most of the build is single-threaded. This also improves the
+ ;; build time on machines with "only" 8GB of RAM.
+ #:parallel-build? ,(target-x86-64?)
#:make-flags
(list ,(string-append "RUSTC_TARGET="
(or (%current-target-system)
@@ -204,6 +207,10 @@
,(string-append "RUSTC_VERSION=" version)
,(string-append "MRUSTC_TARGET_VER="
(version-major+minor version))
+ ;; mrustc expects a C11 compatible compiler. Use the default
+ ;; C language dialect from the GCC-10 compiler.
+ ;; This is necessary for some architectures.
+ "CFLAGS=-std=gnu11"
"OUTDIR_SUF=") ;do not add version suffix to output dir
#:phases
(modify-phases %standard-phases
@@ -302,7 +309,6 @@
;; Use PARLEVEL since both minicargo and mrustc use it
;; to set the level of parallelism.
(setenv "PARLEVEL" (number->string job-count))
- (setenv "CARGO_BUILD_JOBS" (number->string job-count))
(display "Building mrustc...\n")
(apply invoke "make" make-flags)
@@ -354,9 +360,9 @@ safety and thread safety guarantees.")
;; therefore the build process needs 8GB of RAM while building.
;; It may support i686 soon:
;; <https://github.com/thepowersgang/mrustc/issues/78>.
- ;; XXX: The rust bootstrap is currently broken on aarch64 and riscv64,
- ;; remove them until this is fixed.
- (supported-systems '("x86_64-linux"))
+ ;; XXX: The rust bootstrap is currently broken on riscv64,
+ ;; remove it until this is fixed.
+ (supported-systems '("x86_64-linux" "aarch64-linux"))
;; Dual licensed.
(license (list license:asl2.0 license:expat))))
- 436/471: gnu: Add rust-android-properties-0.2., (continued)
- 436/471: gnu: Add rust-android-properties-0.2., guix-commits, 2023/05/03
- 434/471: gnu: Add rust-c-vec-2., guix-commits, 2023/05/03
- 448/471: gnu: Add rust-strict-num-0.1., guix-commits, 2023/05/03
- 464/471: gnu: rust-sct-0.5: Fix build., guix-commits, 2023/05/03
- 327/471: gnu: rust-windows-x86-64-gnu-0.42: Update to 0.42.2., guix-commits, 2023/05/03
- 368/471: gnu: rust-pledge-0.3: Update to 0.4.2., guix-commits, 2023/05/03
- 428/471: gnu: Add rust-glutin-glx-sys-0.4., guix-commits, 2023/05/03
- 467/471: gnu: rust-globwalk-0.8: Build with newer rust-backtrace., guix-commits, 2023/05/03
- 217/471: gnu: rust-wasm-bindgen-macro-0.2: Update to 0.2.84., guix-commits, 2023/05/03
- 302/471: gnu: agate: Add missing input., guix-commits, 2023/05/03
- 471/471: gnu: rust: Re-enable aarch64-linux support.,
guix-commits <=
- 443/471: gnu: rust-ab-glyph-rasterizer-0.1: Update to 0.1.8., guix-commits, 2023/05/03
- 419/471: gnu: rust-serde-1: Update to 1.0.160., guix-commits, 2023/05/03
- 304/471: gnu: sniffglue: Add missing input., guix-commits, 2023/05/03
- 372/471: gnu: rust-libgit2-sys-0.12: Update to 0.12.26., guix-commits, 2023/05/03
- 463/471: gnu: rust-ct-logs-0.8: Add missing input., guix-commits, 2023/05/03