[OE-core] [PATCH] qemu.inc: Use '=' for IMAGE_FSTYPES

Tom Rini tom.rini at gmail.com
Wed Mar 28 23:29:08 UTC 2012


On Wed, Mar 28, 2012 at 10:11:44PM +0100, Richard Purdie wrote:
> On Wed, 2012-03-28 at 14:54 -0400, Denys Dmytriyenko wrote:
> > On Mon, Mar 26, 2012 at 05:56:16PM +0100, Richard Purdie wrote:
> > > On Mon, 2012-03-26 at 09:25 -0700, Tom Rini wrote:
> > > > On Mon, Mar 26, 2012 at 10:15:13AM +0100, Richard Purdie wrote:
> > > > > On Fri, 2012-03-23 at 10:35 -0700, Tom Rini wrote:
> > > > > > As per
> > > > > > http://lists.linuxtogo.org/pipermail/openembedded-core/2012-March/019772.html
> > > > > > a machine conf file should use '=' to set IMAGE_FSTYPES.
> > > > > > 
> > > > > > Signed-off-by: Tom Rini <trini at ti.com>
> > > > > > ---
> > > > > >  meta/conf/machine/include/qemu.inc |    2 +-
> > > > > >  1 files changed, 1 insertions(+), 1 deletions(-)
> > > > > 
> > > > > As someone pointed out, what I mentioned in that email sadly doesn't
> > > > > work although it would be nice if they did. I suspect this is why we're
> > > > > using += since:
> > > > 
> > > > We aren't using += today.  We (openembedded-core) use ?=.  meta-intel
> > > > uses += and meta-ti is mixed (and I don't have meta-fsl-* handy).
> > > > 
> > > > > > - The machine needs to say 'I need or support the following formats'
> > > > > 
> > > > > so the machine ensures those formats exist at a minimum:
> > > > > 
> > > > > 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'
> > > > > 
> > > > > This one is the problem case so the user has to use overrides:
> > > > > 
> > > > > IMAGE_FSTYPES_override = "X"
> > > > > 
> > > > > (where override can be MACHINE or forcevariable)
> > > > > 
> > > > > > - The user needs to say 'I know best, give me what you support + X'
> > > > > 
> > > > > IMAGE_FSTYPES += " X"
> > > > > 
> > > > > 
> > > > > Whilst I think that is less than ideal since it forces use of overrides
> > > > > in local.conf to override, changing the += in machine conf files doesn't
> > > > > gain us much, it just breaks += in local.conf.
> > > > > 
> > > > > I'm open to other feedback though...
> > > > 
> > > > Well, I suggested ??= / ?= and posted some results from bitbake -e...
> > > 
> > > Ok. += plays out as above. I realise its not what is in qemu.inc, it is
> > > used in meta-intel though which I looked at after qemu.inc and I guess
> > > has confused me.
> > > 
> > > With ?= in machine.conf:
> > > 
> > > The user defined IMAGE_FSTYPES would override the machine ones. Distro
> > > can still append to it. The downside is a user append would not work out
> > > as expected.
> > > 
> > > So the question is which is the more user expected behaviour?
> > > 
> > > =+ makes overwriting IMAGE_FSTYPES hard
> > > 
> > > ?= makes appending IMAGE_FSTYPES hard
> > > 
> > > I suspect a user is more likely to want to append than overwrite.
> > > Getting an append to work with ?= is extremely non-obvious, even worse
> > > syntax than the =+ overwriting case with overrides.
> > > 
> > > So bottom line, I'm tempted to recommend we use =+.
> > > 
> > > Further thoughts?
> > 
> > Richard,
> > 
> > So, what is the subtle difference between += that we started with and =+ that 
> > you recommended at the end? I realize those are for append and prepend, but 
> > are they handled any different? Was your recommendation to use =+ at the end, 
> > instead of += that was used originally, based on some specifics? Thanks.
> 
> I'm using += and =+ interchangeably. The contrast was with ?= which I
> argued against. Order in this case doesn't matter and I have no
> preference over += or =+, it simply doesn't matter.

So I guess I'll spin everything one more time and drop the meta-intel
version and we'll just use += since that's the common one.

-- 
Tom




More information about the Openembedded-core mailing list