Re: [PATCH v2 1/2] scripts: generate_rust_analyzer.py: add missing include_dirs

Miguel Ojeda
2025-03-11T22:00:45Z

On Mon, Feb 10, 2025 at 7:04 PM Tamir Duberstein <tamird@gmail.com> wrote:
>
> Commit 8c4555ccc55c ("scripts: add `generate_rust_analyzer.py`")
> specified OBJTREE for the bindings crate, and `source.include_dirs` for
> the kernel crate, likely in an attempt to support out-of-source builds
> for those crates where the generated files reside in `objtree` rather
> than `srctree`. This was insufficient because both bits of configuration
> are required for each crate; the result is that rust-analyzer is unable
> to resolve generated files for either crate in an out-of-source build.

Originally we were not using `OBJTREE` in the `kernel` crate, but we
did pass it anyway, so conceptually it could have been there. So I am
not sure if it counts as a fix for that commit, but it shouldn't hurt
even if backported.

Regarding `include_dirs`, it started in `kernel` before being in
mainline because we included the bindings there (i.e. there was not
`bindings` crate), but it should have been probably moved when it was
split. Nowadays, I guess we still need it for
`generated_arch_static_branch_asm.rs`, or is it something else that
needs it? I assume it shouldn't hurt, in any case, so it looks OK.

Cheers,
Miguel