aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorDylan Baker <dylan@pnwbakers.com>2022-08-11 15:28:25 -0700
committerEli Schwartz <eschwartz93@gmail.com>2022-09-12 18:51:27 -0400
commit9a645c1c5a3a30d48f5addc1e4d73d9144ac8356 (patch)
treea93588d0ba410dd835e0a6089e83d87a86eaa006 /docs
parent0ef3c2b4366f0e6256d55b3e5967bde681b6d606 (diff)
downloadmeson-9a645c1c5a3a30d48f5addc1e4d73d9144ac8356.zip
meson-9a645c1c5a3a30d48f5addc1e4d73d9144ac8356.tar.gz
meson-9a645c1c5a3a30d48f5addc1e4d73d9144ac8356.tar.bz2
rust: Generate a rust-project.json file when rust targets are present
When at least one Rust target is present, we now generate a rust-project.json file, which can be consumed by rust-analyzer. This is placed in the build directory, and the editor must be configured to look for this (as it is not a default search path).
Diffstat (limited to 'docs')
-rw-r--r--docs/markdown/Rust.md11
-rw-r--r--docs/markdown/snippets/rust_project_json.md5
2 files changed, 16 insertions, 0 deletions
diff --git a/docs/markdown/Rust.md b/docs/markdown/Rust.md
index 97a98dc..b7e36e3 100644
--- a/docs/markdown/Rust.md
+++ b/docs/markdown/Rust.md
@@ -54,3 +54,14 @@ executable(
)
)
```
+
+## Use with rust-analyzer
+
+*Since 0.64.0.*
+
+Meson will generate a `rust-project.json` file in the root of the build
+directory if there are any rust targets in the project. Most IDEs will need to
+be configured to use the file as it's not in the source root (Meson does not
+write files into the source directory). [See the upstream
+docs](https://rust-analyzer.github.io/manual.html#non-cargo-based-projects) for
+more information on how to configure that.
diff --git a/docs/markdown/snippets/rust_project_json.md b/docs/markdown/snippets/rust_project_json.md
new file mode 100644
index 0000000..e87a7db
--- /dev/null
+++ b/docs/markdown/snippets/rust_project_json.md
@@ -0,0 +1,5 @@
+## Generates rust-project.json when there are Rust targets
+
+This is a format similar to compile_commands.json, but specifically used by the
+official rust LSP, rust-analyzer. It is generated automatically if there are
+Rust targets, and is placed in the build directory.