[yocto] Supporting upcoming distribution releases

NiQingliang niqingliang at insigma.com.cn
Tue Jul 19 19:48:35 PDT 2011


Oh, sorry, I have found the git tree of openembedded-core.


On Wed, 2011-07-20 at 10:31 +0800, NiQingliang wrote:
> update accroding your suggestion.
> This patch is for bitbake indeed, but bitbake is not part of
> openembedded. Is it RIGHT?
> 
> 
> diff --git a/oe-init-build-env b/oe-init-build-env
> index 77332a7..acf4e96 100755
> --- a/oe-init-build-env
> +++ b/oe-init-build-env
> @@ -39,6 +39,34 @@ else
>     $OEROOT/scripts/oe-setup-builddir
>     unset OEROOT
>     unset BBPATH
> +
> +   # find the python 2.x, if the default python is not.
> +   # NOTE:
> +   #    the 'python -V' need redirect to stdout
> +   #    once we can ensure every distribution has 'python2' (currently,
> except
> +   #    ubuntu), we should change bitbake's shebang to '/usr/bin/env
> python2',
> +   #    and remove this patch.
> +   # precondition:
> +   #    $BUILDDIR is not NULL, but I doubt when it will be NULL.
> +   #    user have not made the file $BUILDDIR/python by himself.
> +   if [ -z "`/usr/bin/env python -V 2>&1|grep '^Python 2\.'`" ]; then
> +      PYTHON2_BIN=""
> +      for PY_BIN in `find /{usr/,}bin -regex '.*/python\(\|2\|2\.[0-9]*
> \)'`; do
> +         if [ -n "`$PY_BIN -V 2>&1|grep '^Python 2\.'`" ]; then
> +            PYTHON2_BIN=$PY_BIN
> +            break
> +         fi
> +      done
> +      if [ -n "$PYTHON2_BIN" ]; then
> +         ln -sf $PY_BIN $BUILDDIR/python
> +         export PATH="$BUILDDIR:$PATH"
> +         echo "NOTE: poky will use '$PY_BIN' to execute python code."
> +      else
> +         echo "ERROR: unable to find Python 2.x, BitBake requires
> Python 2.6 or
> +      fi
> +      unset PYTHON2_BIN
> +   fi
> +
>     [ -n "$BUILDDIR" ] && cd $BUILDDIR
>  fi
> 
> 
> On Wed, 2011-07-20 at 09:13 +0800, Joshua Lock wrote:
> > On Thu, 2011-07-14 at 09:34 +0800, NiQingliang wrote:
> > > new version
> > >
> > > diff --git a/oe-init-build-env b/oe-init-build-env
> > > index 77332a7..0fe1b5e 100755
> > > --- a/oe-init-build-env
> > > +++ b/oe-init-build-env
> > > @@ -39,6 +39,35 @@ else
> > >     $OEROOT/scripts/oe-setup-builddir
> > >     unset OEROOT
> > >     unset BBPATH
> > > +
> > > +   # find the python 2.x, if the default python is not.
> > > +   # NOTE:
> > > +   #    the 'python -V' need redirect to stdout
> > > +   #    once we can ensure every distribution has 'python2' (currently,
> > > except
> > > +   #    ubuntu), we should change bitbake's shebang to '/usr/bin/env
> > > python2',
> > > +   #    and remove this patch.
> > > +   # precondition:
> > > +   #    $BUILDDIR is not NULL, but I doubt when it will be NULL.
> > > +   #    user have not made the file $BUILDDIR/python by himself.
> > > +   if [ -z "`/usr/bin/env python -V 2>&1|grep '^Python 2\.'`" ]; then
> > > +      echo "WARNING: your default python is not 2.x, so autodetect..."
> >
> > I'm not sure we need to print this.
> >
> > > +      PYTHON2_BIN=""
> > > +      for PY_BIN in `find /{usr/,}bin -regex '.*/python\(\|2\|2\.[0-9]*
> > > \)'`; do
> > > +         if [ -n "`$PY_BIN -V 2>&1|grep '^Python 2\.'`" ]; then
> > > +            PYTHON2_BIN=$PY_BIN
> > > +            break
> > > +         fi
> > > +      done
> > > +      if [ -n "$PYTHON2_BIN" ]; then
> > > +         ln -sf $PY_BIN $BUILDDIR/python
> > > +         export PATH="$BUILDDIR:$PATH"
> > > +         echo "WARNING: poky will use '$PY_BIN' to execute python
> > > code."
> >
> > I can live without this message but if we do leave it in we should
> > probably call it a NOTE rather than WARNING.
> >
> > > +      else
> > > +         echo "ERROR: poky can't find python 2.x."
> >
> > Perhaps make this a little more informative?
> >
> > ERROR: unable to find Python 2.x, BitBake requires Python 2.6 or 2.7.
> >
> > > +      fi
> > > +      unset PYTHON2_BIN
> > > +   fi
> > > +
> > >     [ -n "$BUILDDIR" ] && cd $BUILDDIR
> > >  fi
> >
> > I can verify that this works as expected (i.e. does nothing) on my
> > Fedora 15 machine with Python 2.7.1.
> >
> > Could you submit the patch to the openembedded-core mailing list so that
> > it can be considered for inclusion in the Yocto project's shared
> > upstream?
> >
> > Thanks,
> > Joshua
> > --
> > Joshua Lock
> >         Yocto Project "Johannes factotum"
> >         Intel Open Source Technology Centre
> >
> 
> --
> 倪庆亮
> TEL:    13588371863
> E-MAIL: niqingliang at insigma.com.cn
> BLOG:   http://niqingliang2003.wordpress.com
> 
> 
> _______________________________________________
> yocto mailing list
> yocto at yoctoproject.org
> https://lists.yoctoproject.org/listinfo/yocto

-- 
倪庆亮
TEL:    13588371863
E-MAIL: niqingliang at insigma.com.cn
BLOG:   http://niqingliang2003.wordpress.com





More information about the yocto mailing list