From: Arnaldo Carvalho de Melo <acme@infradead.org>
To: Namhyung Kim <namhyung@kernel.org>
Cc: Ingo Molnar <mingo@kernel.org>,
linux-kernel@vger.kernel.org, David Ahern <dsahern@gmail.com>,
Frederic Weisbecker <fweisbec@gmail.com>,
Jiri Olsa <jolsa@redhat.com>, Mike Galbraith <efault@gmx.de>,
Paul Mackerras <paulus@samba.org>,
Peter Zijlstra <peterz@infradead.org>,
Stephane Eranian <eranian@google.com>
Subject: Re: [PATCH 09/11] perf python: Link with libtraceevent
Date: Thu, 18 Oct 2012 11:38:35 -0300 [thread overview]
Message-ID: <20121018143835.GE2057@infradead.org> (raw)
In-Reply-To: <20121018140033.GC2057@infradead.org>
[-- Attachment #1: Type: text/plain, Size: 1139 bytes --]
Em Thu, Oct 18, 2012 at 11:00:33AM -0300, Arnaldo Carvalho de Melo escreveu:
> Em Thu, Oct 18, 2012 at 10:38:18AM +0900, Namhyung Kim escreveu:
> > On Wed, 17 Oct 2012 14:19:45 -0300, Arnaldo Carvalho de Melo wrote:
> > I got a build error after adding 'extern unsigned int page_size' to
> > util/python.c - please see my previous reply.
> >
> > namhyung@sejong:perf$ make
> > SUBDIR ../lib/traceevent/
> > LINK perf
> > GEN python/perf.so
> > gcc: error: python_ext_build/tmp//../../libtraceevent.a: No such file or directory
> > error: command 'gcc' failed with exit status 1
> > cp: cannot stat `python_ext_build/lib/perf.so': No such file or directory
> > make: *** [python/perf.so] Error 1
> > TRACE_EVENT_DIR = ../lib/traceevent/
> > ifneq ($(OUTPUT),)
> > TE_PATH=$(OUTPUT)
> > else
> > TE_PATH=$(TRACE_EVENT_DIR)
> > endif
> >
> > LIBTRACEEVENT = $(TE_PATH)libtraceevent.a
>
> I see, so we need to somehow propagate this TE_PATH variable to the setup.py file...
Can you try with the attached patch? I tested it here and works with:
make -C tools/perf
and with O=
- Arnaldo
[-- Attachment #2: python-libtraceevent.patch --]
[-- Type: text/plain, Size: 1890 bytes --]
diff --git a/tools/perf/Makefile b/tools/perf/Makefile
index f9126f8..c1c6e11 100644
--- a/tools/perf/Makefile
+++ b/tools/perf/Makefile
@@ -184,9 +184,22 @@ SCRIPT_SH += perf-archive.sh
grep-libs = $(filter -l%,$(1))
strip-libs = $(filter-out -l%,$(1))
+TRACE_EVENT_DIR = ../lib/traceevent/
+
+ifneq ($(OUTPUT),)
+ TE_PATH=$(OUTPUT)
+else
+ TE_PATH=$(TRACE_EVENT_DIR)
+endif
+
+LIBTRACEEVENT = $(TE_PATH)libtraceevent.a
+TE_LIB := -L$(TE_PATH) -ltraceevent
+
PYTHON_EXT_SRCS := $(shell grep -v ^\# util/python-ext-sources)
PYTHON_EXT_DEPS := util/python-ext-sources util/setup.py
+export LIBTRACEEVENT
+
$(OUTPUT)python/perf.so: $(PYTHON_EXT_SRCS) $(PYTHON_EXT_DEPS)
$(QUIET_GEN)CFLAGS='$(BASIC_CFLAGS)' $(PYTHON_WORD) util/setup.py \
--quiet build_ext; \
@@ -198,17 +211,6 @@ $(OUTPUT)python/perf.so: $(PYTHON_EXT_SRCS) $(PYTHON_EXT_DEPS)
SCRIPTS = $(patsubst %.sh,%,$(SCRIPT_SH))
-TRACE_EVENT_DIR = ../lib/traceevent/
-
-ifneq ($(OUTPUT),)
- TE_PATH=$(OUTPUT)
-else
- TE_PATH=$(TRACE_EVENT_DIR)
-endif
-
-LIBTRACEEVENT = $(TE_PATH)libtraceevent.a
-TE_LIB := -L$(TE_PATH) -ltraceevent
-
#
# Single 'perf' binary right now:
#
diff --git a/tools/perf/util/setup.py b/tools/perf/util/setup.py
index 09c3cea..73d5102 100644
--- a/tools/perf/util/setup.py
+++ b/tools/perf/util/setup.py
@@ -23,6 +23,7 @@ cflags += getenv('CFLAGS', '').split()
build_lib = getenv('PYTHON_EXTBUILD_LIB')
build_tmp = getenv('PYTHON_EXTBUILD_TMP')
+libtraceevent = getenv('LIBTRACEEVENT')
ext_sources = [f.strip() for f in file('util/python-ext-sources')
if len(f.strip()) > 0 and f[0] != '#']
@@ -31,7 +32,7 @@ perf = Extension('perf',
sources = ext_sources,
include_dirs = ['util/include'],
extra_compile_args = cflags,
- extra_objects = [build_tmp + '/../../libtraceevent.a'],
+ extra_objects = [libtraceevent],
)
setup(name='perf',
next prev parent reply other threads:[~2012-10-18 14:38 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-10-17 17:19 [GIT PULL 00/11] perf/urgent fixes Arnaldo Carvalho de Melo
2012-10-17 17:19 ` [PATCH 01/11] perf tool: Precise mode requires exclude_guest Arnaldo Carvalho de Melo
2012-10-17 17:19 ` [PATCH 02/11] perf: Require exclude_guest to use PEBS - kernel side enforcement Arnaldo Carvalho de Melo
2012-10-17 17:19 ` [PATCH 03/11] perf tools: Fix segfault when using srcline sort key Arnaldo Carvalho de Melo
2012-10-17 17:19 ` [PATCH 04/11] perf tools: Remove warnings on JIT samples for " Arnaldo Carvalho de Melo
2012-10-17 17:19 ` [PATCH 05/11] perf hists browser: Fix off-by-two bug on the first column Arnaldo Carvalho de Melo
2012-10-17 17:19 ` [PATCH 06/11] lib tools traceevent: Add back pevent assignment in __pevent_parse_format() Arnaldo Carvalho de Melo
2012-10-17 17:19 ` [PATCH 07/11] tools lib traceevent: Fix missed freeing of subargs in free_arg() in filter Arnaldo Carvalho de Melo
2012-10-17 17:19 ` [PATCH 08/11] perf python: Initialize 'page_size' variable Arnaldo Carvalho de Melo
2012-10-18 1:31 ` Namhyung Kim
2012-10-18 13:58 ` Arnaldo Carvalho de Melo
2012-10-17 17:19 ` [PATCH 09/11] perf python: Link with libtraceevent Arnaldo Carvalho de Melo
2012-10-18 1:38 ` Namhyung Kim
2012-10-18 14:00 ` Arnaldo Carvalho de Melo
2012-10-18 14:38 ` Arnaldo Carvalho de Melo [this message]
2012-10-18 15:40 ` Namhyung Kim
2012-10-20 0:35 ` Ingo Molnar
2012-10-20 15:04 ` Arnaldo Carvalho de Melo
2012-10-21 13:33 ` Ingo Molnar
2012-10-17 17:19 ` [PATCH 10/11] perf tools: Fix build on sparc Arnaldo Carvalho de Melo
2012-10-18 1:39 ` Namhyung Kim
2012-10-18 2:15 ` David Miller
2012-10-17 17:19 ` [PATCH 11/11] perf hists browser: Add back callchain folding symbol Arnaldo Carvalho de Melo
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20121018143835.GE2057@infradead.org \
--to=acme@infradead.org \
--cc=dsahern@gmail.com \
--cc=efault@gmx.de \
--cc=eranian@google.com \
--cc=fweisbec@gmail.com \
--cc=jolsa@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=namhyung@kernel.org \
--cc=paulus@samba.org \
--cc=peterz@infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome