commit: 96aad93520dfcfdf6b7356434c373bb62f1ab4fc Author: Nicolas PARLANT <nicolas.parlant <AT> parhuet <DOT> fr> AuthorDate: Sun Dec 21 10:14:41 2025 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Mon Dec 22 11:30:13 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=96aad935
media-sound/rosegarden: add 25.12 fix redirect for SRC_URI add missing qt5compat rm libSM, no longer used remove superfluous subslot-operators make lv2 optional and fix automagic remove pch by default use offscreen for the testsuite and restore skipped test waiting for a fix, use static to build test disable gtk-2 with new USE_GTK2 Bug: https://bugs.gentoo.org/957755 Closes: https://bugs.gentoo.org/951634 Closes: https://bugs.gentoo.org/964467 Signed-off-by: Nicolas PARLANT <nicolas.parlant <AT> parhuet.fr> Part-of: https://github.com/gentoo/gentoo/pull/45121 Closes: https://github.com/gentoo/gentoo/pull/45121 Signed-off-by: Sam James <sam <AT> gentoo.org> media-sound/rosegarden/Manifest | 1 + .../files/rosegarden-25.12-bump_cmake.patch | 12 ++++ .../files/rosegarden-25.12-force_static.patch | 19 ++++++ .../files/rosegarden-25.12-missing-includes.patch | 13 ++++ .../files/rosegarden-25.12-opt_lilv.patch | 25 ++++++++ .../files/rosegarden-25.12-opt_pch.patch | 12 ++++ media-sound/rosegarden/metadata.xml | 3 + media-sound/rosegarden/rosegarden-25.12.ebuild | 70 ++++++++++++++++++++++ 8 files changed, 155 insertions(+) diff --git a/media-sound/rosegarden/Manifest b/media-sound/rosegarden/Manifest index 87f9a0fbe579..36f4e6707e79 100644 --- a/media-sound/rosegarden/Manifest +++ b/media-sound/rosegarden/Manifest @@ -1,2 +1,3 @@ DIST rosegarden-24.12.1.tar.xz 5738756 BLAKE2B 5202a511c53bae267c347ff9197acfe4283987bbad3764393a0335bd7dad775a2042430d3f8226e24436ce15c03204312ce6dc123938f2cec33960c3eeba707d SHA512 f732951162e816a2dde4805e519c9b99598edb543fbe01f819248454c23eb70293a74e92ad11a51ecdd4990bca1f111242f838b2e3259ca09cb4f9bf955b9b6a DIST rosegarden-25.06.tar.xz 5780672 BLAKE2B 69f309337b4c0795d41c5afe97bf5129422bda7186484d52501512d8e3abb25b60e6811839ae4819c18c6d8af4a8587b7380f8e8919c3de64123241c9f5aa872 SHA512 4ce306c939e26f265e48a9ae90df32869b4530927dba9d1f7d017e089f7ff81a912d283dc80aa58f2ed3eacd4f05565d0a3663ece7795ed7c16b3a6753f04daf +DIST rosegarden-25.12.tar.xz 5831852 BLAKE2B f34b2d2f588b0bc788feeb4692ca687d986ea700c83344eeed8997c5fe2baf1c3c26e7b2e2db50a76bcbce851049e75189c1ef6dddf97374bd54e5ebff01e786 SHA512 a16c62cab42d6168e4481c379ff02bb3cce4ef8b312aa7744eac5b5c77936f7e6c075629fd5e6706d9226dec9830aeddf7e78126d3ee394d3363e32bde455d71 diff --git a/media-sound/rosegarden/files/rosegarden-25.12-bump_cmake.patch b/media-sound/rosegarden/files/rosegarden-25.12-bump_cmake.patch new file mode 100644 index 000000000000..7a8ba1e92341 --- /dev/null +++ b/media-sound/rosegarden/files/rosegarden-25.12-bump_cmake.patch @@ -0,0 +1,12 @@ +update cmake_min, see https://bugs.gentoo.org/964467 +from upstream https://sourceforge.net/p/rosegarden/git/ci/667697c99ed8808d40d3dea1e1b138c425e729bb +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -1,6 +1,6 @@ + # CMake version required. This must be the very first line, because it sets + # default policies affecting everything else. +-cmake_minimum_required(VERSION 3.5) ++cmake_minimum_required(VERSION 3.10) + + # Project name + project(rosegarden) diff --git a/media-sound/rosegarden/files/rosegarden-25.12-force_static.patch b/media-sound/rosegarden/files/rosegarden-25.12-force_static.patch new file mode 100644 index 000000000000..9cca28660f20 --- /dev/null +++ b/media-sound/rosegarden/files/rosegarden-25.12-force_static.patch @@ -0,0 +1,19 @@ +it fails to build with shared libs, force static for now +see https://bugs.gentoo.org/957755 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -237,14 +237,8 @@ feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES) + + # Unit tests disabled: use a static lib + # Unit tests enabled: use shared libs, to speed up linking +-if(BUILD_TESTING) +- set(RG_LIBRARY_TYPE SHARED) +- message(STATUS "Building unit tests, using shared libraries") +-else() + set(RG_LIBRARY_TYPE STATIC) + set(ROSEGARDENPRIVATE_STATIC_BUILD TRUE) # for generating rosegardenprivate-export.h +- message(STATUS "Not building unit tests, using a static library for rosegarden") +-endif() + + ######################### + # target for cppcheck diff --git a/media-sound/rosegarden/files/rosegarden-25.12-missing-includes.patch b/media-sound/rosegarden/files/rosegarden-25.12-missing-includes.patch new file mode 100644 index 000000000000..e00fb0050d23 --- /dev/null +++ b/media-sound/rosegarden/files/rosegarden-25.12-missing-includes.patch @@ -0,0 +1,13 @@ +not merged for now by upstream (was for Pitch.h) but definitely required +see https://sourceforge.net/p/rosegarden/bugs/1746/#a512 +--- a/src/base/Pitch.cpp ++++ b/src/base/Pitch.cpp +@@ -28,6 +28,8 @@ + + #include <vector> + ++#include <QObject> ++ + //dmm This will make everything excruciatingly slow if defined: + //#define DEBUG_PITCH + diff --git a/media-sound/rosegarden/files/rosegarden-25.12-opt_lilv.patch b/media-sound/rosegarden/files/rosegarden-25.12-opt_lilv.patch new file mode 100644 index 000000000000..f43a37cb542b --- /dev/null +++ b/media-sound/rosegarden/files/rosegarden-25.12-opt_lilv.patch @@ -0,0 +1,25 @@ +make lv2 optional +see https://sourceforge.net/p/rosegarden/patches/84/ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -213,14 +213,15 @@ if(NOT DISABLE_LIRC) + endif() + add_feature_info(LIRCCLIENT LIRCCLIENT_FOUND "The LIRC client library, for remote control support") + +-# lilv for lv2 plugins ++# Build with lv2 plugins support if lilv/lv2 detected, unless DISABLE_LILV is set + pkg_check_modules(LILV lilv-0) + if(NOT LILV_INCLUDE_DIRS) + message(WARNING "Failed to find Lilv header lilv/lilv.h for lv2 plugins") + endif() + + pkg_check_modules(LV2 lv2) +-if(LILV_INCLUDE_DIRS AND LILV_LIBRARIES AND LV2_INCLUDE_DIRS) ++set(LILV_FOUND FALSE) ++if(NOT DISABLE_LILV AND LILV_INCLUDE_DIRS AND LILV_LIBRARIES AND LV2_INCLUDE_DIRS) + set(LILV_FOUND TRUE) + endif() + add_feature_info(LILV LILV_FOUND "The Lilv library, for lv2 plugins") +-- +2.51.2 + diff --git a/media-sound/rosegarden/files/rosegarden-25.12-opt_pch.patch b/media-sound/rosegarden/files/rosegarden-25.12-opt_pch.patch new file mode 100644 index 000000000000..490881efe880 --- /dev/null +++ b/media-sound/rosegarden/files/rosegarden-25.12-opt_pch.patch @@ -0,0 +1,12 @@ +avoid precompiled-headers by default +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -853,7 +853,7 @@ add_library(rosegardenprivate ${RG_LIBRARY_TYPE} + + # If we've got cmake 3.16.0 or greater, use precompiled headers. + # Cuts build time almost in half. +-if(NOT ${CMAKE_VERSION} VERSION_LESS "3.16.0") ++if(NOT ${CMAKE_VERSION} VERSION_LESS "3.16.0" AND NOT DISABLE_PCH) + target_precompile_headers(rosegardenprivate + PRIVATE + # There's definitely a point where gcc slows down with too many diff --git a/media-sound/rosegarden/metadata.xml b/media-sound/rosegarden/metadata.xml index 4eb60ee9462d..2512a1d335b7 100644 --- a/media-sound/rosegarden/metadata.xml +++ b/media-sound/rosegarden/metadata.xml @@ -5,6 +5,9 @@ <email>[email protected]</email> <name>Gentoo ProAudio Project</name> </maintainer> + <use> + <flag name="lv2">Add support for Ladspa V2 plugins</flag> + </use> <upstream> <remote-id type="sourceforge">rosegarden</remote-id> </upstream> diff --git a/media-sound/rosegarden/rosegarden-25.12.ebuild b/media-sound/rosegarden/rosegarden-25.12.ebuild new file mode 100644 index 000000000000..be6eba351dce --- /dev/null +++ b/media-sound/rosegarden/rosegarden-25.12.ebuild @@ -0,0 +1,70 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake xdg + +DESCRIPTION="MIDI and audio sequencer and notation editor" +HOMEPAGE="https://www.rosegardenmusic.com/" +SRC_URI="https://downloads.sourceforge.net/project/rosegarden/${PN}/${PV}/${P}.tar.xz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" +IUSE="lirc lv2 test" +RESTRICT="!test? ( test )" + +BDEPEND=" + dev-qt/qttools:6[linguist] + virtual/pkgconfig +" +RDEPEND=" + dev-qt/qt5compat:6 + dev-qt/qtbase:6[gui,network,widgets,xml] + media-libs/alsa-lib + >=media-libs/dssi-1.0.0:= + media-libs/ladspa-sdk + media-libs/liblo + media-libs/liblrdf + media-libs/libsamplerate + media-libs/libsndfile + sci-libs/fftw:3.0= + virtual/jack + virtual/zlib:= + lirc? ( app-misc/lirc ) + lv2? ( + media-libs/lilv + >=media-libs/lv2-1.18.0 + ) +" +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}/${PN}-24.06-includes.patch" + "${FILESDIR}/${PN}-24.12-parameter-declaration.patch" + "${FILESDIR}/${PN}-24.12-missing-includes.patch" + "${FILESDIR}/${PN}-25.12-missing-includes.patch" + "${FILESDIR}/${PN}-25.12-bump_cmake.patch" + "${FILESDIR}/${PN}-25.12-opt_lilv.patch" + "${FILESDIR}/${PN}-25.12-opt_pch.patch" + # there is a linking problem when tests are enabled: https://bugs.gentoo.org/957755 + # force static until it's fixed + "${FILESDIR}/${PN}-25.12-force_static.patch" +) + +src_configure() { + local mycmakeargs=( + -DBUILD_TESTING=$(usex test) + -DDISABLE_LILV=$(usex !lv2) + -DDISABLE_LIRC=$(usex !lirc) + -DDISABLE_PCH=ON + -DUSE_GTK2=OFF + -DUSE_QT6=ON + ) + cmake_src_configure +} + +src_test() { + QT_QPA_PLATFORM=offscreen cmake_src_test +}
