diff options
author | Ingo Molnar <mingo@kernel.org> | 2013-09-30 09:18:37 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2013-10-09 02:48:44 -0400 |
commit | 9734163b6ee1425c6fa4b65d7e6ce34c9079420d (patch) | |
tree | e6cc2150e60d3455e36be9ebbf55ac0f90a28636 | |
parent | 7181a6714efc5039ffb50db7462d5cefe15b5630 (diff) |
tools/perf/build: Split out feature check: 'libpython'
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: David Ahern <dsahern@gmail.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Link: http://lkml.kernel.org/n/tip-9wfutfb8ufFHrddrwlejqrai@git.kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
-rw-r--r-- | tools/perf/config/Makefile | 3 | ||||
-rw-r--r-- | tools/perf/config/feature-checks/Makefile | 18 | ||||
-rw-r--r-- | tools/perf/config/feature-checks/test-libpython.c | 7 |
3 files changed, 27 insertions, 1 deletions
diff --git a/tools/perf/config/Makefile b/tools/perf/config/Makefile index 8124dd55b05c..595c0e0dd139 100644 --- a/tools/perf/config/Makefile +++ b/tools/perf/config/Makefile | |||
@@ -119,6 +119,7 @@ FEATURE_TESTS = \ | |||
119 | gtk2 \ | 119 | gtk2 \ |
120 | gtk2-infobar \ | 120 | gtk2-infobar \ |
121 | libperl \ | 121 | libperl \ |
122 | libpython \ | ||
122 | libnuma | 123 | libnuma |
123 | 124 | ||
124 | $(foreach test,$(FEATURE_TESTS),$(call feature_check,$(test),$(test))) | 125 | $(foreach test,$(FEATURE_TESTS),$(call feature_check,$(test),$(test))) |
@@ -367,7 +368,7 @@ else | |||
367 | PYTHON_EMBED_CCOPTS := $(shell $(PYTHON_CONFIG_SQ) --cflags 2>/dev/null) | 368 | PYTHON_EMBED_CCOPTS := $(shell $(PYTHON_CONFIG_SQ) --cflags 2>/dev/null) |
368 | FLAGS_PYTHON_EMBED := $(PYTHON_EMBED_CCOPTS) $(PYTHON_EMBED_LDOPTS) | 369 | FLAGS_PYTHON_EMBED := $(PYTHON_EMBED_CCOPTS) $(PYTHON_EMBED_LDOPTS) |
369 | 370 | ||
370 | ifneq ($(call try-cc,$(SOURCE_PYTHON_EMBED),$(FLAGS_PYTHON_EMBED),python),y) | 371 | ifneq ($(feature-libpython), 1) |
371 | $(call disable-python,Python.h (for Python 2.x)) | 372 | $(call disable-python,Python.h (for Python 2.x)) |
372 | else | 373 | else |
373 | 374 | ||
diff --git a/tools/perf/config/feature-checks/Makefile b/tools/perf/config/feature-checks/Makefile index 3033c25f00b4..e7ed05aa5710 100644 --- a/tools/perf/config/feature-checks/Makefile +++ b/tools/perf/config/feature-checks/Makefile | |||
@@ -17,6 +17,7 @@ FILES= \ | |||
17 | test-gtk2 \ | 17 | test-gtk2 \ |
18 | test-gtk2-infobar \ | 18 | test-gtk2-infobar \ |
19 | test-libperl \ | 19 | test-libperl \ |
20 | test-libpython \ | ||
20 | test-libnuma | 21 | test-libnuma |
21 | 22 | ||
22 | CC := $(CC) -MD | 23 | CC := $(CC) -MD |
@@ -90,6 +91,23 @@ FLAGS_PERL_EMBED=$(PERL_EMBED_CCOPTS) $(PERL_EMBED_LDOPTS) | |||
90 | test-libperl: | 91 | test-libperl: |
91 | $(BUILD) $(FLAGS_PERL_EMBED) | 92 | $(BUILD) $(FLAGS_PERL_EMBED) |
92 | 93 | ||
94 | override PYTHON := python | ||
95 | override PYTHON_CONFIG := python-config | ||
96 | |||
97 | escape-for-shell-sq = $(subst ','\'',$(1)) | ||
98 | shell-sq = '$(escape-for-shell-sq)' | ||
99 | |||
100 | PYTHON_CONFIG_SQ = $(call shell-sq,$(PYTHON_CONFIG)) | ||
101 | |||
102 | PYTHON_EMBED_LDOPTS = $(shell $(PYTHON_CONFIG_SQ) --ldflags 2>/dev/null) | ||
103 | PYTHON_EMBED_LDFLAGS = $(call strip-libs,$(PYTHON_EMBED_LDOPTS)) | ||
104 | PYTHON_EMBED_LIBADD = $(call grep-libs,$(PYTHON_EMBED_LDOPTS)) | ||
105 | PYTHON_EMBED_CCOPTS = $(shell $(PYTHON_CONFIG_SQ) --cflags 2>/dev/null) | ||
106 | FLAGS_PYTHON_EMBED = $(PYTHON_EMBED_CCOPTS) $(PYTHON_EMBED_LDOPTS) | ||
107 | |||
108 | test-libpython: | ||
109 | $(BUILD) $(FLAGS_PYTHON_EMBED) | ||
110 | |||
93 | -include *.d */*.d | 111 | -include *.d */*.d |
94 | 112 | ||
95 | ############################### | 113 | ############################### |
diff --git a/tools/perf/config/feature-checks/test-libpython.c b/tools/perf/config/feature-checks/test-libpython.c new file mode 100644 index 000000000000..72267972fa98 --- /dev/null +++ b/tools/perf/config/feature-checks/test-libpython.c | |||
@@ -0,0 +1,7 @@ | |||
1 | #include <Python.h> | ||
2 | # | ||
3 | int main(void) | ||
4 | { | ||
5 | Py_Initialize(); | ||
6 | return 0; | ||
7 | } | ||