From d987b267c202f985808a19ebcb98ea5845a3a241 Mon Sep 17 00:00:00 2001 From: John Soo Date: Sat, 23 Jan 2021 08:43:52 -0800 Subject: [PATCH] gnu: Add wasm32 target to rust@1.46. * gnu/packages/rust.scm (rust-1.46): [arguments] Add wasm32 to target configuration, [native-inputs] Add node for tests. --- gnu/packages/rust.scm | 24 +++++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm index b59fe98546..7b40372cb2 100644 --- a/gnu/packages/rust.scm +++ b/gnu/packages/rust.scm @@ -42,6 +42,7 @@ #:use-module (gnu packages jemalloc) #:use-module (gnu packages linux) #:use-module (gnu packages llvm) + #:use-module (gnu packages node) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) #:use-module (gnu packages ssh) @@ -1329,7 +1330,8 @@ move around." `(("gcc-lib" ,gcc "lib") ,@(package-inputs base-rust))) (native-inputs - `(("patchelf" ,patchelf) + `(("node" ,node) + ("patchelf" ,patchelf) ,@(package-native-inputs base-rust))) (arguments (substitute-keyword-arguments (package-arguments base-rust) @@ -1347,7 +1349,21 @@ move around." (generate-all-checksums "vendor") #t)) (replace 'build - (lambda* _ + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "config.toml" + (("\\[build\\]" all) + (string-append all " +target = [\"" ,(nix-system->gnu-triplet-for-rust) "\", \"wasm32-unknown-unknown\"] +")) + (("\\[dist\\]" all) + (string-append " +[target.wasm32-unknown-unknown] +llvm-config = \"" (assoc-ref inputs "llvm") "/bin/llvm-config\" +cc = \"" (assoc-ref inputs "gcc") "/bin/gcc\" +cxx = \"" (assoc-ref inputs "gcc") "/bin/g++\" +ar = \"" (assoc-ref inputs "binutils") "/bin/ar\" +" +all))) (invoke "./x.py" "build") (invoke "./x.py" "build" "src/tools/cargo") (invoke "./x.py" "build" "src/tools/rustfmt") @@ -1362,7 +1378,9 @@ move around." (string-append "-j" (number->string (min 4 (parallel-job-count)))))) - (invoke "./x.py" parallel-job-spec "test" "-vv") + (invoke "./x.py" parallel-job-spec "test" + (string-append "--target=" ,(nix-system->gnu-triplet-for-rust)) + "-vv") (invoke "./x.py" parallel-job-spec "test" "src/tools/cargo") (invoke "./x.py" parallel-job-spec "test" -- 2.30.0