202 lines
5.5 KiB
Bash
202 lines
5.5 KiB
Bash
# POWER Maintainer: Alexander Baldeck <alex.bldck@gmail.com>
|
|
# Maintainer: David Runge <dvzrv@archlinux.org>
|
|
# Contributor: Ray Rashif <schiv@archlinux.org>
|
|
# Contributor: SpepS <dreamspepser at yahoo dot it>
|
|
|
|
pkgname=ardour
|
|
pkgver=8.6
|
|
pkgrel=1.1
|
|
pkgdesc="Professional-grade digital audio workstation"
|
|
arch=(x86_64 powerpc64le powerpc64 powerpc riscv64)
|
|
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=('8e7c52866a1084484e7ba6089334199d4f2c0f5e221f8b8ab4fed49ffdfbc3aef747ecbf7abd9d25355fc9ed270b7f7ee9f8250e7b5c59a6e140b7d59469bfc6'
|
|
'94b681f989e834f5de25ce87da9c174b11d90617063f8c96147d7eb470391b35f6d54b85de16da8d963cacb01b50d1c1fab0fddd18eb3b086fe17124ecfa4f65'
|
|
'a3da14925bc25d8a57ba3e137c4b2b04010054667ac4ae2aec116ce6c157b03c9dd76bf4d73c313022282362d19b91683f062d6ab2ee0c73a576d3fa6272bd1d')
|
|
b2sums=('afdc958c7a827fd6dd965900fb84aa32d570bc003d1e00213a2e26e56ca74dff522d32e1170bd113527caa5ea237898e28dc804a0da2ee47ff1b02f5f004ef2a'
|
|
'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
|
|
--cxx11
|
|
--freedesktop
|
|
--no-phone-home
|
|
--optimize
|
|
--ptformat
|
|
--use-external-libs
|
|
--with-backends="alsa,dummy,jack,pulseaudio"
|
|
)
|
|
|
|
case "${CARCH}" in
|
|
powerpc)
|
|
export CFLAGS+=' -latomic'
|
|
export CXXFLAGS+=' -latomic'
|
|
export LDFLAGS+=' -latomic'
|
|
;;
|
|
esac
|
|
|
|
cd $pkgname
|
|
export LINKFLAGS="$LDFLAGS"
|
|
./waf configure "${waf_configure_options[@]}" #FIXME: using included waf, 2.1.1 package isn't compatible
|
|
./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/"
|
|
)
|
|
|
|
# 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:
|