Re: [PATCH 15/19] Kbuild: add Rust support

From: Miguel Ojeda
Date: Sun Jan 16 2022 - 23:45:45 EST


Hi Masahiro,

On Sat, Dec 11, 2021 at 4:54 PM Masahiro Yamada <masahiroy@xxxxxxxxxx> wrote:
>
> Do you really want to support CLIPPY=1
> in addition to KBUILD_CLIPPY=1 ?
>
> (Refer to C= V= M= O=, which checks $(origin ) )

I implemented both because I saw the pattern used for `V=`, `W=` etc.,
and I thought I should follow it too. If I understand correctly, the
split between `KBUILD_*` and the shorthands is there to avoid
conflicts if the caller had set very short environment variables for
some reason -- is this correct?

If you prefer only one, I think writing `KBUILD_CLIPPY=1` would be too
long for command line usage; so I would prefer `CLIPPY=1` in that
case.

> Is there any reason why
> you did not write like
>
> core-$(CONFIG_RUST) += rust/
>
> ?

I have moved it inside the `rust/Makefile` -- please take a look at
the next round I am sending in a bit.

> extra-y does nothing for 'make modules'.
> Is this your expected behavior?
>
> (commit d0e628cd817f3)

Thanks for the reference! Changed to `always-y`. Indeed, this is
needed in `make modules` because we need to trigger the compilation of
`core.o` etc. for the `.rmeta` files.

> Why is .SECONDEXPANSION: needed ?

It was needed at some point for the prototype more than a year ago;
however, it isn't the case anymore, so I have removed it. I have also
made those variables simply expanded ones.

Cheers,
Miguel