diff --git a/media-sound/musescore/musescore-3.3.4.recipe b/media-sound/musescore/musescore-3.6.recipe similarity index 82% rename from media-sound/musescore/musescore-3.3.4.recipe rename to media-sound/musescore/musescore-3.6.recipe index 8629623c3..be2b4e5f1 100644 --- a/media-sound/musescore/musescore-3.3.4.recipe +++ b/media-sound/musescore/musescore-3.6.recipe @@ -3,9 +3,9 @@ DESCRIPTION="This application is used for creating, playing and printing beautif HOMEPAGE="https://musescore.org/" COPYRIGHT="2002-2019 Werner Schweer and others" LICENSE="GNU GPL v2" -REVISION="3" +REVISION="1" SOURCE_URI="https://github.com/musescore/MuseScore/archive/v$portVersion.tar.gz" -CHECKSUM_SHA256="ab8bade6c7eec6a9ae03f435cad65e79c4ca031d19020aa6e2a4da2868f49a2a" +CHECKSUM_SHA256="554cfbb329b184260efdd9522777b2d8422c21f535d0955720517c37912d9ccf" SOURCE_DIR="MuseScore-$portVersion" PATCHES="musescore-$portVersion.patchset" ADDITIONAL_FILES="musescore.rdef.in" @@ -68,21 +68,20 @@ BUILD() { export DISABLE_ASLR=1 mkdir -p $appsDir - make release PREFIX=$appsDir/MuseScore UPDATE_CACHE=FALSE BUILD_PULSEAUDIO=OFF \ - BUILD_JACK=OFF BUILD_PORTAUDIO=OFF BUILD_WEBENGINE=OFF \ - USE_SYSTEM_FREETYPE=ON DOWNLOAD_SOUNDFONT=OFF BUILD_ALSA=OFF + make PREFIX=$appsDir/MuseScore UPDATE_CACHE=FALSE BUILD_PULSEAUDIO=OFF \ + BUILD_JACK=OFF BUILD_PORTMIDI=OFF BUILD_PORTAUDIO=OFF BUILD_WEBENGINE=OFF \ + USE_SYSTEM_FREETYPE=ON DOWNLOAD_SOUNDFONT=OFF BUILD_ALSA=OFF \ + MUSESCORE_BUILD_CONFIG=release revision release } INSTALL() { - make install PREFIX=$appsDir/MuseScore UPDATE_CACHE=FALSE BUILD_PULSEAUDIO=OFF \ - BUILD_JACK=OFF BUILD_PORTAUDIO=OFF BUILD_WEBENGINE=OFF \ - USE_SYSTEM_FREETYPE=ON DOWNLOAD_SOUNDFONT=OFF BUILD_ALSA=OFF + make UPDATE_CACHE=FALSE -C build.release install local APP_SIGNATURE="application/x-vnd.musescore" local MAJOR="`echo "$portVersion" | cut -d. -f1`" local MIDDLE="`echo "$portVersion" | cut -d. -f2`" - local MINOR="`echo "$portVersion" | cut -d. -f3`" + local MINOR="0" # "`echo "$portVersion" | cut -d. -f3`" local LONG_INFO="$SUMMARY" sed \ -e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \ diff --git a/media-sound/musescore/patches/musescore-3.3.4.patchset b/media-sound/musescore/patches/musescore-3.3.4.patchset deleted file mode 100644 index 428994674..000000000 --- a/media-sound/musescore/patches/musescore-3.3.4.patchset +++ /dev/null @@ -1,286 +0,0 @@ -From 455108e41eba42ee6ce2efaf21bf3113eeeb4c74 Mon Sep 17 00:00:00 2001 -From: Adrien Destugues -Date: Tue, 17 Sep 2019 19:09:55 +0200 -Subject: Import still relevant part of Haiku patches. - - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 07b8b5e..148fe1f 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -114,6 +114,13 @@ if (APPLE) - option(BUILD_ALSA ${MAC_NOT_AVAIL} OFF) - endif (APPLE) - -+# Disable components not supported on Haiku -+if (HAIKU) -+ set(HAIKU_NOT_AVAIL "Not available on Haiku") -+ option(BUILD_PULSEAUDIO ${HAIKU_NOT_AVAIL} OFF) -+ option(BUILD_ALSA ${HAIKU_NOT_AVAIL} OFF) -+endif (HAIKU) -+ - # Disable components not supported on Linux/BSD - if (NOT APPLE AND NOT MINGW AND NOT MSVC) - set(NIX_NOT_AVAIL "Not available on Linux/BSD") -diff --git a/mscore/CMakeLists.txt b/mscore/CMakeLists.txt -index 1b85ed9..6710878 100644 ---- a/mscore/CMakeLists.txt -+++ b/mscore/CMakeLists.txt -@@ -806,8 +806,8 @@ else (MINGW) - - if (APPLE) - target_link_libraries(mscore ${OsxFrameworks}) -- else (APPLE) -- target_link_libraries(mscore rt) -+ elseif (NOT HAIKU) -+ target_link_libraries(mscore rt) - endif (APPLE) - - # 'gold' does not use indirect shared libraries for symbol resolution, Linux only -@@ -815,7 +815,9 @@ else (MINGW) - if(USE_JACK) - target_link_libraries(mscore ${CMAKE_DL_LIBS}) - endif(USE_JACK) -- target_link_libraries(mscore rt) -+ if (NOT HAIKU) -+ target_link_libraries(mscore rt) -+ endif(NOT HAIKU) - endif (NOT APPLE) - - if (APPLE) --- -2.24.1 - - -From 2f60f112b794565e392ba2d05aacdcb9f4916271 Mon Sep 17 00:00:00 2001 -From: Jerome Duval -Date: Tue, 31 Dec 2019 17:39:34 +0100 -Subject: Specializes template routines. - -Qt 5.14 introduces serialisation/deserialisation for enum classes, -this results in ambiguous templates between qdatastream.h and preferences.h. -we specialize everything to workaround this. - -diff --git a/mscore/preferences.h b/mscore/preferences.h -index 913498c..ed6b892 100644 ---- a/mscore/preferences.h -+++ b/mscore/preferences.h -@@ -374,21 +374,52 @@ extern Preferences preferences; - - // Stream operators for enum classes - // enum classes don't play well with QSettings without custom serialization --template::value>::type* = nullptr> --inline QDataStream &operator<<(QDataStream &out, const T &val) -+inline QDataStream& -+operator<<(QDataStream &out, const Ms::MuseScoreStyleType &val) - { - return out << static_cast(val); - } - --template::value>::type* = nullptr> --inline QDataStream &operator>>(QDataStream &in, T &val) -+inline QDataStream& -+operator>>(QDataStream &in, Ms::MuseScoreStyleType &val) - { - int tmp; - in >> tmp; -- val = static_cast(tmp); -+ val = static_cast(tmp); - return in; - } - -+inline QDataStream& -+operator<<(QDataStream &out, const Ms::SessionStart &val) -+{ -+ return out << static_cast(val); -+} -+ -+inline QDataStream& -+operator>>(QDataStream &in, Ms::SessionStart &val) -+{ -+ int tmp; -+ in >> tmp; -+ val = static_cast(tmp); -+ return in; -+} -+ -+inline QDataStream& -+operator<<(QDataStream &out, const Ms::MusicxmlExportBreaks &val) -+{ -+ return out << static_cast(val); -+} -+ -+inline QDataStream& -+operator>>(QDataStream &in, Ms::MusicxmlExportBreaks &val) -+{ -+ int tmp; -+ in >> tmp; -+ val = static_cast(tmp); -+ return in; -+} -+ -+ - class PreferenceVisitor { - public: - virtual void visit(QString key, IntPreference*) = 0; --- -2.24.1 - - -From 91dd54e1acd841387367a9795103b3de68ae1829 Mon Sep 17 00:00:00 2001 -From: Jerome Duval -Date: Tue, 31 Dec 2019 17:42:04 +0100 -Subject: fix warnings: replace QString::null, with QString() - - -diff --git a/mscore/capella.cpp b/mscore/capella.cpp -index 7144414..6243c8c 100644 ---- a/mscore/capella.cpp -+++ b/mscore/capella.cpp -@@ -2708,7 +2708,7 @@ Score::FileError importCapella(MasterScore* score, const QString& name) - QMessageBox::warning(0, - QWidget::tr("Import Capella"), - QWidget::tr("Load failed: %1").arg(cf.error(errNo)), -- QString::null, QWidget::tr("Quit"), QString::null, 0, 1); -+ QString(), QWidget::tr("Quit"), QString(), 0, 1); - } - fp.close(); - // avoid another error message box -diff --git a/mscore/importmidi/importmidi.cpp b/mscore/importmidi/importmidi.cpp -index a5d8894..8091a83 100644 ---- a/mscore/importmidi/importmidi.cpp -+++ b/mscore/importmidi/importmidi.cpp -@@ -1200,7 +1200,7 @@ Score::FileError importMidi(MasterScore *score, const QString &name) - QMessageBox::warning(0, - QWidget::tr("Load MIDI"), - QWidget::tr("Load failed: %1").arg(errorText), -- QString::null, QWidget::tr("Quit"), QString::null, 0, 1); -+ QString(), QWidget::tr("Quit"), QString(), 0, 1); - } - fp.close(); - qDebug("importMidi: bad file format"); -diff --git a/mscore/instrdialog.cpp b/mscore/instrdialog.cpp -index fa7bacd..8d81fe9 100644 ---- a/mscore/instrdialog.cpp -+++ b/mscore/instrdialog.cpp -@@ -138,7 +138,7 @@ void InstrumentsDialog::on_loadButton_clicked() - QMessageBox::warning(0, - QWidget::tr("Load Style Failed"), - QString(strerror(errno)), -- QString::null, QWidget::tr("Quit"), QString::null, 0, 1); -+ QString(), QWidget::tr("Quit"), QString(), 0, 1); - return; - } - instrumentsWidget->buildTemplateList(); -diff --git a/mscore/musescore.cpp b/mscore/musescore.cpp -index 3476241..4ded5a9 100644 ---- a/mscore/musescore.cpp -+++ b/mscore/musescore.cpp -@@ -4065,7 +4065,7 @@ bool MuseScore::readLanguages(const QString& path) - QMessageBox::warning(0, - QWidget::tr("Load Languages Failed:"), - error, -- QString::null, QWidget::tr("Quit"), QString::null, 0, 1); -+ QString(), QWidget::tr("Quit"), QString(), 0, 1); - return false; - } - -@@ -6884,7 +6884,7 @@ bool MuseScore::saveMp3(Score* score, const QString& name) - QMessageBox::warning(0, - tr("Encoding Error"), - tr("Unable to open target file for writing"), -- QString::null, QString::null); -+ QString(), QString()); - } - return false; - } -@@ -6923,7 +6923,7 @@ bool MuseScore::saveMp3(Score* score, QIODevice* device, bool& wasCanceled) - QMessageBox::warning(0, - tr("Error Opening LAME library"), - tr("Could not open MP3 encoding library!"), -- QString::null, QString::null); -+ QString(), QString()); - qDebug("Could not open MP3 encoding library!"); - return false; - } -@@ -6935,7 +6935,7 @@ bool MuseScore::saveMp3(Score* score, QIODevice* device, bool& wasCanceled) - QMessageBox::warning(0, - tr("Error Opening LAME library"), - tr("Not a valid or supported MP3 encoding library!"), -- QString::null, QString::null); -+ QString(), QString()); - qDebug("Not a valid or supported MP3 encoding library!"); - return false; - } -@@ -6960,7 +6960,7 @@ bool MuseScore::saveMp3(Score* score, QIODevice* device, bool& wasCanceled) - if (!MScore::noGui) { - QMessageBox::warning(0, tr("Encoding Error"), - tr("Unable to initialize MP3 stream"), -- QString::null, QString::null); -+ QString(), QString()); - } - qDebug("Unable to initialize MP3 stream"); - MScore::sampleRate = oldSampleRate; -@@ -7127,7 +7127,7 @@ bool MuseScore::saveMp3(Score* score, QIODevice* device, bool& wasCanceled) - QMessageBox::warning(0, - tr("Encoding Error"), - tr("Error %1 returned from MP3 encoder").arg(bytes), -- QString::null, QString::null); -+ QString(), QString()); - break; - } - else -diff --git a/mscore/musescore.h b/mscore/musescore.h -index 51864b6..af59ebd 100644 ---- a/mscore/musescore.h -+++ b/mscore/musescore.h -@@ -141,7 +141,7 @@ struct LanguageItem { - LanguageItem(const QString k, const QString n) { - key = k; - name = n; -- handbook = QString::null; -+ handbook = QString(); - } - LanguageItem(const QString k, const QString n, const QString h) { - key = k; -diff --git a/mscore/network/loginmanager.cpp b/mscore/network/loginmanager.cpp -index 41fdd40..d32b1b2 100644 ---- a/mscore/network/loginmanager.cpp -+++ b/mscore/network/loginmanager.cpp -@@ -831,7 +831,7 @@ void LoginManager::mediaUploadFinished() - QMessageBox::warning(0, - tr("Upload Error"), - tr("Sorry, MuseScore couldn't upload the audio file. Error %1").arg(e), -- QString::null, QString::null); -+ QString(), QString()); - } - } - --- -2.24.1 - - -From 87421462327190651ce298453cae9f425defaca4 Mon Sep 17 00:00:00 2001 -From: Gerasim Troeglazov <3dEyes@gmail.com> -Date: Tue, 7 Jan 2020 13:31:47 +1000 -Subject: Don't set Fusion style for Haiku - - -diff --git a/mscore/musescore.cpp b/mscore/musescore.cpp -index 4ded5a9..ef7e788 100644 ---- a/mscore/musescore.cpp -+++ b/mscore/musescore.cpp -@@ -7181,8 +7181,9 @@ bool MuseScore::saveMp3(Score* score, QIODevice* device, bool& wasCanceled) - void MuseScore::updateUiStyleAndTheme() - { - // set UI Theme -+#ifndef __HAIKU__ - QApplication::setStyle(QStyleFactory::create("Fusion")); -- -+#endif - QString wd = QString("%1/%2").arg(QStandardPaths::writableLocation(QStandardPaths::DocumentsLocation)).arg(QCoreApplication::applicationName()); - // set UI Color Palette - QPalette p(QApplication::palette()); --- -2.24.1 - diff --git a/media-sound/musescore/patches/musescore-3.6.patchset b/media-sound/musescore/patches/musescore-3.6.patchset new file mode 100644 index 000000000..d461729fe --- /dev/null +++ b/media-sound/musescore/patches/musescore-3.6.patchset @@ -0,0 +1,130 @@ +From 1520ac840f6ca859f2bc264a8b53f24b29c595a4 Mon Sep 17 00:00:00 2001 +From: Adrien Destugues +Date: Tue, 17 Sep 2019 19:09:55 +0200 +Subject: Import still relevant part of Haiku patches. + + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 360bde5..d1cdd35 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -137,6 +137,13 @@ if (APPLE) + option(BUILD_ALSA ${MAC_NOT_AVAIL} OFF) + endif (APPLE) + ++# Disable components not supported on Haiku ++if (HAIKU) ++ set(HAIKU_NOT_AVAIL "Not available on Haiku") ++ option(BUILD_PULSEAUDIO ${HAIKU_NOT_AVAIL} OFF) ++ option(BUILD_ALSA ${HAIKU_NOT_AVAIL} OFF) ++endif (HAIKU) ++ + # Disable components not supported on Linux/BSD + if (NOT APPLE AND NOT MINGW AND NOT MSVC) + set(NIX_NOT_AVAIL "Not available on Linux/BSD") +diff --git a/mscore/CMakeLists.txt b/mscore/CMakeLists.txt +index 6eb2162..ff07f7c 100644 +--- a/mscore/CMakeLists.txt ++++ b/mscore/CMakeLists.txt +@@ -436,7 +436,7 @@ else (MINGW) + + if (APPLE) + target_link_libraries(mscoreapp ${OsxFrameworks}) +- else (APPLE) ++ elseif (NOT HAIKU) + target_link_libraries(mscoreapp rt) + endif (APPLE) + +@@ -445,7 +445,9 @@ else (MINGW) + if(USE_JACK) + target_link_libraries(mscoreapp ${CMAKE_DL_LIBS}) + endif(USE_JACK) +- target_link_libraries(mscoreapp rt) ++ if (NOT HAIKU) ++ target_link_libraries(mscoreapp rt) ++ endif (NOT HAIKU) + endif (NOT APPLE) + + if (APPLE) +-- +2.30.0 + + +From 32f85ff8f0b82a7fb0cab0d7cf3f4e87b465c6a8 Mon Sep 17 00:00:00 2001 +From: Gerasim Troeglazov <3dEyes@gmail.com> +Date: Tue, 7 Jan 2020 13:31:47 +1000 +Subject: Don't set Fusion style for Haiku + + +diff --git a/mscore/musescore.cpp b/mscore/musescore.cpp +index ccfdab6..a3bd5ff 100644 +--- a/mscore/musescore.cpp ++++ b/mscore/musescore.cpp +@@ -7411,7 +7411,9 @@ void tryToRequestTelemetryPermission() + void MuseScore::updateUiStyleAndTheme() + { + // set UI Theme ++#ifndef __HAIKU__ + QApplication::setStyle(QStyleFactory::create("Fusion")); ++#endif + + #ifdef Q_OS_MAC + // On Mac, update the color of the window title bars +-- +2.30.0 + + +From b172dd8a86d5cea1904341dd09c9e194749c5832 Mon Sep 17 00:00:00 2001 +From: Jerome Duval +Date: Wed, 20 Jan 2021 09:52:46 +0100 +Subject: Haiku patch + + +diff --git a/build/FindQt5.cmake b/build/FindQt5.cmake +index 9ad7440..7c4f733 100644 +--- a/build/FindQt5.cmake ++++ b/build/FindQt5.cmake +@@ -36,14 +36,6 @@ if (WIN32) + ) + endif(WIN32) + +-# For Windows, because of these lines, for some unknown reason, the build of the .msi package fails. +-if(NOT ${CMAKE_HOST_SYSTEM_NAME} MATCHES "Windows") +- find_package(Qt5Core 5.15.0 QUIET) +- if (Qt5Core_FOUND) +- message(FATAL_ERROR "MuseScore 3 does not support Qt 5.15: 5.15.0 shows empty palettes panel, 5.15.1 and later crash when opening pre-3.6 scores due to QTBUG-77337") +- endif() +-endif() +- + find_package(Qt5Core ${QT_MIN_VERSION} REQUIRED) + + foreach(_component ${_components}) +diff --git a/main/CMakeLists.txt b/main/CMakeLists.txt +index 0cfba78..69645fc 100644 +--- a/main/CMakeLists.txt ++++ b/main/CMakeLists.txt +@@ -250,7 +250,7 @@ else (MINGW) + + if (APPLE) + target_link_libraries(mscore ${OsxFrameworks}) +- else (APPLE) ++ elif (NOT HAIKU) + target_link_libraries(mscore rt) + endif (APPLE) + +diff --git a/thirdparty/qt-google-analytics/ganalytics.cpp b/thirdparty/qt-google-analytics/ganalytics.cpp +index 7037eb0..a5bd106 100644 +--- a/thirdparty/qt-google-analytics/ganalytics.cpp ++++ b/thirdparty/qt-google-analytics/ganalytics.cpp +@@ -381,7 +381,7 @@ QString GAnalytics::Private::getSystemInfo() + .arg(QAndroidJniObject::getStaticObjectField("android/os/Build", "ID").toString()) + .arg(QAndroidJniObject::getStaticObjectField("android/os/Build", "BRAND").toString()); + } +-#elif defined(Q_OS_LINUX) ++#elif defined(Q_OS_LINUX) || defined(Q_OS_HAIKU) + #include + + /** +-- +2.30.0 +