runqemu: show bitbake errors to user

In certain edge cases, bitbake may fail to run and cause setup_tmpdir()
within runqemu to fail, and not give the user a helpful error message.
Catch this case and show the user the output of bitbake -e.

This fixes [YOCTO #3112]

(From OE-Core rev: 465d7b6e66b5a55706535e194b3e44e11ee542c6)

Signed-off-by: Scott Garman <scott.a.garman@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:
Scott Garman 2012-09-18 22:50:50 -07:00 committed by Richard Purdie
parent be174d7bc3
commit 32fdbd879c
1 changed files with 10 additions and 2 deletions

View File

@ -283,8 +283,16 @@ setup_tmpdir() {
# We have bitbake in PATH, get OE_TMPDIR from bitbake
OE_TMPDIR=`MACHINE=$MACHINE bitbake -e | grep ^TMPDIR=\" | cut -d '=' -f2 | cut -d '"' -f2`
if [ -z "$OE_TMPDIR" ]; then
echo "Error: this script needs to be run from your build directory,"
echo "or you need to explicitly set OE_TMPDIR in your environment"
# Check for errors from bitbake that the user needs to know about
BITBAKE_OUTPUT=`bitbake -e | wc -l`
if [ "$BITBAKE_OUTPUT" -eq "0" ]; then
echo "Error: this script needs to be run from your build directory,"
echo "or you need to explicitly set OE_TMPDIR in your environment"
else
echo "There was an error running bitbake to determine TMPDIR"
echo "Here is the output from 'bitbake -e':"
bitbake -e
fi
exit 1
fi
fi