* [meta-oe][PATCH V6] bluez collection: add (moved from oe-core)
@ 2015-04-27 13:04 Cristian Iorga
2015-04-27 13:05 ` Iorga, Cristian
2015-04-27 13:54 ` Martin Jansa
0 siblings, 2 replies; 3+ messages in thread
From: Cristian Iorga @ 2015-04-27 13:04 UTC (permalink / raw)
To: openembedded-devel
BlueZ 4.x Bluetooth stack has been removed from oe-core.
However, it is still supported, so add it to
recipes-connectivity in meta-oe.
meta-systemd layer bluez4 bbappend has been integrated
into bluez4 recipe.
In order to use it in oe-core/poky/YP, 'bluez5' backfill
distro feature needs to be disabled via:
DISTRO_FEATURES_BACKFILL_CONSIDERED = "bluez5" .
'bluetooth' distro feature needs to be present also.
Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
---
.../obsolete_automake_macros.patch | 14 +++
.../bluez/bluez-hcidump_2.5.bb | 22 +++++
.../bluez/bluez4-4.101/bluetooth.conf | 16 +++
.../bluez/bluez4-4.101/fix-udev-paths.patch | 37 +++++++
.../bluez/bluez4-4.101/fix_encrypt_collision.patch | 110 +++++++++++++++++++++
.../bluez/bluez4-4.101/install-test-script.patch | 26 +++++
...ork-fix-network-Connect-method-parameters.patch | 30 ++++++
.../bluez4-4.101/obsolete_automake_macros.patch | 14 +++
.../bluez/bluez4-4.101/sbc_mmx.patch | 24 +++++
...pygobject-instead-ofgobject-introspection.patch | 27 +++++
meta-oe/recipes-connectivity/bluez/bluez4.inc | 54 ++++++++++
meta-oe/recipes-connectivity/bluez/bluez4_4.101.bb | 47 +++++++++
.../bluez/gst-plugin-bluetooth_4.101.bb | 39 ++++++++
.../bluez/bluez4_4.101.bbappend | 9 --
14 files changed, 460 insertions(+), 9 deletions(-)
create mode 100644 meta-oe/recipes-connectivity/bluez/bluez-hcidump-2.5/obsolete_automake_macros.patch
create mode 100644 meta-oe/recipes-connectivity/bluez/bluez-hcidump_2.5.bb
create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4-4.101/bluetooth.conf
create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4-4.101/fix-udev-paths.patch
create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4-4.101/fix_encrypt_collision.patch
create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4-4.101/install-test-script.patch
create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4-4.101/network-fix-network-Connect-method-parameters.patch
create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4-4.101/obsolete_automake_macros.patch
create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4-4.101/sbc_mmx.patch
create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4-4.101/use-legacy-pygobject-instead-ofgobject-introspection.patch
create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4.inc
create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4_4.101.bb
create mode 100644 meta-oe/recipes-connectivity/bluez/gst-plugin-bluetooth_4.101.bb
delete mode 100644 meta-systemd/oe-core/recipes-connectivity/bluez/bluez4_4.101.bbappend
diff --git a/meta-oe/recipes-connectivity/bluez/bluez-hcidump-2.5/obsolete_automake_macros.patch b/meta-oe/recipes-connectivity/bluez/bluez-hcidump-2.5/obsolete_automake_macros.patch
new file mode 100644
index 0000000..0c77f1a
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/bluez-hcidump-2.5/obsolete_automake_macros.patch
@@ -0,0 +1,14 @@
+Upstream-Status: Pending [package obsolete/not maintained by upstream]
+
+Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
+diff -Nurd bluez-hcidump-2.5/configure.ac bluez-hcidump-2.5/configure.ac
+--- bluez-hcidump-2.5/configure.ac 2012-11-30 10:29:41.000000000 +0200
++++ bluez-hcidump-2.5/configure.ac 2013-01-12 10:02:10.609511463 +0200
+@@ -2,7 +2,7 @@
+ AC_INIT(bluez-hcidump, 2.5)
+
+ AM_INIT_AUTOMAKE([foreign subdir-objects])
+-AM_CONFIG_HEADER(config.h)
++AC_CONFIG_HEADERS(config.h)
+
+ m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
diff --git a/meta-oe/recipes-connectivity/bluez/bluez-hcidump_2.5.bb b/meta-oe/recipes-connectivity/bluez/bluez-hcidump_2.5.bb
new file mode 100644
index 0000000..3950630
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/bluez-hcidump_2.5.bb
@@ -0,0 +1,22 @@
+SUMMARY = "Linux Bluetooth Stack HCI Debugger Tool"
+DESCRIPTION = "The hcidump tool reads raw HCI data coming from and going to a Bluetooth device \
+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"
+PR = "r1"
+
+SRC_URI = "http://www.kernel.org/pub/linux/bluetooth/bluez-hcidump-${PV}.tar.gz \
+ file://obsolete_automake_macros.patch \
+"
+
+SRC_URI[md5sum] = "2eab54bbd2b59a2ed4274ebb9390cf18"
+SRC_URI[sha256sum] = "9b7c52b375081883738cf049ecabc103b97d094b19c6544fb241267905d88881"
+S = "${WORKDIR}/bluez-hcidump-${PV}"
+
+inherit autotools
diff --git a/meta-oe/recipes-connectivity/bluez/bluez4-4.101/bluetooth.conf b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/bluetooth.conf
new file mode 100644
index 0000000..ca5e9e4
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/bluetooth.conf
@@ -0,0 +1,16 @@
+<!-- This configuration file specifies the required security policies
+ for Bluetooth core daemon to work. -->
+
+<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
+ "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
+<busconfig>
+
+ <!-- ../system.conf have denied everything, so we just punch some holes -->
+
+ <policy context="default">
+ <allow own="org.bluez"/>
+ <allow send_destination="org.bluez"/>
+ <allow send_interface="org.bluez.Agent"/>
+ </policy>
+
+</busconfig>
diff --git a/meta-oe/recipes-connectivity/bluez/bluez4-4.101/fix-udev-paths.patch b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/fix-udev-paths.patch
new file mode 100644
index 0000000..8089914
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/fix-udev-paths.patch
@@ -0,0 +1,37 @@
+Add udevdir/udevrulesdir options
+
+Upstream-Status: Inappropriate [configuration]
+Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
+
+Index: bluez-4.101/Makefile.am
+===================================================================
+--- bluez-4.101.orig/Makefile.am
++++ bluez-4.101/Makefile.am
+@@ -395,7 +395,7 @@ EXTRA_DIST += audio/bluetooth.conf
+ include Makefile.tools
+
+ if DATAFILES
+-rulesdir = @UDEV_DIR@/rules.d
++rulesdir = @UDEV_RULES_DIR@
+
+ udev_files =
+
+Index: bluez-4.101/configure.ac
+===================================================================
+--- bluez-4.101.orig/configure.ac
++++ bluez-4.101/configure.ac
+@@ -61,4 +61,14 @@ if (test -n "${path_systemdunit}"); then
+ fi
+ AM_CONDITIONAL(SYSTEMD, test -n "${path_systemdunit}")
+
++AC_ARG_WITH([udevdir],
++ AS_HELP_STRING([--with-udevdir=DIR], [udev directory]),
++ [], [with_udevdir=/lib/udev/])
++AC_SUBST([UDEV_DIR], [$with_udevdir])
++
++AC_ARG_WITH([udevrulesdir],
++ AS_HELP_STRING([--with-udevrulesdir=DIR], [udev rules directory]),
++ [], [with_udevrulesdir=/lib/udev/rules.d])
++AC_SUBST([UDEV_RULES_DIR], [$with_udevrulesdir])
++
+ AC_OUTPUT(Makefile doc/version.xml src/bluetoothd.8 src/bluetooth.service bluez.pc)
diff --git a/meta-oe/recipes-connectivity/bluez/bluez4-4.101/fix_encrypt_collision.patch b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/fix_encrypt_collision.patch
new file mode 100644
index 0000000..1bc390f
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/fix_encrypt_collision.patch
@@ -0,0 +1,110 @@
+Avoid namepspace collision with encrypt function from libc
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Index: bluez-4.101/test/l2test.c
+===================================================================
+--- bluez-4.101.orig/test/l2test.c
++++ bluez-4.101/test/l2test.c
+@@ -107,7 +107,7 @@ static char *filename = NULL;
+ static int rfcmode = 0;
+ static int master = 0;
+ static int auth = 0;
+-static int encrypt = 0;
++static int encryption_request = 0;
+ static int secure = 0;
+ static int socktype = SOCK_SEQPACKET;
+ static int linger = 0;
+@@ -340,7 +340,7 @@ static int do_connect(char *svr)
+ opt |= L2CAP_LM_MASTER;
+ if (auth)
+ opt |= L2CAP_LM_AUTH;
+- if (encrypt)
++ if (encryption_request)
+ opt |= L2CAP_LM_ENCRYPT;
+ if (secure)
+ opt |= L2CAP_LM_SECURE;
+@@ -475,7 +475,7 @@ static void do_listen(void (*handler)(in
+ opt |= L2CAP_LM_MASTER;
+ if (auth)
+ opt |= L2CAP_LM_AUTH;
+- if (encrypt)
++ if (encryption_request)
+ opt |= L2CAP_LM_ENCRYPT;
+ if (secure)
+ opt |= L2CAP_LM_SECURE;
+@@ -1407,7 +1407,7 @@ int main(int argc, char *argv[])
+ break;
+
+ case 'E':
+- encrypt = 1;
++ encryption_request = 1;
+ break;
+
+ case 'S':
+Index: bluez-4.101/test/rctest.c
+===================================================================
+--- bluez-4.101.orig/test/rctest.c
++++ bluez-4.101/test/rctest.c
+@@ -79,7 +79,7 @@ static char *filename = NULL;
+
+ static int master = 0;
+ static int auth = 0;
+-static int encrypt = 0;
++static int encryption_request = 0;
+ static int secure = 0;
+ static int socktype = SOCK_STREAM;
+ static int linger = 0;
+@@ -200,7 +200,7 @@ static int do_connect(const char *svr)
+ opt |= RFCOMM_LM_MASTER;
+ if (auth)
+ opt |= RFCOMM_LM_AUTH;
+- if (encrypt)
++ if (encryption_request)
+ opt |= RFCOMM_LM_ENCRYPT;
+ if (secure)
+ opt |= RFCOMM_LM_SECURE;
+@@ -291,7 +291,7 @@ static void do_listen(void (*handler)(in
+ opt |= RFCOMM_LM_MASTER;
+ if (auth)
+ opt |= RFCOMM_LM_AUTH;
+- if (encrypt)
++ if (encryption_request)
+ opt |= RFCOMM_LM_ENCRYPT;
+ if (secure)
+ opt |= RFCOMM_LM_SECURE;
+@@ -701,7 +701,7 @@ int main(int argc, char *argv[])
+ break;
+
+ case 'E':
+- encrypt = 1;
++ encryption_request = 1;
+ break;
+
+ case 'S':
+Index: bluez-4.101/src/textfile.h
+===================================================================
+--- bluez-4.101.orig/src/textfile.h
++++ bluez-4.101/src/textfile.h
+@@ -24,6 +24,8 @@
+ #ifndef __TEXTFILE_H
+ #define __TEXTFILE_H
+
++#include <sys/types.h>
++
+ int create_dirs(const char *filename, const mode_t mode);
+ int create_file(const char *filename, const mode_t mode);
+ int create_name(char *buf, size_t size, const char *path,
+Index: bluez-4.101/test/attest.c
+===================================================================
+--- bluez-4.101.orig/test/attest.c
++++ bluez-4.101/test/attest.c
+@@ -34,6 +34,7 @@
+ #include <termios.h>
+ #include <sys/ioctl.h>
+ #include <sys/socket.h>
++#include <sys/select.h>
+
+ #include <bluetooth/bluetooth.h>
+ #include <bluetooth/rfcomm.h>
diff --git a/meta-oe/recipes-connectivity/bluez/bluez4-4.101/install-test-script.patch b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/install-test-script.patch
new file mode 100644
index 0000000..23f7d99
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/install-test-script.patch
@@ -0,0 +1,26 @@
+Upstream-Status: Inappropriate
+
+Install the bluez's test scripts
+
+Signed-off-by: Zhong Hongbo <hongbo.zhong@windriver.com>
+diff -Nurd bluez-4.101.orig/Makefile.tools bluez-4.101/Makefile.tools
+--- bluez-4.101.orig/Makefile.tools 2013-11-19 15:49:07.688838000 +0800
++++ bluez-4.101/Makefile.tools 2013-11-19 15:50:09.256837848 +0800
+@@ -227,6 +227,17 @@
+ test/service-spp.xml test/service-opp.xml test/service-ftp.xml \
+ test/simple-player test/test-nap
+
++bluez4_testdir = $(libdir)/bluez4/test/
++dist_bluez4_test_SCRIPTS = test/sap-client test/hsplay test/hsmicro \
++ test/monitor-bluetooth test/list-devices \
++ test/test-discovery test/test-manager test/test-adapter \
++ test/test-device test/test-service test/test-serial \
++ test/test-telephony test/test-network test/simple-agent \
++ test/simple-service test/simple-endpoint test/test-audio \
++ test/test-input test/test-sap-server test/test-oob \
++ test/test-attrib test/test-proximity test/test-thermometer \
++ test/test-serial-proxy test/test-health test/test-health-sink \
++ test/simple-player test/test-nap
+ if HIDD
+ bin_PROGRAMS += compat/hidd
+
diff --git a/meta-oe/recipes-connectivity/bluez/bluez4-4.101/network-fix-network-Connect-method-parameters.patch b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/network-fix-network-Connect-method-parameters.patch
new file mode 100644
index 0000000..37f9199
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/network-fix-network-Connect-method-parameters.patch
@@ -0,0 +1,30 @@
+Upstream-Status: Backport
+Signed-off-by: Peter A. Bigot <pab@pabigot.com>
+
+From 57170b311f1468330f4a9961dc0b3ac45f97bc13 Mon Sep 17 00:00:00 2001
+From: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
+Date: Sat, 30 Jun 2012 00:39:05 -0300
+Subject: [PATCH] network: fix network Connect() method parameters
+
+---
+ network/connection.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/network/connection.c b/network/connection.c
+index 544ec3a..59423a9 100644
+--- a/network/connection.c
++++ b/network/connection.c
+@@ -554,7 +554,9 @@ static void path_unregister(void *data)
+
+ static const GDBusMethodTable connection_methods[] = {
+ { GDBUS_ASYNC_METHOD("Connect",
+- NULL, NULL, connection_connect) },
++ GDBUS_ARGS({"uuid", "s"}),
++ GDBUS_ARGS({"interface", "s"}),
++ connection_connect) },
+ { GDBUS_METHOD("Disconnect",
+ NULL, NULL, connection_disconnect) },
+ { GDBUS_METHOD("GetProperties",
+--
+1.7.9.5
+
diff --git a/meta-oe/recipes-connectivity/bluez/bluez4-4.101/obsolete_automake_macros.patch b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/obsolete_automake_macros.patch
new file mode 100644
index 0000000..1068f24
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/obsolete_automake_macros.patch
@@ -0,0 +1,14 @@
+Upstream-Status: Backport
+
+Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
+diff -Nurd bluez-4.101/configure.ac bluez-4.101/configure.ac
+--- bluez-4.101/configure.ac 2012-06-22 19:36:49.000000000 +0300
++++ bluez-4.101/configure.ac 2013-01-07 06:13:18.385888966 +0200
+@@ -2,7 +2,7 @@
+ AC_INIT(bluez, 4.101)
+
+ AM_INIT_AUTOMAKE([foreign subdir-objects color-tests])
+-AM_CONFIG_HEADER(config.h)
++AC_CONFIG_HEADERS(config.h)
+
+ m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
diff --git a/meta-oe/recipes-connectivity/bluez/bluez4-4.101/sbc_mmx.patch b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/sbc_mmx.patch
new file mode 100644
index 0000000..98fab45
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/sbc_mmx.patch
@@ -0,0 +1,24 @@
+on x86 and x86_64 gcc 4.7 complains
+
+sbc/sbc_primitives_mmx.c: In function 'sbc_calc_scalefactors_mmx':
+sbc/sbc_primitives_mmx.c:294:4: warning: asm operand 2 probably doesn't match constraints [enabled by default]
+sbc/sbc_primitives_mmx.c:294:4: error: impossible constraint in 'asm'
+
+This patch is taken from https://bugs.launchpad.net/ubuntu/+source/bluez/+bug/911871
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Pending
+Index: bluez-4.98/sbc/sbc_primitives_mmx.c
+===================================================================
+--- bluez-4.98.orig/sbc/sbc_primitives_mmx.c 2011-12-21 14:53:54.000000000 -0800
++++ bluez-4.98/sbc/sbc_primitives_mmx.c 2012-02-24 10:07:03.422073800 -0800
+@@ -318,7 +318,7 @@
+ "movl %k0, 4(%3)\n"
+ : "+r" (blk)
+ : "r" (&sb_sample_f[0][ch][sb]),
+- "i" ((char *) &sb_sample_f[1][0][0] -
++ "r" ((char *) &sb_sample_f[1][0][0] -
+ (char *) &sb_sample_f[0][0][0]),
+ "r" (&scale_factor[ch][sb]),
+ "r" (&consts),
diff --git a/meta-oe/recipes-connectivity/bluez/bluez4-4.101/use-legacy-pygobject-instead-ofgobject-introspection.patch b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/use-legacy-pygobject-instead-ofgobject-introspection.patch
new file mode 100644
index 0000000..37037f5
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/use-legacy-pygobject-instead-ofgobject-introspection.patch
@@ -0,0 +1,27 @@
+Upstream-Status: Inappropriate
+
+use legacy pygobject instead of gobject-introspection
+
+Signed-off-by: Zhong Hongbo <hongbo.zhong@windriver.com>
+---
+diff -Nurd bluez-4.101.orig/test/simple-agent bluez-4.101/test/simple-agent
+--- bluez-4.101.orig/test/simple-agent 2013-11-13 17:14:08.138118159 +0800
++++ bluez-4.101/test/simple-agent 2013-11-13 17:14:29.034118107 +0800
+@@ -2,7 +2,7 @@
+
+ from __future__ import absolute_import, print_function, unicode_literals
+
+-from gi.repository import GObject
++import gobject
+
+ import sys
+ import dbus
+@@ -122,7 +122,7 @@
+ path = "/test/agent"
+ agent = Agent(bus, path)
+
+- mainloop = GObject.MainLoop()
++ mainloop = gobject.MainLoop()
+
+ if len(args) > 1:
+ if len(args) > 2:
diff --git a/meta-oe/recipes-connectivity/bluez/bluez4.inc b/meta-oe/recipes-connectivity/bluez/bluez4.inc
new file mode 100644
index 0000000..4fa4122
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/bluez4.inc
@@ -0,0 +1,54 @@
+SUMMARY = "Linux Bluetooth Stack Userland V4"
+DESCRIPTION = "Linux Bluetooth stack V4 userland components. These include a system configurations, daemons, tools and system libraries."
+HOMEPAGE = "http://www.bluez.org"
+SECTION = "libs"
+LICENSE = "GPLv2+ & LGPLv2.1+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e \
+ file://COPYING.LIB;md5=fb504b67c50331fc78734fed90fb0e09 \
+ file://src/main.c;beginline=1;endline=24;md5=9bc54b93cd7e17bf03f52513f39f926e \
+ file://sbc/sbc.c;beginline=1;endline=25;md5=1a40781ed30d50d8639323a184aeb191"
+
+RPROVIDES_${PN} += "${PN}-systemd"
+RREPLACES_${PN} += "${PN}-systemd"
+RCONFLICTS_${PN} += "${PN}-systemd"
+
+DEPENDS = "udev libusb dbus-glib glib-2.0 libcheck readline libsndfile1"
+RDEPENDS_${PN}-dev = "bluez-hcidump"
+
+PACKAGECONFIG ??= "\
+ ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', 'alsa', '', d)}\
+ ${@bb.utils.contains('DISTRO_FEATURES', 'pie', 'pie', '', d)}\
+ ${@bb.utils.contains('DISTRO_FEATURES', 'systemd','systemd', '', d)} \
+"
+PACKAGECONFIG[alsa] = "--enable-alsa,--disable-alsa,alsa-lib"
+PACKAGECONFIG[pie] = "--enable-pie,--disable-pie,"
+PACKAGECONFIG[systemd] = "--with-systemdunitdir=${systemd_unitdir}/system/,--with-systemdunitdir="
+
+ASNEEDED = ""
+
+SRC_URI = "${KERNELORG_MIRROR}/linux/bluetooth/bluez-${PV}.tar.gz"
+S = "${WORKDIR}/bluez-${PV}"
+
+inherit autotools-brokensep pkgconfig systemd
+
+EXTRA_OECONF = "\
+ --disable-gstreamer \
+ --enable-usb \
+ --enable-tools \
+ --enable-bccmd \
+ --enable-hid2hci \
+ --enable-dfutool \
+ --disable-hidd \
+ --disable-pand \
+ --disable-dund \
+ --disable-cups \
+ --enable-test \
+ --enable-datafiles \
+ --with-udevdir=`pkg-config --variable=udevdir udev` \
+ --with-udevrulesdir=`pkg-config --variable=udevdir udev`/rules.d \
+"
+
+SYSTEMD_SERVICE_${PN} = "bluetooth.service"
+SYSTEMD_AUTO_ENABLE = "disable"
+
+EXCLUDE_FROM_WORLD = "1"
diff --git a/meta-oe/recipes-connectivity/bluez/bluez4_4.101.bb b/meta-oe/recipes-connectivity/bluez/bluez4_4.101.bb
new file mode 100644
index 0000000..07740e1
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/bluez4_4.101.bb
@@ -0,0 +1,47 @@
+require bluez4.inc
+
+PR = "r11"
+
+SRC_URI += "file://bluetooth.conf \
+ file://sbc_mmx.patch \
+ file://fix-udev-paths.patch \
+ file://obsolete_automake_macros.patch \
+ file://network-fix-network-Connect-method-parameters.patch \
+ file://install-test-script.patch \
+ file://use-legacy-pygobject-instead-ofgobject-introspection.patch \
+ file://fix_encrypt_collision.patch \
+"
+
+SRC_URI[md5sum] = "fb42cb7038c380eb0e2fa208987c96ad"
+SRC_URI[sha256sum] = "59738410ade9f0e61a13c0f77d9aaffaafe49ba9418107e4ad75fe52846f7487"
+
+RCONFLICTS_${PN} = "bluez5"
+
+do_install_append() {
+ install -m 0644 ${S}/audio/audio.conf ${D}/${sysconfdir}/bluetooth/
+ install -m 0644 ${S}/network/network.conf ${D}/${sysconfdir}/bluetooth/
+ install -m 0644 ${S}/input/input.conf ${D}/${sysconfdir}/bluetooth/
+ # 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/
+}
+
+RDEPENDS_${PN}-dev = "bluez-hcidump"
+RDEPENDS_${PN}-testtools += "python python-dbus python-pygobject"
+
+ALLOW_EMPTY_libasound-module-bluez = "1"
+PACKAGES =+ "libasound-module-bluez ${PN}-testtools"
+
+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"
+FILES_${PN}-dev += "\
+ ${libdir}/bluetooth/plugins/*.la \
+ ${libdir}/alsa-lib/*.la \
+"
+
+FILES_${PN}-testtools = "${libdir}/bluez4/test/*"
+
+FILES_${PN}-dbg += "\
+ ${libdir}/bluetooth/plugins/.debug \
+ ${libdir}/*/.debug \
+ */udev/.debug \
+"
diff --git a/meta-oe/recipes-connectivity/bluez/gst-plugin-bluetooth_4.101.bb b/meta-oe/recipes-connectivity/bluez/gst-plugin-bluetooth_4.101.bb
new file mode 100644
index 0000000..6a16520
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/gst-plugin-bluetooth_4.101.bb
@@ -0,0 +1,39 @@
+require bluez4.inc
+require recipes-multimedia/gstreamer/gst-plugins-package.inc
+
+PR = "r1"
+
+SRC_URI[md5sum] = "fb42cb7038c380eb0e2fa208987c96ad"
+SRC_URI[sha256sum] = "59738410ade9f0e61a13c0f77d9aaffaafe49ba9418107e4ad75fe52846f7487"
+
+DEPENDS = "bluez4 gst-plugins-base"
+
+EXTRA_OECONF = "\
+ --enable-gstreamer \
+"
+
+# clean unwanted files
+do_install_append() {
+ rm -rf ${D}${bindir}
+ rm -rf ${D}${sbindir}
+ rm -f ${D}${libdir}/lib*
+ rm -rf ${D}${libdir}/pkgconfig
+ rm -rf ${D}${sysconfdir}
+ rm -rf ${D}${base_libdir}
+ rm -rf ${D}${libdir}/bluetooth
+ rm -rf ${D}${localstatedir}
+ rm -rf ${D}${libdir}/alsa-lib
+ rm -rf ${D}${datadir}
+ rm -rf ${D}${includedir}
+ rm -rf ${D}${nonarch_base_libdir}
+}
+
+FILES_${PN} = "${libdir}/gstreamer-0.10/lib*.so"
+FILES_${PN}-dev += "\
+ ${libdir}/gstreamer-0.10/*.la \
+"
+
+FILES_${PN}-dbg += "\
+ ${libdir}/*/.debug \
+"
+
diff --git a/meta-systemd/oe-core/recipes-connectivity/bluez/bluez4_4.101.bbappend b/meta-systemd/oe-core/recipes-connectivity/bluez/bluez4_4.101.bbappend
deleted file mode 100644
index da01b05..0000000
--- a/meta-systemd/oe-core/recipes-connectivity/bluez/bluez4_4.101.bbappend
+++ /dev/null
@@ -1,9 +0,0 @@
-inherit systemd
-
-EXTRA_OECONF += "--with-systemdunitdir=${systemd_unitdir}/system/"
-
-RPROVIDES_${PN} += "${PN}-systemd"
-RREPLACES_${PN} += "${PN}-systemd"
-RCONFLICTS_${PN} += "${PN}-systemd"
-SYSTEMD_SERVICE_${PN} = "bluetooth.service"
-SYSTEMD_AUTO_ENABLE = "disable"
--
2.1.0
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [meta-oe][PATCH V6] bluez collection: add (moved from oe-core)
2015-04-27 13:04 [meta-oe][PATCH V6] bluez collection: add (moved from oe-core) Cristian Iorga
@ 2015-04-27 13:05 ` Iorga, Cristian
2015-04-27 13:54 ` Martin Jansa
1 sibling, 0 replies; 3+ messages in thread
From: Iorga, Cristian @ 2015-04-27 13:05 UTC (permalink / raw)
To: openembedded-devel@lists.openembedded.org
In v6:
- meta-systemd layer bluez4 bbappend has been integrated into bluez4 recipe;
- commit message updated accordingly.
Thanks,
Cristian
-----Original Message-----
From: Iorga, Cristian
Sent: Monday, April 27, 2015 4:04 PM
To: openembedded-devel@lists.openembedded.org
Cc: Iorga, Cristian
Subject: [meta-oe][PATCH V6] bluez collection: add (moved from oe-core)
BlueZ 4.x Bluetooth stack has been removed from oe-core.
However, it is still supported, so add it to recipes-connectivity in meta-oe.
meta-systemd layer bluez4 bbappend has been integrated into bluez4 recipe.
In order to use it in oe-core/poky/YP, 'bluez5' backfill distro feature needs to be disabled via:
DISTRO_FEATURES_BACKFILL_CONSIDERED = "bluez5" .
'bluetooth' distro feature needs to be present also.
Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
---
.../obsolete_automake_macros.patch | 14 +++
.../bluez/bluez-hcidump_2.5.bb | 22 +++++
.../bluez/bluez4-4.101/bluetooth.conf | 16 +++
.../bluez/bluez4-4.101/fix-udev-paths.patch | 37 +++++++
.../bluez/bluez4-4.101/fix_encrypt_collision.patch | 110 +++++++++++++++++++++
.../bluez/bluez4-4.101/install-test-script.patch | 26 +++++
...ork-fix-network-Connect-method-parameters.patch | 30 ++++++
.../bluez4-4.101/obsolete_automake_macros.patch | 14 +++
.../bluez/bluez4-4.101/sbc_mmx.patch | 24 +++++
...pygobject-instead-ofgobject-introspection.patch | 27 +++++
meta-oe/recipes-connectivity/bluez/bluez4.inc | 54 ++++++++++
meta-oe/recipes-connectivity/bluez/bluez4_4.101.bb | 47 +++++++++
.../bluez/gst-plugin-bluetooth_4.101.bb | 39 ++++++++
.../bluez/bluez4_4.101.bbappend | 9 --
14 files changed, 460 insertions(+), 9 deletions(-) create mode 100644 meta-oe/recipes-connectivity/bluez/bluez-hcidump-2.5/obsolete_automake_macros.patch
create mode 100644 meta-oe/recipes-connectivity/bluez/bluez-hcidump_2.5.bb
create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4-4.101/bluetooth.conf
create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4-4.101/fix-udev-paths.patch
create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4-4.101/fix_encrypt_collision.patch
create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4-4.101/install-test-script.patch
create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4-4.101/network-fix-network-Connect-method-parameters.patch
create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4-4.101/obsolete_automake_macros.patch
create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4-4.101/sbc_mmx.patch
create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4-4.101/use-legacy-pygobject-instead-ofgobject-introspection.patch
create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4.inc
create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4_4.101.bb
create mode 100644 meta-oe/recipes-connectivity/bluez/gst-plugin-bluetooth_4.101.bb
delete mode 100644 meta-systemd/oe-core/recipes-connectivity/bluez/bluez4_4.101.bbappend
diff --git a/meta-oe/recipes-connectivity/bluez/bluez-hcidump-2.5/obsolete_automake_macros.patch b/meta-oe/recipes-connectivity/bluez/bluez-hcidump-2.5/obsolete_automake_macros.patch
new file mode 100644
index 0000000..0c77f1a
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/bluez-hcidump-2.5/obsolete_auto
+++ make_macros.patch
@@ -0,0 +1,14 @@
+Upstream-Status: Pending [package obsolete/not maintained by upstream]
+
+Signed-off-by: Marko Lindqvist <cazfi74@gmail.com> diff -Nurd
+bluez-hcidump-2.5/configure.ac bluez-hcidump-2.5/configure.ac
+--- bluez-hcidump-2.5/configure.ac 2012-11-30 10:29:41.000000000 +0200
++++ bluez-hcidump-2.5/configure.ac 2013-01-12 10:02:10.609511463 +0200
+@@ -2,7 +2,7 @@
+ AC_INIT(bluez-hcidump, 2.5)
+
+ AM_INIT_AUTOMAKE([foreign subdir-objects])
+-AM_CONFIG_HEADER(config.h)
++AC_CONFIG_HEADERS(config.h)
+
+ m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
diff --git a/meta-oe/recipes-connectivity/bluez/bluez-hcidump_2.5.bb b/meta-oe/recipes-connectivity/bluez/bluez-hcidump_2.5.bb
new file mode 100644
index 0000000..3950630
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/bluez-hcidump_2.5.bb
@@ -0,0 +1,22 @@
+SUMMARY = "Linux Bluetooth Stack HCI Debugger Tool"
+DESCRIPTION = "The hcidump tool reads raw HCI data coming from and
+going to a Bluetooth device \ 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"
+PR = "r1"
+
+SRC_URI = "http://www.kernel.org/pub/linux/bluetooth/bluez-hcidump-${PV}.tar.gz \
+ file://obsolete_automake_macros.patch \ "
+
+SRC_URI[md5sum] = "2eab54bbd2b59a2ed4274ebb9390cf18"
+SRC_URI[sha256sum] = "9b7c52b375081883738cf049ecabc103b97d094b19c6544fb241267905d88881"
+S = "${WORKDIR}/bluez-hcidump-${PV}"
+
+inherit autotools
diff --git a/meta-oe/recipes-connectivity/bluez/bluez4-4.101/bluetooth.conf b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/bluetooth.conf
new file mode 100644
index 0000000..ca5e9e4
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/bluetooth.conf
@@ -0,0 +1,16 @@
+<!-- This configuration file specifies the required security policies
+ for Bluetooth core daemon to work. -->
+
+<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
+ "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
+<busconfig>
+
+ <!-- ../system.conf have denied everything, so we just punch some
+ holes -->
+
+ <policy context="default">
+ <allow own="org.bluez"/>
+ <allow send_destination="org.bluez"/>
+ <allow send_interface="org.bluez.Agent"/>
+ </policy>
+
+</busconfig>
diff --git a/meta-oe/recipes-connectivity/bluez/bluez4-4.101/fix-udev-paths.patch b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/fix-udev-paths.patch
new file mode 100644
index 0000000..8089914
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/fix-udev-paths.pat
+++ ch
@@ -0,0 +1,37 @@
+Add udevdir/udevrulesdir options
+
+Upstream-Status: Inappropriate [configuration]
+Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
+
+Index: bluez-4.101/Makefile.am
+===================================================================
+--- bluez-4.101.orig/Makefile.am
++++ bluez-4.101/Makefile.am
+@@ -395,7 +395,7 @@ EXTRA_DIST += audio/bluetooth.conf include
+Makefile.tools
+
+ if DATAFILES
+-rulesdir = @UDEV_DIR@/rules.d
++rulesdir = @UDEV_RULES_DIR@
+
+ udev_files =
+
+Index: bluez-4.101/configure.ac
+===================================================================
+--- bluez-4.101.orig/configure.ac
++++ bluez-4.101/configure.ac
+@@ -61,4 +61,14 @@ if (test -n "${path_systemdunit}"); then fi
+AM_CONDITIONAL(SYSTEMD, test -n "${path_systemdunit}")
+
++AC_ARG_WITH([udevdir],
++ AS_HELP_STRING([--with-udevdir=DIR], [udev directory]),
++ [], [with_udevdir=/lib/udev/])
++AC_SUBST([UDEV_DIR], [$with_udevdir])
++
++AC_ARG_WITH([udevrulesdir],
++ AS_HELP_STRING([--with-udevrulesdir=DIR], [udev rules directory]),
++ [], [with_udevrulesdir=/lib/udev/rules.d])
++AC_SUBST([UDEV_RULES_DIR], [$with_udevrulesdir])
++
+ AC_OUTPUT(Makefile doc/version.xml src/bluetoothd.8
+ src/bluetooth.service bluez.pc)
diff --git a/meta-oe/recipes-connectivity/bluez/bluez4-4.101/fix_encrypt_collision.patch b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/fix_encrypt_collision.patch
new file mode 100644
index 0000000..1bc390f
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/fix_encrypt_collis
+++ ion.patch
@@ -0,0 +1,110 @@
+Avoid namepspace collision with encrypt function from libc
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Index: bluez-4.101/test/l2test.c
+===================================================================
+--- bluez-4.101.orig/test/l2test.c
++++ bluez-4.101/test/l2test.c
+@@ -107,7 +107,7 @@ static char *filename = NULL; static int rfcmode =
+0; static int master = 0; static int auth = 0; -static int encrypt =
+0;
++static int encryption_request = 0;
+ static int secure = 0;
+ static int socktype = SOCK_SEQPACKET;
+ static int linger = 0;
+@@ -340,7 +340,7 @@ static int do_connect(char *svr)
+ opt |= L2CAP_LM_MASTER;
+ if (auth)
+ opt |= L2CAP_LM_AUTH;
+- if (encrypt)
++ if (encryption_request)
+ opt |= L2CAP_LM_ENCRYPT;
+ if (secure)
+ opt |= L2CAP_LM_SECURE;
+@@ -475,7 +475,7 @@ static void do_listen(void (*handler)(in
+ opt |= L2CAP_LM_MASTER;
+ if (auth)
+ opt |= L2CAP_LM_AUTH;
+- if (encrypt)
++ if (encryption_request)
+ opt |= L2CAP_LM_ENCRYPT;
+ if (secure)
+ opt |= L2CAP_LM_SECURE;
+@@ -1407,7 +1407,7 @@ int main(int argc, char *argv[])
+ break;
+
+ case 'E':
+- encrypt = 1;
++ encryption_request = 1;
+ break;
+
+ case 'S':
+Index: bluez-4.101/test/rctest.c
+===================================================================
+--- bluez-4.101.orig/test/rctest.c
++++ bluez-4.101/test/rctest.c
+@@ -79,7 +79,7 @@ static char *filename = NULL;
+
+ static int master = 0;
+ static int auth = 0;
+-static int encrypt = 0;
++static int encryption_request = 0;
+ static int secure = 0;
+ static int socktype = SOCK_STREAM;
+ static int linger = 0;
+@@ -200,7 +200,7 @@ static int do_connect(const char *svr)
+ opt |= RFCOMM_LM_MASTER;
+ if (auth)
+ opt |= RFCOMM_LM_AUTH;
+- if (encrypt)
++ if (encryption_request)
+ opt |= RFCOMM_LM_ENCRYPT;
+ if (secure)
+ opt |= RFCOMM_LM_SECURE;
+@@ -291,7 +291,7 @@ static void do_listen(void (*handler)(in
+ opt |= RFCOMM_LM_MASTER;
+ if (auth)
+ opt |= RFCOMM_LM_AUTH;
+- if (encrypt)
++ if (encryption_request)
+ opt |= RFCOMM_LM_ENCRYPT;
+ if (secure)
+ opt |= RFCOMM_LM_SECURE;
+@@ -701,7 +701,7 @@ int main(int argc, char *argv[])
+ break;
+
+ case 'E':
+- encrypt = 1;
++ encryption_request = 1;
+ break;
+
+ case 'S':
+Index: bluez-4.101/src/textfile.h
+===================================================================
+--- bluez-4.101.orig/src/textfile.h
++++ bluez-4.101/src/textfile.h
+@@ -24,6 +24,8 @@
+ #ifndef __TEXTFILE_H
+ #define __TEXTFILE_H
+
++#include <sys/types.h>
++
+ int create_dirs(const char *filename, const mode_t mode); int
+create_file(const char *filename, const mode_t mode); int
+create_name(char *buf, size_t size, const char *path,
+Index: bluez-4.101/test/attest.c
+===================================================================
+--- bluez-4.101.orig/test/attest.c
++++ bluez-4.101/test/attest.c
+@@ -34,6 +34,7 @@
+ #include <termios.h>
+ #include <sys/ioctl.h>
+ #include <sys/socket.h>
++#include <sys/select.h>
+
+ #include <bluetooth/bluetooth.h>
+ #include <bluetooth/rfcomm.h>
diff --git a/meta-oe/recipes-connectivity/bluez/bluez4-4.101/install-test-script.patch b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/install-test-script.patch
new file mode 100644
index 0000000..23f7d99
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/install-test-scrip
+++ t.patch
@@ -0,0 +1,26 @@
+Upstream-Status: Inappropriate
+
+Install the bluez's test scripts
+
+Signed-off-by: Zhong Hongbo <hongbo.zhong@windriver.com> diff -Nurd
+bluez-4.101.orig/Makefile.tools bluez-4.101/Makefile.tools
+--- bluez-4.101.orig/Makefile.tools 2013-11-19 15:49:07.688838000 +0800
++++ bluez-4.101/Makefile.tools 2013-11-19 15:50:09.256837848 +0800
+@@ -227,6 +227,17 @@
+ test/service-spp.xml test/service-opp.xml test/service-ftp.xml \
+ test/simple-player test/test-nap
+
++bluez4_testdir = $(libdir)/bluez4/test/ dist_bluez4_test_SCRIPTS =
++test/sap-client test/hsplay test/hsmicro \
++ test/monitor-bluetooth test/list-devices \
++ test/test-discovery test/test-manager test/test-adapter \
++ test/test-device test/test-service test/test-serial \
++ test/test-telephony test/test-network test/simple-agent \
++ test/simple-service test/simple-endpoint test/test-audio \
++ test/test-input test/test-sap-server test/test-oob \
++ test/test-attrib test/test-proximity test/test-thermometer \
++ test/test-serial-proxy test/test-health test/test-health-sink \
++ test/simple-player test/test-nap
+ if HIDD
+ bin_PROGRAMS += compat/hidd
+
diff --git a/meta-oe/recipes-connectivity/bluez/bluez4-4.101/network-fix-network-Connect-method-parameters.patch b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/network-fix-network-Connect-method-parameters.patch
new file mode 100644
index 0000000..37f9199
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/network-fix-networ
+++ k-Connect-method-parameters.patch
@@ -0,0 +1,30 @@
+Upstream-Status: Backport
+Signed-off-by: Peter A. Bigot <pab@pabigot.com>
+
+From 57170b311f1468330f4a9961dc0b3ac45f97bc13 Mon Sep 17 00:00:00 2001
+From: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
+Date: Sat, 30 Jun 2012 00:39:05 -0300
+Subject: [PATCH] network: fix network Connect() method parameters
+
+---
+ network/connection.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/network/connection.c b/network/connection.c index
+544ec3a..59423a9 100644
+--- a/network/connection.c
++++ b/network/connection.c
+@@ -554,7 +554,9 @@ static void path_unregister(void *data)
+
+ static const GDBusMethodTable connection_methods[] = {
+ { GDBUS_ASYNC_METHOD("Connect",
+- NULL, NULL, connection_connect) },
++ GDBUS_ARGS({"uuid", "s"}),
++ GDBUS_ARGS({"interface", "s"}),
++ connection_connect) },
+ { GDBUS_METHOD("Disconnect",
+ NULL, NULL, connection_disconnect) },
+ { GDBUS_METHOD("GetProperties",
+--
+1.7.9.5
+
diff --git a/meta-oe/recipes-connectivity/bluez/bluez4-4.101/obsolete_automake_macros.patch b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/obsolete_automake_macros.patch
new file mode 100644
index 0000000..1068f24
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/obsolete_automake_
+++ macros.patch
@@ -0,0 +1,14 @@
+Upstream-Status: Backport
+
+Signed-off-by: Marko Lindqvist <cazfi74@gmail.com> diff -Nurd
+bluez-4.101/configure.ac bluez-4.101/configure.ac
+--- bluez-4.101/configure.ac 2012-06-22 19:36:49.000000000 +0300
++++ bluez-4.101/configure.ac 2013-01-07 06:13:18.385888966 +0200
+@@ -2,7 +2,7 @@
+ AC_INIT(bluez, 4.101)
+
+ AM_INIT_AUTOMAKE([foreign subdir-objects color-tests])
+-AM_CONFIG_HEADER(config.h)
++AC_CONFIG_HEADERS(config.h)
+
+ m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
diff --git a/meta-oe/recipes-connectivity/bluez/bluez4-4.101/sbc_mmx.patch b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/sbc_mmx.patch
new file mode 100644
index 0000000..98fab45
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/sbc_mmx.patch
@@ -0,0 +1,24 @@
+on x86 and x86_64 gcc 4.7 complains
+
+sbc/sbc_primitives_mmx.c: In function 'sbc_calc_scalefactors_mmx':
+sbc/sbc_primitives_mmx.c:294:4: warning: asm operand 2 probably doesn't
+match constraints [enabled by default]
+sbc/sbc_primitives_mmx.c:294:4: error: impossible constraint in 'asm'
+
+This patch is taken from
+https://bugs.launchpad.net/ubuntu/+source/bluez/+bug/911871
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Pending
+Index: bluez-4.98/sbc/sbc_primitives_mmx.c
+===================================================================
+--- bluez-4.98.orig/sbc/sbc_primitives_mmx.c 2011-12-21 14:53:54.000000000 -0800
++++ bluez-4.98/sbc/sbc_primitives_mmx.c 2012-02-24 10:07:03.422073800 -0800
+@@ -318,7 +318,7 @@
+ "movl %k0, 4(%3)\n"
+ : "+r" (blk)
+ : "r" (&sb_sample_f[0][ch][sb]),
+- "i" ((char *) &sb_sample_f[1][0][0] -
++ "r" ((char *) &sb_sample_f[1][0][0] -
+ (char *) &sb_sample_f[0][0][0]),
+ "r" (&scale_factor[ch][sb]),
+ "r" (&consts),
diff --git a/meta-oe/recipes-connectivity/bluez/bluez4-4.101/use-legacy-pygobject-instead-ofgobject-introspection.patch b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/use-legacy-pygobject-instead-ofgobject-introspection.patch
new file mode 100644
index 0000000..37037f5
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/use-legacy-pygobje
+++ ct-instead-ofgobject-introspection.patch
@@ -0,0 +1,27 @@
+Upstream-Status: Inappropriate
+
+use legacy pygobject instead of gobject-introspection
+
+Signed-off-by: Zhong Hongbo <hongbo.zhong@windriver.com>
+---
+diff -Nurd bluez-4.101.orig/test/simple-agent bluez-4.101/test/simple-agent
+--- bluez-4.101.orig/test/simple-agent 2013-11-13 17:14:08.138118159 +0800
++++ bluez-4.101/test/simple-agent 2013-11-13 17:14:29.034118107 +0800
+@@ -2,7 +2,7 @@
+
+ from __future__ import absolute_import, print_function,
+ unicode_literals
+
+-from gi.repository import GObject
++import gobject
+
+ import sys
+ import dbus
+@@ -122,7 +122,7 @@
+ path = "/test/agent"
+ agent = Agent(bus, path)
+
+- mainloop = GObject.MainLoop()
++ mainloop = gobject.MainLoop()
+
+ if len(args) > 1:
+ if len(args) > 2:
diff --git a/meta-oe/recipes-connectivity/bluez/bluez4.inc b/meta-oe/recipes-connectivity/bluez/bluez4.inc
new file mode 100644
index 0000000..4fa4122
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/bluez4.inc
@@ -0,0 +1,54 @@
+SUMMARY = "Linux Bluetooth Stack Userland V4"
+DESCRIPTION = "Linux Bluetooth stack V4 userland components. These include a system configurations, daemons, tools and system libraries."
+HOMEPAGE = "http://www.bluez.org"
+SECTION = "libs"
+LICENSE = "GPLv2+ & LGPLv2.1+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e \
+ file://COPYING.LIB;md5=fb504b67c50331fc78734fed90fb0e09 \
+ file://src/main.c;beginline=1;endline=24;md5=9bc54b93cd7e17bf03f52513f39f926e \
+ file://sbc/sbc.c;beginline=1;endline=25;md5=1a40781ed30d50d8639323a184aeb191"
+
+RPROVIDES_${PN} += "${PN}-systemd"
+RREPLACES_${PN} += "${PN}-systemd"
+RCONFLICTS_${PN} += "${PN}-systemd"
+
+DEPENDS = "udev libusb dbus-glib glib-2.0 libcheck readline libsndfile1"
+RDEPENDS_${PN}-dev = "bluez-hcidump"
+
+PACKAGECONFIG ??= "\
+ ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', 'alsa', '', d)}\
+ ${@bb.utils.contains('DISTRO_FEATURES', 'pie', 'pie', '', d)}\
+ ${@bb.utils.contains('DISTRO_FEATURES', 'systemd','systemd', '',
+d)} \ "
+PACKAGECONFIG[alsa] = "--enable-alsa,--disable-alsa,alsa-lib"
+PACKAGECONFIG[pie] = "--enable-pie,--disable-pie,"
+PACKAGECONFIG[systemd] = "--with-systemdunitdir=${systemd_unitdir}/system/,--with-systemdunitdir="
+
+ASNEEDED = ""
+
+SRC_URI = "${KERNELORG_MIRROR}/linux/bluetooth/bluez-${PV}.tar.gz"
+S = "${WORKDIR}/bluez-${PV}"
+
+inherit autotools-brokensep pkgconfig systemd
+
+EXTRA_OECONF = "\
+ --disable-gstreamer \
+ --enable-usb \
+ --enable-tools \
+ --enable-bccmd \
+ --enable-hid2hci \
+ --enable-dfutool \
+ --disable-hidd \
+ --disable-pand \
+ --disable-dund \
+ --disable-cups \
+ --enable-test \
+ --enable-datafiles \
+ --with-udevdir=`pkg-config --variable=udevdir udev` \
+ --with-udevrulesdir=`pkg-config --variable=udevdir udev`/rules.d \
+"
+
+SYSTEMD_SERVICE_${PN} = "bluetooth.service"
+SYSTEMD_AUTO_ENABLE = "disable"
+
+EXCLUDE_FROM_WORLD = "1"
diff --git a/meta-oe/recipes-connectivity/bluez/bluez4_4.101.bb b/meta-oe/recipes-connectivity/bluez/bluez4_4.101.bb
new file mode 100644
index 0000000..07740e1
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/bluez4_4.101.bb
@@ -0,0 +1,47 @@
+require bluez4.inc
+
+PR = "r11"
+
+SRC_URI += "file://bluetooth.conf \
+ file://sbc_mmx.patch \
+ file://fix-udev-paths.patch \
+ file://obsolete_automake_macros.patch \
+ file://network-fix-network-Connect-method-parameters.patch \
+ file://install-test-script.patch \
+ file://use-legacy-pygobject-instead-ofgobject-introspection.patch \
+ file://fix_encrypt_collision.patch \ "
+
+SRC_URI[md5sum] = "fb42cb7038c380eb0e2fa208987c96ad"
+SRC_URI[sha256sum] = "59738410ade9f0e61a13c0f77d9aaffaafe49ba9418107e4ad75fe52846f7487"
+
+RCONFLICTS_${PN} = "bluez5"
+
+do_install_append() {
+ install -m 0644 ${S}/audio/audio.conf ${D}/${sysconfdir}/bluetooth/
+ install -m 0644 ${S}/network/network.conf ${D}/${sysconfdir}/bluetooth/
+ install -m 0644 ${S}/input/input.conf ${D}/${sysconfdir}/bluetooth/
+ # 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/
+}
+
+RDEPENDS_${PN}-dev = "bluez-hcidump"
+RDEPENDS_${PN}-testtools += "python python-dbus python-pygobject"
+
+ALLOW_EMPTY_libasound-module-bluez = "1"
+PACKAGES =+ "libasound-module-bluez ${PN}-testtools"
+
+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"
+FILES_${PN}-dev += "\
+ ${libdir}/bluetooth/plugins/*.la \
+ ${libdir}/alsa-lib/*.la \
+"
+
+FILES_${PN}-testtools = "${libdir}/bluez4/test/*"
+
+FILES_${PN}-dbg += "\
+ ${libdir}/bluetooth/plugins/.debug \
+ ${libdir}/*/.debug \
+ */udev/.debug \
+"
diff --git a/meta-oe/recipes-connectivity/bluez/gst-plugin-bluetooth_4.101.bb b/meta-oe/recipes-connectivity/bluez/gst-plugin-bluetooth_4.101.bb
new file mode 100644
index 0000000..6a16520
--- /dev/null
+++ b/meta-oe/recipes-connectivity/bluez/gst-plugin-bluetooth_4.101.bb
@@ -0,0 +1,39 @@
+require bluez4.inc
+require recipes-multimedia/gstreamer/gst-plugins-package.inc
+
+PR = "r1"
+
+SRC_URI[md5sum] = "fb42cb7038c380eb0e2fa208987c96ad"
+SRC_URI[sha256sum] = "59738410ade9f0e61a13c0f77d9aaffaafe49ba9418107e4ad75fe52846f7487"
+
+DEPENDS = "bluez4 gst-plugins-base"
+
+EXTRA_OECONF = "\
+ --enable-gstreamer \
+"
+
+# clean unwanted files
+do_install_append() {
+ rm -rf ${D}${bindir}
+ rm -rf ${D}${sbindir}
+ rm -f ${D}${libdir}/lib*
+ rm -rf ${D}${libdir}/pkgconfig
+ rm -rf ${D}${sysconfdir}
+ rm -rf ${D}${base_libdir}
+ rm -rf ${D}${libdir}/bluetooth
+ rm -rf ${D}${localstatedir}
+ rm -rf ${D}${libdir}/alsa-lib
+ rm -rf ${D}${datadir}
+ rm -rf ${D}${includedir}
+ rm -rf ${D}${nonarch_base_libdir}
+}
+
+FILES_${PN} = "${libdir}/gstreamer-0.10/lib*.so"
+FILES_${PN}-dev += "\
+ ${libdir}/gstreamer-0.10/*.la \
+"
+
+FILES_${PN}-dbg += "\
+ ${libdir}/*/.debug \
+"
+
diff --git a/meta-systemd/oe-core/recipes-connectivity/bluez/bluez4_4.101.bbappend b/meta-systemd/oe-core/recipes-connectivity/bluez/bluez4_4.101.bbappend
deleted file mode 100644
index da01b05..0000000
--- a/meta-systemd/oe-core/recipes-connectivity/bluez/bluez4_4.101.bbappend
+++ /dev/null
@@ -1,9 +0,0 @@
-inherit systemd
-
-EXTRA_OECONF += "--with-systemdunitdir=${systemd_unitdir}/system/"
-
-RPROVIDES_${PN} += "${PN}-systemd"
-RREPLACES_${PN} += "${PN}-systemd"
-RCONFLICTS_${PN} += "${PN}-systemd"
-SYSTEMD_SERVICE_${PN} = "bluetooth.service"
-SYSTEMD_AUTO_ENABLE = "disable"
--
2.1.0
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [meta-oe][PATCH V6] bluez collection: add (moved from oe-core)
2015-04-27 13:04 [meta-oe][PATCH V6] bluez collection: add (moved from oe-core) Cristian Iorga
2015-04-27 13:05 ` Iorga, Cristian
@ 2015-04-27 13:54 ` Martin Jansa
1 sibling, 0 replies; 3+ messages in thread
From: Martin Jansa @ 2015-04-27 13:54 UTC (permalink / raw)
To: openembedded-devel
On Mon, Apr 27, 2015 at 04:04:00PM +0300, Cristian Iorga wrote:
> BlueZ 4.x Bluetooth stack has been removed from oe-core.
> However, it is still supported, so add it to
> recipes-connectivity in meta-oe.
>
> meta-systemd layer bluez4 bbappend has been integrated
> into bluez4 recipe.
>
> In order to use it in oe-core/poky/YP, 'bluez5' backfill
> distro feature needs to be disabled via:
> DISTRO_FEATURES_BACKFILL_CONSIDERED = "bluez5" .
> 'bluetooth' distro feature needs to be present also.
>
> Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
> ---
> .../obsolete_automake_macros.patch | 14 +++
> .../bluez/bluez-hcidump_2.5.bb | 22 +++++
> .../bluez/bluez4-4.101/bluetooth.conf | 16 +++
> .../bluez/bluez4-4.101/fix-udev-paths.patch | 37 +++++++
> .../bluez/bluez4-4.101/fix_encrypt_collision.patch | 110 +++++++++++++++++++++
> .../bluez/bluez4-4.101/install-test-script.patch | 26 +++++
> ...ork-fix-network-Connect-method-parameters.patch | 30 ++++++
> .../bluez4-4.101/obsolete_automake_macros.patch | 14 +++
> .../bluez/bluez4-4.101/sbc_mmx.patch | 24 +++++
> ...pygobject-instead-ofgobject-introspection.patch | 27 +++++
> meta-oe/recipes-connectivity/bluez/bluez4.inc | 54 ++++++++++
> meta-oe/recipes-connectivity/bluez/bluez4_4.101.bb | 47 +++++++++
> .../bluez/gst-plugin-bluetooth_4.101.bb | 39 ++++++++
> .../bluez/bluez4_4.101.bbappend | 9 --
> 14 files changed, 460 insertions(+), 9 deletions(-)
> create mode 100644 meta-oe/recipes-connectivity/bluez/bluez-hcidump-2.5/obsolete_automake_macros.patch
> create mode 100644 meta-oe/recipes-connectivity/bluez/bluez-hcidump_2.5.bb
> create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4-4.101/bluetooth.conf
> create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4-4.101/fix-udev-paths.patch
> create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4-4.101/fix_encrypt_collision.patch
> create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4-4.101/install-test-script.patch
> create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4-4.101/network-fix-network-Connect-method-parameters.patch
> create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4-4.101/obsolete_automake_macros.patch
> create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4-4.101/sbc_mmx.patch
> create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4-4.101/use-legacy-pygobject-instead-ofgobject-introspection.patch
> create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4.inc
> create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4_4.101.bb
> create mode 100644 meta-oe/recipes-connectivity/bluez/gst-plugin-bluetooth_4.101.bb
> delete mode 100644 meta-systemd/oe-core/recipes-connectivity/bluez/bluez4_4.101.bbappend
>
> diff --git a/meta-oe/recipes-connectivity/bluez/bluez-hcidump-2.5/obsolete_automake_macros.patch b/meta-oe/recipes-connectivity/bluez/bluez-hcidump-2.5/obsolete_automake_macros.patch
> new file mode 100644
> index 0000000..0c77f1a
> --- /dev/null
> +++ b/meta-oe/recipes-connectivity/bluez/bluez-hcidump-2.5/obsolete_automake_macros.patch
> @@ -0,0 +1,14 @@
> +Upstream-Status: Pending [package obsolete/not maintained by upstream]
> +
> +Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
> +diff -Nurd bluez-hcidump-2.5/configure.ac bluez-hcidump-2.5/configure.ac
> +--- bluez-hcidump-2.5/configure.ac 2012-11-30 10:29:41.000000000 +0200
> ++++ bluez-hcidump-2.5/configure.ac 2013-01-12 10:02:10.609511463 +0200
> +@@ -2,7 +2,7 @@
> + AC_INIT(bluez-hcidump, 2.5)
> +
> + AM_INIT_AUTOMAKE([foreign subdir-objects])
> +-AM_CONFIG_HEADER(config.h)
> ++AC_CONFIG_HEADERS(config.h)
> +
> + m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
> diff --git a/meta-oe/recipes-connectivity/bluez/bluez-hcidump_2.5.bb b/meta-oe/recipes-connectivity/bluez/bluez-hcidump_2.5.bb
> new file mode 100644
> index 0000000..3950630
> --- /dev/null
> +++ b/meta-oe/recipes-connectivity/bluez/bluez-hcidump_2.5.bb
> @@ -0,0 +1,22 @@
> +SUMMARY = "Linux Bluetooth Stack HCI Debugger Tool"
> +DESCRIPTION = "The hcidump tool reads raw HCI data coming from and going to a Bluetooth device \
> +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"
> +PR = "r1"
> +
> +SRC_URI = "http://www.kernel.org/pub/linux/bluetooth/bluez-hcidump-${PV}.tar.gz \
> + file://obsolete_automake_macros.patch \
> +"
> +
> +SRC_URI[md5sum] = "2eab54bbd2b59a2ed4274ebb9390cf18"
> +SRC_URI[sha256sum] = "9b7c52b375081883738cf049ecabc103b97d094b19c6544fb241267905d88881"
> +S = "${WORKDIR}/bluez-hcidump-${PV}"
> +
> +inherit autotools
> diff --git a/meta-oe/recipes-connectivity/bluez/bluez4-4.101/bluetooth.conf b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/bluetooth.conf
> new file mode 100644
> index 0000000..ca5e9e4
> --- /dev/null
> +++ b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/bluetooth.conf
> @@ -0,0 +1,16 @@
> +<!-- This configuration file specifies the required security policies
> + for Bluetooth core daemon to work. -->
> +
> +<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
> + "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
> +<busconfig>
> +
> + <!-- ../system.conf have denied everything, so we just punch some holes -->
> +
> + <policy context="default">
> + <allow own="org.bluez"/>
> + <allow send_destination="org.bluez"/>
> + <allow send_interface="org.bluez.Agent"/>
> + </policy>
> +
> +</busconfig>
> diff --git a/meta-oe/recipes-connectivity/bluez/bluez4-4.101/fix-udev-paths.patch b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/fix-udev-paths.patch
> new file mode 100644
> index 0000000..8089914
> --- /dev/null
> +++ b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/fix-udev-paths.patch
> @@ -0,0 +1,37 @@
> +Add udevdir/udevrulesdir options
> +
> +Upstream-Status: Inappropriate [configuration]
> +Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
> +
> +Index: bluez-4.101/Makefile.am
> +===================================================================
> +--- bluez-4.101.orig/Makefile.am
> ++++ bluez-4.101/Makefile.am
> +@@ -395,7 +395,7 @@ EXTRA_DIST += audio/bluetooth.conf
> + include Makefile.tools
> +
> + if DATAFILES
> +-rulesdir = @UDEV_DIR@/rules.d
> ++rulesdir = @UDEV_RULES_DIR@
> +
> + udev_files =
> +
> +Index: bluez-4.101/configure.ac
> +===================================================================
> +--- bluez-4.101.orig/configure.ac
> ++++ bluez-4.101/configure.ac
> +@@ -61,4 +61,14 @@ if (test -n "${path_systemdunit}"); then
> + fi
> + AM_CONDITIONAL(SYSTEMD, test -n "${path_systemdunit}")
> +
> ++AC_ARG_WITH([udevdir],
> ++ AS_HELP_STRING([--with-udevdir=DIR], [udev directory]),
> ++ [], [with_udevdir=/lib/udev/])
> ++AC_SUBST([UDEV_DIR], [$with_udevdir])
> ++
> ++AC_ARG_WITH([udevrulesdir],
> ++ AS_HELP_STRING([--with-udevrulesdir=DIR], [udev rules directory]),
> ++ [], [with_udevrulesdir=/lib/udev/rules.d])
> ++AC_SUBST([UDEV_RULES_DIR], [$with_udevrulesdir])
> ++
> + AC_OUTPUT(Makefile doc/version.xml src/bluetoothd.8 src/bluetooth.service bluez.pc)
> diff --git a/meta-oe/recipes-connectivity/bluez/bluez4-4.101/fix_encrypt_collision.patch b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/fix_encrypt_collision.patch
> new file mode 100644
> index 0000000..1bc390f
> --- /dev/null
> +++ b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/fix_encrypt_collision.patch
> @@ -0,0 +1,110 @@
> +Avoid namepspace collision with encrypt function from libc
> +
> +Upstream-Status: Pending
> +
> +Signed-off-by: Khem Raj <raj.khem@gmail.com>
> +Index: bluez-4.101/test/l2test.c
> +===================================================================
> +--- bluez-4.101.orig/test/l2test.c
> ++++ bluez-4.101/test/l2test.c
> +@@ -107,7 +107,7 @@ static char *filename = NULL;
> + static int rfcmode = 0;
> + static int master = 0;
> + static int auth = 0;
> +-static int encrypt = 0;
> ++static int encryption_request = 0;
> + static int secure = 0;
> + static int socktype = SOCK_SEQPACKET;
> + static int linger = 0;
> +@@ -340,7 +340,7 @@ static int do_connect(char *svr)
> + opt |= L2CAP_LM_MASTER;
> + if (auth)
> + opt |= L2CAP_LM_AUTH;
> +- if (encrypt)
> ++ if (encryption_request)
> + opt |= L2CAP_LM_ENCRYPT;
> + if (secure)
> + opt |= L2CAP_LM_SECURE;
> +@@ -475,7 +475,7 @@ static void do_listen(void (*handler)(in
> + opt |= L2CAP_LM_MASTER;
> + if (auth)
> + opt |= L2CAP_LM_AUTH;
> +- if (encrypt)
> ++ if (encryption_request)
> + opt |= L2CAP_LM_ENCRYPT;
> + if (secure)
> + opt |= L2CAP_LM_SECURE;
> +@@ -1407,7 +1407,7 @@ int main(int argc, char *argv[])
> + break;
> +
> + case 'E':
> +- encrypt = 1;
> ++ encryption_request = 1;
> + break;
> +
> + case 'S':
> +Index: bluez-4.101/test/rctest.c
> +===================================================================
> +--- bluez-4.101.orig/test/rctest.c
> ++++ bluez-4.101/test/rctest.c
> +@@ -79,7 +79,7 @@ static char *filename = NULL;
> +
> + static int master = 0;
> + static int auth = 0;
> +-static int encrypt = 0;
> ++static int encryption_request = 0;
> + static int secure = 0;
> + static int socktype = SOCK_STREAM;
> + static int linger = 0;
> +@@ -200,7 +200,7 @@ static int do_connect(const char *svr)
> + opt |= RFCOMM_LM_MASTER;
> + if (auth)
> + opt |= RFCOMM_LM_AUTH;
> +- if (encrypt)
> ++ if (encryption_request)
> + opt |= RFCOMM_LM_ENCRYPT;
> + if (secure)
> + opt |= RFCOMM_LM_SECURE;
> +@@ -291,7 +291,7 @@ static void do_listen(void (*handler)(in
> + opt |= RFCOMM_LM_MASTER;
> + if (auth)
> + opt |= RFCOMM_LM_AUTH;
> +- if (encrypt)
> ++ if (encryption_request)
> + opt |= RFCOMM_LM_ENCRYPT;
> + if (secure)
> + opt |= RFCOMM_LM_SECURE;
> +@@ -701,7 +701,7 @@ int main(int argc, char *argv[])
> + break;
> +
> + case 'E':
> +- encrypt = 1;
> ++ encryption_request = 1;
> + break;
> +
> + case 'S':
> +Index: bluez-4.101/src/textfile.h
> +===================================================================
> +--- bluez-4.101.orig/src/textfile.h
> ++++ bluez-4.101/src/textfile.h
> +@@ -24,6 +24,8 @@
> + #ifndef __TEXTFILE_H
> + #define __TEXTFILE_H
> +
> ++#include <sys/types.h>
> ++
> + int create_dirs(const char *filename, const mode_t mode);
> + int create_file(const char *filename, const mode_t mode);
> + int create_name(char *buf, size_t size, const char *path,
> +Index: bluez-4.101/test/attest.c
> +===================================================================
> +--- bluez-4.101.orig/test/attest.c
> ++++ bluez-4.101/test/attest.c
> +@@ -34,6 +34,7 @@
> + #include <termios.h>
> + #include <sys/ioctl.h>
> + #include <sys/socket.h>
> ++#include <sys/select.h>
> +
> + #include <bluetooth/bluetooth.h>
> + #include <bluetooth/rfcomm.h>
> diff --git a/meta-oe/recipes-connectivity/bluez/bluez4-4.101/install-test-script.patch b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/install-test-script.patch
> new file mode 100644
> index 0000000..23f7d99
> --- /dev/null
> +++ b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/install-test-script.patch
> @@ -0,0 +1,26 @@
> +Upstream-Status: Inappropriate
> +
> +Install the bluez's test scripts
> +
> +Signed-off-by: Zhong Hongbo <hongbo.zhong@windriver.com>
> +diff -Nurd bluez-4.101.orig/Makefile.tools bluez-4.101/Makefile.tools
> +--- bluez-4.101.orig/Makefile.tools 2013-11-19 15:49:07.688838000 +0800
> ++++ bluez-4.101/Makefile.tools 2013-11-19 15:50:09.256837848 +0800
> +@@ -227,6 +227,17 @@
> + test/service-spp.xml test/service-opp.xml test/service-ftp.xml \
> + test/simple-player test/test-nap
> +
> ++bluez4_testdir = $(libdir)/bluez4/test/
> ++dist_bluez4_test_SCRIPTS = test/sap-client test/hsplay test/hsmicro \
> ++ test/monitor-bluetooth test/list-devices \
> ++ test/test-discovery test/test-manager test/test-adapter \
> ++ test/test-device test/test-service test/test-serial \
> ++ test/test-telephony test/test-network test/simple-agent \
> ++ test/simple-service test/simple-endpoint test/test-audio \
> ++ test/test-input test/test-sap-server test/test-oob \
> ++ test/test-attrib test/test-proximity test/test-thermometer \
> ++ test/test-serial-proxy test/test-health test/test-health-sink \
> ++ test/simple-player test/test-nap
> + if HIDD
> + bin_PROGRAMS += compat/hidd
> +
> diff --git a/meta-oe/recipes-connectivity/bluez/bluez4-4.101/network-fix-network-Connect-method-parameters.patch b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/network-fix-network-Connect-method-parameters.patch
> new file mode 100644
> index 0000000..37f9199
> --- /dev/null
> +++ b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/network-fix-network-Connect-method-parameters.patch
> @@ -0,0 +1,30 @@
> +Upstream-Status: Backport
> +Signed-off-by: Peter A. Bigot <pab@pabigot.com>
> +
> +From 57170b311f1468330f4a9961dc0b3ac45f97bc13 Mon Sep 17 00:00:00 2001
> +From: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
> +Date: Sat, 30 Jun 2012 00:39:05 -0300
> +Subject: [PATCH] network: fix network Connect() method parameters
> +
> +---
> + network/connection.c | 4 +++-
> + 1 file changed, 3 insertions(+), 1 deletion(-)
> +
> +diff --git a/network/connection.c b/network/connection.c
> +index 544ec3a..59423a9 100644
> +--- a/network/connection.c
> ++++ b/network/connection.c
> +@@ -554,7 +554,9 @@ static void path_unregister(void *data)
> +
> + static const GDBusMethodTable connection_methods[] = {
> + { GDBUS_ASYNC_METHOD("Connect",
> +- NULL, NULL, connection_connect) },
> ++ GDBUS_ARGS({"uuid", "s"}),
> ++ GDBUS_ARGS({"interface", "s"}),
> ++ connection_connect) },
> + { GDBUS_METHOD("Disconnect",
> + NULL, NULL, connection_disconnect) },
> + { GDBUS_METHOD("GetProperties",
> +--
> +1.7.9.5
> +
> diff --git a/meta-oe/recipes-connectivity/bluez/bluez4-4.101/obsolete_automake_macros.patch b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/obsolete_automake_macros.patch
> new file mode 100644
> index 0000000..1068f24
> --- /dev/null
> +++ b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/obsolete_automake_macros.patch
> @@ -0,0 +1,14 @@
> +Upstream-Status: Backport
> +
> +Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
> +diff -Nurd bluez-4.101/configure.ac bluez-4.101/configure.ac
> +--- bluez-4.101/configure.ac 2012-06-22 19:36:49.000000000 +0300
> ++++ bluez-4.101/configure.ac 2013-01-07 06:13:18.385888966 +0200
> +@@ -2,7 +2,7 @@
> + AC_INIT(bluez, 4.101)
> +
> + AM_INIT_AUTOMAKE([foreign subdir-objects color-tests])
> +-AM_CONFIG_HEADER(config.h)
> ++AC_CONFIG_HEADERS(config.h)
> +
> + m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
> diff --git a/meta-oe/recipes-connectivity/bluez/bluez4-4.101/sbc_mmx.patch b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/sbc_mmx.patch
> new file mode 100644
> index 0000000..98fab45
> --- /dev/null
> +++ b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/sbc_mmx.patch
> @@ -0,0 +1,24 @@
> +on x86 and x86_64 gcc 4.7 complains
> +
> +sbc/sbc_primitives_mmx.c: In function 'sbc_calc_scalefactors_mmx':
> +sbc/sbc_primitives_mmx.c:294:4: warning: asm operand 2 probably doesn't match constraints [enabled by default]
> +sbc/sbc_primitives_mmx.c:294:4: error: impossible constraint in 'asm'
> +
> +This patch is taken from https://bugs.launchpad.net/ubuntu/+source/bluez/+bug/911871
> +
> +Signed-off-by: Khem Raj <raj.khem@gmail.com>
> +
> +Upstream-Status: Pending
> +Index: bluez-4.98/sbc/sbc_primitives_mmx.c
> +===================================================================
> +--- bluez-4.98.orig/sbc/sbc_primitives_mmx.c 2011-12-21 14:53:54.000000000 -0800
> ++++ bluez-4.98/sbc/sbc_primitives_mmx.c 2012-02-24 10:07:03.422073800 -0800
> +@@ -318,7 +318,7 @@
> + "movl %k0, 4(%3)\n"
> + : "+r" (blk)
> + : "r" (&sb_sample_f[0][ch][sb]),
> +- "i" ((char *) &sb_sample_f[1][0][0] -
> ++ "r" ((char *) &sb_sample_f[1][0][0] -
> + (char *) &sb_sample_f[0][0][0]),
> + "r" (&scale_factor[ch][sb]),
> + "r" (&consts),
> diff --git a/meta-oe/recipes-connectivity/bluez/bluez4-4.101/use-legacy-pygobject-instead-ofgobject-introspection.patch b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/use-legacy-pygobject-instead-ofgobject-introspection.patch
> new file mode 100644
> index 0000000..37037f5
> --- /dev/null
> +++ b/meta-oe/recipes-connectivity/bluez/bluez4-4.101/use-legacy-pygobject-instead-ofgobject-introspection.patch
> @@ -0,0 +1,27 @@
> +Upstream-Status: Inappropriate
> +
> +use legacy pygobject instead of gobject-introspection
> +
> +Signed-off-by: Zhong Hongbo <hongbo.zhong@windriver.com>
> +---
> +diff -Nurd bluez-4.101.orig/test/simple-agent bluez-4.101/test/simple-agent
> +--- bluez-4.101.orig/test/simple-agent 2013-11-13 17:14:08.138118159 +0800
> ++++ bluez-4.101/test/simple-agent 2013-11-13 17:14:29.034118107 +0800
> +@@ -2,7 +2,7 @@
> +
> + from __future__ import absolute_import, print_function, unicode_literals
> +
> +-from gi.repository import GObject
> ++import gobject
> +
> + import sys
> + import dbus
> +@@ -122,7 +122,7 @@
> + path = "/test/agent"
> + agent = Agent(bus, path)
> +
> +- mainloop = GObject.MainLoop()
> ++ mainloop = gobject.MainLoop()
> +
> + if len(args) > 1:
> + if len(args) > 2:
> diff --git a/meta-oe/recipes-connectivity/bluez/bluez4.inc b/meta-oe/recipes-connectivity/bluez/bluez4.inc
> new file mode 100644
> index 0000000..4fa4122
> --- /dev/null
> +++ b/meta-oe/recipes-connectivity/bluez/bluez4.inc
> @@ -0,0 +1,54 @@
> +SUMMARY = "Linux Bluetooth Stack Userland V4"
> +DESCRIPTION = "Linux Bluetooth stack V4 userland components. These include a system configurations, daemons, tools and system libraries."
> +HOMEPAGE = "http://www.bluez.org"
> +SECTION = "libs"
> +LICENSE = "GPLv2+ & LGPLv2.1+"
> +LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e \
> + file://COPYING.LIB;md5=fb504b67c50331fc78734fed90fb0e09 \
> + file://src/main.c;beginline=1;endline=24;md5=9bc54b93cd7e17bf03f52513f39f926e \
> + file://sbc/sbc.c;beginline=1;endline=25;md5=1a40781ed30d50d8639323a184aeb191"
> +
> +RPROVIDES_${PN} += "${PN}-systemd"
> +RREPLACES_${PN} += "${PN}-systemd"
> +RCONFLICTS_${PN} += "${PN}-systemd"
> +
> +DEPENDS = "udev libusb dbus-glib glib-2.0 libcheck readline libsndfile1"
> +RDEPENDS_${PN}-dev = "bluez-hcidump"
> +
> +PACKAGECONFIG ??= "\
> + ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', 'alsa', '', d)}\
> + ${@bb.utils.contains('DISTRO_FEATURES', 'pie', 'pie', '', d)}\
> + ${@bb.utils.contains('DISTRO_FEATURES', 'systemd','systemd', '', d)} \
> +"
> +PACKAGECONFIG[alsa] = "--enable-alsa,--disable-alsa,alsa-lib"
> +PACKAGECONFIG[pie] = "--enable-pie,--disable-pie,"
> +PACKAGECONFIG[systemd] = "--with-systemdunitdir=${systemd_unitdir}/system/,--with-systemdunitdir="
> +
> +ASNEEDED = ""
> +
> +SRC_URI = "${KERNELORG_MIRROR}/linux/bluetooth/bluez-${PV}.tar.gz"
> +S = "${WORKDIR}/bluez-${PV}"
> +
> +inherit autotools-brokensep pkgconfig systemd
> +
> +EXTRA_OECONF = "\
> + --disable-gstreamer \
> + --enable-usb \
> + --enable-tools \
> + --enable-bccmd \
> + --enable-hid2hci \
> + --enable-dfutool \
> + --disable-hidd \
> + --disable-pand \
> + --disable-dund \
> + --disable-cups \
> + --enable-test \
> + --enable-datafiles \
> + --with-udevdir=`pkg-config --variable=udevdir udev` \
> + --with-udevrulesdir=`pkg-config --variable=udevdir udev`/rules.d \
> +"
> +
> +SYSTEMD_SERVICE_${PN} = "bluetooth.service"
> +SYSTEMD_AUTO_ENABLE = "disable"
This doesn't work well with gst-plugin-bluetooth (more info in e-mail I've
sent to the oe-core change).
> +
> +EXCLUDE_FROM_WORLD = "1"
> diff --git a/meta-oe/recipes-connectivity/bluez/bluez4_4.101.bb b/meta-oe/recipes-connectivity/bluez/bluez4_4.101.bb
> new file mode 100644
> index 0000000..07740e1
> --- /dev/null
> +++ b/meta-oe/recipes-connectivity/bluez/bluez4_4.101.bb
> @@ -0,0 +1,47 @@
> +require bluez4.inc
> +
> +PR = "r11"
> +
> +SRC_URI += "file://bluetooth.conf \
> + file://sbc_mmx.patch \
> + file://fix-udev-paths.patch \
> + file://obsolete_automake_macros.patch \
> + file://network-fix-network-Connect-method-parameters.patch \
> + file://install-test-script.patch \
> + file://use-legacy-pygobject-instead-ofgobject-introspection.patch \
> + file://fix_encrypt_collision.patch \
> +"
> +
> +SRC_URI[md5sum] = "fb42cb7038c380eb0e2fa208987c96ad"
> +SRC_URI[sha256sum] = "59738410ade9f0e61a13c0f77d9aaffaafe49ba9418107e4ad75fe52846f7487"
> +
> +RCONFLICTS_${PN} = "bluez5"
> +
> +do_install_append() {
> + install -m 0644 ${S}/audio/audio.conf ${D}/${sysconfdir}/bluetooth/
> + install -m 0644 ${S}/network/network.conf ${D}/${sysconfdir}/bluetooth/
> + install -m 0644 ${S}/input/input.conf ${D}/${sysconfdir}/bluetooth/
> + # 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/
> +}
> +
> +RDEPENDS_${PN}-dev = "bluez-hcidump"
> +RDEPENDS_${PN}-testtools += "python python-dbus python-pygobject"
> +
> +ALLOW_EMPTY_libasound-module-bluez = "1"
> +PACKAGES =+ "libasound-module-bluez ${PN}-testtools"
> +
> +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"
> +FILES_${PN}-dev += "\
> + ${libdir}/bluetooth/plugins/*.la \
> + ${libdir}/alsa-lib/*.la \
> +"
> +
> +FILES_${PN}-testtools = "${libdir}/bluez4/test/*"
> +
> +FILES_${PN}-dbg += "\
> + ${libdir}/bluetooth/plugins/.debug \
> + ${libdir}/*/.debug \
> + */udev/.debug \
> +"
> diff --git a/meta-oe/recipes-connectivity/bluez/gst-plugin-bluetooth_4.101.bb b/meta-oe/recipes-connectivity/bluez/gst-plugin-bluetooth_4.101.bb
> new file mode 100644
> index 0000000..6a16520
> --- /dev/null
> +++ b/meta-oe/recipes-connectivity/bluez/gst-plugin-bluetooth_4.101.bb
> @@ -0,0 +1,39 @@
> +require bluez4.inc
> +require recipes-multimedia/gstreamer/gst-plugins-package.inc
> +
> +PR = "r1"
> +
> +SRC_URI[md5sum] = "fb42cb7038c380eb0e2fa208987c96ad"
> +SRC_URI[sha256sum] = "59738410ade9f0e61a13c0f77d9aaffaafe49ba9418107e4ad75fe52846f7487"
> +
> +DEPENDS = "bluez4 gst-plugins-base"
> +
> +EXTRA_OECONF = "\
> + --enable-gstreamer \
> +"
> +
> +# clean unwanted files
> +do_install_append() {
> + rm -rf ${D}${bindir}
> + rm -rf ${D}${sbindir}
> + rm -f ${D}${libdir}/lib*
> + rm -rf ${D}${libdir}/pkgconfig
> + rm -rf ${D}${sysconfdir}
> + rm -rf ${D}${base_libdir}
> + rm -rf ${D}${libdir}/bluetooth
> + rm -rf ${D}${localstatedir}
> + rm -rf ${D}${libdir}/alsa-lib
> + rm -rf ${D}${datadir}
> + rm -rf ${D}${includedir}
> + rm -rf ${D}${nonarch_base_libdir}
> +}
> +
> +FILES_${PN} = "${libdir}/gstreamer-0.10/lib*.so"
> +FILES_${PN}-dev += "\
> + ${libdir}/gstreamer-0.10/*.la \
> +"
> +
> +FILES_${PN}-dbg += "\
> + ${libdir}/*/.debug \
> +"
> +
> diff --git a/meta-systemd/oe-core/recipes-connectivity/bluez/bluez4_4.101.bbappend b/meta-systemd/oe-core/recipes-connectivity/bluez/bluez4_4.101.bbappend
> deleted file mode 100644
> index da01b05..0000000
> --- a/meta-systemd/oe-core/recipes-connectivity/bluez/bluez4_4.101.bbappend
> +++ /dev/null
> @@ -1,9 +0,0 @@
> -inherit systemd
> -
> -EXTRA_OECONF += "--with-systemdunitdir=${systemd_unitdir}/system/"
> -
> -RPROVIDES_${PN} += "${PN}-systemd"
> -RREPLACES_${PN} += "${PN}-systemd"
> -RCONFLICTS_${PN} += "${PN}-systemd"
> -SYSTEMD_SERVICE_${PN} = "bluetooth.service"
> -SYSTEMD_AUTO_ENABLE = "disable"
> --
> 2.1.0
>
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
--
Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2015-04-27 13:53 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-04-27 13:04 [meta-oe][PATCH V6] bluez collection: add (moved from oe-core) Cristian Iorga
2015-04-27 13:05 ` Iorga, Cristian
2015-04-27 13:54 ` Martin Jansa
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.