aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf
diff options
context:
space:
mode:
authorJiri Olsa <jolsa@redhat.com>2013-03-15 11:28:49 -0400
committerArnaldo Carvalho de Melo <acme@redhat.com>2013-05-28 09:24:05 -0400
commit8bd407b962e39f34d5df08de8cd02d0f5add802b (patch)
treefd5b2ba2cc7495594a9d8efed8ed38f438aaf23c /tools/perf
parent095ae69b890c5b9cc87a3160b489a617554d9848 (diff)
perf tools: Move arch check into config/Makefile
Moving arch check into config/Makefile. Signed-off-by: Jiri Olsa <jolsa@redhat.com> Cc: Borislav Petkov <bp@alien8.de> Cc: Corey Ashford <cjashfor@linux.vnet.ibm.com> Cc: Frederic Weisbecker <fweisbec@gmail.com> Cc: Ingo Molnar <mingo@elte.hu> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Paul Mackerras <paulus@samba.org> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Sam Ravnborg <sam@ravnborg.org> Cc: Stephane Eranian <eranian@google.com> Link: http://lkml.kernel.org/r/1369398928-9809-3-git-send-email-jolsa@redhat.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf')
-rw-r--r--tools/perf/Makefile43
-rw-r--r--tools/perf/config/Makefile34
2 files changed, 48 insertions, 29 deletions
diff --git a/tools/perf/Makefile b/tools/perf/Makefile
index c8fb0fd9fd37..a4abdaf56401 100644
--- a/tools/perf/Makefile
+++ b/tools/perf/Makefile
@@ -55,37 +55,23 @@ include config/utilities.mak
55$(OUTPUT)PERF-VERSION-FILE: .FORCE-PERF-VERSION-FILE 55$(OUTPUT)PERF-VERSION-FILE: .FORCE-PERF-VERSION-FILE
56 @$(SHELL_PATH) util/PERF-VERSION-GEN $(OUTPUT) 56 @$(SHELL_PATH) util/PERF-VERSION-GEN $(OUTPUT)
57 57
58uname_M := $(shell uname -m 2>/dev/null || echo not)
59
60ARCH ?= $(shell echo $(uname_M) | sed -e s/i.86/i386/ -e s/sun4u/sparc64/ \
61 -e s/arm.*/arm/ -e s/sa110/arm/ \
62 -e s/s390x/s390/ -e s/parisc64/parisc/ \
63 -e s/ppc.*/powerpc/ -e s/mips.*/mips/ \
64 -e s/sh[234].*/sh/ -e s/aarch64.*/arm64/ )
65NO_PERF_REGS := 1
66
67CC = $(CROSS_COMPILE)gcc 58CC = $(CROSS_COMPILE)gcc
68AR = $(CROSS_COMPILE)ar 59AR = $(CROSS_COMPILE)ar
69 60
70# Additional ARCH settings for x86 61# include config/Makefile by default and rule out
71ifeq ($(ARCH),i386) 62# non-config cases
72 override ARCH := x86 63config := 1
73 NO_PERF_REGS := 0 64
74 LIBUNWIND_LIBS = -lunwind -lunwind-x86 65NON_CONFIG_TARGETS := clean TAGS tags cscope help
66
67ifdef MAKECMDGOALS
68ifeq ($(filter-out $(NON_CONFIG_TARGETS),$(MAKECMDGOALS)),)
69 config := 0
75endif 70endif
76ifeq ($(ARCH),x86_64) 71endif
77 override ARCH := x86 72
78 IS_X86_64 := 0 73ifeq ($(config),1)
79 ifeq (, $(findstring m32,$(EXTRA_CFLAGS))) 74include config/Makefile
80 IS_X86_64 := $(shell echo __x86_64__ | ${CC} -E -x c - | tail -n 1)
81 endif
82 ifeq (${IS_X86_64}, 1)
83 RAW_ARCH := x86_64
84 ARCH_CFLAGS := -DARCH_X86_64
85 ARCH_INCLUDE = ../../arch/x86/lib/memcpy_64.S ../../arch/x86/lib/memset_64.S
86 endif
87 NO_PERF_REGS := 0
88 LIBUNWIND_LIBS = -lunwind -lunwind-x86_64
89endif 75endif
90 76
91# Treat warnings as errors unless directed not to 77# Treat warnings as errors unless directed not to
@@ -208,7 +194,7 @@ ifneq ($(OUTPUT),)
208#$(info Determined 'OUTPUT' to be $(OUTPUT)) 194#$(info Determined 'OUTPUT' to be $(OUTPUT))
209endif 195endif
210 196
211BASIC_CFLAGS = \ 197BASIC_CFLAGS += \
212 -Iutil/include \ 198 -Iutil/include \
213 -Iarch/$(ARCH)/include \ 199 -Iarch/$(ARCH)/include \
214 $(if $(objtree),-I$(objtree)/arch/$(ARCH)/include/generated/uapi) \ 200 $(if $(objtree),-I$(objtree)/arch/$(ARCH)/include/generated/uapi) \
@@ -857,7 +843,6 @@ ifeq ($(NO_PERF_REGS),0)
857 ifeq ($(ARCH),x86) 843 ifeq ($(ARCH),x86)
858 LIB_H += arch/x86/include/perf_regs.h 844 LIB_H += arch/x86/include/perf_regs.h
859 endif 845 endif
860 BASIC_CFLAGS += -DHAVE_PERF_REGS
861endif 846endif
862 847
863ifndef NO_STRLCPY 848ifndef NO_STRLCPY
diff --git a/tools/perf/config/Makefile b/tools/perf/config/Makefile
new file mode 100644
index 000000000000..fe317c2745d8
--- /dev/null
+++ b/tools/perf/config/Makefile
@@ -0,0 +1,34 @@
1uname_M := $(shell uname -m 2>/dev/null || echo not)
2
3ARCH ?= $(shell echo $(uname_M) | sed -e s/i.86/i386/ -e s/sun4u/sparc64/ \
4 -e s/arm.*/arm/ -e s/sa110/arm/ \
5 -e s/s390x/s390/ -e s/parisc64/parisc/ \
6 -e s/ppc.*/powerpc/ -e s/mips.*/mips/ \
7 -e s/sh[234].*/sh/ -e s/aarch64.*/arm64/ )
8NO_PERF_REGS := 1
9
10# Additional ARCH settings for x86
11ifeq ($(ARCH),i386)
12 override ARCH := x86
13 NO_PERF_REGS := 0
14 LIBUNWIND_LIBS = -lunwind -lunwind-x86
15endif
16
17ifeq ($(ARCH),x86_64)
18 override ARCH := x86
19 IS_X86_64 := 0
20 ifeq (, $(findstring m32,$(EXTRA_CFLAGS)))
21 IS_X86_64 := $(shell echo __x86_64__ | ${CC} -E -x c - | tail -n 1)
22 endif
23 ifeq (${IS_X86_64}, 1)
24 RAW_ARCH := x86_64
25 ARCH_CFLAGS := -DARCH_X86_64
26 ARCH_INCLUDE = ../../arch/x86/lib/memcpy_64.S ../../arch/x86/lib/memset_64.S
27 endif
28 NO_PERF_REGS := 0
29 LIBUNWIND_LIBS = -lunwind -lunwind-x86_64
30endif
31
32ifeq ($(NO_PERF_REGS),0)
33 BASIC_CFLAGS += -DHAVE_PERF_REGS
34endif