Message ID | 20190806100323.22919-1-yamada.masahiro@socionext.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [1/3] kbuild: fix false-positive need-builtin | expand |
On Tue, Aug 6, 2019 at 7:03 PM Masahiro Yamada <yamada.masahiro@socionext.com> wrote: > > The current implementation of need-builtin is false-positive, > for example, in the following Makefile: > > obj-m := foo/ > obj-y := foo/bar/ > > ..., where foo/built-in.a is not required. > > Fixes: f7adc3124da0 ("kbuild: create built-in.o automatically if parent directory wants it") > Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> > --- Series, applied to linux-kbuild. > > scripts/Makefile.build | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/scripts/Makefile.build b/scripts/Makefile.build > index 0d434d0afc0b..3fe0c73e002c 100644 > --- a/scripts/Makefile.build > +++ b/scripts/Makefile.build > @@ -487,7 +487,8 @@ targets += $(call intermediate_targets, .asn1.o, .asn1.c .asn1.h) \ > > PHONY += $(subdir-ym) > $(subdir-ym): > - $(Q)$(MAKE) $(build)=$@ need-builtin=$(if $(findstring $@,$(subdir-obj-y)),1) > + $(Q)$(MAKE) $(build)=$@ \ > + need-builtin=$(if $(filter $@/built-in.a, $(subdir-obj-y)),1) > > # Add FORCE to the prequisites of a target to force it to be always rebuilt. > # --------------------------------------------------------------------------- > -- > 2.17.1 >
diff --git a/scripts/Makefile.build b/scripts/Makefile.build index 0d434d0afc0b..3fe0c73e002c 100644 --- a/scripts/Makefile.build +++ b/scripts/Makefile.build @@ -487,7 +487,8 @@ targets += $(call intermediate_targets, .asn1.o, .asn1.c .asn1.h) \ PHONY += $(subdir-ym) $(subdir-ym): - $(Q)$(MAKE) $(build)=$@ need-builtin=$(if $(findstring $@,$(subdir-obj-y)),1) + $(Q)$(MAKE) $(build)=$@ \ + need-builtin=$(if $(filter $@/built-in.a, $(subdir-obj-y)),1) # Add FORCE to the prequisites of a target to force it to be always rebuilt. # ---------------------------------------------------------------------------
The current implementation of need-builtin is false-positive, for example, in the following Makefile: obj-m := foo/ obj-y := foo/bar/ ..., where foo/built-in.a is not required. Fixes: f7adc3124da0 ("kbuild: create built-in.o automatically if parent directory wants it") Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> --- scripts/Makefile.build | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)