[oe] Best practise using .bbappend

Paul Eggleton paul.eggleton at linux.intel.com
Fri Aug 10 11:06:28 UTC 2012


Hi Alex,

On Friday 10 August 2012 11:53:55 Alex J Lennon wrote:
> I'm trying to create a layer, overriding certain defaults with use of
> .bbappends.
> 
> e.g. Changing a Grub configuration with a
> meta-foo/recipes-bsp/grub/grub_1.99.bbappend
> 
> I'm wondering what happens when somebody updates the grub recipe in meta
> to a new version, e.g. 2.00 and I then do a git pull?
> 
> As I understand it the environment will automatically pick up the new
> recipe, and presumably my .bbappend to 1.99 will no longer be pulled in?

That's correct. We assume that the contents is often going to be version-
specific and therefore a bbappend needs to be created for each version. There 
have been discussions about adding wildcarding for bbappends, but so far I can 
only assume it hasn't been a serious enough problem for people - at least 
responses to the suggestion have been fairly muted.
 
> Should I be setting a PREFERRED_VERSION_bar somewhere, say in the conf
> for my new layer, on any recipe that I add a .bbppends to, or what's best
> practise for dealing with this?

Setting a PREFERRED_VERSION_ for each bbappended recipe is a reasonable 
approach assuming this is a layer intended to apply some policy (i.e. a distro 
layer).

In practice this is unlikely to come up too often - in OE-Core we usually 
delete the old recipe when upgrading to a new version, and thus if you have a 
bbappend for the old version in your layer you will get an error after parsing 
indicating the bbappend had no matching recipe.

Cheers,
Paul

-- 

Paul Eggleton
Intel Open Source Technology Centre




More information about the Openembedded-devel mailing list