1*4882a593Smuzhiyun# SPDX-License-Identifier: GPL-2.0 2*4882a593Smuzhiyun 3*4882a593Smuzhiyunperf-y += builtin-test.o 4*4882a593Smuzhiyunperf-y += parse-events.o 5*4882a593Smuzhiyunperf-y += dso-data.o 6*4882a593Smuzhiyunperf-y += attr.o 7*4882a593Smuzhiyunperf-y += vmlinux-kallsyms.o 8*4882a593Smuzhiyunperf-y += openat-syscall.o 9*4882a593Smuzhiyunperf-y += openat-syscall-all-cpus.o 10*4882a593Smuzhiyunperf-y += openat-syscall-tp-fields.o 11*4882a593Smuzhiyunperf-y += mmap-basic.o 12*4882a593Smuzhiyunperf-y += perf-record.o 13*4882a593Smuzhiyunperf-y += evsel-roundtrip-name.o 14*4882a593Smuzhiyunperf-y += evsel-tp-sched.o 15*4882a593Smuzhiyunperf-y += fdarray.o 16*4882a593Smuzhiyunperf-y += pmu.o 17*4882a593Smuzhiyunperf-y += pmu-events.o 18*4882a593Smuzhiyunperf-y += hists_common.o 19*4882a593Smuzhiyunperf-y += hists_link.o 20*4882a593Smuzhiyunperf-y += hists_filter.o 21*4882a593Smuzhiyunperf-y += hists_output.o 22*4882a593Smuzhiyunperf-y += hists_cumulate.o 23*4882a593Smuzhiyunperf-y += python-use.o 24*4882a593Smuzhiyunperf-y += bp_signal.o 25*4882a593Smuzhiyunperf-y += bp_signal_overflow.o 26*4882a593Smuzhiyunperf-y += bp_account.o 27*4882a593Smuzhiyunperf-y += wp.o 28*4882a593Smuzhiyunperf-y += task-exit.o 29*4882a593Smuzhiyunperf-y += sw-clock.o 30*4882a593Smuzhiyunperf-y += mmap-thread-lookup.o 31*4882a593Smuzhiyunperf-y += thread-maps-share.o 32*4882a593Smuzhiyunperf-y += switch-tracking.o 33*4882a593Smuzhiyunperf-y += keep-tracking.o 34*4882a593Smuzhiyunperf-y += code-reading.o 35*4882a593Smuzhiyunperf-y += sample-parsing.o 36*4882a593Smuzhiyunperf-y += parse-no-sample-id-all.o 37*4882a593Smuzhiyunperf-y += kmod-path.o 38*4882a593Smuzhiyunperf-y += thread-map.o 39*4882a593Smuzhiyunperf-y += llvm.o llvm-src-base.o llvm-src-kbuild.o llvm-src-prologue.o llvm-src-relocation.o 40*4882a593Smuzhiyunperf-y += bpf.o 41*4882a593Smuzhiyunperf-y += topology.o 42*4882a593Smuzhiyunperf-y += mem.o 43*4882a593Smuzhiyunperf-y += cpumap.o 44*4882a593Smuzhiyunperf-y += stat.o 45*4882a593Smuzhiyunperf-y += event_update.o 46*4882a593Smuzhiyunperf-y += event-times.o 47*4882a593Smuzhiyunperf-y += expr.o 48*4882a593Smuzhiyunperf-y += backward-ring-buffer.o 49*4882a593Smuzhiyunperf-y += sdt.o 50*4882a593Smuzhiyunperf-y += is_printable_array.o 51*4882a593Smuzhiyunperf-y += bitmap.o 52*4882a593Smuzhiyunperf-y += perf-hooks.o 53*4882a593Smuzhiyunperf-y += clang.o 54*4882a593Smuzhiyunperf-y += unit_number__scnprintf.o 55*4882a593Smuzhiyunperf-y += mem2node.o 56*4882a593Smuzhiyunperf-y += maps.o 57*4882a593Smuzhiyunperf-y += time-utils-test.o 58*4882a593Smuzhiyunperf-y += genelf.o 59*4882a593Smuzhiyunperf-y += api-io.o 60*4882a593Smuzhiyunperf-y += demangle-java-test.o 61*4882a593Smuzhiyunperf-y += pfm.o 62*4882a593Smuzhiyunperf-y += parse-metric.o 63*4882a593Smuzhiyunperf-y += pe-file-parsing.o 64*4882a593Smuzhiyunperf-y += expand-cgroup.o 65*4882a593Smuzhiyun 66*4882a593Smuzhiyun$(OUTPUT)tests/llvm-src-base.c: tests/bpf-script-example.c tests/Build 67*4882a593Smuzhiyun $(call rule_mkdir) 68*4882a593Smuzhiyun $(Q)echo '#include <tests/llvm.h>' > $@ 69*4882a593Smuzhiyun $(Q)echo 'const char test_llvm__bpf_base_prog[] =' >> $@ 70*4882a593Smuzhiyun $(Q)sed -e 's/"/\\"/g' -e 's/\(.*\)/"\1\\n"/g' $< >> $@ 71*4882a593Smuzhiyun $(Q)echo ';' >> $@ 72*4882a593Smuzhiyun 73*4882a593Smuzhiyun$(OUTPUT)tests/llvm-src-kbuild.c: tests/bpf-script-test-kbuild.c tests/Build 74*4882a593Smuzhiyun $(call rule_mkdir) 75*4882a593Smuzhiyun $(Q)echo '#include <tests/llvm.h>' > $@ 76*4882a593Smuzhiyun $(Q)echo 'const char test_llvm__bpf_test_kbuild_prog[] =' >> $@ 77*4882a593Smuzhiyun $(Q)sed -e 's/"/\\"/g' -e 's/\(.*\)/"\1\\n"/g' $< >> $@ 78*4882a593Smuzhiyun $(Q)echo ';' >> $@ 79*4882a593Smuzhiyun 80*4882a593Smuzhiyun$(OUTPUT)tests/llvm-src-prologue.c: tests/bpf-script-test-prologue.c tests/Build 81*4882a593Smuzhiyun $(call rule_mkdir) 82*4882a593Smuzhiyun $(Q)echo '#include <tests/llvm.h>' > $@ 83*4882a593Smuzhiyun $(Q)echo 'const char test_llvm__bpf_test_prologue_prog[] =' >> $@ 84*4882a593Smuzhiyun $(Q)sed -e 's/"/\\"/g' -e 's/\(.*\)/"\1\\n"/g' $< >> $@ 85*4882a593Smuzhiyun $(Q)echo ';' >> $@ 86*4882a593Smuzhiyun 87*4882a593Smuzhiyun$(OUTPUT)tests/llvm-src-relocation.c: tests/bpf-script-test-relocation.c tests/Build 88*4882a593Smuzhiyun $(call rule_mkdir) 89*4882a593Smuzhiyun $(Q)echo '#include <tests/llvm.h>' > $@ 90*4882a593Smuzhiyun $(Q)echo 'const char test_llvm__bpf_test_relocation[] =' >> $@ 91*4882a593Smuzhiyun $(Q)sed -e 's/"/\\"/g' -e 's/\(.*\)/"\1\\n"/g' $< >> $@ 92*4882a593Smuzhiyun $(Q)echo ';' >> $@ 93*4882a593Smuzhiyun 94*4882a593Smuzhiyunifeq ($(SRCARCH),$(filter $(SRCARCH),x86 arm arm64 powerpc)) 95*4882a593Smuzhiyunperf-$(CONFIG_DWARF_UNWIND) += dwarf-unwind.o 96*4882a593Smuzhiyunendif 97*4882a593Smuzhiyun 98*4882a593SmuzhiyunCFLAGS_attr.o += -DBINDIR="BUILD_STR($(bindir_SQ))" -DPYTHON="BUILD_STR($(PYTHON_WORD))" 99*4882a593SmuzhiyunCFLAGS_python-use.o += -DPYTHONPATH="BUILD_STR($(OUTPUT)python)" -DPYTHON="BUILD_STR($(PYTHON_WORD))" 100*4882a593SmuzhiyunCFLAGS_dwarf-unwind.o += -fno-optimize-sibling-calls 101