#!/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"