summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorspider-mario2020-09-20 10:25:29 +0200
committerspider-mario2020-09-20 10:25:29 +0200
commit4a36d3e81785ac007a69f7b9da4ec3072cc5e501 (patch)
treee48c1749f66198468c984047823336818cd6a90f
parent296ab7a0065b19313f9fbfbad323b7a411fb6934 (diff)
downloadaur-4a36d3e81785ac007a69f7b9da4ec3072cc5e501.tar.gz
Cherry-pick 22a5f8da76c16c47c3814eedaec8f9fe0ff4248b
-rw-r--r--.SRCINFO4
-rw-r--r--PKGBUILD9
-rw-r--r--file-picker.patch51
3 files changed, 60 insertions, 4 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 4a5a0d576ba1..a2a2dbdf8525 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = zyn-fusion
pkgdesc = ZynAddSubFX with a new interactive UI
pkgver = 3.0.5
- pkgrel = 2
+ pkgrel = 3
url = http://zynaddsubfx.sourceforge.net/zyn-fusion.html
arch = i686
arch = x86_64
@@ -27,10 +27,12 @@ pkgbase = zyn-fusion
source = git+https://github.com/mruby-zest/mruby-zest-build.git#tag=3.0.5
source = BashCompletion.cmake
source = gcc10.patch
+ source = file-picker.patch
b2sums = SKIP
b2sums = SKIP
b2sums = 14be130e88c2e1d2b8312ca9f6d426834a26360594ed9ed22222a98603e1d5a51e86450911c76563545f55a80952c7dfb05a251e36d59684527caccdf976c474
b2sums = 1f41e7a0a50f1f11a4853bd8d8daea5f4510b567381768a8bc61e15082aa668f924e3d6787cbb93a16eee2da2a34a5d20f18e69399718166d6b9d3f47b648987
+ b2sums = d99df6908b1af24d018726b6b737f13cbcd153deb5667e03ea3e138f22c83c237f70921dec58e739486acb3a488965858cb60ab140e00e30f6fb80833af1401d
pkgname = zyn-fusion
diff --git a/PKGBUILD b/PKGBUILD
index 5987cf349c6c..1d5a69088acf 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,7 +1,7 @@
# Maintainer: spider-mario <spidermario@free.fr>
pkgname=zyn-fusion
pkgver=3.0.5
-pkgrel=2
+pkgrel=3
pkgdesc="ZynAddSubFX with a new interactive UI"
arch=('i686' 'x86_64')
url="http://zynaddsubfx.sourceforge.net/zyn-fusion.html"
@@ -16,17 +16,20 @@ conflicts=('zynaddsubfx')
source=("git+https://github.com/zynaddsubfx/zynaddsubfx.git#tag=$pkgver"
"git+https://github.com/mruby-zest/mruby-zest-build.git#tag=$pkgver"
'BashCompletion.cmake'
- 'gcc10.patch')
+ 'gcc10.patch'
+ 'file-picker.patch')
b2sums=('SKIP'
'SKIP'
'14be130e88c2e1d2b8312ca9f6d426834a26360594ed9ed22222a98603e1d5a51e86450911c76563545f55a80952c7dfb05a251e36d59684527caccdf976c474'
- '1f41e7a0a50f1f11a4853bd8d8daea5f4510b567381768a8bc61e15082aa668f924e3d6787cbb93a16eee2da2a34a5d20f18e69399718166d6b9d3f47b648987')
+ '1f41e7a0a50f1f11a4853bd8d8daea5f4510b567381768a8bc61e15082aa668f924e3d6787cbb93a16eee2da2a34a5d20f18e69399718166d6b9d3f47b648987'
+ 'd99df6908b1af24d018726b6b737f13cbcd153deb5667e03ea3e138f22c83c237f70921dec58e739486acb3a488965858cb60ab140e00e30f6fb80833af1401d')
prepare() {
cd zynaddsubfx
git submodule update --init
# The original script does not honor DESTDIR. Replace it with a much more straightforward implementation.
cp "$srcdir"/BashCompletion.cmake cmake/BashCompletion.cmake
+ git apply -3 "$srcdir"/file-picker.patch
cd ../mruby-zest-build
git submodule update --init
diff --git a/file-picker.patch b/file-picker.patch
new file mode 100644
index 000000000000..a8a74d164b61
--- /dev/null
+++ b/file-picker.patch
@@ -0,0 +1,51 @@
+diff --git a/src/Misc/MiddleWare.cpp b/src/Misc/MiddleWare.cpp
+index ea7f18ca..9781a179 100644
+--- a/src/Misc/MiddleWare.cpp
++++ b/src/Misc/MiddleWare.cpp
+@@ -1229,6 +1229,19 @@ void save_cb(const char *msg, RtData &d)
+ file.c_str(), request_time);
+ }
+
++void
++gcc_10_1_0_is_dumb(const std::vector<std::string> &files,
++ const int N,
++ char *types,
++ rtosc_arg_t *args)
++{
++ types[N] = 0;
++ for(int i=0; i<N; ++i) {
++ args[i].s = files[i].c_str();
++ types[i] = 's';
++ }
++}
++
+ /*
+ * BASE/part#/kititem#
+ * BASE/part#/kit#/adpars/voice#/oscil/\*
+@@ -1373,11 +1386,8 @@ static rtosc::Ports middwareSnoopPorts = {
+ const int N = files.size();
+ rtosc_arg_t *args = new rtosc_arg_t[N];
+ char *types = new char[N+1];
+- types[N] = 0;
+- for(int i=0; i<N; ++i) {
+- args[i].s = files[i].c_str();
+- types[i] = 's';
+- }
++ string *data = files.data();
++ gcc_10_1_0_is_dumb(files, N, types, args);
+
+ d.replyArray(d.loc, types, args);
+ delete [] types;
+@@ -1392,11 +1402,7 @@ static rtosc::Ports middwareSnoopPorts = {
+ const int N = files.size();
+ rtosc_arg_t *args = new rtosc_arg_t[N];
+ char *types = new char[N+1];
+- types[N] = 0;
+- for(int i=0; i<N; ++i) {
+- args[i].s = files[i].c_str();
+- types[i] = 's';
+- }
++ gcc_10_1_0_is_dumb(files, N, types, args);
+
+ d.replyArray(d.loc, types, args);
+ delete [] types;