aboutsummaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorMark Rutland <mark.rutland@arm.com>2014-01-15 05:44:08 -0500
committerArnaldo Carvalho de Melo <acme@redhat.com>2014-01-15 13:15:05 -0500
commita8a5cd8b472ca20e5b8fa649c43b3756867322f8 (patch)
treee1fb04abcdba12be11b86729df2f8da1130eda60 /tools
parent8d0c2224ca6e04ba51c403805e7e1e2ca536520b (diff)
perf: tools: Fix cross building
Currently the feature-checks Makefile does not inherit $(CC), and calls cc rather than $(CROSS_COMPILE)gcc. Thus the feature checks invoke the native toolchain rather than the cross toolchain, and can identify features as available when they are not. This can break the build. Additionally the native pkg-config is always called as opposed to $(CROSS_COMPILE)pkg-config, so the wrong flags and paths may be passed to the cross compiler. This patch passes CROSS_COMPILE down to the feature-checks Makefile, and forces its use. Additionally pkg-config is replaced with $(CROSS_COMPILE)pkg-config via a new $(PKG_CONFIG) variable. This patch has been build tested on x86_64 and arm. Signed-off-by: Mark Rutland <mark.rutland@arm.com> Cc: Ingo Molnar <mingo@redhat.com> Cc: Jiri Olsa <jolsa@redhat.com> Cc: Will Deacon <will.deacon@arm.com> Link: http://lkml.kernel.org/r/1389782648-4417-4-git-send-email-mark.rutland@arm.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools')
-rw-r--r--tools/perf/Makefile.perf1
-rw-r--r--tools/perf/config/Makefile6
-rw-r--r--tools/perf/config/feature-checks/Makefile9
3 files changed, 9 insertions, 7 deletions
diff --git a/tools/perf/Makefile.perf b/tools/perf/Makefile.perf
index 87d7726cee2d..7257e7e9e38a 100644
--- a/tools/perf/Makefile.perf
+++ b/tools/perf/Makefile.perf
@@ -76,6 +76,7 @@ $(OUTPUT)PERF-VERSION-FILE: ../../.git/HEAD
76 76
77CC = $(CROSS_COMPILE)gcc 77CC = $(CROSS_COMPILE)gcc
78AR = $(CROSS_COMPILE)ar 78AR = $(CROSS_COMPILE)ar
79PKG_CONFIG = $(CROSS_COMPILE)pkg-config
79 80
80RM = rm -f 81RM = rm -f
81LN = ln -f 82LN = ln -f
diff --git a/tools/perf/config/Makefile b/tools/perf/config/Makefile
index 01dd43df0d04..d604e50fc167 100644
--- a/tools/perf/config/Makefile
+++ b/tools/perf/config/Makefile
@@ -372,7 +372,7 @@ ifndef NO_SLANG
372endif 372endif
373 373
374ifndef NO_GTK2 374ifndef NO_GTK2
375 FLAGS_GTK2=$(CFLAGS) $(LDFLAGS) $(EXTLIBS) $(shell pkg-config --libs --cflags gtk+-2.0 2>/dev/null) 375 FLAGS_GTK2=$(CFLAGS) $(LDFLAGS) $(EXTLIBS) $(shell $(PKG_CONFIG) --libs --cflags gtk+-2.0 2>/dev/null)
376 ifneq ($(feature-gtk2), 1) 376 ifneq ($(feature-gtk2), 1)
377 msg := $(warning GTK2 not found, disables GTK2 support. Please install gtk2-devel or libgtk2.0-dev); 377 msg := $(warning GTK2 not found, disables GTK2 support. Please install gtk2-devel or libgtk2.0-dev);
378 NO_GTK2 := 1 378 NO_GTK2 := 1
@@ -381,8 +381,8 @@ ifndef NO_GTK2
381 GTK_CFLAGS := -DHAVE_GTK_INFO_BAR_SUPPORT 381 GTK_CFLAGS := -DHAVE_GTK_INFO_BAR_SUPPORT
382 endif 382 endif
383 CFLAGS += -DHAVE_GTK2_SUPPORT 383 CFLAGS += -DHAVE_GTK2_SUPPORT
384 GTK_CFLAGS += $(shell pkg-config --cflags gtk+-2.0 2>/dev/null) 384 GTK_CFLAGS += $(shell $(PKG_CONFIG) --cflags gtk+-2.0 2>/dev/null)
385 GTK_LIBS := $(shell pkg-config --libs gtk+-2.0 2>/dev/null) 385 GTK_LIBS := $(shell $(PKG_CONFIG) --libs gtk+-2.0 2>/dev/null)
386 EXTLIBS += -ldl 386 EXTLIBS += -ldl
387 endif 387 endif
388endif 388endif
diff --git a/tools/perf/config/feature-checks/Makefile b/tools/perf/config/feature-checks/Makefile
index 7cf6fcdacebe..12e551346fa6 100644
--- a/tools/perf/config/feature-checks/Makefile
+++ b/tools/perf/config/feature-checks/Makefile
@@ -28,7 +28,8 @@ FILES= \
28 test-stackprotector-all.bin \ 28 test-stackprotector-all.bin \
29 test-timerfd.bin 29 test-timerfd.bin
30 30
31CC := $(CC) -MD 31CC := $(CROSS_COMPILE)gcc -MD
32PKG_CONFIG := $(CROSS_COMPILE)pkg-config
32 33
33all: $(FILES) 34all: $(FILES)
34 35
@@ -37,7 +38,7 @@ BUILD = $(CC) $(CFLAGS) -o $(OUTPUT)$@ $(patsubst %.bin,%.c,$@) $(LDFLAGS)
37############################### 38###############################
38 39
39test-all.bin: 40test-all.bin:
40 $(BUILD) -Werror -fstack-protector-all -O2 -Werror -D_FORTIFY_SOURCE=2 -ldw -lelf -lnuma -lelf -laudit -I/usr/include/slang -lslang $(shell pkg-config --libs --cflags gtk+-2.0 2>/dev/null) $(FLAGS_PERL_EMBED) $(FLAGS_PYTHON_EMBED) -DPACKAGE='"perf"' -lbfd -ldl 41 $(BUILD) -Werror -fstack-protector-all -O2 -Werror -D_FORTIFY_SOURCE=2 -ldw -lelf -lnuma -lelf -laudit -I/usr/include/slang -lslang $(shell $(PKG_CONFIG) --libs --cflags gtk+-2.0 2>/dev/null) $(FLAGS_PERL_EMBED) $(FLAGS_PYTHON_EMBED) -DPACKAGE='"perf"' -lbfd -ldl
41 42
42test-hello.bin: 43test-hello.bin:
43 $(BUILD) 44 $(BUILD)
@@ -82,10 +83,10 @@ test-libslang.bin:
82 $(BUILD) -I/usr/include/slang -lslang 83 $(BUILD) -I/usr/include/slang -lslang
83 84
84test-gtk2.bin: 85test-gtk2.bin:
85 $(BUILD) $(shell pkg-config --libs --cflags gtk+-2.0 2>/dev/null) 86 $(BUILD) $(shell $(PKG_CONFIG) --libs --cflags gtk+-2.0 2>/dev/null)
86 87
87test-gtk2-infobar.bin: 88test-gtk2-infobar.bin:
88 $(BUILD) $(shell pkg-config --libs --cflags gtk+-2.0 2>/dev/null) 89 $(BUILD) $(shell $(PKG_CONFIG) --libs --cflags gtk+-2.0 2>/dev/null)
89 90
90grep-libs = $(filter -l%,$(1)) 91grep-libs = $(filter -l%,$(1))
91strip-libs = $(filter-out -l%,$(1)) 92strip-libs = $(filter-out -l%,$(1))