Shuah Khan <shua...@osg.samsung.com> writes: > In commit a8ba798bc8ec ("selftests: enable O and KBUILD_OUTPUT"), added > support to generate compile targets in a user specified directory. OUTPUT > variable controls the location which is undefined when tests are built in > the test directory or with "make -C tools/testing/selftests/x86". > > make -C tools/testing/selftests/x86/ > make: Entering directory '/lkml/linux_4.11/tools/testing/selftests/x86' > Makefile:44: warning: overriding recipe for target 'clean' > ../lib.mk:51: warning: ignoring old recipe for target 'clean' > gcc -m64 -o /single_step_syscall_64 -O2 -g -std=gnu99 -pthread -Wall > single_step_syscall.c -lrt -ldl > /usr/bin/ld: cannot open output file /single_step_syscall_64: Permission > denied > collect2: error: ld returned 1 exit status > Makefile:50: recipe for target '/single_step_syscall_64' failed > make: *** [/single_step_syscall_64] Error 1 > make: Leaving directory '/lkml/linux_4.11/tools/testing/selftests/x86' > > Same failure with "cd tools/testing/selftests/x86/;make" run. > > Fix this with a change to lib.mk to define OUTPUT to be the pwd when > MAKELEVEL is 0. This covers both cases mentioned above. > > Reported-by: Ingo Molnar <mi...@kernel.org> > Signed-off-by: Shuah Khan <shua...@osg.samsung.com> > --- > tools/testing/selftests/lib.mk | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/tools/testing/selftests/lib.mk b/tools/testing/selftests/lib.mk > index ce96d80..775c589 100644 > --- a/tools/testing/selftests/lib.mk > +++ b/tools/testing/selftests/lib.mk > @@ -2,6 +2,10 @@ > # Makefile can operate with or without the kbuild infrastructure. > CC := $(CROSS_COMPILE)gcc > > +ifeq (0,$(MAKELEVEL)) > +OUTPUT := $(shell pwd) > +endif
I preferred my version which just used =? rather than checking MAKELEVEL, but I don't mind that much. Acked-by: Michael Ellerman <m...@ellerman.id.au> cheers