Re: [PATCH 7/7] kbuild: doc: document subdir-y syntax

Randy Dunlap
2020-11-23T18:03:30Z

On 11/22/20 8:54 PM, Masahiro Yamada wrote:
> There is no explanation about subdir-y.
>
> Let's document it.
>
> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> ---
>
> Documentation/kbuild/makefiles.rst | 14 ++++++++++++++
> 1 file changed, 14 insertions(+)
>
> diff --git a/Documentation/kbuild/makefiles.rst b/Documentation/kbuild/makefiles.rst
> index 159e470f2616..6332b9ca7942 100644
> --- a/Documentation/kbuild/makefiles.rst
> +++ b/Documentation/kbuild/makefiles.rst
> @@ -319,6 +319,20 @@ more details, with real examples.
> that directory specifies obj-y, those objects will be left orphan.
> It is very likely a bug of the Makefile or of dependencies in Kconfig.
>
> + Kbuild also supports dedicated syntax, subdir-y and subdir-m, for
> + descending into subdirectories. It is a good fit when you know they
> + do not contain kernel-space objects at all. A typical usage is to let
> + Kbuild descend into subdirectories to build tools.
> +
> + Examples::
> +
> + subdir-$(CONFIG_GCC_PLUGINS) += gcc-plugins
> + subdir-$(CONFIG_MODVERSIONS) += genksyms
> + subdir-$(CONFIG_SECURITY_SELINUX) += selinux
> +
> + Unlike obj-y/m, subdir-y/m does not need the trailing slash since this
> + syntax is always used for directories.
> +

Just curious: Is a trailing slash allowed here? say for consistency?

> It is good practice to use a `CONFIG_` variable when assigning directory
> names. This allows kbuild to totally skip the directory if the
> corresponding `CONFIG_` option is neither 'y' nor 'm'.
>

Reviewed-by: Randy Dunlap <rdunlap@infradead.org>

thanks.

--
~Randy