On 09/19/2017 09:39 PM, Masahiro Yamada wrote: > 2017-09-19 8:14 GMT+09:00 Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>: >> 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@xxxxxxxxxxxxxxx> >> >> 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@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html