[OE-core] [PATCH 1/3] scripts/bitbake: try harder to check if pseudo exists
Andreas Oberritter
obi at opendreambox.org
Tue Mar 27 13:08:28 UTC 2012
On 27.03.2012 13:50, Paul Eggleton wrote:
> If pseudodone doesn't exist, we can get STAGING_BINDIR_NATIVE by calling
> bitbake -e and use that as the path to check for pseudo before we give
> up and try to build it explicitly first.
>
> This is useful for people who share TMPDIR between multiple build
> directories.
>
> Signed-off-by: Paul Eggleton <paul.eggleton at linux.intel.com>
This adds a 3s delay over the previous setup on my build system, which I
deem acceptable. See one minor suggestion inline.
Acked-by: Andreas Oberritter <obi at opendreambox.org>
> ---
> scripts/bitbake | 12 +++++++++---
> 1 files changed, 9 insertions(+), 3 deletions(-)
>
> diff --git a/scripts/bitbake b/scripts/bitbake
> index 45c8697..1ba1839 100755
> --- a/scripts/bitbake
> +++ b/scripts/bitbake
> @@ -53,14 +53,21 @@ if [ "`pwd`" != "$BUILDDIR" ] ; then
> fi
>
> buildpseudo="1"
> -if [ $needpseudo = "1" ] && [ -e "$BUILDDIR/pseudodone" ]; then
> - PSEUDOBINDIR=`cat $BUILDDIR/pseudodone`
> +if [ $needpseudo = "1" ]; then
> + if [ -e "$BUILDDIR/pseudodone" ]; then
> + PSEUDOBINDIR=`cat $BUILDDIR/pseudodone`
> + else
> + PSEUDOBINDIR=`bitbake -e | grep STAGING_BINDIR_NATIVE=\" | cut -d '=' -f2 | cut -d '"' -f2`
I think using sed might improve readability:
bitbake -e | grep ^STAGING_BINDIR_NATIVE= | sed -e 's,^STAGING_BINDIR_NATIVE="\(.*\)"$,\1,'
This may be a subjective impression, though.
> + fi
> if [ -e "$PSEUDOBINDIR/pseudo" -a -e "$PSEUDOBINDIR/tar" -a "$needtar" = "1" ]; then
> buildpseudo="0"
> fi
> if [ -e "$PSEUDOBINDIR/pseudo" -a $needtar = "0" ]; then
> buildpseudo="0"
> fi
> + if [ $buildpseudo = "0" -a ! -e "$BUILDDIR/pseudodone" ] ; then
> + echo $PSEUDOBINDIR > $BUILDDIR/pseudodone
> + fi
> fi
> if [ $needpseudo = "0" ]; then
> buildpseudo="0"
> @@ -104,7 +111,6 @@ BITBAKE=`which bitbake`
> export PATH=$OLDPATH
> if [ $needpseudo = "1" ]; then
> export PSEUDO_BUILD=2
> - PSEUDOBINDIR=`cat $BUILDDIR/pseudodone`
> PSEUDO_BINDIR=$PSEUDOBINDIR PSEUDO_LIBDIR=$PSEUDOBINDIR/../lib/pseudo/lib PSEUDO_PREFIX=$PSEUDOBINDIR/../../ PSEUDO_DISABLED=1 $PSEUDOBINDIR/pseudo $BITBAKE $@
> else
> export PSEUDO_BUILD=0
More information about the Openembedded-core
mailing list