| From stable+bounces-239947-greg=kroah.com@vger.kernel.org Mon Apr 20 20:11:41 2026 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Mon, 20 Apr 2026 12:38:51 -0400 |
| Subject: scripts: generate_rust_analyzer.py: define scripts |
| To: stable@vger.kernel.org |
| Cc: Tamir Duberstein <tamird@kernel.org>, Daniel Almeida <daniel.almeida@collabora.com>, Fiona Behrens <me@kloenk.dev>, Trevor Gross <tmgross@umich.edu>, Sasha Levin <sashal@kernel.org> |
| Message-ID: <20260420163851.1302521-1-sashal@kernel.org> |
| |
| From: Tamir Duberstein <tamird@kernel.org> |
| |
| [ Upstream commit 36c619f6bd793493294becb10a02fea370b67a91 ] |
| |
| 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> |
| [ changed `[std]` dep to `["std"]` and kept untyped `is_root_crate()` ] |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| scripts/generate_rust_analyzer.py | 14 +++++++++++++- |
| 1 file changed, 13 insertions(+), 1 deletion(-) |
| |
| --- a/scripts/generate_rust_analyzer.py |
| +++ b/scripts/generate_rust_analyzer.py |
| @@ -113,6 +113,18 @@ def generate_crates(srctree, objtree, sy |
| "exclude_dirs": [], |
| } |
| |
| + 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, target): |
| try: |
| contents = build_file.read_text() |
| @@ -129,7 +141,7 @@ def generate_crates(srctree, objtree, sy |
| 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 \ |