[oe-commits] Paul Eggleton : devtool: force use of bash when running build within extensible SDK
git at git.openembedded.org
git at git.openembedded.org
Fri Apr 24 10:08:33 UTC 2015
Module: openembedded-core.git
Branch: master
Commit: 27942f546e6b08cdf9f2dbda2e24d237cde7f5f5
URL: http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=27942f546e6b08cdf9f2dbda2e24d237cde7f5f5
Author: Paul Eggleton <paul.eggleton at linux.intel.com>
Date: Mon Apr 20 17:47:05 2015 +0100
devtool: force use of bash when running build within extensible SDK
Ubuntu's default dash shell causes oe-init-build-env to behave a bit
differently - (a) it can't pick up the OE root directory and (b) it
can't see any build directory specified as a command-line argument
(since dash doesn't pass through any arguments specified to sourced
scripts). We could work around these but doing so requires some internal
knowledge of the script; a much simpler fix is just to force running the
command under bash since it's expected to be installed on every distro.
Thanks to Chen Qi <Qi.Chen at windriver.com> for this fix.
Fixes [YOCTO #7614].
Signed-off-by: Paul Eggleton <paul.eggleton at linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
scripts/lib/devtool/__init__.py | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/scripts/lib/devtool/__init__.py b/scripts/lib/devtool/__init__.py
index 3f8158e..78ae0aa 100644
--- a/scripts/lib/devtool/__init__.py
+++ b/scripts/lib/devtool/__init__.py
@@ -30,6 +30,11 @@ def exec_build_env_command(init_path, builddir, cmd, watch=False, **options):
if not 'cwd' in options:
options["cwd"] = builddir
if init_path:
+ # As the OE init script makes use of BASH_SOURCE to determine OEROOT,
+ # and can't determine it when running under dash, we need to set
+ # the executable to bash to correctly set things up
+ if not 'executable' in options:
+ options['executable'] = 'bash'
logger.debug('Executing command: "%s" using init path %s' % (cmd, init_path))
init_prefix = '. %s %s > /dev/null && ' % (init_path, builddir)
else:
More information about the Openembedded-commits
mailing list