summaryrefslogtreecommitdiffstats
path: root/scripts/poky-find-native-sysroot
diff options
context:
space:
mode:
authorJoshua Lock <josh@linux.intel.com>2010-09-03 18:34:24 +0100
committerJoshua Lock <josh@linux.intel.com>2010-09-07 11:22:54 +0100
commit9b800fe261650e4300795ce9762422d93cd31251 (patch)
treeeee1bd6e1909a46dd5b5656b73a56942fdd2aa94 /scripts/poky-find-native-sysroot
parentc97f3a5df4f498ec663d0bde88ed2652dd4db181 (diff)
downloadpoky-9b800fe261650e4300795ce9762422d93cd31251.tar.gz
scripts: use the exported POKY_NATIVE_SYSROOT variable
Rather than trying to determine things through guess-work use the newly exported variables to determine where the native binaries reside and whether we are running in a build directory or not. Signed-off-by: Joshua Lock <josh@linux.intel.com>
Diffstat (limited to 'scripts/poky-find-native-sysroot')
-rwxr-xr-xscripts/poky-find-native-sysroot59
1 files changed, 27 insertions, 32 deletions
diff --git a/scripts/poky-find-native-sysroot b/scripts/poky-find-native-sysroot
index fe36a2a932..9182f9d170 100755
--- a/scripts/poky-find-native-sysroot
+++ b/scripts/poky-find-native-sysroot
@@ -1,10 +1,9 @@
1#!/bin/bash 1#!/bin/bash
2# 2#
3# Find a native sysroot to use - either from an in-tree Poky build or 3# Find a native sysroot to use - either from an in-tree Poky build or
4# from a toolchain installation in /opt/poky. It then sets the variables 4# from a toolchain installation in /opt/poky. It then ensures the variable
5# $NATIVE_SYSROOT_DIR to the sysroot's base directory, $PSEUDO to the 5# $POKY_NATIVE_SYSROOT is set to the sysroot's base directory, and sets
6# path of the pseudo binary, and $SYSROOT_MODE is set to "in-tree" or 6# $PSEUDO to the path of the pseudo binary.
7# "toolchain".
8# 7#
9# This script is intended to be run within other scripts by source'ing 8# This script is intended to be run within other scripts by source'ing
10# it, e.g: 9# it, e.g:
@@ -31,40 +30,36 @@
31# with this program; if not, write to the Free Software Foundation, Inc., 30# with this program; if not, write to the Free Software Foundation, Inc.,
32# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. 31# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
33 32
34BITBAKE=`which bitbake` 33if [ -z "$POKY_NATIVE_SYSROOT" ]; then
35if [ -z "$BITBAKE" ]; then 34 BITBAKE=`which bitbake`
36 SYSROOT_MODE="toolchain" 35 if [ "x$BITBAKE" != "x" ]; then
37 NATIVE_SYSROOT_DIR=`find /opt/poky -name "tunctl" | sed 's/\/usr\/bin\/tunctl//'` 36 if [ "$UID" = "0" ]; then
38else 37 # Root cannot run bitbake unless sanity checking is disabled
39 SYSROOT_MODE="in-tree" 38 if [ ! -d "./conf" ]; then
40 if [ "$UID" = "0" ]; then 39 echo "Error: root cannot run bitbake by default, and I cannot find a ./conf directory to be able to disable sanity checking"
41 # Root cannot run bitbake unless sanity checking is disabled 40 exit 1
42 if [ ! -d "./conf" ]; then 41 fi
43 echo "Error: root cannot run bitbake by default, and I cannot find a ./conf directory to be able to disable sanity checking" 42 touch conf/sanity.conf
44 exit 1 43 POKY_NATIVE_SYSROOT=`bitbake -e | grep ^STAGING_DIR_NATIVE | cut -d '=' -f2 | cut -d '"' -f2`
45 fi 44 rm -f conf/sanity.conf
46 touch conf/sanity.conf 45 else
47 NATIVE_SYSROOT_DIR=`bitbake -e | grep ^STAGING_DIR_NATIVE | cut -d '=' -f2 | cut -d '"' -f2` 46 POKY_NATIVE_SYSROOT=`bitbake -e | grep ^STAGING_DIR_NATIVE | cut -d '=' -f2 | cut -d '"' -f2`
48 rm -f conf/sanity.conf 47 fi
49 else 48 else
50 NATIVE_SYSROOT_DIR=`bitbake -e | grep ^STAGING_DIR_NATIVE | cut -d '=' -f2 | cut -d '"' -f2` 49 echo "Error: Unable to locate your native sysroot."
51 fi 50 echo "Did you forget to source the Poky environment script?"
52fi
53
54if [ -z "$NATIVE_SYSROOT_DIR" ]; then
55 echo "Error: Unable to locate your native sysroot."
56 echo "Did you forget to source the Poky environment script?"
57 51
58 if [ -z "$SKIP_STRICT_SYSROOT_CHECK" ]; then 52 if [ -z "$SKIP_STRICT_SYSROOT_CHECK" ]; then
59 exit 1 53 exit 1
54 fi
60 fi 55 fi
61fi 56fi
62 57
63# Set up pseudo command 58# Set up pseudo command
64if [ ! -e "$NATIVE_SYSROOT_DIR/usr/bin/pseudo" ]; then 59if [ ! -e "$POKY_NATIVE_SYSROOT/usr/bin/pseudo" ]; then
65 echo "Error: Unable to find pseudo binary in $NATIVE_SYSROOT_DIR/usr/bin/" 60 echo "Error: Unable to find pseudo binary in $POKY_NATIVE_SYSROOT/usr/bin/"
66 61
67 if [ "$SYSROT_MODE" = "in-tree" ]; then 62 if [ "x$POKY_DISTRO_VERSION" = "x" ]; then
68 echo "Have you run 'bitbake pseudo-native'?" 63 echo "Have you run 'bitbake pseudo-native'?"
69 else 64 else
70 echo "This shouldn't happen - something is wrong with your toolchain installation" 65 echo "This shouldn't happen - something is wrong with your toolchain installation"
@@ -74,4 +69,4 @@ if [ ! -e "$NATIVE_SYSROOT_DIR/usr/bin/pseudo" ]; then
74 exit 1 69 exit 1
75 fi 70 fi
76fi 71fi
77PSEUDO="$NATIVE_SYSROOT_DIR/usr/bin/pseudo" 72PSEUDO="$POKY_NATIVE_SYSROOT/usr/bin/pseudo"