Switch to generating top level trace.[hc] files, instead of using include/trace.h with trace/generated-tracers.[ch], so the top level directory works in the same manner as all the sub-dirs.
Signed-off-by: Daniel P. Berrange <berra...@redhat.com> --- .gitignore | 9 ++-- Makefile | 56 ++++++++++++++++------ Makefile.objs | 5 +- include/trace.h | 6 --- scripts/tracetool/backend/dtrace.py | 7 +-- scripts/tracetool/backend/ust.py | 7 +-- scripts/tracetool/format/ust_events_c.py | 2 +- scripts/tracetool/format/ust_events_h.py | 2 +- trace/Makefile.objs | 79 +++----------------------------- 9 files changed, 57 insertions(+), 116 deletions(-) delete mode 100644 include/trace.h diff --git a/.gitignore b/.gitignore index 7249070..4920850 100644 --- a/.gitignore +++ b/.gitignore @@ -6,18 +6,14 @@ /config.status /config-temp /trace-events-all -/trace/generated-tracers.h -/trace/generated-tracers.c -/trace/generated-tracers-dtrace.h -/trace/generated-tracers.dtrace /trace/generated-events.h /trace/generated-events.c /trace/generated-helpers-wrappers.h /trace/generated-helpers.h /trace/generated-helpers.c /trace/generated-tcg-tracers.h -/trace/generated-ust-provider.h -/trace/generated-ust.c +/trace/trace-ust-all.h +/trace/trace-ust-all.c /ui/shader/texture-blit-frag.h /ui/shader/texture-blit-vert.h *-timestamp @@ -117,6 +113,7 @@ docker-src.* *~ trace.h trace.c +trace-ust.h trace-events-common trace-ust.h trace-dtrace.h diff --git a/Makefile b/Makefile index 2b9ba60..c668909 100644 --- a/Makefile +++ b/Makefile @@ -56,33 +56,26 @@ GENERATED_SOURCES += qmp-marshal.c qapi-types.c qapi-visit.c qapi-event.c GENERATED_HEADERS += qmp-introspect.h GENERATED_SOURCES += qmp-introspect.c -GENERATED_HEADERS += trace/generated-tracers.h -ifeq ($(findstring dtrace,$(TRACE_BACKENDS)),dtrace) -GENERATED_HEADERS += trace/generated-tracers-dtrace.h -endif -GENERATED_SOURCES += trace/generated-tracers.c - GENERATED_HEADERS += trace/generated-tcg-tracers.h GENERATED_HEADERS += trace/generated-helpers-wrappers.h GENERATED_HEADERS += trace/generated-helpers.h GENERATED_SOURCES += trace/generated-helpers.c -ifeq ($(findstring ust,$(TRACE_BACKENDS)),ust) -GENERATED_HEADERS += trace/generated-ust-provider.h -GENERATED_HEADERS += trace/generated-ust-provider-all.h -GENERATED_SOURCES += trace/generated-ust.c +ifdef CONFIG_TRACE_UST +GENERATED_HEADERS += trace/trace-ust-all.h +GENERATED_SOURCES += trace/trace-ust-all.c endif -GENERATED_HEADERS += $(trace-events-subdirs:%=%/trace.h) -GENERATED_SOURCES += $(trace-events-subdirs:%=%/trace.c) +GENERATED_HEADERS += trace.h $(trace-events-subdirs:%=%/trace.h) +GENERATED_SOURCES += trace.c $(trace-events-subdirs:%=%/trace.c) GENERATED_DTRACE = ifdef CONFIG_TRACE_DTRACE -GENERATED_HEADERS += $(trace-events-subdirs:%=%/trace-dtrace.h) -GENERATED_DTRACE += $(trace-events-subdirs:%=%/trace-dtrace.dtrace) +GENERATED_HEADERS += trace-dtrace.h $(trace-events-subdirs:%=%/trace-dtrace.h) +GENERATED_DTRACE += trace-dtrace.dtrace $(trace-events-subdirs:%=%/trace-dtrace.dtrace) endif ifdef CONFIG_TRACE_UST -GENERATED_HEADERS += $(trace-events-subdirs:%=%/trace-ust.h) +GENERATED_HEADERS += trace-ust.h $(trace-events-subdirs:%=%/trace-ust.h) endif %/trace.h: $(SRC_PATH)/%/trace-events $(tracetool-y) @@ -119,6 +112,39 @@ endif %/trace-dtrace.o: %/trace-dtrace.dtrace $(tracetool-y) +trace.h: $(SRC_PATH)/trace-events $(tracetool-y) + $(call quiet-command,$(TRACETOOL) \ + --format=h \ + --backends=$(TRACE_BACKENDS) \ + --group=core \ + < $< > $@," GEN $@") + +trace.c: $(SRC_PATH)/trace-events $(tracetool-y) + $(call quiet-command,$(TRACETOOL) \ + --format=c \ + --backends=$(TRACE_BACKENDS) \ + --group=core \ + < $< > $@," GEN $@") + +trace-ust.h: $(SRC_PATH)/trace-events $(tracetool-y) + $(call quiet-command,$(TRACETOOL) \ + --format=ust-events-h \ + --backends=$(TRACE_BACKENDS) \ + --group=core \ + < $< > $@," GEN $@") + +trace-dtrace.dtrace: $(SRC_PATH)/trace-events $(BUILD_DIR)/config-host.mak $(tracetool-y) + $(call quiet-command,$(TRACETOOL) \ + --format=d \ + --backends=$(TRACE_BACKENDS) \ + --group=core \ + < $< > $@," GEN $@") + +trace-dtrace.h: trace-dtrace.dtrace + $(call quiet-command,dtrace -o $@ -h -s $<, " GEN $@") + +trace-dtrace.o: trace-dtrace.dtrace + # Don't try to regenerate Makefile or configure # We don't generate any of them Makefile: ; diff --git a/Makefile.objs b/Makefile.objs index c2ee78e..ba5f75f 100644 --- a/Makefile.objs +++ b/Makefile.objs @@ -119,7 +119,6 @@ ivshmem-server-obj-y = contrib/ivshmem-server/ ###################################################################### trace-events-subdirs = -trace-events-y = trace-events trace-events-subdirs += util trace-events-subdirs += crypto trace-events-subdirs += io @@ -164,4 +163,6 @@ trace-events-subdirs += linux-user trace-events-files = trace-events $(trace-events-subdirs:%=%/trace-events) -trace-obj-y = $(trace-events-subdirs:%=%/) +trace-obj-y = trace.o +trace-obj-$(CONFIG_TRACE_DTRACE) += trace-dtrace.o +trace-obj-y += $(trace-events-subdirs:%=%/) diff --git a/include/trace.h b/include/trace.h deleted file mode 100644 index ac9ff3d..0000000 --- a/include/trace.h +++ /dev/null @@ -1,6 +0,0 @@ -#ifndef TRACE_H -#define TRACE_H - -#include "trace/generated-tracers.h" - -#endif /* TRACE_H */ diff --git a/scripts/tracetool/backend/dtrace.py b/scripts/tracetool/backend/dtrace.py index 1319990..6df33fc 100644 --- a/scripts/tracetool/backend/dtrace.py +++ b/scripts/tracetool/backend/dtrace.py @@ -36,12 +36,7 @@ def binary(): def generate_h_begin(events, group): - if group == "common": - include = "trace/generated-tracers-dtrace.h" - else: - include = "trace-dtrace.h" - - out('#include "%s"' % include, + out('#include "trace-dtrace.h"', '') diff --git a/scripts/tracetool/backend/ust.py b/scripts/tracetool/backend/ust.py index 599c12e..92b2837 100644 --- a/scripts/tracetool/backend/ust.py +++ b/scripts/tracetool/backend/ust.py @@ -20,13 +20,8 @@ PUBLIC = True def generate_h_begin(events, group): - if group == "common": - include = "trace/generated-ust-provider.h" - else: - include = "trace-ust.h" - out('#include <lttng/tracepoint.h>', - '#include "%s"' % include, + '#include "trace-ust.h"', '') diff --git a/scripts/tracetool/format/ust_events_c.py b/scripts/tracetool/format/ust_events_c.py index 8be8116..264784c 100644 --- a/scripts/tracetool/format/ust_events_c.py +++ b/scripts/tracetool/format/ust_events_c.py @@ -32,4 +32,4 @@ def generate(events, backend, group): ' */', '#pragma GCC diagnostic ignored "-Wredundant-decls"', '', - '#include "generated-ust-provider-all.h"') + '#include "trace-ust-all.h"') diff --git a/scripts/tracetool/format/ust_events_h.py b/scripts/tracetool/format/ust_events_h.py index f4258e5..70d525f 100644 --- a/scripts/tracetool/format/ust_events_h.py +++ b/scripts/tracetool/format/ust_events_h.py @@ -21,7 +21,7 @@ def generate(events, backend, group): if "disabled" not in e.properties] if group == "common": - include = "generated-ust-provider.h" + include = "trace-ust-all.h" else: include = "trace-ust.h" diff --git a/trace/Makefile.objs b/trace/Makefile.objs index 00ebe3a..3af5431 100644 --- a/trace/Makefile.objs +++ b/trace/Makefile.objs @@ -17,89 +17,23 @@ $(BUILD_DIR)/trace-events-common: $(trace-events-y:%=$(SRC_PATH)/%) ###################################################################### # Auto-generated event descriptions for LTTng ust code -ifeq ($(findstring ust,$(TRACE_BACKENDS)),ust) +ifdef CONFIG_TRACE_UST -$(obj)/generated-ust-provider.h: $(obj)/generated-ust-provider.h-timestamp - @cmp $< $@ >/dev/null 2>&1 || cp $< $@ -$(obj)/generated-ust-provider.h-timestamp: $(BUILD_DIR)/trace-events-common $(tracetool-y) +$(obj)/trace-ust-all.h: $(BUILD_DIR)/trace-events-all $(tracetool-y) $(call quiet-command,$(TRACETOOL) \ --format=ust-events-h \ --backends=$(TRACE_BACKENDS) \ - < $< > $@," GEN $(patsubst %-timestamp,%,$@)") + < $< > $@," GEN $@") -$(obj)/generated-ust-provider-all.h: $(obj)/generated-ust-provider-all.h-timestamp - @cmp $< $@ >/dev/null 2>&1 || cp $< $@ -$(obj)/generated-ust-provider-all.h-timestamp: $(BUILD_DIR)/trace-events-all $(tracetool-y) - $(call quiet-command,$(TRACETOOL) \ - --format=ust-events-h \ - --backends=$(TRACE_BACKENDS) \ - < $< > $@," GEN $(patsubst %-timestamp,%,$@)") - -$(obj)/generated-ust.c: $(obj)/generated-ust.c-timestamp $(BUILD_DIR)/config-host.mak - @cmp $< $@ >/dev/null 2>&1 || cp $< $@ -$(obj)/generated-ust.c-timestamp: $(BUILD_DIR)/trace-events-all $(tracetool-y) +$(obj)/trace-ust-all.c: $(BUILD_DIR)/trace-events-all $(tracetool-y) $(call quiet-command,$(TRACETOOL) \ --format=ust-events-c \ --backends=$(TRACE_BACKENDS) \ - < $< > $@," GEN $(patsubst %-timestamp,%,$@)") - -$(obj)/generated-tracers.h: $(obj)/generated-ust-provider.h $(obj)/generated-ust-provider-all.h -$(obj)/generated-tracers.c: $(obj)/generated-ust.c + < $< > $@," GEN $@") endif -###################################################################### -# Auto-generated tracing routines - -################################################## -# Execution level - -$(obj)/generated-tracers.h: $(obj)/generated-tracers.h-timestamp - @cmp -s $< $@ || cp $< $@ -$(obj)/generated-tracers.h-timestamp: $(BUILD_DIR)/trace-events-common $(BUILD_DIR)/config-host.mak $(tracetool-y) - $(call quiet-command,$(TRACETOOL) \ - --format=h \ - --backends=$(TRACE_BACKENDS) \ - < $< > $@," GEN $(patsubst %-timestamp,%,$@)") - -############################## -# non-DTrace - -$(obj)/generated-tracers.c: $(obj)/generated-tracers.c-timestamp - @cmp -s $< $@ || cp $< $@ -$(obj)/generated-tracers.c-timestamp: $(BUILD_DIR)/trace-events-common $(BUILD_DIR)/config-host.mak $(tracetool-y) - $(call quiet-command,$(TRACETOOL) \ - --format=c \ - --backends=$(TRACE_BACKENDS) \ - < $< > $@," GEN $(patsubst %-timestamp,%,$@)") - -$(obj)/generated-tracers.o: $(obj)/generated-tracers.c $(obj)/generated-tracers.h - -############################## -# DTrace - -# Normal practice is to name DTrace probe file with a '.d' extension -# but that gets picked up by QEMU's Makefile as an external dependency -# rule file. So we use '.dtrace' instead -ifeq ($(findstring dtrace,$(TRACE_BACKENDS)),dtrace) - -$(obj)/generated-tracers-dtrace.dtrace: $(obj)/generated-tracers-dtrace.dtrace-timestamp - @cmp $< $@ >/dev/null 2>&1 || cp $< $@ -$(obj)/generated-tracers-dtrace.dtrace-timestamp: $(BUILD_DIR)/trace-events-common $(BUILD_DIR)/config-host.mak $(tracetool-y) - $(call quiet-command,$(TRACETOOL) \ - --format=d \ - --backends=$(TRACE_BACKENDS) \ - < $< > $@," GEN $(patsubst %-timestamp,%,$@)") - -$(obj)/generated-tracers-dtrace.h: $(obj)/generated-tracers-dtrace.dtrace - $(call quiet-command,dtrace -o $@ -h -s $<, " GEN $@") - -$(obj)/generated-tracers-dtrace.o: $(obj)/generated-tracers-dtrace.dtrace - -util-obj-y += generated-tracers-dtrace.o -endif - ################################################## # Translation level @@ -144,10 +78,9 @@ $(obj)/generated-tcg-tracers.h-timestamp: $(BUILD_DIR)/trace-events-all $(BUILD_ ###################################################################### # Backend code -util-obj-y += generated-tracers.o util-obj-$(CONFIG_TRACE_SIMPLE) += simple.o util-obj-$(CONFIG_TRACE_FTRACE) += ftrace.o -util-obj-$(CONFIG_TRACE_UST) += generated-ust.o +util-obj-$(CONFIG_TRACE_UST) += trace-ust-all.o util-obj-y += control.o target-obj-y += control-target.o util-obj-y += qmp.o -- 2.7.4