Message ID | be0b069dde5b07b543498e274c3a9cc0c6e817c0.1505257614.git.shuahkh@osg.samsung.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 09/12/2017 05:52 PM, Shuah Khan wrote: > kselftest and kselftest-clean targets fail when object directory is > specified to relocate objects. Fix it so it can find the source tree > to build from. > > make O=/tmp/kselftest_top kselftest > > make[1]: Entering directory '/tmp/kselftest_top' > make[2]: Entering directory '/tmp/kselftest_top' > make[2]: *** tools/testing/selftests: No such file or directory. Stop. > make[2]: Leaving directory '/tmp/kselftest_top' > ./linux-kselftest/Makefile:1185: recipe for target > 'kselftest' failed > make[1]: *** [kselftest] Error 2 > make[1]: Leaving directory '/tmp/kselftest_top' > Makefile:145: recipe for target 'sub-make' failed > make: *** [sub-make] Error 2 > > Signed-off-by: Shuah Khan <shuahkh@osg.samsung.com> Hi Masahiro/Michal, Is it okay to take this patch via linux-kselftest git? If you are okay with that, please Ack it and I will plan to include this in my update. thanks, -- Shuah > --- > Makefile | 13 +++++++++---- > 1 file changed, 9 insertions(+), 4 deletions(-) > > diff --git a/Makefile b/Makefile > index eccb8d704c23..6a85322d0b3e 100644 > --- a/Makefile > +++ b/Makefile > @@ -1180,13 +1180,18 @@ headers_check: headers_install > # --------------------------------------------------------------------------- > # Kernel selftest > > +PHONY += __kselftest > + kselftest_src := tools/testing/selftests > + ifneq ($(KBUILD_SRC),) > + kselftest_src := $(KBUILD_SRC)/tools/testing/selftests > + endif > PHONY += kselftest > -kselftest: > - $(Q)$(MAKE) -C tools/testing/selftests run_tests > +kselftest: __kselftest > + $(Q)$(MAKE) -C $(kselftest_src) run_tests > > PHONY += kselftest-clean > -kselftest-clean: > - $(Q)$(MAKE) -C tools/testing/selftests clean > +kselftest-clean: __kselftest > + $(Q)$(MAKE) -C $(kselftest_src) clean > > PHONY += kselftest-merge > kselftest-merge: > -- To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
2017-09-19 8:14 GMT+09:00 Shuah Khan <shuahkh@osg.samsung.com>: > On 09/12/2017 05:52 PM, Shuah Khan wrote: >> kselftest and kselftest-clean targets fail when object directory is >> specified to relocate objects. Fix it so it can find the source tree >> to build from. >> >> make O=/tmp/kselftest_top kselftest >> >> make[1]: Entering directory '/tmp/kselftest_top' >> make[2]: Entering directory '/tmp/kselftest_top' >> make[2]: *** tools/testing/selftests: No such file or directory. Stop. >> make[2]: Leaving directory '/tmp/kselftest_top' >> ./linux-kselftest/Makefile:1185: recipe for target >> 'kselftest' failed >> make[1]: *** [kselftest] Error 2 >> make[1]: Leaving directory '/tmp/kselftest_top' >> Makefile:145: recipe for target 'sub-make' failed >> make: *** [sub-make] Error 2 >> >> Signed-off-by: Shuah Khan <shuahkh@osg.samsung.com> > > Hi Masahiro/Michal, > > Is it okay to take this patch via linux-kselftest git? If you are okay > with that, please Ack it and I will plan to include this in my update. > > thanks, > -- Shuah > > >> --- >> Makefile | 13 +++++++++---- >> 1 file changed, 9 insertions(+), 4 deletions(-) >> >> diff --git a/Makefile b/Makefile >> index eccb8d704c23..6a85322d0b3e 100644 >> --- a/Makefile >> +++ b/Makefile >> @@ -1180,13 +1180,18 @@ headers_check: headers_install >> # --------------------------------------------------------------------------- >> # Kernel selftest >> >> +PHONY += __kselftest >> + kselftest_src := tools/testing/selftests >> + ifneq ($(KBUILD_SRC),) >> + kselftest_src := $(KBUILD_SRC)/tools/testing/selftests >> + endif >> PHONY += kselftest >> -kselftest: >> - $(Q)$(MAKE) -C tools/testing/selftests run_tests >> +kselftest: __kselftest >> + $(Q)$(MAKE) -C $(kselftest_src) run_tests >> >> PHONY += kselftest-clean >> -kselftest-clean: >> - $(Q)$(MAKE) -C tools/testing/selftests clean >> +kselftest-clean: __kselftest >> + $(Q)$(MAKE) -C $(kselftest_src) clean >> >> PHONY += kselftest-merge >> kselftest-merge: >> > Why don't you simply add $(srctree)/ to tools/testing/selftests? Like, PHONY += kselftest kselftest: $(Q)$(MAKE) -C $(srctree)/tools/testing/selftests run_tests PHONY += kselftest-clean kselftest-clean: $(Q)$(MAKE) -C $(srctree)/tools/testing/selftests clean
On 09/19/2017 09:39 PM, Masahiro Yamada wrote: > 2017-09-19 8:14 GMT+09:00 Shuah Khan <shuahkh@osg.samsung.com>: >> On 09/12/2017 05:52 PM, Shuah Khan wrote: >>> kselftest and kselftest-clean targets fail when object directory is >>> specified to relocate objects. Fix it so it can find the source tree >>> to build from. >>> >>> make O=/tmp/kselftest_top kselftest >>> >>> make[1]: Entering directory '/tmp/kselftest_top' >>> make[2]: Entering directory '/tmp/kselftest_top' >>> make[2]: *** tools/testing/selftests: No such file or directory. Stop. >>> make[2]: Leaving directory '/tmp/kselftest_top' >>> ./linux-kselftest/Makefile:1185: recipe for target >>> 'kselftest' failed >>> make[1]: *** [kselftest] Error 2 >>> make[1]: Leaving directory '/tmp/kselftest_top' >>> Makefile:145: recipe for target 'sub-make' failed >>> make: *** [sub-make] Error 2 >>> >>> Signed-off-by: Shuah Khan <shuahkh@osg.samsung.com> >> >> Hi Masahiro/Michal, >> >> Is it okay to take this patch via linux-kselftest git? If you are okay >> with that, please Ack it and I will plan to include this in my update. >> >> thanks, >> -- Shuah >> >> >>> --- >>> Makefile | 13 +++++++++---- >>> 1 file changed, 9 insertions(+), 4 deletions(-) >>> >>> diff --git a/Makefile b/Makefile >>> index eccb8d704c23..6a85322d0b3e 100644 >>> --- a/Makefile >>> +++ b/Makefile >>> @@ -1180,13 +1180,18 @@ headers_check: headers_install >>> # --------------------------------------------------------------------------- >>> # Kernel selftest >>> >>> +PHONY += __kselftest >>> + kselftest_src := tools/testing/selftests >>> + ifneq ($(KBUILD_SRC),) >>> + kselftest_src := $(KBUILD_SRC)/tools/testing/selftests >>> + endif >>> PHONY += kselftest >>> -kselftest: >>> - $(Q)$(MAKE) -C tools/testing/selftests run_tests >>> +kselftest: __kselftest >>> + $(Q)$(MAKE) -C $(kselftest_src) run_tests >>> >>> PHONY += kselftest-clean >>> -kselftest-clean: >>> - $(Q)$(MAKE) -C tools/testing/selftests clean >>> +kselftest-clean: __kselftest >>> + $(Q)$(MAKE) -C $(kselftest_src) clean >>> >>> PHONY += kselftest-merge >>> kselftest-merge: >>> >> > > Why don't you simply add $(srctree)/ to tools/testing/selftests? > > Like, > > PHONY += kselftest > kselftest: > $(Q)$(MAKE) -C $(srctree)/tools/testing/selftests run_tests > > PHONY += kselftest-clean > kselftest-clean: > $(Q)$(MAKE) -C $(srctree)/tools/testing/selftests clean > > > I started with the simpler logic and decided to add explicit check for KBUILD_SRC due to isolate some error I was seeing from sub-make. Forgot to go back and revisit the simpler logic. Thanks for catching this. I am not seeing any issues with the simplified. Sending v2. Thanks for the review. -- Shuah -- To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/Makefile b/Makefile index eccb8d704c23..6a85322d0b3e 100644 --- a/Makefile +++ b/Makefile @@ -1180,13 +1180,18 @@ headers_check: headers_install # --------------------------------------------------------------------------- # Kernel selftest +PHONY += __kselftest + kselftest_src := tools/testing/selftests + ifneq ($(KBUILD_SRC),) + kselftest_src := $(KBUILD_SRC)/tools/testing/selftests + endif PHONY += kselftest -kselftest: - $(Q)$(MAKE) -C tools/testing/selftests run_tests +kselftest: __kselftest + $(Q)$(MAKE) -C $(kselftest_src) run_tests PHONY += kselftest-clean -kselftest-clean: - $(Q)$(MAKE) -C tools/testing/selftests clean +kselftest-clean: __kselftest + $(Q)$(MAKE) -C $(kselftest_src) clean PHONY += kselftest-merge kselftest-merge:
kselftest and kselftest-clean targets fail when object directory is specified to relocate objects. Fix it so it can find the source tree to build from. make O=/tmp/kselftest_top kselftest make[1]: Entering directory '/tmp/kselftest_top' make[2]: Entering directory '/tmp/kselftest_top' make[2]: *** tools/testing/selftests: No such file or directory. Stop. make[2]: Leaving directory '/tmp/kselftest_top' ./linux-kselftest/Makefile:1185: recipe for target 'kselftest' failed make[1]: *** [kselftest] Error 2 make[1]: Leaving directory '/tmp/kselftest_top' Makefile:145: recipe for target 'sub-make' failed make: *** [sub-make] Error 2 Signed-off-by: Shuah Khan <shuahkh@osg.samsung.com> --- Makefile | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-)