From: Maciej Borzecki Date: Mon, 19 Dec 2016 11:20:57 +0000 (+0100) Subject: oeqa/utils/commands.py: allow use of binaries from native sysroot X-Git-Tag: uninative-1.5~996 X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=f2a04631949db72d4261d1c142c5044fad3741f9;p=openembedded-core.git oeqa/utils/commands.py: allow use of binaries from native sysroot Tests may need to run a native tool that is not available on the host filesystem, but can be built using one of the *-native recipes. In such case, the tool will be available in native sysroot, and running in from that location will require adjustments to PATH. runCmd() can now take a path to native sysroot as one of its arguments and setup PATH accordingly. Signed-off-by: Maciej Borzecki Signed-off-by: Ross Burton --- diff --git a/meta/lib/oeqa/utils/commands.py b/meta/lib/oeqa/utils/commands.py index 3a68b001b7..0425c9fd98 100644 --- a/meta/lib/oeqa/utils/commands.py +++ b/meta/lib/oeqa/utils/commands.py @@ -97,9 +97,16 @@ class Result(object): pass -def runCmd(command, ignore_status=False, timeout=None, assert_error=True, **options): +def runCmd(command, ignore_status=False, timeout=None, assert_error=True, native_sysroot=None, **options): result = Result() + if native_sysroot: + extra_paths = "%s/sbin:%s/usr/sbin:%s/usr/bin" % \ + (native_sysroot, native_sysroot, native_sysroot) + nenv = dict(options.get('env', os.environ)) + nenv['PATH'] = extra_paths + ':' + nenv.get('PATH', '') + options['env'] = nenv + cmd = Command(command, timeout=timeout, **options) cmd.run()