Currently gdb is only used by TCG based tests but hypervisors want to use gdbstub too. To be able to test this case we need to always probe and report the gdb we have.
Reviewed-by: Pierrick Bouvier <[email protected]> Reviewed-by: Marc-André Lureau <[email protected]> Message-ID: <[email protected]> Signed-off-by: Alex Bennée <[email protected]> --- meson.build | 15 +++++++-------- tests/functional/meson.build | 5 ++--- tests/tcg/meson.build | 5 ----- 3 files changed, 9 insertions(+), 16 deletions(-) diff --git a/meson.build b/meson.build index 48da6cf3e6b..99c836b3ae6 100644 --- a/meson.build +++ b/meson.build @@ -163,6 +163,12 @@ else iasl = find_program(get_option('iasl'), required: true) endif +if get_option('gdb') == '' + gdb = find_program(['gdb-multiarch', 'gdb'], required: false) +else + gdb = find_program(get_option('gdb'), required: true) +endif + edk2_targets = [ 'arm-softmmu', 'aarch64-softmmu', 'i386-softmmu', 'x86_64-softmmu', 'riscv64-softmmu', 'loongarch64-softmmu' ] unpack_edk2_blobs = false foreach target : edk2_targets @@ -4720,14 +4726,7 @@ summary(summary_info, bool_yn: true, section: 'Directories') summary_info = {} summary_info += {'python': '@0@ (version: @1@)'.format(python.full_path(), python.language_version())} summary_info += {'sphinx-build': sphinx_build} - -# FIXME: the [binaries] section of machine files, which can be probed -# with find_program(), would be great for passing gdb and genisoimage -# paths from configure to Meson. However, there seems to be no way to -# hide a program (for example if gdb is too old). -if config_host.has_key('GDB') - summary_info += {'gdb': config_host['GDB']} -endif +summary_info += {'gdb': gdb} summary_info += {'iasl': iasl} summary_info += {'genisoimage': config_host['GENISOIMAGE']} if host_os == 'windows' and have_ga diff --git a/tests/functional/meson.build b/tests/functional/meson.build index c7362dd00ef..68c601d4036 100644 --- a/tests/functional/meson.build +++ b/tests/functional/meson.build @@ -83,9 +83,8 @@ foreach speed : ['quick', 'thorough'] separator : ':') # Define the GDB environment variable if gdb is available. - gdb = get_option('gdb') - if gdb != '' - test_env.set('QEMU_TEST_GDB', gdb) + if gdb.found() + test_env.set('QEMU_TEST_GDB', gdb.full_path()) endif foreach test : target_tests diff --git a/tests/tcg/meson.build b/tests/tcg/meson.build index 4c0e30756d5..f46216521c2 100644 --- a/tests/tcg/meson.build +++ b/tests/tcg/meson.build @@ -1,11 +1,6 @@ env = find_program('env') docker_wrapper = find_program('../docker/docker.py') -if get_option('gdb') != '' - gdb = find_program(get_option('gdb'), required: true) -else - gdb = find_program(['gdb-multiarch', 'gdb'], required: false) -endif prog_check_plugin_output = find_program('./scripts/check_plugin_output.sh') prog_gdb_test = find_program('../guest-debug/run-test.py') prog_record_replay = find_program('./scripts/record_replay.sh') -- 2.47.3
