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