* [PATCH v3]Perf: Fix Makefile to clean all object files
@ 2013-03-14 9:14 chenggang
2013-03-14 10:37 ` Namhyung Kim
0 siblings, 1 reply; 2+ messages in thread
From: chenggang @ 2013-03-14 9:14 UTC (permalink / raw)
To: linux-kernel
Cc: Chenggang Qin, David Ahern, Peter Zijlstra, Paul Mackerras,
Ingo Molnar, Arnaldo Carvalho de Melo, Arjan van de Ven,
Namhyung Kim, Yanmin Zhang, Wu Fengguang, Mike Galbraith,
Andrew Morton
From: Chenggang Qin <chenggang.qcg@taobao.com>
If we execute "make clean" in perf's directory, many object files cannot be
cleaned in the current version.
For example:
While we run "make clean" in perf's directory, and run the command:
"fine ./ -name "*.o""
we will get:
------------------------------------
./arch/x86/util/unwind.o
./arch/x86/util/header.o
./arch/x86/util/dwarf-regs.o
./util/scripting-engines/trace-event-python.o
./util/scripting-engines/trace-event-perl.o
./util/probe-finder.o
./util/dwarf-aux.o
./util/unwind.o
... ...
------------------------------------
These ".o" files are not cleaned.
The reason is:
These object files are added into "BUILTIN_OBJS" while "make" process check the environment.
If the make command is "clean", the environment check process is not executed. So,
these object files will not be added into "BUILTIN_OBJS" while we execute "make clean".
This patch fixed this problem.
We only add a command:
"find . -name "*.o" -exec rm -f {} \;"
Cc: David Ahern <dsahern@gmail.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
Cc: Arjan van de Ven <arjan@linux.intel.com>
Cc: Namhyung Kim <namhyung@gmail.com>
Cc: Yanmin Zhang <yanmin.zhang@intel.com>
Cc: Wu Fengguang <fengguang.wu@intel.com>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Chenggang Qin <chenggang.qcg@taobao.com>
---
tools/perf/Makefile | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/tools/perf/Makefile b/tools/perf/Makefile
index a2108ca..dec08ba 100644
--- a/tools/perf/Makefile
+++ b/tools/perf/Makefile
@@ -1174,6 +1174,7 @@ clean: $(LIBTRACEEVENT)-clean
$(RM) $(OUTPUT)util/*-bison*
$(RM) $(OUTPUT)util/*-flex*
$(python-clean)
+ $(FIND) . -name "*.o" -exec rm -f {} \;
.PHONY: all install clean strip $(LIBTRACEEVENT)
.PHONY: shell_compatibility_test please_set_SHELL_PATH_to_a_more_modern_shell
--
1.7.8.rc2.5.g815b
^ permalink raw reply [flat|nested] 2+ messages in thread* Re: [PATCH v3]Perf: Fix Makefile to clean all object files
2013-03-14 9:14 [PATCH v3]Perf: Fix Makefile to clean all object files chenggang
@ 2013-03-14 10:37 ` Namhyung Kim
0 siblings, 0 replies; 2+ messages in thread
From: Namhyung Kim @ 2013-03-14 10:37 UTC (permalink / raw)
To: chenggang
Cc: linux-kernel, Chenggang Qin, David Ahern, Peter Zijlstra,
Paul Mackerras, Ingo Molnar, Arnaldo Carvalho de Melo,
Arjan van de Ven, Yanmin Zhang, Wu Fengguang, Mike Galbraith,
Andrew Morton
Hi again,
On Thu, 14 Mar 2013 17:14:28 +0800, chenggang wrote:
> From: Chenggang Qin <chenggang.qcg@taobao.com>
>
> If we execute "make clean" in perf's directory, many object files cannot be
> cleaned in the current version.
> For example:
> While we run "make clean" in perf's directory, and run the command:
> "fine ./ -name "*.o""
> we will get:
> ------------------------------------
> ./arch/x86/util/unwind.o
> ./arch/x86/util/header.o
> ./arch/x86/util/dwarf-regs.o
> ./util/scripting-engines/trace-event-python.o
> ./util/scripting-engines/trace-event-perl.o
> ./util/probe-finder.o
> ./util/dwarf-aux.o
> ./util/unwind.o
> ... ...
> ------------------------------------
> These ".o" files are not cleaned.
>
> The reason is:
> These object files are added into "BUILTIN_OBJS" while "make" process check the environment.
> If the make command is "clean", the environment check process is not executed. So,
> these object files will not be added into "BUILTIN_OBJS" while we execute "make clean".
s/BUILTIN/LIB/g
>
> This patch fixed this problem.
> We only add a command:
> "find . -name "*.o" -exec rm -f {} \;"
I think the path should be $(OUTPUT) rather than ".". How about this?
find $(OUTPUT) -name "*.o" -delete
Thanks,
Namhyung
>
> Cc: David Ahern <dsahern@gmail.com>
> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
> Cc: Paul Mackerras <paulus@samba.org>
> Cc: Ingo Molnar <mingo@redhat.com>
> Cc: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
> Cc: Arjan van de Ven <arjan@linux.intel.com>
> Cc: Namhyung Kim <namhyung@gmail.com>
> Cc: Yanmin Zhang <yanmin.zhang@intel.com>
> Cc: Wu Fengguang <fengguang.wu@intel.com>
> Cc: Mike Galbraith <efault@gmx.de>
> Cc: Andrew Morton <akpm@linux-foundation.org>
> Signed-off-by: Chenggang Qin <chenggang.qcg@taobao.com>
>
> ---
> tools/perf/Makefile | 1 +
> 1 files changed, 1 insertions(+), 0 deletions(-)
>
> diff --git a/tools/perf/Makefile b/tools/perf/Makefile
> index a2108ca..dec08ba 100644
> --- a/tools/perf/Makefile
> +++ b/tools/perf/Makefile
> @@ -1174,6 +1174,7 @@ clean: $(LIBTRACEEVENT)-clean
> $(RM) $(OUTPUT)util/*-bison*
> $(RM) $(OUTPUT)util/*-flex*
> $(python-clean)
> + $(FIND) . -name "*.o" -exec rm -f {} \;
>
> .PHONY: all install clean strip $(LIBTRACEEVENT)
> .PHONY: shell_compatibility_test please_set_SHELL_PATH_to_a_more_modern_shell
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2013-03-14 11:00 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-03-14 9:14 [PATCH v3]Perf: Fix Makefile to clean all object files chenggang
2013-03-14 10:37 ` Namhyung Kim
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®