1libperf-y += annotate.o 2libperf-y += block-range.o 3libperf-y += build-id.o 4libperf-y += config.o 5libperf-y += ctype.o 6libperf-y += db-export.o 7libperf-y += env.o 8libperf-y += event.o 9libperf-y += evlist.o 10libperf-y += evsel.o 11libperf-y += evsel_fprintf.o 12libperf-y += find_bit.o 13libperf-y += kallsyms.o 14libperf-y += levenshtein.o 15libperf-y += llvm-utils.o 16libperf-y += mmap.o 17libperf-y += memswap.o 18libperf-y += parse-events.o 19libperf-y += perf_regs.o 20libperf-y += path.o 21libperf-y += print_binary.o 22libperf-y += rbtree.o 23libperf-y += libstring.o 24libperf-y += bitmap.o 25libperf-y += hweight.o 26libperf-y += smt.o 27libperf-y += strbuf.o 28libperf-y += string.o 29libperf-y += strlist.o 30libperf-y += strfilter.o 31libperf-y += top.o 32libperf-y += usage.o 33libperf-y += dso.o 34libperf-y += symbol.o 35libperf-y += symbol_fprintf.o 36libperf-y += color.o 37libperf-y += metricgroup.o 38libperf-y += header.o 39libperf-y += callchain.o 40libperf-y += values.o 41libperf-y += debug.o 42libperf-y += machine.o 43libperf-y += map.o 44libperf-y += pstack.o 45libperf-y += session.o 46libperf-$(CONFIG_TRACE) += syscalltbl.o 47libperf-y += ordered-events.o 48libperf-y += namespaces.o 49libperf-y += comm.o 50libperf-y += thread.o 51libperf-y += thread_map.o 52libperf-y += trace-event-parse.o 53libperf-y += parse-events-flex.o 54libperf-y += parse-events-bison.o 55libperf-y += pmu.o 56libperf-y += pmu-flex.o 57libperf-y += pmu-bison.o 58libperf-y += trace-event-read.o 59libperf-y += trace-event-info.o 60libperf-y += trace-event-scripting.o 61libperf-y += trace-event.o 62libperf-y += svghelper.o 63libperf-y += sort.o 64libperf-y += hist.o 65libperf-y += util.o 66libperf-y += xyarray.o 67libperf-y += cpumap.o 68libperf-y += cgroup.o 69libperf-y += target.o 70libperf-y += rblist.o 71libperf-y += intlist.o 72libperf-y += vdso.o 73libperf-y += counts.o 74libperf-y += stat.o 75libperf-y += stat-shadow.o 76libperf-y += record.o 77libperf-y += srcline.o 78libperf-y += data.o 79libperf-y += tsc.o 80libperf-y += cloexec.o 81libperf-y += call-path.o 82libperf-y += rwsem.o 83libperf-y += thread-stack.o 84libperf-$(CONFIG_AUXTRACE) += auxtrace.o 85libperf-$(CONFIG_AUXTRACE) += intel-pt-decoder/ 86libperf-$(CONFIG_AUXTRACE) += intel-pt.o 87libperf-$(CONFIG_AUXTRACE) += intel-bts.o 88libperf-$(CONFIG_AUXTRACE) += arm-spe.o 89libperf-$(CONFIG_AUXTRACE) += arm-spe-pkt-decoder.o 90 91ifdef CONFIG_LIBOPENCSD 92libperf-$(CONFIG_AUXTRACE) += cs-etm.o 93libperf-$(CONFIG_AUXTRACE) += cs-etm-decoder/ 94endif 95 96libperf-y += parse-branch-options.o 97libperf-y += dump-insn.o 98libperf-y += parse-regs-options.o 99libperf-y += term.o 100libperf-y += help-unknown-cmd.o 101libperf-y += mem-events.o 102libperf-y += vsprintf.o 103libperf-y += drv_configs.o 104libperf-y += units.o 105libperf-y += time-utils.o 106libperf-y += expr-bison.o 107libperf-y += branch.o 108libperf-y += mem2node.o 109 110libperf-$(CONFIG_LIBBPF) += bpf-loader.o 111libperf-$(CONFIG_BPF_PROLOGUE) += bpf-prologue.o 112libperf-$(CONFIG_LIBELF) += symbol-elf.o 113libperf-$(CONFIG_LIBELF) += probe-file.o 114libperf-$(CONFIG_LIBELF) += probe-event.o 115 116ifndef CONFIG_LIBELF 117libperf-y += symbol-minimal.o 118endif 119 120ifndef CONFIG_SETNS 121libperf-y += setns.o 122endif 123 124libperf-$(CONFIG_DWARF) += probe-finder.o 125libperf-$(CONFIG_DWARF) += dwarf-aux.o 126libperf-$(CONFIG_DWARF) += dwarf-regs.o 127 128libperf-$(CONFIG_LIBDW_DWARF_UNWIND) += unwind-libdw.o 129libperf-$(CONFIG_LOCAL_LIBUNWIND) += unwind-libunwind-local.o 130libperf-$(CONFIG_LIBUNWIND) += unwind-libunwind.o 131libperf-$(CONFIG_LIBUNWIND_X86) += libunwind/x86_32.o 132libperf-$(CONFIG_LIBUNWIND_AARCH64) += libunwind/arm64.o 133 134libperf-$(CONFIG_LIBBABELTRACE) += data-convert-bt.o 135 136libperf-y += scripting-engines/ 137 138libperf-$(CONFIG_ZLIB) += zlib.o 139libperf-$(CONFIG_LZMA) += lzma.o 140libperf-y += demangle-java.o 141libperf-y += demangle-rust.o 142 143ifdef CONFIG_JITDUMP 144libperf-$(CONFIG_LIBELF) += jitdump.o 145libperf-$(CONFIG_LIBELF) += genelf.o 146libperf-$(CONFIG_DWARF) += genelf_debug.o 147endif 148 149libperf-y += perf-hooks.o 150 151libperf-$(CONFIG_CXX) += c++/ 152 153CFLAGS_config.o += -DETC_PERFCONFIG="BUILD_STR($(ETC_PERFCONFIG_SQ))" 154CFLAGS_llvm-utils.o += -DPERF_INCLUDE_DIR="BUILD_STR($(perf_include_dir_SQ))" 155 156# avoid compiler warnings in 32-bit mode 157CFLAGS_genelf_debug.o += -Wno-packed 158 159$(OUTPUT)util/parse-events-flex.c: util/parse-events.l $(OUTPUT)util/parse-events-bison.c 160 $(call rule_mkdir) 161 $(Q)$(call echo-cmd,flex)$(FLEX) -o $@ --header-file=$(OUTPUT)util/parse-events-flex.h $(PARSER_DEBUG_FLEX) util/parse-events.l 162 163$(OUTPUT)util/parse-events-bison.c: util/parse-events.y 164 $(call rule_mkdir) 165 $(Q)$(call echo-cmd,bison)$(BISON) -v util/parse-events.y -d $(PARSER_DEBUG_BISON) -o $@ -p parse_events_ 166 167$(OUTPUT)util/expr-bison.c: util/expr.y 168 $(call rule_mkdir) 169 $(Q)$(call echo-cmd,bison)$(BISON) -v util/expr.y -d $(PARSER_DEBUG_BISON) -o $@ -p expr__ 170 171$(OUTPUT)util/pmu-flex.c: util/pmu.l $(OUTPUT)util/pmu-bison.c 172 $(call rule_mkdir) 173 $(Q)$(call echo-cmd,flex)$(FLEX) -o $@ --header-file=$(OUTPUT)util/pmu-flex.h util/pmu.l 174 175$(OUTPUT)util/pmu-bison.c: util/pmu.y 176 $(call rule_mkdir) 177 $(Q)$(call echo-cmd,bison)$(BISON) -v util/pmu.y -d -o $@ -p perf_pmu_ 178 179CFLAGS_parse-events-flex.o += -w 180CFLAGS_pmu-flex.o += -w 181CFLAGS_parse-events-bison.o += -DYYENABLE_NLS=0 -w 182CFLAGS_pmu-bison.o += -DYYENABLE_NLS=0 -DYYLTYPE_IS_TRIVIAL=0 -w 183CFLAGS_expr-bison.o += -DYYENABLE_NLS=0 -DYYLTYPE_IS_TRIVIAL=0 -w 184 185$(OUTPUT)util/parse-events.o: $(OUTPUT)util/parse-events-flex.c $(OUTPUT)util/parse-events-bison.c 186$(OUTPUT)util/pmu.o: $(OUTPUT)util/pmu-flex.c $(OUTPUT)util/pmu-bison.c 187 188CFLAGS_bitmap.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ETC_PERFCONFIG_SQ))" 189CFLAGS_find_bit.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ETC_PERFCONFIG_SQ))" 190CFLAGS_rbtree.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ETC_PERFCONFIG_SQ))" 191CFLAGS_libstring.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ETC_PERFCONFIG_SQ))" 192CFLAGS_hweight.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ETC_PERFCONFIG_SQ))" 193CFLAGS_parse-events.o += -Wno-redundant-decls 194CFLAGS_header.o += -include $(OUTPUT)PERF-VERSION-FILE 195 196$(OUTPUT)util/kallsyms.o: ../lib/symbol/kallsyms.c FORCE 197 $(call rule_mkdir) 198 $(call if_changed_dep,cc_o_c) 199 200$(OUTPUT)util/bitmap.o: ../lib/bitmap.c FORCE 201 $(call rule_mkdir) 202 $(call if_changed_dep,cc_o_c) 203 204$(OUTPUT)util/find_bit.o: ../lib/find_bit.c FORCE 205 $(call rule_mkdir) 206 $(call if_changed_dep,cc_o_c) 207 208$(OUTPUT)util/rbtree.o: ../lib/rbtree.c FORCE 209 $(call rule_mkdir) 210 $(call if_changed_dep,cc_o_c) 211 212$(OUTPUT)util/libstring.o: ../lib/string.c FORCE 213 $(call rule_mkdir) 214 $(call if_changed_dep,cc_o_c) 215 216$(OUTPUT)util/hweight.o: ../lib/hweight.c FORCE 217 $(call rule_mkdir) 218 $(call if_changed_dep,cc_o_c) 219 220$(OUTPUT)util/vsprintf.o: ../lib/vsprintf.c FORCE 221 $(call rule_mkdir) 222 $(call if_changed_dep,cc_o_c) 223