1b2441318SGreg Kroah-Hartman# SPDX-License-Identifier: GPL-2.0 2b53dde9dSIngo Molnar 3b53dde9dSIngo Molnar# Do not instrument the tracer itself: 4b53dde9dSIngo Molnar 5606576ceSSteven Rostedtifdef CONFIG_FUNCTION_TRACER 6b53dde9dSIngo MolnarORIG_CFLAGS := $(KBUILD_CFLAGS) 7c0a80c0cSHeiko CarstensKBUILD_CFLAGS = $(subst $(CC_FLAGS_FTRACE),,$(ORIG_CFLAGS)) 8d05cdb25SSteven Rostedt 947239c4dSSteven Rostedtifdef CONFIG_FTRACE_SELFTEST 10d05cdb25SSteven Rostedt# selftest needs instrumentation 11c0a80c0cSHeiko CarstensCFLAGS_trace_selftest_dynamic.o = $(CC_FLAGS_FTRACE) 12d05cdb25SSteven Rostedtobj-y += trace_selftest_dynamic.o 13b53dde9dSIngo Molnarendif 1447239c4dSSteven Rostedtendif 15b53dde9dSIngo Molnar 16d899926fSFrancis Deslauriersifdef CONFIG_FTRACE_STARTUP_TEST 17d899926fSFrancis DeslauriersCFLAGS_trace_kprobe_selftest.o = $(CC_FLAGS_FTRACE) 18d899926fSFrancis Deslauriersobj-$(CONFIG_KPROBE_EVENTS) += trace_kprobe_selftest.o 19d899926fSFrancis Deslauriersendif 20d899926fSFrancis Deslauriers 2152f232cbSSteven Rostedt# If unlikely tracing is enabled, do not trace these files 222ed84eebSSteven Rostedtifdef CONFIG_TRACING_BRANCHES 232ed84eebSSteven RostedtKBUILD_CFLAGS += -DDISABLE_BRANCH_PROFILING 2452f232cbSSteven Rostedtendif 2552f232cbSSteven Rostedt 266b7dca40SMasami Hiramatsu# for GCOV coverage profiling 276b7dca40SMasami Hiramatsuifdef CONFIG_GCOV_PROFILE_FTRACE 286b7dca40SMasami HiramatsuGCOV_PROFILE := y 296b7dca40SMasami Hiramatsuendif 306b7dca40SMasami Hiramatsu 3181dc9f0eSSteven Rostedt (Red Hat)CFLAGS_trace_benchmark.o := -I$(src) 321d0e78e3SJiri OlsaCFLAGS_trace_events_filter.o := -I$(src) 331d0e78e3SJiri Olsa 34ea632e9fSJosh Triplettobj-$(CONFIG_TRACE_CLOCK) += trace_clock.o 3556449f43SIngo Molnar 36606576ceSSteven Rostedtobj-$(CONFIG_FUNCTION_TRACER) += libftrace.o 377a8e76a3SSteven Rostedtobj-$(CONFIG_RING_BUFFER) += ring_buffer.o 385092dbc9SSteven Rostedtobj-$(CONFIG_RING_BUFFER_BENCHMARK) += ring_buffer_benchmark.o 3916444a8aSArnaldo Carvalho de Melo 40bc0c38d1SSteven Rostedtobj-$(CONFIG_TRACING) += trace.o 41f0868d1eSSteven Rostedtobj-$(CONFIG_TRACING) += trace_output.o 4212306276SSteven Rostedt (Red Hat)obj-$(CONFIG_TRACING) += trace_seq.o 43dbd0b4b3SFrederic Weisbeckerobj-$(CONFIG_TRACING) += trace_stat.o 44769b0441SFrederic Weisbeckerobj-$(CONFIG_TRACING) += trace_printk.o 4508d43a5fSTom Zanussiobj-$(CONFIG_TRACING_MAP) += tracing_map.o 46f96e8577SJoel Fernandes (Google)obj-$(CONFIG_PREEMPTIRQ_DELAY_TEST) += preemptirq_delay_test.o 4735e8e302SSteven Rostedtobj-$(CONFIG_CONTEXT_SWITCH_TRACER) += trace_sched_switch.o 48606576ceSSteven Rostedtobj-$(CONFIG_FUNCTION_TRACER) += trace_functions.o 49c3bc8fd6SJoel Fernandes (Google)obj-$(CONFIG_PREEMPTIRQ_TRACEPOINTS) += trace_preemptirq.o 5081d68a96SSteven Rostedtobj-$(CONFIG_IRQSOFF_TRACER) += trace_irqsoff.o 516cd8a4bbSSteven Rostedtobj-$(CONFIG_PREEMPT_TRACER) += trace_irqsoff.o 52352ad25aSSteven Rostedtobj-$(CONFIG_SCHED_TRACER) += trace_sched_wakeup.o 53e7c15cd8SSteven Rostedt (Red Hat)obj-$(CONFIG_HWLAT_TRACER) += trace_hwlat.o 54fb1b6d8bSSteven Noonanobj-$(CONFIG_NOP_TRACER) += trace_nop.o 55e5a81b62SSteven Rostedtobj-$(CONFIG_STACK_TRACER) += trace_stack.o 56f984b51eSPekka Paalanenobj-$(CONFIG_MMIOTRACE) += trace_mmiotrace.o 57fb52607aSFrederic Weisbeckerobj-$(CONFIG_FUNCTION_GRAPH_TRACER) += trace_functions_graph.o 5894b80ffdSSteven Rostedtobj-$(CONFIG_TRACE_BRANCH_PROFILING) += trace_branch.o 592db270a8SFrederic Weisbeckerobj-$(CONFIG_BLK_DEV_IO_TRACE) += blktrace.o 60d864a3caSSteven Rostedt (VMware)obj-$(CONFIG_FUNCTION_GRAPH_TRACER) += fgraph.o 6155782138SLi Zefanifeq ($(CONFIG_BLOCK),y) 6255782138SLi Zefanobj-$(CONFIG_EVENT_TRACING) += blktrace.o 6355782138SLi Zefanendif 645f77a88bSTom Zanussiobj-$(CONFIG_EVENT_TRACING) += trace_events.o 655f77a88bSTom Zanussiobj-$(CONFIG_EVENT_TRACING) += trace_export.o 66ee08c6ecSFrederic Weisbeckerobj-$(CONFIG_FTRACE_SYSCALLS) += trace_syscalls.o 6707b139c8SLi Zefanifeq ($(CONFIG_PERF_EVENTS),y) 6897d5a220SFrederic Weisbeckerobj-$(CONFIG_EVENT_TRACING) += trace_event_perf.o 6907b139c8SLi Zefanendif 705f77a88bSTom Zanussiobj-$(CONFIG_EVENT_TRACING) += trace_events_filter.o 7185f2b082STom Zanussiobj-$(CONFIG_EVENT_TRACING) += trace_events_trigger.o 727ef224d1STom Zanussiobj-$(CONFIG_HIST_TRIGGERS) += trace_events_hist.o 73e1abf2ccSIngo Molnarobj-$(CONFIG_BPF_EVENTS) += bpf_trace.o 746b0b7551SAnton Blanchardobj-$(CONFIG_KPROBE_EVENTS) += trace_kprobe.o 75870915e0SMathieu Desnoyersobj-$(CONFIG_TRACEPOINTS) += power-traces.o 76798bc6d8SRafael J. Wysockiifeq ($(CONFIG_PM),y) 7753b615ccSMing Leiobj-$(CONFIG_TRACEPOINTS) += rpm-traces.o 782a5306ccSMing Leiendif 79955b61e5SJason Wesselifeq ($(CONFIG_TRACING),y) 80955b61e5SJason Wesselobj-$(CONFIG_KGDB_KDB) += trace_kdb.o 81955b61e5SJason Wesselendif 82*5448d44cSMasami Hiramatsuobj-$(CONFIG_DYNAMIC_EVENTS) += trace_dynevent.o 838ab83f56SSrikar Dronamrajuobj-$(CONFIG_PROBE_EVENTS) += trace_probe.o 846b0b7551SAnton Blanchardobj-$(CONFIG_UPROBE_EVENTS) += trace_uprobe.o 85bc0c38d1SSteven Rostedt 8681dc9f0eSSteven Rostedt (Red Hat)obj-$(CONFIG_TRACEPOINT_BENCHMARK) += trace_benchmark.o 8781dc9f0eSSteven Rostedt (Red Hat) 8816444a8aSArnaldo Carvalho de Melolibftrace-y := ftrace.o 89