summaryrefslogtreecommitdiff
path: root/media-sound
diff options
context:
space:
mode:
Diffstat (limited to 'media-sound')
-rw-r--r--media-sound/Manifest.gzbin57060 -> 57064 bytes
-rw-r--r--media-sound/ardour/Manifest7
-rw-r--r--media-sound/ardour/ardour-7.4-r2.ebuild3
-rw-r--r--media-sound/ardour/ardour-9999.ebuild3
-rw-r--r--media-sound/ardour/files/ardour-6.8-metadata.patch2
-rw-r--r--media-sound/ardour/files/ardour-7.4-libc++.patch39
-rw-r--r--media-sound/musescore/Manifest8
-rw-r--r--media-sound/musescore/files/musescore-3.0.1-man-pages.patch2
-rw-r--r--media-sound/musescore/files/musescore-4.0.2-unbundle-deps.patch121
-rw-r--r--media-sound/musescore/files/musescore-4.0.2-uncompressed-man-pages.patch29
-rw-r--r--media-sound/musescore/metadata.xml1
-rw-r--r--media-sound/musescore/musescore-4.0.2.ebuild135
12 files changed, 341 insertions, 9 deletions
diff --git a/media-sound/Manifest.gz b/media-sound/Manifest.gz
index 1080e7dba523..306b46eeb887 100644
--- a/media-sound/Manifest.gz
+++ b/media-sound/Manifest.gz
Binary files differ
diff --git a/media-sound/ardour/Manifest b/media-sound/ardour/Manifest
index db014e8711a6..b2c7f0918a68 100644
--- a/media-sound/ardour/Manifest
+++ b/media-sound/ardour/Manifest
@@ -1,5 +1,6 @@
-AUX ardour-6.8-metadata.patch 653 BLAKE2B 3929d825fd8de5205d0f5aa8d0172e6374ca9ffd195789386b756ae540e1842a9902592b8b6d74019c52f134e8cb9886085e23277ef022883c4425dc580c5bc9 SHA512 963f3cfcd00a3fb15cb9875f7fc31a8294058898b6fab94feb32f786369643139b1e8787ecc47a4ea6a33dabe6bd90f564b6009e0d6e482d8e5129534c789972
+AUX ardour-6.8-metadata.patch 568 BLAKE2B 68bb84e5249d67e88e191dbc009b7f2b696d448903a2c7164778f4fda3b526370bd2562fa627faea832da2c115d61fe8ddccf6c54c016a7f68e5cab688868984 SHA512 1bf77b0cf2692e7051a524a049add8f22feb734120d9ae58ffcf06647e8ed28249dcbe2cd124eb2354897f119a2977c6124228fc37c15e476053dc5ea4b5033c
+AUX ardour-7.4-libc++.patch 1417 BLAKE2B d3e3b94a0d6f6a1b5ce9af18d6a014e46c12cecaf307f6cd6beac4143b0280bd708de9360ebe0a584fdc28a25e831abc39f0d26d073db39a3d51e607b9fc8f41 SHA512 40f1c8671304d855b4ea7e3a30e18d33e62669b12da1bae4b8f317aa90d3a9c85900ed5467c1722a3b01b1a72971fa74f353623e16100f4e22ce0b6daa7e3b6c
DIST Ardour-7.4.0.tar.bz2 12940403 BLAKE2B 4f3ca19e44a9ab5908fb6a6cf29adefb6a7abf4a9f43f810f0a0fdbe8fc1e11cdb49e2a66336fddb0e5d49a0780ac5af7b9363d2f14d9e309b787ceb8c8dd060 SHA512 2533167986a8b7550848e03475931fcd1409f188abed0c7c2a5999869995a73576976d02080cf2ac310113b57ff62d39031615c92cb4fafbe5d96edfc3a4ec45
-EBUILD ardour-7.4-r2.ebuild 4993 BLAKE2B 71bbc532229a483cb822c9e3d84123feaa1720c08655b2ae64be3bf872ab88b7d5e32955bf457026e98d721736eb65f658a0bfe4bbc6a0acb98438c5d30938d6 SHA512 dfe27a9baf9b748af9bb5a7f77963ec41a623b78df4c62e029dbcbdccf0f18d3339741227c60086d37620cc61d29fd7222a6fc557e793fec3c4b3afea8f21ed4
-EBUILD ardour-9999.ebuild 4995 BLAKE2B 7185e40173864410eb0b913ac1f8dac790b16c4bf5a85d79c9c49c0c273bafab156c41db648f118afa19b87c41e065a70ec13056341bb258254496c654025000 SHA512 be40fe998b330347b5c0bbdc34cec6fbb652e60ee1edc00dab467a52b5ed60f28b2d511a7fead485a8949796937ab568fc55751fa4c564df37e693d53bf367aa
+EBUILD ardour-7.4-r2.ebuild 5101 BLAKE2B 53d6fe2967a668d8d99c8f413b8c63438d72e67a05737c5ed45f5a0cc32c1f38a71660157eeb782686aa773cea4074997baa9c21e9ea8065532517ee988249c8 SHA512 3fa6ce860d63ee3de50aa6b2a87f68df03dc33c0ad8fcd4fa90971367808fbd5a0f7b8baf125ffb51d9685b05984fb2ef46c2b47db155c028144bba9d8894d73
+EBUILD ardour-9999.ebuild 5103 BLAKE2B 7116550a57e907307d7e65d88225d4a23f91a158d871a7e09dc1b5ea67aeb11b8ba86b697ccf99f1068b9bf57ffada937dbda19e9b029c61c022b2fab92a9a56 SHA512 d98153ad777228d05450e85d8cb0505d2883c87275e828944eb69433eaa7128ef568cbf8a9d42b1192e61b2cb4e1706c133c864f8440dc32b12b941cb789f059
MISC metadata.xml 451 BLAKE2B 0ed571ca79f0d4b92239239982f04abf725365df169290e4a02f6d8f580cf801f70d8bc93414b4549c8172ff43864d5c49fa987caeec58e1b2331ffe01a69ae6 SHA512 504bd817356c7ee57c64193584b3fc5b3bc70f5224d5a531ac5ecf8fb974728639e75b77bb9e7c5ad77cf6099123361b9ec6211b855edb4761acd95b8cb7abcb
diff --git a/media-sound/ardour/ardour-7.4-r2.ebuild b/media-sound/ardour/ardour-7.4-r2.ebuild
index 7393250c576f..2bfcbebca1ea 100644
--- a/media-sound/ardour/ardour-7.4-r2.ebuild
+++ b/media-sound/ardour/ardour-7.4-r2.ebuild
@@ -73,6 +73,7 @@ DEPEND="${RDEPEND}
PATCHES=(
"${FILESDIR}/${PN}-6.8-metadata.patch"
+ "${FILESDIR}/${PN}-7.4-libc++.patch"
)
pkg_pretend() {
@@ -145,6 +146,8 @@ src_configure() {
# not possible right now --use-external-libs
)
+ [[ "$(tc-get-cxx-stdlib)" = "libc++" ]] && myconf+=( --use-libc++ )
+
waf-utils_src_configure "${myconf[@]}"
}
diff --git a/media-sound/ardour/ardour-9999.ebuild b/media-sound/ardour/ardour-9999.ebuild
index 0d0ba16716f4..93b6a1742f84 100644
--- a/media-sound/ardour/ardour-9999.ebuild
+++ b/media-sound/ardour/ardour-9999.ebuild
@@ -73,6 +73,7 @@ DEPEND="${RDEPEND}
PATCHES=(
"${FILESDIR}/${PN}-6.8-metadata.patch"
+ "${FILESDIR}/${PN}-7.4-libc++.patch"
)
pkg_pretend() {
@@ -145,6 +146,8 @@ src_configure() {
# not possible right now --use-external-libs
)
+ [[ "$(tc-get-cxx-stdlib)" = "libc++" ]] && myconf+=( --use-libc++ )
+
waf-utils_src_configure "${myconf[@]}"
}
diff --git a/media-sound/ardour/files/ardour-6.8-metadata.patch b/media-sound/ardour/files/ardour-6.8-metadata.patch
index fa7b6e121197..ea540b34df5f 100644
--- a/media-sound/ardour/files/ardour-6.8-metadata.patch
+++ b/media-sound/ardour/files/ardour-6.8-metadata.patch
@@ -1,5 +1,3 @@
-diff --git a/gtk2_ardour/wscript b/gtk2_ardour/wscript
-index f5d0533..a68cb3f 100644
--- a/gtk2_ardour/wscript
+++ b/gtk2_ardour/wscript
@@ -943,7 +943,7 @@ def build(bld):
diff --git a/media-sound/ardour/files/ardour-7.4-libc++.patch b/media-sound/ardour/files/ardour-7.4-libc++.patch
new file mode 100644
index 000000000000..85f13ba47dbc
--- /dev/null
+++ b/media-sound/ardour/files/ardour-7.4-libc++.patch
@@ -0,0 +1,39 @@
+From d8e42490b18bd0c8a827d96608e951bf5bc875e4 Mon Sep 17 00:00:00 2001
+From: Violet Purcell <vimproved@inventati.org>
+Date: Sun, 4 Jun 2023 04:56:58 -0400
+Subject: [PATCH] Fix build with libc++ on linux
+
+--- a/libs/vst3/pluginterfaces/base/funknown.cpp
++++ b/libs/vst3/pluginterfaces/base/funknown.cpp
+@@ -44,7 +44,9 @@
+ #endif
+
+ #if SMTG_OS_LINUX
++#ifndef USE_LIBCXX
+ #include <ext/atomicity.h>
++#endif
+ /* UUID */
+ #include <string>
+ #include <boost/uuid/uuid.hpp>
+@@ -83,7 +85,7 @@ int32 PLUGIN_API atomicAdd (int32& var, int32 d)
+ return InterlockedExchangeAdd ((volatile long int*)&var, d) + d;
+ #elif SMTG_OS_MACOS
+ return OSAtomicAdd32Barrier (d, (int32_t*)&var);
+-#elif SMTG_OS_LINUX
++#elif SMTG_OS_LINUX && !defined USE_LIBCXX
+ __gnu_cxx::__atomic_add (&var, d);
+ return var;
+ #else
+--- a/wscript
++++ b/wscript
+@@ -545,6 +545,8 @@ int main() { return 0; }''',
+ if opt.use_libcpp or conf.env['build_host'] in [ 'yosemite', 'el_capitan', 'sierra', 'high_sierra', 'mojave', 'catalina' ]:
+ cxx_flags.append('--stdlib=libc++')
+ linker_flags.append('--stdlib=libc++')
++ if platform == 'linux':
++ cxx_flags.append('-DUSE_LIBCXX')
+
+ if conf.options.cxx11 or conf.env['build_host'] in [ 'mavericks', 'yosemite', 'el_capitan', 'sierra', 'high_sierra', 'mojave', 'catalina' , 'bigsur', 'monterey', 'ventura' ]:
+ conf.check_cxx(cxxflags=["-std=c++11"])
+--
+2.40.1
diff --git a/media-sound/musescore/Manifest b/media-sound/musescore/Manifest
index d788fdaa7df0..54f9947ce91f 100644
--- a/media-sound/musescore/Manifest
+++ b/media-sound/musescore/Manifest
@@ -1,7 +1,11 @@
-AUX musescore-3.0.1-man-pages.patch 1779 BLAKE2B 345f06aaad337f0cd51f949bc210ec8efa06929c3c1663696f116c72dfc2fddbd0032bf4070464dc439dd0c6dbdfd39337d146764184aaef0723574fb501aa22 SHA512 64230965d6cd544bdee9ae52682812515bdef17abfc1e31d0a6f887d22c70ca5d82d22c0937e3ddd56ab478009cfc0e4170a9283b2fc7e0da242d84b984616fb
+AUX musescore-3.0.1-man-pages.patch 1704 BLAKE2B 51ce6a743e97965eecff31268bf774cbc24bec9eb687c757740bfe1b308df053fa86a2a5b3e5e977650f8a45249f1a2355da06e315245c4016b50b4d75f17607 SHA512 04b8b34beddd28efe60012e4891f06539794d2b392ab3e8b334c4d8ddcd61cd3962403b17c0bb9c78da98f0e4afe03a1605fa4b3d8dfe40adb66abbb2bb5bac2
AUX musescore-3.6.1-rename-audioitem.patch 491 BLAKE2B 9ecdccb1e3aec15c7233baaeb07d1b962b487dfa1c88cbb1c79616e92d36fc8e0d46635b9bda851550145086bfef2bba56a53ed033325b6bd98378a9f6928bb3 SHA512 55cb0187dfe4e590ec47c772d3c820f64324d748a2b95d0529b516cd048f2862477117dd711c335fd7abf8e3693e9e0b8b60cc270aab5a5960a173fa8bd7ad85
+AUX musescore-4.0.2-unbundle-deps.patch 3569 BLAKE2B 3096d1deaf3996fad39a9d2618a70daaba93886dc151a3db0623276342c7b83e045373f3ca90bc7cbcf52161cc1691635e2c7e5cc238f5bd429514d7da3cd37f SHA512 69a41c417b7e513c86ebb99c0f190293b7f2be86b2314a167351fed6f32a6fbde5a046aeff9a84bb33a080bafa2aa5b9c36344b23f5a0c3c9de2a34a13664185
+AUX musescore-4.0.2-uncompressed-man-pages.patch 1751 BLAKE2B fda5f061ed181fc9ad115d7dac20d7fe4b0d22845a2519b372bd8848119591eac4a25abcbd3abbfcd6da851903fe9ba5d8962ef3e2f6344f407067cc8234be22 SHA512 bdebd3a23b1a2ab3f735e12536627096004f31e117715efee9e489e717ddc8a5dd2a045727db923c2f6969582d3c3d6136234392f229c020e1be13035072769e
DIST MuseScore_General-0.2.0.tar.bz2 35122747 BLAKE2B 7f9cafb7912ab8c977842c51df69506d4ad3d1d37498c856978a2d5ab50a1c4fe9145a4807f8c353e6f14138704abb2bbd70c948f1621b494c6e0458c2df0184 SHA512 69eeb22e8c9d1d393a2af857baeb8e49bf2a492651d18190685c74df84a5f6b424e37077e39d9d69c117c4896ea1fbb857eba25a1fbcb6f98d53f384a55713cc
DIST musescore-3.6.2.tar.gz 69077899 BLAKE2B 4562267b2fd6498b0ba1e503a9117c2680035ccdb66f94bbd9b98ef1c37d4f9eb7d8a84cbac7726b67b9c95e4f076aaaf83087f4ded195150c42ec77462d48e8 SHA512 04ff1ddd82358c070640f81bbaa9c47c5da95aa57c56a5d1b975ad984744e0def17d5581da6bbeda1aae1c68470100d104d4f8a39ba33bf37bf8891ffcbf1d6e
+DIST musescore-4.0.2.tar.gz 123962958 BLAKE2B aa31b5346a4c5cfc44f66cf266724c8439d03b449336c16a960df21201d460c21a9b645654584876cc8f20f96f7e95cc24980cda85544a2338ddb8523874fe5e SHA512 fda63124281c4e19160482dff5472889b8753f2389e3d115b2b8e23f3edb976df0912a4e554334a4fc7cc4f9a6945165a07e781fcc2eec46db373e298d9f3616
EBUILD musescore-3.6.2-r1.ebuild 3058 BLAKE2B 5352d979ff5f5f7a704f589f747d8a04900976e8da82b62cd9d65de6feede64bd78d604f38264c1a3302b3084c9a00a14f542a0c3ecbfa08d5d07bf3e8b143fe SHA512 2f07e56fe6d81bc00590839d2d5a1f30bea863a5d36aa9c5ae159b8719f39abafe08edde4a43683c24c6bf67962a2dc67696921a0a7e5d458cbfdf10f6fdf525
+EBUILD musescore-4.0.2.ebuild 3167 BLAKE2B 62bb67234d086445ef849c2326acae1ae37dd5b684a3a64a1c34fc0eb987d2ee14cb132b877468425a596a24e63c0b483cbe3bac4aa53756843e59b67db9cf78 SHA512 ed2c9f76a15615153c3ec1aa8da360b4fb1280f73427b255691af08dc7c9272338b478db906476c22967372fe9e1ebda8c821be6874f73861d0283443e4f6374
EBUILD musescore-9999.ebuild 3220 BLAKE2B 663c302b8a28c087c525a3e79c930fe5af401cdfeddec7197c691ba28681d6d457d2231e338cc2db5a2327bfd797f7666332a7ee608143be6997f812baed38f5 SHA512 5f3bc962d9cf91cbc8029d270d1fb1abad34edffc62ea2bbd35ec2e9ff38ff9c71f1bdd028b65aafb6408312cc21b557eebf2728d51ae2a33ad24facafbb5d78
-MISC metadata.xml 882 BLAKE2B a8ead5437d77a6c39262770afc3409f3a68072fbc796af0b029641126521299e45e921a666b97b168de79b92d3359ecd4032e26fca798188fa9bd503f394db5a SHA512 4146e03299dd9a646e713dc9baacdba9578c5fb204eeeb81397e25fe5d7b19ae07aa1bb0c550ffff5cb53194f9ee53d0b35fbc26b04658d0e50f08e1a0e441f7
+MISC metadata.xml 985 BLAKE2B 96cb6ad1a75dd438aa3f2af961e6a8c2605538b1823fea3f4aa34ba981bdfc20706c563a480cc093f1c2ba6c86fd43be9e51f2fb604a1fd98f140e6213a4b54a SHA512 115b8aa8594842236e72a11b3962256db16236123e8f16010cbab46f3b74e56f024ac0ec5801ce7600915f47dfe2d2ae1abb4ec80d017329dc9ae3b6568aa6c6
diff --git a/media-sound/musescore/files/musescore-3.0.1-man-pages.patch b/media-sound/musescore/files/musescore-3.0.1-man-pages.patch
index fd5ade55ed42..a9e871f12d77 100644
--- a/media-sound/musescore/files/musescore-3.0.1-man-pages.patch
+++ b/media-sound/musescore/files/musescore-3.0.1-man-pages.patch
@@ -1,5 +1,3 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 6437963..2a173b9 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -660,7 +660,7 @@ if (NOT MINGW AND NOT MSVC AND NOT APPLE)
diff --git a/media-sound/musescore/files/musescore-4.0.2-unbundle-deps.patch b/media-sound/musescore/files/musescore-4.0.2-unbundle-deps.patch
new file mode 100644
index 000000000000..6c299d90da67
--- /dev/null
+++ b/media-sound/musescore/files/musescore-4.0.2-unbundle-deps.patch
@@ -0,0 +1,121 @@
+Unbundling of all dependencies which are currently available as system packages
+and have not been modified (to our knowledge) by MuseScore.
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -206,7 +206,7 @@ if (BUILD_UNIT_TESTS)
+ FULL_DOCS "List XML files outputted by google test."
+ )
+
+- add_subdirectory(thirdparty/googletest)
++ find_package(GTest REQUIRED)
+ endif(BUILD_UNIT_TESTS)
+
+ add_subdirectory(share)
+--- a/src/framework/audio/CMakeLists.txt
++++ b/src/framework/audio/CMakeLists.txt
+@@ -216,11 +216,18 @@ if (ENABLE_AUDIO_EXPORT)
+ ${CMAKE_CURRENT_LIST_DIR}/internal/soundtracks/soundtrackwriter.h
+ )
+
+- add_subdirectory(${PROJECT_SOURCE_DIR}/thirdparty/lame lame)
+- add_subdirectory(${PROJECT_SOURCE_DIR}/thirdparty/opusenc opusenc)
+- add_subdirectory(${PROJECT_SOURCE_DIR}/thirdparty/flac flac)
++ pkg_check_modules(lame REQUIRED IMPORTED_TARGET lame)
++ pkg_check_modules(libopusenc REQUIRED IMPORTED_TARGET libopusenc)
++ pkg_check_modules(flac REQUIRED IMPORTED_TARGET flac)
++ pkg_check_modules(flacpp REQUIRED IMPORTED_TARGET flac++)
+
+- set(MODULE_LINK ${MODULE_LINK} lame opusenc flac)
++ set(MODULE_LINK
++ ${MODULE_LINK}
++ PkgConfig::lame
++ PkgConfig::libopusenc
++ PkgConfig::flac
++ PkgConfig::flacpp
++ )
+ endif()
+
+ if (OS_IS_MAC)
+--- a/src/framework/audio/internal/encoders/mp3encoder.cpp
++++ b/src/framework/audio/internal/encoders/mp3encoder.cpp
+@@ -22,7 +22,7 @@
+
+ #include "mp3encoder.h"
+
+-#include "lame.h"
++#include "lame/lame.h"
+
+ using namespace mu;
+ using namespace mu::audio;
+--- a/src/framework/audio/internal/encoders/oggencoder.cpp
++++ b/src/framework/audio/internal/encoders/oggencoder.cpp
+@@ -22,7 +22,7 @@
+
+ #include "oggencoder.h"
+
+-#include "opusenc.h"
++#include "opus/opusenc.h"
+
+ #include "log.h"
+
+--- a/src/framework/global/CMakeLists.txt
++++ b/src/framework/global/CMakeLists.txt
+@@ -105,8 +105,6 @@ set(MODULE_SRC
+ ${CMAKE_CURRENT_LIST_DIR}/serialization/xmlstreamreader.h
+ ${CMAKE_CURRENT_LIST_DIR}/serialization/xmlstreamwriter.cpp
+ ${CMAKE_CURRENT_LIST_DIR}/serialization/xmlstreamwriter.h
+- ${CMAKE_CURRENT_LIST_DIR}/thirdparty//tinyxml/tinyxml2.cpp
+- ${CMAKE_CURRENT_LIST_DIR}/thirdparty//tinyxml/tinyxml2.h
+ ${CMAKE_CURRENT_LIST_DIR}/serialization/zipreader.cpp
+ ${CMAKE_CURRENT_LIST_DIR}/serialization/zipreader.h
+ ${CMAKE_CURRENT_LIST_DIR}/serialization/zipwriter.cpp
+@@ -124,6 +122,8 @@ set(MODULE_SRC
+ ${CMAKE_CURRENT_LIST_DIR}/concurrency/taskscheduler.h
+ )
+
++find_package(tinyxml2 REQUIRED)
++
+ if (GLOBAL_NO_INTERNAL)
+ set(MODULE_DEF ${MODULE_DEF} -DGLOBAL_NO_INTERNAL)
+ else()
+@@ -184,6 +184,7 @@ set(MODULE_INCLUDE
+ set(MODULE_LINK
+ ${FS_LIB}
+ ${Z_LIB}
++ tinyxml2::tinyxml2
+ )
+
+ if (OS_IS_MAC)
+--- a/src/framework/global/serialization/xmldom.cpp
++++ b/src/framework/global/serialization/xmldom.cpp
+@@ -21,7 +21,7 @@
+ */
+ #include "xmldom.h"
+
+-#include "thirdparty/tinyxml/tinyxml2.h"
++#include <tinyxml2.h>
+
+ #include "log.h"
+
+--- a/src/framework/global/serialization/xmlstreamreader.cpp
++++ b/src/framework/global/serialization/xmlstreamreader.cpp
+@@ -23,7 +23,7 @@
+
+ #include <cstring>
+
+-#include "thirdparty/tinyxml/tinyxml2.h"
++#include <tinyxml2.h>
+
+ #include "log.h"
+
+--- a/src/framework/testing/gtest.cmake
++++ b/src/framework/testing/gtest.cmake
+@@ -60,7 +60,7 @@ find_package(Qt5 COMPONENTS Core Gui REQ
+ target_link_libraries(${MODULE_TEST}
+ Qt5::Core
+ Qt5::Gui
+- gmock
++ GTest::gmock
+ global
+ ${MODULE_TEST_LINK}
+ )
diff --git a/media-sound/musescore/files/musescore-4.0.2-uncompressed-man-pages.patch b/media-sound/musescore/files/musescore-4.0.2-uncompressed-man-pages.patch
new file mode 100644
index 000000000000..078662a66bdb
--- /dev/null
+++ b/media-sound/musescore/files/musescore-4.0.2-uncompressed-man-pages.patch
@@ -0,0 +1,29 @@
+--- a/build/cmake/SetupAppImagePackaging.cmake
++++ b/build/cmake/SetupAppImagePackaging.cmake
+@@ -85,7 +85,7 @@ if (NOT MINGW AND NOT MSVC AND NOT APPLE
+ # Compress man pages if gzip is installed (don't on OpenBSD)
+ # Note: Compressing man pages is normal on Linux but not OpenBSD
+ find_program( GZIP_EXECUTABLE gzip DOC "A tool for compressing manpages (optional)." )
+- if (GZIP_EXECUTABLE AND NOT CMAKE_SYSTEM_NAME MATCHES "OpenBSD")
++ if (GZIP_EXECUTABLE AND NOT CMAKE_SYSTEM_NAME MATCHES "OpenBSD" AND false)
+ message(STATUS "Found 'gzip'. Man pages will be compressed.")
+ set(MAN_TARGET ${MAN_BUILD})
+ set(MAN_EXTENSION ${MAN_EXTENSION}.gz)
+@@ -102,7 +102,7 @@ if (NOT MINGW AND NOT MSVC AND NOT APPLE
+ COMMAND echo "Man pages have been compressed ready for installation."
+ VERBATIM
+ )
+- else (GZIP_EXECUTABLE AND NOT CMAKE_SYSTEM_NAME MATCHES "OpenBSD")
++ else (GZIP_EXECUTABLE AND NOT CMAKE_SYSTEM_NAME MATCHES "OpenBSD" AND false)
+ if (CMAKE_SYSTEM_NAME MATCHES "OpenBSD")
+ message(STATUS "System is OpenBSD: Man pages will not be compressed.")
+ else (CMAKE_SYSTEM_NAME MATCHES "OpenBSD")
+@@ -112,7 +112,7 @@ if (NOT MINGW AND NOT MSVC AND NOT APPLE
+ COMMAND echo "Man pages will be installed uncompressed."
+ VERBATIM
+ )
+- endif (GZIP_EXECUTABLE AND NOT CMAKE_SYSTEM_NAME MATCHES "OpenBSD")
++ endif (GZIP_EXECUTABLE AND NOT CMAKE_SYSTEM_NAME MATCHES "OpenBSD" AND false)
+ # Install man pages in either compressed or uncompressed form
+ install( FILES ${MAN_BUILD} DESTINATION share/man/man1 COMPONENT doc)
+ # Create symlink alias for man pages so `man musescore` = `man mscore`
diff --git a/media-sound/musescore/metadata.xml b/media-sound/musescore/metadata.xml
index e2ba1fa20224..c17629b67a33 100644
--- a/media-sound/musescore/metadata.xml
+++ b/media-sound/musescore/metadata.xml
@@ -10,6 +10,7 @@
<remote-id type="github">musescore/MuseScore</remote-id>
</upstream>
<use>
+ <flag name="jumbo-build">Combine source files to speed up build process, requires more memory</flag>
<flag name="osc">Enable OSC remote control protocol</flag>
<flag name="omr">Enable PDF import (OMR - optical music recognition)</flag>
<flag name="portmidi">Enable support for building against <pkg>media-libs/portmidi</pkg></flag>
diff --git a/media-sound/musescore/musescore-4.0.2.ebuild b/media-sound/musescore/musescore-4.0.2.ebuild
new file mode 100644
index 000000000000..cd79a319f13f
--- /dev/null
+++ b/media-sound/musescore/musescore-4.0.2.ebuild
@@ -0,0 +1,135 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+#CMAKE_MAKEFILE_GENERATOR="emake"
+CHECKREQS_DISK_BUILD=3500M
+VIRTUALX_REQUIRED="test"
+inherit cmake qmake-utils xdg check-reqs virtualx
+
+if [[ ${PV} == "9999" ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/${PN}/MuseScore.git"
+else
+ SRC_URI="
+ https://github.com/musescore/MuseScore/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ "
+ KEYWORDS="~amd64 ~arm64 ~x86"
+ S="${WORKDIR}/MuseScore-${PV}"
+fi
+
+DESCRIPTION="WYSIWYG Music Score Typesetter"
+HOMEPAGE="https://musescore.org/"
+# MuseScore_General-*.tar.bz2 packaged from https://ftp.osuosl.org/pub/musescore/soundfont/MuseScore_General/
+# It has to be repackaged because the files are not versioned, current version can be found in VERSION file there.
+SRC_URI+=" https://dev.gentoo.org/~fordfrog/distfiles/MuseScore_General-0.2.0.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="debug jumbo-build test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ dev-qt/linguist-tools:5
+ virtual/pkgconfig
+"
+DEPEND="
+ dev-libs/tinyxml2:=
+ dev-qt/designer:5
+ dev-qt/qtconcurrent:5
+ dev-qt/qtcore:5
+ dev-qt/qtdeclarative:5
+ dev-qt/qtgui:5
+ dev-qt/qthelp:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtnetworkauth:5
+ dev-qt/qtopengl:5
+ dev-qt/qtprintsupport:5
+ dev-qt/qtquickcontrols:5
+ dev-qt/qtquickcontrols2:5
+ >=dev-qt/qtsingleapplication-2.6.1_p20171024[X]
+ dev-qt/qtsvg:5
+ dev-qt/qtxml:5
+ dev-qt/qtxmlpatterns:5
+ >=media-libs/alsa-lib-1.0.0
+ media-libs/flac:=
+ >=media-libs/freetype-2.5.2
+ media-libs/libopusenc
+ media-libs/libsndfile
+ media-libs/opus
+ media-sound/lame
+ sys-libs/zlib:=
+
+ test? (
+ dev-cpp/gtest
+ )
+"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/${P}-uncompressed-man-pages.patch"
+ "${FILESDIR}/${P}-unbundle-deps.patch"
+)
+
+src_unpack() {
+ if [[ ${PV} == "9999" ]]; then
+ git-r3_src_unpack
+ unpack ${A}
+ else
+ default
+ fi
+}
+
+src_prepare() {
+ cmake_src_prepare
+
+ # Move soundfonts to the correct directory
+ mv "${WORKDIR}"/sound/* "${S}"/share/sound/ || die "Failed to move soundfont files"
+
+ # Make sure we don't accidentally use bundled third party deps
+ # for which we want to use system packages instead.
+ rm -r thirdparty/{flac,freetype,googletest,lame,opus,opusenc} \
+ || die "Failed to remove unused thirdparty directories"
+}
+
+src_configure() {
+ # bug #766111
+ export PATH="$(qt5_get_bindir):${PATH}"
+
+ local mycmakeargs=(
+ -DMUSESCORE_BUILD_CONFIG=release
+
+ -DBUILD_CRASHPAD_CLIENT=OFF
+ -DBUILD_AUTOUPDATE=OFF
+ # Jack support has been dropped in 4.0.0,
+ # but its remnants are still in the build system and cause trouble.
+ # https://github.com/musescore/MuseScore/issues/12775
+ -DBUILD_JACK=OFF
+ -DDOWNLOAD_SOUNDFONT=OFF
+ -DSOUNDFONT3=ON
+ -DBUILD_UNIT_TESTS="$(usex test)"
+ -DCMAKE_SKIP_RPATH=ON
+ -DTRY_USE_CCACHE=OFF
+ -DBUILD_UNITY="$(usex jumbo-build)"
+ -DUSE_SYSTEM_FREETYPE=ON
+ )
+ cmake_src_configure
+}
+
+src_compile() {
+ cd "${BUILD_DIR}" || die
+ cmake_build -j1 lrelease manpages
+ cmake_src_compile
+}
+
+src_test() {
+ virtx cmake_src_test
+}
+
+src_install() {
+ cmake_src_install
+
+ # Hack to not install bundled libraries like libogg
+ rm -rf "${ED}/usr/include" "${ED}/usr/$(get_libdir)" || die
+}