[OE-core] [RFC][PATCH] bitbake.conf: make OVERRIDES match what people expect

Khem Raj raj.khem at gmail.com
Tue May 24 14:58:04 UTC 2011



Sent from my iPad

On May 24, 2011, at 7:16 AM, Richard Purdie <richard.purdie at linuxfoundation.org> wrote:

> On Tue, 2011-05-24 at 16:04 +0200, Koen Kooi wrote:
>> In the current situation TARGET_ARCH will override MACHINE, which is counter intuitive since the machine is more specific than the arch.
>> 
>> The order is now pn-$PN} -> arch -> machine -> distro as the machine is a set of defaults and the distro is the ultimate policy.
>> 
>> 'failfast' has been removed since it's not used anymore, just like 'local'
> 
> I've been thinking through the different use cases and briefly talked
> with Koen offlist about this. I think the revised order makes sense with
> what users would expect and am happy to remove local and fail-fast as
> overrides since we don't have people using them (local is pretty
> weak/useless and fail-fast has only ever been used by gcc recipes
> afaik).
> 

Local is useful when one has to override a hard assignment say from distro.conf
In local.conf AFAIR it did not worm without local override

> Its a potentially disruptive change but one I do think we need to make.
> We don't have many double/stacked overrides so there shouldn't be much
> impact to existing metadata.
> 
> Cheers,
> 
> Richard
> 
> 
> 
>> ---
>> meta/conf/bitbake.conf |   12 ++++++------
>> 1 files changed, 6 insertions(+), 6 deletions(-)
>> 
>> diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf
>> index a0af672..59238b8 100644
>> --- a/meta/conf/bitbake.conf
>> +++ b/meta/conf/bitbake.conf
>> @@ -602,15 +602,15 @@ AUTO_LIBNAME_PKGS = "${PACKAGES}"
>> # 
>> # This means that an envionment variable named '<foo>_arm' overrides an
>> # environment variable '<foo>' (when ${TARGET_ARCH} is arm).
>> -# An environment variable '<foo>_ramses' overrides '<foo>' but doesn't override
>> -# '<foo>_arm' when ${MACHINE} is 'ramses'. 
>> -# If you use combination ie '<foo>_arm_ramses', then '<foo>_arm_ramses' will override 
>> -# '<foo>_arm' and then '<foo>' will be overriden with that value from '<foo>_arm'.
>> -# And finally '<foo>_local' overrides any standard variable, but with lowest priority.
>> +# An environment variable '<foo>_qemuarm' overrides '<foo>' and overrides
>> +# '<foo>_arm' when ${MACHINE} is 'qemuarm'. 
>> +# If you use combination ie '<foo>_qemuarm_arm', then '<foo>_qemuarm_arm' will override 
>> +# '<foo>_qemuarm' and then '<foo>' will be overriden with that value from '<foo>_qemuarm'.
>> +# And finally '<foo>_forcevariable' overrides any standard variable, with the highest priority.
>> #
>> # This works for  functions as well, they are really just environment variables.
>> # Default OVERRIDES to make compilation fail fast in case of build system misconfiguration.
>> -OVERRIDES = "local:${MACHINEOVERRIDES}:${DISTROOVERRIDES}:${TARGET_OS}:${TARGET_ARCH}:build-${BUILD_OS}:fail-fast:pn-${PN}:forcevariable"
>> +OVERRIDES = "${TARGET_OS}:${TARGET_ARCH}:build-${BUILD_OS}:pn-${PN}:${MACHINEOVERRIDES}:${DISTROOVERRIDES}:forcevariable"
>> DISTROOVERRIDES ?= "${DISTRO}"
>> MACHINEOVERRIDES ?= "${MACHINE}"
>> 
> 
> 
> 
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core




More information about the Openembedded-core mailing list