4.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 echo "You had no conf/local.conf file. Poky has created this configuration file for you" echo "with some default values. You may wish to edit it to use a different MACHINE (target" echo "hardware) or enable parallel build options to take advantage of multiple cores for" echo "example. See the file for more information as common configuration options are commented." echo echo "Also, for more information see the Poky handbook: http://pokylinux.org/doc/poky-handbook.html" echo cp -f $POKYLOCALCONF $BUILDDIR/conf/local.conf fi
if [ "x" = "x$POKYLAYERCONF" ]; then POKYLAYERCONF="$BUILDDIR/conf/bblayers.conf.sample" fi if ! (test -r "$BUILDDIR/conf/bblayers.conf"); then cp -f $POKYLAYERCONF $BUILDDIR/conf/bblayers.conf fi
Prevent disturbing a new GIT clone in same console
unset POKYLOCALCONF unset POKYLAYERCONF
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 echo "You can now run 'bitbake '" echo echo "Common targets are poky-image-minimal, poky-image-sato, meta-toolchain or meta-toolchain-sdk" echo echo "You can also run generated qemu images with a command like 'runqemu qemux86'"
export BB_ENV_EXTRAWHITE="MACHINE DISTRO POKYMODE POKYLIBC OEROOT http_proxy ftp_proxy SSH_AGENT_PID SSH_AUTH_SOCK BB_SRCREV_POLICY SDKMACHINE BB_NUMBER_THREADS"