mirror of
https://git.yoctoproject.org/poky
synced 2026-09-20 03:49:32 +02:00
wic: Make exec_native_command() fail if a command isn't found
Because exec_cmd() return values can in certain cases be non-zero yet non-fatal, we don't want to automatically make them fatal (though there should at least be a warning in such cases, which this patch also does); non-zero return values are definitely fatal however if they mean that a native command wasn't found, so have exec_native_cmd() check the return value of exec_cmd() for that case, and bail out if so. [YOCTO #5835] (From OE-Core rev: 43ac6e3216c5d985d6f90a28e727e397df616267) Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
8e894d111d
commit
bb0c26960d
@@ -51,7 +51,7 @@ def exec_cmd(cmd_and_args, as_shell = False, catch = 3):
|
|||||||
# parted always fails to reload part table with loop devices. This
|
# parted always fails to reload part table with loop devices. This
|
||||||
# prevents us from distinguishing real errors based on return
|
# prevents us from distinguishing real errors based on return
|
||||||
# code.
|
# code.
|
||||||
msger.debug("WARNING: %s returned '%s' instead of 0" % (args[0], rc))
|
msger.warning("WARNING: %s returned '%s' instead of 0" % (cmd_and_args, rc))
|
||||||
|
|
||||||
return (rc, out)
|
return (rc, out)
|
||||||
|
|
||||||
@@ -82,7 +82,14 @@ def exec_native_cmd(cmd_and_args, native_sysroot, catch = 3):
|
|||||||
args = cmd_and_args.split()
|
args = cmd_and_args.split()
|
||||||
msger.debug(args)
|
msger.debug(args)
|
||||||
|
|
||||||
return exec_cmd(native_cmd_and_args, True, catch)
|
rc, out = exec_cmd(native_cmd_and_args, True, catch)
|
||||||
|
|
||||||
|
if rc == 127: # shell command-not-found
|
||||||
|
msger.error("A native (host) program required to build the image "
|
||||||
|
"was not found (see details above). Please make sure "
|
||||||
|
"it's installed and try again.")
|
||||||
|
|
||||||
|
return (rc, out)
|
||||||
|
|
||||||
|
|
||||||
def exec_native_cmd_quiet(cmd_and_args, native_sysroot):
|
def exec_native_cmd_quiet(cmd_and_args, native_sysroot):
|
||||||
|
|||||||
Reference in New Issue
Block a user