[gnome-continuous-yocto/gnomeostree-3.28-rocko: 5652/8267] runqemu: get qemu from qemu-helper-native sysroot



commit 7ffcdd0a07d70d9322c68dd4caebcaebfc3a2c96
Author: Ed Bartosh <ed bartosh linux intel com>
Date:   Wed Apr 12 23:40:57 2017 +0300

    runqemu: get qemu from qemu-helper-native sysroot
    
    If rm_work is enabled image native sysroot can be removed.
    This makes runqemu to fail trying to find qemu binary.
    
    Used native sysroot of qemu-helper-native to find system qemu
    binary.
    
    (From OE-Core rev: d42c02caaa4d6fb47681aa7ffe8b27fa38141e6a)
    
    Signed-off-by: Ed Bartosh <ed bartosh linux intel com>
    Signed-off-by: Richard Purdie <richard purdie linuxfoundation org>

 scripts/runqemu |   13 ++++++++++++-
 1 files changed, 12 insertions(+), 1 deletions(-)
---
diff --git a/scripts/runqemu b/scripts/runqemu
index 5b5d56b..a8bb9eb 100755
--- a/scripts/runqemu
+++ b/scripts/runqemu
@@ -1056,7 +1056,18 @@ class BaseConfig(object):
         if not qemu_system:
             raise Exception("Failed to boot, QB_SYSTEM_NAME is NULL!")
 
-        qemu_bin = '%s/%s' % (self.get('STAGING_BINDIR_NATIVE'), qemu_system)
+        cmd = 'bitbake qemu-helper-native -e'
+        logger.info('Running %s...' % cmd)
+        out = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE)
+        out = out.stdout.read().decode('utf-8')
+
+        match = re.search('^STAGING_BINDIR_NATIVE="(.*)"', out, re.M)
+        if match:
+            bindir_native  = match.group(1)
+        else:
+            raise Exception("Can't find STAGING_BINDIR_NATIVE in '%s' output" % cmd)
+
+        qemu_bin = '%s/%s' % (bindir_native, qemu_system)
 
         # It is possible to have qemu-native in ASSUME_PROVIDED, and it won't
         # find QEMU in sysroot, it needs to use host's qemu.


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]