# Maintainer: David Runge <dvzrv@archlinux.org>
# Contributor: Ray Rashif <schiv@archlinux.org>
# Contributor: SpepS <dreamspepser at yahoo dot it>
pkgname=ardour
pkgver=8.11
pkgrel=2
pkgdesc="Professional-grade digital audio workstation"
arch=(x86_64 'armv7h')
url="https://ardour.org/"
license=(
CC0-1.0
GPL-2.0-or-later
GPL-3.0-or-later
MIT
)
groups=(pro-audio)
depends=(
cairo
gcc-libs
glibc
hicolor-icon-theme
libsigc++
libx11
libxext
sh
taglib
)
makedepends=(
aubio
boost
cairomm
cppunit
curl
dbus
doxygen
fftw
flac
fluidsynth
fontconfig
freetype2
git
glib2
glibmm
graphviz
hidapi
itstool
# jack
libarchive
liblo
liblrdf
libltc
libogg
libpng
libpulse
libsamplerate
libsndfile
libusb
libwebsockets
libxml2
lilv
lv2
pango
pangomm
readline
rubberband
serd
sord
sratom
unzip
vamp-plugin-sdk
waf
)
optdepends=(
'harvid: for video timeline and MP3 export'
'new-session-manager: for session management'
'xjadeo: for video monitoring'
)
provides=(
ladspa-host
lv2-host
vamp-host
vst-host
vst3-host
)
source=(
$pkgname::git+https://github.com/$pkgname/$pkgname.git#tag=$pkgver
$pkgname-midi-$pkgver.zip::http://stuff.ardour.org/loops/ArdourBundledMedia.zip
$pkgname-7.0-re-vendor_qm-dsp.patch
)
noextract=($pkgname-midi-$pkgver.zip)
sha512sums=('SKIP'
'94b681f989e834f5de25ce87da9c174b11d90617063f8c96147d7eb470391b35f6d54b85de16da8d963cacb01b50d1c1fab0fddd18eb3b086fe17124ecfa4f65'
'a3da14925bc25d8a57ba3e137c4b2b04010054667ac4ae2aec116ce6c157b03c9dd76bf4d73c313022282362d19b91683f062d6ab2ee0c73a576d3fa6272bd1d')
b2sums=('SKIP'
'e31be6b51a217e2f7f799aa1d6e8c3cd024d80ab2d8d4371496a2b8bf0215749979217b565909841a346d6b3128fbfd674d2fae64b9fe741a5b418cd184c23be'
'73845adce9a48938cd7aef5fbc65f492e470de316620d278365d247c80caef44531e850fbd3d2f5de65a8562e67aabfd982c938439bd3670726a27bc003be017')
pkgver() {
cd $pkgname
git describe --tags --abbrev=7 | sed 's/\([^-]*-g\)/r\1/;s/-/./g'
}
prepare() {
# using vendored version of qm-dsp because qm-dsp >= 1.8.0 is not compatible
patch -Np1 -d $pkgname -i ../$pkgname-7.0-re-vendor_qm-dsp.patch
cd $pkgname
# unsetting gtk2 rc (FS#54389)
sed -e '8iexport GTK2_RC_FILES=/dev/null' -i gtk2_ardour/ardour.sh.in
# Fixes to use system waf:
# making sure, that subdirectories can be picked up with local includes
touch __init__.py
# making ancient 'misc.py' include available to system installed waf
sed -e "s/('misc')/('misc', tooldir='tools')/" \
-i {gtk2_ardour,headless,luasession,session_utils,libs/fst}/wscript
# make custom 'autowaf' include compatible with system installed waf
find . -type f \
-iname "*wscript*" \
-exec sed -e 's/from waflib.extras import autowaf/from tools import autowaf/g' \
-e 's/import waflib.extras.autowaf/from tools import autowaf/g' \
-i {} \;
}
build() {
local waf_configure_options=(
--prefix=/usr
--configdir=/etc
--cxx17
--freedesktop
--no-phone-home
--optimize
--ptformat
--use-external-libs
--with-backends="alsa,dummy,pulseaudio"
)
cd $pkgname
export LINKFLAGS="$LDFLAGS"
./waf configure "${waf_configure_options[@]}"
./waf build -v
}
package() {
depends+=(
alsa-lib libasound.so
aubio libaubio.so
cairomm libcairomm-1.0.so
curl libcurl.so
dbus
# libdbus-1.so
fftw libfftw3f.so libfftw3f_threads.so
fluidsynth libfluidsynth.so
fontconfig libfontconfig.so
glib2 libglib-2.0.so libgobject-2.0.so
glibmm libglibmm-2.4.so
# jack libjack.so
libarchive
# libarchive.so
liblo liblo.so
libpulse libpulse.so
liblrdf liblrdf.so
libltc libltc.so
libpng libpng16.so
libsamplerate libsamplerate.so
libsndfile libsndfile.so
libusb libusb-1.0.so
libwebsockets libwebsockets.so
libxml2 libxml2.so
lilv liblilv-0.so
pango libpango-1.0.so libpangocairo-1.0.so libpangoft2-1.0.so
pangomm libpangomm-1.4.so
readline libreadline.so
rubberband librubberband.so
vamp-plugin-sdk libvamp-hostsdk.so libvamp-sdk.so
)
(
cd $pkgname
./waf i18n --destdir="$pkgdir"
./waf install --destdir="$pkgdir"
install -vDm 644 $pkgname.1 -t "$pkgdir/usr/share/man/man1/"
mv "$pkgdir"/usr/share/{appdata,metainfo}
)
# installation of MIDI files is a bit of a horrorshow, as upstream is not flexible about tarball naming, etc.
install -vdm 755 "$pkgdir/usr/share/$pkgname${pkgver/.*/}/media/"
unzip $pkgname-midi-$pkgver.zip -d "$pkgdir/usr/share/$pkgname${pkgver/.*/}/media/"
install -vdm 755 "$pkgdir/usr/share/licenses/$pkgname/"
ln -s "/usr/share/$pkgname${pkgver/.*/}/media/MIDI Beats/LICENSE" "$pkgdir/usr/share/licenses/$pkgname/LICENSE.beats"
ln -s "/usr/share/$pkgname${pkgver/.*/}/media/MIDI Chords/LICENSE" "$pkgdir/usr/share/licenses/$pkgname/LICENSE.chords"
ln -s "/usr/share/$pkgname${pkgver/.*/}/media/MIDI Progressions/LICENSE" "$pkgdir/usr/share/licenses/$pkgname/LICENSE.progressions"
}
# vim:set ts=2 sw=2 et: