summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTiziano Müller <dev-zero@gentoo.org>2008-11-28 21:21:36 +0000
committerTiziano Müller <dev-zero@gentoo.org>2008-11-28 21:21:36 +0000
commit98daa697fcd9e919effff7c1d6e2ceab103ccad6 (patch)
treed0266cb06573a87c48c17cc0f8b4674297148487 /net-wireless/bluez
parentppc stable, bug #249039 (diff)
downloadgentoo-2-98daa697fcd9e919effff7c1d6e2ceab103ccad6.tar.gz
gentoo-2-98daa697fcd9e919effff7c1d6e2ceab103ccad6.tar.bz2
gentoo-2-98daa697fcd9e919effff7c1d6e2ceab103ccad6.zip
Initial commit, keeping the keywords the same as for bluez-libs/-utils since it's mostly the same. Most patches are taken from bluez-libs/-utils. (bug #236357)
(Portage version: 2.2_rc16/cvs/Linux 2.6.27.5 x86_64)
Diffstat (limited to 'net-wireless/bluez')
-rw-r--r--net-wireless/bluez/ChangeLog15
-rw-r--r--net-wireless/bluez/bluez-4.19.ebuild157
-rw-r--r--net-wireless/bluez/files/4.18/bluetooth-conf.d10
-rw-r--r--net-wireless/bluez/files/4.18/bluetooth-init.d48
-rw-r--r--net-wireless/bluez/files/4.18/conf.d-hidd5
-rw-r--r--net-wireless/bluez/files/4.18/cups-location.patch18
-rw-r--r--net-wireless/bluez/files/4.18/init.d-hidd29
-rw-r--r--net-wireless/bluez/files/bluez-4.18-udev.rules5
-rw-r--r--net-wireless/bluez/files/bluez-4.18-udev.script28
-rw-r--r--net-wireless/bluez/metadata.xml17
10 files changed, 332 insertions, 0 deletions
diff --git a/net-wireless/bluez/ChangeLog b/net-wireless/bluez/ChangeLog
new file mode 100644
index 000000000000..30960dbf8d27
--- /dev/null
+++ b/net-wireless/bluez/ChangeLog
@@ -0,0 +1,15 @@
+# ChangeLog for net-wireless/bluez
+# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/net-wireless/bluez/ChangeLog,v 1.1 2008/11/28 21:21:35 dev-zero Exp $
+
+*bluez-4.19 (28 Nov 2008)
+
+ 28 Nov 2008; Tiziano Müller <dev-zero@gentoo.org>
+ +files/bluez-4.18-udev.rules, +files/4.18/bluetooth-conf.d,
+ +files/4.18/conf.d-hidd, +files/bluez-4.18-udev.script,
+ +files/4.18/bluetooth-init.d, +files/4.18/cups-location.patch,
+ +files/4.18/init.d-hidd, +metadata.xml, +bluez-4.19.ebuild:
+ Initial commit, keeping the keywords the same as for bluez-libs/-utils
+ since it's mostly the same. Most patches are taken from bluez-libs/-utils.
+ (bug #236357)
+
diff --git a/net-wireless/bluez/bluez-4.19.ebuild b/net-wireless/bluez/bluez-4.19.ebuild
new file mode 100644
index 000000000000..676bc99c4e08
--- /dev/null
+++ b/net-wireless/bluez/bluez-4.19.ebuild
@@ -0,0 +1,157 @@
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-wireless/bluez/bluez-4.19.ebuild,v 1.1 2008/11/28 21:21:35 dev-zero Exp $
+
+inherit autotools multilib eutils
+
+DESCRIPTION="Bluetooth Tools and System Daemons for Linux"
+HOMEPAGE="http://bluez.sourceforge.net/"
+SRC_URI="mirror://kernel/linux/bluetooth/${P}.tar.gz"
+LICENSE="GPL-2 LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~sh ~sparc ~x86"
+
+IUSE="alsa cups debug doc examples gstreamer old-daemons test-programs usb"
+
+RDEPEND="alsa? ( media-libs/alsa-lib )
+ gstreamer? (
+ >=media-libs/gstreamer-0.10
+ >=media-libs/gst-plugins-base-0.10 )
+ usb? ( dev-libs/libusb )
+ cups? ( net-print/cups )
+ sys-fs/udev
+ dev-libs/glib
+ sys-apps/dbus
+ !net-wireless/bluez-libs
+ !net-wireless/bluez-utils"
+DEPEND="!<dev-libs/libnl-1.1
+ sys-devel/flex
+ dev-util/pkgconfig
+ doc? ( dev-util/gtk-doc )
+ ${RDEPEND}"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+
+ if use cups; then
+ epatch "${FILESDIR}/4.18/cups-location.patch"
+ eautoreconf
+ fi
+}
+
+src_compile() {
+ # the order is the same as ./configure --help
+
+ # we don't need the other daemons either with the new
+ # service architechture
+
+ econf \
+ $(use_enable doc gtk-doc) \
+ --enable-network \
+ --enable-serial \
+ --enable-input \
+ --enable-audio \
+ --enable-service \
+ $(use_enable gstreamer) \
+ $(use_enable alsa) \
+ $(use_enable usb) \
+ --enable-netlink \
+ --enable-tools \
+ --enable-bccmd \
+ --enable-hid2hci \
+ --enable-dfutool \
+ $(use_enable old-daemons hidd) \
+ $(use_enable old-daemons pand) \
+ $(use_enable old-daemons dund) \
+ $(use_enable cups) \
+ $(use_enable test-programs test) \
+ --enable-manpages \
+ --enable-configfiles \
+ --disable-initscripts \
+ --disable-pcmciarules \
+ $(use_enable debug) \
+ --localstatedir=/var
+
+ emake || die "emake failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "make install failed"
+
+ dodoc AUTHORS ChangeLog README || die
+
+ if use test-programs ; then
+ dobin input/test-input || die
+
+ # a very simple example daemon
+ dobin test/passkey-agent || die
+ dobin test/auth-agent || die
+ fi
+
+ newinitd "${FILESDIR}/4.18/bluetooth-init.d" bluetooth || die
+ newconfd "${FILESDIR}/4.18/bluetooth-conf.d" bluetooth || die
+
+ if use old-daemons; then
+ newconfd "${FILESDIR}/4.18/conf.d-hidd" hidd || die
+ newinitd "${FILESDIR}/4.18/init.d-hidd" hidd || die
+ fi
+
+ # bug #84431
+ insinto /etc/udev/rules.d/
+ newins "${FILESDIR}/${PN}-4.18-udev.rules" 70-bluetooth.rules || die
+ newins "${S}/scripts/bluetooth.rules" 70-bluetooth-pcmcia.rules || die
+
+ exeinto /$(get_libdir)/udev/
+ newexe "${FILESDIR}/${PN}-4.18-udev.script" bluetooth.sh || die
+ doexe "${S}/scripts/bluetooth_serial" || die
+
+ insinto /etc/bluetooth
+ doins \
+ input/input.conf \
+ audio/audio.conf \
+ network/network.conf
+}
+
+pkg_postinst() {
+ udevadm control --reload_rules && udevadm trigger
+
+ elog
+ elog "To use dial up networking you must install net-dialup/ppp."
+ elog ""
+ elog "Since 3.0 bluez has changed the passkey handling to use a dbus based"
+ elog "API so please remember to update your /etc/bluetooth/hcid.conf."
+ elog "For a password agent, there is for example net-wireless/bluez-gnome"
+ elog "for gnome and net-wireless/kdebluetooth for kde."
+ elog ""
+ elog "Since 3.10.1 we don't install the old style daemons any more but rely"
+ elog "on the new service architechture:"
+ elog " http://wiki.bluez.org/wiki/Services"
+ elog ""
+ elog "3.15 adds support for the audio service. See"
+ elog "http://wiki.bluez.org/wiki/HOWTO/AudioDevices for configuration help."
+ elog ""
+ elog "Use the old-daemons use flag to get the old daemons like hidd"
+ elog "installed. Please note that the init script doesn't stop the old"
+ elog "daemons after you update it so it's recommended to run:"
+ elog " /etc/init.d/bluetooth stop"
+ elog "before updating your configuration files or you can manually kill"
+ elog "the extra daemons you previously enabled in /etc/conf.d/bluetooth."
+ elog ""
+ elog "If you want to use rfcomm as a normal user, you need to add the user"
+ elog "to the uucp group."
+ elog ""
+ if use old-daemons; then
+ elog "The hidd init script was installed because you have the old-daemons"
+ elog "use flag on. It is not started by default via udev so please add it"
+ elog "to the required runleves using rc-update <runlevel> add hidd. If"
+ elog "you need init scripts for the other daemons, please file requests"
+ elog "to https://bugs.gentoo.org."
+ else
+ elog "The bluetooth service should be started automatically by udev"
+ elog "when the required hardware is inserted next time."
+ fi
+ elog
+ ewarn "On first install you need to run /etc/init.d/dbus reload or hcid"
+ ewarn "will fail to start."
+}
diff --git a/net-wireless/bluez/files/4.18/bluetooth-conf.d b/net-wireless/bluez/files/4.18/bluetooth-conf.d
new file mode 100644
index 000000000000..c84ac4f1175c
--- /dev/null
+++ b/net-wireless/bluez/files/4.18/bluetooth-conf.d
@@ -0,0 +1,10 @@
+# Bluetooth configuraton file
+
+# Run hid2hci (allowed values are "true" and "false")
+HID2HCI_ENABLE=false
+
+# Bind rfcomm devices (allowed values are "true" and "false")
+RFCOMM_ENABLE=true
+
+# Config file for rfcomm
+RFCOMM_CONFIG="/etc/bluetooth/rfcomm.conf"
diff --git a/net-wireless/bluez/files/4.18/bluetooth-init.d b/net-wireless/bluez/files/4.18/bluetooth-init.d
new file mode 100644
index 000000000000..d66708495cf7
--- /dev/null
+++ b/net-wireless/bluez/files/4.18/bluetooth-init.d
@@ -0,0 +1,48 @@
+#!/sbin/runscript
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-wireless/bluez/files/4.18/bluetooth-init.d,v 1.1 2008/11/28 21:21:35 dev-zero Exp $
+
+depend() {
+ after coldplug
+ need dbus localmount
+}
+
+start() {
+ ebegin "Starting Bluetooth"
+ local result=0
+
+ ebegin " Starting bluetoothd"
+ # -s enables internal sdp server
+ start-stop-daemon --start \
+ --exec /usr/sbin/bluetoothd
+ result=$?
+ eend ${result}
+
+ if [ "${HID2HCI_ENABLE}" = "true" -a -x /usr/sbin/hid2hci ]; then
+ ebegin " Running hid2hci"
+ /usr/sbin/hid2hci --tohci -q #be quiet
+ [ ${result} == 0 ] && result=$?
+ eend ${result}
+ fi
+
+ if [ "${RFCOMM_ENABLE}" = "true" -a -x /usr/bin/rfcomm ]; then
+ if [ -f "${RFCOMM_CONFIG}" ]; then
+ ebegin " Starting rfcomm"
+ /usr/bin/rfcomm -f "${RFCOMM_CONFIG}" bind all
+ [ ${result} == 0 ] && result=$?
+ eend ${result}
+ else
+ ewarn "Not enabling rfcomm because RFCOMM_CONFIG does not exists"
+ fi
+ fi
+
+ eend ${result}
+}
+
+stop() {
+ ebegin "Shutting down Bluetooth"
+
+ start-stop-daemon --stop --quiet --exec /usr/sbin/bluetoothd
+ eend $?
+}
diff --git a/net-wireless/bluez/files/4.18/conf.d-hidd b/net-wireless/bluez/files/4.18/conf.d-hidd
new file mode 100644
index 000000000000..1677ef0f3556
--- /dev/null
+++ b/net-wireless/bluez/files/4.18/conf.d-hidd
@@ -0,0 +1,5 @@
+# Bluetooth hidd daemon configuraton file
+
+# Arguments to hidd
+HIDD_OPTIONS="--encrypt"
+
diff --git a/net-wireless/bluez/files/4.18/cups-location.patch b/net-wireless/bluez/files/4.18/cups-location.patch
new file mode 100644
index 000000000000..e0ddc020062b
--- /dev/null
+++ b/net-wireless/bluez/files/4.18/cups-location.patch
@@ -0,0 +1,18 @@
+? cups/.deps
+? cups/Makefile
+? cups/Makefile.in
+Index: cups/Makefile.am
+===================================================================
+RCS file: /cvsroot/bluez/utils/cups/Makefile.am,v
+retrieving revision 1.9
+diff -u -r1.9 Makefile.am
+--- cups/Makefile.am 20 Aug 2006 02:21:03 -0000 1.9
++++ cups/Makefile.am 1 Jun 2007 15:47:14 -0000
+@@ -1,6 +1,6 @@
+
+ if CUPS
+-cupsdir = $(libdir)/cups/backend
++cupsdir = `cups-config --serverbin`/backend
+
+ cups_PROGRAMS = bluetooth
+ else
diff --git a/net-wireless/bluez/files/4.18/init.d-hidd b/net-wireless/bluez/files/4.18/init.d-hidd
new file mode 100644
index 000000000000..9e61281a48fe
--- /dev/null
+++ b/net-wireless/bluez/files/4.18/init.d-hidd
@@ -0,0 +1,29 @@
+#!/sbin/runscript
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-wireless/bluez/files/4.18/init.d-hidd,v 1.1 2008/11/28 21:21:35 dev-zero Exp $
+
+depend() {
+ need bluetooth
+}
+
+start() {
+ ebegin "Starting hidd"
+ start-stop-daemon --start --quiet \
+ --exec /usr/bin/hidd -- ${HIDD_OPTIONS} --server
+ local result="$?"
+ local service="/etc/bluetooth/input.service"
+ if [ "${result}" != "0" ] && grep -q "Autostart=true" ${service}; then
+ eerror "You have Autostart=true in ${service}."
+ eerror "Change this to false if you want to use hidd."
+ fi
+ eend ${result}
+}
+
+stop() {
+ ebegin "Stopping hidd"
+ hidd --killall
+ start-stop-daemon --stop --quiet --exec /usr/bin/hidd
+ eend $?
+}
+
diff --git a/net-wireless/bluez/files/bluez-4.18-udev.rules b/net-wireless/bluez/files/bluez-4.18-udev.rules
new file mode 100644
index 000000000000..b3ccd5bbbaec
--- /dev/null
+++ b/net-wireless/bluez/files/bluez-4.18-udev.rules
@@ -0,0 +1,5 @@
+# Start/Stop bluetooth service on device insertion. Gentoo specific.
+SUBSYSTEM=="bluetooth", KERNEL=="hci[0-9]*", RUN+="bluetooth.sh"
+
+# So that normal users can dial out.
+SUBSYSTEM=="tty", SUBSYSTEMS=="bluetooth", GROUP="uucp"
diff --git a/net-wireless/bluez/files/bluez-4.18-udev.script b/net-wireless/bluez/files/bluez-4.18-udev.script
new file mode 100644
index 000000000000..a532e2652cdb
--- /dev/null
+++ b/net-wireless/bluez/files/bluez-4.18-udev.script
@@ -0,0 +1,28 @@
+#!/bin/sh
+#
+# bluetooth.sh: udev external RUN script
+#
+# Copyright:
+# 2005-2006 Henrik Brix Andersen <brix@gentoo.org>
+# 2007 Petteri Räty <betelgeuse@gentoo.org>
+# 2008 Tiziano Müller <dev-zero@gentoo.org>
+# Distributed under the terms of the GNU General Public License v2
+
+script=/etc/init.d/bluetooth
+
+# Find out where sysfs is mounted. Exit if not available
+sysfs=`grep -F sysfs /proc/mounts | awk '{print $2}'`
+if [ "$sysfs" = "" ]; then
+ echo "sysfs is required"
+ exit 1
+fi
+
+if [ ! -d $sysfs/class/bluetooth/hci[0-9]* -a ! -d $sysfs/bus/bluetooth/devices/hci[0-9]* ]; then
+ if $script --quiet status; then
+ IN_HOTPLUG=1 $script --quiet stop
+ fi
+else
+ if ! $script --quiet status; then
+ IN_HOTPLUG=1 $script --quiet start
+ fi
+fi
diff --git a/net-wireless/bluez/metadata.xml b/net-wireless/bluez/metadata.xml
new file mode 100644
index 000000000000..4df5da7d6d51
--- /dev/null
+++ b/net-wireless/bluez/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>mobile</herd>
+ <herd>pda</herd>
+ <maintainer>
+ <email>dev-zero@gentoo.org</email>
+ </maintainer>
+ <maintainer>
+ <email>betelgeuse@gentoo.org</email>
+ </maintainer>
+ <use>
+ <flag name='old-daemons'>Install old daemons like hidd and sdpd that are
+ deprecated by the new Service framework</flag>
+ <flag name='test-programs'>Install l2test and rctest</flag>
+ </use>
+</pkgmetadata>