[OE-core] [PATCH 01/24] base.bbclass: Add buildcfg multilib values

Robert Yang liezhi.yang at windriver.com
Mon May 28 03:24:02 UTC 2018


Hi Alexander,

On 05/26/2018 05:51 PM, Alexander Kanavin wrote:
> On 05/25/2018 05:48 AM, Robert Yang wrote:
>> +def buildcfg_multilibs(d):
>> +    variants = d.getVar("MULTILIB_VARIANTS", True) or ""
>> +    for variant in variants.split():
>> +        localdata = bb.data.createCopy(d)
>> +        overrides = localdata.getVar("OVERRIDES", False) + 
>> ":virtclass-multilib-" + variant
>> +        localdata.setVar("OVERRIDES", overrides)
>> +        bb.data.update_data(localdata)
>> +        statusvars = oe.data.typed_value('BUILDCFG_VARS', d)
>> +        for var in statusvars:
>> +            origvalue = d.getVar(var, True)
>> +            variantvalue = localdata.getVar(var, True)
>> +            if origvalue is not None and variantvalue is not None and 
>> origvalue != variantvalue:
>> +                yield '%-7s %-17s = "%s"' % (variant + ":", var, variantvalue)
>> +
> 
> There are helper functions in utils.bbclass that take care of multilib datastore 
> setup, please use them instead of re-implementing what they do. USe 
> all_multlilib_tune_values() in particular.

Thanks for the reply, but I'm afraid that all_multlilib_tune_values() isn't
suitable for this case, what need to display is something like:

lib32:  DEFAULTTUNE       = "x86"
lib32:  TARGET_SYS        = "i686-pokymllib32-linux"
lib32:  TUNE_FEATURES     = "m32"

But all_multlilib_tune_values() returns all values, e.g:

DEFAULTTUNE       = "core2-64 x86"

If there is only one multilib variant, it can work if we remove "core2-64" from
DEFAULTTUNE, then we will get "x86", but if there are multiple multilib
variants, e.g., lib32 and lib64, then
all_multlilib_tune_values(d, 'DEFAULTTUNE') is:

DEFAULTTUNE       = "core2-64 x86 <foo>"

We don't know how to strip x86 for lib32, or <foo> for lib64. So I think that
the current implementation is a must.

// Robert

> 
> 
> Alex
> 



More information about the Openembedded-core mailing list