[PATCH] kbuild: suppress warnings for single builds of vmlinux.lds, *.a, etc.
From: Masahiro Yamada
Date: Sun Sep 25 2022 - 21:27:44 EST
vmlinux-deps is unneeded because the dependency can directly list
$(KBUILD_LDS) $(KBUILD_VMLINUX_OBJS) $(KBUILD_VMLINUX_LIBS)
Do not cancel the rule; building an individual vmlinux.lds, built-in.a,
or lib.a is working now, but the warning "overriding recipe for target"
is shown.
Without this patch:
$ make arch/x86/kernel/vmlinux.lds
Makefile:1798: warning: overriding recipe for target 'arch/x86/kernel/vmlinux.lds'
Makefile:1162: warning: ignoring old recipe for target 'arch/x86/kernel/vmlinux.lds'
[ snip ]
LDS arch/x86/kernel/vmlinux.lds
Signed-off-by: Masahiro Yamada <masahiroy@xxxxxxxxxx>
---
Makefile | 7 ++-----
1 file changed, 2 insertions(+), 5 deletions(-)
diff --git a/Makefile b/Makefile
index 244c07f1cc70..3e6974b4ebf2 100644
--- a/Makefile
+++ b/Makefile
@@ -1118,7 +1118,8 @@ endif
export KBUILD_VMLINUX_OBJS KBUILD_VMLINUX_LIBS
export KBUILD_LDS := arch/$(SRCARCH)/kernel/vmlinux.lds
-vmlinux-deps := $(KBUILD_LDS) $(KBUILD_VMLINUX_OBJS) $(KBUILD_VMLINUX_LIBS)
+# The actual objects are generated when descending.
+$(sort $(KBUILD_LDS) $(KBUILD_VMLINUX_OBJS) $(KBUILD_VMLINUX_LIBS)): .
# Recurse until adjust_autoksyms.sh is satisfied
PHONY += autoksyms_recursive
@@ -1157,10 +1158,6 @@ vmlinux: scripts/link-vmlinux.sh vmlinux.o $(KBUILD_LDS) FORCE
targets := vmlinux
-# The actual objects are generated when descending,
-# make sure no implicit rule kicks in
-$(sort $(vmlinux-deps)): . ;
-
filechk_kernel.release = \
echo "$(KERNELVERSION)$$($(CONFIG_SHELL) $(srctree)/scripts/setlocalversion $(srctree))"
--
2.34.1