summaryrefslogtreecommitdiff
path: root/testing/bluez
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2012-05-28 17:43:57 +0000
committerroot <root@rshg054.dnsready.net>2012-05-28 17:43:57 +0000
commit483f7de4ab6a706517279a24d2efc969f4a1996d (patch)
tree128a7513d3e42c4d8812b5fd11a4afb116399762 /testing/bluez
parent89dd7b5f30d48c708092a71b1c8285090fe91505 (diff)
Mon May 28 17:43:57 UTC 2012
Diffstat (limited to 'testing/bluez')
-rw-r--r--testing/bluez/0001-udev-remove-deprecated-function.patch27
-rw-r--r--testing/bluez/PKGBUILD89
-rw-r--r--testing/bluez/bluetooth.conf.d30
-rw-r--r--testing/bluez/rc.bluetooth100
4 files changed, 246 insertions, 0 deletions
diff --git a/testing/bluez/0001-udev-remove-deprecated-function.patch b/testing/bluez/0001-udev-remove-deprecated-function.patch
new file mode 100644
index 000000000..7dadf5cd1
--- /dev/null
+++ b/testing/bluez/0001-udev-remove-deprecated-function.patch
@@ -0,0 +1,27 @@
+From 9e850650bd98e9d05fc937489692b26a64924d16 Mon Sep 17 00:00:00 2001
+From: Tom Gundersen <teg@jklm.no>
+Date: Sun, 27 May 2012 00:53:36 +0200
+Subject: [PATCH] udev: remove deprecated function
+
+This function has in the past returned "/sys" unconditionally. As of udev-183 it
+is gone, so just replace it with the string.
+---
+ tools/hid2hci.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tools/hid2hci.c b/tools/hid2hci.c
+index 45a3a3d..e3a5b2e 100644
+--- a/tools/hid2hci.c
++++ b/tools/hid2hci.c
+@@ -291,7 +291,7 @@ int main(int argc, char *argv[])
+ if (udev == NULL)
+ goto exit;
+
+- snprintf(syspath, sizeof(syspath), "%s/%s", udev_get_sys_path(udev), devpath);
++ snprintf(syspath, sizeof(syspath), "/sys/%s", devpath);
+ udev_dev = udev_device_new_from_syspath(udev, syspath);
+ if (udev_dev == NULL) {
+ fprintf(stderr, "error: could not find '%s'\n", devpath);
+--
+1.7.10.2
+
diff --git a/testing/bluez/PKGBUILD b/testing/bluez/PKGBUILD
new file mode 100644
index 000000000..9a4023150
--- /dev/null
+++ b/testing/bluez/PKGBUILD
@@ -0,0 +1,89 @@
+# $Id: PKGBUILD 159960 2012-05-27 13:10:36Z dreisner $
+# Maintainer: Tom Gundersen <teg@jklm.no>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+# Contributor: Geoffroy Carrier <geoffroy@archlinux.org>
+
+pkgname=bluez
+pkgver=4.99
+pkgrel=5
+pkgdesc="Libraries and tools for the Bluetooth protocol stack"
+url="http://www.bluez.org/"
+arch=('i686' 'x86_64')
+license=('GPL2')
+depends=('dbus-core' 'python2' 'udev')
+makedepends=('gstreamer0.10-base' 'libusb-compat' 'libsndfile')
+optdepends=("gstreamer0.10-base: bluetooth GStreamer support"
+ "alsa-lib: Audio bluetooth devices support"
+ "dbus-python: to run bluez-simple-agent"
+ "pygobject: to run bluez-simple-agent"
+ "libusb-compat: USB adapters support"
+ "cups: CUPS backend")
+conflicts=('bluez-libs' 'bluez-utils')
+provides=('bluez-libs' 'bluez-utils')
+replaces=('bluez-libs' 'bluez-utils')
+options=('!libtool')
+backup=(etc/bluetooth/{main,rfcomm,audio,network,input,serial}.conf
+ 'etc/conf.d/bluetooth' 'etc/dbus-1/system.d/bluetooth.conf')
+source=("http://www.kernel.org/pub/linux/bluetooth/${pkgname}-${pkgver}.tar.bz2"
+ '0001-udev-remove-deprecated-function.patch'
+ 'bluetooth.conf.d'
+ 'rc.bluetooth')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ ./configure --prefix=/usr \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --libexecdir=/lib \
+ --enable-gstreamer \
+ --enable-alsa \
+ --enable-usb \
+ --enable-tools \
+ --enable-bccmd \
+ --enable-dfutool \
+ --enable-hid2hci \
+ --enable-hidd \
+ --enable-pand \
+ --enable-dund \
+ --enable-cups \
+ --enable-wiimote \
+ --disable-test
+
+ patch -p1 -i ../0001-udev-remove-deprecated-function.patch
+
+ make
+}
+
+package() {
+ cd ${srcdir}/${pkgname}-${pkgver}
+ make DESTDIR=${pkgdir} install
+
+ install -Dm755 ${srcdir}/rc.bluetooth ${pkgdir}/etc/rc.d/bluetooth
+
+ install -d ${pkgdir}/etc/bluetooth
+ install -m644 network/network.conf \
+ input/input.conf \
+ audio/audio.conf \
+ serial/serial.conf \
+ ${pkgdir}/etc/bluetooth/
+
+ install -Dm644 ${srcdir}/bluetooth.conf.d \
+ ${pkgdir}/etc/conf.d/bluetooth
+
+ # FS#27630
+ install -Dm755 test/simple-agent "${pkgdir}"/usr/bin/bluez-simple-agent
+ install -Dm755 test/test-device "${pkgdir}"/usr/bin/bluez-test-device
+ install -Dm755 test/test-input "${pkgdir}"/usr/bin/bluez-test-input
+ sed -i 's#/usr/bin/python#/usr/bin/python2#' \
+ "${pkgdir}"/usr/bin/bluez-simple-agent \
+ "${pkgdir}"/usr/bin/bluez-test-device \
+ "${pkgdir}"/usr/bin/bluez-test-input
+
+ # fixed upstream in git
+ rm "${pkgdir}"/usr/lib/udev/rules.d/97-bluetooth.rules
+}
+md5sums=('2387053eb5a7b02f37df4871df022a02'
+ '3175155fbaf73f01377f6c35b5c5e468'
+ '7412982b440f29fa7f76a41a87fef985'
+ '8f9498707f809506928b2e480d3b6789')
diff --git a/testing/bluez/bluetooth.conf.d b/testing/bluez/bluetooth.conf.d
new file mode 100644
index 000000000..1c1e02589
--- /dev/null
+++ b/testing/bluez/bluetooth.conf.d
@@ -0,0 +1,30 @@
+# Bluetooth configuraton file
+
+# Bluetooth services (allowed values are "true" and "false")
+
+# Run the bluetoothd daemon (default: true)
+#DAEMON_ENABLE="false"
+
+# Run the sdp daemon (default: false)
+# If this is disabled, hcid's internal sdp daemon will be used
+#SDPD_ENABLE="true"
+
+# Run the bluetooth HID daemon (default: false)
+#HIDD_ENABLE="true"
+
+# Activate rfcomm ports (default: false)
+#RFCOMM_ENABLE="true"
+
+# Run bluetooth dial-up networking daemon (default: false)
+#DUND_ENABLE="true"
+
+# Run bluetooth PAN daemon (default: false)
+#PAND_ENABLE="true"
+
+# rfcomm configuration file (default: /etc/bluetooth/rfcomm.conf)
+#RFCOMM_CONFIG="/etc/bluetooth/rfcomm.conf"
+
+# Options for hidd, dund and pand (default: none)
+HIDD_OPTIONS="--server"
+#DUND_OPTIONS=""
+#PAND_OPTIONS=""
diff --git a/testing/bluez/rc.bluetooth b/testing/bluez/rc.bluetooth
new file mode 100644
index 000000000..a46ee2abb
--- /dev/null
+++ b/testing/bluez/rc.bluetooth
@@ -0,0 +1,100 @@
+#!/bin/bash
+#
+# Start/stop the Bluetooth daemons
+#
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+DAEMON_NAME="bluetoothd"
+HIDD_NAME="hidd"
+RFCOMM_NAME="rfcomm"
+PAND_NAME="pand"
+DUND_NAME="dund"
+
+DAEMON_EXEC="/usr/sbin/bluetoothd"
+HIDD_EXEC="/usr/bin/hidd"
+RFCOMM_EXEC="/usr/bin/rfcomm"
+PAND_EXEC="/usr/bin/pand"
+DUND_EXEC="/usr/bin/dund"
+
+DAEMON_ENABLE="true"
+HIDD_ENABLE="false"
+RFCOMM_ENABLE="false"
+DUND_ENABLE="false"
+PAND_ENABLE="false"
+
+RFCOMM_CONFIG="/etc/bluetooth/rfcomm.conf"
+
+HIDD_OPTIONS=""
+DUND_OPTIONS=""
+PAND_OPTIONS=""
+
+[ -f /etc/conf.d/bluetooth ] && . /etc/conf.d/bluetooth
+
+case "$1" in
+ start)
+ stat_busy "Starting bluetooth subsystem:"
+ if [ "$DAEMON_ENABLE" = "true" -a -x "$DAEMON_EXEC" ] ; then
+ stat_append " $DAEMON_NAME"
+ $DAEMON_EXEC
+ sleep 1
+ fi
+ if [ "$SDPD_ENABLE" = "true" -a -x "$SDPD_EXEC" ] ; then
+ stat_append " $SDPD_NAME"
+ $SDPD_EXEC
+ fi
+ if [ "$HIDD_ENABLE" = "true" -a -x "$HIDD_EXEC" ]; then
+ stat_append " $HIDD_NAME"
+ $HIDD_EXEC $HIDD_OPTIONS
+ fi
+ if [ "$RFCOMM_ENABLE" = "true" -a -x "$RFCOMM_EXEC" -a -f "$RFCOMM_CONFIG" ]; then
+ stat_append " $RFCOMM_NAME"
+ $RFCOMM_EXEC -f $RFCOMM_CONFIG bind all
+ fi
+ if [ "$DUND_ENABLE" = "true" -a -x "$DUND_EXEC" -a -n "$DUND_OPTIONS" ]; then
+ stat_append " $DUND_NAME"
+ $DUND_EXEC $DUND_OPTIONS
+ fi
+ if [ "$PAND_ENABLE" = "true" -a -x "$PAND_EXEC" -a -n "$PAND_OPTIONS" ]; then
+ stat_append " $PAND_NAME"
+ $PAND_EXEC $PAND_OPTIONS
+ fi
+ add_daemon bluetooth
+ stat_done
+ ;;
+ stop)
+ stat_busy "Stopping bluetooth subsystem:"
+
+ stat_append " $PAND_NAME"
+ killall $PAND_NAME >/dev/null 2>&1
+
+ stat_append " $DUND_NAME"
+ killall $DUND_NAME >/dev/null 2>&1
+
+ if [ -x "$RFCOMM_EXEC" ]; then
+ stat_append " $RFCOMM_NAME"
+ $RFCOMM_EXEC release all >/dev/null 2>&1
+ fi
+
+ stat_append " $HIDD_NAME"
+ killall $HIDD_NAME >/dev/null 2>&1
+
+ stat_append " $SDPD_NAME"
+ killall $SDPD_NAME >/dev/null 2>&1
+
+ stat_append " $DAEMON_NAME"
+ killall $DAEMON_NAME >/dev/null 2>&1
+
+ rm_daemon bluetooth
+ stat_done
+ ;;
+ restart)
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
+exit 0