# $Id$ # Maintainer: Jan Alexander Steffens (heftig) # Contributor: Daniel J Griffiths # Contributor: Corrado Primier # Contributor: William Rea # ALARM: Kevin Mihelich # - added --disable-neon-opt to configure # - removed xen pieces pkgbase=pulseaudio pkgname=(pulseaudio libpulse pulseaudio-{gconf,zeroconf,lirc,jack,bluetooth,equalizer}) pkgdesc="A featureful, general-purpose sound server" pkgver=6.0 pkgrel=2 arch=(i686 x86_64) url="http://www.freedesktop.org/wiki/Software/PulseAudio" license=(LGPL) makedepends=(libasyncns libcap attr libxtst libsm libsndfile libtool rtkit speexdsp tdb systemd dbus avahi bluez bluez-libs gconf intltool jack2-dbus sbc lirc openssl fftw orc json-c gtk3 webrtc-audio-processing check) options=(!emptydirs) source=(http://freedesktop.org/software/$pkgbase/releases/$pkgbase-$pkgver.tar.xz) sha256sums=('b50640e0b80b1607600accfad2e45aabb79d379bf6354c9671efa2065477f6f6') prepare() { cd $pkgbase-$pkgver } build() { cd $pkgbase-$pkgver ./configure --prefix=/usr \ --sysconfdir=/etc \ --libexecdir=/usr/lib \ --localstatedir=/var \ --with-udev-rules-dir=/usr/lib/udev/rules.d \ --with-database=tdb \ --disable-tcpwrap \ --disable-bluez4 \ --disable-samplerate \ --disable-rpath \ --disable-default-build-tests \ --disable-neon-opt # fight unused direct deps sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool make } package_pulseaudio() { depends=("libpulse=$pkgver-$pkgrel" rtkit libltdl speexdsp tdb orc webrtc-audio-processing sbc) optdepends=('pulseaudio-alsa: ALSA configuration (recommended)') backup=(etc/pulse/{daemon.conf,default.pa,system.pa}) install=pulseaudio.install cd $pkgbase-$pkgver make -j1 DESTDIR="$pkgdir" install \ bashcompletiondir=/usr/share/bash-completion/completions # Speed up pulseaudio shutdown so that it exits immediately with # the last user session (module-systemd-login keeps it alive) sed -e '/exit-idle-time/iexit-idle-time=0' \ -i "$pkgdir/etc/pulse/daemon.conf" # Disable cork-request module, can result in e.g. media players unpausing # when there's a Skype call incoming sed -e 's|/usr/bin/pactl load-module module-x11-cork-request|#&|' \ -i "$pkgdir/usr/bin/start-pulseaudio-x11" rm "$pkgdir/etc/dbus-1/system.d/pulseaudio-system.conf" ### Split libpulse mkdir -p "$srcdir"/libpulse/{etc/pulse,usr/{bin,lib/pulseaudio,share/man/man{1,5}}} mv {"$pkgdir","$srcdir/libpulse"}/etc/pulse/client.conf mv "$pkgdir"/usr/bin/pa{cat,ctl,dsp,mon,play,rec,record} \ "$srcdir/libpulse/usr/bin" mv "$pkgdir"/usr/lib/libpulse{,-simple,-mainloop-glib}.so* \ "$srcdir/libpulse/usr/lib" mv "$pkgdir"/usr/lib/pulseaudio/libpulsedsp.so \ "$pkgdir"/usr/lib/pulseaudio/libpulsecommon-*.so \ "$srcdir/libpulse/usr/lib/pulseaudio" mv {"$pkgdir","$srcdir/libpulse"}/usr/lib/cmake mv {"$pkgdir","$srcdir/libpulse"}/usr/lib/pkgconfig mv {"$pkgdir","$srcdir/libpulse"}/usr/include mv "$pkgdir"/usr/share/man/man1/pa{cat,ctl,dsp,play}.1 \ "$srcdir/libpulse/usr/share/man/man1" mv {"$pkgdir","$srcdir/libpulse"}/usr/share/man/man5/pulse-client.conf.5 mv {"$pkgdir","$srcdir/libpulse"}/usr/share/vala ### Split modules mkdir -p "$srcdir"/{gconf,zeroconf,lirc,jack,bluetooth,equalizer}/usr/lib/pulse-$pkgver/modules \ "$srcdir"/{gconf/usr/lib/pulse,equalizer/usr/bin} mv {"$pkgdir","$srcdir/gconf"}/usr/lib/pulse-$pkgver/modules/module-gconf.so mv {"$pkgdir","$srcdir/gconf"}/usr/lib/pulse/gconf-helper mv "$pkgdir"/usr/lib/pulse-$pkgver/modules/{libavahi-wrap,module-{zeroconf-{publish,discover},raop-discover}}.so \ "$srcdir/zeroconf/usr/lib/pulse-$pkgver/modules" mv {"$pkgdir","$srcdir/lirc"}/usr/lib/pulse-$pkgver/modules/module-lirc.so mv "$pkgdir"/usr/lib/pulse-$pkgver/modules/module-jack{-sink,-source,dbus-detect}.so \ "$srcdir/jack/usr/lib/pulse-$pkgver/modules" mv "$pkgdir"/usr/lib/pulse-$pkgver/modules/{libbluez5-util,module-{bluetooth-{discover,policy},bluez5-{discover,device}}}.so \ "$srcdir/bluetooth/usr/lib/pulse-$pkgver/modules" mv {"$pkgdir","$srcdir/equalizer"}/usr/lib/pulse-$pkgver/modules/module-equalizer-sink.so mv {"$pkgdir","$srcdir/equalizer"}/usr/bin/qpaeq } package_libpulse() { pkgdesc="$pkgdesc (client library)" depends=(dbus libasyncns libcap libxtst libsm libsndfile json-c systemd) backup=(etc/pulse/client.conf) mv "$srcdir"/libpulse/* "$pkgdir" } package_pulseaudio-gconf(){ pkgdesc="GConf support for PulseAudio" depends=(pulseaudio gconf) mv "$srcdir"/gconf/* "$pkgdir" } package_pulseaudio-zeroconf(){ pkgdesc="Zeroconf support for PulseAudio" depends=(pulseaudio avahi openssl) mv "$srcdir"/zeroconf/* "$pkgdir" } package_pulseaudio-lirc(){ pkgdesc="IR (lirc) support for PulseAudio" depends=(pulseaudio lirc) mv "$srcdir"/lirc/* "$pkgdir" } package_pulseaudio-jack(){ pkgdesc="Jack support for PulseAudio" depends=(pulseaudio jack2) mv "$srcdir"/jack/* "$pkgdir" } package_pulseaudio-bluetooth(){ pkgdesc="Bluetooth support for PulseAudio" depends=(pulseaudio bluez bluez-libs) mv "$srcdir"/bluetooth/* "$pkgdir" } package_pulseaudio-equalizer(){ pkgdesc="Equalizer for PulseAudio" depends=(pulseaudio python-pyqt4 fftw) license=(AGPL3) mv "$srcdir"/equalizer/* "$pkgdir" }