mirror of
git://git.yoctoproject.org/poky.git
synced 2025-07-19 21:09:03 +02:00

First strip $PATH of any existence of the paths needed by Open Embedded and BitBake. Then add the needed paths at the beginning. This makes sure the needed paths are searched first, without growing $PATH unnecessarily if oe-init-build-env is rerun for a directory for which it has previously been run. (From OE-Core rev: 7429db6f38e405774ba66b3fa1bc3ac4b74ae6b9) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
90 lines
3.0 KiB
Bash
Executable File
90 lines
3.0 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
# OE-Core Build Environment Setup Script
|
|
#
|
|
# Copyright (C) 2006-2011 Linux Foundation
|
|
#
|
|
# This program is free software; you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation; either version 2 of the License, or
|
|
# (at your option) any later version.
|
|
#
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with this program; if not, write to the Free Software
|
|
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
|
|
# It is assumed OEROOT is already defined when this is called
|
|
if [ -z "$OEROOT" ]; then
|
|
echo >&2 "Error: OEROOT is not defined!"
|
|
return 1
|
|
fi
|
|
|
|
if [ ! -z "$OECORE_SDK_VERSION" ]; then
|
|
echo >&2 "Error: The OE SDK/ADT was detected as already being present in this shell environment. Please use a clean shell when sourcing this environment script."
|
|
return 1
|
|
fi
|
|
|
|
if [ "x$BDIR" = "x" ]; then
|
|
if [ "x$1" = "x" ]; then
|
|
BDIR="build"
|
|
else
|
|
BDIR="$1"
|
|
if [ "$BDIR" = "/" ]; then
|
|
echo >&2 "Error: / is not supported as a build directory."
|
|
return 1
|
|
fi
|
|
|
|
# Remove any possible trailing slashes. This is used to work around
|
|
# buggy readlink in Ubuntu 10.04 that doesn't ignore trailing slashes
|
|
# and hence "readlink -f new_dir_to_be_created/" returns empty.
|
|
BDIR=`echo $BDIR | sed -re 's|/+$||'`
|
|
|
|
BDIR=`readlink -f "$BDIR"`
|
|
if [ -z "$BDIR" ]; then
|
|
PARENTDIR=`dirname "$1"`
|
|
echo >&2 "Error: the directory $PARENTDIR does not exist?"
|
|
return 1
|
|
fi
|
|
fi
|
|
if [ "x$2" != "x" ]; then
|
|
BITBAKEDIR="$2"
|
|
fi
|
|
fi
|
|
if expr "$BDIR" : '/.*' > /dev/null ; then
|
|
BUILDDIR="$BDIR"
|
|
else
|
|
BUILDDIR="`pwd`/$BDIR"
|
|
fi
|
|
unset BDIR
|
|
|
|
if [ "x$BITBAKEDIR" = "x" ]; then
|
|
BITBAKEDIR="$OEROOT/bitbake$BBEXTRA/"
|
|
fi
|
|
|
|
BITBAKEDIR=`readlink -f "$BITBAKEDIR"`
|
|
BUILDDIR=`readlink -f "$BUILDDIR"`
|
|
|
|
if ! (test -d "$BITBAKEDIR"); then
|
|
echo >&2 "Error: The bitbake directory ($BITBAKEDIR) does not exist! Please ensure a copy of bitbake exists at this location"
|
|
return 1
|
|
fi
|
|
|
|
# Make sure our paths are at the beginning of $PATH
|
|
NEWPATHS="${OEROOT}/scripts:$BITBAKEDIR/bin:"
|
|
PATH=$NEWPATHS$(echo $PATH | sed -e "s|:$NEWPATHS|:|g" -e "s|^$NEWPATHS||")
|
|
unset BITBAKEDIR NEWPATHS
|
|
|
|
# Used by the runqemu script
|
|
export BUILDDIR
|
|
export PATH
|
|
export BB_ENV_EXTRAWHITE="MACHINE DISTRO TCMODE TCLIBC HTTP_PROXY http_proxy \
|
|
HTTPS_PROXY https_proxy FTP_PROXY ftp_proxy FTPS_PROXY ftps_proxy ALL_PROXY \
|
|
all_proxy NO_PROXY no_proxy SSH_AGENT_PID SSH_AUTH_SOCK BB_SRCREV_POLICY \
|
|
SDKMACHINE BB_NUMBER_THREADS BB_NO_NETWORK PARALLEL_MAKE GIT_PROXY_COMMAND \
|
|
SOCKS5_PASSWD SOCKS5_USER SCREENDIR STAMPS_DIR"
|