diff options
author | Robert Yang <liezhi.yang@windriver.com> | 2017-04-12 14:29:12 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2017-04-13 10:52:54 +0100 |
commit | e2f6d937bd897083779507ecb9ecd15513b35f1f (patch) | |
tree | 7186efe63cd02b7f20d2a162d6093b5887d85578 /scripts/oe-find-native-sysroot | |
parent | 33263b69e6b470b4f02172dabe6815df8ab0cd0a (diff) | |
download | openembedded-core-contrib-e2f6d937bd897083779507ecb9ecd15513b35f1f.tar.gz |
oe-find-native-sysroot: work with RSS
The generic STAGING_DIR_NATIVE is gone since RSS, so when find
OECORE_NATIVE_SYSROOT, the user has to specify which recipe's
STAGING_DIR_NATIVE will be used as OECORE_NATIVE_SYSROOT.
* The usage is changed from ". oe-find-native-sysroot" to
". oe-find-native-sysroot <recipe>".
* The oe-run-native's usage has changed from
"oe-run-native tool" to "oe-run-native native-recipe tool".
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'scripts/oe-find-native-sysroot')
-rwxr-xr-x | scripts/oe-find-native-sysroot | 56 |
1 files changed, 37 insertions, 19 deletions
diff --git a/scripts/oe-find-native-sysroot b/scripts/oe-find-native-sysroot index 13a5c460398..ad7b2d1fe8f 100755 --- a/scripts/oe-find-native-sysroot +++ b/scripts/oe-find-native-sysroot @@ -9,7 +9,7 @@ # it, e.g: # # SYSROOT_SETUP_SCRIPT=`which oe-find-native-sysroot` -# . $SYSROOT_SETUP_SCRIPT +# . $SYSROOT_SETUP_SCRIPT <recipe> # # This script will terminate execution of your calling program unless # you set a variable $SKIP_STRICT_SYSROOT_CHECK to a non-empty string @@ -30,8 +30,8 @@ # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -if [ "$1" = '--help' -o "$1" = '-h' ] ; then - echo 'Usage: oe-find-native-sysroot [-h|--help]' +if [ "$1" = '--help' -o "$1" = '-h' -o $# -ne 1 ] ; then + echo 'Usage: oe-find-native-sysroot <recipe> [-h|--help]' echo '' echo 'OpenEmbedded find-native-sysroot - helper script to set' echo 'environment variables OECORE_NATIVE_SYSROOT and PSEUDO' @@ -39,11 +39,31 @@ if [ "$1" = '--help' -o "$1" = '-h' ] ; then echo 'executable binary' echo '' echo 'options:' + echo ' recipe its STAGING_DIR_NATIVE is used as native sysroot' echo ' -h, --help show this help message and exit' echo '' exit 2 fi +# Global vars +BITBAKE_E="" +OECORE_NATIVE_SYSROOT="" + +set_oe_native_sysroot(){ + echo "Running bitbake -e $1" + BITBAKE_E="`bitbake -e $1`" + OECORE_NATIVE_SYSROOT=`echo "$BITBAKE_E" | grep ^STAGING_DIR_NATIVE | cut -d '"' -f2` + + if [ "x$OECORE_NATIVE_SYSROOT" = "x" ]; then + # This indicates that there was an error running bitbake -e that + # the user needs to be informed of + echo "There was an error running bitbake to determine STAGING_DIR_NATIVE" + echo "Here is the output from bitbake -e $1" + echo $BITBAKE_E + exit 1 + fi +} + if [ "x$OECORE_NATIVE_SYSROOT" = "x" ]; then BITBAKE=`which bitbake 2> /dev/null` if [ "x$BITBAKE" != "x" ]; then @@ -54,10 +74,10 @@ if [ "x$OECORE_NATIVE_SYSROOT" = "x" ]; then exit 1 fi touch conf/sanity.conf - OECORE_NATIVE_SYSROOT=`bitbake -e | grep ^STAGING_DIR_NATIVE | cut -d '"' -f2` + set_oe_native_sysroot $1 rm -f conf/sanity.conf else - OECORE_NATIVE_SYSROOT=`bitbake -e | grep ^STAGING_DIR_NATIVE | cut -d '"' -f2` + set_oe_native_sysroot $1 fi else echo "Error: Unable to locate bitbake command." @@ -69,21 +89,11 @@ if [ "x$OECORE_NATIVE_SYSROOT" = "x" ]; then fi fi -if [ "x$OECORE_NATIVE_SYSROOT" = "x" ]; then - # This indicates that there was an error running bitbake -e that - # the user needs to be informed of - echo "There was an error running bitbake to determine STAGING_DIR_NATIVE" - echo "Here is the output from bitbake -e" - bitbake -e - exit 1 -fi - -# Set up pseudo command -if [ ! -e "$OECORE_NATIVE_SYSROOT/usr/bin/pseudo" ]; then - echo "Error: Unable to find pseudo binary in $OECORE_NATIVE_SYSROOT/usr/bin/" +if [ ! -e "$OECORE_NATIVE_SYSROOT/" ]; then + echo "Error: $OECORE_NATIVE_SYSROOT doesn't exist." if [ "x$OECORE_DISTRO_VERSION" = "x" ]; then - echo "Have you run 'bitbake meta-ide-support'?" + echo "Have you run 'bitbake $1 -caddto_recipe_sysroot'?" else echo "This shouldn't happen - something is wrong with your toolchain installation" fi @@ -92,4 +102,12 @@ if [ ! -e "$OECORE_NATIVE_SYSROOT/usr/bin/pseudo" ]; then exit 1 fi fi -PSEUDO="$OECORE_NATIVE_SYSROOT/usr/bin/pseudo" + +# Set up pseudo command +pseudo="$OECORE_NATIVE_SYSROOT/usr/bin/pseudo" +if [ -e "$pseudo" ]; then + echo "PSEUDO=$pseudo" + PSEUDO="$pseudo" +else + echo "PSEUDO $pseudo is not found." +fi |