diff options
author | Stefan Hajnoczi <stefanha@redhat.com> | 2021-01-25 11:09:58 +0000 |
---|---|---|
committer | Stefan Hajnoczi <stefanha@redhat.com> | 2021-02-01 10:50:55 +0000 |
commit | 0572d6cd29d6434de166ce67a29fc8ff64777218 (patch) | |
tree | d5a72da031d632efd582bc5e9acbb0f2167e0e44 | |
parent | 09612de7e9adbe9666a8fa4cc60bab0a29a68ed1 (diff) | |
download | qemu-0572d6cd29d6434de166ce67a29fc8ff64777218.zip |
trace: add meson custom_target() depend_files for tracetool
Re-generate tracetool output when the tracetool source code changes. Use
the same approach as qapi_gen_depends and introduce a tracetool_depends
files list so meson is aware of the dependencies.
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
Message-id: 20210125110958.214017-1-stefanha@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
-rw-r--r-- | meson.build | 28 | ||||
-rw-r--r-- | trace/meson.build | 21 |
2 files changed, 41 insertions, 8 deletions
diff --git a/meson.build b/meson.build index f00b7754fd..2d8b433ff0 100644 --- a/meson.build +++ b/meson.build @@ -1632,6 +1632,31 @@ tracetool = [ python, files('scripts/tracetool.py'), '--backend=' + config_host['TRACE_BACKENDS'] ] +tracetool_depends = files( + 'scripts/tracetool/backend/log.py', + 'scripts/tracetool/backend/__init__.py', + 'scripts/tracetool/backend/dtrace.py', + 'scripts/tracetool/backend/ftrace.py', + 'scripts/tracetool/backend/simple.py', + 'scripts/tracetool/backend/syslog.py', + 'scripts/tracetool/backend/ust.py', + 'scripts/tracetool/format/tcg_h.py', + 'scripts/tracetool/format/ust_events_c.py', + 'scripts/tracetool/format/ust_events_h.py', + 'scripts/tracetool/format/__init__.py', + 'scripts/tracetool/format/d.py', + 'scripts/tracetool/format/tcg_helper_c.py', + 'scripts/tracetool/format/simpletrace_stap.py', + 'scripts/tracetool/format/c.py', + 'scripts/tracetool/format/h.py', + 'scripts/tracetool/format/tcg_helper_h.py', + 'scripts/tracetool/format/log_stap.py', + 'scripts/tracetool/format/stap.py', + 'scripts/tracetool/format/tcg_helper_wrapper_h.py', + 'scripts/tracetool/__init__.py', + 'scripts/tracetool/transform.py', + 'scripts/tracetool/vcpu.py' +) qemu_version_cmd = [find_program('scripts/qemu-version.sh'), meson.current_source_dir(), @@ -2219,7 +2244,8 @@ foreach target : target_dirs '--target-type=' + target_type, '--probe-prefix=qemu.' + target_type + '.' + target_name, '@INPUT@', '@OUTPUT@' - ]) + ], + depend_files: tracetool_depends) endforeach endif endforeach diff --git a/trace/meson.build b/trace/meson.build index a0be8f9b0d..08f83a15c3 100644 --- a/trace/meson.build +++ b/trace/meson.build @@ -12,17 +12,20 @@ foreach dir : [ '.' ] + trace_events_subdirs trace_h = custom_target(fmt.format('trace', 'h'), output: fmt.format('trace', 'h'), input: trace_events_file, - command: [ tracetool, group, '--format=h', '@INPUT@', '@OUTPUT@' ]) + command: [ tracetool, group, '--format=h', '@INPUT@', '@OUTPUT@' ], + depend_files: tracetool_depends) genh += trace_h trace_c = custom_target(fmt.format('trace', 'c'), output: fmt.format('trace', 'c'), input: trace_events_file, - command: [ tracetool, group, '--format=c', '@INPUT@', '@OUTPUT@' ]) + command: [ tracetool, group, '--format=c', '@INPUT@', '@OUTPUT@' ], + depend_files: tracetool_depends) if 'CONFIG_TRACE_UST' in config_host trace_ust_h = custom_target(fmt.format('trace-ust', 'h'), output: fmt.format('trace-ust', 'h'), input: trace_events_file, - command: [ tracetool, group, '--format=ust-events-h', '@INPUT@', '@OUTPUT@' ]) + command: [ tracetool, group, '--format=ust-events-h', '@INPUT@', '@OUTPUT@' ], + depend_files: tracetool_depends) trace_ss.add(trace_ust_h, lttng, urcubp) genh += trace_ust_h endif @@ -31,7 +34,8 @@ foreach dir : [ '.' ] + trace_events_subdirs trace_dtrace = custom_target(fmt.format('trace-dtrace', 'dtrace'), output: fmt.format('trace-dtrace', 'dtrace'), input: trace_events_file, - command: [ tracetool, group, '--format=d', '@INPUT@', '@OUTPUT@' ]) + command: [ tracetool, group, '--format=d', '@INPUT@', '@OUTPUT@' ], + depend_files: tracetool_depends) trace_dtrace_h = custom_target(fmt.format('trace-dtrace', 'h'), output: fmt.format('trace-dtrace', 'h'), input: trace_dtrace, @@ -66,7 +70,8 @@ foreach d : [ gen = custom_target(d[0], output: d[0], input: meson.source_root() / 'trace-events', - command: [ tracetool, '--group=root', '--format=@0@'.format(d[1]), '@INPUT@', '@OUTPUT@' ]) + command: [ tracetool, '--group=root', '--format=@0@'.format(d[1]), '@INPUT@', '@OUTPUT@' ], + depend_files: tracetool_depends) specific_ss.add(when: 'CONFIG_TCG', if_true: gen) endforeach @@ -74,11 +79,13 @@ if 'CONFIG_TRACE_UST' in config_host trace_ust_all_h = custom_target('trace-ust-all.h', output: 'trace-ust-all.h', input: trace_events_files, - command: [ tracetool, '--group=all', '--format=ust-events-h', '@INPUT@', '@OUTPUT@' ]) + command: [ tracetool, '--group=all', '--format=ust-events-h', '@INPUT@', '@OUTPUT@' ], + depend_files: tracetool_depends) trace_ust_all_c = custom_target('trace-ust-all.c', output: 'trace-ust-all.c', input: trace_events_files, - command: [ tracetool, '--group=all', '--format=ust-events-c', '@INPUT@', '@OUTPUT@' ]) + command: [ tracetool, '--group=all', '--format=ust-events-c', '@INPUT@', '@OUTPUT@' ], + depend_files: tracetool_depends) trace_ss.add(trace_ust_all_h, trace_ust_all_c) genh += trace_ust_all_h endif |