Files
poky/scripts/bitbake
Joshua Lock 7e206c6477 scripts/bitbake: remove bashisms
As the BitBake script is the initial entry point for the system we need to
ensure it can run in as many places as possible, including systems which
aren't yest optimally configured for running Poky.
Remove some bashisms from the script so that it can run under Dash.

Pointers from: https://wiki.ubuntu.com/DashAsBinSh
Errors before this patch: http://pastie.org/1502136

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-01-31 11:38:35 +00:00

1.4 KiB
Executable File

#!/bin/sh NO_BUILD_OPTS="--version -h --help -p --parse-only -s --show-versions -e --environment" needpseudo="1" for opt in $@; do for key in $NO_BUILD_OPTS; do if [ $opt = $key ] then needpseudo="0" break fi done [ $needpseudo = "0" ] && break done

buildpseudo="1" if [ $needpseudo = "1" ] && [ -e "$BUILDDIR/pseudodone" ]; then PSEUDOBINDIR=cat $BUILDDIR/pseudodone if [ -e "$PSEUDOBINDIR/pseudo" ]; then buildpseudo="0" fi fi if [ $needpseudo = "0" ]; then buildpseudo="0" fi

OLDPATH=$PATH export PATH=echo $PATH | sed s#[^:]*/scripts:## if [ $buildpseudo = "1" ]; then echo "Pseudo is not present but is required, building this first before the main build" bitbake pseudo-native -c populate_sysroot ret=$? if [ "$ret" != "0" ]; then exit 1 fi PSEUDOBINDIR=bitbake -e | grep STAGING_BINDIR_NATIVE=\" | cut -d '=' -f2 | cut -d '"' -f2 ret=$? if [ "$ret" != "0" ]; then exit 1 fi echo $PSEUDOBINDIR > $BUILDDIR/pseudodone # This needs to exist in case pseudo has to log somewhere mkdir -p $PSEUDOBINDIR/../../var/pseudo fi BITBAKE=which bitbake export PATH=$OLDPATH if [ $needpseudo = "1" ]; then PSEUDOBINDIR=cat $BUILDDIR/pseudodone PSEUDO_BINDIR=$PSEUDOBINDIR PSEUDO_LIBDIR=$PSEUDOBINDIR/../lib/pseudo/lib PSEUDO_PREFIX=$PSEUDOBINDIR/../../ PSEUDO_DISABLED=1 $PSEUDOBINDIR/pseudo $BITBAKE $@ else $BITBAKE $@ fi ret=$? exit $ret