path: root/scripts
diff options
authorChang Rebecca Swee Fun <rebecca.swee.fun.chang@intel.com>2018-01-11 22:55:20 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-01-12 08:43:54 +0000
commit89df0d31c9dd22ceba4c95a2a56ca78e58d871a8 (patch)
treefc8211972546bccb069137521e967410152351d0 /scripts
parent8aba1fd023ce3c6767bf42b9faf9ec14fd7c4d02 (diff)
scripts/wic: append bitbake executable file path in eSDK environment
wic needs a set of tools to be available from sysroots. wic will find bitbake executable within the environment, and wic was unable to locate bitbake executable within eSDK because it wasn't setup with the OE build environment script. Hence, we need to add bitbake file path into the environment PATH for wic to be able to discover it and import bb modules. Signed-off-by: Chang Rebecca Swee Fun <rebecca.swee.fun.chang@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'scripts')
1 files changed, 12 insertions, 0 deletions
diff --git a/scripts/wic b/scripts/wic
index 0d98875715..293a216d71 100755
--- a/scripts/wic
+++ b/scripts/wic
@@ -46,6 +46,18 @@ sys.path.insert(0, lib_path)
import scriptpath
+# Check whether wic is running within eSDK environment
+sdkroot = scripts_path
+if os.environ.get('SDKTARGETSYSROOT'):
+ while sdkroot != '' and sdkroot != os.sep:
+ if os.path.exists(os.path.join(sdkroot, '.devtoolbase')):
+ # .devtoolbase only exists within eSDK
+ # If found, initialize bitbake path for eSDK environment and append to PATH
+ sdkroot = os.path.join(os.path.dirname(scripts_path), 'bitbake', 'bin')
+ os.environ['PATH'] += ":" + sdkroot
+ break
+ sdkroot = os.path.dirname(sdkroot)
bitbake_exe = spawn.find_executable('bitbake')
if bitbake_exe:
bitbake_path = scriptpath.add_bitbake_lib_path()