3.4 KiB
Executable File
#!/bin/sh
Poky Build Enviroment Setup Script
Copyright (C) 2006-2007 OpenedHand Ltd.
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
Change this to the location of this file.
Also update the locations at the top of conf/local.conf
OEROOT=pwd
if [ "x$BDIR" = "x" ]; then
if [ "x$1" = "x" ]; then
BDIR="build"
else
BDIR="$1"
fi
fi
BUILDDIR="$OEROOT/$BDIR/"
unset BDIR
BITBAKEDIR="$OEROOT/bitbake$BBEXTRA/"
PKGDIR="$OEROOT/meta/"
BBPATH="$BITBAKEDIR $PKGDIR"
Add in any extra meta-* repositories to BBPATH
METAREPOS=cd $OEROOT; find . -maxdepth 1 -name 'meta-*' -type d| sed -e 's#./##g'
for repo in $METAREPOS
do
# meta-openmoko is disabled by default - see local.conf.sample to enable it
if [ $repo = "meta-openmoko" ]; then
continue
fi
# meta-extras is disabled by default - see local.conf.sample to enable it
if [ $repo = "meta-extras" ]; then
continue
fi
if [ -e $OEROOT/$repo/poky-extra-environment ]; then
. $OEROOT/$repo/poky-extra-environment
fi
BBPATH=" $BBPATH $OEROOT/$repo"
done
BBPATH="$BBPATH $HOME/.oe $HOME/.poky $BUILDDIR"
Remove any symlinks from BBPATH
NEWPATH=""
for p in $BBPATH
do
p2=readlink -f "$p"
NEWPATH="$p2:$NEWPATH"
done
BBPATH="$NEWPATH"
MSG=''
BUILD_ARCH=uname -m
BUILD_OS=uname | tr '[A-Z]' '[a-z]'
BUILD_SYS="$BUILD_ARCH-$BUILD_OS"
PATH="$BITBAKEDIR/bin/:$OEROOT/scripts:$PATH"
cd "$BUILDDIR"
Remove any symlinks from paths
BITBAKEDIR=readlink -f "$BITBAKEDIR"
PKGDIR=readlink -f "$PKGDIR"
BUILDDIR=readlink -f "$BUILDDIR"
if ! (test -d "$BITBAKEDIR" && test -d "$PKGDIR" && test -d "$BUILDDIR"); then echo >&2 "Error: Not all directories exist! Did you run this script in poky directory?" return fi
if [ "x" = "x$POKYLOCALCONF" ]; then POKYLOCALCONF="$BUILDDIR/conf/local.conf.sample" fi
if ! (test -r "$BUILDDIR/conf/local.conf"); then cp -f $POKYLOCALCONF $BUILDDIR/conf/local.conf fi
export BBPATH OEROOT BUILD_SYS BUILDDIR
Kill off the TERMINFO variable, as glibc will grab its contents in its 'make
install' if set
unset TERMINFO
kill this so we don't link non-arm libraries
unset LD_LIBRARY_PATH
Don't export TARGET_ARCH - it will cause build failures
export PATH LD_LIBRARY_PATH OEROOT
Stop multi byte characters breaking the patcher stuff - This is for Redhat / Fedora people really
export LANG=C
Kill PYTHONPATH as otherwise the Python specified there will conflict with
python-native.
unset PYTHONPATH
Don't allow custom GConf schema paths to get into the system
unset GCONF_SCHEMA_INSTALL_SOURCE
echo echo "### Shell environment set up for Poky builds. ###" echo
export BB_ENV_EXTRAWHITE="MACHINE DISTRO POKYMODE POKYLIBC OEROOT http_proxy ftp_proxy SSH_AGENT_PID SSH_AUTH_SOCK BB_SRCREV_POLICY SDKMACHINE"