diff options
author | Efraim Flashner <efraim@flashner.co.il> | 2023-10-01 10:49:07 +0300 |
---|---|---|
committer | Efraim Flashner <efraim@flashner.co.il> | 2023-10-18 11:35:40 +0300 |
commit | df93d8a9f85be9ad4902711afca432ae6396087c (patch) | |
tree | 602a3182ae47babf457d9c838970a75088ad412d /gnu/packages/rust.scm | |
parent | 868d17acf79302f04e9ead1ff7bed35a76a14885 (diff) |
gnu: rust: Build more tools.
* gnu/packages/rust.scm (rust)[outputs]: Rename 'rustfmt' output to
'tools'.
[arguments]: Adjust 'build, 'check and 'install phases to also provide
clippy and rust-analyzer.
Diffstat (limited to 'gnu/packages/rust.scm')
-rw-r--r-- | gnu/packages/rust.scm | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm index 6ee57ac21f..34511f283e 100644 --- a/gnu/packages/rust.scm +++ b/gnu/packages/rust.scm @@ -760,7 +760,7 @@ safety and thread safety guarantees.") (let ((base-rust rust-1.70)) (package (inherit base-rust) - (outputs (cons "rustfmt" (package-outputs base-rust))) + (outputs (cons "tools" (package-outputs base-rust))) (arguments (substitute-keyword-arguments (package-arguments base-rust) ((#:tests? _ #f) @@ -878,18 +878,20 @@ safety and thread safety guarantees.") (string-append all "gdb = \"" gdb "/bin/gdb\"\n")))))) (replace 'build - ;; Phase overridden to also build rustfmt. + ;; Phase overridden to also build more tools. (lambda* (#:key parallel-build? #:allow-other-keys) (let ((job-spec (string-append "-j" (if parallel-build? (number->string (parallel-job-count)) "1")))) (invoke "./x.py" job-spec "build" - "library/std" ;rustc + "library/std" ;rustc "src/tools/cargo" + "src/tools/clippy" + "src/tools/rust-analyzer" "src/tools/rustfmt")))) (replace 'check - ;; Phase overridden to also test rustfmt. + ;; Phase overridden to also test more tools. (lambda* (#:key tests? parallel-build? #:allow-other-keys) (when tests? (let ((job-spec (string-append @@ -899,9 +901,11 @@ safety and thread safety guarantees.") (invoke "./x.py" job-spec "test" "-vv" "library/std" "src/tools/cargo" + "src/tools/clippy" + "src/tools/rust-analyzer" "src/tools/rustfmt"))))) (replace 'install - ;; Phase overridden to also install rustfmt. + ;; Phase overridden to also install more tools. (lambda* (#:key outputs #:allow-other-keys) (invoke "./x.py" "install") (substitute* "config.toml" @@ -910,9 +914,11 @@ safety and thread safety guarantees.") (format #f "prefix = ~s" (assoc-ref outputs "cargo")))) (invoke "./x.py" "install" "cargo") (substitute* "config.toml" - ;; Adjust the prefix to the 'rustfmt' output. + ;; Adjust the prefix to the 'tools' output. (("prefix = \"[^\"]*\"") - (format #f "prefix = ~s" (assoc-ref outputs "rustfmt")))) + (format #f "prefix = ~s" (assoc-ref outputs "tools")))) + (invoke "./x.py" "install" "clippy") + (invoke "./x.py" "install" "rust-analyzer") (invoke "./x.py" "install" "rustfmt"))))))) ;; Add test inputs. (native-inputs (cons* `("gdb" ,gdb/pinned) |