mirror of https://gitee.com/openkylin/qemu.git
meson: qtest: set "depends" correctly
This does not have any effect on Meson's behavior itself, since "meson test" always rebuilds everything (that is one reason why we are not using it...). However, mtest2make can use this information to do a selective rebuild for the requested suite. Cc: Thomas Huth <thuth@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
61f8641644
commit
fd5eef85fe
|
@ -1103,7 +1103,7 @@ common_all = static_library('common',
|
|||
|
||||
feature_to_c = find_program('scripts/feature_to_c.sh')
|
||||
|
||||
emulators = []
|
||||
emulators = {}
|
||||
foreach target : target_dirs
|
||||
config_target = config_target_mak[target]
|
||||
target_name = config_target['TARGET_NAME']
|
||||
|
@ -1222,7 +1222,8 @@ foreach target : target_dirs
|
|||
}]
|
||||
endif
|
||||
foreach exe: execs
|
||||
emulators += executable(exe['name'], exe['sources'],
|
||||
emulators += {exe['name']:
|
||||
executable(exe['name'], exe['sources'],
|
||||
install: true,
|
||||
c_args: c_args,
|
||||
dependencies: arch_deps + deps + exe['dependencies'],
|
||||
|
@ -1231,6 +1232,7 @@ foreach target : target_dirs
|
|||
link_depends: [block_syms, qemu_syms] + exe.get('link_depends', []),
|
||||
link_args: link_args,
|
||||
gui_app: exe['gui'])
|
||||
}
|
||||
|
||||
if 'CONFIG_TRACE_SYSTEMTAP' in config_host
|
||||
foreach stp: [
|
||||
|
@ -1276,7 +1278,6 @@ if xkbcommon.found()
|
|||
dependencies: [qemuutil, xkbcommon], install: have_tools)
|
||||
endif
|
||||
|
||||
qemu_block_tools = []
|
||||
if have_tools
|
||||
qemu_img = executable('qemu-img', [files('qemu-img.c'), hxdep],
|
||||
dependencies: [authz, block, crypto, io, qom, qemuutil], install: true)
|
||||
|
|
|
@ -228,10 +228,15 @@ foreach dir : target_dirs
|
|||
endif
|
||||
|
||||
target_base = dir.split('-')[0]
|
||||
qtest_emulator = emulators['qemu-system-' + target_base]
|
||||
qtests = get_variable('qtests_' + target_base, []) + qtests_generic
|
||||
|
||||
test_deps = []
|
||||
qtest_env = environment()
|
||||
qtest_env.set('QTEST_QEMU_IMG', './qemu-img')
|
||||
if have_tools
|
||||
qtest_env.set('QTEST_QEMU_IMG', './qemu-img')
|
||||
test_deps += [qemu_img]
|
||||
endif
|
||||
qtest_env.set('G_TEST_DBUS_DAEMON', meson.source_root() / 'tests/dbus-vmstate-daemon.sh')
|
||||
qtest_env.set('QTEST_QEMU_BINARY', './qemu-system-' + target_base)
|
||||
|
||||
|
@ -248,6 +253,7 @@ foreach dir : target_dirs
|
|||
# FIXME: missing dependency on the emulator binary and qemu-img
|
||||
test('qtest-@0@: @1@'.format(target_base, test),
|
||||
qtest_executables[test],
|
||||
depends: [test_deps, qtest_emulator],
|
||||
env: qtest_env,
|
||||
args: ['--tap', '-k'],
|
||||
protocol: 'tap',
|
||||
|
|
Loading…
Reference in New Issue