aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tools/perf/Makefile16
-rw-r--r--tools/perf/config/feature-tests.mak11
-rw-r--r--tools/perf/perf.c2
3 files changed, 27 insertions, 2 deletions
diff --git a/tools/perf/Makefile b/tools/perf/Makefile
index 6958ba4f5dcb..e5e71e7d95a0 100644
--- a/tools/perf/Makefile
+++ b/tools/perf/Makefile
@@ -102,7 +102,7 @@ ifdef PARSER_DEBUG
102endif 102endif
103 103
104CFLAGS = -fno-omit-frame-pointer -ggdb3 -funwind-tables -Wall -Wextra -std=gnu99 $(CFLAGS_WERROR) $(CFLAGS_OPTIMIZE) $(EXTRA_WARNINGS) $(EXTRA_CFLAGS) $(PARSER_DEBUG_CFLAGS) 104CFLAGS = -fno-omit-frame-pointer -ggdb3 -funwind-tables -Wall -Wextra -std=gnu99 $(CFLAGS_WERROR) $(CFLAGS_OPTIMIZE) $(EXTRA_WARNINGS) $(EXTRA_CFLAGS) $(PARSER_DEBUG_CFLAGS)
105EXTLIBS = -lpthread -lrt -lelf -lm -laudit 105EXTLIBS = -lpthread -lrt -lelf -lm
106ALL_CFLAGS = $(CFLAGS) -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE 106ALL_CFLAGS = $(CFLAGS) -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE
107ALL_LDFLAGS = $(LDFLAGS) 107ALL_LDFLAGS = $(LDFLAGS)
108STRIP ?= strip 108STRIP ?= strip
@@ -442,7 +442,6 @@ BUILTIN_OBJS += $(OUTPUT)builtin-kmem.o
442BUILTIN_OBJS += $(OUTPUT)builtin-lock.o 442BUILTIN_OBJS += $(OUTPUT)builtin-lock.o
443BUILTIN_OBJS += $(OUTPUT)builtin-kvm.o 443BUILTIN_OBJS += $(OUTPUT)builtin-kvm.o
444BUILTIN_OBJS += $(OUTPUT)builtin-test.o 444BUILTIN_OBJS += $(OUTPUT)builtin-test.o
445BUILTIN_OBJS += $(OUTPUT)builtin-trace.o
446BUILTIN_OBJS += $(OUTPUT)builtin-inject.o 445BUILTIN_OBJS += $(OUTPUT)builtin-inject.o
447 446
448PERFLIBS = $(LIB_FILE) $(LIBTRACEEVENT) 447PERFLIBS = $(LIB_FILE) $(LIBTRACEEVENT)
@@ -560,6 +559,19 @@ else
560 LIB_OBJS += $(OUTPUT)util/unwind.o 559 LIB_OBJS += $(OUTPUT)util/unwind.o
561endif 560endif
562 561
562ifdef NO_LIBAUDIT
563 BASIC_CFLAGS += -DNO_LIBAUDIT_SUPPORT
564else
565 FLAGS_LIBAUDIT = $(ALL_CFLAGS) $(ALL_LDFLAGS) -laudit
566 ifneq ($(call try-cc,$(SOURCE_LIBAUDIT),$(FLAGS_LIBAUDIT)),y)
567 msg := $(warning No libaudit.h found, disables 'trace' tool, please install audit-libs-devel or libaudit-dev);
568 BASIC_CFLAGS += -DNO_LIBAUDIT_SUPPORT
569 else
570 BUILTIN_OBJS += $(OUTPUT)builtin-trace.o
571 EXTLIBS += -laudit
572 endif
573endif
574
563ifdef NO_NEWT 575ifdef NO_NEWT
564 BASIC_CFLAGS += -DNO_NEWT_SUPPORT 576 BASIC_CFLAGS += -DNO_NEWT_SUPPORT
565else 577else
diff --git a/tools/perf/config/feature-tests.mak b/tools/perf/config/feature-tests.mak
index 116690a669d2..4add41bb0c7e 100644
--- a/tools/perf/config/feature-tests.mak
+++ b/tools/perf/config/feature-tests.mak
@@ -193,3 +193,14 @@ int main(void)
193} 193}
194endef 194endef
195endif 195endif
196
197ifndef NO_LIBAUDIT
198define SOURCE_LIBAUDIT
199#include <libaudit.h>
200
201int main(void)
202{
203 return audit_open();
204}
205endef
206endif \ No newline at end of file
diff --git a/tools/perf/perf.c b/tools/perf/perf.c
index 3fb052c9a27f..fc2f770e3027 100644
--- a/tools/perf/perf.c
+++ b/tools/perf/perf.c
@@ -55,7 +55,9 @@ static struct cmd_struct commands[] = {
55 { "lock", cmd_lock, 0 }, 55 { "lock", cmd_lock, 0 },
56 { "kvm", cmd_kvm, 0 }, 56 { "kvm", cmd_kvm, 0 },
57 { "test", cmd_test, 0 }, 57 { "test", cmd_test, 0 },
58#ifndef NO_LIBAUDIT_SUPPORT
58 { "trace", cmd_trace, 0 }, 59 { "trace", cmd_trace, 0 },
60#endif
59 { "inject", cmd_inject, 0 }, 61 { "inject", cmd_inject, 0 },
60}; 62};
61 63