aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Delevoryas <peter@pjd.dev>2022-07-02 11:56:04 -0700
committerPhilippe Mathieu-Daudé <f4bug@amsat.org>2022-07-13 00:06:02 +0200
commit50b13d31f4cc6c70330cc3a92561a581fc176ec9 (patch)
treeb1f0ca71799d4467fc6c535f2d61ce5325d98b3a
parent52eaefd36c33d17c5c52de0d02f1edf7400c0abb (diff)
downloadqemu-50b13d31f4cc6c70330cc3a92561a581fc176ec9.zip
qemu-50b13d31f4cc6c70330cc3a92561a581fc176ec9.tar.gz
qemu-50b13d31f4cc6c70330cc3a92561a581fc176ec9.tar.bz2
avocado: Fix BUILD_DIR if it's equal to SOURCE_DIR
I like to build QEMU from the root source directory [*], rather than cd'ing into the build directory. This code may as well include a search path for that, so that you can run avocado tests individually without specifying "-p qemu_bin=build/qemu-system-arm" manually. [*] See commit dedad02720 ("configure: add support for pseudo-"in source tree" builds") Signed-off-by: Peter Delevoryas <peter@pjd.dev> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Message-Id: <20220702185604.46643-1-peter@pjd.dev> [PMD: Mention commit dedad02720] Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
-rw-r--r--tests/avocado/avocado_qemu/__init__.py17
1 files changed, 9 insertions, 8 deletions
diff --git a/tests/avocado/avocado_qemu/__init__.py b/tests/avocado/avocado_qemu/__init__.py
index b656a70..ed4853c 100644
--- a/tests/avocado/avocado_qemu/__init__.py
+++ b/tests/avocado/avocado_qemu/__init__.py
@@ -120,14 +120,15 @@ def pick_default_qemu_bin(bin_prefix='qemu-system-', arch=None):
# qemu binary path does not match arch for powerpc, handle it
if 'ppc64le' in arch:
arch = 'ppc64'
- qemu_bin_relative_path = os.path.join(".", bin_prefix + arch)
- if is_readable_executable_file(qemu_bin_relative_path):
- return qemu_bin_relative_path
-
- qemu_bin_from_bld_dir_path = os.path.join(BUILD_DIR,
- qemu_bin_relative_path)
- if is_readable_executable_file(qemu_bin_from_bld_dir_path):
- return qemu_bin_from_bld_dir_path
+ qemu_bin_name = bin_prefix + arch
+ qemu_bin_paths = [
+ os.path.join(".", qemu_bin_name),
+ os.path.join(BUILD_DIR, qemu_bin_name),
+ os.path.join(BUILD_DIR, "build", qemu_bin_name),
+ ]
+ for path in qemu_bin_paths:
+ if is_readable_executable_file(path):
+ return path
return None