core/jack2/PKGBUILD
2014-01-07 12:27:48 +00:00

108 lines
2.6 KiB
Bash

pkgbase=jack2
pkgname=('jack2' 'jack2-dbus')
_tarname=jack2-95a1162d6aecc91882e4d8b01ba7fb12f6d29d1c
pkgver=1.9.9.5
pkgrel=4
arch=('x86_64')
url="http://jackaudio.org/"
backup=(etc/security/limits.d/99-audio.conf)
license=('GPL')
makedepends=('python2-dbus' 'libffado' 'celt' 'opus' 'libsamplerate')
source=("http://chakra.sourceforge.net/sources/jack2/jack2.tar.xz"
'99-audio.conf'
'40-hpet-permissions.rules')
md5sums=('dea04856e7483f257da8ef3f1bea01ce'
'4d928a76e3f3d77d037c42ab75ac0f0b'
'23eba69d2dbbb800f68176e5d38b9af5')
_isbuild() {
printf "%s\n" ${pkgname[@]} | grep -qx $1
}
_pyfix() {
sed -i 's:bin/env python:bin/env python2:' \
"$pkgdir/usr/bin/jack_control"
}
_wafconf() {
python2 waf configure --prefix=/usr \
--alsa \
--firewire $@
}
prepare() {
cd "$srcdir"
# we may do 2 different builds
cp -r $_tarname $_tarname-dbus
}
build() {
cd "$srcdir"
# mixed dbus/classic build
if _isbuild jack2; then
cd $_tarname
msg2 "Running Mixed D-Bus/Classic build"
_wafconf --classic --dbus
python2 waf build $MAKEFLAGS
cd ..
fi
# dbus-ONLY build
if _isbuild jack2-dbus; then
cd $_tarname-dbus
msg2 "Running D-Bus-only build"
_wafconf --dbus
python2 waf build $MAKEFLAGS
cd ..
fi
}
package_jack2() {
! _isbuild jack2 && return 0
pkgdesc="The next-generation JACK with SMP support"
depends=('libsamplerate' 'celt' 'opus' 'libffado')
optdepends=('python2-dbus: jack_control')
conflicts=('jack')
provides=('jack' 'jackmp' 'jackdmp' 'jackdbus')
cd "$srcdir/$_tarname"
python2 waf install --destdir="$pkgdir"
# fix for major python transition
_pyfix
# configure realtime access/scheduling
# see https://bugs.archlinux.org/task/26343
install -Dm644 "$srcdir/99-audio.conf" \
"$pkgdir/etc/security/limits.d/99-audio.conf"
install -Dm644 "$srcdir/40-hpet-permissions.rules" \
"$pkgdir/usr/lib/udev/rules.d/40-hpet-permissions.rules"
}
package_jack2-dbus() {
! _isbuild jack2-dbus && return 0
pkgdesc="The next-generation JACK with SMP support (for D-BUS interaction only)"
depends=('libsamplerate' 'celt' 'opus' 'libffado')
optdepends=('python2-dbus: jack_control')
conflicts=('jack' 'jack2')
provides=('jack' 'jack2' 'jackmp' 'jackdmp' 'jackdbus')
cd "$srcdir/$_tarname-dbus"
python2 waf install --destdir="$pkgdir"
_pyfix
install -Dm644 "$srcdir/99-audio.conf" \
"$pkgdir/etc/security/limits.d/99-audio.conf"
install -Dm644 "$srcdir/40-hpet-permissions.rules" \
"$pkgdir/usr/lib/udev/rules.d/40-hpet-permissions.rules"
}