[OE-core] [PATCH v2] bluez: declaration of virtual/bluez and VIRTUAL-RUNTIME_bluez

Saul Wold sgw at linux.intel.com
Tue Nov 12 01:31:07 UTC 2013


On 11/11/2013 04:30 PM, Rongqing Li wrote:
>
>
> On 11/11/2013 05:59 PM, Iorga, Cristian wrote:
>> Hi all,
>>
>> As far as I have experimented, there is no upgrade path available at
>> the moment, due to extensive changes into the programming model for
>> BlueZ5 vs BlueZ4.
>> At the moment, the last single component that is not officially ready
>> for BlueZ5 is PulseAudio.
>> As have asked around, and PA5.0 will* support BlueZ5.
>> PA5.0 should* be released before EoY2013.
>> Judging by PA git log, there are extensive changes/updates in order to
>> support BZ5.
>>
>> Regards,
>> Cristian
>
> Thanks.
>
> Saul: Do you think it is ready for merge, our release needs it, thanks.
>

At this point, I do not think this is an approporate patch, we can't 
switch between bluez4 and bluez5 as Cristian points out above, they are 
just not compatible.  This is a case where we need 2 distinct versions 
and once the recipes/upstreams for the things that rely on bluez4 are 
updated to bluez5, we will cut over and then likely move the bluez4 
stack out of oe-core into meta-oe.

Sau!

>
> -Roy
>
>>
>> -----Original Message-----
>> From: openembedded-core-bounces at lists.openembedded.org
>> [mailto:openembedded-core-bounces at lists.openembedded.org] On Behalf Of
>> Martin Jansa
>> Sent: Friday, November 1, 2013 11:35 AM
>> To: rongqing.li at windriver.com
>> Cc: openembedded-core at lists.openembedded.org
>> Subject: Re: [OE-core] [PATCH v2] bluez: declaration of virtual/bluez
>> and VIRTUAL-RUNTIME_bluez
>>
>> On Fri, Nov 01, 2013 at 04:09:28PM +0800, rongqing.li at windriver.com
>> wrote:
>>> From: Roy Li <rongqing.li at windriver.com>
>>>
>>> We have two version bluez, declare virtual/bluez and
>>> VIRTUAL-RUNTIME_bluez to switch them easily, and set the preferred
>>> provider for bluez as bluez4
>>
>> +1
>>
>> I agree that some apps aren't compatible with both versions now, but
>> this gives easy way to switch between them for DISTRO which cares only
>> about apps which are compatible with bluez5 already.
>>
>> BTW: Have someone tried upgrade path on target from bluez4 to bluez5?
>> I know we discussed it at lengths before bluez5 was merged, but don't
>> know if someone really tested it.
>>
>>> Signed-off-by: Roy Li <rongqing.li at windriver.com>
>>> ---
>>>   meta/conf/distro/include/default-providers.inc
>>> |    5 ++---
>>>   meta/recipes-connectivity/bluez/bluez4.inc
>>> |    1 +
>>>   meta/recipes-connectivity/bluez5/bluez5.inc
>>> |    1 +
>>>   meta/recipes-connectivity/connman/connman.inc
>>> |    4 ++--
>>>   meta/recipes-connectivity/libpcap/libpcap.inc
>>> |    2 +-
>>>   meta/recipes-connectivity/neard/neard.inc
>>> |    2 +-
>>>   meta/recipes-connectivity/ofono/ofono.inc
>>> |    2 +-
>>>   meta/recipes-core/packagegroups/packagegroup-base.bb
>>> |    2 +-
>>>   meta/recipes-gnome/packagegroups/packagegroup-sdk-gmae.inc
>>> |    2 +-
>>>   meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_git.bb
>>> |    2 +-
>>>   meta/recipes-multimedia/pulseaudio/pulseaudio.inc
>>> |    2 +-
>>>   meta/recipes-qt/qt4/qt-mobility_1.2.0.inc
>>> |    2 +-
>>>   12 files changed, 14 insertions(+), 13 deletions(-)
>>>
>>> diff --git a/meta/conf/distro/include/default-providers.inc
>>> b/meta/conf/distro/include/default-providers.inc
>>> index d4b9db0..0ec4cd9 100644
>>> --- a/meta/conf/distro/include/default-providers.inc
>>> +++ b/meta/conf/distro/include/default-providers.inc
>>> @@ -14,6 +14,7 @@ PREFERRED_PROVIDER_virtual/update-alternatives ?=
>>> "opkg"
>>>   PREFERRED_PROVIDER_virtual/update-alternatives-native ?= "opkg-native"
>>>   PREFERRED_PROVIDER_virtual/libx11 ?= "libx11"
>>>   PREFERRED_PROVIDER_xf86-video-intel ?= "xf86-video-intel"
>>> +PREFERRED_PROVIDER_virtual/bluez ?= "bluez4"
>>>
>>>   #
>>>   # Default virtual runtime providers
>>> @@ -21,6 +22,7 @@ PREFERRED_PROVIDER_xf86-video-intel ?=
>>> "xf86-video-intel"
>>>   VIRTUAL-RUNTIME_update-alternatives ?= "update-alternatives-cworth"
>>>   VIRTUAL-RUNTIME_apm ?= "apm"
>>>   VIRTUAL-RUNTIME_alsa-state ?= "alsa-state"
>>> +VIRTUAL-RUNTIME_bluez ?= "bluez4"
>>>
>>>   #
>>>   # Default recipe providers
>>> @@ -40,6 +42,3 @@ PREFERRED_PROVIDER_console-tools ?= "kbd"
>>>   PREFERRED_PROVIDER_gzip-native ?= "pigz-native"
>>>   PREFERRED_PROVIDER_make ?= "make"
>>>   PREFERRED_PROVIDER_udev ?=
>>> "${@base_contains('DISTRO_FEATURES','systemd','systemd','udev',d)}"
>>> -# There are issues with runtime packages and PREFERRED_PROVIDER, see
>>> YOCTO #5044 for details -# on this rather strange entry.
>>> -PREFERRED_PROVIDER_bluez4 ?= "bluez4"
>>> diff --git a/meta/recipes-connectivity/bluez/bluez4.inc
>>> b/meta/recipes-connectivity/bluez/bluez4.inc
>>> index e4f6834..c0babc6 100644
>>> --- a/meta/recipes-connectivity/bluez/bluez4.inc
>>> +++ b/meta/recipes-connectivity/bluez/bluez4.inc
>>> @@ -9,6 +9,7 @@ LIC_FILES_CHKSUM =
>>> "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e \
>>>
>>> file://sbc/sbc.c;beginline=1;endline=25;md5=1a40781ed30d50d8639323a184aeb191"
>>>
>>>   DEPENDS = "udev libusb dbus-glib glib-2.0 libcheck readline"
>>>   RDEPENDS_${PN}-dev = "bluez-hcidump"
>>> +PROVIDES += "virtual/bluez"
>>>
>>>   PACKAGECONFIG ??= "\
>>>       ${@base_contains('DISTRO_FEATURES', 'alsa', 'alsa', '', d)}\ diff
>>> --git a/meta/recipes-connectivity/bluez5/bluez5.inc
>>> b/meta/recipes-connectivity/bluez5/bluez5.inc
>>> index 2e25d86..b3ab131 100644
>>> --- a/meta/recipes-connectivity/bluez5/bluez5.inc
>>> +++ b/meta/recipes-connectivity/bluez5/bluez5.inc
>>> @@ -7,6 +7,7 @@ LIC_FILES_CHKSUM =
>>> "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e \
>>>
>>> file://COPYING.LIB;md5=fb504b67c50331fc78734fed90fb0e09 \
>>>
>>> file://src/main.c;beginline=1;endline=24;md5=9bc54b93cd7e17bf03f52513f39f926e"
>>>
>>>   DEPENDS = "udev libusb dbus-glib glib-2.0 libcheck readline"
>>> +PROVIDES += "virtual/bluez"
>>>
>>>   RCONFLICTS_${PN} = "bluez4"
>>>
>>> diff --git a/meta/recipes-connectivity/connman/connman.inc
>>> b/meta/recipes-connectivity/connman/connman.inc
>>> index c2d71e0..8641415 100644
>>> --- a/meta/recipes-connectivity/connman/connman.inc
>>> +++ b/meta/recipes-connectivity/connman/connman.inc
>>> @@ -41,7 +41,7 @@ PACKAGECONFIG ??= "wispr \  #
>>> PACKAGECONFIG_append_pn-connman = " openvpn vpnc l2tp pptp"
>>>
>>>   PACKAGECONFIG[wifi] = "--enable-wifi, --disable-wifi, wpa-supplicant"
>>> -PACKAGECONFIG[bluetooth] = "--enable-bluetooth, --disable-bluetooth,
>>> bluez4"
>>> +PACKAGECONFIG[bluetooth] = "--enable-bluetooth, --disable-bluetooth,
>>> virtual/bluez"
>>>   PACKAGECONFIG[3g] = "--enable-ofono, --disable-ofono, ofono"
>>>   PACKAGECONFIG[tist] = "--enable-tist,--disable-tist,"
>>>   PACKAGECONFIG[openvpn] = "--enable-openvpn
>>> --with-openvpn=${sbindir}/openvpn,--disable-openvpn,,openvpn"
>>> @@ -118,7 +118,7 @@ RPROVIDES_${PN} = "\
>>>
>>>   RDEPENDS_${PN} = "\
>>>       dbus \
>>> -    ${@base_contains('PACKAGECONFIG', 'bluetooth', 'bluez4', '', d)} \
>>> +    ${@base_contains('PACKAGECONFIG', 'bluetooth',
>>> +'${VIRTUAL-RUNTIME_bluez}', '', d)} \
>>>       ${@base_contains('PACKAGECONFIG', 'wifi','wpa-supplicant', '',
>>> d)} \
>>>       ${@base_contains('PACKAGECONFIG', '3g','ofono', '', d)} \
>>>       xuser-account \
>>> diff --git a/meta/recipes-connectivity/libpcap/libpcap.inc
>>> b/meta/recipes-connectivity/libpcap/libpcap.inc
>>> index 3a08afe..3a67ecc 100644
>>> --- a/meta/recipes-connectivity/libpcap/libpcap.inc
>>> +++ b/meta/recipes-connectivity/libpcap/libpcap.inc
>>> @@ -11,7 +11,7 @@ LIC_FILES_CHKSUM =
>>> "file://LICENSE;md5=1d4b0366557951c84a94fabe3529f867 \  DEPENDS =
>>> "flex-native bison-native libnl"
>>>
>>>   PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES', 'bluetooth',
>>> 'bluetooth', '', d)}"
>>> -PACKAGECONFIG[bluetooth] =
>>> "--enable-bluetooth,--disable-bluetooth,bluez4"
>>> +PACKAGECONFIG[bluetooth] =
>>> "--enable-bluetooth,--disable-bluetooth,virtual/bluez"
>>>   PACKAGECONFIG[canusb] = "--enable-canusb,--enable-canusb=no,libusb"
>>>
>>>   INC_PR = "r5"
>>> diff --git a/meta/recipes-connectivity/neard/neard.inc
>>> b/meta/recipes-connectivity/neard/neard.inc
>>> index 7cccbdc..1d27c10 100644
>>> --- a/meta/recipes-connectivity/neard/neard.inc
>>> +++ b/meta/recipes-connectivity/neard/neard.inc
>>> @@ -47,7 +47,7 @@ RDEPENDS_${PN} = "dbus python python-dbus
>>> python-pygobject"
>>>
>>>   # Bluez & Wifi are not mandatory except for handover
>>> RRECOMMENDS_${PN} = "\
>>> -                     ${@base_contains('DISTRO_FEATURES',
>>> 'bluetooth', 'bluez4', '', d)} \
>>> +                     ${@base_contains('DISTRO_FEATURES', 'bluetooth',
>>> + 'virtual/bluez', '', d)} \
>>>                        ${@base_contains('DISTRO_FEATURES',
>>> 'wifi','wpa-supplicant', '', d)} \
>>>                       "
>>>
>>> diff --git a/meta/recipes-connectivity/ofono/ofono.inc
>>> b/meta/recipes-connectivity/ofono/ofono.inc
>>> index 3972e06..ff34265 100644
>>> --- a/meta/recipes-connectivity/ofono/ofono.inc
>>> +++ b/meta/recipes-connectivity/ofono/ofono.inc
>>> @@ -7,7 +7,7 @@ LIC_FILES_CHKSUM =
>>> "file://COPYING;md5=eb723b61539feef013de476e68b5c50a \
>>>
>>>   inherit autotools pkgconfig update-rc.d systemd
>>>
>>> -DEPENDS  = "dbus glib-2.0 udev mobile-broadband-provider-info
>>> ${@base_contains('DISTRO_FEATURES', 'bluetooth','bluez4', '', d)}"
>>> +DEPENDS  = "dbus glib-2.0 udev mobile-broadband-provider-info
>>> ${@base_contains('DISTRO_FEATURES', 'bluetooth','virtual/bluez', '',
>>> d)}"
>>>
>>>   INITSCRIPT_NAME = "ofono"
>>>   INITSCRIPT_PARAMS = "defaults 22"
>>> diff --git a/meta/recipes-core/packagegroups/packagegroup-base.bb
>>> b/meta/recipes-core/packagegroups/packagegroup-base.bb
>>> index eee8bd9..a63ce73 100644
>>> --- a/meta/recipes-core/packagegroups/packagegroup-base.bb
>>> +++ b/meta/recipes-core/packagegroups/packagegroup-base.bb
>>> @@ -210,7 +210,7 @@ RRECOMMENDS_packagegroup-base-pcmcia = "\
>>>
>>>   SUMMARY_packagegroup-base-bluetooth = "Bluetooth support"
>>>   RDEPENDS_packagegroup-base-bluetooth = "\
>>> -    bluez4 \
>>> +    ${VIRTUAL-RUNTIME_bluez} \
>>>       ${@base_contains('COMBINED_FEATURES', 'alsa',
>>> 'libasound-module-bluez', '',d)} \
>>>       "
>>>
>>> diff --git
>>> a/meta/recipes-gnome/packagegroups/packagegroup-sdk-gmae.inc
>>> b/meta/recipes-gnome/packagegroups/packagegroup-sdk-gmae.inc
>>> index 416e05d..75c92e2 100644
>>> --- a/meta/recipes-gnome/packagegroups/packagegroup-sdk-gmae.inc
>>> +++ b/meta/recipes-gnome/packagegroups/packagegroup-sdk-gmae.inc
>>> @@ -3,7 +3,7 @@ SDK-GMAE = " \
>>>       dbus-glib-dev \
>>>       gtk+-dev \
>>>       gstreamer-dev \
>>> -    bluez4-dev \
>>> +    ${VIRTUAL-RUNTIME_bluez}-dev \
>>>       gconf-dev \
>>>       avahi-dev \
>>>       telepathy-glib-dev \
>>> diff --git
>>> a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_git.bb
>>> b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_git.bb
>>> index e1a5904..8f37be8 100644
>>> ---
>>> a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_git.bb
>>> +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_git.b
>>> +++ b
>>> @@ -11,7 +11,7 @@ S = "${WORKDIR}/git"
>>>
>>>   SRCREV = "6e5db57d2446a753aaa76bee268e1f95600b14ce"
>>>
>>> -PACKAGECONFIG[bluez] = "--enable-bluez,--disable-bluez,bluez4"
>>> +PACKAGECONFIG[bluez] = "--enable-bluez,--disable-bluez,virtual/bluez"
>>>   PACKAGECONFIG[sbc] = "--enable-sbc,--disable-sbc,sbc"
>>>   PACKAGECONFIG[hls] = "--enable-hls,--disable-hls,gnutls"
>>>
>>> diff --git a/meta/recipes-multimedia/pulseaudio/pulseaudio.inc
>>> b/meta/recipes-multimedia/pulseaudio/pulseaudio.inc
>>> index bb13f4b..e4e058f 100644
>>> --- a/meta/recipes-multimedia/pulseaudio/pulseaudio.inc
>>> +++ b/meta/recipes-multimedia/pulseaudio/pulseaudio.inc
>>> @@ -36,7 +36,7 @@ PACKAGECONFIG ??=
>>> "${@base_contains('DISTRO_FEATURES', 'bluetooth', 'bluez', '',
>>>                      ${@base_contains('DISTRO_FEATURES', 'systemd',
>>> 'systemd', '', d)} \
>>>                      ${@base_contains('DISTRO_FEATURES', 'zeroconf',
>>> 'avahi', '', d)} \
>>>                      ${@base_contains('DISTRO_FEATURES', 'x11',
>>> 'x11', '', d)}"
>>> -PACKAGECONFIG[bluez] = "--enable-bluez,--disable-bluez,bluez4 sbc"
>>> +PACKAGECONFIG[bluez] = "--enable-bluez,--disable-bluez,virtual/bluez
>>> sbc"
>>>   PACKAGECONFIG[gtk] = "--enable-gtk3,--disable-gtk3,gtk+3"
>>>   PACKAGECONFIG[systemd] = "--enable-systemd,--disable-systemd,systemd"
>>>   PACKAGECONFIG[x11] = "--enable-x11,--disable-x11,virtual/libx11
>>> libxtst libice libsm libxcb"
>>> diff --git a/meta/recipes-qt/qt4/qt-mobility_1.2.0.inc
>>> b/meta/recipes-qt/qt4/qt-mobility_1.2.0.inc
>>> index 062702f..ef3f08d 100644
>>> --- a/meta/recipes-qt/qt4/qt-mobility_1.2.0.inc
>>> +++ b/meta/recipes-qt/qt4/qt-mobility_1.2.0.inc
>>> @@ -3,7 +3,7 @@ DEPENDS = "gstreamer util-linux"
>>>
>>>   PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES',
>>> 'pulseaudio', 'pulseaudio', '', d)} \
>>>                      ${@base_contains('DISTRO_FEATURES', 'bluetooth',
>>> 'bluetooth', '', d)}"
>>> -PACKAGECONFIG[bluetooth] = ",,bluez4"
>>> +PACKAGECONFIG[bluetooth] = ",,virtual/bluez"
>>>   PACKAGECONFIG[pulseaudio] = ",,pulseaudio"
>>>
>>>   LICENSE = "LGPLv2.1"
>>> --
>>> 1.7.10.4
>>>
>>> _______________________________________________
>>> 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