Re: [PATCH v1] kbuild: fix sub directory output build of kselftests

From: Masahiro Yamada
Date: Mon Jun 27 2022 - 13:46:37 EST


On Tue, Jun 28, 2022 at 1:54 AM Shuah Khan <skhan@xxxxxxxxxxxxxxxxxxx> wrote:
>
> On 6/27/22 1:02 AM, Muhammad Usama Anjum wrote:
> > Build of kselftests fail if kernel's top most Makefile is used for
> > running or building kselftests with separate output directory which is
> > sub-directory. srctree is set to .. erroneously.
> >
> > make kselftest-all O=/linux_mainline/build
> > Makefile:1080: ../scripts/Makefile.extrawarn: No such file or directory
> >
> > make kselftest-all O=build
> > Makefile:1080: ../scripts/Makefile.extrawarn: No such file or directory
> >
> > Fix this by comparing abs_srctree with CURDIR instead of abs_objtree.
> > CURDIR changes based on from where the command has been run and it sets
> > the srctree correctly.
> >
> > Fixes: 25b146c5b8cee("kbuild: allow Kbuild to start from any directory")
> > Signed-off-by: Muhammad Usama Anjum <usama.anjum@xxxxxxxxxxxxx>
> > ---
> > Changes in V2:
> > - Correct the bugfix instead of workaround
> >
> > V1: https://lore.kernel.org/lkml/20220223191016.1658728-1-usama.anjum@xxxxxxxxxxxxx/
> > ---
> > Makefile | 4 ++--
> > 1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/Makefile b/Makefile
> > index e66358b64ede..4090d7afcda4 100644
> > --- a/Makefile
> > +++ b/Makefile
> > @@ -238,12 +238,12 @@ ifeq ($(need-sub-make),)
> > # so that IDEs/editors are able to understand relative filenames.
> > MAKEFLAGS += --no-print-directory
> >
> > -ifeq ($(abs_srctree),$(abs_objtree))
> > +ifeq ($(abs_srctree),$(CURDIR))
> > # building in the source tree
> > srctree := .
> > building_out_of_srctree :=
> > else
> > - ifeq ($(abs_srctree)/,$(dir $(abs_objtree)))
> > + ifeq ($(abs_srctree)/,$(dir $(CURDIR)))
> > # building in a subdirectory of the source tree
> > srctree := ..
> > else
> >
>
> Please resend cc'ing linux-kselftest
>
> thanks,
> -- Shuah


Please do not send this any more.
This part is good as is.





--
Best Regards
Masahiro Yamada