diff options
| author | Tamir Duberstein <tamird@kernel.org> | 2026-01-22 11:53:28 -0500 |
|---|---|---|
| committer | Tamir Duberstein <tamird@kernel.org> | 2026-03-09 13:20:08 -0400 |
| commit | 36c619f6bd793493294becb10a02fea370b67a91 (patch) | |
| tree | c988c6f82cc2fdbd448a78fb7cccf897e1859475 | |
| parent | 75c0fb25b56dc3ef122b1ac2dbb7bc9b31937408 (diff) | |
| download | lwn-36c619f6bd793493294becb10a02fea370b67a91.tar.gz lwn-36c619f6bd793493294becb10a02fea370b67a91.zip | |
scripts: generate_rust_analyzer.py: define scripts
Add IDE support for host-side scripts written in Rust. This support has
been missing since these scripts were initially added in commit
9a8ff24ce584 ("scripts: add `generate_rust_target.rs`"), thus add it.
Change the existing instance of extension stripping to
`pathlib.Path.stem` to maintain code consistency.
Fixes: 9a8ff24ce584 ("scripts: add `generate_rust_target.rs`")
Cc: stable@vger.kernel.org
Reviewed-by: Daniel Almeida <daniel.almeida@collabora.com>
Reviewed-by: Fiona Behrens <me@kloenk.dev>
Reviewed-by: Trevor Gross <tmgross@umich.edu>
Link: https://patch.msgid.link/20260122-rust-analyzer-scripts-v1-1-ff6ba278170e@kernel.org
Signed-off-by: Tamir Duberstein <tamird@kernel.org>
| -rwxr-xr-x | scripts/generate_rust_analyzer.py | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/scripts/generate_rust_analyzer.py b/scripts/generate_rust_analyzer.py index 7becc2698c14..38e834bd209e 100755 --- a/scripts/generate_rust_analyzer.py +++ b/scripts/generate_rust_analyzer.py @@ -299,6 +299,18 @@ def generate_crates( "kernel", [core, macros, build_error, pin_init, ffi, bindings, uapi] ) + scripts = srctree / "scripts" + makefile = (scripts / "Makefile").read_text() + for path in scripts.glob("*.rs"): + name = path.stem + if f"{name}-rust" not in makefile: + continue + append_crate( + name, + path, + [std], + ) + def is_root_crate(build_file: pathlib.Path, target: str) -> bool: try: return f"{target}.o" in open(build_file).read() @@ -316,7 +328,7 @@ def generate_crates( for folder in extra_dirs: for path in folder.rglob("*.rs"): logging.info("Checking %s", path) - name = path.name.replace(".rs", "") + name = path.stem # Skip those that are not crate roots. if not is_root_crate(path.parent / "Makefile", name) and \ |
