From 5da14237eb2994a73e8864cf88359bc2308d4864 Mon Sep 17 00:00:00 2001 From: Wilfred Hughes Date: Thu, 8 Jun 2023 14:56:37 -0700 Subject: [PATCH] Document the sysroot field in JsonProject rust-analyzer supports both `sysroot` and `sysroot_src` in `rust-project.json`. Document `sysroot` and show example values for both fields. --- docs/user/manual.adoc | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/docs/user/manual.adoc b/docs/user/manual.adoc index 5b9db10b093d..98d99bae92ae 100644 --- a/docs/user/manual.adoc +++ b/docs/user/manual.adoc @@ -653,9 +653,28 @@ However, if you use some other build system, you'll have to describe the structu [source,TypeScript] ---- interface JsonProject { + /// Path to the sysroot directory. + /// + /// The sysroot is where rustc looks for the + /// crates that are built-in to rust, such as + /// std. + /// + /// https://doc.rust-lang.org/rustc/command-line-arguments.html#--sysroot-override-the-system-root + /// + /// To see the current value of sysroot, you + /// can query rustc: + /// + /// ``` + /// $ rustc --print sysroot + /// /Users/yourname/.rustup/toolchains/stable-x86_64-apple-darwin + /// ``` + sysroot?: string; /// Path to the directory with *source code* of /// sysroot crates. /// + /// By default, this is `lib/rustlib/src/rust/library` + /// relative to the sysroot. + /// /// It should point to the directory where std, /// core, and friends can be found: ///