diff options
| author | Paul Eggleton <paul.eggleton@linux.intel.com> | 2015-04-20 17:47:05 +0100 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2015-04-24 11:06:54 +0100 |
| commit | 5b1a6abcdedb51aee9b0a80d4c9a1ded6243f6e9 (patch) | |
| tree | dabf6a4f228f4c5fd5cdcab5ca4dfad43ce73b4f /scripts | |
| parent | d997e75fc6afa2710deb12c7922795cedef830ae (diff) | |
| download | poky-5b1a6abcdedb51aee9b0a80d4c9a1ded6243f6e9.tar.gz | |
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@windriver.com> for this fix.
Fixes [YOCTO #7614].
(From OE-Core rev: 27942f546e6b08cdf9f2dbda2e24d237cde7f5f5)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'scripts')
| -rw-r--r-- | scripts/lib/devtool/__init__.py | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/scripts/lib/devtool/__init__.py b/scripts/lib/devtool/__init__.py index 3f8158e24a..78ae0aabc8 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): | |||
| 30 | if not 'cwd' in options: | 30 | if not 'cwd' in options: |
| 31 | options["cwd"] = builddir | 31 | options["cwd"] = builddir |
| 32 | if init_path: | 32 | if init_path: |
| 33 | # As the OE init script makes use of BASH_SOURCE to determine OEROOT, | ||
| 34 | # and can't determine it when running under dash, we need to set | ||
| 35 | # the executable to bash to correctly set things up | ||
| 36 | if not 'executable' in options: | ||
| 37 | options['executable'] = 'bash' | ||
| 33 | logger.debug('Executing command: "%s" using init path %s' % (cmd, init_path)) | 38 | logger.debug('Executing command: "%s" using init path %s' % (cmd, init_path)) |
| 34 | init_prefix = '. %s %s > /dev/null && ' % (init_path, builddir) | 39 | init_prefix = '. %s %s > /dev/null && ' % (init_path, builddir) |
| 35 | else: | 40 | else: |
