Re: [PATCH 00/13] perf tools: Move perf subcommand framework into lib/tools

From: Arnaldo Carvalho de Melo
Date: Tue Dec 08 2015 - 10:42:02 EST


Em Tue, Dec 08, 2015 at 12:29:15PM -0300, Arnaldo Carvalho de Melo escreveu:
> find: â/tmp/tmp.4iuuIJy0Ia/testsâ: No such file or directory
> make[4]: *** [tests-clean] Error 1
> make[4]: *** Waiting for unfinished jobs....
> make[3]: *** [clean] Error 2
> [acme@ssdandy linux]$

So, to reproduce:

[acme@zoo linux]$ rmdir /tmp/foo
[acme@zoo linux]$ mkdir /tmp/foo
[acme@zoo linux]$ make O=/tmp/foo -C tools/perf clean
make: Entering directory '/home/git/linux/tools/perf'
CLEAN libtraceevent
CLEAN libapi
CLEAN config
CLEAN libbpf
CLEAN feature
CLEAN tests
find: â/tmp/foo/testsâ: No such file or directory
Makefile.perf:592: recipe for target 'tests-clean' failed
make[1]: *** [tests-clean] Error 1
make[1]: *** Waiting for unfinished jobs....
Makefile:75: recipe for target 'clean' failed
make: *** [clean] Error 2
make: Leaving directory '/home/git/linux/tools/perf'
[acme@zoo linux]$

Then, applying the patch below, it works, Jiri, would this be the best way to
solve this? The RM call right after the find works because it uses 'rm -f', I think:


o linux]$ patch -p1 < /tmp/a.patch
patching file tools/perf/Makefile.perf
[acme@zoo linux]$ make O=/tmp/foo -C tools/perf clean
make: Entering directory '/home/git/linux/tools/perf'
CLEAN libapi
CLEAN libbpf
CLEAN libtraceevent
CLEAN config
CLEAN feature
CLEAN tests
CLEAN core-objs
CLEAN core-progs
CLEAN core-gen
SUBDIR Documentation
CLEAN Documentation
CLEAN python
make: Leaving directory '/home/git/linux/tools/perf'
[acme@zoo linux]$ mkdir /tmp/foo/tests/
[acme@zoo linux]$ touch /tmp/foo/tests/.a.cmd
[acme@zoo linux]$ make O=/tmp/foo -C tools/perf clean
make: Entering directory '/home/git/linux/tools/perf'
CLEAN libtraceevent
CLEAN libapi
CLEAN libbpf
CLEAN config
CLEAN feature
CLEAN tests
CLEAN core-objs
CLEAN core-progs
CLEAN core-gen
SUBDIR Documentation
CLEAN Documentation
CLEAN python
make: Leaving directory '/home/git/linux/tools/perf'
[acme@zoo linux]$ ls /tmp/foo/tests/
[acme@zoo linux]$

Regards,

- Arnaldo

diff --git a/tools/perf/Makefile.perf b/tools/perf/Makefile.perf
index 8b63dbdff197..331a0377da1f 100644
--- a/tools/perf/Makefile.perf
+++ b/tools/perf/Makefile.perf
@@ -590,7 +590,7 @@ feature-clean:

tests-clean:
$(call QUIET_CLEAN, tests)
- $(Q)find $(OUTPUT)tests -name '*.o' -delete -o -name '\.*.cmd' -delete
+ $(Q)$(test -d $(OUTPUT)tests && find $(OUTPUT)tests -name '*.o' -delete -o -name '\.*.cmd' -delete)
$(Q)$(RM) $(OUTPUT)tests/llvm-src-{base,kbuild,prologue}.c

clean: $(LIBTRACEEVENT)-clean $(LIBAPI)-clean $(LIBBPF)-clean config-clean feature-clean tests-clean
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/