]> code.ossystems Code Review - openembedded-core.git/commitdiff
oe-run-native: print more error messages
authorRobert Yang <liezhi.yang@windriver.com>
Fri, 14 Apr 2017 09:22:25 +0000 (02:22 -0700)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Fri, 14 Apr 2017 09:26:10 +0000 (10:26 +0100)
Fixed:
$ bitbake bmap-tools-native -ccleansstate && bitbake bmap-tools-native && oe-run-native bmap-tools-native bmaptool --help
[snip]
Error: Unable to find '' in <PATH>
[snip]

Note the blank '' word, it was because "tools" was overrided, now fix it.

And also check whether the recipe is a native one or not.

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
scripts/oe-run-native

index 12f7ce60f9754d5bde686c526f0d89986d277536..1131122e6852a7f6c808cc2d6ce95bc1f14baa96 100755 (executable)
@@ -22,7 +22,7 @@
 #
 
 if [ $# -lt 1 -o "$1" = '--help' -o "$1" = '-h' ] ; then
-    echo 'oe-run-native: error: the following arguments are required: <native recipe> <native tool>'
+    echo 'oe-run-native: the following arguments are required: <native recipe> <native tool>'
     echo 'Usage: oe-run-native native-recipe tool [parameters]'
     echo ''
     echo 'OpenEmbedded run-native - runs native tools'
@@ -36,6 +36,13 @@ fi
 
 native_recipe="$1"
 tool="$2"
+
+if [ "${native_recipe%-native}" = "$native_recipe" ]; then
+    echo Error: $native_recipe is not a native recipe
+    echo Error: Use \"oe-run-native -h\" for help
+    exit 1
+fi
+
 shift
 
 SYSROOT_SETUP_SCRIPT=`which oe-find-native-sysroot 2> /dev/null`
@@ -49,12 +56,13 @@ OLD_PATH=$PATH
 
 # look for a tool only in native sysroot
 PATH=$OECORE_NATIVE_SYSROOT/usr/bin:$OECORE_NATIVE_SYSROOT/bin:$OECORE_NATIVE_SYSROOT/usr/sbin:$OECORE_NATIVE_SYSROOT/sbin
-tool=`/usr/bin/which $tool 2>/dev/null`
+tool_find=`/usr/bin/which $tool 2>/dev/null`
 
-if [ -n "$tool" ] ; then
+if [ -n "$tool_find" ] ; then
     # add old path to allow usage of host tools
     PATH=$PATH:$OLD_PATH $@
 else
     echo "Error: Unable to find '$tool' in $PATH"
+    echo "Error: Have you run 'bitbake $native_recipe -caddto_recipe_sysroot'?"
     exit 1
 fi