On Fri, 29 Apr 2016 08:06:16 Gary Thomas wrote: > On 2016-04-29 07:08, Paul Eggleton wrote: > > On Fri, 29 Apr 2016 06:24:55 Gary Thomas wrote: > >> I used to be able to use something like this: > >> VARIABLE = "xyz" > >> > >> and maybe in a .bbappend use > >> > >> VARIABLE_mymachine = "xyzzy" > >> > >> where 'mymachine' is in OVERRIDES, which resulted in > >> > >> VARIABLE = "xyzzy" > >> > >> This doesn't seem to work the same today, what I get is > >> > >> VARIABLE = "xyz" > >> VARIABLE_mymachine = "xyzzy" > >> > >> Has this changed (recently)? Why? How to I make use of overrides? > >> > >> Note: I'm using the latest Poky master (a9b503b26) updated 2016-04-28 > > > > When you say this is what you're seeing, how are you checking this? > > bitbake -e ? Which part of that output are you looking at? > > > > You *will* now see VARIABLE_mymachine in bitbake -e output even if > > "mymachine" is in OVERRIDES - that's because the overridden values stay > > in the datastore instead of a "finalisation" step eliminating them, in > > order to allow OVERRIDES to be changed dynamically (possibly multiple > > times) and still get the datastore contents you expect. That change was > > made in the 2.0 release (jethro). However That should not affect the > > final value of VARIABLE if "mymachine" is in OVERRIDES however. Are you > > sure you are seeing what you think you're seeing? If so, is the bbappend > > in fact being applied? Because if what you describe was really happening > > then pretty much the entire system would be broken. I just checked a > > similar case here and I see the expected results. > > Yes, I am using 'bitbake -e <recipe> | grep ^VARIABLE' to look at this. > > In my main recipe, I have this: > SOME_OTHER_VARIABLE ?= "${MACHINE}" > and my .bbappend for that recipe has these lines: > SOME_OTHER_VARIABLE_my-target-A = "something-else1" > SOME_OTHER_VARIABLE_my-target-B = "something-else2" > and local.conf has > MACHINE="my-target-B" > > With Yocto 2.0 (Poky ceeb52a2544) I get this: > SOME_OTHER_VARIABLE = "something-else2" > SOME_OTHER_VARIABLE_my-target-A = "something-else1" > SOME_OTHER_VARIABLE_my-target-B = "something-else2" > > With today's (Poky a9b503b26) I get this: > SOME_OTHER_VARIABLE = "my-target-B" > SOME_OTHER_VARIABLE_my-target-A = "something-else1" > SOME_OTHER_VARIABLE_my-target-B = "something-else2" > > I also use this mechanism to set COMPATIBLE_MACHINE a lot and > that doesn't seem to be working the same either. > > Am I doing something incorrectly (and just got away with it for years)? > > n.b. If you're interested, I can share the .bb/.bbappend files > with you privately (I can't put them on the public list)
Ah, one thing... do your machine names have uppercase characters in them (as your pseudo-examples above do)? If so that was a 2.1 change; anything that is to be used as an override must now be lower case (so DISTRO, MACHINE, etc.) Cheers, Paul -- Paul Eggleton Intel Open Source Technology Centre -- _______________________________________________ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto