1878460e8SArnaldo Carvalho de Meloinclude $(srctree)/tools/scripts/Makefile.include 210c775afSIan Rogersinclude $(srctree)/tools/scripts/utilities.mak 310c775afSIan Rogers 4b9f6fbb3SAlexandre Truongperf-y += arm64-frame-pointer-unwind-support.o 5620be847SIan Rogersperf-y += addr_location.o 65ff32883SJiri Olsaperf-y += annotate.o 760414418SJin Yaoperf-y += block-info.o 85ff32883SJiri Olsaperf-y += block-range.o 95ff32883SJiri Olsaperf-y += build-id.o 1012500902SArnaldo Carvalho de Meloperf-y += cacheline.o 115ff32883SJiri Olsaperf-y += config.o 1232ff3fecSArnaldo Carvalho de Meloperf-y += copyfile.o 135ff32883SJiri Olsaperf-y += ctype.o 145ff32883SJiri Olsaperf-y += db-export.o 155ff32883SJiri Olsaperf-y += env.o 165ff32883SJiri Olsaperf-y += event.o 175ff32883SJiri Olsaperf-y += evlist.o 189a399944SArnaldo Carvalho de Meloperf-y += sideband_evlist.o 195ff32883SJiri Olsaperf-y += evsel.o 205ff32883SJiri Olsaperf-y += evsel_fprintf.o 21ca125277SArnaldo Carvalho de Meloperf-y += perf_event_attr_fprintf.o 228829e56fSArnaldo Carvalho de Meloperf-y += evswitch.o 235ff32883SJiri Olsaperf-y += find_bit.o 245ff32883SJiri Olsaperf-y += get_current_dir_name.o 255ff32883SJiri Olsaperf-y += levenshtein.o 265ff32883SJiri Olsaperf-y += mmap.o 275ff32883SJiri Olsaperf-y += memswap.o 285ff32883SJiri Olsaperf-y += parse-events.o 299b7c7728SIan Rogersperf-y += print-events.o 309b7c7728SIan Rogersperf-y += tracepoint.o 315ff32883SJiri Olsaperf-y += perf_regs.o 325000e7f6SLeo Yanperf-y += perf-regs-arch/ 335ff32883SJiri Olsaperf-y += path.o 345ff32883SJiri Olsaperf-y += print_binary.o 354975223bSArnaldo Carvalho de Meloperf-y += rlimit.o 369c10548cSArnaldo Carvalho de Meloperf-y += argv_split.o 375ff32883SJiri Olsaperf-y += rbtree.o 385ff32883SJiri Olsaperf-y += libstring.o 395ff32883SJiri Olsaperf-y += bitmap.o 405ff32883SJiri Olsaperf-y += hweight.o 415ff32883SJiri Olsaperf-y += smt.o 425ff32883SJiri Olsaperf-y += strbuf.o 435ff32883SJiri Olsaperf-y += string.o 445ff32883SJiri Olsaperf-y += strlist.o 455ff32883SJiri Olsaperf-y += strfilter.o 465ff32883SJiri Olsaperf-y += top.o 475ff32883SJiri Olsaperf-y += usage.o 485ff32883SJiri Olsaperf-y += dso.o 494a3cec84SArnaldo Carvalho de Meloperf-y += dsos.o 505ff32883SJiri Olsaperf-y += symbol.o 515ff32883SJiri Olsaperf-y += symbol_fprintf.o 52*56e144feSIan Rogersperf-y += map_symbol.o 535ff32883SJiri Olsaperf-y += color.o 545ff32883SJiri Olsaperf-y += color_config.o 555ff32883SJiri Olsaperf-y += metricgroup.o 565ff32883SJiri Olsaperf-y += header.o 575ff32883SJiri Olsaperf-y += callchain.o 585ff32883SJiri Olsaperf-y += values.o 595ff32883SJiri Olsaperf-y += debug.o 60d9664582SAndi Kleenperf-y += fncache.o 615ff32883SJiri Olsaperf-y += machine.o 625ff32883SJiri Olsaperf-y += map.o 639d31d18bSIan Rogersperf-y += maps.o 645ff32883SJiri Olsaperf-y += pstack.o 655ff32883SJiri Olsaperf-y += session.o 665ff32883SJiri Olsaperf-y += sample-raw.o 675ff32883SJiri Olsaperf-y += s390-sample-raw.o 68291dcb98SKim Phillipsperf-y += amd-sample-raw.o 695ff32883SJiri Olsaperf-$(CONFIG_TRACE) += syscalltbl.o 705ff32883SJiri Olsaperf-y += ordered-events.o 715ff32883SJiri Olsaperf-y += namespaces.o 725ff32883SJiri Olsaperf-y += comm.o 735ff32883SJiri Olsaperf-y += thread.o 745ff32883SJiri Olsaperf-y += thread_map.o 755ff32883SJiri Olsaperf-y += parse-events-flex.o 765ff32883SJiri Olsaperf-y += parse-events-bison.o 775ff32883SJiri Olsaperf-y += pmu.o 78336b92daSRavi Bangoriaperf-y += pmus.o 795ff32883SJiri Olsaperf-y += pmu-flex.o 805ff32883SJiri Olsaperf-y += pmu-bison.o 815ff32883SJiri Olsaperf-y += svghelper.o 82378ef0f5SIan Rogersperf-$(CONFIG_LIBTRACEEVENT) += trace-event-info.o 8380c3a7d9SAdrian Hunterperf-y += trace-event-scripting.o 84378ef0f5SIan Rogersperf-$(CONFIG_LIBTRACEEVENT) += trace-event.o 85378ef0f5SIan Rogersperf-$(CONFIG_LIBTRACEEVENT) += trace-event-parse.o 86378ef0f5SIan Rogersperf-$(CONFIG_LIBTRACEEVENT) += trace-event-read.o 875ff32883SJiri Olsaperf-y += sort.o 885ff32883SJiri Olsaperf-y += hist.o 895ff32883SJiri Olsaperf-y += util.o 905ff32883SJiri Olsaperf-y += cpumap.o 91267ed5d8SAndi Kleenperf-y += affinity.o 925135d5efSJiri Olsaperf-y += cputopo.o 935ff32883SJiri Olsaperf-y += cgroup.o 945ff32883SJiri Olsaperf-y += target.o 955ff32883SJiri Olsaperf-y += rblist.o 965ff32883SJiri Olsaperf-y += intlist.o 975ff32883SJiri Olsaperf-y += vdso.o 985ff32883SJiri Olsaperf-y += counts.o 995ff32883SJiri Olsaperf-y += stat.o 1005ff32883SJiri Olsaperf-y += stat-shadow.o 1015ff32883SJiri Olsaperf-y += stat-display.o 10240c7d246SArnaldo Carvalho de Meloperf-y += perf_api_probe.o 1035ff32883SJiri Olsaperf-y += record.o 1045ff32883SJiri Olsaperf-y += srcline.o 1055ff32883SJiri Olsaperf-y += srccode.o 106055c67edSArnaldo Carvalho de Meloperf-y += synthetic-events.o 1075ff32883SJiri Olsaperf-y += data.o 1085ff32883SJiri Olsaperf-y += tsc.o 1095ff32883SJiri Olsaperf-y += cloexec.o 1105ff32883SJiri Olsaperf-y += call-path.o 1115ff32883SJiri Olsaperf-y += rwsem.o 1125ff32883SJiri Olsaperf-y += thread-stack.o 113cebf7d51SJin Yaoperf-y += spark.o 114687986bbSKan Liangperf-y += topdown.o 115f07952b1SAlexander Antonovperf-y += iostat.o 116480accbbSJin Yaoperf-y += stream.o 1175ff32883SJiri Olsaperf-$(CONFIG_AUXTRACE) += auxtrace.o 1185ff32883SJiri Olsaperf-$(CONFIG_AUXTRACE) += intel-pt-decoder/ 1195ff32883SJiri Olsaperf-$(CONFIG_AUXTRACE) += intel-pt.o 1205ff32883SJiri Olsaperf-$(CONFIG_AUXTRACE) += intel-bts.o 1215ff32883SJiri Olsaperf-$(CONFIG_AUXTRACE) += arm-spe.o 1224db25f66STan Xiaojunperf-$(CONFIG_AUXTRACE) += arm-spe-decoder/ 1235e91e57eSQi Liuperf-$(CONFIG_AUXTRACE) += hisi-ptt.o 1245e91e57eSQi Liuperf-$(CONFIG_AUXTRACE) += hisi-ptt-decoder/ 1255ff32883SJiri Olsaperf-$(CONFIG_AUXTRACE) += s390-cpumsf.o 126440a23b3SMathieu Poirier 127440a23b3SMathieu Poirierifdef CONFIG_LIBOPENCSD 1285ff32883SJiri Olsaperf-$(CONFIG_AUXTRACE) += cs-etm.o 1295ff32883SJiri Olsaperf-$(CONFIG_AUXTRACE) += cs-etm-decoder/ 130440a23b3SMathieu Poirierendif 13155c1de99SJames Clarkperf-$(CONFIG_AUXTRACE) += cs-etm-base.o 132440a23b3SMathieu Poirier 1335ff32883SJiri Olsaperf-y += parse-branch-options.o 1345ff32883SJiri Olsaperf-y += dump-insn.o 1355ff32883SJiri Olsaperf-y += parse-regs-options.o 136a80abe2aSChangbin Duperf-y += parse-sublevel-options.o 1375ff32883SJiri Olsaperf-y += term.o 1385ff32883SJiri Olsaperf-y += help-unknown-cmd.o 139291961fcSAdrian Hunterperf-y += dlfilter.o 1405ff32883SJiri Olsaperf-y += mem-events.o 1415ff32883SJiri Olsaperf-y += vsprintf.o 1425ff32883SJiri Olsaperf-y += units.o 1435ff32883SJiri Olsaperf-y += time-utils.o 14426226a97SJiri Olsaperf-y += expr-flex.o 1455ff32883SJiri Olsaperf-y += expr-bison.o 146576a65b6SJiri Olsaperf-y += expr.o 1475ff32883SJiri Olsaperf-y += branch.o 1485ff32883SJiri Olsaperf-y += mem2node.o 1496953beb4SJiri Olsaperf-y += clockid.o 15092ec3cc9SIan Rogersperf-y += list_sort.o 151e57d8977SPavithra Gurushankarperf-y += mutex.o 1520650b2b2SIan Rogersperf-y += sharded_mutex.o 1539352aabaSJiri Olsa 154d19f8564SArnaldo Carvalho de Meloperf-$(CONFIG_LIBBPF) += bpf_map.o 155fa853c4bSSong Liuperf-$(CONFIG_PERF_BPF_SKEL) += bpf_counter.o 156944138f0SNamhyung Kimperf-$(CONFIG_PERF_BPF_SKEL) += bpf_counter_cgroup.o 157177f4eacSNamhyung Kimperf-$(CONFIG_PERF_BPF_SKEL) += bpf_ftrace.o 158edc41a10SNamhyung Kimperf-$(CONFIG_PERF_BPF_SKEL) += bpf_off_cpu.o 159990a71e9SNamhyung Kimperf-$(CONFIG_PERF_BPF_SKEL) += bpf-filter.o 160990a71e9SNamhyung Kimperf-$(CONFIG_PERF_BPF_SKEL) += bpf-filter-flex.o 161990a71e9SNamhyung Kimperf-$(CONFIG_PERF_BPF_SKEL) += bpf-filter-bison.o 16216cad1d3SNamhyung Kim 16316cad1d3SNamhyung Kimifeq ($(CONFIG_LIBTRACEEVENT),y) 164407b36f6SNamhyung Kim perf-$(CONFIG_PERF_BPF_SKEL) += bpf_lock_contention.o 16516cad1d3SNamhyung Kimendif 166378ef0f5SIan Rogers 167378ef0f5SIan Rogersifeq ($(CONFIG_LIBTRACEEVENT),y) 168378ef0f5SIan Rogers perf-$(CONFIG_PERF_BPF_SKEL) += bpf_kwork.o 1698c984209SYang Jihong perf-$(CONFIG_PERF_BPF_SKEL) += bpf_kwork_top.o 170378ef0f5SIan Rogersendif 171378ef0f5SIan Rogers 1725ff32883SJiri Olsaperf-$(CONFIG_LIBELF) += symbol-elf.o 1735ff32883SJiri Olsaperf-$(CONFIG_LIBELF) += probe-file.o 1745ff32883SJiri Olsaperf-$(CONFIG_LIBELF) += probe-event.o 175709e6791SJiri Olsa 176ad1237c3SJiri Olsaifdef CONFIG_LIBBPF_DYNAMIC 177ad1237c3SJiri Olsa hashmap := 1 178ad1237c3SJiri Olsaendif 179eee19501SIan Rogersifndef CONFIG_LIBBPF 180ad1237c3SJiri Olsa hashmap := 1 181ad1237c3SJiri Olsaendif 182ad1237c3SJiri Olsa 183ad1237c3SJiri Olsaifdef hashmap 184eee19501SIan Rogersperf-y += hashmap.o 185eee19501SIan Rogersendif 186eee19501SIan Rogers 187709e6791SJiri Olsaifndef CONFIG_LIBELF 1885ff32883SJiri Olsaperf-y += symbol-minimal.o 189709e6791SJiri Olsaendif 190709e6791SJiri Olsa 19186bcdb5aSArnaldo Carvalho de Meloifndef CONFIG_SETNS 1925ff32883SJiri Olsaperf-y += setns.o 19386bcdb5aSArnaldo Carvalho de Meloendif 19486bcdb5aSArnaldo Carvalho de Melo 1955ff32883SJiri Olsaperf-$(CONFIG_DWARF) += probe-finder.o 1965ff32883SJiri Olsaperf-$(CONFIG_DWARF) += dwarf-aux.o 1975ff32883SJiri Olsaperf-$(CONFIG_DWARF) += dwarf-regs.o 1988379fce4SJiri Olsa 1995ff32883SJiri Olsaperf-$(CONFIG_LIBDW_DWARF_UNWIND) += unwind-libdw.o 2005ff32883SJiri Olsaperf-$(CONFIG_LOCAL_LIBUNWIND) += unwind-libunwind-local.o 2015ff32883SJiri Olsaperf-$(CONFIG_LIBUNWIND) += unwind-libunwind.o 2025ff32883SJiri Olsaperf-$(CONFIG_LIBUNWIND_X86) += libunwind/x86_32.o 2035ff32883SJiri Olsaperf-$(CONFIG_LIBUNWIND_AARCH64) += libunwind/arm64.o 204b2e45c32SJiri Olsa 205378ef0f5SIan Rogersifeq ($(CONFIG_LIBTRACEEVENT),y) 2065ff32883SJiri Olsa perf-$(CONFIG_LIBBABELTRACE) += data-convert-bt.o 207378ef0f5SIan Rogersendif 208378ef0f5SIan Rogers 209d0713d4cSNicholas Fraserperf-y += data-convert-json.o 210edbe9817SJiri Olsa 2115ff32883SJiri Olsaperf-y += scripting-engines/ 212c7355f84SJiri Olsa 2135ff32883SJiri Olsaperf-$(CONFIG_ZLIB) += zlib.o 2145ff32883SJiri Olsaperf-$(CONFIG_LZMA) += lzma.o 215f24c1d75SAlexey Budankovperf-$(CONFIG_ZSTD) += zstd.o 216f24c1d75SAlexey Budankov 217c22e150eSIgor Lubashevperf-$(CONFIG_LIBCAP) += cap.o 218c22e150eSIgor Lubashev 21965cd8e55SIan Rogersperf-$(CONFIG_CXX_DEMANGLE) += demangle-cxx.o 220cef7af25SFabian Hemmerperf-y += demangle-ocaml.o 2215ff32883SJiri Olsaperf-y += demangle-java.o 2225ff32883SJiri Olsaperf-y += demangle-rust.o 22346dad054SArnaldo Carvalho de Melo 224e12b202fSJiri Olsaifdef CONFIG_JITDUMP 2255ff32883SJiri Olsaperf-$(CONFIG_LIBELF) += jitdump.o 2265ff32883SJiri Olsaperf-$(CONFIG_LIBELF) += genelf.o 2275ff32883SJiri Olsaperf-$(CONFIG_DWARF) += genelf_debug.o 22846dad054SArnaldo Carvalho de Meloendif 2293bc3374cSJiri Olsa 2305ff32883SJiri Olsaperf-y += perf-hooks.o 231a074865eSWang Nan 2325ff32883SJiri Olsaperf-$(CONFIG_LIBBPF) += bpf-event.o 2336ac22d03SDave Marchevskyperf-$(CONFIG_LIBBPF) += bpf-utils.o 23445178a92SSong Liu 23570943490SStephane Eranianperf-$(CONFIG_LIBPFM4) += pfm.o 23670943490SStephane Eranian 2379352aabaSJiri OlsaCFLAGS_config.o += -DETC_PERFCONFIG="BUILD_STR($(ETC_PERFCONFIG_SQ))" 2381b16fffaSArnaldo Carvalho de Melo 239598b7c69SStephane Eranian# avoid compiler warnings in 32-bit mode 240598b7c69SStephane EranianCFLAGS_genelf_debug.o += -Wno-packed 2419352aabaSJiri Olsa 2424b971df9SIan Rogers$(OUTPUT)util/parse-events-flex.c $(OUTPUT)util/parse-events-flex.h: util/parse-events.l $(OUTPUT)util/parse-events-bison.c 2431999307bSJiri Olsa $(call rule_mkdir) 2444b971df9SIan Rogers $(Q)$(call echo-cmd,flex)$(FLEX) -o $(OUTPUT)util/parse-events-flex.c \ 2454b971df9SIan Rogers --header-file=$(OUTPUT)util/parse-events-flex.h $(PARSER_DEBUG_FLEX) $< 2469352aabaSJiri Olsa 247ef9894d9SIan Rogers$(OUTPUT)util/parse-events-bison.c $(OUTPUT)util/parse-events-bison.h: util/parse-events.y 2481999307bSJiri Olsa $(call rule_mkdir) 2499462e4deSIan Rogers $(Q)$(call echo-cmd,bison)$(BISON) -v $< -d $(PARSER_DEBUG_BISON) $(BISON_FILE_PREFIX_MAP) $(BISON_FALLBACK_FLAGS) \ 250ef9894d9SIan Rogers -o $(OUTPUT)util/parse-events-bison.c -p parse_events_ 2519352aabaSJiri Olsa 2524b971df9SIan Rogers$(OUTPUT)util/expr-flex.c $(OUTPUT)util/expr-flex.h: util/expr.l $(OUTPUT)util/expr-bison.c 25326226a97SJiri Olsa $(call rule_mkdir) 2544b971df9SIan Rogers $(Q)$(call echo-cmd,flex)$(FLEX) -o $(OUTPUT)util/expr-flex.c \ 2554b971df9SIan Rogers --header-file=$(OUTPUT)util/expr-flex.h $(PARSER_DEBUG_FLEX) $< 25626226a97SJiri Olsa 257ef9894d9SIan Rogers$(OUTPUT)util/expr-bison.c $(OUTPUT)util/expr-bison.h: util/expr.y 25807516736SAndi Kleen $(call rule_mkdir) 2596793672aSDenys Zagorui $(Q)$(call echo-cmd,bison)$(BISON) -v $< -d $(PARSER_DEBUG_BISON) $(BISON_FILE_PREFIX_MAP) \ 260ef9894d9SIan Rogers -o $(OUTPUT)util/expr-bison.c -p expr_ 26107516736SAndi Kleen 2624b971df9SIan Rogers$(OUTPUT)util/pmu-flex.c $(OUTPUT)util/pmu-flex.h: util/pmu.l $(OUTPUT)util/pmu-bison.c 2631999307bSJiri Olsa $(call rule_mkdir) 2644b971df9SIan Rogers $(Q)$(call echo-cmd,flex)$(FLEX) -o $(OUTPUT)util/pmu-flex.c \ 2654b971df9SIan Rogers --header-file=$(OUTPUT)util/pmu-flex.h $(PARSER_DEBUG_FLEX) $< 2669352aabaSJiri Olsa 267ef9894d9SIan Rogers$(OUTPUT)util/pmu-bison.c $(OUTPUT)util/pmu-bison.h: util/pmu.y 2681999307bSJiri Olsa $(call rule_mkdir) 2696793672aSDenys Zagorui $(Q)$(call echo-cmd,bison)$(BISON) -v $< -d $(PARSER_DEBUG_BISON) $(BISON_FILE_PREFIX_MAP) \ 270ef9894d9SIan Rogers -o $(OUTPUT)util/pmu-bison.c -p perf_pmu_ 2719352aabaSJiri Olsa 272990a71e9SNamhyung Kim$(OUTPUT)util/bpf-filter-flex.c $(OUTPUT)util/bpf-filter-flex.h: util/bpf-filter.l $(OUTPUT)util/bpf-filter-bison.c 273990a71e9SNamhyung Kim $(call rule_mkdir) 274990a71e9SNamhyung Kim $(Q)$(call echo-cmd,flex)$(FLEX) -o $(OUTPUT)util/bpf-filter-flex.c \ 275990a71e9SNamhyung Kim --header-file=$(OUTPUT)util/bpf-filter-flex.h $(PARSER_DEBUG_FLEX) $< 276990a71e9SNamhyung Kim 277990a71e9SNamhyung Kim$(OUTPUT)util/bpf-filter-bison.c $(OUTPUT)util/bpf-filter-bison.h: util/bpf-filter.y 278990a71e9SNamhyung Kim $(call rule_mkdir) 279990a71e9SNamhyung Kim $(Q)$(call echo-cmd,bison)$(BISON) -v $< -d $(PARSER_DEBUG_BISON) $(BISON_FILE_PREFIX_MAP) \ 280990a71e9SNamhyung Kim -o $(OUTPUT)util/bpf-filter-bison.c -p perf_bpf_filter_ 281990a71e9SNamhyung Kim 28210c775afSIan RogersFLEX_VERSION := $(shell $(FLEX) --version | cut -d' ' -f2) 28310c775afSIan Rogers 28410c775afSIan RogersFLEX_GE_260 := $(call version-ge3,$(FLEX_VERSION),2.6.0) 28510c775afSIan Rogersifeq ($(FLEX_GE_260),1) 28610c775afSIan Rogers flex_flags := -Wno-redundant-decls -Wno-switch-default -Wno-unused-function -Wno-misleading-indentation 28710c775afSIan Rogers 28810c775afSIan Rogers # Some newer clang and gcc version complain about this 28910c775afSIan Rogers # util/parse-events-bison.c:1317:9: error: variable 'parse_events_nerrs' set but not used [-Werror,-Wunused-but-set-variable] 29010c775afSIan Rogers # int yynerrs = 0; 29110c775afSIan Rogers 29210c775afSIan Rogers flex_flags += -Wno-unused-but-set-variable 29310c775afSIan Rogers 29410c775afSIan Rogers FLEX_LT_262 := $(call version-lt3,$(FLEX_VERSION),2.6.2) 29510c775afSIan Rogers ifeq ($(FLEX_LT_262),1) 29610c775afSIan Rogers flex_flags += -Wno-sign-compare 297304d7a90SIan Rogers endif 298304d7a90SIan Rogerselse 299304d7a90SIan Rogers flex_flags := -w 300304d7a90SIan Rogersendif 30110c775afSIan Rogers 302ddc8e4c9SIan Rogers# Some newer clang and gcc version complain about this 303ddc8e4c9SIan Rogers# util/parse-events-bison.c:1317:9: error: variable 'parse_events_nerrs' set but not used [-Werror,-Wunused-but-set-variable] 304ddc8e4c9SIan Rogers# int yynerrs = 0; 305ddc8e4c9SIan Rogers 306ddc8e4c9SIan Rogersbison_flags := -DYYENABLE_NLS=0 -Wno-unused-but-set-variable 307878460e8SArnaldo Carvalho de Melo 308878460e8SArnaldo Carvalho de Melo# Old clangs don't grok -Wno-unused-but-set-variable, remove it 309878460e8SArnaldo Carvalho de Meloifeq ($(CC_NO_CLANG), 0) 310878460e8SArnaldo Carvalho de Melo CLANG_VERSION := $(shell $(CLANG) --version | head -1 | sed 's/.*clang version \([[:digit:]]\+.[[:digit:]]\+.[[:digit:]]\+\).*/\1/g') 311878460e8SArnaldo Carvalho de Melo ifeq ($(call version-lt3,$(CLANG_VERSION),13.0.0),1) 312878460e8SArnaldo Carvalho de Melo bison_flags := $(subst -Wno-unused-but-set-variable,,$(bison_flags)) 313878460e8SArnaldo Carvalho de Melo flex_flags := $(subst -Wno-unused-but-set-variable,,$(flex_flags)) 314878460e8SArnaldo Carvalho de Melo endif 315878460e8SArnaldo Carvalho de Meloendif 316878460e8SArnaldo Carvalho de Melo 317ddc8e4c9SIan RogersBISON_GE_382 := $(shell expr $(shell $(BISON) --version | grep bison | sed -e 's/.\+ \([0-9]\+\).\([0-9]\+\).\([0-9]\+\)/\1\2\3/g') \>\= 382) 318ddc8e4c9SIan Rogersifeq ($(BISON_GE_382),1) 319ddc8e4c9SIan Rogers bison_flags += -Wno-switch-enum 3201f16fcadSIan Rogerselse 3211f16fcadSIan Rogers bison_flags += -w 3221f16fcadSIan Rogersendif 32388cc47e2SArnaldo Carvalho de Melo 32488cc47e2SArnaldo Carvalho de MeloBISON_LT_381 := $(shell expr $(shell $(BISON) --version | grep bison | sed -e 's/.\+ \([0-9]\+\).\([0-9]\+\).\([0-9]\+\)/\1\2\3/g') \< 381) 32588cc47e2SArnaldo Carvalho de Meloifeq ($(BISON_LT_381),1) 32688cc47e2SArnaldo Carvalho de Melo bison_flags += -DYYNOMEM=YYABORT 32788cc47e2SArnaldo Carvalho de Meloendif 32888cc47e2SArnaldo Carvalho de Melo 3293d6dfae8SIan RogersCFLAGS_parse-events-flex.o += $(flex_flags) -Wno-unused-label 330878460e8SArnaldo Carvalho de MeloCFLAGS_pmu-flex.o += $(flex_flags) 331878460e8SArnaldo Carvalho de MeloCFLAGS_expr-flex.o += $(flex_flags) 332878460e8SArnaldo Carvalho de MeloCFLAGS_bpf-filter-flex.o += $(flex_flags) 333878460e8SArnaldo Carvalho de Melo 3341f16fcadSIan RogersCFLAGS_parse-events-bison.o += $(bison_flags) 3351f16fcadSIan RogersCFLAGS_pmu-bison.o += -DYYLTYPE_IS_TRIVIAL=0 $(bison_flags) 3361f16fcadSIan RogersCFLAGS_expr-bison.o += -DYYLTYPE_IS_TRIVIAL=0 $(bison_flags) 337990a71e9SNamhyung KimCFLAGS_bpf-filter-bison.o += -DYYLTYPE_IS_TRIVIAL=0 $(bison_flags) 3389352aabaSJiri Olsa 3399352aabaSJiri Olsa$(OUTPUT)util/parse-events.o: $(OUTPUT)util/parse-events-flex.c $(OUTPUT)util/parse-events-bison.c 3409352aabaSJiri Olsa$(OUTPUT)util/pmu.o: $(OUTPUT)util/pmu-flex.c $(OUTPUT)util/pmu-bison.c 34126226a97SJiri Olsa$(OUTPUT)util/expr.o: $(OUTPUT)util/expr-flex.c $(OUTPUT)util/expr-bison.c 342990a71e9SNamhyung Kim$(OUTPUT)util/bpf-filter.o: $(OUTPUT)util/bpf-filter-flex.c $(OUTPUT)util/bpf-filter-bison.c 3439352aabaSJiri Olsa 344915b0882SArnaldo Carvalho de MeloCFLAGS_bitmap.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ETC_PERFCONFIG_SQ))" 345552eb975SArnaldo Carvalho de MeloCFLAGS_find_bit.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ETC_PERFCONFIG_SQ))" 3469352aabaSJiri OlsaCFLAGS_rbtree.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ETC_PERFCONFIG_SQ))" 3474ddd3274SArnaldo Carvalho de MeloCFLAGS_libstring.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ETC_PERFCONFIG_SQ))" 3489352aabaSJiri OlsaCFLAGS_hweight.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ETC_PERFCONFIG_SQ))" 349d25ed5d9SSoramichi AKIYAMACFLAGS_header.o += -include $(OUTPUT)PERF-VERSION-FILE 3504a88c4ecSLeo YanCFLAGS_arm-spe.o += -I$(srctree)/tools/arch/arm64/include/ 3519352aabaSJiri Olsa 3529c10548cSArnaldo Carvalho de Melo$(OUTPUT)util/argv_split.o: ../lib/argv_split.c FORCE 3539c10548cSArnaldo Carvalho de Melo $(call rule_mkdir) 3549c10548cSArnaldo Carvalho de Melo $(call if_changed_dep,cc_o_c) 3559c10548cSArnaldo Carvalho de Melo 356915b0882SArnaldo Carvalho de Melo$(OUTPUT)util/bitmap.o: ../lib/bitmap.c FORCE 357915b0882SArnaldo Carvalho de Melo $(call rule_mkdir) 358915b0882SArnaldo Carvalho de Melo $(call if_changed_dep,cc_o_c) 359915b0882SArnaldo Carvalho de Melo 3603052ba56SArnaldo Carvalho de Melo$(OUTPUT)util/ctype.o: ../lib/ctype.c FORCE 3613052ba56SArnaldo Carvalho de Melo $(call rule_mkdir) 3623052ba56SArnaldo Carvalho de Melo $(call if_changed_dep,cc_o_c) 3633052ba56SArnaldo Carvalho de Melo 364552eb975SArnaldo Carvalho de Melo$(OUTPUT)util/find_bit.o: ../lib/find_bit.c FORCE 3651999307bSJiri Olsa $(call rule_mkdir) 3669352aabaSJiri Olsa $(call if_changed_dep,cc_o_c) 3679352aabaSJiri Olsa 3683f735377SArnaldo Carvalho de Melo$(OUTPUT)util/rbtree.o: ../lib/rbtree.c FORCE 3691999307bSJiri Olsa $(call rule_mkdir) 3709352aabaSJiri Olsa $(call if_changed_dep,cc_o_c) 3719352aabaSJiri Olsa 3724ddd3274SArnaldo Carvalho de Melo$(OUTPUT)util/libstring.o: ../lib/string.c FORCE 3734ddd3274SArnaldo Carvalho de Melo $(call rule_mkdir) 3744ddd3274SArnaldo Carvalho de Melo $(call if_changed_dep,cc_o_c) 3754ddd3274SArnaldo Carvalho de Melo 3760aefc359SArnaldo Carvalho de Melo$(OUTPUT)util/hweight.o: ../lib/hweight.c FORCE 3771999307bSJiri Olsa $(call rule_mkdir) 3789352aabaSJiri Olsa $(call if_changed_dep,cc_o_c) 379d0761e37SArnaldo Carvalho de Melo 380d0761e37SArnaldo Carvalho de Melo$(OUTPUT)util/vsprintf.o: ../lib/vsprintf.c FORCE 381d0761e37SArnaldo Carvalho de Melo $(call rule_mkdir) 382d0761e37SArnaldo Carvalho de Melo $(call if_changed_dep,cc_o_c) 38392ec3cc9SIan Rogers 38492ec3cc9SIan Rogers$(OUTPUT)util/list_sort.o: ../lib/list_sort.c FORCE 38592ec3cc9SIan Rogers $(call rule_mkdir) 38692ec3cc9SIan Rogers $(call if_changed_dep,cc_o_c) 387