meson: convert systemtap files
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
2898503c03
commit
10e1d2636d
|
@ -6,88 +6,7 @@ include ../config-host.mak
|
||||||
include config-target.mak
|
include config-target.mak
|
||||||
include $(SRC_PATH)/rules.mak
|
include $(SRC_PATH)/rules.mak
|
||||||
|
|
||||||
$(call set-vpath, $(SRC_PATH):$(BUILD_DIR))
|
all:
|
||||||
|
|
||||||
ifdef CONFIG_USER_ONLY
|
|
||||||
# user emulator name
|
|
||||||
QEMU_PROG=qemu-$(TARGET_NAME)
|
|
||||||
else
|
|
||||||
# system emulator name
|
|
||||||
QEMU_PROG=qemu-system-$(TARGET_NAME)$(EXESUF)
|
|
||||||
endif
|
|
||||||
|
|
||||||
STPFILES=
|
|
||||||
|
|
||||||
ifdef CONFIG_TRACE_SYSTEMTAP
|
|
||||||
stap: $(QEMU_PROG).stp-installed $(QEMU_PROG).stp $(QEMU_PROG)-simpletrace.stp $(QEMU_PROG)-log.stp
|
|
||||||
|
|
||||||
ifdef CONFIG_USER_ONLY
|
|
||||||
TARGET_TYPE=user
|
|
||||||
else
|
|
||||||
TARGET_TYPE=system
|
|
||||||
endif
|
|
||||||
|
|
||||||
tracetool-y = $(SRC_PATH)/scripts/tracetool.py
|
|
||||||
tracetool-y += $(shell find $(SRC_PATH)/scripts/tracetool -name "*.py")
|
|
||||||
|
|
||||||
$(QEMU_PROG).stp-installed: $(BUILD_DIR)/trace/trace-events-all $(tracetool-y)
|
|
||||||
$(call quiet-command,$(TRACETOOL) \
|
|
||||||
--group=all \
|
|
||||||
--format=stap \
|
|
||||||
--backends=$(TRACE_BACKENDS) \
|
|
||||||
--binary=$(bindir)/$(QEMU_PROG) \
|
|
||||||
--target-name=$(TARGET_NAME) \
|
|
||||||
--target-type=$(TARGET_TYPE) \
|
|
||||||
$< > $@,"GEN","$(TARGET_DIR)$(QEMU_PROG).stp-installed")
|
|
||||||
|
|
||||||
$(QEMU_PROG).stp: $(BUILD_DIR)/trace/trace-events-all $(tracetool-y)
|
|
||||||
$(call quiet-command,$(TRACETOOL) \
|
|
||||||
--group=all \
|
|
||||||
--format=stap \
|
|
||||||
--backends=$(TRACE_BACKENDS) \
|
|
||||||
--binary=$(realpath .)/$(QEMU_PROG) \
|
|
||||||
--target-name=$(TARGET_NAME) \
|
|
||||||
--target-type=$(TARGET_TYPE) \
|
|
||||||
$< > $@,"GEN","$(TARGET_DIR)$(QEMU_PROG).stp")
|
|
||||||
|
|
||||||
$(QEMU_PROG)-simpletrace.stp: $(BUILD_DIR)/trace/trace-events-all $(tracetool-y)
|
|
||||||
$(call quiet-command,$(TRACETOOL) \
|
|
||||||
--group=all \
|
|
||||||
--format=simpletrace-stap \
|
|
||||||
--backends=$(TRACE_BACKENDS) \
|
|
||||||
--probe-prefix=qemu.$(TARGET_TYPE).$(TARGET_NAME) \
|
|
||||||
$< > $@,"GEN","$(TARGET_DIR)$(QEMU_PROG)-simpletrace.stp")
|
|
||||||
|
|
||||||
$(QEMU_PROG)-log.stp: $(BUILD_DIR)/trace/trace-events-all $(tracetool-y)
|
|
||||||
$(call quiet-command,$(TRACETOOL) \
|
|
||||||
--group=all \
|
|
||||||
--format=log-stap \
|
|
||||||
--backends=$(TRACE_BACKENDS) \
|
|
||||||
--probe-prefix=qemu.$(TARGET_TYPE).$(TARGET_NAME) \
|
|
||||||
$< > $@,"GEN","$(TARGET_DIR)$(QEMU_PROG)-log.stp")
|
|
||||||
|
|
||||||
else
|
|
||||||
stap:
|
|
||||||
endif
|
|
||||||
.PHONY: stap
|
|
||||||
|
|
||||||
all: stap
|
|
||||||
|
|
||||||
clean:
|
|
||||||
rm -f *.a *~
|
|
||||||
rm -f $(shell find . -name '*.[od]')
|
|
||||||
rm -f hmp-commands.h gdbstub-xml.c
|
|
||||||
rm -f trace/generated-helpers.c trace/generated-helpers.c-timestamp
|
|
||||||
ifdef CONFIG_TRACE_SYSTEMTAP
|
|
||||||
rm -f *.stp
|
|
||||||
endif
|
|
||||||
|
|
||||||
install: all
|
install: all
|
||||||
ifdef CONFIG_TRACE_SYSTEMTAP
|
|
||||||
$(INSTALL_DIR) "$(DESTDIR)$(qemu_datadir)/../systemtap/tapset"
|
|
||||||
$(INSTALL_DATA) $(QEMU_PROG).stp-installed "$(DESTDIR)$(qemu_datadir)/../systemtap/tapset/$(QEMU_PROG).stp"
|
|
||||||
$(INSTALL_DATA) $(QEMU_PROG)-simpletrace.stp "$(DESTDIR)$(qemu_datadir)/../systemtap/tapset/$(QEMU_PROG)-simpletrace.stp"
|
|
||||||
$(INSTALL_DATA) $(QEMU_PROG)-log.stp "$(DESTDIR)$(qemu_datadir)/../systemtap/tapset/$(QEMU_PROG)-log.stp"
|
|
||||||
endif
|
|
||||||
|
|
||||||
.PHONY: all clean install
|
.PHONY: all clean install
|
||||||
|
|
24
meson.build
24
meson.build
|
@ -958,6 +958,30 @@ foreach target : target_dirs
|
||||||
link_depends: [block_syms, qemu_syms] + exe.get('link_depends', []),
|
link_depends: [block_syms, qemu_syms] + exe.get('link_depends', []),
|
||||||
link_args: link_args,
|
link_args: link_args,
|
||||||
gui_app: exe['gui'])
|
gui_app: exe['gui'])
|
||||||
|
|
||||||
|
if 'CONFIG_TRACE_SYSTEMTAP' in config_host
|
||||||
|
foreach stp: [
|
||||||
|
{'ext': '.stp-build', 'fmt': 'stap', 'bin': meson.current_build_dir() / exe_name, 'install': false},
|
||||||
|
{'ext': '.stp', 'fmt': 'stap', 'bin': get_option('prefix') / get_option('bindir') / exe_name, 'install': true},
|
||||||
|
{'ext': '-simpletrace.stp', 'fmt': 'simpletrace-stap', 'bin': '', 'install': true},
|
||||||
|
{'ext': '-log.stp', 'fmt': 'log-stap', 'bin': '', 'install': true},
|
||||||
|
]
|
||||||
|
custom_target(exe_name + stp['ext'],
|
||||||
|
input: trace_events_all,
|
||||||
|
output: exe_name + stp['ext'],
|
||||||
|
capture: true,
|
||||||
|
install: stp['install'],
|
||||||
|
install_dir: config_host['qemu_datadir'] / '../systemtap/tapset',
|
||||||
|
command: [
|
||||||
|
tracetool, '--group=all', '--format=' + stp['fmt'],
|
||||||
|
'--binary=' + stp['bin'],
|
||||||
|
'--target-name=' + target_name,
|
||||||
|
'--target-type=' + target_type,
|
||||||
|
'--probe-prefix=qemu.' + target_type + '.' + target_name,
|
||||||
|
'@INPUT@',
|
||||||
|
])
|
||||||
|
endforeach
|
||||||
|
endif
|
||||||
endforeach
|
endforeach
|
||||||
endforeach
|
endforeach
|
||||||
|
|
||||||
|
|
|
@ -199,9 +199,6 @@ ne = $(if $(subst $2,,$1)$(subst $1,,$2),y,n)
|
||||||
isempty = $(if $1,n,y)
|
isempty = $(if $1,n,y)
|
||||||
notempty = $(if $1,y,n)
|
notempty = $(if $1,y,n)
|
||||||
|
|
||||||
# Generate files with tracetool
|
|
||||||
TRACETOOL=$(PYTHON) $(SRC_PATH)/scripts/tracetool.py
|
|
||||||
|
|
||||||
.PHONY: clean-timestamp
|
.PHONY: clean-timestamp
|
||||||
clean-timestamp:
|
clean-timestamp:
|
||||||
rm -f *.timestamp
|
rm -f *.timestamp
|
||||||
|
|
|
@ -49,13 +49,13 @@ foreach dir : [ '.' ] + trace_events_subdirs
|
||||||
endif
|
endif
|
||||||
endforeach
|
endforeach
|
||||||
|
|
||||||
custom_target('trace-events-all',
|
trace_events_all = custom_target('trace-events-all',
|
||||||
output: 'trace-events-all',
|
output: 'trace-events-all',
|
||||||
input: trace_events_files,
|
input: trace_events_files,
|
||||||
command: [ 'cat', '@INPUT@' ],
|
command: [ 'cat', '@INPUT@' ],
|
||||||
capture: true,
|
capture: true,
|
||||||
install: true,
|
install: true,
|
||||||
install_dir: config_host['qemu_datadir'])
|
install_dir: config_host['qemu_datadir'])
|
||||||
|
|
||||||
foreach d : [
|
foreach d : [
|
||||||
['generated-tcg-tracers.h', 'tcg-h'],
|
['generated-tcg-tracers.h', 'tcg-h'],
|
||||||
|
|
Loading…
Reference in New Issue