<div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Apr 27, 2015 at 12:13 AM, Richard Purdie <span dir="ltr"><<a href="mailto:richard.purdie@linuxfoundation.org" target="_blank">richard.purdie@linuxfoundation.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div class=""><div class="h5">On Sun, 2015-04-26 at 18:17 -0700, Christopher Larson wrote:<br>
><br>
> On Sun, Apr 26, 2015 at 2:57 PM, Richard Purdie<br>
> <<a href="mailto:richard.purdie@linuxfoundation.org">richard.purdie@linuxfoundation.org</a>> wrote:<br>
> On Thu, 2015-04-23 at 17:38 +0300, Cristian Iorga wrote:<br>
> > As BlueZ5 will be the default Bluetooth stack,<br>
> > don't exclude it from world builds.<br>
> ><br>
> > Signed-off-by: Cristian Iorga <<a href="mailto:cristian.iorga@intel.com">cristian.iorga@intel.com</a>><br>
> > ---<br>
> > meta/recipes-connectivity/bluez5/bluez5.inc | 2 --<br>
> > 1 file changed, 2 deletions(-)<br>
> ><br>
> > diff --git a/meta/recipes-connectivity/bluez5/bluez5.inc<br>
> b/meta/recipes-connectivity/bluez5/bluez5.inc<br>
> > index 67aafbb..bf845a8 100644<br>
> > --- a/meta/recipes-connectivity/bluez5/bluez5.inc<br>
> > +++ b/meta/recipes-connectivity/bluez5/bluez5.inc<br>
> > @@ -100,5 +100,3 @@ FILES_${PN}-dbg += "\<br>
> > RDEPENDS_${PN}-testtools += "python python-dbus<br>
> python-pygobject"<br>
> ><br>
> > SYSTEMD_SERVICE_${PN} = "bluetooth.service"<br>
> > -<br>
> > -EXCLUDE_FROM_WORLD = "1"<br>
><br>
> The reason this is there is to ensure that a bitbake world<br>
> doesn't build<br>
> bluez4 and 5 at the same time. Even though v4 is moving to<br>
> meta-oe, it<br>
> doesn't change the fact we really need this so world builds<br>
> don't end up<br>
> in a mess.<br>
><br>
> Typically, any recipe providing a vritual/xxxx PROVIDES will<br>
> also end up<br>
> with an EXCLUDE_FROM_WORLD as the dependency mechanism will<br>
> then pull in<br>
> the correct thing(s).<br>
><br>
> Not ideal but its what we have today.<br>
><br>
> Originally, world was designed to only build one of any given multiple<br>
> provider situation, IIRC. Is that not the case, or is it the fact that<br>
> both get pulled in via dependencies in a world build, not directly?<br>
<br>
</div></div>I'm not aware of any code that would remove things with multiple<br>
providers from world? Its possible that got lost when we switched to<br>
multiple threads of execution but that was a long time ago.</blockquote></div><br>8262012a90273a4726ebaaf5c4da61262542e69d in bitbake added the initial 'world' implementation, which didn't do such a removal, but did explicitly skip virtual/*, and it looks like aff3227b5e4a3dee9bceb120aac11f4bf3ac6409 implemented the first naive handling of it, beyond the virtual/ prefix, from a quick perusal of bitbake history. It skipped the non-preferred selections of every multiple provider.<br>-- <br><div class="gmail_signature">Christopher Larson<br>clarson at kergoth dot com<br>Founder - BitBake, OpenEmbedded, OpenZaurus<br>Maintainer - Tslib<br>Senior Software Engineer, Mentor Graphics</div>
</div></div>