summaryrefslogtreecommitdiff
path: root/media-sound/zynaddsubfx
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-12-20 01:53:29 +0000
committerV3n3RiX <venerix@koprulu.sector>2023-12-20 01:53:29 +0000
commit54d0ccbac3b6fbd01dcd252ea006d4e9e62f8e6e (patch)
treefc8f42b6568c9de11a72455118288dee202ce586 /media-sound/zynaddsubfx
parent3f0a9aff8dc766c410952343d02561aab3eda2b9 (diff)
gentoo auto-resync : 20:12:2023 - 01:53:29
Diffstat (limited to 'media-sound/zynaddsubfx')
-rw-r--r--media-sound/zynaddsubfx/Manifest11
-rw-r--r--media-sound/zynaddsubfx/files/zyn-fusion-ui-3.0.6-cflags_ldflags.patch19
-rw-r--r--media-sound/zynaddsubfx/files/zyn-fusion-ui-3.0.6-libzest_location.patch11
-rw-r--r--media-sound/zynaddsubfx/files/zyn-fusion-ui-3.0.6-makefile_find.patch69
-rw-r--r--media-sound/zynaddsubfx/files/zyn-fusion-ui-3.0.6-system_wide_location.patch40
-rw-r--r--media-sound/zynaddsubfx/files/zynaddsubfx-3.0.6-docs.patch2
-rw-r--r--media-sound/zynaddsubfx/files/zynaddsubfx-3.0.6-libzest_location.patch11
-rw-r--r--media-sound/zynaddsubfx/files/zynaddsubfx-3.0.6-stdint.patch149
-rw-r--r--media-sound/zynaddsubfx/zynaddsubfx-3.0.6-r2.ebuild113
9 files changed, 384 insertions, 41 deletions
diff --git a/media-sound/zynaddsubfx/Manifest b/media-sound/zynaddsubfx/Manifest
index 5528c6e86437..85baf3f3f240 100644
--- a/media-sound/zynaddsubfx/Manifest
+++ b/media-sound/zynaddsubfx/Manifest
@@ -1,5 +1,12 @@
-AUX zynaddsubfx-3.0.6-docs.patch 500 BLAKE2B 6f6e81c4e700f42c56417f4226408bfb7b45b67999a2c15eed5871d108f88cad49bcb5ea794b34dfaded63af335351c3a376d56797234403896d4337d05bae4a SHA512 5f240dc9256b6398a8b1ae517b0efc737afd87420a263d8bab63e1e6d81d522d43fcc95b696987d489072753bc283399e9792a0d6d44c4717111dc5fa45cd809
-AUX zynaddsubfx-3.0.6-stdint.patch 1318 BLAKE2B dc35d7032723366e515d328ef26f55bc6291346f92e5fa056b2592c66f77c899efb89598d99e84b21c263ad96a1c3c8ddaee2b2b568525812c535555e083acd7 SHA512 2a39555a0481be4cfd3d094d91924aeecdede42e2a151f5b2fce81a083b33dbb8615e4a7cd782fe83981bf6fa268a71d7c00a2bfa9ca04502341ca73d36cc79d
+AUX zyn-fusion-ui-3.0.6-cflags_ldflags.patch 698 BLAKE2B a99c32abb0a3d533a66d6ad1373828ed5a9e4df344aace4f2c4c7b639b9259af7b88085a809b2cd6b6dd01f1bdf857109cd18ac50d2cc5d562984e5c7a45d84d SHA512 b1344525a149c09199b0b0ad4b4aeec41661427243029bc6e63a8ebefa3244c896f5033a85e14b3e34b649d5b3145991b2241ba6287a3169f4dd74e6432acc22
+AUX zyn-fusion-ui-3.0.6-libzest_location.patch 406 BLAKE2B 3e9fbe0b1de034b0a452087de87875c643c144d3807330db820bca5330497c7dff0c3f938a94c946cc275c9fee4804a7488af44148cb13c20f4d315f1dd23afd SHA512 29ba870c57ce429eded6d026144589e7fbb8d2db6f617f4dd6163ca60260fa4e3b0ab8a84bc6021a8d256c580bfdb77708dc497d5f4d36aaa49155a42d69bcc2
+AUX zyn-fusion-ui-3.0.6-makefile_find.patch 4224 BLAKE2B 9f0c2dd1b22e2a15cec4ab1fa7b0bcce27e9f51de2b6ae76f4edf3c452eb73023407810e93b2d7c86e2a6bd9d40db212a7396f11b2cc07879f56d70ab52e7edd SHA512 50104b01593c7e726cbd3964be393017a1721dd4e10818db416da780413933051dba13f2b87e82045583a7fb5990e35098708f4ada0545292e0707f75457f2b7
+AUX zyn-fusion-ui-3.0.6-system_wide_location.patch 2027 BLAKE2B 94d9f41e0857db86f2fe9991adba31ada2e58f923f5edd2ece3237d1c44a606f3e6b145b0faaa206432dab1b5733bb2579ddb6bb2c69159483c91af33fa6da68 SHA512 b2a71f7a3d3616748037021091422ddc49d600aaed2bbd260ce49f4a2677a8a53f2884930251fbb792468fa0679bfd74168605a50508fd1c042a311a6bed9acd
+AUX zynaddsubfx-3.0.6-docs.patch 425 BLAKE2B ba34e77df73a889992965f6adb518259d0fd4acd2bbcd9e48f2fb5d199f3d301fef383ce6fe8a8c994b92e04c21e64ecf1c8c8a95bdecf422d70562ac54632af SHA512 a9de9608d9f4bed663411551edbd1facd4ef8dddcabc2d6a831fb2175d5826cdc0ea8fbfa016fc55bb2c357312e115c40043aecd55bcbf3cbc9eb613671c6d67
+AUX zynaddsubfx-3.0.6-libzest_location.patch 446 BLAKE2B 68425cda772935e71d06977fa3e4e5a60411a0069316848698be957614d3ec681a74ae2ef894b3575bdc737fd19555e238e18d4cbffbb9720ca78b2521ccdb74 SHA512 4d5891c0e84a1570e5d861beb1ba72f9920871660226587f23c14cf4657cfcd466eda222fa73d5bc6cc7151ef0aef159784a2eb3c52ca0598cd9829bffd0a030
+AUX zynaddsubfx-3.0.6-stdint.patch 2758 BLAKE2B cbf55ba32bdcd7a0af06a418fdb6d1c0caaf8b806382d41bb4946a6d68ab89f878c40a30fb5a2f89b42118653658e7721f7fbd14f62172253aff6d282d2494e2 SHA512 8aca66bc2ee3d886d8b3741dbbf67f1b90804a7b87a3a2858a4134f3104a5ab374e3823afc4e07f5deb02c193474f7e00b536c9c87b2fe897c1db6ffd4bdbe66
+DIST zyn-fusion-ui-src-3.0.6.tar.bz2 5266884 BLAKE2B d9715c319bfd313792f550e12a47939dec665eda6ef395f8bb7a175b11f0922a4037428f99dc95fe749c40074ce8976fa9d257b6bc1e8f1feb63ca943c3bdd76 SHA512 7f195cf6a193376160441863d725383640bc75ad0c21b8ef7786da67a42fe014be103e3c3d9c29c83ffc3d78b9e11a4031a6b3922d457a336d184228c16077cd
DIST zynaddsubfx-3.0.6.tar.bz2 10001014 BLAKE2B 4adbeffb9bc0bd77bf81a6734f5c26fc676426e644e27cebb8e54e8d74d869c0e1b468782cd1a64aacef8f9b788d434a8d30a194944650eea03c4fd146ee7bf7 SHA512 86311f00d97e20c7eb22a46c99736c56765ed9737e728ef380a324e4a92c731086ed74f5d7bfeae104b690ab1ee1b40bfb8f240bc4c46f8afd47308ec48cbcea
EBUILD zynaddsubfx-3.0.6-r1.ebuild 2051 BLAKE2B d202a0ca32eebaa0ca9fc72b054461bfd4aa15bee764b42ddfcc14de0f6783f085c38f48d1afbd2ef8eb216f08b8c13ed79aa9a9263b29bdb9e9115ec0e2d578 SHA512 e2e7e8fbd11043e802fe426b1b22e99c879464a32cbedb2f870ebf06ecc43a71e5566f40d1fbdf498b2a2b6ae655732731e1482562d6bd61f956590cd92e311d
+EBUILD zynaddsubfx-3.0.6-r2.ebuild 2702 BLAKE2B 9196fd356f8bcb431784e9164ece0a5fb9938b6900017e5d4f6fe4c0ae843c84de374cffd47c5d2f63b9328cfc33d436e6589b4c28cfaf275a9dc8b7a9dfb44e SHA512 230f60a8882ff59f826252eb6b20e391832374b0e2169de736b10504f3fe7a7b507366efe46beb029d584770995e819b726b59f7d202184f2c3e46e763c49914
MISC metadata.xml 428 BLAKE2B 5a450f26afae683f0aa9ff386c87c37c3445b81240d4864fe90564f2c86913af772174cfeaeb82c29b4df0b92337d00f710d8779c9f3300865e7d20e6f9fc06c SHA512 53de61301fd080758dc195c67dfaf9ece5fba941988d17ca6edb7249e01a8804fe4e7edf961a4a0ec6891730dc6f6250e5cf7e91441061eb1e487be243c9b111
diff --git a/media-sound/zynaddsubfx/files/zyn-fusion-ui-3.0.6-cflags_ldflags.patch b/media-sound/zynaddsubfx/files/zyn-fusion-ui-3.0.6-cflags_ldflags.patch
new file mode 100644
index 000000000000..005b1733e5e2
--- /dev/null
+++ b/media-sound/zynaddsubfx/files/zyn-fusion-ui-3.0.6-cflags_ldflags.patch
@@ -0,0 +1,19 @@
+--- i/Makefile
++++ w/Makefile
+@@ -16,10 +16,14 @@ linux:
+ $(CC) -shared -o libzest.so `find mruby/build/host -type f | grep -v mrbc | grep -e "\.o$$" | grep -v bin` ./deps/libnanovg.a \
+ ./deps/libnanovg.a \
+ src/osc-bridge/libosc-bridge.a \
+- `pkg-config --libs libuv` -lm -lX11 -lGL -lpthread
++ $(CFLAGS) \
++ `pkg-config --libs libuv` -lm -lX11 -lGL -lpthread \
++ $(LDFLAGS)
+ $(CC) test-libversion.c deps/pugl/pugl/pugl_x11.c \
++ $(CFLAGS) \
+ -DPUGL_HAVE_GL \
+- -ldl -o zest -lX11 -lGL -lpthread -I deps/pugl -std=gnu99 -Wno-trigraphs
++ -ldl -o zest -lX11 -lGL -lpthread -I deps/pugl -std=gnu99 -Wno-trigraphs \
++ $(LDFLAGS)
+
+ osx: deps/libuv.a
+ ruby ./rebuild-fcache.rb
diff --git a/media-sound/zynaddsubfx/files/zyn-fusion-ui-3.0.6-libzest_location.patch b/media-sound/zynaddsubfx/files/zyn-fusion-ui-3.0.6-libzest_location.patch
new file mode 100644
index 000000000000..a24921196fe6
--- /dev/null
+++ b/media-sound/zynaddsubfx/files/zyn-fusion-ui-3.0.6-libzest_location.patch
@@ -0,0 +1,11 @@
+--- i/test-libversion.c
++++ w/test-libversion.c
+@@ -660,7 +660,7 @@ int main(int argc, char **argv)
+ if(!handle)
+ handle = dlopen("libzest.so", RTLD_LAZY);
+ if(!handle)
+- handle = dlopen("/opt/zyn-fusion/libzest.so", RTLD_LAZY);
++ handle = dlopen("/usr/lib64/zynaddsubfx/libzest.so", RTLD_LAZY);
+ #endif
+ if(!handle) {
+ printf("[ERROR] Cannot Open libzest.so\n");
diff --git a/media-sound/zynaddsubfx/files/zyn-fusion-ui-3.0.6-makefile_find.patch b/media-sound/zynaddsubfx/files/zyn-fusion-ui-3.0.6-makefile_find.patch
new file mode 100644
index 000000000000..77cc47913f57
--- /dev/null
+++ b/media-sound/zynaddsubfx/files/zyn-fusion-ui-3.0.6-makefile_find.patch
@@ -0,0 +1,69 @@
+From c1f5fcbad97c20b14a35e894477081d69519f6b0 Mon Sep 17 00:00:00 2001
+From: David Runge <dave@sleepmap.de>
+Date: Sat, 21 May 2022 13:19:48 +0200
+Subject: [PATCH] Use find internals instead of piping into grep
+
+Makefile:
+Use GNU find internals (e.g. `-iname`, `-exec` and conditionals) instead
+of piping into multiple instances of grep.
+Simplify line counting by using wc from find.
+--- a/Makefile
++++ b/Makefile
+@@ -13,7 +13,7 @@ linux:
+ # force rebuilding all code that depends on hotloading.
+ touch src/mruby-widget-lib/src/api.c
+ cd mruby && $(HOTLOADING) MRUBY_CONFIG=../build_config.rb rake
+- $(CC) -shared -o libzest.so `find mruby/build/host -type f | grep -v mrbc | grep -e "\.o$$" | grep -v bin` ./deps/libnanovg.a \
++ $(CC) -shared -o libzest.so `find mruby/build/host -type f \( -not -iwholename "*mrbc*" -a -not -iwholename "*bin*" -a -iname "*.o" \)` \
+ ./deps/libnanovg.a \
+ src/osc-bridge/libosc-bridge.a \
+ `pkg-config --libs libuv` -lm -lX11 -lGL -lpthread
+@@ -30,7 +30,7 @@ osx: deps/libuv.a
+ cd deps/pugl && python2 ./waf
+ cd src/osc-bridge && CFLAGS="-I ../../deps/libuv/include " make lib
+ cd mruby && MRUBY_CONFIG=../build_config.rb rake
+- $(CC) -shared -o libzest.so `find mruby/build/host -type f | grep -v mrbc | grep -e "\.o$$" | grep -v bin` ./deps/libnanovg.a \
++ $(CC) -shared -o libzest.so `find mruby/build/host -type f \( -not -iwholename "*mrbc*" -a -not -iwholename "*bin*" -a -iname "*.o" \)` ./deps/libnanovg.a \
+ ./deps/libnanovg.a \
+ src/osc-bridge/libosc-bridge.a \
+ ./deps/libuv/.libs/libuv.a -lm -framework OpenGL -lpthread
+@@ -41,7 +41,7 @@ windows: buildpuglwin deps/libuv-win.a
+ $(AR) rc deps/libnanovg.a deps/nanovg/src/*.o
+ cd src/osc-bridge && CFLAGS="-mstackrealign -I ../../deps/libuv/include " make lib
+ cd mruby && WINDOWS=1 MRUBY_CONFIG=../build_config.rb rake
+- $(CC) -mstackrealign -shared -o libzest.dll -static-libgcc `find mruby/build/w64 -type f | grep -e "\.o$$" | grep -v bin` \
++ $(CC) -mstackrealign -shared -o libzest.dll -static-libgcc `find mruby/build/w64 -type f \( -not -iwholename "*mrbc*" -a -not -iwholename "*bin*" -a -iname "*.o" \)` \
+ ./deps/libnanovg.a \
+ src/osc-bridge/libosc-bridge.a \
+ ./deps/libuv-win.a \
+@@ -98,21 +98,21 @@ stats:
+ @echo 'mruby-qml-parse commits: ' `cd src/mruby-qml-parse && git log --oneline | wc -l`
+ @echo 'mruby-qml-spawn commits: ' `cd src/mruby-qml-spawn && git log --oneline | wc -l`
+ @echo 'osc-bridge commits: ' `cd src/osc-bridge && git log --oneline | wc -l`
+- @echo 'number of qml files:' `find src/ -type f | grep -e qml$$ | wc -l`
+- @echo 'number of ruby files:' `find src/ -type f | grep -e rb$$ | wc -l`
+- @echo 'number of c files:' `find src/ -type f | grep -e c$$ | wc -l`
+- @echo 'number of header files:' `find src/ -type f | grep -e h$$ | wc -l`
++ @echo 'number of qml files:' `find src/ -type f -iname "*.qml" | wc -l`
++ @echo 'number of ruby files:' `find src/ -type f -iname "*.rb" | wc -l`
++ @echo 'number of c files:' `find src/ -type f -iname "*.c" | wc -l`
++ @echo 'number of header files:' `find src/ -type f -iname "*.h" | wc -l`
+ @echo 'lines of OSC schema:' `wc -l src/osc-bridge/schema/test.json`
+ @echo 'lines of qml:'
+- @wc -l `find src/ -type f | grep qml$$` | tail -n 1
++ @`find src/ -type f -iname "*.qml" -exec wc -l {} +` | tail -n 1
+ @echo 'lines of ruby:'
+- @wc -l `find src/ -type f | grep -e rb$$ | grep -v fcache` | tail -n 1
++ @`find src/ -type f \( -iname "*.rb" -a -not -iwholename "*fcache*" \) -exec wc -l {} +` | tail -n 1
+ @echo 'lines of c source:'
+- @wc -l `find src/ -type f | grep -e c$$` | tail -n 1
++ @`find src/ -type f -iname "*.c" -exec wc -l {} +` | tail -n 1
+ @echo 'lines of c header:'
+- @wc -l `find src/ -type f | grep -e h$$` | tail -n 1
++ @`find src/ -type f -iname "*.h" -exec wc -l {} +` | tail -n 1
+ @echo 'total lines of code:'
+- @wc -l `find src/ -type f | grep -Ee "(qml|rb|c|h)$$" | grep -v fcache` | tail -n 1
++ @`find src/ -type f \( -iname "*.qml" -o -iname "*.rb" -o -iname "*.c" -o -iname "*.h" -a -not -iwholename "*fcache*" \) -exec wc -l {} +` | tail -n 1
+
+
+ verbose: ## Compile mruby with --trace
diff --git a/media-sound/zynaddsubfx/files/zyn-fusion-ui-3.0.6-system_wide_location.patch b/media-sound/zynaddsubfx/files/zyn-fusion-ui-3.0.6-system_wide_location.patch
new file mode 100644
index 000000000000..3001e08754dc
--- /dev/null
+++ b/media-sound/zynaddsubfx/files/zyn-fusion-ui-3.0.6-system_wide_location.patch
@@ -0,0 +1,40 @@
+--- i/src/mruby-widget-lib/mrblib/script.rb
++++ w/src/mruby-widget-lib/mrblib/script.rb
+@@ -160,13 +160,13 @@ class ZRunner
+ search = @search_path
+ search ||= ""
+ font_error = false
+- sans = [search + "font/Roboto-Regular.ttf", "deps/nanovg/example/Roboto-Regular.ttf"]
++ sans = ["/usr/share/fonts/roboto/Roboto-Regular.ttf", search + "font/Roboto-Regular.ttf", "deps/nanovg/example/Roboto-Regular.ttf"]
+ if(@vg.create_font('sans', sans[0]) == -1 && @vg.create_font('sans', sans[1]) == -1)
+ GL::debug "[ERROR] could not find sans font"
+ font_error = true
+ end
+
+- bold = [search + "font/Roboto-Bold.ttf", "deps/nanovg/example/Roboto-Bold.ttf"]
++ bold = ["/usr/share/fonts/roboto/Roboto-Bold.ttf", search + "font/Roboto-Bold.ttf", "deps/nanovg/example/Roboto-Bold.ttf"]
+ if(@vg.create_font('bold', bold[0]) == -1 && @vg.create_font('bold', bold[1]) == -1)
+ GL::debug "[ERROR] could not find bold font"
+ font_error = true
+--- i/src/mruby-widget-lib/src/api.c
++++ w/src/mruby-widget-lib/src/api.c
+@@ -110,7 +110,7 @@ zest_open(char *address)
+ if(strstr(path, "libzest"))
+ strstr(path, "libzest")[0] = 0;
+ char path2[256];
+- snprintf(path2, sizeof(path2), "%s%s", path, "./qml/MainWindow.qml");
++ snprintf(path2, sizeof(path2), "%s%s", path, "../../share/zynaddsubfx/qml/MainWindow.qml");
+ FILE *f = fopen(path2, "r");
+ if(f) {
+ printf("[INFO:Zyn] Found Assets at %s\n", path);
+--- i/src/osc-bridge/src/bridge.c
++++ w/src/osc-bridge/src/bridge.c
+@@ -431,7 +431,7 @@ schema_t br_get_schema(bridge_t *br, uri_t uri)
+ schema_t sch;
+
+ //printf("[debug] loading json file\n");
+- FILE *f = fopen("schema/test.json", "r");
++ FILE *f = fopen("/usr/share/zynaddsubfx/schema/test.json", "r");
+ if(!f && br->search_path) {
+ char tmp[256];
+ snprintf(tmp, sizeof(tmp), "%s%s", br->search_path, "schema/test.json");
diff --git a/media-sound/zynaddsubfx/files/zynaddsubfx-3.0.6-docs.patch b/media-sound/zynaddsubfx/files/zynaddsubfx-3.0.6-docs.patch
index e10b92d096eb..0db30ed2395c 100644
--- a/media-sound/zynaddsubfx/files/zynaddsubfx-3.0.6-docs.patch
+++ b/media-sound/zynaddsubfx/files/zynaddsubfx-3.0.6-docs.patch
@@ -1,5 +1,3 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 5c70857..20e20d2 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -35,9 +35,6 @@ include(CTestConfig.cmake)
diff --git a/media-sound/zynaddsubfx/files/zynaddsubfx-3.0.6-libzest_location.patch b/media-sound/zynaddsubfx/files/zynaddsubfx-3.0.6-libzest_location.patch
new file mode 100644
index 000000000000..79e9e30083e5
--- /dev/null
+++ b/media-sound/zynaddsubfx/files/zynaddsubfx-3.0.6-libzest_location.patch
@@ -0,0 +1,11 @@
+--- i/src/Plugin/ZynAddSubFX/ZynAddSubFX-UI-Zest.cpp
++++ w/src/Plugin/ZynAddSubFX/ZynAddSubFX-UI-Zest.cpp
+@@ -68,7 +68,7 @@ public:
+ #else
+ handle = dlopen("./libzest.so", RTLD_LAZY);
+ if(!handle)
+- handle = dlopen("/opt/zyn-fusion/libzest.so", RTLD_LAZY);
++ handle = dlopen("/usr/lib64/zynaddsubfx/libzest.so", RTLD_LAZY);
+ if(!handle)
+ handle = dlopen("libzest.so", RTLD_LAZY);
+ #endif
diff --git a/media-sound/zynaddsubfx/files/zynaddsubfx-3.0.6-stdint.patch b/media-sound/zynaddsubfx/files/zynaddsubfx-3.0.6-stdint.patch
index 4590183ab0f9..3c1bd7937810 100644
--- a/media-sound/zynaddsubfx/files/zynaddsubfx-3.0.6-stdint.patch
+++ b/media-sound/zynaddsubfx/files/zynaddsubfx-3.0.6-stdint.patch
@@ -1,46 +1,121 @@
-Upstream Commit: https://github.com/zynaddsubfx/zynaddsubfx/commit/f384d92486d6b515cb628d0f52008a9e03341d8c
-Upstream Commit: https://github.com/zynaddsubfx/zynaddsubfx/commit/70905c96fe7b9ffde19bc4bc05b0dc53a1ed1707
-
-From f384d92486d6b515cb628d0f52008a9e03341d8c Mon Sep 17 00:00:00 2001
-From: fundamental <mark.d.mccurry@gmail.com>
-Date: Wed, 19 Apr 2023 21:52:01 -0400
-Subject: [PATCH] Bank: Add stdint.h header include
-
-As uint8_t is used, this header should be included.
----
- src/Misc/Bank.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/Misc/Bank.h b/src/Misc/Bank.h
-index 5120441a5..3f324dd84 100644
---- a/src/Misc/Bank.h
-+++ b/src/Misc/Bank.h
-@@ -18,6 +18,7 @@
+--- zynaddsubfx-3.0.6/src/Params/ADnoteParameters.h
++++ zynaddsubfx-3.0.6.mod/src/Params/ADnoteParameters.h
+@@ -16,6 +16,7 @@
+
+ #include "../globals.h"
+ #include "PresetsArray.h"
++#include <cstdint>
+
+ namespace zyn {
+
+--- zynaddsubfx-3.0.6/src/Params/Controller.h
++++ zynaddsubfx-3.0.6.mod/src/Params/Controller.h
+@@ -17,6 +17,7 @@
+
+ #include <stdint.h>
+ #include "../globals.h"
++#include <cstdint>
+
+ namespace zyn {
+
+--- zynaddsubfx-3.0.6/src/Params/EnvelopeParams.h
++++ zynaddsubfx-3.0.6.mod/src/Params/EnvelopeParams.h
+@@ -17,6 +17,7 @@
+ #include "../globals.h"
+ #include "../Misc/XMLwrapper.h"
+ #include "Presets.h"
++#include <cstdint>
+
+ namespace zyn {
+
+--- zynaddsubfx-3.0.6/src/Params/FilterParams.h
++++ zynaddsubfx-3.0.6.mod/src/Params/FilterParams.h
+@@ -17,6 +17,7 @@
+ #include "../globals.h"
+ #include "../Misc/XMLwrapper.h"
+ #include "PresetsArray.h"
++#include <cstdint>
+
+ namespace zyn {
+
+--- zynaddsubfx-3.0.6/src/Params/LFOParams.h
++++ zynaddsubfx-3.0.6.mod/src/Params/LFOParams.h
+@@ -17,6 +17,7 @@
+ #include <Misc/Time.h>
+ #include <rtosc/ports.h>
+ #include "Presets.h"
++#include <cstdint>
+
+ #define LFO_SINE 0
+ #define LFO_TRIANGLE 1
+--- zynaddsubfx-3.0.6/src/Params/PADnoteParameters.h
++++ zynaddsubfx-3.0.6.mod/src/Params/PADnoteParameters.h
+@@ -19,7 +19,7 @@
+ #include "Presets.h"
+ #include <string>
+ #include <functional>
+-
++#include <cstdint>
+ namespace zyn {
+
+ /**
+--- zynaddsubfx-3.0.6/src/Params/SUBnoteParameters.h
++++ zynaddsubfx-3.0.6.mod/src/Params/SUBnoteParameters.h
+@@ -17,6 +17,7 @@
+ #include <stdint.h>
+ #include "../globals.h"
+ #include "Presets.h"
++#include <cstdint>
+
+ namespace zyn {
+
+--- zynaddsubfx-3.0.6.old/src/Misc/Bank.cpp
++++ zynaddsubfx-3.0.6/src/Misc/Bank.cpp
+@@ -17,6 +17,7 @@
+ #include <cstring>
+ #include <cstdio>
+ #include <cstdlib>
++#include <cstdint>
+ #include <dirent.h>
+ #include <sys/stat.h>
+ #include <algorithm>
+--- zynaddsubfx-3.0.6.old/src/Misc/Bank.h
++++ zynaddsubfx-3.0.6/src/Misc/Bank.h
+@@ -16,6 +16,7 @@
+
+ #include <string>
#include <vector>
++#include <cstdint>
#include "../globals.h"
#include "Config.h"
-+#include <stdint.h>
-
- //entries in a bank
- #define BANK_SIZE 160
-
-From 70905c96fe7b9ffde19bc4bc05b0dc53a1ed1707 Mon Sep 17 00:00:00 2001
-From: fundamental <mark.d.mccurry@gmail.com>
-Date: Sat, 22 Apr 2023 10:21:09 -0400
-Subject: [PATCH] MidiIn: Add stdint.h header include
-
----
- src/Nio/MidiIn.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/Nio/MidiIn.h b/src/Nio/MidiIn.h
-index ce0bcfec3..c6b30c61d 100644
---- a/src/Nio/MidiIn.h
-+++ b/src/Nio/MidiIn.h
+
+--- zynaddsubfx-3.0.6.old/src/Nio/InMgr.cpp
++++ zynaddsubfx-3.0.6/src/Nio/InMgr.cpp
+@@ -17,6 +17,7 @@
+ #include "../Misc/MiddleWare.h"
+ #include <rtosc/thread-link.h>
+ #include <iostream>
++#include <cstdint>
+ using namespace std;
+
+ extern zyn::MiddleWare *middleware;
+--- zynaddsubfx-3.0.6.old/src/Nio/MidiIn.cpp
++++ zynaddsubfx-3.0.6/src/Nio/MidiIn.cpp
+@@ -15,6 +15,7 @@
+ #include "../globals.h"
+ #include "InMgr.h"
+ #include <string.h>
++#include <cstdint>
+
+ namespace zyn {
+
+--- zynaddsubfx-3.0.6.old/src/Nio/MidiIn.h
++++ zynaddsubfx-3.0.6/src/Nio/MidiIn.h
@@ -17,6 +17,7 @@
#define MIDI_IN_H
#include "Engine.h"
-+#include <stdint.h>//uint8_t
++#include <cstdint>
namespace zyn {
+
diff --git a/media-sound/zynaddsubfx/zynaddsubfx-3.0.6-r2.ebuild b/media-sound/zynaddsubfx/zynaddsubfx-3.0.6-r2.ebuild
new file mode 100644
index 000000000000..7303db4ad930
--- /dev/null
+++ b/media-sound/zynaddsubfx/zynaddsubfx-3.0.6-r2.ebuild
@@ -0,0 +1,113 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake flag-o-matic
+
+DESCRIPTION="Software synthesizer capable of making a countless number of instruments"
+HOMEPAGE="https://zynaddsubfx.sourceforge.net/"
+
+SRC_URI="
+ mirror://sourceforge/zynaddsubfx/${P}.tar.bz2
+ mirror://sourceforge/zynaddsubfx/zyn-fusion-ui-src-${PV}.tar.bz2
+"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="+alsa doc dssi jack lash portaudio"
+REQUIRED_USE="|| ( alsa jack portaudio )"
+
+DEPEND="
+ dev-libs/mxml
+ media-libs/liblo
+ sci-libs/fftw:3.0
+ sys-libs/zlib
+ alsa? ( media-libs/alsa-lib )
+ doc? ( dev-texlive/texlive-fontutils )
+ dssi? ( media-libs/dssi )
+ jack? ( virtual/jack )
+ lash? ( media-sound/lash )
+ portaudio? ( media-libs/portaudio )
+"
+RDEPEND="
+ ${DEPEND}
+ media-fonts/roboto
+"
+BDEPEND="
+ dev-lang/ruby:*
+ virtual/pkgconfig
+ doc? ( app-doc/doxygen )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-docs.patch
+ "${FILESDIR}"/${P}-stdint.patch
+ "${FILESDIR}"/${P}-libzest_location.patch
+)
+ZYN_FUSION_UI_PATCHES=(
+ "${FILESDIR}"/zyn-fusion-ui-${PV}-cflags_ldflags.patch
+ "${FILESDIR}"/zyn-fusion-ui-${PV}-libzest_location.patch
+ "${FILESDIR}"/zyn-fusion-ui-${PV}-makefile_find.patch
+ "${FILESDIR}"/zyn-fusion-ui-${PV}-system_wide_location.patch
+)
+
+DOCS=( AUTHORS.txt NEWS.txt README.adoc )
+
+src_prepare() {
+ cmake_src_prepare
+
+ if ! use dssi; then
+ sed -i -e '/pkg_search_module.*DSSI/s/^/#DONT/' src/CMakeLists.txt || die
+ fi
+ if ! use jack; then
+ sed -e '/pkg_check_modules.*JACK/s/^/#DONT/' -i {rtosc,src}/CMakeLists.txt || die
+ fi
+ if ! use lash; then
+ sed -i -e '/pkg_search_module.*LASH/s/^/#DONT/' src/CMakeLists.txt || die
+ fi
+ if ! use portaudio; then
+ sed -i -e '/pkg_check_modules.*PORTAUDIO/s/^/#DONT/' src/CMakeLists.txt || die
+ fi
+
+ # FIXME upstream: sandbox error
+ sed -i -e '/add_subdirectory(bash-completion)/d' doc/CMakeLists.txt || die
+
+ cd ../zyn-fusion-ui-src-${PV}
+ eapply "${ZYN_FUSION_UI_PATCHES[@]}"
+}
+
+src_configure() {
+ append-cxxflags -std=c++11
+
+ local mycmakeargs=(
+ -DPluginLibDir=$(get_libdir)
+ -DGuiModule=zest
+ -DDefaultInput=jack
+ -DDefaultOutput=jack
+ $(cmake_use_find_package alsa Alsa)
+ $(cmake_use_find_package doc Doxygen)
+ )
+ cmake_src_configure
+}
+
+src_compile() {
+ cmake_src_compile
+ use doc && cmake_src_compile doc
+ emake -C ../zyn-fusion-ui-src-${PV}
+}
+
+src_install() {
+ use doc && local HTML_DOCS=( "${BUILD_DIR}"/doc/html/. )
+ cmake_src_install
+
+ cd ../zyn-fusion-ui-src-${PV}
+ newbin zest zyn-fusion
+ insinto /usr/$(get_libdir)/${PN}
+ doins libzest.so
+ insinto /usr/share/${PN}/qml
+ doins -r src/mruby-zest/{example,qml}/*.qml
+ insinto /usr/share/${PN}/schema
+ doins src/osc-bridge/schema/test.json
+}