--- bluez-4.39-r2.ebuild 2009-10-30 23:37:54.000000000 -0500 +++ bluez-4.56.ebuild 2009-10-31 00:38:59.000000000 -0500 @@ -11,11 +11,12 @@ 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" +KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~sh ~sparc ~x86" -IUSE="alsa +consolekit cups debug doc gstreamer old-daemons test-programs usb" +IUSE="alsa caps +consolekit cups debug gstreamer old-daemons pcmcia test-programs usb" CDEPEND="alsa? ( media-libs/alsa-lib ) + caps? ( >=sys-libs/libcap-ng-0.6.2 ) gstreamer? ( >=media-libs/gstreamer-0.10 >=media-libs/gst-plugins-base-0.10 ) @@ -28,25 +29,24 @@ >=dev-libs/libnl-1.1 !net-wireless/bluez-libs !net-wireless/bluez-utils" -DEPEND="sys-devel/flex - >=dev-util/pkgconfig-0.20 - doc? ( dev-util/gtk-doc ) - ${CDEPEND}" +DEPEND="${CDEPEND} + dev-util/pkgconfig + sys-devel/bison + sys-devel/flex" RDEPEND="${CDEPEND} - consolekit? ( sys-auth/pambase[consolekit] )" + consolekit? ( sys-auth/pambase[consolekit] ) + test-programs? ( + dev-python/dbus-python + dev-python/pygobject )" src_prepare() { - epatch \ - "${FILESDIR}/4.31-as_needed.patch" \ - "${FILESDIR}/4.34-conditional_libsbc.patch" - if ! use consolekit; then # No consolekit for at_console etc, so we grant plugdev the rights epatch "${FILESDIR}/bluez-plugdev.patch" fi if use cups; then - epatch "${FILESDIR}/4.18/cups-location.patch" + epatch "${FILESDIR}/4.50-cups-location.patch" fi # needed for both patches @@ -54,13 +54,8 @@ } src_configure() { - # 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) \ + $(use_enable caps capng) --enable-network \ --enable-serial \ --enable-input \ @@ -79,10 +74,9 @@ $(use_enable old-daemons dund) \ $(use_enable cups) \ $(use_enable test-programs test) \ - --enable-manpages \ + --enable-udevrules \ --enable-configfiles \ - --disable-initscripts \ - --disable-pcmciarules \ + $(use_enable pcmcia) \ $(use_enable debug) \ --localstatedir=/var } @@ -91,6 +85,9 @@ emake DESTDIR="${D}" install || die "make install failed" dodoc AUTHORS ChangeLog README || die + # don't install useless .la files + find "${D}" -type f -name '*.la' -delete || die "failed to remove .la files" + if use test-programs ; then cd "${S}/test" @@ -105,47 +102,31 @@ cd "${S}" 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 + network/network.conf \ + serial/serial.conf \ + || die } pkg_postinst() { - udevadm control --reload_rules && udevadm trigger + udevadm control --reload_rules && udevadm trigger --subsystem-match=bluetooth 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 are for example net-wireless/bluez-gnome" - elog "and net-wireless/gnome-bluetooth:2 for GNOME. For KDE, see bug 246381" + elog "For a password agent, there is for example net-wireless/bluez-gnome" + elog "and net-wireless/gnome-bluetooth:2 for GNOME; for KDE4 instead you can" + elog "install net-wireless/kbluetooth." 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 "For registering devices that don't pair, use net-wireless/blueman." 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" @@ -153,21 +134,26 @@ 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 consolekit; then + elog "" + elog "If you want to use rfcomm as a normal user, you need to add the user" + elog "to the uucp group." + else + elog "" + ewarn "Since you have the consolekit use flag disabled for this package, you will only be " + ewarn "able to run bluetooth clients as root. If you want to be able to run bluetooth " + ewarn "clients as a regular user, you must enable the consolekit use flag for this package." + fi if use old-daemons; then + elog "" 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 add hidd. If" + elog "to the required runlevels using rc-update add hidd. If" elog "you need init scripts for the other daemons, please file requests" elog "to https://bugs.gentoo.org." else + elog "" 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." }