mirror of
https://git.yoctoproject.org/poky
synced 2026-02-06 08:48:45 +01:00
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>
54 lines
1.4 KiB
Bash
Executable File
54 lines
1.4 KiB
Bash
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
|