aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFrancesco Camuffo <dev@fmac.xyz>2022-03-23 22:32:48 +0000
committerpsykose <alice@ayaya.dev>2022-03-23 23:32:48 +0100
commit133f1e2d7df405547fa08e94748775789b33ad46 (patch)
tree2502278cbf2a649d1bb2680a9a10c801af93f942
parent5483162bc6dc827fb764214f7e21f197b83cb311 (diff)
downloadaports-133f1e2d7df405547fa08e94748775789b33ad46.tar.gz
aports-133f1e2d7df405547fa08e94748775789b33ad46.tar.bz2
aports-133f1e2d7df405547fa08e94748775789b33ad46.tar.xz
testing/faust: new aport
https://faust.grame.fr Functional programming language for realtime audio signal processing
-rw-r--r--testing/faust/APKBUILD92
-rw-r--r--testing/faust/faust-musl-stacktrace.patch16
-rw-r--r--testing/faust/faust-tests-old-libraries.patch35
3 files changed, 143 insertions, 0 deletions
diff --git a/testing/faust/APKBUILD b/testing/faust/APKBUILD
new file mode 100644
index 0000000000..01f1ca90b7
--- /dev/null
+++ b/testing/faust/APKBUILD
@@ -0,0 +1,92 @@
+# Contributor: Francesco Camuffo <dev@fmac.xyz>
+# Maintainer: Francesco Camuffo <dev@fmac.xyz>
+pkgname=faust
+pkgver=2.37.3
+pkgrel=0
+pkgdesc="Functional programming language for realtime audio signal processing"
+url="https://faust.grame.fr"
+arch="all !armhf !armv7" # ftbfs
+license="GPL-2.0-or-later"
+checkdepends="bash"
+makedepends="
+ cmake
+ libexecinfo-dev
+ libmicrohttpd-dev
+ libsndfile-dev
+ llvm-dev
+ samurai
+ "
+subpackages="
+ $pkgname-tools
+ $pkgname-static
+ $pkgname-doc
+ $pkgname-dev
+ $pkgname-vim::noarch
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/grame-cncm/faust/releases/download/$pkgver/faust-$pkgver.tar.gz
+ faust-musl-stacktrace.patch
+ faust-tests-old-libraries.patch
+ "
+
+build() {
+ cmake -B "$pkgname"-build \
+ -G Ninja \
+ -S build \
+ -C build/backends/all.cmake \
+ -C build/targets/all.cmake \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DINCLUDE_DYNAMIC=ON \
+ -DINCLUDE_STATIC=ON \
+ -DINCLUDE_ITP=ON \
+ -Wno-dev
+ VERBOSE=1 cmake --build "$pkgname"-build
+ make VERBOSE=1 -C tools/sound2faust
+}
+
+check() {
+ make interp -C tests/compile-tests
+}
+
+package() {
+ DESTDIR="$pkgdir" cmake --install "$pkgname"-build
+ make VERBOSE=1 PREFIX=/usr DESTDIR="$pkgdir" install -C tools/sound2faust
+
+ # remove support for platforms not likely wanted
+ rm -rvf "$pkgdir"/usr/bin/faust2au \
+ "$pkgdir"/usr/lib/ios-libsndfile.a \
+ "$pkgdir"/usr/share/faust/AU \
+ "$pkgdir"/usr/share/faust/android \
+ "$pkgdir"/usr/share/faust/iOS \
+ "$pkgdir"/usr/share/faust/smartKeyboard
+ # rename generically named usage script
+ mv "$pkgdir"/usr/bin/usage.sh "$pkgdir"/usr/bin/faust-usage.sh
+}
+
+dev() {
+ pkgdesc="$pkgdesc (development files)"
+ amove usr/include/* \
+ usr/lib/*.so
+}
+
+tools() {
+ pkgdesc="$pkgdesc (tools)"
+ amove usr/bin/encoderunitypackage \
+ usr/bin/faust2* \
+ usr/bin/filename2ident \
+ usr/bin/sound2*
+}
+
+vim() {
+ pkgdesc="$pkgdesc (vim syntax)"
+ install_if="vim $pkgname=$pkgver-r$pkgrel"
+
+ cd "$builddir"/syntax-highlighting
+ install -Dm644 faust.vim -t "$subpkgdir"/usr/share/vim/vimfiles/syntax/
+}
+
+sha512sums="
+29c27c1d4b71f63e5a42abdb1557e88ac9d623242a85df16478756a7bcbc3fe78466ace1280ea6a3cd04c979201e52a703f7be53b8a047dcc1f8fa7e034ef26d faust-2.37.3.tar.gz
+f3e07bdd26ab8f0ffbf0c0dfbf8141facc07d2db05346f3b982faca613aa5ecad8986683db8d49caed720d58b183b215d6e1c4ceef069f29f41bcfa699ad5f28 faust-musl-stacktrace.patch
+fe0b800809ea1fcb4fd44e306eff7f01b9316ddc3406bdc52f0e783a3710b5b8e6e05a5925766e4fd73666cc6ca9f42027f608c7f7dbe44436b28e1787703595 faust-tests-old-libraries.patch
+"
diff --git a/testing/faust/faust-musl-stacktrace.patch b/testing/faust/faust-musl-stacktrace.patch
new file mode 100644
index 0000000000..8472a9e599
--- /dev/null
+++ b/testing/faust/faust-musl-stacktrace.patch
@@ -0,0 +1,16 @@
+https://github.com/void-linux/void-packages/blob/ebf9ad105986ec27a9d8a794318df3016df2ee13/srcpkgs/faust/patches/faust-musl-stacktrace.patch
+
+--- a/compiler/errors/errormsg.cpp-old 2019-12-22 19:47:17.694670614 +0100
++++ b/compiler/errors/errormsg.cpp 2019-12-22 19:48:25.145673133 +0100
+@@ -43,9 +43,11 @@
+ gGlobal->printCompilationOptions(str);
+ }
+ str << ")\n";
++#ifdef __GLIBC__
+ #ifndef EMCC
+ stacktrace(str, 20);
+ #endif
++#endif
+ throw faustexception(str.str());
+ }
+ }
diff --git a/testing/faust/faust-tests-old-libraries.patch b/testing/faust/faust-tests-old-libraries.patch
new file mode 100644
index 0000000000..26f3d53e0e
--- /dev/null
+++ b/testing/faust/faust-tests-old-libraries.patch
@@ -0,0 +1,35 @@
+From 974d4da02b525261d934a9eb70e41a1c4ee309c3 Mon Sep 17 00:00:00 2001
+From: Stephane Letz <letz@grame.fr>
+Date: Fri, 7 Jan 2022 18:27:52 +0100
+Subject: [PATCH] Correct compile-tests to be used even if faust is not
+ installed.
+
+---
+ tests/compile-tests/Make.lang | 7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+diff --git a/tests/compile-tests/Make.lang b/tests/compile-tests/Make.lang
+index 3e27a69ac..7fd5ffa9b 100644
+--- a/tests/compile-tests/Make.lang
++++ b/tests/compile-tests/Make.lang
+@@ -13,7 +13,8 @@ MAKE ?= make
+
+ SAMPLESROOT := ../..
+ REGRESSION := ..
+-FAUSTLIBS ?= ../../libraries
++FAUSTLIBS1 ?= ../../libraries
++FAUSTLIBS2 ?= ../../libraries/old
+
+ FAUSTOPTIONS ?=
+ outdir ?= cpp
+@@ -75,8 +76,8 @@ $(version)/$(outdir):
+ # generic rule rule for $(lang) output
+ $(version)/$(outdir)/%.$(ext): $(SAMPLESROOT)/%.dsp
+ @[ -d $(@D) ] || mkdir -p $(@D)
+- $(FAUST) -lang $(lang) -I $(FAUSTLIBS) $(FAUSTOPTIONS) $< -o $@
++ $(FAUST) -lang $(lang) -I $(FAUSTLIBS1) -I $(FAUSTLIBS2) $(FAUSTOPTIONS) $< -o $@
+
+ $(version)/$(outdir)/%.$(ext): $(REGRESSION)/%.dsp
+ @[ -d $(@D) ] || mkdir -p $(@D)
+- $(FAUST) -lang $(lang) -I $(FAUSTLIBS) $(FAUSTOPTIONS) $< -o $@
++ $(FAUST) -lang $(lang) -I $(FAUSTLIBS1) -I $(FAUSTLIBS2) $(FAUSTOPTIONS) $< -o $@