summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--user/ladspa/APKBUILD44
-rw-r--r--user/ladspa/fallback-ladspa-path.patch27
-rw-r--r--user/ladspa/fix-memleak-in-plugin-scanning.patch11
3 files changed, 82 insertions, 0 deletions
diff --git a/user/ladspa/APKBUILD b/user/ladspa/APKBUILD
new file mode 100644
index 000000000..dfadd5e2b
--- /dev/null
+++ b/user/ladspa/APKBUILD
@@ -0,0 +1,44 @@
+# Contributor: Carlo Landmeter <clandmeter@gmail.com>
+# Maintainer: William Pitcock <nenolod@dereferenced.org>
+pkgname=ladspa
+pkgver=1.13
+pkgrel=3
+pkgdesc="Linux Audio Developer's Simple Plug-in API, examples and tools"
+url="http://www.ladspa.org/"
+arch="all"
+options="!check" # Currently fails on armhf and aarch64.
+license="LGPL-2.1-only"
+depends=""
+makedepends=""
+subpackages="$pkgname-dev"
+source="https://github.com/OpenMandrivaAssociation/ladspa/raw/master/ladspa_sdk_1.13.tgz
+ fallback-ladspa-path.patch
+ fix-memleak-in-plugin-scanning.patch
+ "
+builddir="$srcdir/ladspa_sdk/src"
+
+prepare() {
+ default_prepare
+ sed -i 's/mkdirhier/mkdir -p/' makefile
+}
+
+build() {
+ cd "$builddir"
+ make targets
+}
+
+check() {
+ cd "$builddir"
+ make test
+}
+
+package() {
+ cd "$builddir"
+ make INSTALL_PLUGINS_DIR="$pkgdir/usr/lib/ladspa/" \
+ INSTALL_INCLUDE_DIR="$pkgdir/usr/include/" \
+ INSTALL_BINARY_DIR="$pkgdir/usr/bin/" install
+}
+
+sha512sums="a1dab807fda58e08869d3f519be5fa91c394690eb13006fbe7f20b332548e4676b32b01273f5695bf36c8da72190c07618662a76d50f991b3f05068ac2b346ef ladspa_sdk_1.13.tgz
+00891ac5d1e3ca17cf7d99e7d894b50f9a7df8eea80cd791593cf637bf9f4f7e658d0124c69aa32bb90a14150737a38cb48552c7991f3f2b6674b3634440504a fallback-ladspa-path.patch
+1a96b24a47c2c82f7c2f66e2ee711f0ecbed9b03260562b72ced1bd4c8f0e518d15fc7c15951b95b1999e3dae1723b855fd3431a9795279f8a88ad68900e48e7 fix-memleak-in-plugin-scanning.patch"
diff --git a/user/ladspa/fallback-ladspa-path.patch b/user/ladspa/fallback-ladspa-path.patch
new file mode 100644
index 000000000..a0a3c43a3
--- /dev/null
+++ b/user/ladspa/fallback-ladspa-path.patch
@@ -0,0 +1,27 @@
+diff -upr ladspa_sdk.orig/src/load.c ladspa_sdk/src/load.c
+--- ./load.c 2012-09-26 07:37:24.000000000 +0300
++++ ./load.c 2012-09-26 07:38:58.000000000 +0300
+@@ -54,6 +54,8 @@ dlopenLADSPA(const char * pcFilename, in
+ to search. */
+
+ pcLADSPAPath = getenv("LADSPA_PATH");
++ if (! pcLADSPAPath)
++ pcLADSPAPath = "/usr/lib/ladspa";
+
+ if (pcLADSPAPath) {
+
+diff -upr ladspa_sdk.orig/src/search.c ladspa_sdk/src/search.c
+--- ./search.c 2012-09-26 07:37:24.000000000 +0300
++++ ./search.c 2012-09-26 07:38:46.000000000 +0300
+@@ -99,10 +99,7 @@ LADSPAPluginSearch(LADSPAPluginSearchCal
+
+ pcLADSPAPath = getenv("LADSPA_PATH");
+ if (!pcLADSPAPath) {
+- fprintf(stderr,
+- "Warning: You do not have a LADSPA_PATH "
+- "environment variable set.\n");
+- return;
++ pcLADSPAPath = "/usr/lib/ladspa";
+ }
+
+ pcStart = pcLADSPAPath;
diff --git a/user/ladspa/fix-memleak-in-plugin-scanning.patch b/user/ladspa/fix-memleak-in-plugin-scanning.patch
new file mode 100644
index 000000000..bc8ef7c4b
--- /dev/null
+++ b/user/ladspa/fix-memleak-in-plugin-scanning.patch
@@ -0,0 +1,11 @@
+--- ./search.c.orig 2008-11-07 00:38:18.000000000 +0100
++++ ./search.c 2008-11-07 00:50:51.000000000 +0100
+@@ -83,6 +83,8 @@
+ dlclose(pcFilename);
+ free(pcFilename);
+ }
++ } else {
++ free(pcFilename);
+ }
+ }
+ }