summaryrefslogtreecommitdiff
path: root/extra/lilv
diff options
context:
space:
mode:
Diffstat (limited to 'extra/lilv')
-rw-r--r--extra/lilv/PKGBUILD39
-rw-r--r--extra/lilv/lilvmm.patch40
2 files changed, 64 insertions, 15 deletions
diff --git a/extra/lilv/PKGBUILD b/extra/lilv/PKGBUILD
index 6036ddd5a..9b58dff47 100644
--- a/extra/lilv/PKGBUILD
+++ b/extra/lilv/PKGBUILD
@@ -3,37 +3,46 @@
# Contributor: speps <speps at aur dot archlinux dot org>
pkgname=lilv
-pkgver=0.14.4
+pkgver=0.16.0
pkgrel=1
-pkgdesc="A library to make the use of LV2 plugins as simple as possible for applications."
-arch=(i686 x86_64 mips64el)
-url="http://drobilla.net/software/$pkgname/"
+pkgdesc="A library to make the use of LV2 plugins as simple as possible for applications"
+arch=('i686' 'x86_64' 'mips64el')
+url="http://drobilla.net/software/lilv/"
license=('custom:ISC')
-depends=('python2' 'sratom' 'jack')
+depends=('python2' 'sratom>=0.4.2' 'jack')
makedepends=('swig')
optdepends=('bash-completion: auto-complete words')
-source=("http://download.drobilla.net/$pkgname-$pkgver.tar.bz2")
-md5sums=('891595410eeb68322cf875286f96fccf')
+source=("http://download.drobilla.net/$pkgname-$pkgver.tar.bz2"
+ 'lilvmm.patch')
+md5sums=('12eb71f2b5b8a68e15c1c816896bcb9f'
+ 'd34207f8ca3586650ad7c50284ffb3e0')
build() {
cd "$srcdir/$pkgname-$pkgver"
+ # fix UI API error
+ # backport of http://dev.drobilla.net/changeset/5092
+ patch -Np2 -i "$srcdir/lilvmm.patch"
+
+ # pick up python2 even when python3 exists
+ # (the build system has flaky support for python3)
export PYTHON="/usr/bin/python2"
- # remove ldconfig
+ # remove ldconfig --speps
sed -i "/ldconfig/d" wscript
- python2 ./waf configure --prefix=/usr \
- --mandir=/usr/share/man \
- --configdir=/etc \
- --dyn-manifest \
- --bindings
- python2 ./waf
+ python2 waf configure --prefix=/usr \
+ --configdir=/etc \
+ --dyn-manifest \
+ --bindings
+
+ python2 waf build $MAKEFLAGS
}
package() {
cd "$srcdir/$pkgname-$pkgver"
- DESTDIR="$pkgdir" python2 ./waf install
+
+ python2 waf install --destdir="$pkgdir"
# license
install -Dm644 COPYING \
diff --git a/extra/lilv/lilvmm.patch b/extra/lilv/lilvmm.patch
new file mode 100644
index 000000000..410aac5e3
--- /dev/null
+++ b/extra/lilv/lilvmm.patch
@@ -0,0 +1,40 @@
+Index: trunk/lilv/lilv/lilvmm.hpp
+===================================================================
+--- trunk/lilv/lilv/lilvmm.hpp (revision 4975)
++++ trunk/lilv/lilv/lilvmm.hpp (revision 5092)
+@@ -48,4 +48,9 @@
+ inline RT name(T1 a1, T2 a2) { \
+ return lilv_ ## prefix ## _ ## name(me, a1, a2); \
++ }
++
++#define LILV_WRAP3(RT, prefix, name, T1, a1, T2, a2, T3, a3) \
++ inline RT name(T1 a1, T2 a2, T3 a3) { \
++ return lilv_ ## prefix ## _ ## name(me, a1, a2, a3); \
+ }
+
+@@ -138,4 +143,25 @@
+ LILV_WRAP1(bool, nodes, contains, const Node, node);
+ LILV_WRAP0(Node, nodes, get_first);
++};
++
++struct UI {
++ inline UI(const LilvUI* c_obj) : me(c_obj) {}
++ LILV_WRAP_CONVERSION(const LilvUI);
++
++ LILV_WRAP0(const LilvNode*, ui, get_uri);
++ LILV_WRAP0(const LilvNode*, ui, get_bundle_uri);
++ LILV_WRAP0(const LilvNode*, ui, get_binary_uri);
++ LILV_WRAP0(const LilvNodes*, ui, get_classes);
++ /*LILV_WRAP3(bool, ui, is_supported,
++ LilvUISupportedFunc, supported_func,
++ const LilvNode*, container_type,
++ const LilvNode**, ui_type);*/
++ LILV_WRAP1(bool, ui, is_a, const LilvNode*, class_uri);
++
++ const LilvUI* me;
++};
++
++struct UIs {
++ LILV_WRAP_COLL(UIs, UI, uis);
+ };
+