xref: /linux/tools/perf/Build (revision 390d5ea26622f794c2d29cefd5a01ef116b4fe1d)
1perf-bench-y += builtin-bench.o
2perf-y += builtin-annotate.o
3perf-y += builtin-check.o
4perf-y += builtin-config.o
5perf-y += builtin-diff.o
6perf-y += builtin-evlist.o
7perf-y += builtin-ftrace.o
8perf-y += builtin-help.o
9perf-y += builtin-buildid-list.o
10perf-y += builtin-buildid-cache.o
11perf-y += builtin-kallsyms.o
12perf-y += builtin-list.o
13perf-y += builtin-record.o
14perf-y += builtin-report.o
15perf-y += builtin-stat.o
16perf-y += builtin-top.o
17perf-y += builtin-script.o
18perf-y += builtin-kvm.o
19perf-y += builtin-inject.o
20perf-y += builtin-mem.o
21perf-y += builtin-data.o
22perf-y += builtin-version.o
23perf-y += builtin-c2c.o
24perf-y += builtin-daemon.o
25
26perf-$(CONFIG_LIBTRACEEVENT) += builtin-kmem.o
27perf-$(CONFIG_LIBTRACEEVENT) += builtin-kwork.o
28perf-$(CONFIG_LIBTRACEEVENT) += builtin-lock.o
29perf-$(CONFIG_LIBTRACEEVENT) += builtin-sched.o
30perf-$(CONFIG_LIBTRACEEVENT) += builtin-timechart.o
31
32ifeq ($(CONFIG_LIBTRACEEVENT),y)
33  perf-$(CONFIG_TRACE) += builtin-trace.o
34  perf-$(CONFIG_TRACE) += trace/beauty/
35endif
36
37perf-util-y += trace/beauty/
38
39perf-$(CONFIG_LIBELF) += builtin-probe.o
40
41perf-bench-y += bench/
42perf-test-y += tests/
43
44perf-y += perf.o
45
46paths += -DPERF_HTML_PATH="BUILD_STR($(htmldir_SQ))"
47paths += -DPERF_INFO_PATH="BUILD_STR($(infodir_SQ))"
48paths += -DPERF_MAN_PATH="BUILD_STR($(mandir_SQ))"
49
50CFLAGS_builtin-help.o      += $(paths)
51CFLAGS_builtin-timechart.o += $(paths)
52CFLAGS_perf.o              += -DPERF_HTML_PATH="BUILD_STR($(htmldir_SQ))"	\
53			      -DPERF_EXEC_PATH="BUILD_STR($(perfexecdir_SQ))"	\
54			      -DPREFIX="BUILD_STR($(prefix_SQ))"
55CFLAGS_builtin-trace.o	   += -DSTRACE_GROUPS_DIR="BUILD_STR($(STRACE_GROUPS_DIR_SQ))"
56CFLAGS_builtin-report.o	   += -DTIPDIR="BUILD_STR($(tipdir_SQ))"
57CFLAGS_builtin-report.o	   += -DDOCDIR="BUILD_STR($(srcdir_SQ)/Documentation)"
58
59perf-util-y += util/
60perf-util-y += arch/
61perf-y += arch/
62perf-test-y += arch/
63perf-ui-y += ui/
64perf-util-y += scripts/
65
66gtk-y += ui/gtk/
67
68ifdef SHELLCHECK
69  SHELL_TESTS := $(wildcard *.sh)
70  SHELL_TEST_LOGS := $(SHELL_TESTS:%=%.shellcheck_log)
71else
72  SHELL_TESTS :=
73  SHELL_TEST_LOGS :=
74endif
75
76$(OUTPUT)%.shellcheck_log: %
77	$(call rule_mkdir)
78	$(Q)$(call echo-cmd,test)$(SHELLCHECK) "$<" > $@ || (cat $@ && rm $@ && false)
79
80perf-y += $(SHELL_TEST_LOGS)
81
82ifdef MYPY
83  PY_TESTS := $(shell find python -type f -name '*.py')
84  MYPY_TEST_LOGS := $(PY_TESTS:python/%=python/%.mypy_log)
85else
86  MYPY_TEST_LOGS :=
87endif
88
89$(OUTPUT)%.mypy_log: %
90	$(call rule_mkdir)
91	$(Q)$(call echo-cmd,test)mypy "$<" > $@ || (cat $@ && rm $@ && false)
92
93perf-y += $(MYPY_TEST_LOGS)
94
95ifdef PYLINT
96  PY_TESTS := $(shell find python -type f -name '*.py')
97  PYLINT_TEST_LOGS := $(PY_TESTS:python/%=python/%.pylint_log)
98else
99  PYLINT_TEST_LOGS :=
100endif
101
102$(OUTPUT)%.pylint_log: %
103	$(call rule_mkdir)
104	$(Q)$(call echo-cmd,test)pylint "$<" > $@ || (cat $@ && rm $@ && false)
105
106perf-y += $(PYLINT_TEST_LOGS)
107