On Mon, Sep 26, 2022 at 10:27 AM Masahiro Yamada <masahiroy@xxxxxxxxxx> wrote: > > 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> > --- I take this back. After testing this, I noticed vmlinux was not correctly rebuilt. > > 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 > -- Best Regards Masahiro Yamada