[OE-core] [RFC v2 0/9] Proposed solution to bluez4/bluez5 selection

Bian, Naimeng biannm at cn.fujitsu.com
Sat Jan 24 09:17:25 UTC 2015


I have not reviewed the patch, but I think this approach is good.
If somebody want integrate bluez5 into his Distro, 
mybe he will catch errors when build the recipes that are hardcoded to require bluez4.

Fedora has changed to bluez5 after Fedora-20.

Thanks
 Bian

> -----Original Message-----
> From: openembedded-core-bounces at lists.openembedded.org
> [mailto:openembedded-core-bounces at lists.openembedded.org] On Behalf Of Peter
> A. Bigot
> Sent: Friday, December 05, 2014 8:32 AM
> To: openembedded-core at lists.openembedded.org
> Subject: Re: [OE-core] [RFC v2 0/9] Proposed solution to bluez4/bluez5 selection
> 
> Any feedback on this approach?
> 
> Thanks.
> 
> Peter
> 
> On 11/26/2014 01:46 PM, Peter A. Bigot wrote:
> > Here's a new approach to bluez5 integration for YOCTO #5031 based on
> > RP's feedback from the last attempt.
> >
> > Though the lib interface is supposedly compatible between bluez4 and
> > bluez5 the dbus interface is not.  The functionality differences are
> > currently significant and likely to remain so. Therefore there will be
> > no virtual/bluez as originally proposed in the defect report.
> >
> > Selection of the provider of bluetooth services is mediated by
> > DISTRO_FEATURES.  As has been the case, "bluetooth" signifies support
> > for bluetooth.  Two new identifiers "bluez4" and "bluez5" distinguish
> > the provider of bluetooth services, just as "systemd" and "sysvinit"
> > distinguish the provider of init services.
> >
> > Recipes that reference bluetooth now inherit from bluetooth.bbclass,
> > which inspects the DISTRO_FEATURES and provides the variable BLUEZ as
> > a default-defined variable with the value:
> >   "" if "bluetooth" is not in DISTRO_FEATURES, else
> >   "bluez5" if "bluez5" is in DISTRO_FEATURES, else
> >   "bluez4"
> >
> > The presence of "bluez4" or "bluez5" in PACKAGECONFIG is normally used
> > to control configuration.  (In some cases this is an "interface change"
> > with respect to PACKAGECONFIG values for specific recipes but I don't
> > see an alternative where existing keys are insufficiently precise.)
> >
> > The assumption is most packages will support either bluez4 or bluez5.
> > Existing packages that used "bluetooth" or "bluez" as the key to
> > select an explicit dependence on bluez4 have mostly been changed to
> > use "bluez4" as the key.
> >
> > Where a package (e.g. pulseaudio) supports both variants with distinct
> > configuration options PACKAGECONFIG settings for both "bluez4" and
> > "bluez5" should be provided.
> >
> > Where a package (e.g. connman) supports both variants without distinct
> > configuration options the PACKAGECONFIG setting should be "bluez" and
> > the dependence will be on "${BLUEZ}".
> >
> > The following changes since commit
> ab63640fad50954b0440ab107c96dbd3f919ea4d:
> >
> >    gdk-pixbuf: use ptest-gnome (2014-11-25 13:03:30 +0000)
> >
> > are available in the git repository at:
> >
> >    git://git.yoctoproject.org/poky-contrib pabigot/rfc-v2/bluez5
> >
> > http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=pabigot/rfc-v
> > 2/bluez5
> >
> > Peter A. Bigot (9):
> >    bluetooth.bbclass: simplify recipe inference of bluetooth provider
> >    packagegroup-base: select distro preference for bluez provider
> >    pulseaudio: select distro preference for bluez provider
> >    qt-mobility: select distro preference for bluez provider
> >    gstreamer1.0-plugins-bad: select distro preference for bluez provider
> >    ofono: select distro preference for bluez provider
> >    neard: select distro preference for bluez provider
> >    libpcap: select distro preference for bluez provider
> >    connman: depend on distro provider of bluez
> >
> >   meta/classes/bluetooth.bbclass                             | 14
> ++++++++++++++
> >   meta/recipes-connectivity/connman/connman.inc              |  6 ++++--
> >   meta/recipes-connectivity/libpcap/libpcap.inc              |  6 ++++--
> >   meta/recipes-connectivity/neard/neard.inc                  |  4 ++--
> >   meta/recipes-connectivity/ofono/ofono.inc                  |  4 ++--
> >   meta/recipes-core/packagegroups/packagegroup-base.bb       |  3 ++-
> >   .../gstreamer/gstreamer1.0-plugins-bad.inc                 |  6 +++---
> >   .../gstreamer/gstreamer1.0-plugins-bad_git.bb              |  1 -
> >   meta/recipes-multimedia/pulseaudio/pulseaudio.inc          |  4 ++--
> >   meta/recipes-qt/qt4/qt-mobility_1.2.0.inc                  |  6 ++++--
> >   10 files changed, 37 insertions(+), 17 deletions(-)
> >   create mode 100644 meta/classes/bluetooth.bbclass
> >
> 
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core


More information about the Openembedded-core mailing list