[OE-core] Consistency and use cases for IMAGE_FSTYPES

Darren Hart dvhart at linux.intel.com
Fri Mar 23 16:17:20 UTC 2012



On 03/23/2012 08:48 AM, Tom Rini wrote:
> On Fri, Mar 23, 2012 at 01:14:24AM +0000, Richard Purdie wrote:
>> On Thu, 2012-03-22 at 19:53 -0400, Denys Dmytriyenko wrote:
>>> On Thu, Mar 22, 2012 at 11:26:24PM +0000, Richard Purdie wrote:
>>>> On Fri, 2012-03-09 at 14:39 -0700, Tom Rini wrote:
>>>>> Hey all,
>>>>>
>>>>> Over in meta-ti I kicked off a discussion
>>>>> (https://lists.yoctoproject.org/pipermail/meta-ti/2012-March/000779.html)
>>>>> about if we should be using '?=' or '+=' with IMAGE_FSTYPES in the
>>>>> machine conf files.  This has been discussed a little bit before
>>>>> (http://thread.gmane.org/gmane.comp.handhelds.openembedded.core/2060/focus=2061).
>>>>>  The problem is we have the following and I believe ultimately
>>>>> conflicting use cases:
>>>>
>>>> I've been under the impression that we decided upon:
>>>>
>>>>> - The machine needs to say 'I need or support the following formats'
>>>>
>>>> so the machine starts and sets:
>>>>
>>>> IMAGE_FSTYPES = "xxxx"
>>>>
>>>>> - The distro needs to say 'I always want format X'
>>>>
>>>> so the distro can do:
>>>>
>>>> IMAGE_FSTYPES += " yyy"
>>>>
>>>>> - The user needs to say 'I know best, give me only format X'
>>>>
>>>> So the user can do:
>>>>
>>>> IMAGE_FSTYPES = "X"
>>>
>>> Since local.conf gets parsed before machine.conf and distro.conf, the user 
>>> needs to do this override:
>>>
>>> IMAGE_FSTYPES_local = "X"
>>>
>>> Otherwise machine.conf will always overwrite it with "xxxx" with its 
>>> unconditional assignment.
>>
>> Right, I'd forgotten that little detail :/.
>>
>> It actually makes me wonder if our include order is the right one but
>> now isn't the time to try changing that.
>>
>> I agree the neatest way to change it is probably something like
>> MACHINE_FSTYPES. I do worry a lot about backwards compatibility though
>> and I'd also point out where we're at in the release cycle (bug fix
>> only).
> 
> Well, one problem that would make this a bugfix is that no one does what
> you say we agreed on today.  oe-core has qemu.inc using ?=, meta-intel
> is using += and meta-ti is mixed (which is what got this started).
> 
> 

Is this causing any nasty failures right now, or is it in the "this is a
confusing mess and it would be nice to get it cleaned up" bucket? If the
latter, I think I'd prefer to wait a bit an clean up the
local.conf/machine.conf IMAGE_FSTYPES clobbering issue.

If this isn't really fixable (for whatever requirements bitbake has on
load/parse order of config files), then Koen's EXTRA_IMAGE_FSTYPES seems
like the most consistent mechanism with other things, like
CORE_IMAGE_EXTRA_INSTALL (OK, maybe IMAGE_EXTRA_FSTYPES ?).

So the default becomes:

IMAGE_FSTYPES ?= ${IMAGE_EXTRA_FSTYPES}

and DISTROs might define that as:

IMAGE_FSTYPES += "yyy"

and users can update local.conf to be:

IMAGE_FSTYPES = "X"

But, doesn't this meant the DISTRO append will still change the
IMAGE_FSTYPES to "X yyy" even though the user intended "only X"?

-- 
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel




More information about the Openembedded-core mailing list