diff options
Diffstat (limited to 'yocto-poky/scripts/lib/wic')
-rw-r--r-- | yocto-poky/scripts/lib/wic/imager/direct.py | 3 | ||||
-rw-r--r-- | yocto-poky/scripts/lib/wic/utils/oe/misc.py | 20 |
2 files changed, 17 insertions, 6 deletions
diff --git a/yocto-poky/scripts/lib/wic/imager/direct.py b/yocto-poky/scripts/lib/wic/imager/direct.py index 146a0d153..d5603fa91 100644 --- a/yocto-poky/scripts/lib/wic/imager/direct.py +++ b/yocto-poky/scripts/lib/wic/imager/direct.py @@ -241,8 +241,7 @@ class DirectImageCreator(BaseImageCreator): # IMAGE_OVERHEAD_FACTOR and IMAGE_ROOTFS_EXTRA_SPACE rsize_bb = get_bitbake_var('ROOTFS_SIZE', image_name) if rsize_bb: - # convert from Kb to Mb - part.size = int(round(float(rsize_bb) / 1024.)) + part.size = int(round(float(rsize_bb))) # need to create the filesystems in order to get their # sizes before we can add them and do the layout. # Image.create() actually calls __format_disks() to create diff --git a/yocto-poky/scripts/lib/wic/utils/oe/misc.py b/yocto-poky/scripts/lib/wic/utils/oe/misc.py index 7370d9313..c6d2e5f20 100644 --- a/yocto-poky/scripts/lib/wic/utils/oe/misc.py +++ b/yocto-poky/scripts/lib/wic/utils/oe/misc.py @@ -82,6 +82,12 @@ def exec_cmd(cmd_and_args, as_shell=False, catch=3): return out +def cmd_in_path(cmd, path): + import scriptpath + + scriptpath.add_bitbake_lib_path() + + return bb.utils.which(path, cmd) != "" or False def exec_native_cmd(cmd_and_args, native_sysroot, catch=3): """ @@ -92,15 +98,21 @@ def exec_native_cmd(cmd_and_args, native_sysroot, catch=3): Always need to execute native commands as_shell """ native_paths = \ - "export PATH=%s/sbin:%s/usr/sbin:%s/usr/bin" % \ + "%s/sbin:%s/usr/sbin:%s/usr/bin" % \ (native_sysroot, native_sysroot, native_sysroot) - native_cmd_and_args = "%s;%s" % (native_paths, cmd_and_args) + native_cmd_and_args = "export PATH=%s:$PATH;%s" % \ + (native_paths, cmd_and_args) msger.debug("exec_native_cmd: %s" % cmd_and_args) - args = cmd_and_args.split() + # The reason -1 is used is because there may be "export" commands. + args = cmd_and_args.split(';')[-1].split() msger.debug(args) - ret, out = _exec_cmd(native_cmd_and_args, True, catch) + # If the command isn't in the native sysroot say we failed. + if cmd_in_path(args[0], native_paths): + ret, out = _exec_cmd(native_cmd_and_args, True, catch) + else: + ret = 127 if ret == 127: # shell command-not-found prog = args[0] |