aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPeter Kjellerstedt <pkj@axis.com>2016-03-15 15:41:02 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-03-20 22:57:58 +0000
commit3327e2a9222004d8ac7974cb1d9fe77c81176cfc (patch)
treeabaaa512adf3302e9f6aa6d6e8846fcb167dd0aa
parent75c5dc8d4a5506bf5b89292a96c7b9f91e9d71c8 (diff)
downloadopenembedded-core-3327e2a9222004d8ac7974cb1d9fe77c81176cfc.tar.gz
oe-init-build-env*: Allow $OEROOT to be predefined
The current implementation of oe-init-build-env and oe-init-build-env-memres requires that they are sourced from the directory that will be known as $OEROOT. This makes it hard to write a wrapper script with the same name as the original OE script which, e.g., sources the original OE script from a sub-directory. With this change, $OEROOT can be predefined when oe-init-build-env or oe-init-build-env-memres is sourced, allowing the original OE scripts to be anywhere. Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
-rwxr-xr-xoe-init-build-env16
-rwxr-xr-xoe-init-build-env-memres16
2 files changed, 18 insertions, 14 deletions
diff --git a/oe-init-build-env b/oe-init-build-env
index b7e29188b0..7b922b302a 100755
--- a/oe-init-build-env
+++ b/oe-init-build-env
@@ -26,30 +26,32 @@
# to sourcing this script.
#
if [ -n "$BASH_SOURCE" ]; then
- OEROOT="`dirname $BASH_SOURCE`"
+ THIS_SCRIPT=$BASH_SOURCE
elif [ -n "$ZSH_NAME" ]; then
- OEROOT="`dirname $0`"
+ THIS_SCRIPT=$0
else
- OEROOT="`pwd`"
+ THIS_SCRIPT="$(pwd)/oe-init-build-env"
fi
if [ -n "$BBSERVER" ]; then
unset BBSERVER
fi
-THIS_SCRIPT=$OEROOT/oe-init-build-env
if [ -z "$ZSH_NAME" ] && [ "$0" = "$THIS_SCRIPT" ]; then
echo "Error: This script needs to be sourced. Please run as '. $THIS_SCRIPT'"
exit 1
fi
-OEROOT=`readlink -f "$OEROOT"`
+if [ -z "$OEROOT" ]; then
+ OEROOT=$(dirname "$THIS_SCRIPT")
+ OEROOT=$(readlink -f "$OEROOT")
+fi
+unset THIS_SCRIPT
+
export OEROOT
. $OEROOT/scripts/oe-buildenv-internal && \
TEMPLATECONF="$TEMPLATECONF" $OEROOT/scripts/oe-setup-builddir && \
[ -n "$BUILDDIR" ] && cd "$BUILDDIR"
unset OEROOT
-unset BBPATH
-unset THIS_SCRIPT
# Shutdown any bitbake server if the BBSERVER variable is not set
if [ -z "$BBSERVER" ] && [ -f bitbake.lock ] ; then
diff --git a/oe-init-build-env-memres b/oe-init-build-env-memres
index c1dc4fe3ef..092d4fe081 100755
--- a/oe-init-build-env-memres
+++ b/oe-init-build-env-memres
@@ -34,30 +34,32 @@ else
fi
if [ -n "$BASH_SOURCE" ]; then
- OEROOT="`dirname $BASH_SOURCE`"
+ THIS_SCRIPT=$BASH_SOURCE
elif [ -n "$ZSH_NAME" ]; then
- OEROOT="`dirname $0`"
+ THIS_SCRIPT=$0
else
- OEROOT="`pwd`"
+ THIS_SCRIPT="$(pwd)/oe-init-build-env"
fi
if [ -n "$BBSERVER" ]; then
unset BBSERVER
fi
-THIS_SCRIPT=$OEROOT/oe-init-build-env-memres
if [ -z "$ZSH_NAME" ] && [ "x$0" = "x$THIS_SCRIPT" ]; then
echo "Error: This script needs to be sourced. Please run as '. $THIS_SCRIPT'"
exit 1
fi
-OEROOT=`readlink -f "$OEROOT"`
+if [ -z "$OEROOT" ]; then
+ OEROOT=$(dirname "$THIS_SCRIPT")
+ OEROOT=$(readlink -f "$OEROOT")
+fi
+unset THIS_SCRIPT
+
export OEROOT
. $OEROOT/scripts/oe-buildenv-internal && \
$OEROOT/scripts/oe-setup-builddir && \
[ -n "$BUILDDIR" ] && cd $BUILDDIR
unset OEROOT
-unset BBPATH
-unset THIS_SCRIPT
res=1
if [ -e bitbake.lock ] && grep : bitbake.lock > /dev/null ; then