Miscellaneous bluez patches
cover Miscellaneous bluez patches
These resolve the conflict for provider of hcidump between bluez4 and bluez5, provide a new package containing the useful tools in bluez5 that upstream doesn't think should be installed, and provides a mechanism for enabling the experimental features such as the new GATT interface.
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/bluez5
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=pabigot/bluez5
Peter A. Bigot (3):
bluez-hcidump: select provider as bluez4 or bluez5
bluez5: add a package for tools left in the build area
bluez5: support experimental through PACKAGECONFIG
meta/conf/distro/include/default-providers.inc | 1 + .../bluez/bluez-hcidump_2.5.bb | 2 + meta/recipes-connectivity/bluez5/bluez5.inc | 29 +++++++++++++- meta/recipes-connectivity/bluez5/bluez5_5.25.bb | 46 ++++++++++++++++++++++ 4 files changed, 77 insertions(+), 1 deletion(-)
Signature · 1 line
1.8.5.5
PATCH 1/3 bluez-hcidump: select provider as bluez4 or bluez5
bluez-hcidump was a separate package in bluez4, but was integrated into bluez5.
--- meta/conf/distro/include/default-providers.inc | 1 + meta/recipes-connectivity/bluez/bluez-hcidump_2.5.bb | 2 ++ meta/recipes-connectivity/bluez5/bluez5.inc | 2 ++ 3 files changed, 5 insertions(+)
meta/conf/distro/include/default-providers.inc +1 -0
@@ -44,6 +44,7 @@ PREFERRED_PROVIDER_udev ?= "${@bb.utils.contains('DISTRO_FEATURES','systemd','sy # There are issues with runtime packages and PREFERRED_PROVIDER, see YOCTO #5044 for details # on this rather strange entry. PREFERRED_PROVIDER_bluez4 ?= "bluez4" +PREFERRED_PROVIDER_bluez-hcidump ?= "bluez-hcidump" # Alternative is ltp-ddt in meta-oe: meta-oe/recipes-devtools/ltp-ddt/ltp-ddt_0.0.4.bb PREFERRED_PROVIDER_ltp ?= "ltp" PREFERRED_PROVIDER_getopt ?= "util-linux-getopt"
meta/recipes-connectivity/bluez/bluez-hcidump_2.5.bb +2 -0
@@ -3,7 +3,9 @@ DESCRIPTION = "The hcidump tool reads raw HCI data coming from and going to a Bl and displays the commands, events and data in a human-readable form." SECTION = "console" +# hcidump was integrated into bluez5 DEPENDS = "bluez4" +RCONFLICTS_${PN} = "bluez5" LICENSE = "GPLv2+" LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a \ file://src/hcidump.c;beginline=1;endline=23;md5=3bee3a162dff43a5be7470710b99fbcf"
meta/recipes-connectivity/bluez5/bluez5.inc +2 -0
@@ -7,6 +7,8 @@ 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 += "bluez-hcidump" +RPROVIDES_${PN} += "bluez-hcidump" RCONFLICTS_${PN} = "bluez4"
Signature · 1 line
1.8.5.5
PATCH 2/3 bluez5: add a package for tools left in the build area
In reply to Peter A. BigotIn bluez4 gatttool was provided as a command-line interface to the Generic Attribute Profile. In bluez5 this tool is still built but is no longer installed. It is still necessary for those wishing to use GATT since the programmatic API is not yet mature. A variety of other useful tools are treated similarly by bluez5.
Make these tools available in the bluez5-noinst-tools package, in a way that allows control over which tools are packaged, with the default being all that are provided in a particular release of bluez.
--- meta/recipes-connectivity/bluez5/bluez5.inc | 26 +++++++++++++- meta/recipes-connectivity/bluez5/bluez5_5.25.bb | 46 +++++++++++++++++++++++++ 2 files changed, 71 insertions(+), 1 deletion(-)
meta/recipes-connectivity/bluez5/bluez5.inc +25 -1
@@ -32,6 +32,15 @@ EXTRA_OECONF = "\ --enable-library \ " +# bluez5 builds a large number of useful utilities but does not +# install them. Specify which ones we want put into ${PN}-noinst-tools. +NOINST_TOOLS_READLINE ??= "" +NOINST_TOOLS_EXPERIMENTAL ??= "" +NOINST_TOOLS = " \ + ${NOINST_TOOLS_READLINE} \ + ${@bb.utils.contains('PACKAGECONFIG', 'experimental', '${NOINST_TOOLS_EXPERIMENTAL}', '', d)} \ +" + do_install_append() { install -d ${D}${sysconfdir}/bluetooth/ if [ -f ${S}/profiles/audio/audio.conf ]; then
@@ -45,10 +54,15 @@ do_install_append() { fi # at_console doesn't really work with the current state of OE, so punch some more holes so people can actually use BT install -m 0644 ${WORKDIR}/bluetooth.conf ${D}/${sysconfdir}/dbus-1/system.d/ + + # Install desired tools that upstream leaves in build area + for f in ${NOINST_TOOLS} ; do + install -m 755 ${B}/$f ${D}/${bindir} + done } ALLOW_EMPTY_libasound-module-bluez = "1" -PACKAGES =+ "libasound-module-bluez ${PN}-testtools ${PN}-obex" +PACKAGES =+ "libasound-module-bluez ${PN}-testtools ${PN}-obex ${PN}-noinst-tools" FILES_libasound-module-bluez = "${libdir}/alsa-lib/lib*.so ${datadir}/alsa" FILES_${PN} += "${libdir}/bluetooth/plugins ${libdir}/bluetooth/plugins/*.so ${base_libdir}/udev/ ${nonarch_base_libdir}/udev/ ${systemd_unitdir}/ ${datadir}/dbus-1"
@@ -65,6 +79,16 @@ SYSTEMD_SERVICE_${PN}-obex = "obex.service" FILES_${PN}-testtools = "${libdir}/bluez/test/*" +def get_noinst_tools_paths (d, bb, tools): + s = list() + bindir = d.getVar("bindir", True) + for bdp in tools.split(): + f = os.path.basename(bdp) + s.append("%s/%s" % (bindir, f)) + return "\n".join(s) + +FILES_${PN}-noinst-tools = "${@get_noinst_tools_paths(d, bb, d.getVar('NOINST_TOOLS', True))}" + FILES_${PN}-dbg += "\ ${libdir}/${BPN}/bluetooth/.debug \ ${libdir}/bluetooth/plugins/.debug \
meta/recipes-connectivity/bluez5/bluez5_5.25.bb +46 -0
49 lines not on this page · raw message
Signature · 1 line
1.8.5.5
PATCH 3/3 bluez5: support experimental through PACKAGECONFIG
In reply to Peter A. BigotMake it simple to enable the experimental plugins and tools.
--- meta/recipes-connectivity/bluez5/bluez5.inc | 1 + 1 file changed, 1 insertion(+)
meta/recipes-connectivity/bluez5/bluez5.inc +1 -0
@@ -14,6 +14,7 @@ RCONFLICTS_${PN} = "bluez4" PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'alsa', 'alsa', '', d)} obex-profiles" PACKAGECONFIG[obex-profiles] = "--enable-obex,--disable-obex,libical" +PACKAGECONFIG[experimental] = "--enable-experimental,--disable-experimental," SRC_URI = "\ ${KERNELORG_MIRROR}/linux/bluetooth/bluez-${PV}.tar.xz \
Signature · 1 line
1.8.5.5
Ping. These are independent of the RFC patches.
Quoted 25 lines · Peter A. Bigot
These resolve the conflict for provider of hcidump between bluez4 and bluez5, provide a new package containing the useful tools in bluez5 that upstream doesn't think should be installed, and provides a mechanism for enabling the experimental features such as the new GATT interface.
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-contribpabigot/bluez5
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=pabigot/bluez5Peter A. Bigot (3):
bluez-hcidump: select provider as bluez4 or bluez5
bluez5: add a package for tools left in the build area
bluez5: support experimental through PACKAGECONFIGmeta/conf/distro/include/default-providers.inc | 1 + .../bluez/bluez-hcidump_2.5.bb | 2 + meta/recipes-connectivity/bluez5/bluez5.inc | 29 +++++++++++++- meta/recipes-connectivity/bluez5/bluez5_5.25.bb | 46 ++++++++++++++++++++++ 4 files changed, 77 insertions(+), 1 deletion(-)
Burton, Ross
AppliedQuoted 2 lines · Peter A. Bigot
Ping. These are independent of the RFC patches.
Merged into mut, thanks.
Ross