Re: [PATCH] kbuild: do not pass $(KBUILD_CFLAGS) to scripts/mkcompile_h

From: Kees Cook
Date: Fri Apr 03 2020 - 18:45:07 EST


On Sat, Apr 04, 2020 at 06:24:59AM +0900, Masahiro Yamada wrote:
> scripts/mkcompile_h uses $(CC) only for getting the version string.
>
> I suspected there was a specific reason why the additional flags were
> needed, and dug the commit history. This code dates back to at least
> 2002 [1], but I could not get any more clue.

I would be alarmed to find it changing the version string with flags. ;)

> Just get rid of it.
>
> [1]: https://git.kernel.org/pub/scm/linux/kernel/git/history/history.git/commit/?id=29f3df7eba8ddf91a55183f9967f76fbcc3ab742
>
> Signed-off-by: Masahiro Yamada <masahiroy@xxxxxxxxxx>

Reviewed-by: Kees Cook <keescook@xxxxxxxxxxxx>

-Kees

> ---
>
> init/Makefile | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/init/Makefile b/init/Makefile
> index 30aa8ab11120..d45e967483b2 100644
> --- a/init/Makefile
> +++ b/init/Makefile
> @@ -35,4 +35,4 @@ include/generated/compile.h: FORCE
> @$($(quiet)chk_compile.h)
> $(Q)$(CONFIG_SHELL) $(srctree)/scripts/mkcompile_h $@ \
> "$(UTS_MACHINE)" "$(CONFIG_SMP)" "$(CONFIG_PREEMPT)" \
> - "$(CONFIG_PREEMPT_RT)" "$(CC) $(KBUILD_CFLAGS)" "$(LD)"
> + "$(CONFIG_PREEMPT_RT)" "$(CC)" "$(LD)"
> --
> 2.17.1
>

--
Kees Cook