Message ID | 20220627070214.432390-1-usama.anjum@collabora.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v1] kbuild: fix sub directory output build of kselftests | expand |
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@collabora.com> > --- > Changes in V2: > - Correct the bugfix instead of workaround > > V1: https://lore.kernel.org/lkml/20220223191016.1658728-1-usama.anjum@collabora.com/ > --- > 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
On Tue, Jun 28, 2022 at 1:54 AM Shuah Khan <skhan@linuxfoundation.org> 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@collabora.com> > > --- > > Changes in V2: > > - Correct the bugfix instead of workaround > > > > V1: https://lore.kernel.org/lkml/20220223191016.1658728-1-usama.anjum@collabora.com/ > > --- > > 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.
On 6/27/22 11:45 AM, Masahiro Yamada wrote: > On Tue, Jun 28, 2022 at 1:54 AM Shuah Khan <skhan@linuxfoundation.org> 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@collabora.com> >>> --- >>> Changes in V2: >>> - Correct the bugfix instead of workaround >>> >>> V1: https://lore.kernel.org/lkml/20220223191016.1658728-1-usama.anjum@collabora.com/ >>> --- >>> 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. > + linux-kselftest@vger.kernel.org The reason I suggested resending cc'ing linux-kselftest is because this fixes a kselftest problem. I am assuming this patch will go through kbuild Acked-by: Shuah Khan <skhan@linuxfoundation.org> thanks, -- Shuah
Hi Masahiro, >>> Please resend cc'ing linux-kselftest >>> >>> thanks, >>> -- Shuah >> >> >> Please do not send this any more. >> This part is good as is. I'm confused. Have you accepted or rejected the patch? >> > > + linux-kselftest@vger.kernel.org > > The reason I suggested resending cc'ing linux-kselftest is because > this fixes a kselftest problem. > > I am assuming this patch will go through kbuild > > Acked-by: Shuah Khan <skhan@linuxfoundation.org>
On Thu, Jun 30, 2022 at 6:44 PM Muhammad Usama Anjum <usama.anjum@collabora.com> wrote: > > Hi Masahiro, > > >>> Please resend cc'ing linux-kselftest > >>> > >>> thanks, > >>> -- Shuah > >> > >> > >> Please do not send this any more. > >> This part is good as is. > I'm confused. Have you accepted or rejected the patch? Sorry for confusion. Rejected. > > >> > > > > + linux-kselftest@vger.kernel.org > > > > The reason I suggested resending cc'ing linux-kselftest is because > > this fixes a kselftest problem. > > > > I am assuming this patch will go through kbuild > > > > Acked-by: Shuah Khan <skhan@linuxfoundation.org> > > > -- > Muhammad Usama Anjum
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
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@collabora.com> --- Changes in V2: - Correct the bugfix instead of workaround V1: https://lore.kernel.org/lkml/20220223191016.1658728-1-usama.anjum@collabora.com/ --- Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)