commit: 83bc28d639c2c463b3026d8a5bfde30aed03d434 Author: Nicolas PARLANT <nicolas.parlant <AT> parhuet <DOT> fr> AuthorDate: Sun Dec 21 07:00:32 2025 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Mon Dec 22 11:30:14 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=83bc28d6
media-sound/musescore: Bump to 4.6.5 Signed-off-by: Nicolas PARLANT <nicolas.parlant <AT> parhuet.fr> Part-of: https://github.com/gentoo/gentoo/pull/45118 Closes: https://github.com/gentoo/gentoo/pull/45118 Signed-off-by: Sam James <sam <AT> gentoo.org> media-sound/musescore/Manifest | 1 + media-sound/musescore/musescore-4.6.5.ebuild | 188 +++++++++++++++++++++++++++ 2 files changed, 189 insertions(+) diff --git a/media-sound/musescore/Manifest b/media-sound/musescore/Manifest index 3cff8e1fd41a..55952e9ba15f 100644 --- a/media-sound/musescore/Manifest +++ b/media-sound/musescore/Manifest @@ -1,3 +1,4 @@ DIST MuseScore_General-0.2.0.tar.bz2 35122747 BLAKE2B 7f9cafb7912ab8c977842c51df69506d4ad3d1d37498c856978a2d5ab50a1c4fe9145a4807f8c353e6f14138704abb2bbd70c948f1621b494c6e0458c2df0184 SHA512 69eeb22e8c9d1d393a2af857baeb8e49bf2a492651d18190685c74df84a5f6b424e37077e39d9d69c117c4896ea1fbb857eba25a1fbcb6f98d53f384a55713cc DIST musescore-4.6.3.tar.gz 159635093 BLAKE2B 8d15cd4182ea4be2d58f5a4b03d099608148bf43afc1057eb97f0003ad3acd1796aef16ee6fa44fac39343a05bf7b1236d22918119f69d40be2b5f19609d52a9 SHA512 bd8f427154613f00d5a84a949b05351ce5fa8e9ce2f37410c97762d5dd29643c2e6c5bd763a40a99f927aa61d84a3572734189f2650daae5eb3a6a51717be923 DIST musescore-4.6.4.tar.gz 159888545 BLAKE2B f7f728558edaf7b439ff6b33922b579ea5ab73f74fd459a1a55fb8f10832cc962196213f387617b8fc92e91ea40da2b0c0bd0e53f759e08dd6010a6a22c9863b SHA512 4a1c691cad8d27f53a2e50045f7fa4a77111093b5a3a9682dd339966fc38050f1879d86d1f663e888542495538c9ad7191f09991b412c2c04b4c079b67e5fa9b +DIST musescore-4.6.5.tar.gz 159873358 BLAKE2B 736b625f7d5a96bee589221ccc8063e3591040e4152156103884d354a9b9f428099c0840564bb89d630627e55c9ef58eb48dd4c942cc4864fa6b0b89faeaf9bb SHA512 fdecdf641b61d17f8039e3f8a1f60b3b17ddf7dc8ceb46365dfb9c447f140a3731850356580b8bcab8d305dee3662c701c7ad0110424c452d881789fe3a72e24 diff --git a/media-sound/musescore/musescore-4.6.5.ebuild b/media-sound/musescore/musescore-4.6.5.ebuild new file mode 100644 index 000000000000..641d2f6280fe --- /dev/null +++ b/media-sound/musescore/musescore-4.6.5.ebuild @@ -0,0 +1,188 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# https://bugs.gentoo.org/958256, bundled fluidsynth: +# src/framework/audio/thirdparty/fluidsynth/fluidsynth-2.3.3/src/gentables/CMakeLists.txt +# upstream files are >=3.16, KDDockWidgets is 3.12 +CMAKE_QA_COMPAT_SKIP=yes +CHECKREQS_DISK_BUILD=3500M +inherit cmake flag-o-matic xdg check-reqs + +if [[ ${PV} == "9999" ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/musescore/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="jack pipewire test video websockets" +REQUIRED_USE="?? ( jack pipewire )" +RESTRICT="!test? ( test )" + +BDEPEND=" + dev-qt/qttools:6[linguist] + virtual/pkgconfig +" +RDEPEND=" + dev-libs/pugixml + dev-qt/qtbase:6[concurrent,dbus,gui,network,opengl,widgets,xml,X] + dev-qt/qt5compat:6[qml] + dev-qt/qtdeclarative:6 + dev-qt/qtnetworkauth:6 + dev-qt/qtscxml:6 + dev-qt/qtsvg:6 + media-libs/alsa-lib + media-libs/flac:= + media-libs/freetype + media-libs/harfbuzz:= + media-libs/libopusenc + media-libs/libsndfile + media-libs/opus + media-sound/lame + virtual/zlib:= + jack? ( virtual/jack ) + pipewire? ( media-video/pipewire:= ) + video? ( media-video/ffmpeg:= ) + websockets? ( dev-qt/qtwebsockets:6 ) +" +DEPEND="${RDEPEND} + dev-libs/utfcpp + test? ( dev-cpp/gtest ) +" + +PATCHES=( + # backported from master + "${FILESDIR}/${PN}-4.5.2-ffmpeg8.patch" + "${FILESDIR}/${PN}-4.6.3-rm_tinyxml.patch" + "${FILESDIR}/${PN}-4.6.3-missing_includes.patch" + "${FILESDIR}/${PN}-4.6.4-missing_includes.patch" + # unbundle 3rd libs + "${FILESDIR}/${PN}-4.6.3-unbundle-lame.patch" + "${FILESDIR}/${PN}-4.6.3-unbundle-pugixml.patch" + "${FILESDIR}/${PN}-4.7-unbundle-gtest.patch" + "${FILESDIR}/${PN}-4.7-unbundle-utfcpp.patch" +) + +src_unpack() { + if [[ ${PV} == "9999" ]]; then + git-r3_src_unpack + unpack ${A} + else + default + fi +} + +src_prepare() { + # see https://github.com/musescore/MuseScore/issues/11572 + # keep global/thirdparty/picojson, upstream is inactive + # keep dockwindow/thirdparty/KDDockWidgets, using priv headers + # keep audio/thirdparty/fluidsynth, using priv headers + # keep audio/thirdparty/stb, one file, same as miniaudio + local rm_deps=( + audio/thirdparty/flac + audio/thirdparty/lame + audio/thirdparty/opus + audio/thirdparty/opusenc + draw/thirdparty/freetype + global/thirdparty/pugixml + global/thirdparty/tinyxml + global/thirdparty/utfcpp + testing/thirdparty/googletest + ) + + local bundle + for bundle in "${rm_deps[@]}"; do + rm -r src/framework/"${bundle}" || die + done + + cmake_src_prepare + + # Move soundfonts to the correct directory + mv -v "${WORKDIR}"/sound/* "${S}"/share/sound/ || die "Failed to move soundfont files" +} + +src_configure() { + # confuses rcc, bug #908808 + filter-lto + + local mycmakeargs=( + -DCMAKE_POSITION_INDEPENDENT_CODE=ON # https://github.com/musescore/MuseScore/issues/28797 + -DCMAKE_BUILD_TYPE="release" + -DCMAKE_CXX_FLAGS_RELEASE="${CXXFLAGS}" + -DCMAKE_C_FLAGS_RELEASE="${CFLAGS}" + -DCMAKE_SKIP_RPATH=TRUE + -DGZIP_EXECUTABLE=OFF # avoid compressed manpages + -DMUE_BUILD_IMPEXP_VIDEOEXPORT_MODULE="$(usex video)" + -DMUE_COMPILE_USE_SYSTEM_FLAC=ON + -DMUE_COMPILE_USE_SYSTEM_FREETYPE=ON + -DMUE_COMPILE_USE_SYSTEM_OPUS=ON + -DMUE_COMPILE_USE_SYSTEM_OPUSENC=ON + -DMUE_COMPILE_USE_SYSTEM_HARFBUZZ=ON + -DMUE_DOWNLOAD_SOUNDFONT=OFF + -DMUSE_APP_BUILD_MODE="release" + -DMUSE_COMPILE_USE_COMPILER_CACHE=OFF + -DMUSE_COMPILE_USE_PCH=OFF + -DMUSE_MODULE_AUDIO_JACK="$(usex jack)" + -DMUSE_MODULE_DIAGNOSTICS_CRASHPAD_CLIENT=OFF + -DMUSE_MODULE_NETWORK_WEBSOCKET="$(usex websockets)" + -DMUSE_MODULE_UPDATE=OFF + -DMUSE_PIPEWIRE_AUDIO_DRIVER="$(usex pipewire)" + # tests + -DMUSE_ENABLE_UNIT_TESTS="$(usex test)" + -DMUE_BUILD_BRAILLE_TESTS="$(usex test)" + -DMUE_BUILD_CONVERTER_TESTS="$(usex test)" + -DMUE_BUILD_ENGRAVING_TESTS="$(usex test)" + -DMUE_BUILD_IMPORTEXPORT_TESTS="$(usex test)" + -DMUE_BUILD_NOTATION_TESTS="$(usex test)" + -DMUE_BUILD_PLAYBACK_TESTS="$(usex test)" + -DMUE_BUILD_PROJECT_TESTS="$(usex test)" + ) + cmake_src_configure +} + +src_test() { + CMAKE_SKIP_TESTS=( + # see https://github.com/musescore/MuseScore/issues/30434 + # Global_AllocatorTests* fail with gcc only, to investigate + muse_global_tests + # segfault + muse_audio_tests + # see bug #950450 too + iex_musicxml_tests + # fixed in master + converter_tests + ) + + QT_QPA_PLATFORM=offscreen cmake_src_test +} + +pkg_preinst() { + xdg_pkg_preinst + + if ! has_version "media-sound/musescore" && ! use pipewire; then + show_pipewire_warning=1 + fi +} + +pkg_postinst() { + xdg_pkg_postinst + + if [[ -n ${show_pipewire_warning} ]]; then + ewarn "PipeWire support is disabled but it's the default audio driver anyway!" + ewarn "Check your configuration." + fi +}
