]>
Commit | Line | Data |
---|---|---|
eac236ea LV |
1 | # -*- mode: makefile -*- |
2 | ||
3 | ###################################################################### | |
0e848f48 | 4 | # Auto-generated header for tracing routines |
eac236ea | 5 | |
0e848f48 | 6 | $(obj)/generated-tracers.h: $(obj)/generated-tracers.h-timestamp |
6f329a55 | 7 | @cmp -s $< $@ || cp $< $@ |
eac236ea LV |
8 | $(obj)/generated-tracers.h-timestamp: $(SRC_PATH)/trace-events $(BUILD_DIR)/config-host.mak |
9 | $(call quiet-command,$(TRACETOOL) \ | |
10 | --format=h \ | |
11 | --backend=$(TRACE_BACKEND) \ | |
12 | < $< > $@," GEN $(patsubst %-timestamp,%,$@)") | |
eac236ea | 13 | |
0e848f48 PB |
14 | ###################################################################### |
15 | # Auto-generated tracing routines (non-DTrace) | |
16 | ||
17 | ifneq ($(TRACE_BACKEND),dtrace) | |
eac236ea | 18 | $(obj)/generated-tracers.c: $(obj)/generated-tracers.c-timestamp |
6f329a55 | 19 | @cmp -s $< $@ || cp $< $@ |
eac236ea LV |
20 | $(obj)/generated-tracers.c-timestamp: $(SRC_PATH)/trace-events $(BUILD_DIR)/config-host.mak |
21 | $(call quiet-command,$(TRACETOOL) \ | |
22 | --format=c \ | |
23 | --backend=$(TRACE_BACKEND) \ | |
24 | < $< > $@," GEN $(patsubst %-timestamp,%,$@)") | |
eac236ea LV |
25 | |
26 | $(obj)/generated-tracers.o: $(obj)/generated-tracers.c $(obj)/generated-tracers.h | |
eac236ea LV |
27 | endif |
28 | ||
29 | ||
30 | ###################################################################### | |
31 | # Auto-generated DTrace code | |
32 | ||
33 | # Normal practice is to name DTrace probe file with a '.d' extension | |
34 | # but that gets picked up by QEMU's Makefile as an external dependency | |
35 | # rule file. So we use '.dtrace' instead | |
0e848f48 PB |
36 | ifeq ($(TRACE_BACKEND),dtrace) |
37 | $(obj)/generated-tracers.dtrace: $(obj)/generated-tracers.dtrace-timestamp | |
38 | $(obj)/generated-tracers.dtrace-timestamp: $(SRC_PATH)/trace-events $(BUILD_DIR)/config-host.mak | |
eac236ea LV |
39 | $(call quiet-command,$(TRACETOOL) \ |
40 | --format=d \ | |
41 | --backend=$(TRACE_BACKEND) \ | |
42 | < $< > $@," GEN $(patsubst %-timestamp,%,$@)") | |
43 | @cmp -s $@ $(patsubst %-timestamp,%,$@) || cp $@ $(patsubst %-timestamp,%,$@) | |
44 | ||
0e848f48 | 45 | $(obj)/generated-tracers-dtrace.h: $(obj)/generated-tracers.dtrace |
eac236ea LV |
46 | $(call quiet-command,dtrace -o $@ -h -s $<, " GEN $@") |
47 | ||
0e848f48 PB |
48 | $(obj)/generated-tracers.o: $(obj)/generated-tracers.dtrace |
49 | endif | |
eac236ea | 50 | |
eac236ea LV |
51 | ###################################################################### |
52 | # Backend code | |
53 | ||
ff667e2e PB |
54 | util-obj-$(CONFIG_TRACE_DEFAULT) += default.o |
55 | util-obj-$(CONFIG_TRACE_SIMPLE) += simple.o | |
56 | util-obj-$(CONFIG_TRACE_STDERR) += stderr.o | |
57 | util-obj-y += control.o | |
58 | util-obj-y += generated-tracers.o |