]> git.proxmox.com Git - mirror_qemu.git/blame - trace/Makefile.objs
tilegx: Clean up includes
[mirror_qemu.git] / trace / Makefile.objs
CommitLineData
eac236ea
LV
1# -*- mode: makefile -*-
2
cef517ca
SH
3######################################################################
4# tracetool source files
5# Every rule that invokes tracetool must depend on this so code is regenerated
6# if tracetool itself changes.
7
8tracetool-y = $(SRC_PATH)/scripts/tracetool.py
9tracetool-y += $(shell find $(SRC_PATH)/scripts/tracetool -name "*.py")
10
e6bf23f8
MG
11######################################################################
12# Auto-generated event descriptions for LTTng ust code
13
5b808275 14ifeq ($(findstring ust,$(TRACE_BACKENDS)),ust)
e6bf23f8 15$(obj)/generated-ust-provider.h: $(obj)/generated-ust-provider.h-timestamp
9967e4fe 16 @cmp $< $@ >/dev/null 2>&1 || cp $< $@
cef517ca 17$(obj)/generated-ust-provider.h-timestamp: $(SRC_PATH)/trace-events $(tracetool-y)
e6bf23f8
MG
18 $(call quiet-command,$(TRACETOOL) \
19 --format=ust-events-h \
5b808275 20 --backends=$(TRACE_BACKENDS) \
e6bf23f8 21 < $< > $@," GEN $(patsubst %-timestamp,%,$@)")
e6bf23f8
MG
22
23$(obj)/generated-ust.c: $(obj)/generated-ust.c-timestamp $(BUILD_DIR)/config-host.mak
9967e4fe 24 @cmp $< $@ >/dev/null 2>&1 || cp $< $@
cef517ca 25$(obj)/generated-ust.c-timestamp: $(SRC_PATH)/trace-events $(tracetool-y)
e6bf23f8
MG
26 $(call quiet-command,$(TRACETOOL) \
27 --format=ust-events-c \
5b808275 28 --backends=$(TRACE_BACKENDS) \
e6bf23f8 29 < $< > $@," GEN $(patsubst %-timestamp,%,$@)")
e6bf23f8
MG
30
31$(obj)/generated-events.h: $(obj)/generated-ust-provider.h
32$(obj)/generated-events.c: $(obj)/generated-ust.c
33endif
34
eac236ea 35######################################################################
45be2f5d
LV
36# Auto-generated event descriptions
37
38$(obj)/generated-events.h: $(obj)/generated-events.h-timestamp
9967e4fe 39 @cmp $< $@ >/dev/null 2>&1 || cp $< $@
cef517ca 40$(obj)/generated-events.h-timestamp: $(SRC_PATH)/trace-events $(tracetool-y)
45be2f5d
LV
41 $(call quiet-command,$(TRACETOOL) \
42 --format=events-h \
5b808275 43 --backends=$(TRACE_BACKENDS) \
45be2f5d 44 < $< > $@," GEN $(patsubst %-timestamp,%,$@)")
45be2f5d 45
a7373b1f 46$(obj)/generated-events.c: $(obj)/generated-events.c-timestamp $(BUILD_DIR)/config-host.mak
9967e4fe 47 @cmp $< $@ >/dev/null 2>&1 || cp $< $@
cef517ca 48$(obj)/generated-events.c-timestamp: $(SRC_PATH)/trace-events $(tracetool-y)
45be2f5d
LV
49 $(call quiet-command,$(TRACETOOL) \
50 --format=events-c \
5b808275 51 --backends=$(TRACE_BACKENDS) \
45be2f5d 52 < $< > $@," GEN $(patsubst %-timestamp,%,$@)")
45be2f5d
LV
53
54util-obj-y += generated-events.o
55
56
57######################################################################
58# Auto-generated tracing routines
eac236ea 59
707c8a98
LV
60##################################################
61# Execution level
62
0e848f48 63$(obj)/generated-tracers.h: $(obj)/generated-tracers.h-timestamp
6f329a55 64 @cmp -s $< $@ || cp $< $@
cef517ca 65$(obj)/generated-tracers.h-timestamp: $(SRC_PATH)/trace-events $(BUILD_DIR)/config-host.mak $(tracetool-y)
eac236ea
LV
66 $(call quiet-command,$(TRACETOOL) \
67 --format=h \
5b808275 68 --backends=$(TRACE_BACKENDS) \
eac236ea 69 < $< > $@," GEN $(patsubst %-timestamp,%,$@)")
eac236ea 70
707c8a98
LV
71##############################
72# non-DTrace
0e848f48 73
eac236ea 74$(obj)/generated-tracers.c: $(obj)/generated-tracers.c-timestamp
6f329a55 75 @cmp -s $< $@ || cp $< $@
cef517ca 76$(obj)/generated-tracers.c-timestamp: $(SRC_PATH)/trace-events $(BUILD_DIR)/config-host.mak $(tracetool-y)
eac236ea
LV
77 $(call quiet-command,$(TRACETOOL) \
78 --format=c \
5b808275 79 --backends=$(TRACE_BACKENDS) \
eac236ea 80 < $< > $@," GEN $(patsubst %-timestamp,%,$@)")
eac236ea
LV
81
82$(obj)/generated-tracers.o: $(obj)/generated-tracers.c $(obj)/generated-tracers.h
eac236ea 83
707c8a98
LV
84##############################
85# DTrace
eac236ea
LV
86
87# Normal practice is to name DTrace probe file with a '.d' extension
88# but that gets picked up by QEMU's Makefile as an external dependency
89# rule file. So we use '.dtrace' instead
5b808275
LV
90ifeq ($(findstring dtrace,$(TRACE_BACKENDS)),dtrace)
91$(obj)/generated-tracers-dtrace.dtrace: $(obj)/generated-tracers-dtrace.dtrace-timestamp
9967e4fe 92 @cmp $< $@ >/dev/null 2>&1 || cp $< $@
cef517ca 93$(obj)/generated-tracers-dtrace.dtrace-timestamp: $(SRC_PATH)/trace-events $(BUILD_DIR)/config-host.mak $(tracetool-y)
eac236ea
LV
94 $(call quiet-command,$(TRACETOOL) \
95 --format=d \
5b808275 96 --backends=$(TRACE_BACKENDS) \
eac236ea 97 < $< > $@," GEN $(patsubst %-timestamp,%,$@)")
eac236ea 98
5b808275 99$(obj)/generated-tracers-dtrace.h: $(obj)/generated-tracers-dtrace.dtrace
eac236ea
LV
100 $(call quiet-command,dtrace -o $@ -h -s $<, " GEN $@")
101
5b808275
LV
102$(obj)/generated-tracers-dtrace.o: $(obj)/generated-tracers-dtrace.dtrace
103
104util-obj-y += generated-tracers-dtrace.o
0e848f48 105endif
eac236ea 106
707c8a98
LV
107##################################################
108# Translation level
109
f4654226 110$(obj)/generated-helpers-wrappers.h: $(obj)/generated-helpers-wrappers.h-timestamp
9967e4fe 111 @cmp $< $@ >/dev/null 2>&1 || cp $< $@
cef517ca 112$(obj)/generated-helpers-wrappers.h-timestamp: $(SRC_PATH)/trace-events $(BUILD_DIR)/config-host.mak $(tracetool-y)
f4654226
LV
113 $(call quiet-command,$(TRACETOOL) \
114 --format=tcg-helper-wrapper-h \
115 --backend=$(TRACE_BACKENDS) \
116 < $< > $@," GEN $(patsubst %-timestamp,%,$@)")
f4654226 117
707c8a98 118$(obj)/generated-helpers.h: $(obj)/generated-helpers.h-timestamp
9967e4fe 119 @cmp $< $@ >/dev/null 2>&1 || cp $< $@
cef517ca 120$(obj)/generated-helpers.h-timestamp: $(SRC_PATH)/trace-events $(BUILD_DIR)/config-host.mak $(tracetool-y)
707c8a98
LV
121 $(call quiet-command,$(TRACETOOL) \
122 --format=tcg-helper-h \
123 --backend=$(TRACE_BACKENDS) \
124 < $< > $@," GEN $(patsubst %-timestamp,%,$@)")
707c8a98 125
341ea691 126$(obj)/generated-helpers.c: $(obj)/generated-helpers.c-timestamp
9967e4fe 127 @cmp $< $@ >/dev/null 2>&1 || cp $< $@
cef517ca 128$(obj)/generated-helpers.c-timestamp: $(SRC_PATH)/trace-events $(BUILD_DIR)/config-host.mak $(tracetool-y)
341ea691
LV
129 $(call quiet-command,$(TRACETOOL) \
130 --format=tcg-helper-c \
131 --backend=$(TRACE_BACKENDS) \
132 < $< > $@," GEN $(patsubst %-timestamp,%,$@)")
341ea691
LV
133
134$(obj)/generated-helpers.o: $(obj)/generated-helpers.c
135
136target-obj-y += generated-helpers.o
137
707c8a98 138
465830fb 139$(obj)/generated-tcg-tracers.h: $(obj)/generated-tcg-tracers.h-timestamp
9967e4fe 140 @cmp $< $@ >/dev/null 2>&1 || cp $< $@
cef517ca 141$(obj)/generated-tcg-tracers.h-timestamp: $(SRC_PATH)/trace-events $(BUILD_DIR)/config-host.mak $(tracetool-y)
465830fb
LV
142 $(call quiet-command,$(TRACETOOL) \
143 --format=tcg-h \
144 --backend=$(TRACE_BACKENDS) \
145 < $< > $@," GEN $(patsubst %-timestamp,%,$@)")
465830fb
LV
146
147
eac236ea
LV
148######################################################################
149# Backend code
150
ddbc41de 151util-obj-$(CONFIG_TRACE_SIMPLE) += simple.o generated-tracers.o
781e9545 152util-obj-$(CONFIG_TRACE_FTRACE) += ftrace.o
e6bf23f8 153util-obj-$(CONFIG_TRACE_UST) += generated-ust.o
ff667e2e 154util-obj-y += control.o
1dde0f48 155util-obj-y += qmp.o