Commit-ID: 12413057fa8b6f2993f573e6e83f843fc86d044c Gitweb: http://git.kernel.org/tip/12413057fa8b6f2993f573e6e83f843fc86d044c Author: Ingo Molnar <mingo@xxxxxxxxxx> AuthorDate: Thu, 14 Nov 2013 08:25:24 +0100 Committer: Ingo Molnar <mingo@xxxxxxxxxx> CommitDate: Thu, 14 Nov 2013 08:40:23 +0100 tools/perf/build: Fix feature-libunwind-debug-frame handling Set feature-libunwind-debug-frame. We don't want it in CORE_FEATURE_TESTS because it's not the generic case, but we need to set it in the !feature-libunwind case. Also, because x86 distributions typically don't have dwarf_find_debug_frame() unwinding method: test-libunwind-debug-frame.c:(.text+0x31): undefined reference to `_Ux86_64_dwarf_find_debug_frame' Restrict this new API to ARM for the time being. With this patch test-all.c works again, so repeat perf builds are fast again: comet:~/tip> perf stat --null --repeat 5 make -C tools/perf/ [...] 0,452899660 seconds time elapsed ( +- 0,11% ) While with before it was: comet:~/tip> perf stat --null --repeat 5 make -C tools/perf/ [...] 1,674001829 seconds time elapsed ( +- 0,16% ) Cc: Russell King <rmk@xxxxxxxxxxxxxxxx> Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> Cc: Arnaldo Carvalho de Melo <acme@xxxxxxxxxxxxx> Cc: Jiri Olsa <jolsa@xxxxxxxxxx> Cc: Jean Pihet <jean.pihet@xxxxxxxxxx> Cc: Will Deacon <will.deacon@xxxxxxx> Link: http://lkml.kernel.org/n/tip-scsoctqzmou3rpkixCHezy9e@xxxxxxxxxxxxxx Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx> --- tools/perf/config/Makefile | 10 ++++++++-- tools/perf/config/feature-checks/test-all.c | 4 ---- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/tools/perf/config/Makefile b/tools/perf/config/Makefile index f5905f2..a8abd0e 100644 --- a/tools/perf/config/Makefile +++ b/tools/perf/config/Makefile @@ -328,8 +328,14 @@ ifndef NO_LIBUNWIND msg := $(warning No libunwind found, disabling post unwind support. Please install libunwind-dev[el] >= 1.1); NO_LIBUNWIND := 1 else - ifneq ($(feature-libunwind-debug-frame), 1) - msg := $(warning No debug_frame support found in libunwind); + ifeq ($(ARCH),arm) + $(call feature_check,feature-libunwind-debug-frame) + ifneq ($(feature-libunwind-debug-frame), 1) + msg := $(warning No debug_frame support found in libunwind); + CFLAGS += -DNO_LIBUNWIND_DEBUG_FRAME + endif + else + # non-ARM has no dwarf_find_debug_frame() function: CFLAGS += -DNO_LIBUNWIND_DEBUG_FRAME endif endif diff --git a/tools/perf/config/feature-checks/test-all.c b/tools/perf/config/feature-checks/test-all.c index 799865b..59e7a70 100644 --- a/tools/perf/config/feature-checks/test-all.c +++ b/tools/perf/config/feature-checks/test-all.c @@ -49,10 +49,6 @@ # include "test-libunwind.c" #undef main -#define main main_test_libunwind_debug_frame -# include "test-libunwind-debug-frame.c" -#undef main - #define main main_test_libaudit # include "test-libaudit.c" #undef main -- To unsubscribe from this list: send the line "unsubscribe linux-tip-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html