diff options
| author | Thomas Weißschuh <thomas.weissschuh@linutronix.de> | 2026-03-05 13:04:07 +0100 |
|---|---|---|
| committer | Nicolas Schier <nsc@kernel.org> | 2026-03-18 20:59:00 +0100 |
| commit | c9bb03ac2c66bc5aa81b51ea0792477524c2763a (patch) | |
| tree | d995d467609144223c010adbf184a07ab4967ab2 /Makefile | |
| parent | dc3b90751d6ffa8865e09a81645a539b9de6d642 (diff) | |
| download | linux-next-history-c9bb03ac2c66bc5aa81b51ea0792477524c2763a.tar.gz | |
kbuild: reduce output spam when building out of tree
The execution of $(call cmd,makefile) will print 'GEN Makefile' on each
build, even if the Makefile is not effectively changed.
Use a filechk command instead, so a message is only printed on changes.
The Makefile is now created even if the build is aborted due to an
unclean working tree. That should not make a difference in practice.
Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
Reviewed-by: Nathan Chancellor <nathan@kernel.org>
Tested-by: Nathan Chancellor <nathan@kernel.org>
Link: https://patch.msgid.link/20260305-kbuild-makefile-spam-v1-1-910f6cf218a1@linutronix.de
Signed-off-by: Nicolas Schier <nsc@kernel.org>
Diffstat (limited to 'Makefile')
| -rw-r--r-- | Makefile | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/Makefile b/Makefile index 6b8e9fca2752d..a8d8ed711f9b3 100644 --- a/Makefile +++ b/Makefile @@ -675,14 +675,19 @@ print_env_for_makefile = \ echo "export KBUILD_OUTPUT = $(CURDIR)" endif -quiet_cmd_makefile = GEN Makefile - cmd_makefile = { \ +filechk_makefile = { \ echo "\# Automatically generated by $(abs_srctree)/Makefile: don't edit"; \ $(print_env_for_makefile); \ echo "include $(abs_srctree)/Makefile"; \ - } > Makefile + } -outputmakefile: +$(objtree)/Makefile: FORCE + $(call filechk,makefile) + +# Prevent $(srcroot)/Makefile from inhibiting the rule to run. +PHONY += $(objtree)/Makefile + +outputmakefile: $(objtree)/Makefile ifeq ($(KBUILD_EXTMOD),) @if [ -f $(srctree)/.config -o \ -d $(srctree)/include/config -o \ @@ -703,7 +708,6 @@ else fi endif $(Q)ln -fsn $(srcroot) source - $(call cmd,makefile) $(Q)test -e .gitignore || \ { echo "# this is build directory, ignore it"; echo "*"; } > .gitignore endif |
