diff options
| -rwxr-xr-x | scripts/runqemu | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/scripts/runqemu b/scripts/runqemu index af254234df..0a9cb946bf 100755 --- a/scripts/runqemu +++ b/scripts/runqemu | |||
| @@ -906,6 +906,21 @@ class BaseConfig(object): | |||
| 906 | raise Exception("Failed to boot, QB_SYSTEM_NAME is NULL!") | 906 | raise Exception("Failed to boot, QB_SYSTEM_NAME is NULL!") |
| 907 | 907 | ||
| 908 | qemu_bin = '%s/%s' % (self.get('STAGING_BINDIR_NATIVE'), qemu_system) | 908 | qemu_bin = '%s/%s' % (self.get('STAGING_BINDIR_NATIVE'), qemu_system) |
| 909 | |||
| 910 | # It is possible to have qemu-native in ASSUME_PROVIDED, and it won't | ||
| 911 | # find QEMU in sysroot, it needs to use host's qemu. | ||
| 912 | if not os.path.exists(qemu_bin): | ||
| 913 | logger.info("QEMU binary not found in %s, trying host's QEMU" % qemu_bin) | ||
| 914 | for path in (os.environ['PATH'] or '').split(':'): | ||
| 915 | qemu_bin_tmp = os.path.join(path, qemu_system) | ||
| 916 | logger.info("Trying: %s" % qemu_bin_tmp) | ||
| 917 | if os.path.exists(qemu_bin_tmp): | ||
| 918 | qemu_bin = qemu_bin_tmp | ||
| 919 | if not os.path.isabs(qemu_bin): | ||
| 920 | qemu_bin = os.path.abspath(qemu_bin) | ||
| 921 | logger.info("Using host's QEMU: %s" % qemu_bin) | ||
| 922 | break | ||
| 923 | |||
| 909 | if not os.access(qemu_bin, os.X_OK): | 924 | if not os.access(qemu_bin, os.X_OK): |
| 910 | raise OEPathError("No QEMU binary '%s' could be found" % qemu_bin) | 925 | raise OEPathError("No QEMU binary '%s' could be found" % qemu_bin) |
| 911 | 926 | ||
