Message ID | 20250108121054.1126164-31-alex.bennee@linaro.org |
---|---|
State | New |
Headers | show |
Series | testing/next: functional tests, qtest clocks, vm and keymaps (pre-PR-FINAL) | expand |
On 1/8/25 13:10, Alex Bennée wrote: > I was seeing failures on vnc-display-test on FreeBSD: > > make vm-build-freebsd V=1 TARGET_LIST=aarch64-softmmu BUILD_TARGET=check-qtest QEMU_LOCAL=1 DEBUG=1 > > Leads to: > > qemu-system-aarch64: -vnc none: could not read keymap file: 'en-us' > Broken pipe > ../src/tests/qtest/libqtest.c:196: kill_qemu() tried to terminate QEMU process but encountered exit status 1 (expected 0) > > which was as far as I could tell because we don't populate the > $BLD/pc-bios/keymaps (although something attempts to symlink > qemu-bundle/usr/local/share/qemu/keymaps/ to that dir). That something being scripts/symlink-install-tree.py. This is where QEMU looks for the keymaps and your patch ensures that it is populated before running the test. Please add the above info to the commit message just for accuracy; otherwise: Reviewed-by: Paolo Bonzini <pbonzini@redhat.com> Paolo > Signed-off-by: Alex Bennée <alex.bennee@linaro.org> > Cc: Paolo Bonzini <pbonzini@redhat.com> > --- > pc-bios/keymaps/meson.build | 17 ++++++++--------- > tests/qtest/meson.build | 2 +- > 2 files changed, 9 insertions(+), 10 deletions(-) > > diff --git a/pc-bios/keymaps/meson.build b/pc-bios/keymaps/meson.build > index 0bd8ce0077..a79a09b276 100644 > --- a/pc-bios/keymaps/meson.build > +++ b/pc-bios/keymaps/meson.build > @@ -39,19 +39,18 @@ else > native_qemu_keymap = qemu_keymap > endif > > +keymap_targets = [] > if native_qemu_keymap.found() > - t = [] > foreach km, args: keymaps > # generate with qemu-kvm > - t += custom_target(km, > - build_by_default: true, > - output: km, > - command: [native_qemu_keymap, '-f', '@OUTPUT@', args.split()], > - install: have_system, > - install_dir: qemu_datadir / 'keymaps') > + keymap_targets += custom_target(km, > + build_by_default: true, > + output: km, > + command: [native_qemu_keymap, '-f', '@OUTPUT@', args.split()], > + install: have_system, > + install_dir: qemu_datadir / 'keymaps') > endforeach > - > - alias_target('update-keymaps', t) > + alias_target('update-keymaps', keymap_targets) > else > install_data(keymaps.keys(), install_dir: qemu_datadir / 'keymaps') > endif > diff --git a/tests/qtest/meson.build b/tests/qtest/meson.build > index c5a70021c5..f75c1057a4 100644 > --- a/tests/qtest/meson.build > +++ b/tests/qtest/meson.build > @@ -383,7 +383,7 @@ qtests = { > if vnc.found() > gvnc = dependency('gvnc-1.0', method: 'pkg-config', required: false) > if gvnc.found() > - qtests += {'vnc-display-test': [gvnc]} > + qtests += {'vnc-display-test': [gvnc, keymap_targets]} > qtests_generic += [ 'vnc-display-test' ] > endif > endif
diff --git a/pc-bios/keymaps/meson.build b/pc-bios/keymaps/meson.build index 0bd8ce0077..a79a09b276 100644 --- a/pc-bios/keymaps/meson.build +++ b/pc-bios/keymaps/meson.build @@ -39,19 +39,18 @@ else native_qemu_keymap = qemu_keymap endif +keymap_targets = [] if native_qemu_keymap.found() - t = [] foreach km, args: keymaps # generate with qemu-kvm - t += custom_target(km, - build_by_default: true, - output: km, - command: [native_qemu_keymap, '-f', '@OUTPUT@', args.split()], - install: have_system, - install_dir: qemu_datadir / 'keymaps') + keymap_targets += custom_target(km, + build_by_default: true, + output: km, + command: [native_qemu_keymap, '-f', '@OUTPUT@', args.split()], + install: have_system, + install_dir: qemu_datadir / 'keymaps') endforeach - - alias_target('update-keymaps', t) + alias_target('update-keymaps', keymap_targets) else install_data(keymaps.keys(), install_dir: qemu_datadir / 'keymaps') endif diff --git a/tests/qtest/meson.build b/tests/qtest/meson.build index c5a70021c5..f75c1057a4 100644 --- a/tests/qtest/meson.build +++ b/tests/qtest/meson.build @@ -383,7 +383,7 @@ qtests = { if vnc.found() gvnc = dependency('gvnc-1.0', method: 'pkg-config', required: false) if gvnc.found() - qtests += {'vnc-display-test': [gvnc]} + qtests += {'vnc-display-test': [gvnc, keymap_targets]} qtests_generic += [ 'vnc-display-test' ] endif endif
I was seeing failures on vnc-display-test on FreeBSD: make vm-build-freebsd V=1 TARGET_LIST=aarch64-softmmu BUILD_TARGET=check-qtest QEMU_LOCAL=1 DEBUG=1 Leads to: qemu-system-aarch64: -vnc none: could not read keymap file: 'en-us' Broken pipe ../src/tests/qtest/libqtest.c:196: kill_qemu() tried to terminate QEMU process but encountered exit status 1 (expected 0) which was as far as I could tell because we don't populate the $BLD/pc-bios/keymaps (although something attempts to symlink qemu-bundle/usr/local/share/qemu/keymaps/ to that dir). Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Cc: Paolo Bonzini <pbonzini@redhat.com> --- pc-bios/keymaps/meson.build | 17 ++++++++--------- tests/qtest/meson.build | 2 +- 2 files changed, 9 insertions(+), 10 deletions(-)