[OE-core] [PATCH] image.bbclass: Ensure IMAGE_FSTYPES is fully evaluated before live/live logic

Richard Purdie richard.purdie at linuxfoundation.org
Sat Jun 28 08:35:09 UTC 2014


On Fri, 2014-06-27 at 11:17 -0400, Tom Rini wrote:
> On Fri, Jun 27, 2014 at 03:54:30PM +0100, Richard Purdie wrote:
> > I wondered about that but I did already check and:
> > 
> > http://git.yoctoproject.org/cgit.cgi/poky/tree/bitbake/lib/bb/utils.py
> > 
> > def contains(variable, checkvalues, truevalue, falsevalue, d):
> >     val = d.getVar(variable, True)
> > 
> > so it is being expanded afaict...
> 
> Yeah, but what does that expand back to?  My bitbake internals-fu is
> weak, but:
> $ git grep def\ getVar
> lib/bb/command.py:    def getVariable(self, command, params):
> lib/bb/data.py:def getVar(var, d, exp = 0):
> lib/bb/data.py:def getVarFlag(var, flag, d):
> lib/bb/data.py:def getVarFlags(var, d):
> lib/bb/data_smart.py:    def getVar(self, var, expand=False, noweakdefault=False
> lib/bb/data_smart.py:    def getVarFlag(self, var, flag, expand=False, noweakdef
> lib/bb/data_smart.py:    def getVarFlags(self, var, expand = False, internalflag
> 
> So where do we map back to a 'getVar' that takes expand as arg 2 not arg
> 3?

Its calling:

lib/bb/data_smart.py:    def getVar(self, var, expand=False, noweakdefault=False

since d is a data store object which becomes "self", the first argument
and the other two are then passed in with expand = True.

The bb.data.getVar(d, var, expand) syntax is just clumsy and deprecated
when you can write the same thing as d.getVar(var, expand).

Cheers,

Richard





More information about the Openembedded-core mailing list