* [PATCH] perf tools: Fix build error on read only source.
@ 2010-08-16 12:40 Kusanagi Kouichi
2010-08-16 15:24 ` Arnaldo Carvalho de Melo
0 siblings, 1 reply; 6+ messages in thread
From: Kusanagi Kouichi @ 2010-08-16 12:40 UTC (permalink / raw)
To: Peter Zijlstra, Paul Mackerras, Ingo Molnar,
Arnaldo Carvalho de Melo
Cc: linux-kernel
Signed-off-by: Kusanagi Kouichi <slash@ac.auone-net.jp>
---
tools/perf/Makefile | 8 ++++----
tools/perf/feature-tests.mak | 6 ++----
2 files changed, 6 insertions(+), 8 deletions(-)
diff --git a/tools/perf/Makefile b/tools/perf/Makefile
index 41abb90..31b528f 100644
--- a/tools/perf/Makefile
+++ b/tools/perf/Makefile
@@ -935,15 +935,15 @@ $(OUTPUT)common-cmds.h: $(wildcard Documentation/perf-*.txt)
$(QUIET_GEN). util/generate-cmdlist.sh > $@+ && mv $@+ $@
$(patsubst %.sh,%,$(SCRIPT_SH)) : % : %.sh
- $(QUIET_GEN)$(RM) $@ $@+ && \
+ $(QUIET_GEN)$(RM) $(OUTPUT)$@ $(OUTPUT)$@+ && \
sed -e '1s|#!.*/sh|#!$(SHELL_PATH_SQ)|' \
-e 's|@SHELL_PATH@|$(SHELL_PATH_SQ)|' \
-e 's|@@PERL@@|$(PERL_PATH_SQ)|g' \
-e 's/@@PERF_VERSION@@/$(PERF_VERSION)/g' \
-e 's/@@NO_CURL@@/$(NO_CURL)/g' \
- $@.sh >$@+ && \
- chmod +x $@+ && \
- mv $@+ $(OUTPUT)$@
+ $@.sh > $(OUTPUT)$@+ && \
+ chmod +x $(OUTPUT)$@+ && \
+ mv $(OUTPUT)$@+ $(OUTPUT)$@
configure: configure.ac
$(QUIET_GEN)$(RM) $@ $<+ && \
diff --git a/tools/perf/feature-tests.mak b/tools/perf/feature-tests.mak
index ddb68e6..cd75798 100644
--- a/tools/perf/feature-tests.mak
+++ b/tools/perf/feature-tests.mak
@@ -113,7 +113,5 @@ endef
# try-cc
# Usage: option = $(call try-cc, source-to-build, cc-options)
try-cc = $(shell sh -c \
- 'TMP="$(TMPOUT).$$$$"; \
- echo "$(1)" | \
- $(CC) -x c - $(2) -o "$$TMP" > /dev/null 2>&1 && echo y; \
- rm -f "$$TMP"')
+ 'echo "$(1)" | \
+ $(CC) -x c - $(2) -o /dev/null > /dev/null 2>&1 && echo y')
--
1.7.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH] perf tools: Fix build error on read only source.
2010-08-16 12:40 [PATCH] perf tools: Fix build error on read only source Kusanagi Kouichi
@ 2010-08-16 15:24 ` Arnaldo Carvalho de Melo
2010-08-17 12:57 ` Kusanagi Kouichi
2010-08-17 14:08 ` Kusanagi Kouichi
0 siblings, 2 replies; 6+ messages in thread
From: Arnaldo Carvalho de Melo @ 2010-08-16 15:24 UTC (permalink / raw)
To: Kusanagi Kouichi
Cc: Peter Zijlstra, Paul Mackerras, Ingo Molnar, linux-kernel
Em Mon, Aug 16, 2010 at 09:40:13PM +0900, Kusanagi Kouichi escreveu:
...
> diff --git a/tools/perf/feature-tests.mak b/tools/perf/feature-tests.mak
> @@ -113,7 +113,5 @@ endef
> # try-cc
> # Usage: option = $(call try-cc, source-to-build, cc-options)
> try-cc = $(shell sh -c \
> - 'TMP="$(TMPOUT).$$$$"; \
> - echo "$(1)" | \
> - $(CC) -x c - $(2) -o "$$TMP" > /dev/null 2>&1 && echo y; \
> - rm -f "$$TMP"')
> + 'echo "$(1)" | \
> + $(CC) -x c - $(2) -o /dev/null > /dev/null 2>&1 && echo y')
Please read:
f9af3a4c1f59753bdd5a49e3a34263005f96972e
8b2c551f9635bf1c5c2d38de300137998915478f
1703f2c321a8a531c393e137a82602e16c6061cb
To see why we can't use '-o /dev/null' like that.
- Arnaldo
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] perf tools: Fix build error on read only source.
2010-08-16 15:24 ` Arnaldo Carvalho de Melo
@ 2010-08-17 12:57 ` Kusanagi Kouichi
2010-08-17 14:08 ` Kusanagi Kouichi
1 sibling, 0 replies; 6+ messages in thread
From: Kusanagi Kouichi @ 2010-08-17 12:57 UTC (permalink / raw)
To: Arnaldo Carvalho de Melo
Cc: Peter Zijlstra, Paul Mackerras, Ingo Molnar, linux-kernel
On 2010-08-16 12:24:10 -0300, Arnaldo Carvalho de Melo wrote:
> Em Mon, Aug 16, 2010 at 09:40:13PM +0900, Kusanagi Kouichi escreveu:
> ...
> > diff --git a/tools/perf/feature-tests.mak b/tools/perf/feature-tests.mak
> > @@ -113,7 +113,5 @@ endef
> > # try-cc
> > # Usage: option = $(call try-cc, source-to-build, cc-options)
> > try-cc = $(shell sh -c \
> > - 'TMP="$(TMPOUT).$$$$"; \
> > - echo "$(1)" | \
> > - $(CC) -x c - $(2) -o "$$TMP" > /dev/null 2>&1 && echo y; \
> > - rm -f "$$TMP"')
> > + 'echo "$(1)" | \
> > + $(CC) -x c - $(2) -o /dev/null > /dev/null 2>&1 && echo y')
>
> Please read:
>
> f9af3a4c1f59753bdd5a49e3a34263005f96972e
> 8b2c551f9635bf1c5c2d38de300137998915478f
> 1703f2c321a8a531c393e137a82602e16c6061cb
>
> To see why we can't use '-o /dev/null' like that.
>
> - Arnaldo
I see. I will try another way.
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH] perf tools: Fix build error on read only source.
2010-08-16 15:24 ` Arnaldo Carvalho de Melo
2010-08-17 12:57 ` Kusanagi Kouichi
@ 2010-08-17 14:08 ` Kusanagi Kouichi
2010-08-17 14:17 ` Arnaldo Carvalho de Melo
2010-08-19 11:22 ` [tip:perf/urgent] " tip-bot for Kusanagi Kouichi
1 sibling, 2 replies; 6+ messages in thread
From: Kusanagi Kouichi @ 2010-08-17 14:08 UTC (permalink / raw)
To: Arnaldo Carvalho de Melo
Cc: Peter Zijlstra, Paul Mackerras, Ingo Molnar, linux-kernel
Signed-off-by: Kusanagi Kouichi <slash@ac.auone-net.jp>
---
tools/perf/Makefile | 8 ++++----
tools/perf/feature-tests.mak | 2 +-
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/tools/perf/Makefile b/tools/perf/Makefile
index 41abb90..31b528f 100644
--- a/tools/perf/Makefile
+++ b/tools/perf/Makefile
@@ -935,15 +935,15 @@ $(OUTPUT)common-cmds.h: $(wildcard Documentation/perf-*.txt)
$(QUIET_GEN). util/generate-cmdlist.sh > $@+ && mv $@+ $@
$(patsubst %.sh,%,$(SCRIPT_SH)) : % : %.sh
- $(QUIET_GEN)$(RM) $@ $@+ && \
+ $(QUIET_GEN)$(RM) $(OUTPUT)$@ $(OUTPUT)$@+ && \
sed -e '1s|#!.*/sh|#!$(SHELL_PATH_SQ)|' \
-e 's|@SHELL_PATH@|$(SHELL_PATH_SQ)|' \
-e 's|@@PERL@@|$(PERL_PATH_SQ)|g' \
-e 's/@@PERF_VERSION@@/$(PERF_VERSION)/g' \
-e 's/@@NO_CURL@@/$(NO_CURL)/g' \
- $@.sh >$@+ && \
- chmod +x $@+ && \
- mv $@+ $(OUTPUT)$@
+ $@.sh > $(OUTPUT)$@+ && \
+ chmod +x $(OUTPUT)$@+ && \
+ mv $(OUTPUT)$@+ $(OUTPUT)$@
configure: configure.ac
$(QUIET_GEN)$(RM) $@ $<+ && \
diff --git a/tools/perf/feature-tests.mak b/tools/perf/feature-tests.mak
index ddb68e6..7a7b608 100644
--- a/tools/perf/feature-tests.mak
+++ b/tools/perf/feature-tests.mak
@@ -113,7 +113,7 @@ endef
# try-cc
# Usage: option = $(call try-cc, source-to-build, cc-options)
try-cc = $(shell sh -c \
- 'TMP="$(TMPOUT).$$$$"; \
+ 'TMP="$(OUTPUT)$(TMPOUT).$$$$"; \
echo "$(1)" | \
$(CC) -x c - $(2) -o "$$TMP" > /dev/null 2>&1 && echo y; \
rm -f "$$TMP"')
--
1.7.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH] perf tools: Fix build error on read only source.
2010-08-17 14:08 ` Kusanagi Kouichi
@ 2010-08-17 14:17 ` Arnaldo Carvalho de Melo
2010-08-19 11:22 ` [tip:perf/urgent] " tip-bot for Kusanagi Kouichi
1 sibling, 0 replies; 6+ messages in thread
From: Arnaldo Carvalho de Melo @ 2010-08-17 14:17 UTC (permalink / raw)
To: Kusanagi Kouichi
Cc: Peter Zijlstra, Paul Mackerras, Ingo Molnar, linux-kernel
Em Tue, Aug 17, 2010 at 11:08:40PM +0900, Kusanagi Kouichi escreveu:
> --- a/tools/perf/feature-tests.mak
> +++ b/tools/perf/feature-tests.mak
> @@ -113,7 +113,7 @@ endef
> # try-cc
> # Usage: option = $(call try-cc, source-to-build, cc-options)
> try-cc = $(shell sh -c \
> - 'TMP="$(TMPOUT).$$$$"; \
> + 'TMP="$(OUTPUT)$(TMPOUT).$$$$"; \
> echo "$(1)" | \
> $(CC) -x c - $(2) -o "$$TMP" > /dev/null 2>&1 && echo y; \
> rm -f "$$TMP"')
Much better! Will test and merge, thanks!
- Arnaldo
^ permalink raw reply [flat|nested] 6+ messages in thread
* [tip:perf/urgent] perf tools: Fix build error on read only source.
2010-08-17 14:08 ` Kusanagi Kouichi
2010-08-17 14:17 ` Arnaldo Carvalho de Melo
@ 2010-08-19 11:22 ` tip-bot for Kusanagi Kouichi
1 sibling, 0 replies; 6+ messages in thread
From: tip-bot for Kusanagi Kouichi @ 2010-08-19 11:22 UTC (permalink / raw)
To: linux-tip-commits
Cc: acme, linux-kernel, paulus, hpa, mingo, a.p.zijlstra, slash, tglx,
mingo
Commit-ID: ecafda60e88031bcc4271c446f984ee883d69ea8
Gitweb: http://git.kernel.org/tip/ecafda60e88031bcc4271c446f984ee883d69ea8
Author: Kusanagi Kouichi <slash@ac.auone-net.jp>
AuthorDate: Wed, 18 Aug 2010 13:32:37 -0300
Committer: Arnaldo Carvalho de Melo <acme@redhat.com>
CommitDate: Wed, 18 Aug 2010 13:32:37 -0300
perf tools: Fix build error on read only source.
Parts of the build process were generating files outside the specified
O= directory, causing the build to fail on systems where the sources are
in a read only file system.
Fix it by using $(OUTPUT) on these locations.
Also check that $(OUTPUT) actually exists, just like the top level
kernel Makefile does. Otherwise the failure message emitted is
completely misleading.
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Paul Mackerras <paulus@samba.org>
LKML-Reference: <20100817140841.0859362C03A@msa106.auone-net.jp>
Signed-off-by: Kusanagi Kouichi <slash@ac.auone-net.jp>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/Makefile | 14 ++++++++++----
tools/perf/feature-tests.mak | 2 +-
2 files changed, 11 insertions(+), 5 deletions(-)
diff --git a/tools/perf/Makefile b/tools/perf/Makefile
index dcb9700..4f1fa77 100644
--- a/tools/perf/Makefile
+++ b/tools/perf/Makefile
@@ -5,6 +5,12 @@ endif
# The default target of this Makefile is...
all::
+ifneq ($(OUTPUT),)
+# check that the output directory actually exists
+OUTDIR := $(shell cd $(OUTPUT) && /bin/pwd)
+$(if $(OUTDIR),, $(error output directory "$(OUTPUT)" does not exist))
+endif
+
# Define V=1 to have a more verbose compile.
# Define V=2 to have an even more verbose compile.
#
@@ -931,15 +937,15 @@ $(OUTPUT)common-cmds.h: $(wildcard Documentation/perf-*.txt)
$(QUIET_GEN). util/generate-cmdlist.sh > $@+ && mv $@+ $@
$(patsubst %.sh,%,$(SCRIPT_SH)) : % : %.sh
- $(QUIET_GEN)$(RM) $@ $@+ && \
+ $(QUIET_GEN)$(RM) $(OUTPUT)$@ $(OUTPUT)$@+ && \
sed -e '1s|#!.*/sh|#!$(SHELL_PATH_SQ)|' \
-e 's|@SHELL_PATH@|$(SHELL_PATH_SQ)|' \
-e 's|@@PERL@@|$(PERL_PATH_SQ)|g' \
-e 's/@@PERF_VERSION@@/$(PERF_VERSION)/g' \
-e 's/@@NO_CURL@@/$(NO_CURL)/g' \
- $@.sh >$@+ && \
- chmod +x $@+ && \
- mv $@+ $(OUTPUT)$@
+ $@.sh > $(OUTPUT)$@+ && \
+ chmod +x $(OUTPUT)$@+ && \
+ mv $(OUTPUT)$@+ $(OUTPUT)$@
configure: configure.ac
$(QUIET_GEN)$(RM) $@ $<+ && \
diff --git a/tools/perf/feature-tests.mak b/tools/perf/feature-tests.mak
index ddb68e6..7a7b608 100644
--- a/tools/perf/feature-tests.mak
+++ b/tools/perf/feature-tests.mak
@@ -113,7 +113,7 @@ endef
# try-cc
# Usage: option = $(call try-cc, source-to-build, cc-options)
try-cc = $(shell sh -c \
- 'TMP="$(TMPOUT).$$$$"; \
+ 'TMP="$(OUTPUT)$(TMPOUT).$$$$"; \
echo "$(1)" | \
$(CC) -x c - $(2) -o "$$TMP" > /dev/null 2>&1 && echo y; \
rm -f "$$TMP"')
^ permalink raw reply related [flat|nested] 6+ messages in thread
end of thread, other threads:[~2010-08-19 11:23 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-08-16 12:40 [PATCH] perf tools: Fix build error on read only source Kusanagi Kouichi
2010-08-16 15:24 ` Arnaldo Carvalho de Melo
2010-08-17 12:57 ` Kusanagi Kouichi
2010-08-17 14:08 ` Kusanagi Kouichi
2010-08-17 14:17 ` Arnaldo Carvalho de Melo
2010-08-19 11:22 ` [tip:perf/urgent] " tip-bot for Kusanagi Kouichi
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.