poky/scripts/oe-buildenv-internal
Robert Yang 4d5ef2af50 bitbake.conf: add STAMPS_DIR for constructing STAMP
Add STAMPS_DIR for constructing STAMP, the defination of STAMP is:

STAMP = "${TMPDIR}/stamps/${MULTIMACH_TARGET_SYS}/${PN}/${EXTENDPE}${PV}-${PR}"

We can only change the TMPDIR if we want to change the STAMP's location,
but the bb_cache.dat would be regenerated if TMPDIR changes, so add
STAMPS_DIR for constructing it, and add it to the BB_ENV_EXTRAWHITE,
this is very usefull for the "bitbake -S", since then it can be run by:

STAMPS_DIR=<path> bitbake -S <recipe>

which will avoid putting the stamps to ${TMPDIR}/stamps.

BTW, break the too long BB_ENV_EXTRAWHITE into several lines.

[YOCTO #1659]

(From OE-Core rev: ce732c04b3ac06633e20efa8799c4189abfd41b3)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-03-07 11:14:37 +00:00

2.8 KiB
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

PATH="${OEROOT}/scripts:$BITBAKEDIR/bin/:$PATH" unset BITBAKEDIR

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"