Automatic import for version 4.101

This commit is contained in:
Rosa 2012-06-28 00:52:29 +00:00
parent 313fa17591
commit 5671d3d840
9 changed files with 427 additions and 319 deletions

View file

@ -1,2 +1,2 @@
sources:
"bluez-4.99.tar.xz": 3d2e240618b7cc4ab16aeafcae749bf42ac0d8d3
"bluez-4.101.tar.xz": 5e6d94686b1a0492c4aed59ba16601f4903c15e8

View file

@ -1,6 +1,62 @@
--- bluez-4.99/acinclude.m4.cable-pairing 2012-03-05 10:03:57.000000000 +0100
+++ bluez-4.99/acinclude.m4 2012-03-09 16:05:16.668224130 +0100
@@ -152,6 +152,12 @@ AC_DEFUN([AC_PATH_UDEV], [
From 64f9449656dbbb718d53a54ed8e7904e289280ec Mon Sep 17 00:00:00 2001
From: Bastien Nocera <hadess@hadess.net>
Date: Fri, 30 Dec 2011 12:34:29 +0100
Subject: [PATCH] Add sixaxis cable-pairing plugin
Implement the old "sixpair" using libudev and libusb-1.0.
When a Sixaxis device is plugged in, events are filtered, and
the device is selected, poked around to set the default Bluetooth
address, and added to the database of the current default adapter.
---
Makefile.am | 9 +-
acinclude.m4 | 16 +++
configure.ac | 1 +
plugins/cable.c | 382 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
src/adapter.c | 19 +++
src/adapter.h | 3 +
6 files changed, 428 insertions(+), 2 deletions(-)
create mode 100644 plugins/cable.c
diff --git a/Makefile.am b/Makefile.am
index 53fcbe9..f831a72 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -238,6 +238,11 @@ builtin_sources += thermometer/main.c \
endif
+if CABLE
+builtin_modules += cable
+builtin_sources += plugins/cable.c
+endif
+
builtin_modules += hciops mgmtops
builtin_sources += plugins/hciops.c plugins/mgmtops.c
@@ -306,7 +311,7 @@ src_bluetoothd_SOURCES = $(gdbus_sources) $(builtin_sources) \
src/event.h src/event.c \
src/oob.h src/oob.c src/eir.h src/eir.c
src_bluetoothd_LDADD = lib/libbluetooth-private.la @GLIB_LIBS@ @DBUS_LIBS@ \
- -ldl -lrt
+ @CABLE_LIBS@ -ldl -lrt
src_bluetoothd_LDFLAGS = $(AM_LDFLAGS) -Wl,--export-dynamic \
-Wl,--version-script=$(srcdir)/src/bluetooth.ver
@@ -428,7 +433,7 @@ EXTRA_DIST += doc/manager-api.txt \
AM_YFLAGS = -d
-AM_CFLAGS += @DBUS_CFLAGS@ @GLIB_CFLAGS@
+AM_CFLAGS += @DBUS_CFLAGS@ @GLIB_CFLAGS@ @CABLE_CFLAGS@
INCLUDES = -I$(builddir)/lib -I$(builddir)/src -I$(srcdir)/src \
-I$(srcdir)/audio -I$(srcdir)/sbc -I$(srcdir)/gdbus \
diff --git a/acinclude.m4 b/acinclude.m4
index 6505ad3..3f59989 100644
--- a/acinclude.m4
+++ b/acinclude.m4
@@ -139,6 +139,12 @@ AC_DEFUN([AC_PATH_UDEV], [
AC_SUBST(UDEV_LIBS)
])
@ -13,7 +69,7 @@
AC_DEFUN([AC_PATH_SNDFILE], [
PKG_CHECK_MODULES(SNDFILE, sndfile, sndfile_found=yes, sndfile_found=no)
AC_SUBST(SNDFILE_CFLAGS)
@@ -189,6 +195,7 @@ AC_DEFUN([AC_ARG_BLUEZ], [
@@ -176,6 +182,7 @@ AC_DEFUN([AC_ARG_BLUEZ], [
sndfile_enable=${sndfile_found}
hal_enable=no
usb_enable=${usb_found}
@ -21,17 +77,18 @@
alsa_enable=${alsa_found}
gstreamer_enable=${gstreamer_found}
audio_enable=yes
@@ -297,6 +304,9 @@ AC_DEFUN([AC_ARG_BLUEZ], [
AC_ARG_ENABLE(usb, AC_HELP_STRING([--enable-usb], [enable USB support]), [
@@ -265,6 +272,10 @@ AC_DEFUN([AC_ARG_BLUEZ], [
usb_enable=${enableval}
])
+ AC_ARG_ENABLE(cable, AC_HELP_STRING([--enable-cable], [enable DeviceKit support]), [
+ cable_enable=${enableval}
+ ])
+
AC_ARG_ENABLE(tools, AC_HELP_STRING([--enable-tools], [install Bluetooth utilities]), [
tools_enable=${enableval}
@@ -393,6 +403,10 @@ AC_DEFUN([AC_ARG_BLUEZ], [
])
@@ -366,6 +377,10 @@ AC_DEFUN([AC_ARG_BLUEZ], [
AC_DEFINE(HAVE_LIBUSB, 1, [Define to 1 if you have USB library.])
fi
@ -42,14 +99,16 @@
AM_CONDITIONAL(SNDFILE, test "${sndfile_enable}" = "yes" && test "${sndfile_found}" = "yes")
AM_CONDITIONAL(USB, test "${usb_enable}" = "yes" && test "${usb_found}" = "yes")
AM_CONDITIONAL(SBC, test "${alsa_enable}" = "yes" || test "${gstreamer_enable}" = "yes" ||
@@ -429,4 +443,5 @@ AC_DEFUN([AC_ARG_BLUEZ], [
@@ -398,4 +413,5 @@ AC_DEFUN([AC_ARG_BLUEZ], [
AM_CONDITIONAL(DBUSOOBPLUGIN, test "${dbusoob_enable}" = "yes")
AM_CONDITIONAL(WIIMOTEPLUGIN, test "${wiimote_enable}" = "yes")
AM_CONDITIONAL(THERMOMETERPLUGIN, test "${thermometer_enable}" = "yes")
AM_CONDITIONAL(GATTMODULES, test "${gatt_enable}" = "yes")
+ AM_CONDITIONAL(CABLE, test "${cable_enable}" = "yes" && test "${cable_found}" = "yes")
])
--- bluez-4.99/configure.ac.cable-pairing 2012-03-05 10:03:57.000000000 +0100
+++ bluez-4.99/configure.ac 2012-03-09 16:03:57.305126212 +0100
diff --git a/configure.ac b/configure.ac
index 48b181e..45a4b15 100644
--- a/configure.ac
+++ b/configure.ac
@@ -46,6 +46,7 @@ AC_PATH_GSTREAMER
AC_PATH_USB
AC_PATH_UDEV
@ -58,41 +117,12 @@
AC_PATH_OUI
AC_PATH_READLINE
AC_PATH_CHECK
--- bluez-4.99/Makefile.am.cable-pairing 2012-03-05 10:03:57.000000000 +0100
+++ bluez-4.99/Makefile.am 2012-03-09 16:03:57.305126212 +0100
@@ -244,6 +244,11 @@ builtin_sources += thermometer/main.c \
thermometer/thermometer.h thermometer/thermometer.c
endif
+if CABLE
+builtin_modules += cable
+builtin_sources += plugins/cable.c
+endif
+
builtin_modules += hciops mgmtops
builtin_sources += plugins/hciops.c plugins/mgmtops.c
@@ -311,7 +316,7 @@ src_bluetoothd_SOURCES = $(gdbus_sources
src/event.h src/event.c \
src/oob.h src/oob.c src/eir.h src/eir.c
src_bluetoothd_LDADD = lib/libbluetooth-private.la @GLIB_LIBS@ @DBUS_LIBS@ \
- @CAPNG_LIBS@ -ldl -lrt
+ @CAPNG_LIBS@ @CABLE_LIBS@ -ldl -lrt
src_bluetoothd_LDFLAGS = -Wl,--export-dynamic \
-Wl,--version-script=$(srcdir)/src/bluetooth.ver
@@ -432,7 +437,7 @@ EXTRA_DIST += doc/manager-api.txt \
AM_YFLAGS = -d
-AM_CFLAGS = @DBUS_CFLAGS@ @GLIB_CFLAGS@ @CAPNG_CFLAGS@
+AM_CFLAGS = @DBUS_CFLAGS@ @GLIB_CFLAGS@ @CAPNG_CFLAGS@ @CABLE_CFLAGS@
INCLUDES = -I$(builddir)/lib -I$(builddir)/src -I$(srcdir)/src \
-I$(srcdir)/audio -I$(srcdir)/sbc -I$(srcdir)/gdbus \
--- bluez-4.99/plugins/cable.c.cable-pairing 2012-03-09 16:03:57.305126213 +0100
+++ bluez-4.99/plugins/cable.c 2012-03-09 16:03:57.305126213 +0100
@@ -0,0 +1,379 @@
diff --git a/plugins/cable.c b/plugins/cable.c
new file mode 100644
index 0000000..fe758db
--- /dev/null
+++ b/plugins/cable.c
@@ -0,0 +1,382 @@
+/*
+ *
+ * BlueZ - Bluetooth protocol stack for Linux
@ -158,8 +188,11 @@
+ char srcaddr[18];
+
+ device = adapter_find_device(adapter, address);
+ if (device == NULL)
+ device = adapter_create_device(conn, adapter, address);
+ if (device == NULL) {
+ device = device_create(conn, adapter, address, BDADDR_BREDR);
+ if (device != NULL)
+ adapter_create_device_for_device(conn, adapter, device);
+ }
+ if (device != NULL) {
+ device_set_temporary(device, FALSE);
+ device_set_name(device, name);
@ -472,18 +505,11 @@
+
+BLUETOOTH_PLUGIN_DEFINE(cable, VERSION,
+ BLUETOOTH_PLUGIN_PRIORITY_DEFAULT, cable_init, cable_exit)
--- bluez-4.99/src/adapter.c.cable-pairing 2012-03-05 10:03:57.000000000 +0100
+++ bluez-4.99/src/adapter.c 2012-03-09 16:03:57.307126218 +0100
@@ -923,7 +923,7 @@ void adapter_service_remove(struct btd_a
adapter_emit_uuids_updated(adapter);
}
-static struct btd_device *adapter_create_device(DBusConnection *conn,
+struct btd_device *adapter_create_device(DBusConnection *conn,
struct btd_adapter *adapter,
const char *address,
addr_type_t type)
@@ -952,6 +952,25 @@ static struct btd_device *adapter_create
diff --git a/src/adapter.c b/src/adapter.c
index 6e04faf..0488891 100644
--- a/src/adapter.c
+++ b/src/adapter.c
@@ -952,6 +952,25 @@ static struct btd_device *adapter_create_device(DBusConnection *conn,
return device;
}
@ -509,15 +535,20 @@
void adapter_remove_device(DBusConnection *conn, struct btd_adapter *adapter,
struct btd_device *device,
gboolean remove_storage)
--- bluez-4.99/src/adapter.h.cable-pairing 2012-03-05 10:03:57.000000000 +0100
+++ bluez-4.99/src/adapter.h 2012-03-09 16:03:57.307126218 +0100
@@ -123,6 +123,9 @@ void adapter_update_found_devices(struct
diff --git a/src/adapter.h b/src/adapter.h
index b7ea62b..ac0aa2e 100644
--- a/src/adapter.h
+++ b/src/adapter.h
@@ -114,6 +114,9 @@ void adapter_update_found_devices(struct btd_adapter *adapter,
uint8_t *data, uint8_t data_len);
void adapter_emit_device_found(struct btd_adapter *adapter,
struct remote_dev_info *dev);
+void adapter_create_device_for_device(DBusConnection *conn,
+ struct btd_adapter *adapter,
+ struct btd_device *device);
+ struct btd_adapter *adapter,
+ struct btd_device *device);
void adapter_mode_changed(struct btd_adapter *adapter, uint8_t scan_mode);
int adapter_set_name(struct btd_adapter *adapter, const char *name);
void adapter_name_changed(struct btd_adapter *adapter, const char *name);
--
1.7.10.2

View file

@ -0,0 +1,37 @@
From c70bf65af6e301f18063491b22112300c0fb9b89 Mon Sep 17 00:00:00 2001
From: Bastien Nocera <hadess@hadess.net>
Date: Sun, 17 Jun 2012 01:25:46 +0200
Subject: [PATCH 1/3] input: Add helper function to request disconnect
---
input/device.c | 7 +++++++
input/device.h | 1 +
2 files changed, 8 insertions(+)
diff --git a/input/device.c b/input/device.c
index 0e3f4a9..8fdd4e0 100644
--- a/input/device.c
+++ b/input/device.c
@@ -1306,3 +1306,10 @@ int input_device_close_channels(const bdaddr_t *src, const bdaddr_t *dst)
return 0;
}
+
+void input_device_request_disconnect(struct fake_input *fake)
+{
+ if (fake == NULL || fake->idev == NULL)
+ return;
+ device_request_disconnect(fake->idev->device, NULL);
+}
diff --git a/input/device.h b/input/device.h
index 509a353..ff52967 100644
--- a/input/device.h
+++ b/input/device.h
@@ -49,3 +49,4 @@ int input_device_unregister(const char *path, const char *uuid);
int input_device_set_channel(const bdaddr_t *src, const bdaddr_t *dst, int psm,
GIOChannel *io);
int input_device_close_channels(const bdaddr_t *src, const bdaddr_t *dst);
+void input_device_request_disconnect(struct fake_input *fake);
--
1.7.10

View file

@ -0,0 +1,118 @@
From cca11542bcd4d1748c850806c1599ed1b76ea19a Mon Sep 17 00:00:00 2001
From: Bastien Nocera <hadess@hadess.net>
Date: Sun, 17 Jun 2012 01:26:18 +0200
Subject: [PATCH 2/3] fakehid: Disconnect from PS3 remote after 10 mins
After 10 minutes, disconnect the PS3 BD Remote to avoid draining its
battery. This is consistent with its behaviour on the PS3.
Original patch by Ruslan N. Marchenko <rufferson@gmail.com>
---
input/device.h | 1 +
input/fakehid.c | 36 ++++++++++++++++++++++++++++++++++++
2 files changed, 37 insertions(+)
diff --git a/input/device.h b/input/device.h
index ff52967..d8baa2c 100644
--- a/input/device.h
+++ b/input/device.h
@@ -33,6 +33,7 @@ struct fake_input {
int uinput; /* uinput socket */
int rfcomm; /* RFCOMM socket */
uint8_t ch; /* RFCOMM channel number */
+ guint timeout_id; /* Disconnect timeout ID */
gboolean (*connect) (struct input_conn *iconn, GError **err);
int (*disconnect) (struct input_conn *iconn);
void *priv;
diff --git a/input/fakehid.c b/input/fakehid.c
index 3181538..a125356 100644
--- a/input/fakehid.c
+++ b/input/fakehid.c
@@ -44,6 +44,9 @@
#include "fakehid.h"
#include "uinput.h"
+/* Timeout to get the PS3 remote disconnected, in seconds */
+#define PS3_REMOTE_TIMEOUT 10 * 60
+
enum ps3remote_special_keys {
PS3R_BIT_PS = 0,
PS3R_BIT_ENTER = 3,
@@ -141,6 +144,20 @@ static unsigned int ps3remote_keymap[] = {
[0xff] = KEY_MAX,
};
+static gboolean ps3_remote_timeout_cb(gpointer user_data);
+
+static void ps3remote_set_timeout(struct fake_input *fake, gboolean enable)
+{
+ if (enable) {
+ fake->timeout_id = g_timeout_add_seconds(PS3_REMOTE_TIMEOUT, ps3_remote_timeout_cb, fake);
+ } else {
+ if (fake->timeout_id > 0) {
+ g_source_remove(fake->timeout_id);
+ fake->timeout_id = 0;
+ }
+ }
+}
+
static int ps3remote_decode(char *buff, int size, unsigned int *value)
{
static unsigned int lastkey = 0;
@@ -203,6 +220,16 @@ error:
return -1;
}
+static gboolean
+ps3_remote_timeout_cb(gpointer user_data)
+{
+ struct fake_input *fake = (struct fake_input *) user_data;
+ input_device_request_disconnect(fake);
+ DBG("Disconnected PS3 BD Remote after timeout");
+ fake->timeout_id = 0;
+ return FALSE;
+}
+
static gboolean ps3remote_event(GIOChannel *chan, GIOCondition cond,
gpointer data)
{
@@ -221,6 +248,9 @@ static gboolean ps3remote_event(GIOChannel *chan, GIOCondition cond,
goto failed;
}
+ /* Remove the old timeout */
+ ps3remote_set_timeout(fake, FALSE);
+
fd = g_io_channel_unix_get_fd(chan);
memset(buff, 0, sizeof(buff));
@@ -256,6 +286,8 @@ static gboolean ps3remote_event(GIOChannel *chan, GIOCondition cond,
goto failed;
}
+ ps3remote_set_timeout(fake, TRUE);
+
return TRUE;
failed:
@@ -318,6 +350,8 @@ static int ps3remote_setup_uinput(struct fake_input *fake,
goto err;
}
+ ps3remote_set_timeout(fake, TRUE);
+
return 0;
err:
@@ -378,6 +412,8 @@ struct fake_input *fake_hid_connadd(struct fake_input *fake,
for (l = fake_hid->devices; l != NULL; l = l->next) {
old = l->data;
if (old->idev == fake->idev) {
+ if (fake->timeout_id > 0)
+ g_source_remove(fake->timeout_id);
g_free(fake);
fake = old;
fake_hid->connect(fake, NULL);
--
1.7.10

View file

@ -1,33 +1,28 @@
From 0080ce8a37152b0ee7750799e01de3bf810f8caf Mon Sep 17 00:00:00 2001
From: Lennart Poettering <lennart@poettering.net>
Date: Wed, 21 Jul 2010 19:20:44 +0200
Subject: [PATCH] systemd: install systemd unit files
From 4319a0601457772591e520e407019b606780d035 Mon Sep 17 00:00:00 2001
From: Alexander Khryukin <alexander@mezon.ru>
Date: Mon, 25 Jun 2012 13:16:23 -0400
Subject: [PATCH 2/2] test
This also enables bus activation for bluetoothd, but only if systemd is
running. Only if that's the case we can make sure in a race-free fashion
that bluetoothd is not started twice at the same time.
---
Makefile.am | 21 ++++++++++++++++++---
configure.ac | 9 +++++++++
scripts/.gitignore | 1 +
scripts/bluetooth.service.in | 13 +++++++++++++
configure.ac | 7 +++++++
scripts/bluetooth.service.in | 14 ++++++++++++++
scripts/org.bluez.service | 5 +++++
5 files changed, 46 insertions(+), 3 deletions(-)
create mode 100644 scripts/.gitignore
4 files changed, 44 insertions(+), 3 deletions(-)
create mode 100644 scripts/bluetooth.service.in
create mode 100644 scripts/org.bluez.service
diff --git a/Makefile.am b/Makefile.am
index aecc8f2..6e18003 100644
index 1c214c6..024aa36 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -387,10 +387,25 @@ endif
@@ -414,9 +414,24 @@ endif
rules_DATA = $(foreach file,$(udev_files), scripts/97-$(notdir $(file)))
endif
+if HAVE_SYSTEMD
+systemdsystemunit_DATA = \
+ scripts/bluetooth.service
+ scripts/bluetooth.service
+
+scripts/bluetooth.service: scripts/bluetooth.service.in
+ @$(SED) -e "s|\@sbindir\@|$(sbindir)|" $< >$@
@ -36,19 +31,18 @@ index aecc8f2..6e18003 100644
+
+dbussystemservices_DATA = \
+ scripts/org.bluez.service
+
+endif
+
+
CLEANFILES += $(rules_DATA)
EXTRA_DIST += scripts/bluetooth.rules \
- scripts/bluetooth-hid2hci.rules scripts/bluetooth-serial.rules
+ scripts/bluetooth-hid2hci.rules scripts/bluetooth-serial.rules \
+ scripts/bluetooth.service.in scripts/org.bluez.service
-EXTRA_DIST += scripts/bluetooth-hid2hci.rules scripts/bluetooth-serial.rules
+EXTRA_DIST += scripts/bluetooth-hid2hci.rules scripts/bluetooth-serial.rules \
+ scripts/bluetooth.service.in scripts/org.bluez.service
EXTRA_DIST += doc/manager-api.txt \
doc/adapter-api.txt doc/device-api.txt \
@@ -417,9 +432,9 @@ pkgconfigdir = $(libdir)/pkgconfig
@@ -460,9 +475,9 @@ pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = bluez.pc
@ -61,37 +55,28 @@ index aecc8f2..6e18003 100644
MAINTAINERCLEANFILES = Makefile.in \
aclocal.m4 configure config.h.in config.sub config.guess \
diff --git a/configure.ac b/configure.ac
index bc2658c..b4502ab 100644
index f2db920..6f6b4c0 100644
--- a/configure.ac
+++ b/configure.ac
@@ -71,5 +71,14 @@ if (test -n "${path_systemdunit}"); then
@@ -60,5 +60,12 @@ if (test -n "${path_systemdunit}"); then
AC_SUBST(SYSTEMD_UNITDIR)
fi
AM_CONDITIONAL(SYSTEMD, test -n "${path_systemdunit}")
+# systemd
+
+AC_ARG_WITH([systemdsystemunitdir],
+ AS_HELP_STRING([--with-systemdsystemunitdir=DIR], [Directory for systemd service files]),
+ [],
+ [with_systemdsystemunitdir=$($PKG_CONFIG --variable=systemdsystemunitdir systemd)])
+ AS_HELP_STRING([--with-systemdsystemunitdir=DIR], [Directory for systemd service files]),
+ [],
+ [with_systemdsystemunitdir=$($PKG_CONFIG --variable=systemdsystemunitdir systemd)])
+AC_SUBST([systemdsystemunitdir], [$with_systemdsystemunitdir])
+AM_CONDITIONAL(HAVE_SYSTEMD, [test -n "$with_systemdsystemunitdir"])
+
AC_OUTPUT(Makefile scripts/bluetooth.rules doc/version.xml
src/bluetoothd.8 src/bluetooth.service bluez.pc)
diff --git a/scripts/.gitignore b/scripts/.gitignore
new file mode 100644
index 0000000..4b9f765
--- /dev/null
+++ b/scripts/.gitignore
@@ -0,0 +1 @@
+bluetooth.service
AC_OUTPUT(Makefile doc/version.xml src/bluetoothd.8 src/bluetooth.service bluez.pc)
diff --git a/scripts/bluetooth.service.in b/scripts/bluetooth.service.in
new file mode 100644
index 0000000..d0089ea
index 0000000..5ec0e2a
--- /dev/null
+++ b/scripts/bluetooth.service.in
@@ -0,0 +1,13 @@
@@ -0,0 +1,14 @@
+[Unit]
+Description=Bluetooth Manager
+After=syslog.target
@ -105,6 +90,7 @@ index 0000000..d0089ea
+[Install]
+WantedBy=bluetooth.target
+Alias=dbus-org.bluez.service
+
diff --git a/scripts/org.bluez.service b/scripts/org.bluez.service
new file mode 100644
index 0000000..dd7ae8f
@ -117,5 +103,5 @@ index 0000000..dd7ae8f
+User=root
+SystemdService=dbus-org.bluez.service
--
1.7.6
1.7.9.2

View file

@ -0,0 +1,26 @@
From a354165e58f937ee12c16ab48ce334b664c8f163 Mon Sep 17 00:00:00 2001
From: Bastien Nocera <hadess@hadess.net>
Date: Sun, 17 Jun 2012 01:29:01 +0200
Subject: [PATCH 3/3] fakehid: Use the same constant as declared
ps3remote_keymap[] uses 0xff as the max value, so should we.
---
input/fakehid.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/input/fakehid.c b/input/fakehid.c
index a125356..a758413 100644
--- a/input/fakehid.c
+++ b/input/fakehid.c
@@ -335,7 +335,7 @@ static int ps3remote_setup_uinput(struct fake_input *fake,
}
/* enabling keys */
- for (i = 0; i < 256; i++)
+ for (i = 0; i < 0xff; i++)
if (ps3remote_keymap[i] != KEY_RESERVED)
if (ioctl(fake->uinput, UI_SET_KEYBIT,
ps3remote_keymap[i]) < 0) {
--
1.7.10

View file

@ -1,23 +0,0 @@
Subject: [PATCH]
From: Andrey Borzenkov <arvidjaar@gmail.com>
Signed-off-by: Andrey Borzenkov <arvidjaar@gmail.com>
---
scripts/bluetooth.rules.in | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/scripts/bluetooth.rules.in b/scripts/bluetooth.rules.in
index 64df69d..f9733bc 100644
--- a/scripts/bluetooth.rules.in
+++ b/scripts/bluetooth.rules.in
@@ -1,4 +1,4 @@
# Run helper every time a Bluetooth device appears
# On remove actions, bluetoothd should go away by itself
-ACTION=="add", SUBSYSTEM=="bluetooth", RUN+="@prefix@/sbin/bluetoothd --udev"
-ACTION=="change", SUBSYSTEM=="bluetooth", RUN+="@prefix@/sbin/bluetoothd --udev"
+TEST{040000}!="/sys/fs/cgroup/systemd", ACTION=="add", SUBSYSTEM=="bluetooth", RUN{fail_event_on_error}+="@prefix@/sbin/bluetoothd --udev"
+TEST{040000}!="/sys/fs/cgroup/systemd", ACTION=="change", SUBSYSTEM=="bluetooth", RUN+="@prefix@/sbin/bluetoothd --udev"

6
bluez-uinput.modules Normal file
View file

@ -0,0 +1,6 @@
#!/bin/sh
if [ ! -c /dev/input/uinput ] ; then
exec /sbin/modprobe uinput >/dev/null 2>&1
fi

View file

@ -6,51 +6,46 @@
Name: bluez
Summary: Official Linux Bluetooth protocol stack
Version: 4.99
Release: 1
Version: 4.101
Release: 2
License: GPLv2+
Group: Communications
Source: http://www.kernel.org/pub/linux/bluetooth/%{name}-%{version}.tar.xz
Source0: http://www.kernel.org/pub/linux/bluetooth/%{name}-%{version}.tar.xz
Source6: pand.conf
Source7: dund.conf
Source8: hidd.conf
Source9: rfcomm.conf
Source10: bluez-uinput.modules
# (bor) also disable rule if systemd is active
Patch100: bluez-4.79-fail_udev_event_on_error.patch
# (kazancas) patch from Fedora
# https://bugzilla.redhat.com/show_bug.cgi?id=498756
Patch4: bluez-socket-mobile-cf-connection-kit.patch
# http://thread.gmane.org/gmane.linux.bluez.kernel/2396
Patch5: 0001-Add-sixaxis-cable-pairing-plugin.patch
# http://thread.gmane.org/gmane.linux.bluez.kernel/8645
Patch6: 0001-systemd-install-systemd-unit-files.patch
Patch0: 0002-systemd-unitdir-enable.patch
Patch4: bluez-socket-mobile-cf-connection-kit.patch
# http://thread.gmane.org/gmane.linux.bluez.kernel/2396
Patch5: 0001-Add-sixaxis-cable-pairing-plugin.patch
# PS3 BD Remote patches
Patch6: 0001-input-Add-helper-function-to-request-disconnect.patch
Patch7: 0002-fakehid-Disconnect-from-PS3-remote-after-10-mins.patch
Patch8: 0003-fakehid-Use-the-same-constant-as-declared.patch
BuildRequires: dbus-devel
BuildRequires: flex
BuildRequires: bison
BuildRequires: libusb-devel
BuildRequires: libalsa-devel
Buildrequires: systemd
BuildRequires: readline
BuildRequires: udev
BuildRequires: libgstreamer0.10-plugins-base-devel
BuildRequires: gstreamer0.10-devel
BuildRequires: expat-devel
BuildRequires: udev-devel
BuildRequires: libcap-ng-devel
# (bor) for P101
BuildRequires: automake autoconf
# (kazancas)
Buildrequires: systemd, readline
Requires: python-gobject
BuildRequires: pkgconfig(alsa)
BuildRequires: pkgconfig(dbus-1)
BuildRequires: pkgconfig(gstreamer-plugins-base-0.10)
BuildRequires: pkgconfig(gstreamer-0.10)
BuildRequires: pkgconfig(libcap-ng)
BuildRequires: pkgconfig(libusb)
BuildRequires: usb1-devel
BuildRequires: pkgconfig(udev)
Requires: bluez-pin
Requires: obex-data-server
Provides: bluez-sdp
Obsoletes: bluez-sdp < 4.5
Provides: bluez-pan
Provides: bluez-hciemu
Obsoletes: bluez-hciemu
Provides: bluez-utils
Obsoletes: bluez-utils < 4.5
Suggests: obex-data-server
Suggests: bluez-firmware
%description
@ -83,16 +78,26 @@ fi
/bin/systemctl --no-reload enable bluetooth.service >/dev/null 2>&1 || :
%files
%defattr(-,root,root)
%{_bindir}/*
%{_sbindir}/*
/sbin/hidd
%{_bindir}/ciptool
%{_bindir}/dfutool
%{_bindir}/hcitool
%{_bindir}/hidd
%{_bindir}/l2ping
%{_bindir}/rfcomm
%{_bindir}/sdptool
### compat
%{_bindir}/dund
%{_bindir}/pand
###
%{_sbindir}/bccmd
%{_sbindir}/hciattach
%{_sbindir}/hciconfig
%{_sbindir}/bluetoothd
/bin/hidd
/sbin/bluetoothd
%if %{_with_systemd}
/lib/systemd/system/*.service
#/lib/systemd/system/bluetooth.target.wants/bluetooth.service
%endif
#/sbin/udev_bluetooth_helper
%{_mandir}/man?/*
%config(noreplace) %{_sysconfdir}/sysconfig/*
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/*.conf
@ -102,7 +107,6 @@ fi
/lib/udev/hid2hci
%{_sysconfdir}/udev/rules.d/97-bluetooth-serial.rules
%{_sysconfdir}/udev/rules.d/97-bluetooth-hid2hci.rules
%{_sysconfdir}/udev/rules.d/97-bluetooth.rules
%{_localstatedir}/lib/bluetooth
#--------------------------------------------------------------------
@ -111,13 +115,11 @@ fi
Summary: CUPS printer backend for Bluetooth printers
Group: System/Servers
Requires: cups
Obsoletes: %name-utils-cups
%description cups
This package contains the CUPS backend for Bluetooth printers.
%files cups
%defattr(-, root, root)
%{_prefix}/lib/cups/backend/bluetooth
#--------------------------------------------------------------------
@ -125,13 +127,11 @@ This package contains the CUPS backend for Bluetooth printers.
%package gstreamer
Summary: Gstreamer support for SBC audio format
Group: Sound
Obsoletes: %name-utils-gstreamer
%description gstreamer
This package contains gstreamer plugins for the Bluetooth SBC audio format
%files gstreamer
%defattr(-, root, root)
%{_libdir}/gstreamer-*/*.so
#--------------------------------------------------------------------
@ -139,13 +139,11 @@ This package contains gstreamer plugins for the Bluetooth SBC audio format
%package alsa
Summary: ALSA support for Bluetooth audio devices
Group: Sound
Obsoletes: %name-utils-alsa
%description alsa
This package contains ALSA support for Bluetooth audio devices
%files alsa
%defattr(-, root, root)
%{_libdir}/alsa-lib/*.so
%{_datadir}/alsa/bluetooth.conf
@ -154,36 +152,42 @@ This package contains ALSA support for Bluetooth audio devices
%package -n %{libname}
Summary: Official Linux Bluetooth protocol stack
Group: System/Libraries
Provides: lib%{name}-sdp2
Obsoletes: lib%{name}-sdp2
%description -n %{libname}
These are the official Bluetooth communication libraries for Linux.
%files -n %{libname}
%defattr(-,root,root)
/%{_lib}/lib*.so.%{major}*
#--------------------------------------------------------------------
%package test
Summary: Tools for testing of various Bluetooth-functions
Group: System/Servers
Requires: python-dbus
Requires: python-gobject
%description test
Contains a few tools for testing various bluetooth functions. The
BLUETOOTH trademarks are owned by Bluetooth SIG, Inc., U.S.A.
%files test
%{_bindir}/simple-agent
%{_bindir}/test-*
#--------------------------------------------------------------------
%package -n %{devname}
Summary: Headers for developing programs that will use %name
Summary: Headers for developing programs that will use %{name}
Group: Development/C++
Requires: %{libname} = %{version}
Provides: lib%{name}-devel = %{version}-%{release}
Provides: %{name}-devel = %{version}-%{release}
Provides: lib%{name}-sdp-devel, lib%{name}-sdp2-devel
Obsoletes: lib%{name}-sdp-devel, lib%{name}-sdp2-devel
Provides: %{name}-sdp-devel
Obsoletes: %{name}-sdp-devel
Obsoletes: %{libname}-devel
%description -n %{devname}
This package contains the headers that programmers will need to develop
applications which will use libraries from %{name}.
%files -n %{devname}
%defattr(-,root,root)
%doc AUTHORS ChangeLog README
%dir %{_includedir}/bluetooth
%{_includedir}/bluetooth/*.h
@ -193,46 +197,45 @@ applications which will use libraries from %{name}.
#--------------------------------------------------------------------
%prep
%setup -q -n %name-%{version}
%patch100 -p1 -b .fail_event
%patch4 -p1 -b .socket-mobile
%patch5 -p1 -b .cable-pairing
%patch6 -p1 -b .systemd
%setup -q
%apply_patches
%build
# (bor) for P101
libtoolize -f -c
autoreconf -fi
# fix mdv bug 35444
%define _localstatedir %{_var}
%configure2_5x --libdir=/%{_lib} \
%configure2_5x \
--libdir=/%{_lib} \
%if !%{_with_systemd}
--without-systemdsystemunitdir \
--without-systemdsystemunitdir \
%endif
--enable-cups \
--enable-dfutool \
--enable-tools \
--enable-bccmd \
--enable-gstreamer \
--enable-hidd \
--enable-pand \
--enable-dund \
--enable-hid2hci \
--enable-pcmcia \
--enable-udevrules \
--enable-capng \
--with-systemdsystemunitdir=/lib/systemd/system
--enable-cups \
--enable-dfutool \
--enable-audio \
--enable-health \
--disable-hal \
--enable-pnat \
--enable-wiimote \
--enable-tools \
--enable-bccmd \
--enable-gstreamer \
--enable-hidd \
--enable-pand \
--enable-dund \
--enable-hid2hci \
--enable-pcmcia \
--with-systemdsystemunitdir=/lib/systemd/system
%make
%install
rm -rf %{buildroot}
%makeinstall_std rulesdir=%{_sysconfdir}/udev/rules.d udevdir=/lib/udev
mkdir -p %{buildroot}%{_libdir}
mv %{buildroot}/%{_lib}/gstreamer-0.10 %{buildroot}%{_libdir}
cat << EOF > %{buildroot}%{_sysconfdir}/bluetooth/pin
1234
EOF
@ -248,29 +251,32 @@ install -D -c -m 0644 %SOURCE9 %buildroot%_sysconfdir/sysconfig/rfcomm
rm -rf %{buildroot}/%{_lib}/pkgconfig
install -m644 bluez.pc -D %{buildroot}%{_libdir}/pkgconfig/bluez.pc
# Remove the cups backend from libdir, and install it in /usr/lib whatever the install
if test -d %{buildroot}/%{_lib}/cups ; then
install -D -m0755 %{buildroot}/%{_lib}/cups/backend/bluetooth %{buildroot}/usr/lib/cups/backend/bluetooth
rm -rf %{buildroot}/%{_lib}/cups
fi
mkdir -p %{buildroot}/sbin
cp %{buildroot}%{_bindir}/hidd %{buildroot}/sbin/
cp %{buildroot}%{_sbindir}/bluetoothd %{buildroot}/sbin/
cp test/test-* %{buildroot}%{_bindir}
cp test/simple-agent %{buildroot}%{_bindir}/simple-agent
mkdir -p %{buildroot}/{bin,sbin}
mv %{buildroot}%{_bindir}/hidd %{buildroot}/bin
mv %{buildroot}%{_sbindir}/bluetoothd %{buildroot}/sbin
# sym link just to be safe
pushd %{buildroot}
ln -s /bin/hidd %{buildroot}%{_bindir}/hidd
ln -s /sbin/bluetoothd %{buildroot}%{_sbindir}/bluetoothd
popd
#install more config files
install -m0644 audio/audio.conf %{buildroot}%{_sysconfdir}/bluetooth/
install -m0644 network/network.conf %{buildroot}%{_sysconfdir}/bluetooth/
install -m0644 input/input.conf %{buildroot}%{_sysconfdir}/bluetooth/
install -m0644 serial/serial.conf %{buildroot}%{_sysconfdir}/bluetooth/
%__mkdir -p %{buildroot}%{_libdir}/alsa-lib/
%__mv %{buildroot}/%{_lib}/alsa-lib/*.so %{buildroot}%{_libdir}/alsa-lib/
mkdir -p %{buildroot}%{_libdir}/alsa-lib/
mv %{buildroot}/%{_lib}/alsa-lib/*.so %{buildroot}%{_libdir}/alsa-lib/
# remove unpackaged files
rm -f %{buildroot}/%{_libdir}/*/*.la
@ -280,11 +286,31 @@ install -d -m0755 %{buildroot}/%{_localstatedir}/lib/bluetooth
ln -s bluetooth.service %buildroot/lib/systemd/system/dbus-org.bluez.service
%clean
rm -fr %{buildroot}
%changelog
* Tue Jun 26 2012 Alexander Khrukin <akhrukin@mandriva.org> 4.101-2
+ Revision: 807024
- rel up
* Tue Jun 26 2012 Alexander Khrukin <akhrukin@mandriva.org> 4.101-1
+ Revision: 806985
- removed unneeded file
- BR usb1-devel
- version update 4.10118
* Fri May 11 2012 Matthew Dawkins <mattydaw@mandriva.org> 4.99-2
+ Revision: 798165
- rebuild
- split out test package
- cleaned up spec
- made obex-data-server a suggests
+ Per Øyvind Karlsen <peroyvind@mandriva.org>
- move hidd to /bin rather than /sbin
- don't copy files within package to /sbin, move them in stead
- drop dead --enable-udevrules option
* Fri Mar 09 2012 Götz Waschk <waschk@mandriva.org> 4.99-1
+ Revision: 783683
- new version
@ -688,102 +714,3 @@ rm -fr %{buildroot}
+ Revision: 20512
- build requires pkg-config for proper pkgconfig automatic dependencies computation
* Mon Jan 29 2007 Nicolas Lécureuil <neoclust@mandriva.org> 3.9-1mdv2007.0
+ Revision: 114833
- New version 3.9
* Tue Dec 26 2006 Nicolas Lécureuil <neoclust@mandriva.org> 3.8-2mdv2007.1
+ Revision: 102080
-x Rebuild
* Mon Dec 25 2006 Nicolas Lécureuil <neoclust@mandriva.org> 3.8-1mdv2007.1
+ Revision: 102036
- New Version 3.8
- New release 3.7
- bluez-3.4-2mdv2007.0
- Fix rpmlint warnings
- Import bluez
* Sun Aug 27 2006 Nicolas Lécureuil <neoclust@mandriva.org> 3.4-1mdv2007.0
- New release 3.4
* Mon Aug 14 2006 Austin Acton <austin@mandriva.org> 3.2-1mdv2007.0
- 3.2
* Mon Jun 19 2006 Nicolas Lécureuil <neoclust@mandriva.org> 3.1-1
- New release 3.1
* Wed Jun 14 2006 Frederic Crozat <fcrozat@mandriva.com> 3.0-2mdv2007.0
- Fix major
* Tue Jun 13 2006 Nicolas Lécureuil <neoclust@mandriva.org> 3.0-1mdv2007.0
- New release 3.0
* Thu Jan 19 2006 Nicolas Lécureuil <neoclust@mandriva.org> 2.25-1mdk
- New release 2.25
* Sat Dec 24 2005 Nicolas Lécureuil <neoclust@mandriva.org> 2.24-1mdk
- New release 2.24
* Mon Dec 12 2005 Nicolas Lécureuil <neoclust@mandriva.org> 2.23-1mdk
- New release 2.23
* Tue Nov 01 2005 Nicolas Lécureuil <neoclust@mandriva.org> 2.22-1mdk
- New release 2.22
* Tue Oct 04 2005 Nicolas Lécureuil <neoclust@mandriva.org> 2.21-1mdk
- New release 2.21
* Tue Aug 09 2005 Nicolas Lécureuil <neoclust@mandriva.org> 2.19-3mdk
- Revert previous changes
* Tue Aug 09 2005 Nicolas Lécureuil <neoclust@mandriva.org> 2.19-2mdk
- Cosmetics
* Tue Aug 09 2005 Nicolas Lécureuil <neoclust@mandriva.org> 2.19-1mdk
- New release 2.19
* Tue Jul 05 2005 Nicolas Lécureuil <neoclust@mandriva.org> 2.18-1mdk
- New release 2.18
* Wed May 11 2005 Nicolas Lécureuil <neoclust@mandriva.org> 2.17-1mdk
- New release 2.17
- Drop P0 ( Merged upstream )
* Tue May 10 2005 Pascal Terjan <pterjan@mandriva.org> 2.16-2mdk
- include stdio in bluetooth.h (P0)
* Sat Apr 30 2005 Nicolas Lécureuil <neoclust@mandriva.org> 2.16-1mdk
- 2.16
- Drop Patch0 ( Merged upstream )
* Thu Jan 27 2005 Frederic Crozat <fcrozat@mandrakesoft.com> 2.14-2mdk
- Patch0 (CVS): add removed calls needed by libbtctl
* Sat Jan 15 2005 Austin Acton <austin@mandrake.org> 2.14-1mdk
- 2.14
- fix summaries
- add automake macro
* Wed Sep 22 2004 Frederic Crozat <fcrozat@mandrakesoft.com> 2.10-1mdk
- Release 2.10
- Move to /%%{_lib}, needed for initscript
* Fri Aug 13 2004 Frederic Crozat <fcrozat@mandrakesoft.com> 2.9-1mdk
- Release 2.9
* Sun Jul 18 2004 Austin Acton <austin@mandrake.org> 2.8-1mdk
- 2.8
- add pkgconfig file
* Fri May 14 2004 Austin Acton <austin@mandrake.org> 2.7-1mdk
- 2.7
- configure 2.5
* Sun May 02 2004 Arnaud de Lorbeau <adelorbeau@mandrakesoft.com> 2.6-2mdk
- Obsoletes bluez-sdp libs
* Sat May 01 2004 Arnaud de Lorbeau <adelorbeau@mandrakesoft.com> 2.6-1mdk
- 2.6