174 lines
5.5 KiB
Text
174 lines
5.5 KiB
Text
# Maintainer: Andreas Radke <andyrtr@archlinux.org>
|
|
# Contributor: Tom Gundersen <teg@jklm.no>
|
|
# Contributor: Andrea Scarpino <andrea@archlinux.org>
|
|
# Contributor: Geoffroy Carrier <geoffroy@archlinux.org>
|
|
|
|
pkgbase=bluez
|
|
pkgname=('bluez' 'bluez-utils' 'bluez-libs' 'bluez-cups' 'bluez-hid2hci' 'bluez-plugins')
|
|
pkgver=5.66
|
|
pkgrel=1
|
|
url="http://www.bluez.org/"
|
|
arch=('x86_64')
|
|
license=('GPL2')
|
|
options=('debug')
|
|
makedepends=('dbus' 'libical' 'systemd' 'alsa-lib' 'json-c' 'ell' 'python-docutils')
|
|
source=(https://www.kernel.org/pub/linux/bluetooth/${pkgname}-${pkgver}.tar.{xz,sign}
|
|
bluetooth.modprobe
|
|
)
|
|
# see https://www.kernel.org/pub/linux/bluetooth/sha256sums.asc
|
|
sha256sums=('39fea64b590c9492984a0c27a89fc203e1cdc74866086efb8f4698677ab2b574'
|
|
'SKIP'
|
|
'46c021be659c9a1c4e55afd04df0c059af1f3d98a96338236412e449bf7477b4')
|
|
validpgpkeys=('E932D120BC2AEC444E558F0106CA9F5D1DCF2659') # Marcel Holtmann <marcel@holtmann.org>
|
|
|
|
build() {
|
|
cd "${pkgname}"-${pkgver}
|
|
./configure \
|
|
--prefix=/usr \
|
|
--mandir=/usr/share/man \
|
|
--sysconfdir=/etc \
|
|
--localstatedir=/var \
|
|
--libexecdir=/usr/lib \
|
|
--with-dbusconfdir=/usr/share \
|
|
--enable-btpclient \
|
|
--enable-midi \
|
|
--enable-sixaxis \
|
|
--enable-mesh \
|
|
--enable-hid2hci \
|
|
--enable-experimental \
|
|
--enable-library # this is deprecated
|
|
make
|
|
}
|
|
|
|
check() {
|
|
cd "$pkgname"-$pkgver
|
|
make check
|
|
}
|
|
|
|
|
|
package_bluez() {
|
|
pkgdesc="Daemons for the bluetooth protocol stack"
|
|
depends=('libical' 'dbus' 'glib2' 'alsa-lib' 'json-c')
|
|
backup=('etc/bluetooth/main.conf')
|
|
conflicts=('obexd-client' 'obexd-server')
|
|
|
|
cd "${pkgbase}"-${pkgver}
|
|
make DESTDIR=${pkgdir} \
|
|
install-pkglibexecPROGRAMS \
|
|
install-dbussessionbusDATA \
|
|
install-systemdsystemunitDATA \
|
|
install-systemduserunitDATA \
|
|
install-dbussystembusDATA \
|
|
install-dbusDATA \
|
|
install-man8
|
|
|
|
# ship upstream main config file
|
|
install -dm555 "${pkgdir}"/etc/bluetooth
|
|
install -Dm644 "${srcdir}"/"${pkgbase}"-${pkgver}/src/main.conf "${pkgdir}"/etc/bluetooth/main.conf
|
|
|
|
# add basic documention
|
|
install -dm755 "${pkgdir}"/usr/share/doc/"${pkgbase}"/dbus-apis
|
|
cp -a doc/*.txt "${pkgdir}"/usr/share/doc/"${pkgbase}"/dbus-apis/
|
|
# fix module loading errors
|
|
install -dm755 "${pkgdir}"/usr/lib/modprobe.d
|
|
install -Dm644 "${srcdir}"/bluetooth.modprobe "${pkgdir}"/usr/lib/modprobe.d/bluetooth-usb.conf
|
|
# load module at system start required by some functions
|
|
# https://bugzilla.kernel.org/show_bug.cgi?id=196621
|
|
install -dm755 "$pkgdir"/usr/lib/modules-load.d
|
|
echo "crypto_user" > "$pkgdir"/usr/lib/modules-load.d/bluez.conf
|
|
|
|
# fix obex file transfer - https://bugs.archlinux.org/task/45816
|
|
ln -fs /usr/lib/systemd/user/obex.service "${pkgdir}"/usr/lib/systemd/user/dbus-org.bluez.obex.service
|
|
|
|
# FS#74157 - bluez systemd service fails without localstatedir present
|
|
install -dm700 "${pkgdir}"/var/lib/bluetooth
|
|
|
|
# cleanup - these libs go into bluez-libs
|
|
rm "${pkgdir}"/usr/lib/libbluetooth.so*
|
|
}
|
|
|
|
package_bluez-utils() {
|
|
pkgdesc="Development and debugging utilities for the bluetooth protocol stack"
|
|
depends=('dbus' 'systemd' 'glib2')
|
|
optdepends=('ell: for btpclient')
|
|
backup=('etc/bluetooth/mesh-main.conf')
|
|
conflicts=('bluez-hcidump')
|
|
provides=('bluez-hcidump')
|
|
replaces=('bluez-hcidump' 'bluez<=4.101')
|
|
|
|
cd "${pkgbase}"-${pkgver}
|
|
make DESTDIR="${pkgdir}" \
|
|
install-binPROGRAMS \
|
|
install-dist_zshcompletionDATA \
|
|
install-man1
|
|
|
|
# add missing tools FS#41132, FS#41687, FS#42716
|
|
for files in `find tools/ -type f -perm -755`; do
|
|
filename=$(basename $files)
|
|
install -Dm755 "${srcdir}"/"${pkgbase}"-${pkgver}/tools/$filename "${pkgdir}"/usr/bin/$filename
|
|
done
|
|
|
|
# ship upstream mesh config file
|
|
install -dm555 "${pkgdir}"/etc/bluetooth
|
|
install -Dm644 "${srcdir}"/"${pkgbase}"-${pkgver}/mesh/mesh-main.conf "${pkgdir}"/etc/bluetooth/mesh-main.conf
|
|
|
|
# libbluetooth.so* are part of libLTLIBRARIES and binPROGRAMS targets
|
|
#make DESTDIR=${pkgdir} uninstall-libLTLIBRARIES
|
|
#rmdir ${pkgdir}/usr/lib
|
|
rm -rf "${pkgdir}"/usr/lib
|
|
|
|
# move the hid2hci man page out
|
|
mv "${pkgdir}"/usr/share/man/man1/hid2hci.1 "${srcdir}"/
|
|
}
|
|
|
|
package_bluez-libs() {
|
|
pkgdesc="Deprecated libraries for the bluetooth protocol stack"
|
|
depends=('glibc')
|
|
provides=('libbluetooth.so')
|
|
license=('LGPL2.1')
|
|
|
|
cd "${pkgbase}"-${pkgver}
|
|
make DESTDIR="${pkgdir}" \
|
|
install-pkgincludeHEADERS \
|
|
install-libLTLIBRARIES \
|
|
install-pkgconfigDATA
|
|
}
|
|
|
|
package_bluez-cups() {
|
|
pkgdesc="CUPS printer backend for Bluetooth printers"
|
|
depends=('cups')
|
|
|
|
cd "${pkgbase}"-${pkgver}
|
|
make DESTDIR="${pkgdir}" install-cupsPROGRAMS
|
|
|
|
# cleanup - these libs go into bluez-libs
|
|
rm "${pkgdir}"/usr/lib/libbluetooth.so*
|
|
}
|
|
|
|
package_bluez-hid2hci() {
|
|
pkgdesc="Put HID proxying bluetooth HCI's into HCI mode"
|
|
depends=('systemd')
|
|
|
|
cd "${pkgbase}"-${pkgver}
|
|
make DESTDIR=${pkgdir} \
|
|
install-udevPROGRAMS \
|
|
install-rulesDATA
|
|
|
|
install -dm755 "${pkgdir}"/usr/share/man/man1
|
|
mv "${srcdir}"/hid2hci.1 "${pkgdir}"/usr/share/man/man1/hid2hci.1
|
|
|
|
# cleanup - these libs go into bluez-libs
|
|
rm "${pkgdir}"/usr/lib/libbluetooth.so*
|
|
}
|
|
|
|
package_bluez-plugins() {
|
|
pkgdesc="bluez plugins (PS3 Sixaxis controller)"
|
|
depends=('systemd')
|
|
|
|
cd "${pkgbase}"-${pkgver}
|
|
make DESTDIR="${pkgdir}" \
|
|
install-pluginLTLIBRARIES
|
|
|
|
# cleanup - these libs go into bluez-libs
|
|
rm "${pkgdir}"/usr/lib/libbluetooth.so*
|
|
}
|