From 3fddac4ee959cc09d67a50d4623c29175bee26f0 Mon Sep 17 00:00:00 2001 From: Scott Garman Date: Fri, 22 Jul 2011 18:23:27 -0700 Subject: runqemu: report error if TMPDIR cannot be determined Invoking runqemu outside of the build directory for an in-tree setup results in an empty TMPDIR because bitbake -e cannot be run to find it. A symptom of this problem is running runqemu and getting the following error: Error: Unable to find tunctl binary in Catch this case and report the error to the user. This fixes [YOCTO #1278] (From OE-Core rev: ab5544ac801a976b56468ade0f5d2e95c11feb87) Signed-off-by: Scott Garman Signed-off-by: Richard Purdie --- scripts/runqemu | 29 +++++++++++++++++------------ 1 file changed, 17 insertions(+), 12 deletions(-) (limited to 'scripts/runqemu') diff --git a/scripts/runqemu b/scripts/runqemu index 5aed25a7e5..dacaf7caac 100755 --- a/scripts/runqemu +++ b/scripts/runqemu @@ -272,22 +272,27 @@ setup_tmpdir() { # We have bitbake in PATH, get TMPDIR from bitbake TMPDIR=`bitbake -e | grep TMPDIR=\" | cut -d '=' -f2 | cut -d '"' -f2` + if [ -z "$TMPDIR" ]; then + echo "Error: this script needs to be run from your build directory," + echo "or you need to explicitly set TMPDIR in your environment" + exit 1 + fi fi } setup_sysroot() { - # Toolchain installs set up $OECORE_NATIVE_SYSROOT in their - # environment script. If that variable isn't set, we're - # either in an in-tree build scenario or the environment - # script wasn't source'd. - if [ -z "$OECORE_NATIVE_SYSROOT" ]; then - setup_tmpdir - BUILD_ARCH=`uname -m` - BUILD_OS=`uname | tr '[A-Z]' '[a-z]'` - BUILD_SYS="$BUILD_ARCH-$BUILD_OS" - - OECORE_NATIVE_SYSROOT=$TMPDIR/sysroots/$BUILD_SYS - fi + # Toolchain installs set up $OECORE_NATIVE_SYSROOT in their + # environment script. If that variable isn't set, we're + # either in an in-tree build scenario or the environment + # script wasn't source'd. + if [ -z "$OECORE_NATIVE_SYSROOT" ]; then + setup_tmpdir + BUILD_ARCH=`uname -m` + BUILD_OS=`uname | tr '[A-Z]' '[a-z]'` + BUILD_SYS="$BUILD_ARCH-$BUILD_OS" + + OECORE_NATIVE_SYSROOT=$TMPDIR/sysroots/$BUILD_SYS + fi } # Locate a rootfs image based on defaults defined above -- cgit v1.2.3-54-g00ecf