From e0961ec29a939c34441bf052512073a3916b8b6f Mon Sep 17 00:00:00 2001 From: Schrijvers Luc Date: Sun, 21 Dec 2025 09:18:43 +0100 Subject: [PATCH] kdevelop_kf6, bump to 25.12.0 (#13445) --- ...8.0.recipe => kdevelop_kf6-25.12.0.recipe} | 15 ++----- ...8.0.patchset => kdevelop-25.12.0.patchset} | 43 +++++++++---------- 2 files changed, 25 insertions(+), 33 deletions(-) rename dev-util/kdevelop/{kdevelop_kf6-25.08.0.recipe => kdevelop_kf6-25.12.0.recipe} (95%) rename dev-util/kdevelop/patches/{kdevelop-25.08.0.patchset => kdevelop-25.12.0.patchset} (92%) diff --git a/dev-util/kdevelop/kdevelop_kf6-25.08.0.recipe b/dev-util/kdevelop/kdevelop_kf6-25.12.0.recipe similarity index 95% rename from dev-util/kdevelop/kdevelop_kf6-25.08.0.recipe rename to dev-util/kdevelop/kdevelop_kf6-25.12.0.recipe index c915b0f37..50ea1b9ed 100644 --- a/dev-util/kdevelop/kdevelop_kf6-25.08.0.recipe +++ b/dev-util/kdevelop/kdevelop_kf6-25.12.0.recipe @@ -7,9 +7,9 @@ HOMEPAGE="https://www.kdevelop.org/" COPYRIGHT="2010-2025 KDE Organisation" LICENSE="GNU GPL v3 GNU LGPL v3" -REVISION="2" +REVISION="1" SOURCE_URI="https://download.kde.org/stable/release-service/$portVersion/src/kdevelop-$portVersion.tar.xz" -CHECKSUM_SHA256="8682c13bad865433cf93574275f3da8fe6ff7080ee6178541c5c46cb4560a0ad" +CHECKSUM_SHA256="efff758bd586af5d82329d2f340abfe646673d89fc6f5770838aea49f73f3f5f" SOURCE_DIR="kdevelop-$portVersion" PATCHES="kdevelop-$portVersion.patchset" ADDITIONAL_FILES="kdevelop.rdef.in" @@ -17,7 +17,7 @@ ADDITIONAL_FILES="kdevelop.rdef.in" ARCHITECTURES="all !x86_gcc2" SECONDARY_ARCHITECTURES="x86" -libVersion="6.2.${portVersion//./}0" +libVersion="6.4.251200" libVersionCompat="$libVersion compat >= ${libVersion%%.*}" clangVer="20" @@ -166,7 +166,6 @@ BUILD_REQUIRES=" devel:libKF6Archive$secondaryArchSuffix devel:libKF6ConfigCore$secondaryArchSuffix devel:libKF6Crash$secondaryArchSuffix - devel:libKF6DocTools$secondaryArchSuffix devel:libKF6GuiAddons$secondaryArchSuffix devel:libKF6I18n$secondaryArchSuffix devel:libKF6IconThemes$secondaryArchSuffix @@ -223,9 +222,6 @@ TEST_REQUIRES=" PATCH() { - # disable docs generation until libxml package is fixed - sed -e '/add_subdirectory(doc)/ s/^#*/#/' -i CMakeLists.txt - sed -e '/kdoctools_install(po)/ s/^#*/#/' -i CMakeLists.txt # use Haiku's icon theme sed -e 's,\ KIconTheme::initTheme();,\// KIconTheme::initTheme();,g' -i app/main.cpp # disable searching for qtwebengine @@ -243,12 +239,9 @@ BUILD() cmake -B build -S . -DCMAKE_BUILD_TYPE=Release \ $cmakeDirArgs \ -DCMAKE_AUTOGEN_PARALLEL=1 \ - -DKDE_INSTALL_QMLDIR=$dataDir/Qt6/qml \ - -DKDE_INSTALL_PLUGINDIR=$addOnsDir/Qt6 \ - -DKDE_INSTALL_QTPLUGINDIR=$addOnsDir/Qt6 \ - -DECM_DIR=/system/data/cmake/Modules/ECM/cmake \ -DCLANG_BUILTIN_DIR="$BUILTIN_DIR" \ -DBUILD_DOC_VIEWER=OFF \ + -DBUILD_DOC=OFF \ -DBUILD_TESTING=ON \ -Wno-dev diff --git a/dev-util/kdevelop/patches/kdevelop-25.08.0.patchset b/dev-util/kdevelop/patches/kdevelop-25.12.0.patchset similarity index 92% rename from dev-util/kdevelop/patches/kdevelop-25.08.0.patchset rename to dev-util/kdevelop/patches/kdevelop-25.12.0.patchset index 19ec19607..e1710aa04 100644 --- a/dev-util/kdevelop/patches/kdevelop-25.08.0.patchset +++ b/dev-util/kdevelop/patches/kdevelop-25.12.0.patchset @@ -57,7 +57,7 @@ index 74759ff..f710a12 100644 install(FILES documentationfindwidget.h diff --git a/kdevplatform/documentation/standarddocumentationview.cpp b/kdevplatform/documentation/standarddocumentationview.cpp -index e5e09be..2d4f759 100644 +index 969eb65..d13f568 100644 --- a/kdevplatform/documentation/standarddocumentationview.cpp +++ b/kdevplatform/documentation/standarddocumentationview.cpp @@ -5,6 +5,7 @@ @@ -90,12 +90,12 @@ index e5e09be..2d4f759 100644 class StandardDocumentationPage : public QWebEnginePage { Q_OBJECT -@@ -67,13 +71,15 @@ private: +@@ -67,13 +71,16 @@ private: KDevelop::StandardDocumentationView* const m_view; bool m_isDelegating = false; }; -- +#endif + } // unnamed namespace void StandardDocumentationView::registerCustomUrlSchemes() @@ -107,7 +107,7 @@ index e5e09be..2d4f759 100644 } class KDevelop::StandardDocumentationViewPrivate -@@ -82,18 +88,23 @@ public: +@@ -82,18 +89,23 @@ public: ZoomController* m_zoomController = nullptr; IDocumentation::Ptr m_doc; @@ -131,7 +131,7 @@ index e5e09be..2d4f759 100644 // prevent QWebEngine (Chromium) from overriding the signal handlers of KCrash const auto chromiumFlags = qgetenv("QTWEBENGINE_CHROMIUM_FLAGS"); if (!chromiumFlags.contains("disable-in-process-stack-traces")) { -@@ -110,6 +121,7 @@ public: +@@ -110,6 +122,7 @@ public: // The event filter is necessary for handling mouse events since they are swallowed by QWebEngineView. m_view->installEventFilter(parent); @@ -139,11 +139,10 @@ index e5e09be..2d4f759 100644 } }; -@@ -118,13 +130,16 @@ StandardDocumentationView::StandardDocumentationView(DocumentationFindWidget* fi - , d_ptr(new StandardDocumentationViewPrivate) +@@ -119,12 +132,16 @@ StandardDocumentationView::StandardDocumentationView(DocumentationFindWidget* fi { Q_D(StandardDocumentationView); -- + +#if BUILD_DOC_VIEWER auto mainLayout = new QVBoxLayout(this); mainLayout->setContentsMargins(0, 0, 0, 0); @@ -157,7 +156,7 @@ index e5e09be..2d4f759 100644 findWidget->setEnabled(true); connect(findWidget, &DocumentationFindWidget::searchRequested, this, &StandardDocumentationView::search); -@@ -137,13 +152,16 @@ KDevelop::StandardDocumentationView::~StandardDocumentationView() +@@ -137,13 +154,16 @@ KDevelop::StandardDocumentationView::~StandardDocumentationView() Q_D(StandardDocumentationView); // Prevent getting a loadFinished() signal on destruction. @@ -174,7 +173,7 @@ index e5e09be..2d4f759 100644 QWebEnginePage::FindFlags ff = {}; if(options & DocumentationFindWidget::Previous) ff |= QWebEnginePage::FindBackward; -@@ -152,12 +170,14 @@ void StandardDocumentationView::search ( const QString& text, DocumentationFindW +@@ -152,12 +172,14 @@ void StandardDocumentationView::search ( const QString& text, DocumentationFindW ff |= QWebEnginePage::FindCaseSensitively; d->m_view->page()->findText(text, ff); @@ -189,7 +188,7 @@ index e5e09be..2d4f759 100644 QWebEnginePage::FindFlags findFlags; if (options & DocumentationFindWidget::MatchCase) -@@ -173,6 +193,7 @@ void StandardDocumentationView::searchIncremental(const QString& text, Documenta +@@ -173,6 +195,7 @@ void StandardDocumentationView::searchIncremental(const QString& text, Documenta // casesensitivity, that global matches are not updated and the ones with non-matching casing // still active. no workaround so far. d->m_view->page()->findText(text, findFlags); @@ -197,7 +196,7 @@ index e5e09be..2d4f759 100644 } void StandardDocumentationView::finishSearch() -@@ -180,7 +201,9 @@ void StandardDocumentationView::finishSearch() +@@ -180,7 +203,9 @@ void StandardDocumentationView::finishSearch() Q_D(StandardDocumentationView); // passing empty string to reset search, as told in API docs @@ -207,7 +206,7 @@ index e5e09be..2d4f759 100644 } void StandardDocumentationView::initZoom(const QString& configSubGroup) -@@ -235,6 +258,7 @@ void StandardDocumentationView::setOverrideCssCode(const QByteArray& cssCode) +@@ -236,6 +261,7 @@ void StandardDocumentationView::setOverrideCssCode(const QByteArray& cssCode) { Q_D(StandardDocumentationView); @@ -215,7 +214,7 @@ index e5e09be..2d4f759 100644 const auto scriptName = QStringLiteral("OverrideCss"); auto& scripts = d->m_view->page()->scripts(); -@@ -268,20 +292,25 @@ void StandardDocumentationView::setOverrideCssCode(const QByteArray& cssCode) +@@ -269,20 +295,25 @@ void StandardDocumentationView::setOverrideCssCode(const QByteArray& cssCode) script.setWorldId(QWebEngineScript::ApplicationWorld); scripts.insert(script); @@ -241,7 +240,7 @@ index e5e09be..2d4f759 100644 } void KDevelop::StandardDocumentationView::installUrlSchemeHandler(const QByteArray& scheme, -@@ -289,25 +318,30 @@ void KDevelop::StandardDocumentationView::installUrlSchemeHandler(const QByteArr +@@ -290,25 +321,30 @@ void KDevelop::StandardDocumentationView::installUrlSchemeHandler(const QByteArr { Q_D(StandardDocumentationView); @@ -269,12 +268,12 @@ index e5e09be..2d4f759 100644 Q_D(StandardDocumentationView); +#if BUILD_DOC_VIEWER - auto menu = new QMenu(this); auto copyAction = d->m_view->pageAction(QWebEnginePage::Copy); - if (copyAction) { -@@ -315,12 +349,16 @@ QMenu* StandardDocumentationView::createStandardContextMenu() - menu->addAction(copyAction); - } + if (!copyAction) { + return nullptr; +@@ -318,12 +354,16 @@ QMenu* StandardDocumentationView::createStandardContextMenu() + auto* const menu = new QMenu(this); + menu->addAction(copyAction); return menu; +#else + return nullptr; @@ -289,7 +288,7 @@ index e5e09be..2d4f759 100644 if (object == d->m_view) { /* HACK / Workaround for QTBUG-43602 * Need to set an eventFilter on the child of WebengineView because it swallows -@@ -359,6 +397,9 @@ bool StandardDocumentationView::eventFilter(QObject* object, QEvent* event) +@@ -362,6 +402,9 @@ bool StandardDocumentationView::eventFilter(QObject* object, QEvent* event) } } return QWidget::eventFilter(object, event); @@ -299,7 +298,7 @@ index e5e09be..2d4f759 100644 } void StandardDocumentationView::contextMenuEvent(QContextMenuEvent* event) -@@ -377,7 +418,9 @@ void StandardDocumentationView::updateZoomFactor(double zoomFactor) +@@ -379,7 +422,9 @@ void StandardDocumentationView::updateZoomFactor(double zoomFactor) { Q_D(StandardDocumentationView);