Skip to contentSkip to conversation

oe-run-native: print more error messages

PATCH New Robert Yang 1 participant 2 messages Apr 14, 2017

lore
Share & tools
lore
#0 lore raw

cover oe-run-native: print more error messages

The following changes since commit 3e8ade8c0772c4492efd93824f78cb043281d235:

populate_sdk_ext: Add do_addto_recipe_sysroot to BB_SETSCENE_ENFORCE_WHITELIST (2017-04-14 09:46:11 +0100)

are available in the git repository at:

git://git.openembedded.org/openembedded-core-contrib rbt/rss
http://cgit.openembedded.org/openembedded-core-contrib/log/?h=rbt/rss

Robert Yang (1):
oe-run-native: print more error messages

 scripts/oe-run-native | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)
Signature · 1 line
2.10.2
#1 lore raw

PATCH 1/1 oe-run-native: print more error messages

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.

---
 scripts/oe-run-native | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)
scripts/oe-run-native +11 -3
index 12f7ce6..1131122 100755
@@ -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
Signature · 1 line
2.10.2