summaryrefslogtreecommitdiff
path: root/source/kde/patch
diff options
context:
space:
mode:
Diffstat (limited to 'source/kde/patch')
-rw-r--r--source/kde/patch/README18
-rw-r--r--source/kde/patch/calligra.patch15
-rw-r--r--source/kde/patch/calligra/0001-adapt-to-libwps-0.4.patch52
-rw-r--r--source/kde/patch/calligra/0065-Backport-Plan-Fix-crash-due-to-accessing-deleted-obj.patch32
-rw-r--r--source/kde/patch/calligra/0066-Backport-Plan-Do-not-crash-if-scheduler-plugins-not-.patch138
-rw-r--r--source/kde/patch/calligra/0067-Backport-Plan-Fix-insert-file.patch101
-rw-r--r--source/kde/patch/calligra/0068-Backport-Plan-Fix-task-module-load-and-save.patch68
-rw-r--r--source/kde/patch/calligra/0069-Backport-Plan-Avoid-crash-in-special-cases.patch452
-rw-r--r--source/kde/patch/calligra/0070-Plan-Guard-against-trying-to-move-a-task-into-the-sa.patch50
-rw-r--r--source/kde/patch/calligra/boost-1.65.0.patch24
-rw-r--r--source/kde/patch/calligra/calligra-2.9.11-gcc6_arm.patch12
-rw-r--r--source/kde/patch/calligra/calligra.mariadb.diff33
-rw-r--r--source/kde/patch/k3b.patch9
-rw-r--r--source/kde/patch/k3b/k3b-ffmpeg3.patch138
-rw-r--r--source/kde/patch/k3b/k3b.narrowing.diff71
-rw-r--r--source/kde/patch/k3b/k3b.pointer.compare.diff29
-rw-r--r--source/kde/patch/kate.patch3
-rw-r--r--source/kde/patch/kate/kate4-fix_gcc7.patch54
-rw-r--r--source/kde/patch/kde-runtime.patch3
-rw-r--r--source/kde/patch/kde-runtime/kde-runtime-4.14.3.nm.diff10
-rw-r--r--source/kde/patch/kde-runtime/kde-runtime.fix.konqueror.manpage.infopage.display.diff20
-rw-r--r--source/kde/patch/kde-workspace.patch8
-rw-r--r--source/kde/patch/kde-workspace/kde-workspace.batteryapplet.diff13
-rw-r--r--source/kde/patch/kde-workspace/kde-workspace.kdm.server.timeout.diff14
-rw-r--r--source/kde/patch/kde-workspace/kde-workspace.panel-layout.diff23
-rw-r--r--source/kde/patch/kdeartwork.patch3
-rw-r--r--source/kde/patch/kdeartwork/kdeartwork.cmake.include.checkincludefiles.diff7
-rw-r--r--source/kde/patch/kdeconnect-kde.patch2
-rw-r--r--source/kde/patch/kdeconnect-kde/kdeconnect-kde.openssh7.diff21
-rw-r--r--source/kde/patch/kdelibs.patch22
-rw-r--r--source/kde/patch/kdelibs/0001-Make-kssl-compile-against-OpenSSL-1.1.0.patch1000
-rw-r--r--source/kde/patch/kdelibs/coding-style-fixes.patch62
-rw-r--r--source/kde/patch/kdelibs/kde4libs-4.14.26.diff11
-rw-r--r--source/kde/patch/kdelibs/kdelibs.2c3762feddf7e66cf6b64d9058f625a715694a00.patch112
-rw-r--r--source/kde/patch/kdelibs/kdelibs.docbook.patch11
-rw-r--r--source/kde/patch/kdelibs/kdelibs.upnp_conditional.patch15
-rw-r--r--source/kde/patch/kdelibs/return-application-icons-properly.patch56
-rw-r--r--source/kde/patch/kdelibs/return-not-break.-copy-paste-error.patch31
-rw-r--r--source/kde/patch/kdepim.patch6
-rw-r--r--source/kde/patch/kdepim/kdepim-install_kleopatra_headers.patch122
-rw-r--r--source/kde/patch/kdepim/libkf5ksieve-16.04.3.diff11
-rw-r--r--source/kde/patch/kdepimlibs.patch4
-rw-r--r--source/kde/patch/kdepimlibs/kdepimlibs.libical3.diff184
-rw-r--r--source/kde/patch/kdepimlibs/kimap-16.04.2.diff11
-rw-r--r--source/kde/patch/kdevelop-pg-qt.patch2
-rw-r--r--source/kde/patch/kdevelop-pg-qt/0011-fix-some-warnings.patch53
-rw-r--r--source/kde/patch/kdevelop-pg-qt/kdevelop-pg-qt.ftbfs.diff11
-rw-r--r--source/kde/patch/kdewebdev.patch5
-rw-r--r--source/kde/patch/kdewebdev/include-tidy.patch13
-rw-r--r--source/kde/patch/kgamma.patch3
-rw-r--r--source/kde/patch/kgamma/kgamma.cmake.include.checkincludefiles.diff10
-rw-r--r--source/kde/patch/konsole.patch8
-rw-r--r--source/kde/patch/konsole/konsole.scrollup.diff43
-rw-r--r--source/kde/patch/konsole/konsole.term.is.konsole.diff22
-rw-r--r--source/kde/patch/kopete.patch3
-rw-r--r--source/kde/patch/kopete/kopete-gcc6.patch28
-rw-r--r--source/kde/patch/krdc.patch3
-rw-r--r--source/kde/patch/krdc/krdc_freerdp-1.1.0.patch184
-rw-r--r--source/kde/patch/kscreen.patch3
-rw-r--r--source/kde/patch/kscreen/kscreen.broken.test.diff8
-rw-r--r--source/kde/patch/ktorrent.patch2
-rw-r--r--source/kde/patch/ktorrent/geoip.datbin1242574 -> 0 bytes
-rw-r--r--source/kde/patch/ktorrent/ktorrent.use.package.geoip.database.diff37
-rw-r--r--source/kde/patch/ktouch.patch2
-rw-r--r--source/kde/patch/ktouch/ktouch.performance.diff31
-rw-r--r--source/kde/patch/kuser.patch3
-rw-r--r--source/kde/patch/kuser/kuser.cmake.include.checkincludefiles.diff10
-rw-r--r--source/kde/patch/libkscreen.patch3
-rw-r--r--source/kde/patch/libkscreen/libkscreen.broken.test.diff10
-rw-r--r--source/kde/patch/perlqt.patch3
-rw-r--r--source/kde/patch/perlqt/perlqt.gcc6.diff11
-rw-r--r--source/kde/patch/plasma-nm.patch2
-rw-r--r--source/kde/patch/plasma-nm/plasma-nm.nm.diff10
-rw-r--r--source/kde/patch/print-manager.patch1
-rw-r--r--source/kde/patch/print-manager/print-manager.fix.build.against.cups22.diff24
-rw-r--r--source/kde/patch/pykde4.patch6
-rw-r--r--source/kde/patch/pykde4/0003-Fix-build-with-sip-4.19.patch599
-rw-r--r--source/kde/patch/pykde4/0004-Fix-build-with-sip-4.19.16.patch18
-rw-r--r--source/kde/patch/pykde4/Annotate-KAutoMount-as-Abstract.patch21
-rw-r--r--source/kde/patch/pykde4/fix_kpythonpluginfactory_build.diff26
-rw-r--r--source/kde/patch/pykde4/pykde4-4.14.3-checkstate-sip-4.19.5.patch24
-rw-r--r--source/kde/patch/pykde4/pykde4.solid.cmake.diff20
-rw-r--r--source/kde/patch/smokeqt.patch1
-rw-r--r--source/kde/patch/smokeqt/smokeqt.qscintilla2.uintptr_t.diff7
-rw-r--r--source/kde/patch/strigi-multimedia.patch3
-rw-r--r--source/kde/patch/strigi-multimedia/strigi-multimedia_port.patch29
86 files changed, 0 insertions, 4383 deletions
diff --git a/source/kde/patch/README b/source/kde/patch/README
deleted file mode 100644
index 2478e45f..00000000
--- a/source/kde/patch/README
+++ /dev/null
@@ -1,18 +0,0 @@
-
-IMPORTANT!
-
-To fail/exit a script, use this:
-
-[command that fails] || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
-DO NOT USE THIS:
-
-[command that fails] || exit 1
-
-as it will cause the parent script to exit in the wrong location and possibly
-silently skip building some packages.
-
-Thanks,
-
-The Management
-
diff --git a/source/kde/patch/calligra.patch b/source/kde/patch/calligra.patch
deleted file mode 100644
index e9e6cfd7..00000000
--- a/source/kde/patch/calligra.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-# Fix build with mariadb 10.2+:
-zcat $CWD/patch/calligra/calligra.mariadb.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
-# Patch for boost 1.65.0+:
-zcat $CWD/patch/calligra/boost-1.65.0.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
-# Fedora patches, mostly backports to fix a Calligra Plan crash:
-zcat $CWD/patch/calligra/0001-adapt-to-libwps-0.4.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-zcat $CWD/patch/calligra/0065-Backport-Plan-Fix-crash-due-to-accessing-deleted-obj.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-zcat $CWD/patch/calligra/0066-Backport-Plan-Do-not-crash-if-scheduler-plugins-not-.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-zcat $CWD/patch/calligra/0067-Backport-Plan-Fix-insert-file.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-zcat $CWD/patch/calligra/0068-Backport-Plan-Fix-task-module-load-and-save.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-zcat $CWD/patch/calligra/0069-Backport-Plan-Avoid-crash-in-special-cases.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-zcat $CWD/patch/calligra/0070-Plan-Guard-against-trying-to-move-a-task-into-the-sa.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-zcat $CWD/patch/calligra/calligra-2.9.11-gcc6_arm.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
diff --git a/source/kde/patch/calligra/0001-adapt-to-libwps-0.4.patch b/source/kde/patch/calligra/0001-adapt-to-libwps-0.4.patch
deleted file mode 100644
index b4494b3e..00000000
--- a/source/kde/patch/calligra/0001-adapt-to-libwps-0.4.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-From e81fe84405bc635dfa93e54fb8a3c8e6065dbf10 Mon Sep 17 00:00:00 2001
-From: David Tardon <dtardon@redhat.com>
-Date: Sat, 6 Jun 2015 18:27:24 +0200
-Subject: [PATCH] adapt to libwps 0.4
-
----
- cmake/modules/FindLibWps.cmake | 6 +++---
- filters/words/works/import/WPSImport.cpp | 4 +++-
- 2 files changed, 6 insertions(+), 4 deletions(-)
-
-diff --git a/cmake/modules/FindLibWps.cmake b/cmake/modules/FindLibWps.cmake
-index f8c8225..58ef2b5 100644
---- a/cmake/modules/FindLibWps.cmake
-+++ b/cmake/modules/FindLibWps.cmake
-@@ -10,16 +10,16 @@
-
- include(LibFindMacros)
- libfind_package(LIBWPS LibWpd)
--libfind_pkg_check_modules(LIBWPS_PKGCONF libwps-0.3)
-+libfind_pkg_check_modules(LIBWPS_PKGCONF libwps-0.4)
-
- find_path(LIBWPS_INCLUDE_DIR
- NAMES libwps/libwps.h
- HINTS ${LIBWPS_PKGCONF_INCLUDE_DIRS} ${LIBWPS_PKGCONF_INCLUDEDIR}
-- PATH_SUFFIXES libwps-0.3
-+ PATH_SUFFIXES libwps-0.4
- )
-
- find_library(LIBWPS_LIBRARY
-- NAMES wps wps-0.3
-+ NAMES wps wps-0.4
- HINTS ${LIBWPS_PKGCONF_LIBRARY_DIRS} ${LIBWPS_PKGCONF_LIBDIR}
- )
-
-diff --git a/filters/words/works/import/WPSImport.cpp b/filters/words/works/import/WPSImport.cpp
-index eea2cc9..94b859d 100644
---- a/filters/words/works/import/WPSImport.cpp
-+++ b/filters/words/works/import/WPSImport.cpp
-@@ -91,7 +91,9 @@ public:
- bool isSupportedFormat(librevenge::RVNGInputStream &input)
- {
- WPSKind kind = WPS_TEXT;
-- WPSConfidence confidence = WPSDocument::isFileFormatSupported(&input, kind);
-+ WPSCreator creator = WPS_MSWORKS;
-+ bool needsEncoding = false;
-+ WPSConfidence confidence = WPSDocument::isFileFormatSupported(&input, kind, creator, needsEncoding);
- if (confidence == WPS_CONFIDENCE_NONE || kind != WPS_TEXT)
- return false;
- return true;
---
-2.4.2
-
diff --git a/source/kde/patch/calligra/0065-Backport-Plan-Fix-crash-due-to-accessing-deleted-obj.patch b/source/kde/patch/calligra/0065-Backport-Plan-Fix-crash-due-to-accessing-deleted-obj.patch
deleted file mode 100644
index b3f38d47..00000000
--- a/source/kde/patch/calligra/0065-Backport-Plan-Fix-crash-due-to-accessing-deleted-obj.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 7c64caec3022b28775ea85864eef47bf2ac51066 Mon Sep 17 00:00:00 2001
-From: Dag Andersen <danders@get2net.dk>
-Date: Mon, 22 Aug 2016 08:49:13 +0200
-Subject: [PATCH 65/80] Backport: Plan: Fix crash due to accessing deleted
- object
-
-KReportDesigner takes ownership of reportdata, so give it a clone it can delete
----
- plan/libs/ui/reports/reportview.cpp | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/plan/libs/ui/reports/reportview.cpp b/plan/libs/ui/reports/reportview.cpp
-index 462a31d..8552790 100644
---- a/plan/libs/ui/reports/reportview.cpp
-+++ b/plan/libs/ui/reports/reportview.cpp
-@@ -1250,10 +1250,10 @@ void ReportDesigner::createDockers()
-
- void ReportDesigner::setReportData( const QString &tag )
- {
--
-+ emit optionsModified();
- ReportData *rd = Report::findReportData( m_reportdatamodels, tag );
-- if ( rd != m_designer->reportData() ) {
-- emit optionsModified();
-+ if ( rd ) {
-+ rd = rd->clone(); // KReportDesigner takes ownership, so give it a clone it can delete
- }
- m_designer->setReportData( rd );
-
---
-2.7.4
-
diff --git a/source/kde/patch/calligra/0066-Backport-Plan-Do-not-crash-if-scheduler-plugins-not-.patch b/source/kde/patch/calligra/0066-Backport-Plan-Do-not-crash-if-scheduler-plugins-not-.patch
deleted file mode 100644
index efbd9ac8..00000000
--- a/source/kde/patch/calligra/0066-Backport-Plan-Do-not-crash-if-scheduler-plugins-not-.patch
+++ /dev/null
@@ -1,138 +0,0 @@
-From 4d9762cd151b7d6a208aece8cebcdbe09bd41703 Mon Sep 17 00:00:00 2001
-From: Dag Andersen <danders@get2net.dk>
-Date: Mon, 22 Aug 2016 09:15:32 +0200
-Subject: [PATCH 66/80] Backport: Plan: Do not crash if scheduler plugins not
- found
-
-Shouldn't happen atm, but...
----
- plan/libs/models/kptschedulemodel.cpp | 69 ++++++++++++++++++++++-------------
- 1 file changed, 43 insertions(+), 26 deletions(-)
-
-diff --git a/plan/libs/models/kptschedulemodel.cpp b/plan/libs/models/kptschedulemodel.cpp
-index 35b74bc..e3ce298 100644
---- a/plan/libs/models/kptschedulemodel.cpp
-+++ b/plan/libs/models/kptschedulemodel.cpp
-@@ -252,9 +252,16 @@ Qt::ItemFlags ScheduleItemModel::flags( const QModelIndex &index ) const
- if ( !m_readWrite ) {
- return flags &= ~Qt::ItemIsEditable;
- }
-- flags &= ~Qt::ItemIsEditable;
- ScheduleManager *sm = manager( index );
-- int capabilities = sm->schedulerPlugin()->capabilities();
-+ if ( sm == 0 ) {
-+ return flags;
-+ }
-+ SchedulerPlugin *pl = sm->schedulerPlugin();
-+ if ( pl == 0 ) {
-+ return flags;
-+ }
-+ int capabilities = pl->capabilities();
-+ flags &= ~Qt::ItemIsEditable;
- if ( sm && ! sm->isBaselined() ) {
- switch ( index.column() ) {
- case ScheduleModel::ScheduleState: break;
-@@ -452,7 +459,11 @@ QVariant ScheduleItemModel::allowOverbooking( const QModelIndex &index, int role
- if ( sm == 0 ) {
- return QVariant();
- }
-- int capabilities = sm->schedulerPlugin()->capabilities();
-+ SchedulerPlugin *pl = sm->schedulerPlugin();
-+ if ( pl == 0 ) {
-+ return QVariant();
-+ }
-+ int capabilities = pl->capabilities();
- switch ( role ) {
- case Qt::EditRole:
- return sm->allowOverbooking();
-@@ -480,11 +491,11 @@ QVariant ScheduleItemModel::allowOverbooking( const QModelIndex &index, int role
- if ( capabilities & SchedulerPlugin::AllowOverbooking ) {
- return sm->allowOverbooking()
- ? i18nc( "@info:tooltip", "Allow overbooking of resources" )
-- : i18nc( "@info:tooltip 1=scheduler name", "%1 always allows overbooking of resources", sm->schedulerPlugin()->name() );
-+ : i18nc( "@info:tooltip 1=scheduler name", "%1 always allows overbooking of resources", pl->name() );
- }
- if ( capabilities & SchedulerPlugin::AvoidOverbooking ) {
- return sm->allowOverbooking()
-- ? i18nc( "@info:tooltip 1=scheduler name", "%1 always avoids overbooking of resources", sm->schedulerPlugin()->name() )
-+ ? i18nc( "@info:tooltip 1=scheduler name", "%1 always avoids overbooking of resources", pl->name() )
- : i18nc( "@info:tooltip", "Avoid overbooking resources" );
- }
- break;
-@@ -637,7 +648,11 @@ QVariant ScheduleItemModel::schedulingDirection( const QModelIndex &index, int r
- if ( sm == 0 ) {
- return QVariant();
- }
-- int capabilities = sm->schedulerPlugin()->capabilities();
-+ SchedulerPlugin *pl = sm->schedulerPlugin();
-+ if ( pl == 0 ) {
-+ return QVariant();
-+ }
-+ int capabilities = pl->capabilities();
- switch ( role ) {
- case Qt::EditRole:
- return sm->schedulingDirection();
-@@ -664,13 +679,13 @@ QVariant ScheduleItemModel::schedulingDirection( const QModelIndex &index, int r
- }
- if ( capabilities & SchedulerPlugin::ScheduleForward ) {
- return sm->schedulingDirection()
-- ? i18nc( "@info:tooltip 1=scheduler name", "%1 always schedules from target start time", sm->schedulerPlugin()->name() )
-+ ? i18nc( "@info:tooltip 1=scheduler name", "%1 always schedules from target start time", pl->name() )
- : i18nc( "@info:tooltip", "Schedule project from target start time" );
- }
- if ( capabilities & SchedulerPlugin::ScheduleBackward ) {
- return sm->schedulingDirection()
- ? i18nc( "@info:tooltip", "Schedule project from target end time" )
-- : i18nc( "@info:tooltip 1=scheduler name", "%1 always schedules from target end time", sm->schedulerPlugin()->name() );
-+ : i18nc( "@info:tooltip 1=scheduler name", "%1 always schedules from target end time", pl->name() );
- }
- break;
- case Role::EnumList:
-@@ -708,24 +723,26 @@ QVariant ScheduleItemModel::scheduler( const QModelIndex &index, int role ) cons
- return QVariant();
- }
- SchedulerPlugin *pl = sm->schedulerPlugin();
-- switch ( role ) {
-- case Qt::EditRole:
-- return sm->schedulerPluginId();
-- case Qt::DisplayRole:
-- return pl ? pl->name() : i18n( "Unknown" );
-- case Qt::ToolTipRole:
-- return pl ? pl->comment() : QString();
-- case Role::EnumList:
-- return sm->schedulerPluginNames();
-- case Role::EnumListValue:
-- return sm->schedulerPluginIndex();
-- case Qt::TextAlignmentRole:
-- return Qt::AlignCenter;
-- case Qt::StatusTipRole:
-- return QVariant();
-- case Qt::WhatsThisRole: {
-- QString s = pl->description();
-- return s.isEmpty() ? QVariant() : QVariant( s );
-+ if ( pl ) {
-+ switch ( role ) {
-+ case Qt::EditRole:
-+ return sm->schedulerPluginId();
-+ case Qt::DisplayRole:
-+ return pl ? pl->name() : i18n( "Unknown" );
-+ case Qt::ToolTipRole:
-+ return pl ? pl->comment() : QString();
-+ case Role::EnumList:
-+ return sm->schedulerPluginNames();
-+ case Role::EnumListValue:
-+ return sm->schedulerPluginIndex();
-+ case Qt::TextAlignmentRole:
-+ return Qt::AlignCenter;
-+ case Qt::StatusTipRole:
-+ return QVariant();
-+ case Qt::WhatsThisRole: {
-+ QString s = pl->description();
-+ return s.isEmpty() ? QVariant() : QVariant( s );
-+ }
- }
- }
- return QVariant();
---
-2.7.4
-
diff --git a/source/kde/patch/calligra/0067-Backport-Plan-Fix-insert-file.patch b/source/kde/patch/calligra/0067-Backport-Plan-Fix-insert-file.patch
deleted file mode 100644
index 4db4becc..00000000
--- a/source/kde/patch/calligra/0067-Backport-Plan-Fix-insert-file.patch
+++ /dev/null
@@ -1,101 +0,0 @@
-From 5cffbe5ecf1f82369abbad1a06154368459f7845 Mon Sep 17 00:00:00 2001
-From: Dag Andersen <danders@get2net.dk>
-Date: Mon, 22 Aug 2016 09:20:32 +0200
-Subject: [PATCH 67/80] Backport: Plan: Fix insert file
-
-Use KUrl instead of QString for filename
-KoDocument::openUrl() opens the url (not KoPart)
----
- plan/kptmaindocument.cpp | 23 ++++++++++-------------
- plan/kptmaindocument.h | 4 ++--
- plan/kptview.cpp | 2 +-
- 3 files changed, 13 insertions(+), 16 deletions(-)
-
-diff --git a/plan/kptmaindocument.cpp b/plan/kptmaindocument.cpp
-index 2343471..e418972 100644
---- a/plan/kptmaindocument.cpp
-+++ b/plan/kptmaindocument.cpp
-@@ -947,35 +947,32 @@ bool MainDocument::loadAndParse(KoStore *store, const QString &filename, KoXmlDo
- return true;
- }
-
--void MainDocument::insertFile( const QString &filename, Node *parent, Node *after )
-+void MainDocument::insertFile( const KUrl &url, Node *parent, Node *after )
- {
- Part *part = new Part( this );
- MainDocument *doc = new MainDocument( part );
- part->setDocument( doc );
- doc->disconnect(); // doc shall not handle feedback from openUrl()
- doc->setAutoSave( 0 ); //disable
-- doc->m_insertFileInfo.url = filename;
-+ doc->m_insertFileInfo.url = url;
- doc->m_insertFileInfo.parent = parent;
- doc->m_insertFileInfo.after = after;
- connect(doc, SIGNAL(completed()), SLOT(insertFileCompleted()));
- connect(doc, SIGNAL(canceled(QString)), SLOT(insertFileCancelled(QString)));
-
-- doc->openUrl( KUrl( filename ) );
-+ doc->openUrl( url );
- }
-
- void MainDocument::insertFileCompleted()
- {
- kDebug(planDbg())<<sender();
-- Part *part = qobject_cast<Part*>( sender() );
-- if ( part ) {
-- MainDocument *doc = qobject_cast<MainDocument*>( part->document() );
-- if ( doc ) {
-- Project &p = doc->getProject();
-- insertProject( p, doc->m_insertFileInfo.parent, doc->m_insertFileInfo.after );
-- } else {
-- KMessageBox::error( 0, i18n("Internal error, failed to insert file.") );
-- }
-- part->deleteLater(); // also deletes document
-+ MainDocument *doc = qobject_cast<MainDocument*>( sender() );
-+ if ( doc ) {
-+ Project &p = doc->getProject();
-+ insertProject( p, doc->m_insertFileInfo.parent, doc->m_insertFileInfo.after );
-+ doc->documentPart()->deleteLater(); // also deletes document
-+ } else {
-+ KMessageBox::error( 0, i18n("Internal error, failed to insert file.") );
- }
- }
-
-diff --git a/plan/kptmaindocument.h b/plan/kptmaindocument.h
-index 5ead4ea..c467e1f 100644
---- a/plan/kptmaindocument.h
-+++ b/plan/kptmaindocument.h
-@@ -117,7 +117,7 @@ public:
- Package *loadWorkPackageXML( Project& project, QIODevice*, const KoXmlDocument& document, const KUrl& url );
- QMap<KDateTime, Package*> workPackages() const { return m_workpackages; }
-
-- void insertFile( const QString &filename, Node *parent, Node *after = 0 );
-+ void insertFile( const KUrl &url, Node *parent, Node *after = 0 );
- bool insertProject( Project &project, Node *parent, Node *after );
-
- KPlatoAboutPage &aboutPage() { return m_aboutPage; }
-@@ -165,7 +165,7 @@ protected:
-
- // used by insert file
- struct InsertFileInfo {
-- QString url;
-+ KUrl url;
- Node *parent;
- Node *after;
- } m_insertFileInfo;
-diff --git a/plan/kptview.cpp b/plan/kptview.cpp
-index 6876c3e..b38d8b6 100644
---- a/plan/kptview.cpp
-+++ b/plan/kptview.cpp
-@@ -1452,7 +1452,7 @@ void View::slotInsertFileFinished( int result )
- return;
- }
- if ( result == QDialog::Accepted ) {
-- getPart()->insertFile( dlg->url().url(), dlg->parentNode(), dlg->afterNode() );
-+ getPart()->insertFile( dlg->url(), dlg->parentNode(), dlg->afterNode() );
- }
- dlg->deleteLater();
- }
---
-2.7.4
-
diff --git a/source/kde/patch/calligra/0068-Backport-Plan-Fix-task-module-load-and-save.patch b/source/kde/patch/calligra/0068-Backport-Plan-Fix-task-module-load-and-save.patch
deleted file mode 100644
index ca6ae192..00000000
--- a/source/kde/patch/calligra/0068-Backport-Plan-Fix-task-module-load-and-save.patch
+++ /dev/null
@@ -1,68 +0,0 @@
-From fd5b8dca68d0a418aac926fe60814ebe537ee032 Mon Sep 17 00:00:00 2001
-From: Dag Andersen <danders@get2net.dk>
-Date: Mon, 22 Aug 2016 10:00:52 +0200
-Subject: [PATCH 68/80] Backport: Plan: Fix task module load and save
-
-Workaround: saveTaskModules destroys project
----
- plan/kptview.cpp | 19 ++++++++++++-------
- plan/libs/models/kptnodeitemmodel.cpp | 6 +++++-
- 2 files changed, 17 insertions(+), 8 deletions(-)
-
-diff --git a/plan/kptview.cpp b/plan/kptview.cpp
-index b38d8b6..af606f6 100644
---- a/plan/kptview.cpp
-+++ b/plan/kptview.cpp
-@@ -114,6 +114,7 @@
- #include "kptviewlistdocker.h"
- #include "kptviewlist.h"
- #include "kptschedulesdocker.h"
-+#include "kptpart.h"
- #include "kptdebug.h"
-
- #include "plansettings.h"
-@@ -3033,13 +3034,17 @@ void View::saveTaskModule( const KUrl &url, Project *project )
- QString dir = Factory::global().dirs()->saveLocation( "plan_taskmodules" );
- kDebug(planDbg())<<"dir="<<dir;
- if ( ! dir.isEmpty() ) {
-- MainDocument part(getKoPart());
-- part.insertProject( *project, 0, 0 );
-- part.getProject().setName( project->name() );
-- part.getProject().setLeader( project->leader() );
-- part.getProject().setDescription( project->description() );
-- part.saveNativeFormat( dir + url.fileName() );
-- kDebug(planDbg())<<dir + url.fileName();
-+ Part *part = new Part( this );
-+ MainDocument *doc = new MainDocument( part );
-+ part->setDocument( doc );
-+ doc->disconnect(); // doc shall not handle feedback from openUrl()
-+ doc->setAutoSave( 0 ); //disable
-+ doc->insertProject( *project, 0, 0 );
-+ doc->getProject().setName( project->name() );
-+ doc->getProject().setLeader( project->leader() );
-+ doc->getProject().setDescription( project->description() );
-+ doc->saveNativeFormat( dir + url.fileName() );
-+ part->deleteLater(); // also deletes document
- } else {
- kDebug(planDbg())<<"Could not find a location";
- }
-diff --git a/plan/libs/models/kptnodeitemmodel.cpp b/plan/libs/models/kptnodeitemmodel.cpp
-index 834e45a..45b1650 100644
---- a/plan/libs/models/kptnodeitemmodel.cpp
-+++ b/plan/libs/models/kptnodeitemmodel.cpp
-@@ -4990,7 +4990,11 @@ bool TaskModuleModel::importProject( const KUrl &url, bool emitsignal )
- stripProject( project );
- addTaskModule( project );
- if ( emitsignal ) {
-- emit saveTaskModule( url, project );
-+ // FIXME: save modifies the project, so give it a copy (see kptview.cpp)
-+ Project p;
-+ status.setProject( &p );
-+ p.load( element, status );
-+ emit saveTaskModule( url, &p );
- }
- } else {
- kDebug(planDbg())<<"Failed to load project from:"<<url;
---
-2.7.4
-
diff --git a/source/kde/patch/calligra/0069-Backport-Plan-Avoid-crash-in-special-cases.patch b/source/kde/patch/calligra/0069-Backport-Plan-Avoid-crash-in-special-cases.patch
deleted file mode 100644
index 75ec66b5..00000000
--- a/source/kde/patch/calligra/0069-Backport-Plan-Avoid-crash-in-special-cases.patch
+++ /dev/null
@@ -1,452 +0,0 @@
-From b25d46bf9fa6d5b9ff34115edb4719592c191935 Mon Sep 17 00:00:00 2001
-From: Dag Andersen <danders@get2net.dk>
-Date: Tue, 23 Aug 2016 08:01:58 +0200
-Subject: [PATCH 69/80] Backport: Plan: Avoid crash in special cases
-
-Sometimes (eg. when New is pressed) the Project can be deleted before models
-and thus cause a crash.
-Added a Project::aboutToBeDeleted signal so models can adjust.
-
-BUG: 346976
-FIXED_IN: 2.9.12
----
- plan/libs/kernel/kptproject.cpp | 1 +
- plan/libs/kernel/kptproject.h | 2 ++
- plan/libs/models/kptaccountsmodel.cpp | 2 ++
- plan/libs/models/kptcalendarmodel.cpp | 4 ++++
- plan/libs/models/kptitemmodelbase.cpp | 5 +++++
- plan/libs/models/kptitemmodelbase.h | 1 +
- plan/libs/models/kptnodechartmodel.cpp | 2 ++
- plan/libs/models/kptnodeitemmodel.cpp | 4 ++++
- plan/libs/models/kptpertcpmmodel.cpp | 4 ++++
- plan/libs/models/kptrelationmodel.cpp | 2 ++
- plan/libs/models/kptresourceallocationmodel.cpp | 2 ++
- plan/libs/models/kptresourceappointmentsmodel.cpp | 8 ++++++++
- plan/libs/models/kptresourcemodel.cpp | 12 +++++++-----
- plan/libs/models/kptschedulemodel.cpp | 13 +++++++++++++
- plan/libs/models/kptschedulemodel.h | 2 ++
- plan/libs/models/kpttaskstatusmodel.cpp | 2 ++
- 16 files changed, 61 insertions(+), 5 deletions(-)
-
-diff --git a/plan/libs/kernel/kptproject.cpp b/plan/libs/kernel/kptproject.cpp
-index 158040b..451e897 100644
---- a/plan/libs/kernel/kptproject.cpp
-+++ b/plan/libs/kernel/kptproject.cpp
-@@ -89,6 +89,7 @@ void Project::deref()
- --m_refCount;
- Q_ASSERT( m_refCount >= 0 );
- if ( m_refCount <= 0 ) {
-+ emit aboutToBeDeleted();
- deleteLater();
- }
- }
-diff --git a/plan/libs/kernel/kptproject.h b/plan/libs/kernel/kptproject.h
-index 1dbea7d..db18d36 100644
---- a/plan/libs/kernel/kptproject.h
-+++ b/plan/libs/kernel/kptproject.h
-@@ -519,6 +519,8 @@ public Q_SLOTS:
- void setMaxProgress( int max, ScheduleManager *sm = 0 );
-
- Q_SIGNALS:
-+ /// Emitted when the project is about to be deleted (The destroyed signal is disabled)
-+ void aboutToBeDeleted();
- /// Emitted when anything in the project is changed (use with care)
- void projectChanged();
- /// Emitted when the WBS code definition has changed. This may change all nodes.
-diff --git a/plan/libs/models/kptaccountsmodel.cpp b/plan/libs/models/kptaccountsmodel.cpp
-index 53f725a..4657979 100644
---- a/plan/libs/models/kptaccountsmodel.cpp
-+++ b/plan/libs/models/kptaccountsmodel.cpp
-@@ -533,6 +533,7 @@ void CostBreakdownItemModel::setProject( Project *project )
- disconnect( acc, SIGNAL(accountRemoved(const Account*)), this, SLOT(slotAccountRemoved(const Account*)) );
- disconnect( acc, SIGNAL(accountToBeRemoved(const Account*)), this, SLOT(slotAccountToBeRemoved(const Account*)) );
-
-+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
- disconnect( m_project , SIGNAL(nodeChanged(Node*)), this, SLOT(slotDataChanged()) );
- disconnect( m_project , SIGNAL(nodeAdded(Node*)), this, SLOT(slotDataChanged()) );
- disconnect( m_project , SIGNAL(nodeRemoved(Node*)), this, SLOT(slotDataChanged()) );
-@@ -553,6 +554,7 @@ void CostBreakdownItemModel::setProject( Project *project )
- connect( acc, SIGNAL(accountRemoved(const Account*)), this, SLOT(slotAccountRemoved(const Account*)) );
- connect( acc, SIGNAL(accountToBeRemoved(const Account*)), this, SLOT(slotAccountToBeRemoved(const Account*)) );
-
-+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
- connect( m_project , SIGNAL(nodeChanged(Node*)), this, SLOT(slotDataChanged()) );
- connect( m_project , SIGNAL(nodeAdded(Node*)), this, SLOT(slotDataChanged()) );
- connect( m_project , SIGNAL(nodeRemoved(Node*)), this, SLOT(slotDataChanged()) );
-diff --git a/plan/libs/models/kptcalendarmodel.cpp b/plan/libs/models/kptcalendarmodel.cpp
-index 6c0f017..401379c 100644
---- a/plan/libs/models/kptcalendarmodel.cpp
-+++ b/plan/libs/models/kptcalendarmodel.cpp
-@@ -74,10 +74,12 @@ void CalendarDayItemModelBase::setProject( Project *project )
- {
- setCalendar( 0 );
- if ( m_project ) {
-+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
- disconnect( m_project, SIGNAL(calendarToBeRemoved(const Calendar*)), this, SLOT(slotCalendarToBeRemoved(const Calendar*)) );
- }
- m_project = project;
- if ( project ) {
-+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
- connect( m_project, SIGNAL(calendarToBeRemoved(const Calendar*)), this, SLOT(slotCalendarToBeRemoved(const Calendar*)) );
- }
- reset();
-@@ -136,6 +138,7 @@ void CalendarItemModel::slotCalendarRemoved( const Calendar * )
- void CalendarItemModel::setProject( Project *project )
- {
- if ( m_project ) {
-+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
- disconnect( m_project , SIGNAL(calendarChanged(Calendar*)), this, SLOT(slotCalendarChanged(Calendar*)) );
-
- disconnect( m_project, SIGNAL(calendarAdded(const Calendar*)), this, SLOT(slotCalendarInserted(const Calendar*)) );
-@@ -146,6 +149,7 @@ void CalendarItemModel::setProject( Project *project )
- }
- m_project = project;
- if ( project ) {
-+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
- connect( m_project, SIGNAL(calendarChanged(Calendar*)), this, SLOT(slotCalendarChanged(Calendar*)) );
-
- connect( m_project, SIGNAL(calendarAdded(const Calendar*)), this, SLOT(slotCalendarInserted(const Calendar*)) );
-diff --git a/plan/libs/models/kptitemmodelbase.cpp b/plan/libs/models/kptitemmodelbase.cpp
-index 499fcfe..ff74394 100644
---- a/plan/libs/models/kptitemmodelbase.cpp
-+++ b/plan/libs/models/kptitemmodelbase.cpp
-@@ -731,6 +731,11 @@ bool ItemModelBase::setData( const QModelIndex &index, const QVariant &value, in
- return false;
- }
-
-+void ItemModelBase::projectDeleted()
-+{
-+ setProject(0);
-+}
-+
- } //namespace KPlato
-
- #include "kptitemmodelbase.moc"
-diff --git a/plan/libs/models/kptitemmodelbase.h b/plan/libs/models/kptitemmodelbase.h
-index 578c18e..5d3719d 100644
---- a/plan/libs/models/kptitemmodelbase.h
-+++ b/plan/libs/models/kptitemmodelbase.h
-@@ -309,6 +309,7 @@ protected Q_SLOTS:
- virtual void slotLayoutToBeChanged();
- virtual void slotLayoutChanged();
-
-+ void projectDeleted();
- protected:
- Project *m_project;
- ScheduleManager *m_manager;
-diff --git a/plan/libs/models/kptnodechartmodel.cpp b/plan/libs/models/kptnodechartmodel.cpp
-index 025da86..9b8d397 100644
---- a/plan/libs/models/kptnodechartmodel.cpp
-+++ b/plan/libs/models/kptnodechartmodel.cpp
-@@ -294,6 +294,7 @@ void ChartItemModel::setProject( Project *project )
- m_bcws.clear();
- m_acwp.clear();
- if ( m_project ) {
-+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
- disconnect( m_project, SIGNAL(projectCalculated(ScheduleManager*)), this, SLOT(setScheduleManager(ScheduleManager*)) );
- disconnect( m_project, SIGNAL(nodeRemoved(Node*)), this, SLOT(slotNodeRemoved(Node*)) );
- disconnect( m_project, SIGNAL(nodeChanged(Node*)), this, SLOT(slotNodeChanged(Node*)) );
-@@ -302,6 +303,7 @@ void ChartItemModel::setProject( Project *project )
- }
- m_project = project;
- if ( m_project ) {
-+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
- connect( m_project, SIGNAL(projectCalculated(ScheduleManager*)), this, SLOT(setScheduleManager(ScheduleManager*)) );
- connect( m_project, SIGNAL(nodeRemoved(Node*)), this, SLOT(slotNodeRemoved(Node*)) );
- connect( m_project, SIGNAL(nodeChanged(Node*)), this, SLOT(slotNodeChanged(Node*)) );
-diff --git a/plan/libs/models/kptnodeitemmodel.cpp b/plan/libs/models/kptnodeitemmodel.cpp
-index 45b1650..e66277f 100644
---- a/plan/libs/models/kptnodeitemmodel.cpp
-+++ b/plan/libs/models/kptnodeitemmodel.cpp
-@@ -3122,6 +3122,7 @@ void NodeItemModel::slotWbsDefinitionChanged()
- void NodeItemModel::setProject( Project *project )
- {
- if ( m_project ) {
-+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
- disconnect( m_project, SIGNAL(localeChanged()), this, SLOT(slotLayoutChanged()) );
- disconnect( m_project, SIGNAL(wbsDefinitionChanged()), this, SLOT(slotWbsDefinitionChanged()) );
- disconnect( m_project, SIGNAL(nodeChanged(Node*)), this, SLOT(slotNodeChanged(Node*)) );
-@@ -3139,6 +3140,7 @@ void NodeItemModel::setProject( Project *project )
- kDebug(planDbg())<<this<<m_project<<"->"<<project;
- m_nodemodel.setProject( project );
- if ( project ) {
-+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
- connect( m_project, SIGNAL(localeChanged()), this, SLOT(slotLayoutChanged()) );
- connect( m_project, SIGNAL(wbsDefinitionChanged()), this, SLOT(slotWbsDefinitionChanged()) );
- connect( m_project, SIGNAL(nodeChanged(Node*)), this, SLOT(slotNodeChanged(Node*)) );
-@@ -4381,6 +4383,7 @@ void MilestoneItemModel::slotNodeMoved( Node *node )
- void MilestoneItemModel::setProject( Project *project )
- {
- if ( m_project ) {
-+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
- disconnect( m_project, SIGNAL(localeChanged()), this, SLOT(slotLayoutChanged()) );
- disconnect( m_project, SIGNAL(wbsDefinitionChanged()), this, SLOT(slotWbsDefinitionChanged()) );
- disconnect( m_project, SIGNAL(nodeChanged(Node*)), this, SLOT(slotNodeChanged(Node*)) );
-@@ -4397,6 +4400,7 @@ void MilestoneItemModel::setProject( Project *project )
- //kDebug(planDbg())<<m_project<<"->"<<project;
- m_nodemodel.setProject( project );
- if ( project ) {
-+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
- connect( m_project, SIGNAL(localeChanged()), this, SLOT(slotLayoutChanged()) );
- connect( m_project, SIGNAL(wbsDefinitionChanged()), this, SLOT(slotWbsDefinitionChanged()) );
- connect( m_project, SIGNAL(nodeChanged(Node*)), this, SLOT(slotNodeChanged(Node*)) );
-diff --git a/plan/libs/models/kptpertcpmmodel.cpp b/plan/libs/models/kptpertcpmmodel.cpp
-index 71745ef..7340c61 100644
---- a/plan/libs/models/kptpertcpmmodel.cpp
-+++ b/plan/libs/models/kptpertcpmmodel.cpp
-@@ -82,6 +82,7 @@ void CriticalPathItemModel::slotNodeRemoved( Node *node )
- void CriticalPathItemModel::setProject( Project *project )
- {
- if ( m_project ) {
-+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
- disconnect( m_project, SIGNAL(nodeChanged(Node*)), this, SLOT(slotNodeChanged(Node*)) );
- disconnect( m_project, SIGNAL(nodeToBeAdded(Node*,int)), this, SLOT(slotNodeToBeInserted(Node*,int)) );
- disconnect( m_project, SIGNAL(nodeToBeRemoved(Node*)), this, SLOT(slotNodeToBeRemoved(Node*)) );
-@@ -94,6 +95,7 @@ void CriticalPathItemModel::setProject( Project *project )
- m_project = project;
- m_nodemodel.setProject( project );
- if ( project ) {
-+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
- connect( m_project, SIGNAL(nodeChanged(Node*)), this, SLOT(slotNodeChanged(Node*)) );
- connect( m_project, SIGNAL(nodeToBeAdded(Node*,int)), this, SLOT(slotNodeToBeInserted(Node*,int)) );
- connect( m_project, SIGNAL(nodeToBeRemoved(Node*)), this, SLOT(slotNodeToBeRemoved(Node*)) );
-@@ -354,6 +356,7 @@ void PertResultItemModel::setProject( Project *project )
- {
- clear();
- if ( m_project ) {
-+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
- disconnect( m_project, SIGNAL(nodeChanged(Node*)), this, SLOT(slotNodeChanged(Node*)) );
- disconnect( m_project, SIGNAL(nodeToBeAdded(Node*,int)), this, SLOT(slotNodeToBeInserted(Node*,int)) );
- disconnect( m_project, SIGNAL(nodeToBeRemoved(Node*)), this, SLOT(slotNodeToBeRemoved(Node*)) );
-@@ -366,6 +369,7 @@ void PertResultItemModel::setProject( Project *project )
- m_project = project;
- m_nodemodel.setProject( project );
- if ( project ) {
-+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
- connect( m_project, SIGNAL(nodeChanged(Node*)), this, SLOT(slotNodeChanged(Node*)) );
- connect( m_project, SIGNAL(nodeToBeAdded(Node*,int)), this, SLOT(slotNodeToBeInserted(Node*,int)) );
- connect( m_project, SIGNAL(nodeToBeRemoved(Node*)), this, SLOT(slotNodeToBeRemoved(Node*)) );
-diff --git a/plan/libs/models/kptrelationmodel.cpp b/plan/libs/models/kptrelationmodel.cpp
-index b2617fb..a5acfb6 100644
---- a/plan/libs/models/kptrelationmodel.cpp
-+++ b/plan/libs/models/kptrelationmodel.cpp
-@@ -241,6 +241,7 @@ void RelationItemModel::slotLayoutChanged()
- void RelationItemModel::setProject( Project *project )
- {
- if ( m_project ) {
-+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
- disconnect( m_project, SIGNAL(nodeChanged(Node*)), this, SLOT(slotNodeChanged(Node*)) );
- disconnect( m_project, SIGNAL(nodeToBeRemoved(Node*)), this, SLOT(slotNodeToBeRemoved(Node*)) );
-
-@@ -254,6 +255,7 @@ void RelationItemModel::setProject( Project *project )
- }
- m_project = project;
- if ( project ) {
-+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
- connect( m_project, SIGNAL(nodeChanged(Node*)), this, SLOT(slotNodeChanged(Node*)) );
- connect( m_project, SIGNAL(nodeToBeRemoved(Node*)), this, SLOT(slotNodeToBeRemoved(Node*)) );
-
-diff --git a/plan/libs/models/kptresourceallocationmodel.cpp b/plan/libs/models/kptresourceallocationmodel.cpp
-index 11f909e..500a24c 100644
---- a/plan/libs/models/kptresourceallocationmodel.cpp
-+++ b/plan/libs/models/kptresourceallocationmodel.cpp
-@@ -425,6 +425,7 @@ void ResourceAllocationItemModel::slotResourceGroupRemoved( const ResourceGroup
- void ResourceAllocationItemModel::setProject( Project *project )
- {
- if ( m_project ) {
-+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
- disconnect( m_project, SIGNAL(resourceChanged(Resource*)), this, SLOT(slotResourceChanged(Resource*)) );
- disconnect( m_project, SIGNAL(resourceGroupChanged(ResourceGroup*)), this, SLOT(slotResourceGroupChanged(ResourceGroup*)) );
-
-@@ -447,6 +448,7 @@ void ResourceAllocationItemModel::setProject( Project *project )
- }
- m_project = project;
- if ( m_project ) {
-+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
- connect( m_project, SIGNAL(resourceChanged(Resource*)), this, SLOT(slotResourceChanged(Resource*)) );
- connect( m_project, SIGNAL(resourceGroupChanged(ResourceGroup*)), this, SLOT(slotResourceGroupChanged(ResourceGroup*)) );
-
-diff --git a/plan/libs/models/kptresourceappointmentsmodel.cpp b/plan/libs/models/kptresourceappointmentsmodel.cpp
-index b580dfe..f4700c6 100644
---- a/plan/libs/models/kptresourceappointmentsmodel.cpp
-+++ b/plan/libs/models/kptresourceappointmentsmodel.cpp
-@@ -220,7 +220,10 @@ void ResourceAppointmentsItemModel::setProject( Project *project )
- {
- kDebug(planDbg());
- if ( m_project ) {
-+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
-+
- disconnect( m_project, SIGNAL(resourceChanged(Resource*)), this, SLOT(slotResourceChanged(Resource*)) );
-+
- disconnect( m_project, SIGNAL(resourceGroupChanged(ResourceGroup*)), this, SLOT(slotResourceGroupChanged(ResourceGroup*)) );
-
- disconnect( m_project, SIGNAL(resourceGroupToBeAdded(const ResourceGroup*,int)), this, SLOT(slotResourceGroupToBeInserted(const ResourceGroup*,int)) );
-@@ -255,6 +258,7 @@ void ResourceAppointmentsItemModel::setProject( Project *project )
- }
- m_project = project;
- if ( m_project ) {
-+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
- connect( m_project, SIGNAL(resourceChanged(Resource*)), this, SLOT(slotResourceChanged(Resource*)) );
- connect( m_project, SIGNAL(resourceGroupChanged(ResourceGroup*)), this, SLOT(slotResourceGroupChanged(ResourceGroup*)) );
-
-@@ -1351,6 +1355,8 @@ void ResourceAppointmentsRowModel::setProject( Project *project )
- {
- //kDebug(planDbg())<<project;
- if ( m_project ) {
-+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
-+
- disconnect( m_project, SIGNAL(resourceGroupToBeAdded(const ResourceGroup*,int)), this, SLOT(slotResourceGroupToBeInserted(const ResourceGroup*,int)) );
-
- disconnect( m_project, SIGNAL(resourceGroupToBeRemoved(const ResourceGroup*)), this, SLOT(slotResourceGroupToBeRemoved(const ResourceGroup*)) );
-@@ -1379,6 +1385,8 @@ void ResourceAppointmentsRowModel::setProject( Project *project )
- }
- m_project = project;
- if ( m_project ) {
-+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
-+
- connect( m_project, SIGNAL(resourceGroupToBeAdded(const ResourceGroup*,int)), this, SLOT(slotResourceGroupToBeInserted(const ResourceGroup*,int)) );
-
- connect( m_project, SIGNAL(resourceGroupToBeRemoved(const ResourceGroup*)), this, SLOT(slotResourceGroupToBeRemoved(const ResourceGroup*)) );
-diff --git a/plan/libs/models/kptresourcemodel.cpp b/plan/libs/models/kptresourcemodel.cpp
-index 81f3493..23242df 100644
---- a/plan/libs/models/kptresourcemodel.cpp
-+++ b/plan/libs/models/kptresourcemodel.cpp
-@@ -599,6 +599,7 @@ void ResourceItemModel::slotLayoutChanged()
- void ResourceItemModel::setProject( Project *project )
- {
- if ( m_project ) {
-+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
- disconnect( m_project, SIGNAL(localeChanged()), this, SLOT(slotLayoutChanged()) );
- disconnect( m_project, SIGNAL(resourceChanged(Resource*)), this, SLOT(slotResourceChanged(Resource*)) );
- disconnect( m_project, SIGNAL(resourceGroupChanged(ResourceGroup*)), this, SLOT(slotResourceGroupChanged(ResourceGroup*)) );
-@@ -623,6 +624,7 @@ void ResourceItemModel::setProject( Project *project )
- }
- m_project = project;
- if ( m_project ) {
-+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
- connect( m_project, SIGNAL(localeChanged()), this, SLOT(slotLayoutChanged()) );
- connect( m_project, SIGNAL(resourceChanged(Resource*)), this, SLOT(slotResourceChanged(Resource*)) );
- connect( m_project, SIGNAL(resourceGroupChanged(ResourceGroup*)), this, SLOT(slotResourceGroupChanged(ResourceGroup*)) );
-@@ -711,7 +713,7 @@ QModelIndex ResourceItemModel::parent( const QModelIndex &index ) const
- }
- //kDebug(planDbg())<<index.internalPointer()<<":"<<index.row()<<","<<index.column();
-
-- Resource *r = qobject_cast<Resource*>( object( index ) );
-+ Resource *r = resource( index );
- if ( r && r->parentGroup() ) {
- // only resources have parent
- int row = m_project->indexOf( r->parentGroup() );
-@@ -732,8 +734,7 @@ QModelIndex ResourceItemModel::index( int row, int column, const QModelIndex &pa
- }
- return QModelIndex();
- }
-- QObject *p = object( parent );
-- ResourceGroup *g = qobject_cast<ResourceGroup*>( p );
-+ ResourceGroup *g = group( parent );
- if ( g ) {
- if ( row < g->numResources() ) {
- return createIndex( row, column, g->resourceAt( row ) );
-@@ -782,8 +783,7 @@ int ResourceItemModel::rowCount( const QModelIndex &parent ) const
- if ( ! parent.isValid() ) {
- return m_project->numResourceGroups();
- }
-- QObject *p = object( parent );
-- ResourceGroup *g = qobject_cast<ResourceGroup*>( p );
-+ ResourceGroup *g = group( parent );
- if ( g ) {
- return g->numResources();
- }
-@@ -1148,6 +1148,8 @@ QObject *ResourceItemModel::object( const QModelIndex &index ) const
- {
- QObject *o = 0;
- if ( index.isValid() ) {
-+ Q_ASSERT( m_project );
-+ Q_ASSERT(m_project->resourceGroups().contains(static_cast<ResourceGroup*>(index.internalPointer())) || m_project->resourceList().contains(static_cast<Resource*>(index.internalPointer())));
- o = static_cast<QObject*>( index.internalPointer() );
- Q_ASSERT( o );
- }
-diff --git a/plan/libs/models/kptschedulemodel.cpp b/plan/libs/models/kptschedulemodel.cpp
-index e3ce298..4d47ee5 100644
---- a/plan/libs/models/kptschedulemodel.cpp
-+++ b/plan/libs/models/kptschedulemodel.cpp
-@@ -171,6 +171,8 @@ void ScheduleItemModel::slotScheduleRemoved( const MainSchedule * )
- void ScheduleItemModel::setProject( Project *project )
- {
- if ( m_project ) {
-+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
-+
- disconnect( m_project, SIGNAL(scheduleManagerChanged(ScheduleManager*)), this, SLOT(slotManagerChanged(ScheduleManager*)) );
-
- disconnect( m_project, SIGNAL(scheduleManagerToBeAdded(const ScheduleManager*,int)), this, SLOT(slotScheduleManagerToBeInserted(const ScheduleManager*,int)) );
-@@ -197,6 +199,8 @@ void ScheduleItemModel::setProject( Project *project )
- }
- m_project = project;
- if ( m_project ) {
-+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
-+
- connect( m_project, SIGNAL(scheduleManagerChanged(ScheduleManager*)), this, SLOT(slotManagerChanged(ScheduleManager*)) );
-
- connect( m_project, SIGNAL(scheduleManagerToBeAdded(const ScheduleManager*,int)), this, SLOT(slotScheduleManagerToBeInserted(const ScheduleManager*,int)) );
-@@ -1074,10 +1078,17 @@ void ScheduleLogItemModel::slotScheduleRemoved( const MainSchedule *sch )
- kDebug(planDbg())<<m_schedule<<sch;
- }
-
-+void ScheduleLogItemModel::projectDeleted()
-+{
-+ setProject(0);
-+}
-+
- void ScheduleLogItemModel::setProject( Project *project )
- {
- kDebug(planDbg())<<m_project<<"->"<<project;
- if ( m_project ) {
-+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
-+
- disconnect( m_project, SIGNAL(scheduleManagerChanged(ScheduleManager*)), this, SLOT(slotManagerChanged(ScheduleManager*)) );
-
- disconnect( m_project, SIGNAL(scheduleManagerToBeRemoved(const ScheduleManager*)), this, SLOT(slotScheduleManagerToBeRemoved(const ScheduleManager*)) );
-@@ -1096,6 +1107,8 @@ void ScheduleLogItemModel::setProject( Project *project )
- }
- m_project = project;
- if ( m_project ) {
-+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
-+
- connect( m_project, SIGNAL(scheduleManagerChanged(ScheduleManager*)), this, SLOT(slotManagerChanged(ScheduleManager*)) );
-
- connect( m_project, SIGNAL(scheduleManagerToBeRemoved(const ScheduleManager*)), this, SLOT(slotScheduleManagerToBeRemoved(const ScheduleManager*)) );
-diff --git a/plan/libs/models/kptschedulemodel.h b/plan/libs/models/kptschedulemodel.h
-index c09d8fb..acc75b4 100644
---- a/plan/libs/models/kptschedulemodel.h
-+++ b/plan/libs/models/kptschedulemodel.h
-@@ -203,6 +203,8 @@ protected Q_SLOTS:
-
- void slotLogInserted( MainSchedule*, int firstrow, int lastrow );
-
-+ void projectDeleted();
-+
- protected:
- void addLogEntry( const Schedule::Log &log, int row );
-
-diff --git a/plan/libs/models/kpttaskstatusmodel.cpp b/plan/libs/models/kpttaskstatusmodel.cpp
-index e0693b8..9fb3b37 100644
---- a/plan/libs/models/kpttaskstatusmodel.cpp
-+++ b/plan/libs/models/kpttaskstatusmodel.cpp
-@@ -126,6 +126,7 @@ void TaskStatusItemModel::setProject( Project *project )
- {
- clear();
- if ( m_project ) {
-+ disconnect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
- disconnect( m_project, SIGNAL(localeChanged()), this, SLOT(slotLayoutChanged()) );
- disconnect( m_project, SIGNAL(wbsDefinitionChanged()), this, SLOT(slotWbsDefinitionChanged()) );
- disconnect( m_project, SIGNAL(nodeChanged(Node*)), this, SLOT(slotNodeChanged(Node*)) );
-@@ -140,6 +141,7 @@ void TaskStatusItemModel::setProject( Project *project )
- m_project = project;
- m_nodemodel.setProject( project );
- if ( project ) {
-+ connect(m_project, SIGNAL(aboutToBeDeleted()), this, SLOT(projectDeleted()));
- connect( m_project, SIGNAL(localeChanged()), this, SLOT(slotLayoutChanged()) );
- connect( m_project, SIGNAL(wbsDefinitionChanged()), this, SLOT(slotWbsDefinitionChanged()) );
- connect( m_project, SIGNAL(nodeChanged(Node*)), this, SLOT(slotNodeChanged(Node*)) );
---
-2.7.4
-
diff --git a/source/kde/patch/calligra/0070-Plan-Guard-against-trying-to-move-a-task-into-the-sa.patch b/source/kde/patch/calligra/0070-Plan-Guard-against-trying-to-move-a-task-into-the-sa.patch
deleted file mode 100644
index debb62b7..00000000
--- a/source/kde/patch/calligra/0070-Plan-Guard-against-trying-to-move-a-task-into-the-sa.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From a9134500e4e599ba316617941bcd04f640ed3999 Mon Sep 17 00:00:00 2001
-From: Dag Andersen <danders@get2net.dk>
-Date: Tue, 23 Aug 2016 13:30:13 +0200
-Subject: [PATCH 70/80] Plan: Guard against trying to move a task into the same
- porition
-
-QAbstractItemModel cannot handle this and it causes a crash (later)
----
- plan/libs/kernel/kptproject.cpp | 4 ++++
- plan/libs/models/kptnodeitemmodel.cpp | 9 +++++++++
- 2 files changed, 13 insertions(+)
-
-diff --git a/plan/libs/kernel/kptproject.cpp b/plan/libs/kernel/kptproject.cpp
-index 451e897..fdf43bc 100644
---- a/plan/libs/kernel/kptproject.cpp
-+++ b/plan/libs/kernel/kptproject.cpp
-@@ -1565,6 +1565,10 @@ bool Project::moveTask( Node* node, Node *newParent, int newPos )
- Node *oldParent = node->parentNode();
- int oldPos = oldParent->indexOf( node );
- int i = newPos < 0 ? newParent->numChildren() : newPos;
-+ if ( oldParent == newParent && i == oldPos ) {
-+ // no need to move to where it already is
-+ return false;
-+ }
- int newRow = i;
- if ( oldParent == newParent && newPos > oldPos ) {
- ++newRow; // itemmodels wants new row *before* node is removed from old position
-diff --git a/plan/libs/models/kptnodeitemmodel.cpp b/plan/libs/models/kptnodeitemmodel.cpp
-index e66277f..5581f8f 100644
---- a/plan/libs/models/kptnodeitemmodel.cpp
-+++ b/plan/libs/models/kptnodeitemmodel.cpp
-@@ -4036,6 +4036,15 @@ bool NodeItemModel::dropMimeData( const QMimeData *data, Qt::DropAction action,
- if ( pos >= 0 && n->parentNode() == par && par->indexOf( n ) < pos ) {
- --pos;
- }
-+ if ( n->parentNode() == par ) {
-+ // avoid drop into the same position, QAbstractItemModel does not like it
-+ int crow = par->indexOf( n );
-+ if ( ( ( pos == -1 ) && ( crow == par->numChildren() - 1 ) ) || ( pos == crow ) ) {
-+ delete cmd;
-+ cmd = 0;
-+ continue;
-+ }
-+ }
- cmd->addCommand( new NodeMoveCmd( m_project, n, par, pos ) );
- offset++;
- }
---
-2.7.4
-
diff --git a/source/kde/patch/calligra/boost-1.65.0.patch b/source/kde/patch/calligra/boost-1.65.0.patch
deleted file mode 100644
index 9f6a4066..00000000
--- a/source/kde/patch/calligra/boost-1.65.0.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-diff -ru calligra-2.9.11.orig/gemini/desktopviewproxy.cpp calligra-2.9.11/gemini/desktopviewproxy.cpp
---- calligra-2.9.11.orig/gemini/desktopviewproxy.cpp 2016-02-02 20:53:13.000000000 +0100
-+++ calligra-2.9.11/gemini/desktopviewproxy.cpp 2017-08-27 17:54:48.900376022 +0200
-@@ -31,7 +31,7 @@
- #include <krecentfilesaction.h>
- #include <kactioncollection.h>
-
--#include <boost/config/posix_features.hpp>
-+#include <boost/config/detail/posix_features.hpp>
- #include <KConfigGroup>
-
- #include <KoMainWindow.h>
-diff -ru calligra-2.9.11.orig/krita/gemini/desktopviewproxy.cpp calligra-2.9.11/krita/gemini/desktopviewproxy.cpp
---- calligra-2.9.11.orig/krita/gemini/desktopviewproxy.cpp 2016-02-02 20:53:14.000000000 +0100
-+++ calligra-2.9.11/krita/gemini/desktopviewproxy.cpp 2017-08-27 17:53:54.964372389 +0200
-@@ -31,7 +31,7 @@
- #include <krecentfilesaction.h>
- #include <kactioncollection.h>
-
--#include <boost/config/posix_features.hpp>
-+#include <boost/config/detail/posix_features.hpp>
-
- #include <KisMainWindow.h>
- #include <KisImportExportManager.h>
diff --git a/source/kde/patch/calligra/calligra-2.9.11-gcc6_arm.patch b/source/kde/patch/calligra/calligra-2.9.11-gcc6_arm.patch
deleted file mode 100644
index 2b1271c0..00000000
--- a/source/kde/patch/calligra/calligra-2.9.11-gcc6_arm.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -up calligra-2.9.11/libs/flake/KoSnapStrategy.cpp.gcc6_arm calligra-2.9.11/libs/flake/KoSnapStrategy.cpp
---- calligra-2.9.11/libs/flake/KoSnapStrategy.cpp.gcc6_arm 2016-02-02 13:53:15.000000000 -0600
-+++ calligra-2.9.11/libs/flake/KoSnapStrategy.cpp 2016-02-08 09:12:39.452896965 -0600
-@@ -181,7 +181,7 @@ bool ExtensionSnapStrategy::snap(const Q
- Q_ASSERT(isfinite(maxSnapDistance));
-
- const qreal maxDistance = maxSnapDistance * maxSnapDistance;
-- qreal minDistances[2] = { HUGE_VAL, HUGE_VAL };
-+ qreal minDistances[2] = { (qreal)HUGE_VAL, (qreal)HUGE_VAL };
-
- QPointF snappedPoints[2] = { mousePosition, mousePosition };
- QPointF startPoints[2];
diff --git a/source/kde/patch/calligra/calligra.mariadb.diff b/source/kde/patch/calligra/calligra.mariadb.diff
deleted file mode 100644
index 96006998..00000000
--- a/source/kde/patch/calligra/calligra.mariadb.diff
+++ /dev/null
@@ -1,33 +0,0 @@
---- ./kexi/migration/mysql/mysqlmigrate.cpp.orig 2016-02-02 13:53:13.000000000 -0600
-+++ ./kexi/migration/mysql/mysqlmigrate.cpp 2017-08-30 14:21:01.436709371 -0500
-@@ -42,7 +42,7 @@
- #ifdef Q_WS_WIN
- # undef _WIN32_WINNT // avoid redef.
- #endif
--#include <mysql_version.h>
-+#include <mariadb_version.h>
- #include <mysql.h>
- #define BOOL bool
-
---- ./kexi/kexidb/drivers/mysql/mysqldriver.cpp.orig 2016-02-02 13:53:13.000000000 -0600
-+++ ./kexi/kexidb/drivers/mysql/mysqldriver.cpp 2017-08-30 14:20:24.858710150 -0500
-@@ -31,7 +31,7 @@
- #include <QVariant>
- #include <QFile>
-
--#include <mysql_version.h>
-+#include <mariadb_version.h>
- #include <mysql.h>
- #define BOOL bool
-
---- ./kexi/kexidb/drivers/mysql/mysqlconnection_p.h.orig 2016-02-02 13:53:13.000000000 -0600
-+++ ./kexi/kexidb/drivers/mysql/mysqlconnection_p.h 2017-08-30 14:20:24.861710150 -0500
-@@ -30,7 +30,7 @@
- # endif
- # include <my_global.h>
- #endif
--#include <mysql_version.h>
-+#include <mariadb_version.h>
- #include <mysql.h>
-
- typedef struct st_mysql MYSQL;
diff --git a/source/kde/patch/k3b.patch b/source/kde/patch/k3b.patch
deleted file mode 100644
index a96caa49..00000000
--- a/source/kde/patch/k3b.patch
+++ /dev/null
@@ -1,9 +0,0 @@
-# Patch for GCC 6+:
-zcat $CWD/patch/k3b/k3b.narrowing.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
-# Patch for ffmpeg3:
-zcat $CWD/patch/k3b/k3b-ffmpeg3.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
-# Fix error "ISO C++ forbids comparison between pointer and integer [-fpermissive]":
-zcat $CWD/patch/k3b/k3b.pointer.compare.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
diff --git a/source/kde/patch/k3b/k3b-ffmpeg3.patch b/source/kde/patch/k3b/k3b-ffmpeg3.patch
deleted file mode 100644
index 9c5ac420..00000000
--- a/source/kde/patch/k3b/k3b-ffmpeg3.patch
+++ /dev/null
@@ -1,138 +0,0 @@
-From 52d3d64863d2fab4128f524870851f18f5cae1fc Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Old=C5=99ich=20Jedli=C4=8Dka?= <oldium.pro@seznam.cz>
-Date: Sat, 14 Feb 2015 15:31:07 +0100
-Subject: [PATCH] Fixed compilation with newer ffmpeg/libav.
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Signed-off-by: Oldřich Jedlička <oldium.pro@seznam.cz>
----
- plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp | 60 ++++++++++++++++++++++++-----
- 1 file changed, 50 insertions(+), 10 deletions(-)
-
-diff --git a/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp b/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp
-index 5451fd3..2f80fd6 100644
---- a/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp
-+++ b/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp
-@@ -86,8 +86,12 @@ public:
- K3b::Msf length;
-
- // for decoding. ffmpeg requires 16-byte alignment.
-+#ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO4
-+ ::AVFrame* frame;
-+#else
- char outputBuffer[AVCODEC_MAX_AUDIO_FRAME_SIZE + 15];
- char* alignedOutputBuffer;
-+#endif
- char* outputBufferPos;
- int outputBufferSize;
- ::AVPacket packet;
-@@ -102,14 +106,29 @@ K3bFFMpegFile::K3bFFMpegFile( const QString& filename )
- d = new Private;
- d->formatContext = 0;
- d->codec = 0;
-+#ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO4
-+# if LIBAVCODEC_BUILD < AV_VERSION_INT(55,28,1)
-+ d->frame = avcodec_alloc_frame();
-+# else
-+ d->frame = av_frame_alloc();
-+# endif
-+#else
- int offset = 0x10 - (reinterpret_cast<intptr_t>(&d->outputBuffer) & 0xf);
- d->alignedOutputBuffer = &d->outputBuffer[offset];
-+#endif
- }
-
-
- K3bFFMpegFile::~K3bFFMpegFile()
- {
- close();
-+#ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO4
-+# if LIBAVCODEC_BUILD < AV_VERSION_INT(55,28,1)
-+ av_free(d->frame);
-+# else
-+ av_frame_free(&d->frame);
-+# endif
-+#endif
- delete d;
- }
-
-@@ -326,26 +345,36 @@ int K3bFFMpegFile::fillOutputBuffer()
- return 0;
- }
-
-+#ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO4
-+ int gotFrame = 0;
-+ int len = ::avcodec_decode_audio4(
-+#else
- d->outputBufferPos = d->alignedOutputBuffer;
- d->outputBufferSize = AVCODEC_MAX_AUDIO_FRAME_SIZE;
--
--#ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO3
-+# ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO3
- int len = ::avcodec_decode_audio3(
--#else
--# ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO2
-- int len = ::avcodec_decode_audio2(
- # else
-+# ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO2
-+ int len = ::avcodec_decode_audio2(
-+# else
- int len = ::avcodec_decode_audio(
-+# endif
- # endif
- #endif
-
- FFMPEG_CODEC(d->formatContext->streams[0]),
-+#ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO4
-+ d->frame,
-+ &gotFrame,
-+ &d->packet );
-+#else
- (short*)d->alignedOutputBuffer,
- &d->outputBufferSize,
--#ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO3
-+# ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO3
- &d->packet );
--#else
-+# else
- d->packetData, d->packetSize );
-+# endif
- #endif
-
- if( d->packetSize <= 0 || len < 0 )
-@@ -355,6 +384,17 @@ int K3bFFMpegFile::fillOutputBuffer()
- return -1;
- }
-
-+#ifdef HAVE_FFMPEG_AVCODEC_DECODE_AUDIO4
-+ if ( gotFrame ) {
-+ d->outputBufferSize = ::av_samples_get_buffer_size(
-+ NULL,
-+ FFMPEG_CODEC(d->formatContext->streams[0])->channels,
-+ d->frame->nb_samples,
-+ FFMPEG_CODEC(d->formatContext->streams[0])->sample_fmt,
-+ 1 );
-+ d->outputBufferPos = reinterpret_cast<char*>( d->frame->data[0] );
-+ }
-+#endif
- d->packetSize -= len;
- d->packetData += len;
- }
-@@ -420,9 +460,9 @@ K3bFFMpegFile* K3bFFMpegWrapper::open( const QString& filename ) const
- // mp3 being one of them sadly. Most importantly: allow the libsndfile decoder to do
- // its thing.
- //
-- if( file->type() == CODEC_ID_WMAV1 ||
-- file->type() == CODEC_ID_WMAV2 ||
-- file->type() == CODEC_ID_AAC )
-+ if( file->type() == AV_CODEC_ID_WMAV1 ||
-+ file->type() == AV_CODEC_ID_WMAV2 ||
-+ file->type() == AV_CODEC_ID_AAC )
- #endif
- return file;
- }
---
-2.0.5
-
diff --git a/source/kde/patch/k3b/k3b.narrowing.diff b/source/kde/patch/k3b/k3b.narrowing.diff
deleted file mode 100644
index 7a328394..00000000
--- a/source/kde/patch/k3b/k3b.narrowing.diff
+++ /dev/null
@@ -1,71 +0,0 @@
---- k3b-2.0.3/libk3b/tools/k3bwavefilewriter.cpp.old 2016-05-14 12:33:15.000000000 -0400
-+++ k3b-2.0.3/libk3b/tools/k3bwavefilewriter.cpp 2016-05-14 12:34:35.218389226 -0400
-@@ -111,17 +111,17 @@
- {
- static const char riffHeader[] =
- {
-- 0x52, 0x49, 0x46, 0x46, // 0 "RIFF"
-- 0x00, 0x00, 0x00, 0x00, // 4 wavSize
-- 0x57, 0x41, 0x56, 0x45, // 8 "WAVE"
-- 0x66, 0x6d, 0x74, 0x20, // 12 "fmt "
-- 0x10, 0x00, 0x00, 0x00, // 16
-- 0x01, 0x00, 0x02, 0x00, // 20
-- 0x44, 0xac, 0x00, 0x00, // 24
-- 0x10, 0xb1, 0x02, 0x00, // 28
-- 0x04, 0x00, 0x10, 0x00, // 32
-- 0x64, 0x61, 0x74, 0x61, // 36 "data"
-- 0x00, 0x00, 0x00, 0x00 // 40 byteCount
-+ (char)0x52, (char)0x49, (char)0x46, (char)0x46, // 0 "RIFF"
-+ (char)0x00, (char)0x00, (char)0x00, (char)0x00, // 4 wavSize
-+ (char)0x57, (char)0x41, (char)0x56, (char)0x45, // 8 "WAVE"
-+ (char)0x66, (char)0x6d, (char)0x74, (char)0x20, // 12 "fmt "
-+ (char)0x10, (char)0x00, (char)0x00, (char)0x00, // 16
-+ (char)0x01, (char)0x00, (char)0x02, (char)0x00, // 20
-+ (char)0x44, (char)0xac, (char)0x00, (char)0x00, // 24
-+ (char)0x10, (char)0xb1, (char)0x02, (char)0x00, // 28
-+ (char)0x04, (char)0x00, (char)0x10, (char)0x00, // 32
-+ (char)0x64, (char)0x61, (char)0x74, (char)0x61, // 36 "data"
-+ (char)0x00, (char)0x00, (char)0x00, (char)0x00 // 40 byteCount
- };
-
- m_outputStream.writeRawData( riffHeader, 44 );
---- k3b-2.0.3/libk3b/projects/k3bcdrdaowriter.cpp.old 2014-11-04 13:37:31.000000000 -0500
-+++ k3b-2.0.3/libk3b/projects/k3bcdrdaowriter.cpp 2016-05-14 12:41:13.769135417 -0400
-@@ -908,7 +908,7 @@
-
- void K3b::CdrdaoWriter::parseCdrdaoMessage()
- {
-- static const char msgSync[] = { 0xff, 0x00, 0xff, 0x00 };
-+ static const char msgSync[] = { (char)0xff, (char)0x00, (char)0xff, (char)0x00 };
- unsigned int avail = m_comSock->bytesAvailable();
- unsigned int msgs = avail / ( sizeof(msgSync)+d->progressMsgSize );
- unsigned int count = 0;
---- k3b-2.0.3/plugins/encoder/external/k3bexternalencoder.cpp.old 2014-11-04 13:37:31.000000000 -0500
-+++ k3b-2.0.3/plugins/encoder/external/k3bexternalencoder.cpp 2016-05-14 12:45:57.967902413 -0400
-@@ -39,17 +39,17 @@
-
- static const char s_riffHeader[] =
- {
-- 0x52, 0x49, 0x46, 0x46, // 0 "RIFF"
-- 0x00, 0x00, 0x00, 0x00, // 4 wavSize
-- 0x57, 0x41, 0x56, 0x45, // 8 "WAVE"
-- 0x66, 0x6d, 0x74, 0x20, // 12 "fmt "
-- 0x10, 0x00, 0x00, 0x00, // 16
-- 0x01, 0x00, 0x02, 0x00, // 20
-- 0x44, 0xac, 0x00, 0x00, // 24
-- 0x10, 0xb1, 0x02, 0x00, // 28
-- 0x04, 0x00, 0x10, 0x00, // 32
-- 0x64, 0x61, 0x74, 0x61, // 36 "data"
-- 0x00, 0x00, 0x00, 0x00 // 40 byteCount
-+ (char)0x52, (char)0x49, (char)0x46, (char)0x46, // 0 "RIFF"
-+ (char)0x00, (char)0x00, (char)0x00, (char)0x00, // 4 wavSize
-+ (char)0x57, (char)0x41, (char)0x56, (char)0x45, // 8 "WAVE"
-+ (char)0x66, (char)0x6d, (char)0x74, (char)0x20, // 12 "fmt "
-+ (char)0x10, (char)0x00, (char)0x00, (char)0x00, // 16
-+ (char)0x01, (char)0x00, (char)0x02, (char)0x00, // 20
-+ (char)0x44, (char)0xac, (char)0x00, (char)0x00, // 24
-+ (char)0x10, (char)0xb1, (char)0x02, (char)0x00, // 28
-+ (char)0x04, (char)0x00, (char)0x10, (char)0x00, // 32
-+ (char)0x64, (char)0x61, (char)0x74, (char)0x61, // 36 "data"
-+ (char)0x00, (char)0x00, (char)0x00, (char)0x00 // 40 byteCount
- };
diff --git a/source/kde/patch/k3b/k3b.pointer.compare.diff b/source/kde/patch/k3b/k3b.pointer.compare.diff
deleted file mode 100644
index 590fce7a..00000000
--- a/source/kde/patch/k3b/k3b.pointer.compare.diff
+++ /dev/null
@@ -1,29 +0,0 @@
---- ./plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp.orig 2017-05-06 16:40:46.273796232 -0500
-+++ ./plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp 2017-05-06 16:47:19.594787855 -0500
-@@ -261,7 +261,7 @@
- AVDictionaryEntry *ade = av_dict_get( d->formatContext->metadata, "TITLE", NULL, 0 );
- if( ade == NULL )
- return QString();
-- if( ade->value != '\0' )
-+ if( ade->value )
- return QString::fromLocal8Bit( ade->value );
- else
- return QString();
-@@ -274,7 +274,7 @@
- AVDictionaryEntry *ade = av_dict_get( d->formatContext->metadata, "ARTIST", NULL, 0 );
- if( ade == NULL )
- return QString();
-- if( ade->value != '\0' )
-+ if( ade->value )
- return QString::fromLocal8Bit( ade->value );
- else
- return QString();
-@@ -287,7 +287,7 @@
- AVDictionaryEntry *ade = av_dict_get( d->formatContext->metadata, "COMMENT", NULL, 0 );
- if( ade == NULL )
- return QString();
-- if( ade->value != '\0' )
-+ if( ade->value )
- return QString::fromLocal8Bit( ade->value );
- else
- return QString();
diff --git a/source/kde/patch/kate.patch b/source/kde/patch/kate.patch
deleted file mode 100644
index 4810b315..00000000
--- a/source/kde/patch/kate.patch
+++ /dev/null
@@ -1,3 +0,0 @@
-# Fix build for gcc6+:
-zcat $CWD/patch/kate/kate4-fix_gcc7.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
diff --git a/source/kde/patch/kate/kate4-fix_gcc7.patch b/source/kde/patch/kate/kate4-fix_gcc7.patch
deleted file mode 100644
index 080a114f..00000000
--- a/source/kde/patch/kate/kate4-fix_gcc7.patch
+++ /dev/null
@@ -1,54 +0,0 @@
---- a/part/search/kateregexp.cpp
-+++ b/part/search/kateregexp.cpp
-@@ -96,7 +96,7 @@
-
- case L'n':
- stillMultiLine = true;
-- // FALLTROUGH
-+ __attribute__((fallthrough));
-
- default:
- // copy "\?" unmodified
-@@ -164,7 +164,7 @@
-
- case L'n':
- stillMultiLine = true;
-- // FALLTROUGH
-+ __attribute__((fallthrough));
-
- default:
- // copy "\?" unmodified
---- a/part/view/kateview.cpp
-+++ b/part/view/kateview.cpp
-@@ -310,7 +310,7 @@
- if (factory())
- factory()->removeClient (this);
-
-- KTextEditor::ViewBarContainer *viewBarContainer=qobject_cast<KTextEditor::ViewBarContainer*>( KateGlobal::self()->container() );
-+ KTextEditor::ViewBarContainer *viewBarContainer=qobject_cast<KTextEditor::ViewBarContainer*>( KateGlobal::self()->container() );
- if (viewBarContainer) {
- viewBarContainer->deleteViewBarForView(this,KTextEditor::ViewBarContainer::BottomBar);
- m_bottomViewBar=0;
---- a/part/view/kateviewaccessible.h
-+++ b/part/view/kateviewaccessible.h
-@@ -248,7 +248,8 @@
-
- virtual int navigate(QAccessible::RelationFlag relation, int entry, QAccessibleInterface **target) const
- {
-- if ((relation == QAccessible::Child || QAccessible::FocusChild) && entry == KateCursorAccessible::ChildId) {
-+ if ((relation == QAccessible::Child || relation == QAccessible::FocusChild) &&
-+ entry == KateCursorAccessible::ChildId) {
- *target = new KateCursorAccessible(view());
- return KateCursorAccessible::ChildId;
- }
---- a/part/view/kateviewhelpers.cpp
-+++ b/part/view/kateviewhelpers.cpp
-@@ -1703,7 +1703,7 @@
- if (realLine > -1) {
- if (m_viewInternal->cache()->viewLine(z).startCol() == 0) {
- if (m_viRelLineNumbersOn && m_view->viInputMode()) {
-- int diff = abs(realLine - currentLine);
-+ int diff = abs(static_cast<int>(realLine - currentLine));
- if (diff > 0) {
- p.drawText( lnX + m_maxCharWidth / 2, y, lnWidth - m_maxCharWidth, h,
- Qt::TextDontClip|Qt::AlignRight|Qt::AlignVCenter, QString("%1").arg(diff) );
diff --git a/source/kde/patch/kde-runtime.patch b/source/kde/patch/kde-runtime.patch
deleted file mode 100644
index 3cdd393c..00000000
--- a/source/kde/patch/kde-runtime.patch
+++ /dev/null
@@ -1,3 +0,0 @@
-zcat $CWD/patch/kde-runtime/kde-runtime-4.14.3.nm.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-zcat $CWD/patch/kde-runtime/kde-runtime.fix.konqueror.manpage.infopage.display.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
diff --git a/source/kde/patch/kde-runtime/kde-runtime-4.14.3.nm.diff b/source/kde/patch/kde-runtime/kde-runtime-4.14.3.nm.diff
deleted file mode 100644
index 8bcdb8db..00000000
--- a/source/kde/patch/kde-runtime/kde-runtime-4.14.3.nm.diff
+++ /dev/null
@@ -1,10 +0,0 @@
---- ./solid-networkstatus/kded/CMakeLists.txt.orig 2014-10-30 18:50:20.000000000 -0500
-+++ ./solid-networkstatus/kded/CMakeLists.txt 2015-10-24 00:10:47.043649546 -0500
-@@ -21,6 +21,7 @@
- MESSAGE(STATUS "Adding in-process NetworkManager service-wart to kded module")
- set(kded_networkstatus_PART_SRCS ${kded_networkstatus_PART_SRCS} networkmanagerstatus.cpp)
- include_directories(${NETWORKMANAGER_INCLUDE_DIRS})
-+ include_directories(${NM-UTIL_INCLUDE_DIRS})
- add_definitions(-DNM_BACKEND_ENABLED)
- endif(NM_0_7)
- endif(NETWORKMANAGER_FOUND)
diff --git a/source/kde/patch/kde-runtime/kde-runtime.fix.konqueror.manpage.infopage.display.diff b/source/kde/patch/kde-runtime/kde-runtime.fix.konqueror.manpage.infopage.display.diff
deleted file mode 100644
index 0f9ae9a2..00000000
--- a/source/kde/patch/kde-runtime/kde-runtime.fix.konqueror.manpage.infopage.display.diff
+++ /dev/null
@@ -1,20 +0,0 @@
---- ./kioslave/info/kde-info2html.orig 2014-10-31 00:50:20.000000000 +0100
-+++ ./kioslave/info/kde-info2html 2018-11-01 18:30:29.718723253 +0100
-@@ -172,7 +172,7 @@
- next if $looking && !/\* Menu/;
- $looking = 0;
- my @item = &ParseMenuItem($_,'dir');
-- if (!defined(@item)) { next }
-+ if (!@item) { next }
- my ($MenuLinkTag, $MenuLinkFile, $MenuLinkRef, $MenuLinkText) = @item;
- if ($MenuLinkRef eq $FileName) {
- &Redirect($MenuLinkFile, $MenuLinkTag);
-@@ -430,7 +430,7 @@
- sub MenuItem2HTML {
- my ($Line, $BaseInfoFile) = @_;
- my @parse_results = &ParseMenuItem($Line, $BaseInfoFile);
-- if (!defined (@parse_results)) { return $Line; }
-+ if (!@parse_results) { return $Line; }
- my ($MenuLinkTag, $MenuLinkFile, $MenuLinkRef, $MenuLinkText) = @parse_results;
- #-- produce a HTML line
- return "<tr class=\"infomenutr\"><td class=\"infomenutd\" style=\"width:30%\"><ul><li><a href=\"info:/$MenuLinkFile/$MenuLinkTag\">$MenuLinkRef</a></ul></td><td class=\"infomenutd\">$MenuLinkText";
diff --git a/source/kde/patch/kde-workspace.patch b/source/kde/patch/kde-workspace.patch
deleted file mode 100644
index 5c52a3dc..00000000
--- a/source/kde/patch/kde-workspace.patch
+++ /dev/null
@@ -1,8 +0,0 @@
-# Increase the timeout to accomodate slow-to-initialize video chipset drivers:
-zcat $CWD/patch/kde-workspace/kde-workspace.kdm.server.timeout.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
-# Always show 'remaining time' in the popup of the battery plasmoid:
-zcat $CWD/patch/kde-workspace/kde-workspace.batteryapplet.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
-# Fix issues with default panel. Offer launchers for Dolphin, Konqueror, Firefox, and Konsole.
-zcat $CWD/patch/kde-workspace/kde-workspace.panel-layout.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
diff --git a/source/kde/patch/kde-workspace/kde-workspace.batteryapplet.diff b/source/kde/patch/kde-workspace/kde-workspace.batteryapplet.diff
deleted file mode 100644
index 79582780..00000000
--- a/source/kde/patch/kde-workspace/kde-workspace.batteryapplet.diff
+++ /dev/null
@@ -1,13 +0,0 @@
-diff -ur kde-workspace-4.8.80/plasma/generic/applets/batterymonitor/contents/config/main.xml kde-workspace-4.8.80-battery-plasmoid-showremainingtime/plasma/generic/applets/batterymonitor/contents/config/main.xml
---- kde-workspace-4.8.80/plasma/generic/applets/batterymonitor/contents/config/main.xml 2012-05-23 01:55:18.000000000 +0200
-+++ kde-workspace-4.8.80-battery-plasmoid-showremainingtime/plasma/generic/applets/batterymonitor/contents/config/main.xml 2012-05-26 22:09:44.000000000 +0200
-@@ -10,7 +10,7 @@
- <default>false</default>
- </entry>
- <entry name="showRemainingTime" type="Bool">
-- <default>false</default>
-+ <default>true</default>
- </entry>
- </group>
-
-
diff --git a/source/kde/patch/kde-workspace/kde-workspace.kdm.server.timeout.diff b/source/kde/patch/kde-workspace/kde-workspace.kdm.server.timeout.diff
deleted file mode 100644
index 4dd98484..00000000
--- a/source/kde/patch/kde-workspace/kde-workspace.kdm.server.timeout.diff
+++ /dev/null
@@ -1,14 +0,0 @@
---- ./kdm/config.def.orig 2010-09-30 16:20:21.000000000 -0500
-+++ ./kdm/config.def 2010-12-01 19:13:02.356002453 -0600
-@@ -1343,9 +1343,9 @@
-
- Key: ServerTimeout
- Type: int
--Default: 30
-+Default: 45
- User: core
--Instance: #:*/
-+Instance: :*/
- Comment:
- How long to wait for a local &X-Server; to come up.
- Description:
diff --git a/source/kde/patch/kde-workspace/kde-workspace.panel-layout.diff b/source/kde/patch/kde-workspace/kde-workspace.panel-layout.diff
deleted file mode 100644
index 9efa7d5e..00000000
--- a/source/kde/patch/kde-workspace/kde-workspace.panel-layout.diff
+++ /dev/null
@@ -1,23 +0,0 @@
---- ./plasma/desktop/shell/data/layouts/org.kde.plasma-desktop.defaultPanel/contents/layout.js.orig 2015-08-12 02:03:15.000000000 -0500
-+++ ./plasma/desktop/shell/data/layouts/org.kde.plasma-desktop.defaultPanel/contents/layout.js 2016-06-23 17:28:48.715969102 -0500
-@@ -28,6 +28,10 @@
- panel.height = screenGeometry(panel.screen).height > 1024 ? 35 : 27
- panel.addWidget("launcher")
- panel.addWidget("org.kde.showActivityManager")
-+dolphin = panel.addWidget("quicklaunch")
-+konqbrowser = panel.addWidget("quicklaunch")
-+firefox = panel.addWidget("quicklaunch")
-+konsole = panel.addWidget("quicklaunch")
- pager = panel.addWidget("pager")
- pager.writeConfig("hideWhenSingleDesktop", "true")
- tasks = panel.addWidget("tasks")
-@@ -35,5 +39,7 @@
- panel.addWidget("digital-clock")
-
- tasks.currentConfigGroup = new Array("Launchers")
--tasks.writeConfig("browser", "preferred://browser, , , ")
--tasks.writeConfig("filemanager", "preferred://filemanager, , , ")
-+dolphin.writeConfig("iconUrls","file:////usr/share/applications/kde4/dolphin.desktop")
-+konqbrowser.writeConfig("iconUrls","file:////usr/share/applications/kde4/konqbrowser.desktop")
-+firefox.writeConfig("iconUrls","file:///usr/share/applications/mozilla-firefox.desktop")
-+konsole.writeConfig("iconUrls","file:///usr/share/applications/kde4/konsole.desktop")
diff --git a/source/kde/patch/kdeartwork.patch b/source/kde/patch/kdeartwork.patch
deleted file mode 100644
index c5ed525d..00000000
--- a/source/kde/patch/kdeartwork.patch
+++ /dev/null
@@ -1,3 +0,0 @@
-# Fix build:
-zcat $CWD/patch/kdeartwork/kdeartwork.cmake.include.checkincludefiles.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
diff --git a/source/kde/patch/kdeartwork/kdeartwork.cmake.include.checkincludefiles.diff b/source/kde/patch/kdeartwork/kdeartwork.cmake.include.checkincludefiles.diff
deleted file mode 100644
index c265f5f0..00000000
--- a/source/kde/patch/kdeartwork/kdeartwork.cmake.include.checkincludefiles.diff
+++ /dev/null
@@ -1,7 +0,0 @@
---- ./kscreensaver/xsavers/CMakeLists.txt.orig 2010-03-05 12:35:01.000000000 -0600
-+++ ./kscreensaver/xsavers/CMakeLists.txt 2018-01-30 13:59:36.413760135 -0600
-@@ -1,3 +1,4 @@
-+include(CheckIncludeFiles)
- check_include_files(memory.h HAVE_MEMORY_H)
- configure_file (config-xsavers.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-xsavers.h )
-
diff --git a/source/kde/patch/kdeconnect-kde.patch b/source/kde/patch/kdeconnect-kde.patch
deleted file mode 100644
index a08b5aa0..00000000
--- a/source/kde/patch/kdeconnect-kde.patch
+++ /dev/null
@@ -1,2 +0,0 @@
-zcat $CWD/patch/kdeconnect-kde/kdeconnect-kde.openssh7.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
diff --git a/source/kde/patch/kdeconnect-kde/kdeconnect-kde.openssh7.diff b/source/kde/patch/kdeconnect-kde/kdeconnect-kde.openssh7.diff
deleted file mode 100644
index 1189c2e5..00000000
--- a/source/kde/patch/kdeconnect-kde/kdeconnect-kde.openssh7.diff
+++ /dev/null
@@ -1,21 +0,0 @@
---- ./plugins/sftp/mounter.cpp.orig 2015-02-03 20:53:33.000000000 -0600
-+++ ./plugins/sftp/mounter.cpp 2015-11-19 17:22:51.795962646 -0600
-@@ -136,7 +136,8 @@
- << "-f"
- << "-o" << "IdentityFile=" + m_sftp->device()->privateKeyPath()
- << "-o" << "StrictHostKeyChecking=no" //Do not ask for confirmation because it is not a known host
-- << "-o" << "UserKnownHostsFile=/dev/null"; //Prevent storing as a known host
-+ << "-o" << "UserKnownHostsFile=/dev/null" //Prevent storing as a known host
-+ << "-o" << "HostKeyAlgorithms=+ssh-dss"; //https://bugs.kde.org/show_bug.cgi?id=351725
-
- m_proc->setProgram(program, arguments);
-
-@@ -146,7 +147,7 @@
-
- cleanMountPoint();
-
-- kDebug(debugArea()) << "Staring process: " << m_proc->program().join(" ");
-+ kDebug(debugArea()) << "Starting process: " << m_proc->program().join(" ");
- m_proc->start();
- }
-
diff --git a/source/kde/patch/kdelibs.patch b/source/kde/patch/kdelibs.patch
deleted file mode 100644
index f102b8a3..00000000
--- a/source/kde/patch/kdelibs.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-# Slackware ships a different version of XML DTDs:
-zcat $CWD/patch/kdelibs/kdelibs.docbook.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
-# Make uPnP support depend on the environment variable SOLID_UPNP,
-# e.g. by creating an /etc/profile.d/upnp.sh file with the following contents:
-# export SOLID_UPNP=1
-zcat $CWD/patch/kdelibs/kdelibs.upnp_conditional.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
-# Revert 3 patches which (although they probably follow the FDo spec better),
-# cause incorrect icon overrides:
-zcat $CWD/patch/kdelibs/return-not-break.-copy-paste-error.patch.gz | patch -R -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-zcat $CWD/patch/kdelibs/coding-style-fixes.patch.gz | patch -R -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-zcat $CWD/patch/kdelibs/return-application-icons-properly.patch.gz | patch -R -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
-# Support OpenSSL-1.1.x:
-zcat $CWD/patch/kdelibs/0001-Make-kssl-compile-against-OpenSSL-1.1.0.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
-# Security: remove support for $(...) in config keys with [$e] marker. (CVE-2019-14744)
-zcat $CWD/patch/kdelibs/kdelibs.2c3762feddf7e66cf6b64d9058f625a715694a00.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
-# Support TLS v1.1 and TLS v1.2:
-zcat $CWD/patch/kdelibs/kde4libs-4.14.26.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
diff --git a/source/kde/patch/kdelibs/0001-Make-kssl-compile-against-OpenSSL-1.1.0.patch b/source/kde/patch/kdelibs/0001-Make-kssl-compile-against-OpenSSL-1.1.0.patch
deleted file mode 100644
index 69474edd..00000000
--- a/source/kde/patch/kdelibs/0001-Make-kssl-compile-against-OpenSSL-1.1.0.patch
+++ /dev/null
@@ -1,1000 +0,0 @@
-From a015996bb55bbd63d94b227a2c82d0d97cd86ae8 Mon Sep 17 00:00:00 2001
-From: Wolfgang Bauer <wbauer@tmo.at>
-Date: Wed, 25 Oct 2017 07:49:32 +0200
-Subject: [PATCH] Make kssl compile against OpenSSL 1.1.0
-
-OpenSSL 1.1.0 contains some source-incompatible changes, most notably
-making most of the structures opaque and introducing new getter/setter
-functions to modify the structures. This patch adds some of the newly
-introduced functions to the KOpenSSL class and modifies the code to
-call them. The implementation of those newly introduced methods
-contains both OpenSSL < 1.1 compatible code (direct structure member
-access) and calls to real functions resolved from OpenSSL>= 1.1
-library. Which implementation is used is decided at compile time. Some
-of the existing methods were renamed to match the OpenSSL 1.1 naming
-and to avoid conflicts with backward-compatibility names provided by
-OpenSSL 1.1.
-
-KSSLCertificate::toNetscape() returns empty result when built against
-OpenSSL 1.1 since I wasn't able to find a proper equivalent in OpenSSL
-1.1 API (and there does not seem to be any).
-
-(Backport of commit 9a990c69c606126bcd60cd7718462aec2a92460d from
-kdelibs4support)
----
- kio/kssl/kopenssl.cpp | 250 ++++++++++++++++++++++++++++++++++++++-----
- kio/kssl/kopenssl.h | 80 ++++++++++++--
- kio/kssl/kssl.cpp | 4 -
- kio/kssl/ksslcallback.c | 6 +-
- kio/kssl/ksslcertchain.cpp | 53 +++------
- kio/kssl/ksslcertificate.cpp | 68 +++++++-----
- 6 files changed, 351 insertions(+), 110 deletions(-)
-
-diff --git a/kio/kssl/kopenssl.cpp b/kio/kssl/kopenssl.cpp
-index e3ca535b25..8f8b921159 100644
---- a/kio/kssl/kopenssl.cpp
-+++ b/kio/kssl/kopenssl.cpp
-@@ -75,18 +75,26 @@ static void (*K_X509_STORE_CTX_free) (X509_STORE_CTX *) = 0L;
- static int (*K_X509_verify_cert) (X509_STORE_CTX *) = 0L;
- static X509_STORE_CTX *(*K_X509_STORE_CTX_new) (void) = 0L;
- static void (*K_X509_STORE_free) (X509_STORE *) = 0L;
-+static void (*K_X509_STORE_set_verify_cb)(X509_STORE *, int (*)(int, X509_STORE_CTX *)) = 0L;
- static X509_STORE *(*K_X509_STORE_new) (void) = 0L;
- static void (*K_X509_free) (X509 *) = 0L;
- static char *(*K_X509_NAME_oneline) (X509_NAME *,char *,int) = 0L;
- static X509_NAME *(*K_X509_get_subject_name) (X509 *) = 0L;
- static X509_NAME *(*K_X509_get_issuer_name) (X509 *) = 0L;
-+static void (*K_X509_get0_signature)(const ASN1_BIT_STRING **psig, const X509_ALGOR **palg, const X509 *x) = 0L;
- static X509_LOOKUP *(*K_X509_STORE_add_lookup) (X509_STORE *, X509_LOOKUP_METHOD *) = 0L;
- static X509_LOOKUP_METHOD *(*K_X509_LOOKUP_file)(void) = 0L;
- static void (*K_X509_LOOKUP_free)(X509_LOOKUP *) = 0L;
- static int (*K_X509_LOOKUP_ctrl)(X509_LOOKUP *, int, const char *, long, char **) = 0L;
- static void (*K_X509_STORE_CTX_init)(X509_STORE_CTX *, X509_STORE *, X509 *, STACK_OF(X509) *) = 0L;
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- static void (*K_CRYPTO_free) (void *) = 0L;
-+#else
-+static void (*K_CRYPTO_free)(void *, const char *, int) = 0L;
-+#endif
- static X509* (*K_X509_dup) (X509 *) = 0L;
-+static ASN1_TIME *(*K_X509_getm_notBefore)(const X509 *) = 0L;
-+static ASN1_TIME *(*K_X509_getm_notAfter)(const X509 *) = 0L;
- static BIO_METHOD *(*K_BIO_s_mem) (void) = 0L;
- static BIO* (*K_BIO_new) (BIO_METHOD *) = 0L;
- static BIO* (*K_BIO_new_fp) (FILE *, int) = 0L;
-@@ -118,13 +126,16 @@ static int (*K_SSL_get_error) (SSL*, int) = 0L;
- static STACK_OF(X509)* (*K_SSL_get_peer_cert_chain) (SSL*) = 0L;
- static void (*K_X509_STORE_CTX_set_chain) (X509_STORE_CTX *, STACK_OF(X509)*) = 0L;
- static void (*K_X509_STORE_CTX_set_purpose) (X509_STORE_CTX *, int) = 0L;
--static void (*K_sk_free) (STACK*) = 0L;
--static int (*K_sk_num) (STACK*) = 0L;
--static char* (*K_sk_pop) (STACK*) = 0L;
--static char* (*K_sk_value) (STACK*, int) = 0L;
--static STACK* (*K_sk_new) (int (*)()) = 0L;
--static int (*K_sk_push) (STACK*, char*) = 0L;
--static STACK* (*K_sk_dup) (STACK *) = 0L;
-+static X509 *(*K_X509_STORE_CTX_get_current_cert)(X509_STORE_CTX *) = 0L;
-+static void (*K_X509_STORE_CTX_set_error)(X509_STORE_CTX *, int) = 0L;
-+static int (*K_X509_STORE_CTX_get_error)(X509_STORE_CTX *) = 0L;
-+static void (*K_OPENSSL_sk_free)(STACK *) = 0L;
-+static int (*K_OPENSSL_sk_num)(STACK *) = 0L;
-+static char *(*K_OPENSSL_sk_pop)(STACK *) = 0L;
-+static char *(*K_OPENSSL_sk_value)(STACK *, int) = 0L;
-+static STACK *(*K_OPENSSL_sk_new)(int (*)()) = 0L;
-+static int (*K_OPENSSL_sk_push)(STACK *, char *) = 0L;
-+static STACK *(*K_OPENSSL_sk_dup)(STACK *) = 0L;
- static char * (*K_i2s_ASN1_INTEGER) (X509V3_EXT_METHOD *, ASN1_INTEGER *) =0L;
- static ASN1_INTEGER * (*K_X509_get_serialNumber) (X509 *) = 0L;
- static EVP_PKEY *(*K_X509_get_pubkey)(X509 *) = 0L;
-@@ -164,6 +175,12 @@ static int (*K_X509_PURPOSE_get_id)(X509_PURPOSE *) = 0L;
- static int (*K_X509_check_purpose)(X509*,int,int) = 0L;
- static X509_PURPOSE* (*K_X509_PURPOSE_get0)(int) = 0L;
- static int (*K_EVP_PKEY_assign)(EVP_PKEY*, int, char*) = 0L;
-+static int (*K_EVP_PKEY_base_id)(EVP_PKEY *) = 0L;
-+static RSA *(*K_EVP_PKEY_get0_RSA)(EVP_PKEY *) = 0L;
-+static void (*K_RSA_get0_key)(RSA *, const BIGNUM **, const BIGNUM **, const BIGNUM **) = 0L;
-+static DSA *(*K_EVP_PKEY_get0_DSA)(EVP_PKEY *) = 0L;
-+static void (*K_DSA_get0_pqg)(DSA *, const BIGNUM **, const BIGNUM **, const BIGNUM **) = 0L;
-+static void (*K_DSA_get0_key)(DSA *, const BIGNUM **, const BIGNUM **) = 0L;
- static int (*K_X509_REQ_set_pubkey)(X509_REQ*, EVP_PKEY*) = 0L;
- static RSA *(*K_RSA_generate_key)(int, unsigned long, void (*)(int,int,void *), void *) = 0L;
- static int (*K_i2d_X509_REQ_fp)(FILE*, X509_REQ*) = 0L;
-@@ -410,7 +427,11 @@ KOpenSSLProxy::KOpenSSLProxy()
- K_RAND_load_file = (int (*)(const char *, long)) d->cryptoLib->resolveFunction("RAND_load_file");
- K_RAND_file_name = (const char* (*)(char *, size_t)) d->cryptoLib->resolveFunction("RAND_file_name");
- K_RAND_write_file = (int (*)(const char *)) d->cryptoLib->resolveFunction("RAND_write_file");
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- K_CRYPTO_free = (void (*) (void *)) d->cryptoLib->resolveFunction("CRYPTO_free");
-+#else
-+ K_CRYPTO_free = (void (*)(void *, const char *, int)) d->cryptoLib->resolveFunction("CRYPTO_free");
-+#endif
- K_d2i_X509 = (X509 * (*)(X509 **,unsigned char **,long)) d->cryptoLib->resolveFunction("d2i_X509");
- K_i2d_X509 = (int (*)(X509 *,unsigned char **)) d->cryptoLib->resolveFunction("i2d_X509");
- K_X509_cmp = (int (*)(X509 *, X509 *)) d->cryptoLib->resolveFunction("X509_cmp");
-@@ -419,15 +440,19 @@ KOpenSSLProxy::KOpenSSLProxy()
- K_X509_verify_cert = (int (*) (X509_STORE_CTX *)) d->cryptoLib->resolveFunction("X509_verify_cert");
- K_X509_STORE_new = (X509_STORE * (*) (void)) d->cryptoLib->resolveFunction("X509_STORE_new");
- K_X509_STORE_free = (void (*) (X509_STORE *)) d->cryptoLib->resolveFunction("X509_STORE_free");
-+ K_X509_STORE_set_verify_cb = (void (*)(X509_STORE *, int (*)(int, X509_STORE_CTX *))) d->cryptoLib->resolveFunction("X509_STORE_set_verify_cb");
- K_X509_NAME_oneline = (char * (*) (X509_NAME *,char *,int)) d->cryptoLib->resolveFunction("X509_NAME_oneline");
- K_X509_get_subject_name = (X509_NAME * (*) (X509 *)) d->cryptoLib->resolveFunction("X509_get_subject_name");
- K_X509_get_issuer_name = (X509_NAME * (*) (X509 *)) d->cryptoLib->resolveFunction("X509_get_issuer_name");
-+ K_X509_get0_signature = (void (*)(const ASN1_BIT_STRING **, const X509_ALGOR **, const X509 *)) d->cryptoLib->resolveFunction("X509_get0_signature");
- K_X509_STORE_add_lookup = (X509_LOOKUP *(*) (X509_STORE *, X509_LOOKUP_METHOD *)) d->cryptoLib->resolveFunction("X509_STORE_add_lookup");
- K_X509_LOOKUP_file = (X509_LOOKUP_METHOD *(*)(void)) d->cryptoLib->resolveFunction("X509_LOOKUP_file");
- K_X509_LOOKUP_free = (void (*)(X509_LOOKUP *)) d->cryptoLib->resolveFunction("X509_LOOKUP_free");
- K_X509_LOOKUP_ctrl = (int (*)(X509_LOOKUP *, int, const char *, long, char **)) d->cryptoLib->resolveFunction("X509_LOOKUP_ctrl");
- K_X509_STORE_CTX_init = (void (*)(X509_STORE_CTX *, X509_STORE *, X509 *, STACK_OF(X509) *)) d->cryptoLib->resolveFunction("X509_STORE_CTX_init");
- K_X509_dup = (X509* (*)(X509*)) d->cryptoLib->resolveFunction("X509_dup");
-+ K_X509_getm_notBefore = (ASN1_TIME *(*)(const X509 *)) d->cryptoLib->resolveFunction("X509_getm_notBefore");
-+ K_X509_getm_notAfter = (ASN1_TIME *(*)(const X509 *)) d->cryptoLib->resolveFunction("X509_getm_notAfter");
- K_BIO_s_mem = (BIO_METHOD *(*) (void)) d->cryptoLib->resolveFunction("BIO_s_mem");
- K_BIO_new = (BIO* (*)(BIO_METHOD *)) d->cryptoLib->resolveFunction("BIO_new");
- K_BIO_new_fp = (BIO* (*)(FILE*, int)) d->cryptoLib->resolveFunction("BIO_new_fp");
-@@ -454,13 +479,26 @@ KOpenSSLProxy::KOpenSSLProxy()
- K_X509_REQ_new = (X509_REQ* (*)()) d->cryptoLib->resolveFunction("X509_REQ_new");
- K_X509_STORE_CTX_set_chain = (void (*)(X509_STORE_CTX *, STACK_OF(X509)*)) d->cryptoLib->resolveFunction("X509_STORE_CTX_set_chain");
- K_X509_STORE_CTX_set_purpose = (void (*)(X509_STORE_CTX *, int)) d->cryptoLib->resolveFunction("X509_STORE_CTX_set_purpose");
-- K_sk_free = (void (*) (STACK *)) d->cryptoLib->resolveFunction("sk_free");
-- K_sk_num = (int (*) (STACK *)) d->cryptoLib->resolveFunction("sk_num");
-- K_sk_pop = (char* (*) (STACK *)) d->cryptoLib->resolveFunction("sk_pop");
-- K_sk_value = (char* (*) (STACK *, int)) d->cryptoLib->resolveFunction("sk_value");
-- K_sk_new = (STACK* (*) (int (*)())) d->cryptoLib->resolveFunction("sk_new");
-- K_sk_push = (int (*) (STACK*, char*)) d->cryptoLib->resolveFunction("sk_push");
-- K_sk_dup = (STACK* (*) (STACK *)) d->cryptoLib->resolveFunction("sk_dup");
-+ K_X509_STORE_CTX_get_current_cert = (X509 * (*)(X509_STORE_CTX *)) d->cryptoLib->resolveFunction("X509_STORE_CTX_get_current_cert");
-+ K_X509_STORE_CTX_set_error = (void (*)(X509_STORE_CTX *, int)) d->cryptoLib->resolveFunction("X509_STORE_CTX_set_error");
-+ K_X509_STORE_CTX_get_error = (int (*)(X509_STORE_CTX *)) d->cryptoLib->resolveFunction("X509_STORE_CTX_get_error");
-+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
-+ K_OPENSSL_sk_free = (void (*)(STACK *)) d->cryptoLib->resolveFunction("OPENSSL_sk_free");
-+ K_OPENSSL_sk_num = (int (*)(STACK *)) d->cryptoLib->resolveFunction("OPENSSL_sk_num");
-+ K_OPENSSL_sk_pop = (char *(*)(STACK *)) d->cryptoLib->resolveFunction("OPENSSL_sk_pop");
-+ K_OPENSSL_sk_value = (char *(*)(STACK *, int)) d->cryptoLib->resolveFunction("OPENSSL_sk_value");
-+ K_OPENSSL_sk_new = (STACK * (*)(int (*)())) d->cryptoLib->resolveFunction("OPENSSL_sk_new");
-+ K_OPENSSL_sk_push = (int (*)(STACK *, char *)) d->cryptoLib->resolveFunction("OPENSSL_sk_push");
-+ K_OPENSSL_sk_dup = (STACK * (*)(STACK *)) d->cryptoLib->resolveFunction("OPENSSL_sk_dup");
-+#else
-+ K_OPENSSL_sk_free = (void (*)(STACK *)) d->cryptoLib->resolveFunction("sk_free");
-+ K_OPENSSL_sk_num = (int (*)(STACK *)) d->cryptoLib->resolveFunction("sk_num");
-+ K_OPENSSL_sk_pop = (char *(*)(STACK *)) d->cryptoLib->resolveFunction("sk_pop");
-+ K_OPENSSL_sk_value = (char *(*)(STACK *, int)) d->cryptoLib->resolveFunction("sk_value");
-+ K_OPENSSL_sk_new = (STACK * (*)(int (*)())) d->cryptoLib->resolveFunction("sk_new");
-+ K_OPENSSL_sk_push = (int (*)(STACK *, char *)) d->cryptoLib->resolveFunction("sk_push");
-+ K_OPENSSL_sk_dup = (STACK * (*)(STACK *)) d->cryptoLib->resolveFunction("sk_dup");
-+#endif
- K_i2s_ASN1_INTEGER = (char *(*) (X509V3_EXT_METHOD *, ASN1_INTEGER *)) d->cryptoLib->resolveFunction("i2s_ASN1_INTEGER");
- K_X509_get_serialNumber = (ASN1_INTEGER * (*) (X509 *)) d->cryptoLib->resolveFunction("X509_get_serialNumber");
- K_X509_get_pubkey = (EVP_PKEY *(*)(X509 *)) d->cryptoLib->resolveFunction("X509_get_pubkey");
-@@ -504,6 +542,12 @@ KOpenSSLProxy::KOpenSSLProxy()
- K_X509_check_purpose = (int (*)(X509*,int,int)) d->cryptoLib->resolveFunction("X509_check_purpose");
- K_X509_PURPOSE_get0 = (X509_PURPOSE *(*)(int)) d->cryptoLib->resolveFunction("X509_PURPOSE_get0");
- K_EVP_PKEY_assign = (int (*)(EVP_PKEY*, int, char*)) d->cryptoLib->resolveFunction("EVP_PKEY_assign");
-+ K_EVP_PKEY_base_id = (int (*)(EVP_PKEY *)) d->cryptoLib->resolveFunction("EVP_PKEY_base_id");
-+ K_EVP_PKEY_get0_RSA = (RSA *(*)(EVP_PKEY *)) d->cryptoLib->resolveFunction("EVP_PKEY_get0_RSA");
-+ K_RSA_get0_key = (void (*)(RSA *, const BIGNUM **, const BIGNUM **, const BIGNUM **)) d->cryptoLib->resolveFunction("ESA_get0_key");
-+ K_EVP_PKEY_get0_DSA = (DSA *(*)(EVP_PKEY *)) d->cryptoLib->resolveFunction("EVP_PKEY_get0_DSA");
-+ K_DSA_get0_pqg = (void (*)(DSA *, const BIGNUM **, const BIGNUM **, const BIGNUM **)) d->cryptoLib->resolveFunction("DSA_get0_pqg");
-+ K_DSA_get0_key = (void (*)(DSA *, const BIGNUM **, const BIGNUM **)) d->cryptoLib->resolveFunction("DSA_get0_key");
- K_X509_REQ_set_pubkey = (int (*)(X509_REQ*, EVP_PKEY*)) d->cryptoLib->resolveFunction("X509_REQ_set_pubkey");
- K_RSA_generate_key = (RSA* (*)(int, unsigned long, void (*)(int,int,void *), void *)) d->cryptoLib->resolveFunction("RSA_generate_key");
- K_i2d_X509_REQ_fp = (int (*)(FILE *, X509_REQ *)) d->cryptoLib->resolveFunction("i2d_X509_REQ_fp");
-@@ -866,6 +910,16 @@ void KOpenSSLProxy::X509_STORE_free(X509_STORE *v) {
- }
-
-
-+void KOpenSSLProxy::X509_STORE_set_verify_cb(X509_STORE *store, int (*verify_cb)(int, X509_STORE_CTX *))
-+{
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+ X509_STORE_set_verify_cb_func(store, verify_cb);
-+#else
-+ if (K_X509_STORE_set_verify_cb) (K_X509_STORE_set_verify_cb)(store, verify_cb);
-+#endif
-+}
-+
-+
- X509_STORE_CTX *KOpenSSLProxy::X509_STORE_CTX_new(void) {
- if (K_X509_STORE_CTX_new) return (K_X509_STORE_CTX_new)();
- return 0L;
-@@ -906,6 +960,17 @@ X509_NAME *KOpenSSLProxy::X509_get_issuer_name(X509 *a) {
- }
-
-
-+void KOpenSSLProxy::X509_get0_signature(const ASN1_BIT_STRING **psig, const X509_ALGOR **algor, const X509 *x)
-+{
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+ if (psig) *psig = x->signature;
-+ if (algor) *algor = x->sig_alg;
-+#else
-+ if (K_X509_get0_signature) return (K_X509_get0_signature)(psig, algor, x);
-+#endif
-+}
-+
-+
- X509_LOOKUP *KOpenSSLProxy::X509_STORE_add_lookup(X509_STORE *v, X509_LOOKUP_METHOD *m) {
- if (K_X509_STORE_add_lookup) return (K_X509_STORE_add_lookup)(v,m);
- return 0L;
-@@ -934,9 +999,16 @@ void KOpenSSLProxy::X509_STORE_CTX_init(X509_STORE_CTX *ctx, X509_STORE *store,
- }
-
-
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- void KOpenSSLProxy::CRYPTO_free(void *x) {
- if (K_CRYPTO_free) (K_CRYPTO_free)(x);
- }
-+#else
-+void KOpenSSLProxy::CRYPTO_free(void *x, const char *file, int line)
-+{
-+ if (K_CRYPTO_free) K_CRYPTO_free(x, file, line);
-+}
-+#endif
-
-
- X509 *KOpenSSLProxy::X509_dup(X509 *x509) {
-@@ -945,6 +1017,28 @@ X509 *KOpenSSLProxy::X509_dup(X509 *x509) {
- }
-
-
-+ASN1_TIME *KOpenSSLProxy::X509_getm_notBefore(const X509 *x)
-+{
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+ return X509_get_notBefore(x);
-+#else
-+ if (K_X509_getm_notBefore) return (K_X509_getm_notBefore)(x);
-+ else return 0L;
-+#endif
-+}
-+
-+
-+ASN1_TIME *KOpenSSLProxy::X509_getm_notAfter(const X509 *x)
-+{
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+ return X509_get_notAfter(x);
-+#else
-+ if (K_X509_getm_notAfter) return (K_X509_getm_notAfter)(x);
-+ else return 0L;
-+#endif
-+}
-+
-+
- BIO *KOpenSSLProxy::BIO_new(BIO_METHOD *type) {
- if (K_BIO_new) return (K_BIO_new)(type);
- else return 0L;
-@@ -1093,25 +1187,25 @@ STACK_OF(X509) *KOpenSSLProxy::SSL_get_peer_cert_chain(SSL *s) {
- }
-
-
--void KOpenSSLProxy::sk_free(STACK *s) {
-- if (K_sk_free) (K_sk_free)(s);
-+void KOpenSSLProxy::OPENSSL_sk_free(STACK *s) {
-+ if (K_OPENSSL_sk_free) (K_OPENSSL_sk_free)(s);
- }
-
-
--int KOpenSSLProxy::sk_num(STACK *s) {
-- if (K_sk_num) return (K_sk_num)(s);
-+int KOpenSSLProxy::OPENSSL_sk_num(STACK *s) {
-+ if (K_OPENSSL_sk_num) return (K_OPENSSL_sk_num)(s);
- else return -1;
- }
-
-
--char *KOpenSSLProxy::sk_pop(STACK *s) {
-- if (K_sk_pop) return (K_sk_pop)(s);
-+char *KOpenSSLProxy::OPENSSL_sk_pop(STACK *s) {
-+ if (K_OPENSSL_sk_pop) return (K_OPENSSL_sk_pop)(s);
- else return 0L;
- }
-
-
--char *KOpenSSLProxy::sk_value(STACK *s, int n) {
-- if (K_sk_value) return (K_sk_value)(s, n);
-+char *KOpenSSLProxy::OPENSSL_sk_value(STACK *s, int n) {
-+ if (K_OPENSSL_sk_value) return (K_OPENSSL_sk_value)(s, n);
- else return 0L;
- }
-
-@@ -1125,20 +1219,52 @@ void KOpenSSLProxy::X509_STORE_CTX_set_purpose(X509_STORE_CTX *v, int purpose) {
- }
-
-
--STACK* KOpenSSLProxy::sk_dup(STACK *s) {
-- if (K_sk_dup) return (K_sk_dup)(s);
-+X509 *KOpenSSLProxy::X509_STORE_CTX_get_current_cert(X509_STORE_CTX *v)
-+{
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+ return v->current_cert;
-+#else
-+ if (K_X509_STORE_CTX_get_current_cert) return (K_X509_STORE_CTX_get_current_cert)(v);
-+ else return 0L;
-+#endif
-+}
-+
-+
-+void KOpenSSLProxy::X509_STORE_CTX_set_error(X509_STORE_CTX *v, int error)
-+{
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+ v->error = error;
-+#else
-+ if (K_X509_STORE_CTX_set_error) (K_X509_STORE_CTX_set_error)(v, error);
-+#endif
-+}
-+
-+
-+int KOpenSSLProxy::X509_STORE_CTX_get_error(X509_STORE_CTX *v)
-+{
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+ return v->error;
-+#else
-+ if (K_X509_STORE_CTX_get_error) return (K_X509_STORE_CTX_get_error)(v);
-+ else return 0;
-+#endif
-+}
-+
-+
-+STACK* KOpenSSLProxy::OPENSSL_sk_dup(STACK *s) {
-+ if (K_OPENSSL_sk_dup) return (K_OPENSSL_sk_dup)(s);
- else return 0L;
- }
-
-
--STACK* KOpenSSLProxy::sk_new(int (*cmp)()) {
-- if (K_sk_new) return (K_sk_new)(cmp);
-+STACK* KOpenSSLProxy::OPENSSL_sk_new(int (*cmp)()) {
-+ if (K_OPENSSL_sk_new) return (K_OPENSSL_sk_new)(cmp);
- else return 0L;
- }
-
-
--int KOpenSSLProxy::sk_push(STACK* s, char* d) {
-- if (K_sk_push) return (K_sk_push)(s,d);
-+int KOpenSSLProxy::OPENSSL_sk_push(STACK* s, char* d) {
-+ if (K_OPENSSL_sk_push) return (K_OPENSSL_sk_push)(s,d);
- else return -1;
- }
-
-@@ -1423,6 +1549,74 @@ int KOpenSSLProxy::EVP_PKEY_assign(EVP_PKEY *pkey, int type, char *key) {
- else return -1;
- }
-
-+
-+int KOpenSSLProxy::EVP_PKEY_base_id(EVP_PKEY *pkey)
-+{
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+ return pkey->type;
-+#else
-+ if (K_EVP_PKEY_base_id) return (K_EVP_PKEY_base_id)(pkey);
-+ else return 0;
-+#endif
-+}
-+
-+
-+RSA *KOpenSSLProxy::EVP_PKEY_get0_RSA(EVP_PKEY *pkey)
-+{
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+ return pkey->pkey.rsa;
-+#else
-+ if (K_EVP_PKEY_get0_RSA) return (K_EVP_PKEY_get0_RSA)(pkey);
-+ else return 0L;
-+#endif
-+}
-+
-+
-+void KOpenSSLProxy::RSA_get0_key(RSA *rsa, const BIGNUM **n, const BIGNUM **e, const BIGNUM **d)
-+{
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+ if (n) *n = rsa->n;
-+ if (e) *e = rsa->e;
-+ if (d) *d = rsa->d;
-+#else
-+ if (K_RSA_get0_key) (K_RSA_get0_key)(rsa, n, e, d);
-+#endif
-+}
-+
-+
-+DSA *KOpenSSLProxy::EVP_PKEY_get0_DSA(EVP_PKEY *pkey)
-+{
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+ return pkey->pkey.dsa;
-+#else
-+ if (K_EVP_PKEY_get0_DSA) return (K_EVP_PKEY_get0_DSA)(pkey);
-+ else return 0L;
-+#endif
-+}
-+
-+
-+void KOpenSSLProxy::DSA_get0_pqg(DSA *dsa, const BIGNUM **p, const BIGNUM **q, const BIGNUM **g)
-+{
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+ if (p) *p = dsa->p;
-+ if (q) *q = dsa->q;
-+ if (g) *g = dsa->g;
-+#else
-+ if (K_DSA_get0_pqg) (K_DSA_get0_pqg)(dsa, p, q, g);
-+#endif
-+}
-+
-+
-+void KOpenSSLProxy::DSA_get0_key(DSA *dsa, const BIGNUM **pub_key, const BIGNUM **priv_key)
-+{
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+ if (pub_key) *pub_key = dsa->pub_key;
-+ if (priv_key) *priv_key = dsa->priv_key;
-+#else
-+ if (K_DSA_get0_key) (K_DSA_get0_key)(dsa, pub_key, priv_key);
-+#endif
-+}
-+
-
- int KOpenSSLProxy::X509_REQ_set_pubkey(X509_REQ *x, EVP_PKEY *pkey) {
- if (K_X509_REQ_set_pubkey) return (K_X509_REQ_set_pubkey)(x, pkey);
-diff --git a/kio/kssl/kopenssl.h b/kio/kssl/kopenssl.h
-index ab05486336..ae3398fbef 100644
---- a/kio/kssl/kopenssl.h
-+++ b/kio/kssl/kopenssl.h
-@@ -297,6 +297,18 @@ public:
-
-
- /*
-+ * X509_getm_notBefore - get validity start
-+ */
-+ ASN1_TIME *X509_getm_notBefore(const X509 *x);
-+
-+
-+ /*
-+ * X509_getm_notAfter - get validity end
-+ */
-+ ASN1_TIME *X509_getm_notAfter(const X509 *x);
-+
-+
-+ /*
- * X509_STORE_CTX_new - create an X509 store context
- */
- X509_STORE_CTX *X509_STORE_CTX_new(void);
-@@ -313,11 +325,31 @@ public:
- */
- void X509_STORE_CTX_set_chain(X509_STORE_CTX *v, STACK_OF(X509)* x);
-
-+
- /*
- * X509_STORE_CTX_set_purpose - set the purpose of the certificate
- */
- void X509_STORE_CTX_set_purpose(X509_STORE_CTX *v, int purpose);
-
-+
-+ /*
-+ * X509_STORE_CTX_get_current_cert - get the current certificate
-+ */
-+ X509 *X509_STORE_CTX_get_current_cert(X509_STORE_CTX *v);
-+
-+
-+ /*
-+ * X509_STORE_CTX_set_error - set certificate error
-+ */
-+ void X509_STORE_CTX_set_error(X509_STORE_CTX *v, int error);
-+
-+
-+ /*
-+ * X509_STORE_CTX_get_error - get certificate error
-+ */
-+ int X509_STORE_CTX_get_error(X509_STORE_CTX *v);
-+
-+
- /*
- * X509_verify_cert - verify the certificate
- */
-@@ -337,6 +369,12 @@ public:
-
-
- /*
-+ * X509_STORE_set_verify_cb - set verify callback
-+ */
-+ void X509_STORE_set_verify_cb(X509_STORE *v, int (*verify_cb)(int, X509_STORE_CTX *));
-+
-+
-+ /*
- * X509_free - free up an X509
- */
- void X509_free(X509 *v);
-@@ -361,6 +399,12 @@ public:
-
-
- /*
-+ * X509_get0_signature - return X509 signature and signature algorithm
-+ */
-+ void X509_get0_signature(const ASN1_BIT_STRING **psig, const X509_ALGOR **palg, const X509 *x);
-+
-+
-+ /*
- * X509_STORE_add_lookup - add a lookup file/method to an X509 store
- */
- X509_LOOKUP *X509_STORE_add_lookup(X509_STORE *v, X509_LOOKUP_METHOD *m);
-@@ -393,7 +437,11 @@ public:
- /*
- * CRYPTO_free - free up an internally allocated object
- */
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- void CRYPTO_free(void *x);
-+#else
-+ void CRYPTO_free(void *x, const char *file, int line);
-+#endif
-
- /*
- * BIO_new - create new BIO
-@@ -505,53 +553,53 @@ public:
- /*
- * Pop off the stack
- */
-- char *sk_pop(STACK *s);
-+ char *OPENSSL_sk_pop(STACK *s);
-
-
- /*
- * Free the stack
- */
-- void sk_free(STACK *s);
-+ void OPENSSL_sk_free(STACK *s);
-
- #if OPENSSL_VERSION_NUMBER >= 0x10000000L
-- void sk_free(void *s) { return sk_free(reinterpret_cast<STACK*>(s)); }
-+ void OPENSSL_sk_free(void *s) { return OPENSSL_sk_free(reinterpret_cast<STACK*>(s)); }
- #endif
-
- /*
- * Number of elements in the stack
- */
-- int sk_num(STACK *s);
-+ int OPENSSL_sk_num(STACK *s);
-
-
- /*
- * Value of element n in the stack
- */
-- char *sk_value(STACK *s, int n);
-+ char *OPENSSL_sk_value(STACK *s, int n);
-
- #if OPENSSL_VERSION_NUMBER >= 0x10000000L
-- char *sk_value(void *s, int n) { return sk_value(reinterpret_cast<STACK*>(s), n); }
-+ char *OPENSSL_sk_value(void *s, int n) { return OPENSSL_sk_value(reinterpret_cast<STACK*>(s), n); }
- #endif
-
- /*
- * Create a new stack
- */
-- STACK *sk_new(int (*cmp)());
-+ STACK *OPENSSL_sk_new(int (*cmp)());
-
-
- /*
- * Add an element to the stack
- */
-- int sk_push(STACK *s, char *d);
-+ int OPENSSL_sk_push(STACK *s, char *d);
-
- #if OPENSSL_VERSION_NUMBER >= 0x10000000L
-- int sk_push(void *s, void *d) { return sk_push(reinterpret_cast<STACK*>(s), reinterpret_cast<char*>(d)); }
-+ int OPENSSL_sk_push(void *s, void *d) { return OPENSSL_sk_push(reinterpret_cast<STACK*>(s), reinterpret_cast<char*>(d)); }
- #endif
-
-
- /*
- * Duplicate the stack
- */
-- STACK *sk_dup(STACK *s);
-+ STACK *OPENSSL_sk_dup(STACK *s);
-
-
- /*
-@@ -800,6 +848,18 @@ public:
-
-
- /*
-+ * Get key type
-+ */
-+ int EVP_PKEY_base_id(EVP_PKEY *pkey);
-+
-+ RSA *EVP_PKEY_get0_RSA(EVP_PKEY *pkey);
-+ void RSA_get0_key(RSA *rsa, const BIGNUM **n, const BIGNUM **e, const BIGNUM **d);
-+ DSA *EVP_PKEY_get0_DSA(EVP_PKEY *pkey);
-+ void DSA_get0_pqg(DSA *dsa, const BIGNUM **p, const BIGNUM **q, const BIGNUM **g);
-+ void DSA_get0_key(DSA *dsa, const BIGNUM **pub_key, const BIGNUM **priv_key);
-+
-+
-+ /*
- * Generate a RSA key
- */
- RSA *RSA_generate_key(int bits, unsigned long e, void
-diff --git a/kio/kssl/kssl.cpp b/kio/kssl/kssl.cpp
-index c36db55a42..faba1bb5ab 100644
---- a/kio/kssl/kssl.cpp
-+++ b/kio/kssl/kssl.cpp
-@@ -55,8 +55,6 @@
- #warning "kssl.cc needs to be ported to QSslSocket"
- #endif
-
--#define sk_dup d->kossl->sk_dup
--
- class KSSLPrivate {
- public:
- KSSLPrivate() {
-@@ -212,5 +210,3 @@ bool KSSL::doesSSLWork() {
- return m_bSSLWorks;
- }
-
--#undef sk_dup
--
-diff --git a/kio/kssl/ksslcallback.c b/kio/kssl/ksslcallback.c
-index 516b916337..38e94356e8 100644
---- a/kio/kssl/ksslcallback.c
-+++ b/kio/kssl/ksslcallback.c
-@@ -28,7 +28,7 @@ bool KSSL_X509CallBack_ca_found;
- extern "C" {
- static int X509Callback(int ok, X509_STORE_CTX *ctx) {
-
-- kDebug(7029) << "X509Callback: ok = " << ok << " error = " << ctx->error << " depth = " << ctx->error_depth;
-+ //kDebug(7029) << "X509Callback: ok = " << ok << " error = " << ctx->error << " depth = " << ctx->error_depth;
- // Here is how this works. We put "ok = 1;" in any case that we
- // don't consider to be an error. In that case, it will return OK
- // for the certificate check as long as there are no other critical
-@@ -39,14 +39,14 @@ static int X509Callback(int ok, X509_STORE_CTX *ctx) {
-
- if (KSSL_X509CallBack_ca)
- {
-- if (KOSSL::self()->X509_cmp(ctx->current_cert, KSSL_X509CallBack_ca) != 0)
-+ if (KOSSL::self()->X509_cmp(KOSSL::self()->X509_STORE_CTX_get_current_cert(ctx), KSSL_X509CallBack_ca) != 0)
- return 1; // Ignore errors for this certificate
-
- KSSL_X509CallBack_ca_found = true;
- }
-
- if (!ok) {
-- switch (ctx->error) {
-+ switch (KOSSL::self()->X509_STORE_CTX_get_error(ctx)) {
- case X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT:
- case X509_V_ERR_UNABLE_TO_GET_CRL:
- case X509_V_ERR_UNABLE_TO_DECRYPT_CERT_SIGNATURE:
-diff --git a/kio/kssl/ksslcertchain.cpp b/kio/kssl/ksslcertchain.cpp
-index 2be7995bf8..cdfab2b5ae 100644
---- a/kio/kssl/ksslcertchain.cpp
-+++ b/kio/kssl/ksslcertchain.cpp
-@@ -44,16 +44,6 @@
- #include <kdebug.h>
- #include <QtCore/QStringList>
-
--#ifdef KSSL_HAVE_SSL
--#define sk_new d->kossl->sk_new
--#define sk_push d->kossl->sk_push
--#define sk_free d->kossl->sk_free
--#define sk_value d->kossl->sk_value
--#define sk_num d->kossl->sk_num
--#define sk_dup d->kossl->sk_dup
--#define sk_pop d->kossl->sk_pop
--#endif
--
- class KSSLCertChainPrivate {
- public:
- KSSLCertChainPrivate() {
-@@ -79,11 +69,11 @@ KSSLCertChain::~KSSLCertChain() {
- STACK_OF(X509) *x = (STACK_OF(X509) *)_chain;
-
- for (;;) {
-- X509* x5 = sk_X509_pop(x);
-+ X509 *x5 = reinterpret_cast<X509*>(d->kossl->OPENSSL_sk_pop(reinterpret_cast<STACK *>(x)));
- if (!x5) break;
- d->kossl->X509_free(x5);
- }
-- sk_X509_free(x);
-+ d->kossl->OPENSSL_sk_free(reinterpret_cast<STACK *>(x));
- }
- #endif
- delete d;
-@@ -106,7 +96,7 @@ KSSLCertChain *KSSLCertChain::replicate() {
-
- int KSSLCertChain::depth() {
- #ifdef KSSL_HAVE_SSL
-- return sk_X509_num((STACK_OF(X509)*)_chain);
-+ return d->kossl->OPENSSL_sk_num(static_cast<STACK *>(_chain));
- #endif
- return 0;
- }
-@@ -123,8 +113,8 @@ QList<KSSLCertificate *> KSSLCertChain::getChain() const {
- #ifdef KSSL_HAVE_SSL
- STACK_OF(X509) *x = (STACK_OF(X509) *)_chain;
-
-- for (int i = 0; i < sk_X509_num(x); i++) {
-- X509* x5 = sk_X509_value(x, i);
-+ for (int i = 0; i < d->kossl->OPENSSL_sk_num(reinterpret_cast<STACK *>(x)); i++) {
-+ X509 *x5 = reinterpret_cast<X509*>(d->kossl->OPENSSL_sk_value(reinterpret_cast<STACK *>(x), i));
- if (!x5) continue;
- KSSLCertificate *nc = new KSSLCertificate;
- nc->setCert(d->kossl->X509_dup(x5));
-@@ -142,18 +132,18 @@ void KSSLCertChain::setChain(const QList<KSSLCertificate *>& chain) {
- STACK_OF(X509) *x = (STACK_OF(X509) *)_chain;
-
- for (;;) {
-- X509* x5 = sk_X509_pop(x);
-+ X509 *x5 = reinterpret_cast<X509*>(d->kossl->OPENSSL_sk_pop(reinterpret_cast<STACK*>(x)));
- if (!x5) break;
- d->kossl->X509_free(x5);
- }
-- sk_X509_free(x);
-- _chain = NULL;
-+ d->kossl->OPENSSL_sk_free(reinterpret_cast<STACK*>(x));
-+ _chain = NULL;
- }
-
- if (chain.isEmpty()) return;
-- _chain = (void *)sk_new(NULL);
-+ _chain = (void *)d->kossl->OPENSSL_sk_new(NULL);
- foreach (KSSLCertificate *x, chain) {
-- sk_X509_push((STACK_OF(X509)*)_chain, d->kossl->X509_dup(x->getCert()));
-+ d->kossl->OPENSSL_sk_push(static_cast<STACK*>(_chain), d->kossl->X509_dup(x->getCert()));
- }
-
- #endif
-@@ -166,23 +156,23 @@ if (_chain) {
- STACK_OF(X509) *x = (STACK_OF(X509) *)_chain;
-
- for (;;) {
-- X509* x5 = sk_X509_pop(x);
-+ X509 *x5 = reinterpret_cast<X509 *>(d->kossl->OPENSSL_sk_pop(reinterpret_cast<STACK *>(x)));
- if (!x5) break;
- d->kossl->X509_free(x5);
- }
-- sk_X509_free(x);
-+ d->kossl->OPENSSL_sk_free(reinterpret_cast<STACK *>(x));
- _chain = NULL;
- }
-
- if (!stack_of_x509) return;
-
--_chain = (void *)sk_new(NULL);
-+_chain = (void *)d->kossl->OPENSSL_sk_new(NULL);
- STACK_OF(X509) *x = (STACK_OF(X509) *)stack_of_x509;
-
-- for (int i = 0; i < sk_X509_num(x); i++) {
-- X509* x5 = sk_X509_value(x, i);
-+ for (int i = 0; i < d->kossl->OPENSSL_sk_num(reinterpret_cast<STACK *>(x)); i++) {
-+ X509 *x5 = reinterpret_cast<X509*>(d->kossl->OPENSSL_sk_value(reinterpret_cast<STACK *>(x), i));
- if (!x5) continue;
-- sk_X509_push((STACK_OF(X509)*)_chain,d->kossl->X509_dup(x5));
-+ d->kossl->OPENSSL_sk_push(reinterpret_cast<STACK *>(_chain), d->kossl->X509_dup(x5));
- }
-
- #else
-@@ -202,14 +192,3 @@ void KSSLCertChain::setCertChain(const QStringList& chain) {
- setChain(cl);
- }
-
--
--#ifdef KSSL_HAVE_SSL
--#undef sk_new
--#undef sk_push
--#undef sk_free
--#undef sk_value
--#undef sk_num
--#undef sk_dup
--#undef sk_pop
--#endif
--
-diff --git a/kio/kssl/ksslcertificate.cpp b/kio/kssl/ksslcertificate.cpp
-index 0d4fbd9cdc..c93d5c5b22 100644
---- a/kio/kssl/ksslcertificate.cpp
-+++ b/kio/kssl/ksslcertificate.cpp
-@@ -200,14 +200,17 @@ QString KSSLCertificate::getSignatureText() const {
- char *s;
- int n, i;
-
-- i = d->kossl->OBJ_obj2nid(d->m_cert->sig_alg->algorithm);
-+ const X509_ALGOR *algor;
-+ const ASN1_BIT_STRING *sig;
-+ d->kossl->X509_get0_signature(&sig, &algor, d->m_cert);
-+ i = d->kossl->OBJ_obj2nid(algor->algorithm);
- rc = i18n("Signature Algorithm: ");
- rc += (i == NID_undef)?i18n("Unknown"):QString(d->kossl->OBJ_nid2ln(i));
-
- rc += '\n';
- rc += i18n("Signature Contents:");
-- n = d->m_cert->signature->length;
-- s = (char *)d->m_cert->signature->data;
-+ n = sig->length;
-+ s = (char *)sig->data;
- for (i = 0; i < n; ++i) {
- if (i%20 != 0) {
- rc += ':';
-@@ -233,9 +236,10 @@ void KSSLCertificate::getEmails(QStringList &to) const {
- }
-
- STACK *s = d->kossl->X509_get1_email(d->m_cert);
-+ const int size = d->kossl->OPENSSL_sk_num(s);
- if (s) {
-- for(int n=0; n < s->num; n++) {
-- to.append(d->kossl->sk_value(s,n));
-+ for(int n=0; n < size; n++) {
-+ to.append(d->kossl->OPENSSL_sk_value(s,n));
- }
- d->kossl->X509_email_free(s);
- }
-@@ -317,13 +321,13 @@ QString rc = "";
- EVP_PKEY *pkey = d->kossl->X509_get_pubkey(d->m_cert);
- if (pkey) {
- #ifndef NO_RSA
-- if (pkey->type == EVP_PKEY_RSA) {
-+ if (d->kossl->EVP_PKEY_base_id(pkey) == EVP_PKEY_RSA) {
- rc = "RSA";
- }
- else
- #endif
- #ifndef NO_DSA
-- if (pkey->type == EVP_PKEY_DSA) {
-+ if (d->kossl->EVP_PKEY_base_id(pkey) == EVP_PKEY_DSA) {
- rc = "DSA";
- }
- else
-@@ -347,8 +351,10 @@ char *x = NULL;
- if (pkey) {
- rc = i18nc("Unknown", "Unknown key algorithm");
- #ifndef NO_RSA
-- if (pkey->type == EVP_PKEY_RSA) {
-- x = d->kossl->BN_bn2hex(pkey->pkey.rsa->n);
-+ if (d->kossl->EVP_PKEY_base_id(pkey) == EVP_PKEY_RSA) {
-+ const BIGNUM *n, *e;
-+ d->kossl->RSA_get0_key(d->kossl->EVP_PKEY_get0_RSA(pkey), &n, &e, NULL);
-+ x = d->kossl->BN_bn2hex(n);
- rc = i18n("Key type: RSA (%1 bit)", strlen(x)*4) + '\n';
-
- rc += i18n("Modulus: ");
-@@ -364,15 +370,18 @@ char *x = NULL;
- rc += '\n';
- d->kossl->OPENSSL_free(x);
-
-- x = d->kossl->BN_bn2hex(pkey->pkey.rsa->e);
-+ x = d->kossl->BN_bn2hex(e);
- rc += i18n("Exponent: 0x") + QLatin1String(x) +
- QLatin1String("\n");
- d->kossl->OPENSSL_free(x);
- }
- #endif
- #ifndef NO_DSA
-- if (pkey->type == EVP_PKEY_DSA) {
-- x = d->kossl->BN_bn2hex(pkey->pkey.dsa->p);
-+ if (d->kossl->EVP_PKEY_base_id(pkey) == EVP_PKEY_DSA) {
-+ DSA *dsa = d->kossl->EVP_PKEY_get0_DSA(pkey);
-+ const BIGNUM *p, *q, *g;
-+ d->kossl->DSA_get0_pqg(dsa, &p, &q, &g);
-+ x = d->kossl->BN_bn2hex(p);
- // hack - this may not be always accurate
- rc = i18n("Key type: DSA (%1 bit)", strlen(x)*4) + '\n';
-
-@@ -389,7 +398,7 @@ char *x = NULL;
- rc += '\n';
- d->kossl->OPENSSL_free(x);
-
-- x = d->kossl->BN_bn2hex(pkey->pkey.dsa->q);
-+ x = d->kossl->BN_bn2hex(q);
- rc += i18n("160 bit prime factor: ");
- for (unsigned int i = 0; i < strlen(x); i++) {
- if (i%40 != 0 && i%2 == 0) {
-@@ -403,7 +412,7 @@ char *x = NULL;
- rc += '\n';
- d->kossl->OPENSSL_free(x);
-
-- x = d->kossl->BN_bn2hex(pkey->pkey.dsa->g);
-+ x = d->kossl->BN_bn2hex(g);
- rc += QString("g: ");
- for (unsigned int i = 0; i < strlen(x); i++) {
- if (i%40 != 0 && i%2 == 0) {
-@@ -417,7 +426,9 @@ char *x = NULL;
- rc += '\n';
- d->kossl->OPENSSL_free(x);
-
-- x = d->kossl->BN_bn2hex(pkey->pkey.dsa->pub_key);
-+ const BIGNUM *pub_key;
-+ d->kossl->DSA_get0_key(dsa, &pub_key, NULL);
-+ x = d->kossl->BN_bn2hex(pub_key);
- rc += i18n("Public key: ");
- for (unsigned int i = 0; i < strlen(x); i++) {
- if (i%40 != 0 && i%2 == 0) {
-@@ -682,7 +693,7 @@ KSSLCertificate::KSSLValidationList KSSLCertificate::validateVerbose(KSSLCertifi
- return errors;
- }
-
-- X509_STORE_set_verify_cb_func(certStore, X509Callback);
-+ d->kossl->X509_STORE_set_verify_cb(certStore, X509Callback);
-
- certLookup = d->kossl->X509_STORE_add_lookup(certStore, d->kossl->X509_LOOKUP_file());
- if (!certLookup) {
-@@ -724,9 +735,9 @@ KSSLCertificate::KSSLValidationList KSSLCertificate::validateVerbose(KSSLCertifi
- KSSL_X509CallBack_ca = ca ? ca->d->m_cert : 0;
- KSSL_X509CallBack_ca_found = false;
-
-- certStoreCTX->error = X509_V_OK;
-+ d->kossl->X509_STORE_CTX_set_error(certStoreCTX, X509_V_OK);
- rc = d->kossl->X509_verify_cert(certStoreCTX);
-- int errcode = certStoreCTX->error;
-+ int errcode = d->kossl->X509_STORE_CTX_get_error(certStoreCTX);
- if (ca && !KSSL_X509CallBack_ca_found) {
- ksslv = KSSLCertificate::Irrelevant;
- } else {
-@@ -739,9 +750,9 @@ KSSLCertificate::KSSLValidationList KSSLCertificate::validateVerbose(KSSLCertifi
- d->kossl->X509_STORE_CTX_set_purpose(certStoreCTX,
- X509_PURPOSE_NS_SSL_SERVER);
-
-- certStoreCTX->error = X509_V_OK;
-+ d->kossl->X509_STORE_CTX_set_error(certStoreCTX, X509_V_OK);
- rc = d->kossl->X509_verify_cert(certStoreCTX);
-- errcode = certStoreCTX->error;
-+ errcode = d->kossl->X509_STORE_CTX_get_error(certStoreCTX);
- ksslv = processError(errcode);
- }
- d->kossl->X509_STORE_CTX_free(certStoreCTX);
-@@ -978,7 +989,7 @@ KSSLCertificate::KSSLValidation KSSLCertificate::processError(int ec) {
-
- QString KSSLCertificate::getNotBefore() const {
- #ifdef KSSL_HAVE_SSL
-- return ASN1_UTCTIME_QString(X509_get_notBefore(d->m_cert));
-+ return ASN1_UTCTIME_QString(d->kossl->X509_getm_notBefore(d->m_cert));
- #else
- return QString();
- #endif
-@@ -987,7 +998,7 @@ QString KSSLCertificate::getNotBefore() const {
-
- QString KSSLCertificate::getNotAfter() const {
- #ifdef KSSL_HAVE_SSL
-- return ASN1_UTCTIME_QString(X509_get_notAfter(d->m_cert));
-+ return ASN1_UTCTIME_QString(d->kossl->X509_getm_notAfter(d->m_cert));
- #else
- return QString();
- #endif
-@@ -996,7 +1007,7 @@ QString KSSLCertificate::getNotAfter() const {
-
- QDateTime KSSLCertificate::getQDTNotBefore() const {
- #ifdef KSSL_HAVE_SSL
-- return ASN1_UTCTIME_QDateTime(X509_get_notBefore(d->m_cert), NULL);
-+ return ASN1_UTCTIME_QDateTime(d->kossl->X509_getm_notBefore(d->m_cert), NULL);
- #else
- return QDateTime::currentDateTime();
- #endif
-@@ -1005,7 +1016,7 @@ QDateTime KSSLCertificate::getQDTNotBefore() const {
-
- QDateTime KSSLCertificate::getQDTNotAfter() const {
- #ifdef KSSL_HAVE_SSL
-- return ASN1_UTCTIME_QDateTime(X509_get_notAfter(d->m_cert), NULL);
-+ return ASN1_UTCTIME_QDateTime(d->kossl->X509_getm_notAfter(d->m_cert), NULL);
- #else
- return QDateTime::currentDateTime();
- #endif
-@@ -1210,7 +1221,8 @@ typedef struct NETSCAPE_X509_st
- // what a piece of crap this is
- QByteArray KSSLCertificate::toNetscape() {
- QByteArray qba;
--#ifdef KSSL_HAVE_SSL
-+ // no equivalent in OpenSSL 1.1.0 (?), so behave as if we had no OpenSSL at all
-+#if KSSL_HAVE_SSL && OPENSSL_VERSION_NUMBER < 0x10100000L
- NETSCAPE_X509 nx;
- ASN1_OCTET_STRING hdr;
- KTemporaryFile ktf;
-@@ -1293,10 +1305,10 @@ QStringList KSSLCertificate::subjAltNames() const {
- return rc;
- }
-
-- int cnt = d->kossl->sk_GENERAL_NAME_num(names);
-+ int cnt = d->kossl->OPENSSL_sk_num((STACK *)names);
-
- for (int i = 0; i < cnt; i++) {
-- const GENERAL_NAME *val = (const GENERAL_NAME *)d->kossl->sk_value(names, i);
-+ const GENERAL_NAME *val = (const GENERAL_NAME *)d->kossl->OPENSSL_sk_value(names, i);
- if (val->type != GEN_DNS) {
- continue;
- }
-@@ -1308,7 +1320,7 @@ QStringList KSSLCertificate::subjAltNames() const {
- rc += s;
- }
- }
-- d->kossl->sk_free(names);
-+ d->kossl->OPENSSL_sk_free(names);
- #endif
- return rc;
- }
---
-2.13.6
-
-
diff --git a/source/kde/patch/kdelibs/coding-style-fixes.patch b/source/kde/patch/kdelibs/coding-style-fixes.patch
deleted file mode 100644
index 11108f0a..00000000
--- a/source/kde/patch/kdelibs/coding-style-fixes.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-From 2173580f070e806d4715e13048c697c49ec262e2 Mon Sep 17 00:00:00 2001
-From: Aaron Seigo <aseigo@kde.org>
-Date: Thu, 21 Feb 2013 17:59:58 +0100
-Subject: [PATCH 047/111] coding style fixes
-
----
- kdeui/icons/kiconloader.cpp | 27 ++++++++++++---------------
- 1 file changed, 12 insertions(+), 15 deletions(-)
-
-diff --git a/kdeui/icons/kiconloader.cpp b/kdeui/icons/kiconloader.cpp
-index 6fed667..dba474d 100644
---- a/kdeui/icons/kiconloader.cpp
-+++ b/kdeui/icons/kiconloader.cpp
-@@ -938,32 +938,29 @@ K3Icon KIconLoaderPrivate::findMatchingIcon(const QString& name, int size) const
- }
- }
-
-- foreach (KIconThemeNode *themeNode, links)
-- {
-+ foreach (KIconThemeNode *themeNode, links) {
- QString currentName = name;
-
-- while (!currentName.isEmpty())
-- {
--
-+ while (!currentName.isEmpty()) {
- //kDebug(264) << "Looking up" << currentName;
-
--// The following code has been commented out because the Qt SVG renderer needs
--// to be improved. If you are going to change/remove some code from this part,
--// please contact me before (ereslibre@kde.org), or kde-core-devel@kde.org. (ereslibre)
-- for (int i = 0 ; i < 4 ; i++)
-- {
-+ for (int i = 0 ; i < 4 ; i++) {
- icon = themeNode->theme->iconPath(currentName + ext[i], size, KIconLoader::MatchExact);
-- if (icon.isValid())
-- return icon;
-+ if (icon.isValid()) {
-+ break;
-+ }
-
- icon = themeNode->theme->iconPath(currentName + ext[i], size, KIconLoader::MatchBest);
-- if (icon.isValid())
-- return icon;
-+ if (icon.isValid()) {
-+ break;
-+ }
- }
-+ //kDebug(264) << "Looking up" << currentName;
-
-- if (genericFallback)
-+ if (genericFallback) {
- // we already tested the base name
- break;
-+ }
-
- int rindex = currentName.lastIndexOf('-');
- if (rindex > 1) { // > 1 so that we don't split x-content or x-epoc
---
-1.8.1.4
-
-
diff --git a/source/kde/patch/kdelibs/kde4libs-4.14.26.diff b/source/kde/patch/kdelibs/kde4libs-4.14.26.diff
deleted file mode 100644
index 2bc275ac..00000000
--- a/source/kde/patch/kdelibs/kde4libs-4.14.26.diff
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/kio/kio/tcpslavebase.cpp
-+++ b/kio/kio/tcpslavebase.cpp
-@@ -499,7 +499,7 @@
- {
- if (d->usingSSL)
- return false;
-- return d->startTLSInternal(KTcpSocket::TlsV1) & ResultOk;
-+ return d->startTLSInternal(KTcpSocket::SecureProtocols) & ResultOk;
- }
-
- TCPSlaveBase::SslResult TCPSlaveBase::TcpSlaveBasePrivate::startTLSInternal (KTcpSocket::SslVersion version,
diff --git a/source/kde/patch/kdelibs/kdelibs.2c3762feddf7e66cf6b64d9058f625a715694a00.patch b/source/kde/patch/kdelibs/kdelibs.2c3762feddf7e66cf6b64d9058f625a715694a00.patch
deleted file mode 100644
index 58afcaae..00000000
--- a/source/kde/patch/kdelibs/kdelibs.2c3762feddf7e66cf6b64d9058f625a715694a00.patch
+++ /dev/null
@@ -1,112 +0,0 @@
-From 2c3762feddf7e66cf6b64d9058f625a715694a00 Mon Sep 17 00:00:00 2001
-From: Kai Uwe Broulik <kde@privat.broulik.de>
-Date: Wed, 7 Aug 2019 09:47:46 +0200
-Subject: Security: remove support for $(...) in config keys with [$e] marker.
-
-It is very unclear at this point what a valid use case for this feature
-would possibly be. The old documentation only mentions $(hostname) as
-an example, which can be done with $HOSTNAME instead.
-
-Note that $(...) is still supported in Exec lines of desktop files,
-this does not require [$e] anyway (and actually works better without it,
-otherwise the $ signs need to be doubled to obey kconfig $e escaping rules...).
-
-Thanks to Fabian Vogt for testing.
-
-(This is a backport of KDE Frameworks 5 kconfig patch to kdelibs)
-
-Differential Revision: https://phabricator.kde.org/D22989
----
- kdecore/config/kconfig.cpp | 32 +-------------------------------
- kdecore/doc/README.kiosk | 12 ------------
- kdecore/tests/kconfigtest.cpp | 6 +-----
- 3 files changed, 2 insertions(+), 48 deletions(-)
-
-diff --git a/kdecore/config/kconfig.cpp b/kdecore/config/kconfig.cpp
-index 7ea26a5..b30584b 100644
---- a/kdecore/config/kconfig.cpp
-+++ b/kdecore/config/kconfig.cpp
-@@ -160,37 +160,7 @@ QString KConfigPrivate::expandString(const QString& value)
- int nDollarPos = aValue.indexOf( QLatin1Char('$') );
- while( nDollarPos != -1 && nDollarPos+1 < aValue.length()) {
- // there is at least one $
-- if( aValue[nDollarPos+1] == QLatin1Char('(') ) {
-- int nEndPos = nDollarPos+1;
-- // the next character is not $
-- while ( (nEndPos <= aValue.length()) && (aValue[nEndPos]!=QLatin1Char(')')) )
-- nEndPos++;
-- nEndPos++;
-- QString cmd = aValue.mid( nDollarPos+2, nEndPos-nDollarPos-3 );
--
-- QString result;
-- QByteArray oldpath = qgetenv( "PATH" );
-- QByteArray newpath;
-- if (KGlobal::hasMainComponent()) {
-- newpath = QFile::encodeName(KGlobal::dirs()->resourceDirs("exe").join(QChar::fromLatin1(KPATH_SEPARATOR)));
-- if (!newpath.isEmpty() && !oldpath.isEmpty())
-- newpath += KPATH_SEPARATOR;
-- }
-- newpath += oldpath;
-- setenv( "PATH", newpath, 1/*overwrite*/ );
--// FIXME: wince does not have pipes
--#ifndef _WIN32_WCE
-- FILE *fs = popen(QFile::encodeName(cmd).data(), "r");
-- if (fs) {
-- QTextStream ts(fs, QIODevice::ReadOnly);
-- result = ts.readAll().trimmed();
-- pclose(fs);
-- }
--#endif
-- setenv( "PATH", oldpath, 1/*overwrite*/ );
-- aValue.replace( nDollarPos, nEndPos-nDollarPos, result );
-- nDollarPos += result.length();
-- } else if( aValue[nDollarPos+1] != QLatin1Char('$') ) {
-+ if( aValue[nDollarPos+1] != QLatin1Char('$') ) {
- int nEndPos = nDollarPos+1;
- // the next character is not $
- QString aVarName;
-diff --git a/kdecore/doc/README.kiosk b/kdecore/doc/README.kiosk
-index b95002d..d902c61 100644
---- a/kdecore/doc/README.kiosk
-+++ b/kdecore/doc/README.kiosk
-@@ -640,18 +640,6 @@ The following syntax is also supported:
- Name[$ei]=${USER}
-
-
--Shell Commands in KDE config files.
--===================================
--
--Since KDE-3.1 arbitrary entries in configuration files can contain shell
--commands. This way the value of a configuration entry can be determined
--dynamically at runtime. In order to use this the entry must be marked
--with [$e].
--
--Example:
--Host[$e]=$(hostname)
--
--
- KDE Kiosk Application API
- ==========================
-
-diff --git a/kdecore/tests/kconfigtest.cpp b/kdecore/tests/kconfigtest.cpp
-index 78e6ad1..37ea3c2 100644
---- a/kdecore/tests/kconfigtest.cpp
-+++ b/kdecore/tests/kconfigtest.cpp
-@@ -479,12 +479,8 @@ void KConfigTest::testPath()
- QCOMPARE(group.readPathEntry("withBraces", QString()), QString("file://" + HOMEPATH) );
- QVERIFY(group.hasKey("URL"));
- QCOMPARE(group.readEntry("URL", QString()), QString("file://" + HOMEPATH) );
--#if !defined(Q_OS_WIN32) && !defined(Q_OS_MAC)
-- // I don't know if this will work on windows
-- // This test hangs on OS X
- QVERIFY(group.hasKey("hostname"));
-- QCOMPARE(group.readEntry("hostname", QString()), QHostInfo::localHostName());
--#endif
-+ QCOMPARE(group.readEntry("hostname", QString()), QString("(hostname)")); // the $ got removed because empty var name
- QVERIFY(group.hasKey("noeol"));
- QCOMPARE(group.readEntry("noeol", QString()), QString("foo"));
- }
---
-cgit v1.1
-
-
diff --git a/source/kde/patch/kdelibs/kdelibs.docbook.patch b/source/kde/patch/kdelibs/kdelibs.docbook.patch
deleted file mode 100644
index 6a20cd27..00000000
--- a/source/kde/patch/kdelibs/kdelibs.docbook.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- kdelibs-4.4.85/cmake/modules/FindDocBookXML.cmake.orig 2010-05-27 19:25:00.000000000 +0200
-+++ kdelibs-4.4.85/cmake/modules/FindDocBookXML.cmake 2010-06-07 16:18:35.000000000 +0200
-@@ -12,7 +12,7 @@
- # Redistribution and use is allowed according to the terms of the BSD license.
- # For details see the accompanying COPYING-CMAKE-SCRIPTS file.
-
--set (DOCBOOKXML_CURRENTDTD_VERSION "4.2"
-+set (DOCBOOKXML_CURRENTDTD_VERSION "4.5"
- CACHE INTERNAL "Required version of XML DTDs")
-
- set (DTD_PATH_LIST
diff --git a/source/kde/patch/kdelibs/kdelibs.upnp_conditional.patch b/source/kde/patch/kdelibs/kdelibs.upnp_conditional.patch
deleted file mode 100644
index 3a194477..00000000
--- a/source/kde/patch/kdelibs/kdelibs.upnp_conditional.patch
+++ /dev/null
@@ -1,15 +0,0 @@
---- kdelibs-4.8.0/solid/solid/managerbase.cpp.orig 2011-07-27 20:34:39.000000000 +0200
-+++ kdelibs-4.8.0/solid/solid/managerbase.cpp 2012-01-26 09:17:49.409993419 +0100
-@@ -90,7 +90,11 @@
- # endif
-
- # if defined (HUPNP_FOUND)
-- m_backends << new Solid::Backends::UPnP::UPnPDeviceManager(0);
-+ bool solidUpnpEnabled
-+ = QString::fromLocal8Bit(qgetenv("SOLID_UPNP")).toInt()==1;
-+ if (solidUpnpEnabled) {
-+ m_backends << new Solid::Backends::UPnP::UPnPDeviceManager(0);
-+ }
- # endif
- }
- }
diff --git a/source/kde/patch/kdelibs/return-application-icons-properly.patch b/source/kde/patch/kdelibs/return-application-icons-properly.patch
deleted file mode 100644
index 2bdb53ad..00000000
--- a/source/kde/patch/kdelibs/return-application-icons-properly.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-From 613c951a1157df0d8a907a155a5eaa706816d5f9 Mon Sep 17 00:00:00 2001
-From: Aaron Seigo <aseigo@kde.org>
-Date: Thu, 21 Feb 2013 17:58:11 +0100
-Subject: return application icons properly
-
-BUG:315578
----
- kdeui/icons/kiconloader.cpp | 31 ++++++++++++++++++++++++++++++-
- 1 file changed, 30 insertions(+), 1 deletion(-)
-
-diff --git a/kdeui/icons/kiconloader.cpp b/kdeui/icons/kiconloader.cpp
-index f65e941..6fed667 100644
---- a/kdeui/icons/kiconloader.cpp
-+++ b/kdeui/icons/kiconloader.cpp
-@@ -909,7 +909,36 @@ K3Icon KIconLoaderPrivate::findMatchingIcon(const QString& name, int size) const
- const char * const ext[4] = { ".png", ".svgz", ".svg", ".xpm" };
- bool genericFallback = name.endsWith(QLatin1String("-x-generic"));
-
-- foreach(KIconThemeNode *themeNode, links)
-+ // Do two passes through themeNodes.
-+ //
-+ // The first pass looks for an exact match in each themeNode one after the other.
-+ // If one is found and it is an app icon then return that icon.
-+ //
-+ // In the next pass (assuming the first pass failed), it looks for exact matches
-+ // and then generic fallbacks in each themeNode one after the other
-+ //
-+ // The reasoning is that application icons should always match exactly, all other
-+ // icons may fallback. Since we do not know what the context is here when we start
-+ // looking for it, we can only go by the path found.
-+ foreach (KIconThemeNode *themeNode, links) {
-+ for (int i = 0 ; i < 4 ; i++) {
-+ icon = themeNode->theme->iconPath(name + ext[i], size, KIconLoader::MatchExact);
-+ if (icon.isValid()) {
-+ break;
-+ }
-+
-+ icon = themeNode->theme->iconPath(name + ext[i], size, KIconLoader::MatchBest);
-+ if (icon.isValid()) {
-+ break;
-+ }
-+ }
-+
-+ if (icon.isValid() && icon.path.contains("/apps/")) {
-+ return icon;
-+ }
-+ }
-+
-+ foreach (KIconThemeNode *themeNode, links)
- {
- QString currentName = name;
-
---
-1.8.1.4
-
-
diff --git a/source/kde/patch/kdelibs/return-not-break.-copy-paste-error.patch b/source/kde/patch/kdelibs/return-not-break.-copy-paste-error.patch
deleted file mode 100644
index b62818ed..00000000
--- a/source/kde/patch/kdelibs/return-not-break.-copy-paste-error.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 0edfd42151ad57322a10a24ab4971b638e220e6e Mon Sep 17 00:00:00 2001
-From: Aaron Seigo <aseigo@kde.org>
-Date: Thu, 21 Feb 2013 18:14:54 +0100
-Subject: [PATCH 049/111] return, not break. copy/paste error
-
----
- kdeui/icons/kiconloader.cpp | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/kdeui/icons/kiconloader.cpp b/kdeui/icons/kiconloader.cpp
-index dba474d..ce6aeea 100644
---- a/kdeui/icons/kiconloader.cpp
-+++ b/kdeui/icons/kiconloader.cpp
-@@ -947,12 +947,12 @@ K3Icon KIconLoaderPrivate::findMatchingIcon(const QString& name, int size) const
- for (int i = 0 ; i < 4 ; i++) {
- icon = themeNode->theme->iconPath(currentName + ext[i], size, KIconLoader::MatchExact);
- if (icon.isValid()) {
-- break;
-+ return icon;
- }
-
- icon = themeNode->theme->iconPath(currentName + ext[i], size, KIconLoader::MatchBest);
- if (icon.isValid()) {
-- break;
-+ return icon;
- }
- }
- //kDebug(264) << "Looking up" << currentName;
---
-1.8.1.4
-
diff --git a/source/kde/patch/kdepim.patch b/source/kde/patch/kdepim.patch
deleted file mode 100644
index 48c25961..00000000
--- a/source/kde/patch/kdepim.patch
+++ /dev/null
@@ -1,6 +0,0 @@
-# Install Kleopatra headers, needed by kopete-cryptography:
-# This used to be fixed?
-zcat $CWD/patch/kdepim/kdepim-install_kleopatra_headers.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
-# Support TLS v1.1 and TLS v1.2:
-zcat $CWD/patch/kdepim/libkf5ksieve-16.04.3.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
diff --git a/source/kde/patch/kdepim/kdepim-install_kleopatra_headers.patch b/source/kde/patch/kdepim/kdepim-install_kleopatra_headers.patch
deleted file mode 100644
index 8960ab81..00000000
--- a/source/kde/patch/kdepim/kdepim-install_kleopatra_headers.patch
+++ /dev/null
@@ -1,122 +0,0 @@
-diff -up kdepim-4.11.90/kleopatra/libkleopatraclient/CMakeLists.txt.install_kleopatra_headers kdepim-4.11.90/kleopatra/libkleopatraclient/CMakeLists.txt
---- kdepim-4.11.90/kleopatra/libkleopatraclient/CMakeLists.txt.install_kleopatra_headers 2013-11-14 02:23:52.000000000 -0600
-+++ kdepim-4.11.90/kleopatra/libkleopatraclient/CMakeLists.txt 2013-11-16 13:17:30.289810575 -0600
-@@ -6,3 +6,7 @@ add_subdirectory(gui)
-
- add_subdirectory(tests)
-
-+install(
-+ FILES kleopatraclient_export.h
-+ DESTINATION ${INCLUDE_INSTALL_DIR}/libkleopatraclient
-+ )
-diff -up kdepim-4.11.90/kleopatra/libkleopatraclient/core/CMakeLists.txt.install_kleopatra_headers kdepim-4.11.90/kleopatra/libkleopatraclient/core/CMakeLists.txt
---- kdepim-4.11.90/kleopatra/libkleopatraclient/core/CMakeLists.txt.install_kleopatra_headers 2013-11-14 02:23:52.000000000 -0600
-+++ kdepim-4.11.90/kleopatra/libkleopatraclient/core/CMakeLists.txt 2013-11-16 13:17:30.290810557 -0600
-@@ -72,3 +72,13 @@ else()
- endif()
-
- install(TARGETS kleopatraclientcore ${INSTALL_TARGETS_DEFAULT_ARGS})
-+
-+install(
-+ FILES
-+ initialization.h
-+ command.h
-+ selectcertificatecommand.h
-+ signencryptfilescommand.h
-+ decryptverifyfilescommand.h
-+ DESTINATION ${INCLUDE_INSTALL_DIR}/libkleopatraclient/core
-+ )
-diff -up kdepim-4.11.90/kleopatra/libkleopatraclient/gui/CMakeLists.txt.install_kleopatra_headers kdepim-4.11.90/kleopatra/libkleopatraclient/gui/CMakeLists.txt
---- kdepim-4.11.90/kleopatra/libkleopatraclient/gui/CMakeLists.txt.install_kleopatra_headers 2013-11-14 02:23:52.000000000 -0600
-+++ kdepim-4.11.90/kleopatra/libkleopatraclient/gui/CMakeLists.txt 2013-11-16 13:17:30.290810557 -0600
-@@ -16,3 +16,9 @@ set_target_properties(kleopatraclientgui
- )
-
- install(TARGETS kleopatraclientgui ${INSTALL_TARGETS_DEFAULT_ARGS})
-+
-+install(
-+ FILES
-+ certificaterequester.h
-+ DESTINATION ${INCLUDE_INSTALL_DIR}/libkleopatraclient/gui
-+ )
-diff -up kdepim-4.11.90/libkleo/CMakeLists.txt.install_kleopatra_headers kdepim-4.11.90/libkleo/CMakeLists.txt
---- kdepim-4.11.90/libkleo/CMakeLists.txt.install_kleopatra_headers 2013-11-14 02:23:52.000000000 -0600
-+++ kdepim-4.11.90/libkleo/CMakeLists.txt 2013-11-16 13:17:30.290810557 -0600
-@@ -121,3 +121,61 @@ install ( FILES libkleopatrarc-win32.des
- else ()
- install ( FILES libkleopatrarc.desktop DESTINATION ${CONFIG_INSTALL_DIR} RENAME libkleopatrarc )
- endif ()
-+
-+install( FILES
-+ kleo/kleo_export.h
-+ kleo/enum.h
-+ kleo/oidmap.h
-+ kleo/cryptobackend.h
-+ kleo/cryptobackendfactory.h
-+ kleo/cryptoconfig.h
-+ kleo/dn.h
-+ kleo/job.h
-+ kleo/keylistjob.h
-+ kleo/keygenerationjob.h
-+ kleo/abstractimportjob.h
-+ kleo/importjob.h
-+ kleo/importfromkeyserverjob.h
-+ kleo/exportjob.h
-+ kleo/changeexpiryjob.h
-+ kleo/changeownertrustjob.h
-+ kleo/downloadjob.h
-+ kleo/deletejob.h
-+ kleo/encryptjob.h
-+ kleo/decryptjob.h
-+ kleo/signjob.h
-+ kleo/specialjob.h
-+ kleo/verifydetachedjob.h
-+ kleo/verifyopaquejob.h
-+ kleo/decryptverifyjob.h
-+ kleo/signencryptjob.h
-+ kleo/signkeyjob.h
-+ kleo/adduseridjob.h
-+ kleo/refreshkeysjob.h
-+ kleo/multideletejob.h
-+ kleo/hierarchicalkeylistjob.h
-+ kleo/keyfilter.h
-+ kleo/keyfiltermanager.h
-+ kleo/changepasswdjob.h
-+ kleo/checksumdefinition.h
-+ kleo/exception.h
-+ kleo/kconfigbasedkeyfilter.h
-+ kleo/listallkeysjob.h
-+ kleo/stl_util.h
-+ DESTINATION ${INCLUDE_INSTALL_DIR}/kleo COMPONENT Devel)
-+
-+install ( FILES
-+ ui/kdhorizontalline.h
-+ ui/messagebox.h
-+ ui/progressbar.h
-+ ui/progressdialog.h
-+ ui/keylistview.h
-+ ui/keyselectiondialog.h
-+ ui/keyrequester.h
-+ ui/keyapprovaldialog.h
-+ ui/dnattributeorderconfigwidget.h
-+ ui/cryptoconfigmodule.h
-+ ui/cryptoconfigdialog.h
-+ ui/directoryserviceswidget.h
-+ ui/filenamerequester.h
-+ DESTINATION ${INCLUDE_INSTALL_DIR}/kleo/ui COMPONENT Devel)
-diff -up kdepim-4.11.90/libkpgp/CMakeLists.txt.install_kleopatra_headers kdepim-4.11.90/libkpgp/CMakeLists.txt
---- kdepim-4.11.90/libkpgp/CMakeLists.txt.install_kleopatra_headers 2013-11-16 13:17:30.290810557 -0600
-+++ kdepim-4.11.90/libkpgp/CMakeLists.txt 2013-11-16 13:20:55.258111864 -0600
-@@ -35,3 +35,11 @@ add_subdirectory( tests )
- install(FILES kconf_update/kpgp.upd DESTINATION ${KCONF_UPDATE_INSTALL_DIR})
- install(PROGRAMS kconf_update/kpgp-3.1-upgrade-address-data.pl DESTINATION ${KCONF_UPDATE_INSTALL_DIR})
-
-+install(FILES
-+ kpgp.h
-+ kpgpbase.h
-+ kpgpblock.h
-+ kpgpkey.h
-+ kpgpui.h
-+ libkpgp_export.h
-+ DESTINATION ${INCLUDE_INSTALL_DIR}/kpgp COMPONENT Devel )
-
diff --git a/source/kde/patch/kdepim/libkf5ksieve-16.04.3.diff b/source/kde/patch/kdepim/libkf5ksieve-16.04.3.diff
deleted file mode 100644
index ea1f1711..00000000
--- a/source/kde/patch/kdepim/libkf5ksieve-16.04.3.diff
+++ /dev/null
@@ -1,11 +0,0 @@
---- ./libksieve/kmanagesieve/session.cpp.orig 2015-06-25 12:47:38.000000000 -0500
-+++ ./libksieve/kmanagesieve/session.cpp 2019-11-08 15:49:06.212790078 -0600
-@@ -368,7 +368,7 @@
- m_sslCheck->setInterval(60*1000);
- connect(m_sslCheck, SIGNAL(timeout()), this, SLOT(slotSslTimeout()));
- }
-- m_socket->setAdvertisedSslVersion( KTcpSocket::TlsV1 );
-+ m_socket->setAdvertisedSslVersion( KTcpSocket::SecureProtocols );
- m_socket->ignoreSslErrors();
- connect(m_socket, SIGNAL(encrypted()), SLOT(slotEncryptedDone()));
- m_sslCheck->start();
diff --git a/source/kde/patch/kdepimlibs.patch b/source/kde/patch/kdepimlibs.patch
deleted file mode 100644
index 0939702f..00000000
--- a/source/kde/patch/kdepimlibs.patch
+++ /dev/null
@@ -1,4 +0,0 @@
-zcat $CWD/patch/kdepimlibs/kdepimlibs.libical3.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
-# Support TLS v1.1 and TLS v1.2:
-zcat $CWD/patch/kdepimlibs/kimap-16.04.2.diff.gz | patch -p1 -l --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
diff --git a/source/kde/patch/kdepimlibs/kdepimlibs.libical3.diff b/source/kde/patch/kdepimlibs/kdepimlibs.libical3.diff
deleted file mode 100644
index c3b8caf8..00000000
--- a/source/kde/patch/kdepimlibs/kdepimlibs.libical3.diff
+++ /dev/null
@@ -1,184 +0,0 @@
---- ./kcalcore/icalformat_p.cpp.orig 2015-06-24 07:43:14.000000000 -0500
-+++ ./kcalcore/icalformat_p.cpp 2017-12-05 23:03:44.742261940 -0600
-@@ -2301,7 +2301,6 @@
- t.second = 0;
-
- t.is_date = 1;
-- t.is_utc = 0;
- t.zone = 0;
-
- return t;
-@@ -2322,8 +2321,7 @@
- t.minute = datetime.time().minute();
- t.second = datetime.time().second();
- }
-- t.zone = 0; // zone is NOT set
-- t.is_utc = datetime.isUtc() ? 1 : 0;
-+ t.zone = datetime.isUtc() ? icaltimezone_get_utc_timezone() : 0; // zone is NOT set
-
- // _dumpIcaltime( t );
-
-@@ -2398,7 +2396,7 @@
- }
-
- KTimeZone ktz;
-- if (!t.is_utc) {
-+ if (!icaltime_is_utc( t )) {
- ktz = dt.timeZone();
- }
-
-@@ -2431,7 +2429,7 @@
- // _dumpIcaltime( t );
-
- KDateTime::Spec timeSpec;
-- if (t.is_utc || t.zone == icaltimezone_get_utc_timezone()) {
-+ if (icaltime_is_utc( t ) || t.zone == icaltimezone_get_utc_timezone()) {
- timeSpec = KDateTime::UTC; // the time zone is UTC
- utc = false; // no need to convert to UTC
- } else {
---- ./kcalcore/icaltimezones.cpp.orig 2015-06-24 07:43:14.000000000 -0500
-+++ ./kcalcore/icaltimezones.cpp 2017-12-05 23:03:55.482262829 -0600
-@@ -54,7 +54,7 @@
- {
- return QDateTime(QDate(t.year, t.month, t.day),
- QTime(t.hour, t.minute, t.second),
-- (t.is_utc ? Qt::UTC : Qt::LocalTime));
-+ (icaltime_is_utc( t ) ? Qt::UTC : Qt::LocalTime));
- }
-
- // Maximum date for time zone data.
-@@ -81,7 +81,6 @@
- t.second = local.time().second();
- t.is_date = 0;
- t.zone = 0;
-- t.is_utc = 0;
- return t;
- }
-
-@@ -886,7 +885,7 @@
- case ICAL_LASTMODIFIED_PROPERTY:
- {
- const icaltimetype t = icalproperty_get_lastmodified(p);
-- if (t.is_utc) {
-+ if (icaltime_is_utc( t )) {
- data->d->lastModified = toQDateTime(t);
- } else {
- kDebug() << "LAST-MODIFIED not UTC";
-@@ -1259,7 +1258,7 @@
- // Convert DTSTART to QDateTime, and from local time to UTC
- const QDateTime localStart = toQDateTime(dtstart); // local time
- dtstart.second -= prevOffset;
-- dtstart.is_utc = 1;
-+ dtstart.zone = icaltimezone_get_utc_timezone();
- const QDateTime utcStart = toQDateTime(icaltime_normalize(dtstart)); // UTC
-
- transitions += utcStart;
-@@ -1286,13 +1285,13 @@
- t.minute = dtstart.minute;
- t.second = dtstart.second;
- t.is_date = 0;
-- t.is_utc = 0; // dtstart is in local time
-+ t.zone = 0; // dtstart is in local time
- }
- // RFC2445 states that RDATE must be in local time,
- // but we support UTC as well to be safe.
-- if (!t.is_utc) {
-+ if (!icaltime_is_utc( t )) {
- t.second -= prevOffset; // convert to UTC
-- t.is_utc = 1;
-+ t.zone = icaltimezone_get_utc_timezone();
- t = icaltime_normalize(t);
- }
- transitions += toQDateTime(t);
---- ./kcal/icalformat_p.cpp.orig 2015-06-24 07:43:14.000000000 -0500
-+++ ./kcal/icalformat_p.cpp 2017-12-05 23:04:01.670263342 -0600
-@@ -2087,7 +2087,6 @@
- t.second = 0;
-
- t.is_date = 1;
-- t.is_utc = 0;
- t.zone = 0;
-
- return t;
-@@ -2106,8 +2105,7 @@
- t.second = datetime.time().second();
-
- t.is_date = 0;
-- t.zone = 0; // zone is NOT set
-- t.is_utc = datetime.isUtc() ? 1 : 0;
-+ t.zone = datetime.isUtc() ? icaltimezone_get_utc_timezone() : 0;
-
- // _dumpIcaltime( t );
-
-@@ -2174,7 +2172,7 @@
- }
-
- KTimeZone ktz;
-- if ( !t.is_utc ) {
-+ if ( !icaltime_is_utc( t ) ) {
- ktz = dt.timeZone();
- }
-
-@@ -2207,7 +2205,7 @@
- // _dumpIcaltime( t );
-
- KDateTime::Spec timeSpec;
-- if ( t.is_utc || t.zone == icaltimezone_get_utc_timezone() ) {
-+ if ( icaltime_is_utc( t ) || t.zone == icaltimezone_get_utc_timezone() ) {
- timeSpec = KDateTime::UTC; // the time zone is UTC
- utc = false; // no need to convert to UTC
- } else {
---- ./kcal/icaltimezones.cpp.orig 2015-06-24 07:43:14.000000000 -0500
-+++ ./kcal/icaltimezones.cpp 2017-12-05 23:04:07.385263815 -0600
-@@ -50,7 +50,7 @@
- {
- return QDateTime( QDate( t.year, t.month, t.day ),
- QTime( t.hour, t.minute, t.second ),
-- ( t.is_utc ? Qt::UTC : Qt::LocalTime ) );
-+ ( icaltime_is_utc( t ) ? Qt::UTC : Qt::LocalTime ) );
- }
-
- // Maximum date for time zone data.
-@@ -77,7 +77,6 @@
- t.second = local.time().second();
- t.is_date = 0;
- t.zone = 0;
-- t.is_utc = 0;
- return t;
- }
-
-@@ -787,7 +786,7 @@
- case ICAL_LASTMODIFIED_PROPERTY:
- {
- icaltimetype t = icalproperty_get_lastmodified(p);
-- if ( t.is_utc ) {
-+ if ( icaltime_is_utc( t ) ) {
- data->d->lastModified = toQDateTime( t );
- } else {
- kDebug() << "LAST-MODIFIED not UTC";
-@@ -972,7 +971,7 @@
- // Convert DTSTART to QDateTime, and from local time to UTC
- QDateTime localStart = toQDateTime( dtstart ); // local time
- dtstart.second -= prevOffset;
-- dtstart.is_utc = 1;
-+ dtstart.zone = icaltimezone_get_utc_timezone();
- QDateTime utcStart = toQDateTime( icaltime_normalize( dtstart ) ); // UTC
-
- transitions += utcStart;
-@@ -999,13 +998,13 @@
- t.minute = dtstart.minute;
- t.second = dtstart.second;
- t.is_date = 0;
-- t.is_utc = 0; // dtstart is in local time
-+ t.zone = 0; // dtstart is in local time
- }
- // RFC2445 states that RDATE must be in local time,
- // but we support UTC as well to be safe.
-- if ( !t.is_utc ) {
-+ if ( !icaltime_is_utc( t ) ) {
- t.second -= prevOffset; // convert to UTC
-- t.is_utc = 1;
-+ t.zone = icaltimezone_get_utc_timezone();
- t = icaltime_normalize( t );
- }
- transitions += toQDateTime( t );
diff --git a/source/kde/patch/kdepimlibs/kimap-16.04.2.diff b/source/kde/patch/kdepimlibs/kimap-16.04.2.diff
deleted file mode 100644
index dabca4e3..00000000
--- a/source/kde/patch/kdepimlibs/kimap-16.04.2.diff
+++ /dev/null
@@ -1,11 +0,0 @@
---- ./kimap/loginjob.cpp.orig 2015-06-24 07:43:14.000000000 -0500
-+++ ./kimap/loginjob.cpp 2019-11-08 15:44:05.687811741 -0600
-@@ -382,7 +382,7 @@
-
- switch ( d->authState ) {
- case LoginJobPrivate::StartTls:
-- d->sessionInternal()->startSsl( KTcpSocket::TlsV1 );
-+ d->sessionInternal()->startSsl( KTcpSocket::SecureProtocols );
- break;
-
- case LoginJobPrivate::Capability:
diff --git a/source/kde/patch/kdevelop-pg-qt.patch b/source/kde/patch/kdevelop-pg-qt.patch
deleted file mode 100644
index 279fcd4b..00000000
--- a/source/kde/patch/kdevelop-pg-qt.patch
+++ /dev/null
@@ -1,2 +0,0 @@
-zcat $CWD/patch/kdevelop-pg-qt/0011-fix-some-warnings.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-zcat $CWD/patch/kdevelop-pg-qt/kdevelop-pg-qt.ftbfs.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
diff --git a/source/kde/patch/kdevelop-pg-qt/0011-fix-some-warnings.patch b/source/kde/patch/kdevelop-pg-qt/0011-fix-some-warnings.patch
deleted file mode 100644
index 7392fbf3..00000000
--- a/source/kde/patch/kdevelop-pg-qt/0011-fix-some-warnings.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-From ac587957cd0cabbc668604507e2cfebb6810ed09 Mon Sep 17 00:00:00 2001
-From: Milian Wolff <mail@milianw.de>
-Date: Thu, 29 Nov 2012 15:56:40 +0100
-Subject: [PATCH 11/17] fix some warnings
-
----
- kdev-pg/kdev-pg-code-gen.cpp | 2 +-
- kdev-pg/kdev-pg-lexer.ll | 2 +-
- kdev-pg/kdev-pg-parser.yy | 2 +-
- 3 files changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/kdev-pg/kdev-pg-code-gen.cpp b/kdev-pg/kdev-pg-code-gen.cpp
-index e06c6be..badb461 100644
---- a/kdev-pg/kdev-pg-code-gen.cpp
-+++ b/kdev-pg/kdev-pg-code-gen.cpp
-@@ -51,7 +51,7 @@ namespace KDevPG
-
- void generateCondition(const World::NodeSet& s, QTextStream& out)
- {
-- if(s.size() == 0 || s.size() == 1 && nodeCast<Model::ZeroItem*>(*s.begin()) != 0)
-+ if(s.size() == 0 || (s.size() == 1 && nodeCast<Model::ZeroItem*>(*s.begin()) != 0))
- {
- out << "true /*epsilon*/";
- return;
-diff --git a/kdev-pg/kdev-pg-lexer.ll b/kdev-pg/kdev-pg-lexer.ll
-index a0864af..9261d71 100644
---- a/kdev-pg/kdev-pg-lexer.ll
-+++ b/kdev-pg/kdev-pg-lexer.ll
-@@ -425,7 +425,7 @@ void appendLineBuffer()
- strcpy(yyTextLine+currentOffset, yytext + (yymoreFlag ? lastTextLeng : 0)); /* append current */
- /* strcpy is faster than strcat */
-
-- Q_ASSERT(strlen(yyTextLine) < yyTextLineLeng);
-+ Q_ASSERT(strlen(yyTextLine) < size_t(yyTextLineLeng));
-
- lastTextLeng = strlen(yytext);
- yymoreFlag = false;
-diff --git a/kdev-pg/kdev-pg-parser.yy b/kdev-pg/kdev-pg-parser.yy
-index d5a25f5..8f8d604 100644
---- a/kdev-pg/kdev-pg-parser.yy
-+++ b/kdev-pg/kdev-pg-parser.yy
-@@ -309,7 +309,7 @@ opt_lexer_action
- | T_CONTINUE {
- r = "\nlxCONTINUE;\n";
- }
-- | /* empty */ { r = "\nlxSKIP\n" }
-+ | /* empty */ { r = "\nlxSKIP\n"; }
- ;
-
- regexp
---
-1.9.3
-
diff --git a/source/kde/patch/kdevelop-pg-qt/kdevelop-pg-qt.ftbfs.diff b/source/kde/patch/kdevelop-pg-qt/kdevelop-pg-qt.ftbfs.diff
deleted file mode 100644
index c18d1e4d..00000000
--- a/source/kde/patch/kdevelop-pg-qt/kdevelop-pg-qt.ftbfs.diff
+++ /dev/null
@@ -1,11 +0,0 @@
---- ./kdev-pg/CMakeLists.txt.orig 2018-01-30 16:34:56.192631426 -0600
-+++ ./kdev-pg/CMakeLists.txt 2018-01-30 16:37:04.178643391 -0600
-@@ -79,7 +79,7 @@
- DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/kdev-pg-lexer.ll"
- ${OPTIONAL_PARSER_HEADER_DEPENDENCY}
- COMMAND ${FLEX_EXECUTABLE}
-- ARGS --nounistd -o"${CMAKE_CURRENT_BINARY_DIR}/kdev-pg-lexer.cc"
-+ ARGS --yymore --nounistd -o"${CMAKE_CURRENT_BINARY_DIR}/kdev-pg-lexer.cc"
- "${CMAKE_CURRENT_SOURCE_DIR}/kdev-pg-lexer.ll"
- )
-
diff --git a/source/kde/patch/kdewebdev.patch b/source/kde/patch/kdewebdev.patch
deleted file mode 100644
index 2abc80be..00000000
--- a/source/kde/patch/kdewebdev.patch
+++ /dev/null
@@ -1,5 +0,0 @@
-# Make it find tidy:
-zcat $CWD/patch/kdewebdev/include-tidy.patch.gz \
- | sed -e "s#/tmp/package-kdewebdev#${SLACK_KDE_BUILD_DIR}/${PKGNAME}/package-kdewebdev#" \
- | patch -p0 --verbose \
- || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
diff --git a/source/kde/patch/kdewebdev/include-tidy.patch b/source/kde/patch/kdewebdev/include-tidy.patch
deleted file mode 100644
index fd4de940..00000000
--- a/source/kde/patch/kdewebdev/include-tidy.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- klinkstatus/src/tidy/tidyx.h.orig 2009-09-03 09:55:38.886267704 -0500
-+++ klinkstatus/src/tidy/tidyx.h 2009-09-03 09:57:29.032269520 -0500
-@@ -48,8 +48,8 @@
- Created 2002-07-11 by Charles Reitzel
- */
-
--#include <tidy.h>
--#include <buffio.h>
-+#include "/tmp/package-kdewebdev/usr/include/tidy/tidy.h"
-+#include "/tmp/package-kdewebdev/usr/include/tidy/buffio.h"
-
- #include <config-tidy.h>
-
diff --git a/source/kde/patch/kgamma.patch b/source/kde/patch/kgamma.patch
deleted file mode 100644
index 1d681a2c..00000000
--- a/source/kde/patch/kgamma.patch
+++ /dev/null
@@ -1,3 +0,0 @@
-# Fix build:
-zcat $CWD/patch/kgamma/kgamma.cmake.include.checkincludefiles.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
diff --git a/source/kde/patch/kgamma/kgamma.cmake.include.checkincludefiles.diff b/source/kde/patch/kgamma/kgamma.cmake.include.checkincludefiles.diff
deleted file mode 100644
index 1af9c2cb..00000000
--- a/source/kde/patch/kgamma/kgamma.cmake.include.checkincludefiles.diff
+++ /dev/null
@@ -1,10 +0,0 @@
---- ./CMakeLists.txt.orig 2014-10-09 02:07:16.000000000 -0500
-+++ ./CMakeLists.txt 2018-01-29 22:34:52.281573013 -0600
-@@ -9,6 +9,7 @@
- # X11_xf86vmode discovery is done by FindX11
- macro_log_feature(X11_xf86vmode_FOUND "X11 Video Mode Extension (xf86vm)" "Required to build kgamma." "http://www.x.org" TRUE "" "")
-
-+include(CheckIncludeFiles)
- check_include_files(strstream HAVE_STRSTREAM_H)
- configure_file(config-kgamma.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-kgamma.h)
-
diff --git a/source/kde/patch/konsole.patch b/source/kde/patch/konsole.patch
deleted file mode 100644
index 286c7240..00000000
--- a/source/kde/patch/konsole.patch
+++ /dev/null
@@ -1,8 +0,0 @@
-# Fix scrollUp behavior:
-zcat $CWD/patch/konsole/konsole.scrollup.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
-## We're not changing TERM to konsole after all. It's just the path of least
-## resistance to revert the terminfo change that broke it, since it's affecting
-## other systems as well (some of which we cannot patch).
-## Set default TERM=konsole:
-#zcat $CWD/patch/konsole/konsole.term.is.konsole.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
diff --git a/source/kde/patch/konsole/konsole.scrollup.diff b/source/kde/patch/konsole/konsole.scrollup.diff
deleted file mode 100644
index c80a61ec..00000000
--- a/source/kde/patch/konsole/konsole.scrollup.diff
+++ /dev/null
@@ -1,43 +0,0 @@
-From 7ff23512fd6c6af1dba87083446f85baf75e9c71 Mon Sep 17 00:00:00 2001
-From: Kurt Hindenburg <kurt.hindenburg@gmail.com>
-Date: Sat, 1 Jul 2017 19:12:39 -0400
-Subject: Correct scrollUp behavior
-
-CSI S escape sequence (SU, scroll up) ignored if number of lines to
-scroll bigger than scrollable lines
-
-REVIEW: 130133
-BUG: 379318
----
- src/Screen.cpp | 9 +++++++--
- 1 file changed, 7 insertions(+), 2 deletions(-)
-
-diff --git a/src/Screen.cpp b/src/Screen.cpp
-index 94841a9..15bd685 100644
---- a/src/Screen.cpp
-+++ b/src/Screen.cpp
-@@ -746,13 +746,18 @@ QRect Screen::lastScrolledRegion() const
-
- void Screen::scrollUp(int from, int n)
- {
-- if (n <= 0 || from + n > _bottomMargin) return;
-+ if (n <= 0)
-+ return;
-+ if (from > _bottomMargin)
-+ return;
-+ if (from + n > _bottomMargin)
-+ n = _bottomMargin + 1 - from;
-
- _scrolledLines -= n;
- _lastScrolledRegion = QRect(0, _topMargin, _columns - 1, (_bottomMargin - _topMargin));
-
- //FIXME: make sure `topMargin', `bottomMargin', `from', `n' is in bounds.
-- moveImage(loc(0, from), loc(0, from + n), loc(_columns - 1, _bottomMargin));
-+ moveImage(loc(0, from), loc(0, from + n), loc(_columns, _bottomMargin));
- clearImage(loc(0, _bottomMargin - n + 1), loc(_columns - 1, _bottomMargin), ' ');
- }
-
---
-cgit v0.11.2
-
-
diff --git a/source/kde/patch/konsole/konsole.term.is.konsole.diff b/source/kde/patch/konsole/konsole.term.is.konsole.diff
deleted file mode 100644
index edc7a49c..00000000
--- a/source/kde/patch/konsole/konsole.term.is.konsole.diff
+++ /dev/null
@@ -1,22 +0,0 @@
---- ./src/Profile.cpp.orig 2014-10-31 23:17:02.000000000 -0500
-+++ ./src/Profile.cpp 2018-04-01 13:08:59.412975556 -0500
-@@ -150,7 +150,7 @@
- setProperty(Command, qgetenv("SHELL"));
- setProperty(Arguments, QStringList() << qgetenv("SHELL"));
- setProperty(Icon, "utilities-terminal");
-- setProperty(Environment, QStringList() << "TERM=xterm");
-+ setProperty(Environment, QStringList() << "TERM=konsole");
- setProperty(LocalTabTitleFormat, "%d : %n");
- setProperty(RemoteTabTitleFormat, "(%u) %H");
- setProperty(ShowTerminalSizeHint, true);
---- ./src/Pty.cpp.orig 2014-10-31 23:17:02.000000000 -0500
-+++ ./src/Pty.cpp 2018-04-01 13:08:52.282975632 -0500
-@@ -218,7 +218,7 @@
-
- // extra safeguard to make sure $TERM is always set
- if (!isTermEnvAdded) {
-- setEnv("TERM", "xterm");
-+ setEnv("TERM", "konsole");
- }
- }
-
diff --git a/source/kde/patch/kopete.patch b/source/kde/patch/kopete.patch
deleted file mode 100644
index 8b0e2949..00000000
--- a/source/kde/patch/kopete.patch
+++ /dev/null
@@ -1,3 +0,0 @@
-# Fix compiling with gcc 7:
-zcat $CWD/patch/kopete/kopete-gcc6.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
diff --git a/source/kde/patch/kopete/kopete-gcc6.patch b/source/kde/patch/kopete/kopete-gcc6.patch
deleted file mode 100644
index 7a897113..00000000
--- a/source/kde/patch/kopete/kopete-gcc6.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 9f994ba6950117cbbeefc6027fa0a52ce74932e2 Mon Sep 17 00:00:00 2001
-From: Peter Levine <plevine457@gmail.com>
-Date: Tue, 31 May 2016 17:40:42 +0200
-Subject: Fix compilation with GCC 6
-
-REVIEW: 128006
-BUG: 363053
-FIXED-IN: 16.04.2
----
- plugins/history2/history2logger.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/plugins/history2/history2logger.h b/plugins/history2/history2logger.h
-index 13f159a..8083526 100644
---- a/plugins/history2/history2logger.h
-+++ b/plugins/history2/history2logger.h
-@@ -94,7 +94,7 @@ public:
- * from Kopete::Contact @param c in the given @param sens
- */
- QList<Kopete::Message> readMessages(int lines,
-- int offset=0, const Kopete::MetaContact *c=false, bool reverseOrder=true);
-+ int offset=0, const Kopete::MetaContact *c=NULL, bool reverseOrder=true);
-
- /**
- * Same as the following, but for one date. I did'nt reuse the above function
---
-cgit v0.11.2
-
diff --git a/source/kde/patch/krdc.patch b/source/kde/patch/krdc.patch
deleted file mode 100644
index 54e82a09..00000000
--- a/source/kde/patch/krdc.patch
+++ /dev/null
@@ -1,3 +0,0 @@
-# Allow for the use of xfreerdp >= 1.1.0:
-zcat $CWD/patch/krdc/krdc_freerdp-1.1.0.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
diff --git a/source/kde/patch/krdc/krdc_freerdp-1.1.0.patch b/source/kde/patch/krdc/krdc_freerdp-1.1.0.patch
deleted file mode 100644
index 75b51468..00000000
--- a/source/kde/patch/krdc/krdc_freerdp-1.1.0.patch
+++ /dev/null
@@ -1,184 +0,0 @@
-Support >=free-rdp-1.1.0.
-
-https://git.reviewboard.kde.org/r/115059/
-
-diff --git a/rdp/rdpview.cpp b/rdp/rdpview.cpp
-index 0d14e04691549e084b58501cd10ca2382ef25c63..9062ba5fa060284a679f0c9bc211ab7dd6972c0a 100644
---- a/rdp/rdpview.cpp
-+++ b/rdp/rdpview.cpp
-@@ -158,71 +158,58 @@ bool RdpView::start()
- width = this->parentWidget()->size().width();
- height = this->parentWidget()->size().height();
- }
-- arguments << "-g" << QString::number(width) + 'x' + QString::number(height);
-+ arguments << "-decorations"; // put this option first so we can detect xfreerdp < 1.1
-+ arguments << "/w:" + QString::number(width);
-+ arguments << "/h:" + QString::number(height);
-
-- arguments << "-k" << keymapToXfreerdp(m_hostPreferences->keyboardLayout());
-+ arguments << "/kbd:" + keymapToXfreerdp(m_hostPreferences->keyboardLayout());
-
- if (!m_url.userName().isEmpty()) {
- // if username contains a domain, it needs to be set with another parameter
- if (m_url.userName().contains('\\')) {
- const QStringList splittedName = m_url.userName().split('\\');
-- arguments << "-d" << splittedName.at(0);
-- arguments << "-u" << splittedName.at(1);
-+ arguments << "/d:" + splittedName.at(0);
-+ arguments << "/u:" + splittedName.at(1);
- } else {
-- arguments << "-u" << m_url.userName();
-+ arguments << "/u:" + m_url.userName();
- }
- } else {
-- arguments << "-u" << "";
-+ arguments << "-u:";
- }
-
-- if (!m_url.password().isNull())
-- arguments << "-p" << m_url.password();
--
-- arguments << "-D"; // request the window has no decorations
-- arguments << "-X" << QString::number(m_container->winId());
-- arguments << "-a" << QString::number((m_hostPreferences->colorDepth() + 1) * 8);
--
-- switch (m_hostPreferences->sound()) {
-- case 1:
-- arguments << "-o";
-- break;
-- case 0:
-- arguments << "--plugin" << "rdpsnd";
-- break;
-- case 2:
-- default:
-- break;
-- }
-+ arguments << "/parent-window:" + QString::number(m_container->winId());
-+ arguments << "/bpp:" + QString::number((m_hostPreferences->colorDepth() + 1) * 8);
-+ arguments << "/audio-mode:" + m_hostPreferences->sound();
-
- if (!m_hostPreferences->shareMedia().isEmpty()) {
- QStringList shareMedia;
-- shareMedia << "--plugin" << "rdpdr" << "--data" << "disk:media:" + m_hostPreferences->shareMedia() << "--";
-+ shareMedia << "/drive:media," + m_hostPreferences->shareMedia();
- arguments += shareMedia;
- }
-
- QString performance;
- switch (m_hostPreferences->performance()) {
- case 0:
-- performance = 'm';
-+ performance = "modem";
- break;
- case 1:
-- performance = 'b';
-+ performance = "broadband";
- break;
- case 2:
-- performance = 'l';
-+ performance = "lan";
- break;
- default:
- break;
- }
-
-- arguments << "-x" << performance;
-+ arguments << "/network:" + performance;
-
- if (m_hostPreferences->console()) {
-- arguments << "-0";
-+ arguments << "/admin";
- }
-
- if (m_hostPreferences->remoteFX()) {
-- arguments << "--rfx";
-+ arguments << "/rfx";
- }
-
- if (!m_hostPreferences->extraOptions().isEmpty()) {
-@@ -233,16 +220,21 @@ bool RdpView::start()
- // krdc has no support for certificate management yet; it would not be possbile to connect to any host:
- // "The host key for example.com has changed" ...
- // "Add correct host key in ~/.freerdp/known_hosts to get rid of this message."
-- arguments << "--ignore-certificate";
-+ arguments << "/cert-ignore";
-
- // clipboard sharing is activated in KRDC; user can disable it at runtime
-- arguments << "--plugin" << "cliprdr";
-+ arguments << "/clipboard";
-
-- arguments << "-t" << QString::number(m_port);
-- arguments << m_host;
-+ arguments << "/port:" + QString::number(m_port);
-+ arguments << "/v:" + m_host;
-
- kDebug(5012) << "Starting xfreerdp with arguments:" << arguments;
-
-+ //avoid printing the password in debug
-+ if (!m_url.password().isNull()) {
-+ arguments << "/p:" + m_url.password();
-+ }
-+
- setStatus(Connecting);
-
- connect(m_process, SIGNAL(error(QProcess::ProcessError)), SLOT(processError(QProcess::ProcessError)));
-@@ -302,7 +294,7 @@ void RdpView::connectionError()
-
- void RdpView::processError(QProcess::ProcessError error)
- {
-- kDebug(5012) << "processError:" << error;
-+ kDebug(5012) << error;
- if (m_quitFlag) // do not try to show error messages while quitting (prevent crashes)
- return;
-
-@@ -319,33 +311,13 @@ void RdpView::processError(QProcess::ProcessError error)
- void RdpView::receivedStandardError()
- {
- const QString output(m_process->readAllStandardError());
-- kDebug(5012) << "receivedStandardError:" << output;
-- QString line;
-- int i = 0;
-- while (!(line = output.section('\n', i, i)).isEmpty()) {
--
-- // the following error is issued by freerdp because of a bug in freerdp 1.0.1 and below;
-- // see: https://github.com/FreeRDP/FreeRDP/pull/576
-- //"X Error of failed request: BadWindow (invalid Window parameter)
-- // Major opcode of failed request: 7 (X_ReparentWindow)
-- // Resource id in failed request: 0x71303348
-- // Serial number of failed request: 36
-- // Current serial number in output stream: 36"
-- if (line.contains(QLatin1String("X_ReparentWindow"))) {
-- KMessageBox::error(0, i18n("The version of \"xfreerdp\" you are using is too old.\n"
-- "xfreerdp 1.0.2 or greater is required."),
-- i18n("RDP Failure"));
-- connectionError();
-- return;
-- }
-- i++;
-- }
-+ kDebug(5012) << output;
- }
-
- void RdpView::receivedStandardOutput()
- {
- const QString output(m_process->readAllStandardOutput());
-- kDebug(5012) << "receivedStandardOutput:" << output;
-+ kDebug(5012) << output;
- QString line;
- int i = 0;
- while (!(line = output.section('\n', i, i)).isEmpty()) {
-@@ -373,6 +345,14 @@ void RdpView::receivedStandardOutput()
- return;
- }
-
-+ // we no longer support freerdp < 1.1, we only support versions with the new interface
-+ if (line.contains(QLatin1String("invalid option: -decorations"))) {
-+ KMessageBox::error(0, i18n("The version of \"xfreerdp\" you are using is too old.\n"
-+ "xfreerdp 1.1 or greater is required."),
-+ i18n("RDP Failure"));
-+ connectionError();
-+ return;
-+ }
- i++;
- }
- }
diff --git a/source/kde/patch/kscreen.patch b/source/kde/patch/kscreen.patch
deleted file mode 100644
index c369b4d9..00000000
--- a/source/kde/patch/kscreen.patch
+++ /dev/null
@@ -1,3 +0,0 @@
-# Kludge around a strange failure in setting up the unit tests:
-zcat $CWD/patch/kscreen/kscreen.broken.test.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
diff --git a/source/kde/patch/kscreen/kscreen.broken.test.diff b/source/kde/patch/kscreen/kscreen.broken.test.diff
deleted file mode 100644
index 5b102d96..00000000
--- a/source/kde/patch/kscreen/kscreen.broken.test.diff
+++ /dev/null
@@ -1,8 +0,0 @@
---- ./tests/CMakeLists.txt.orig 2013-11-22 04:15:16.000000000 -0600
-+++ ./tests/CMakeLists.txt 2015-10-24 18:51:44.332554749 -0500
-@@ -17,4 +17,3 @@
-
- target_link_libraries(testgenerator ${QT_QTTEST_LIBRARY} ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY} kscreen)
-
--add_test(testgenerator ${CMAKE_CURRENT_BINARY_DIR}/testgenerator)
-\ No newline at end of file
diff --git a/source/kde/patch/ktorrent.patch b/source/kde/patch/ktorrent.patch
deleted file mode 100644
index 0f75eabc..00000000
--- a/source/kde/patch/ktorrent.patch
+++ /dev/null
@@ -1,2 +0,0 @@
-zcat $CWD/patch/ktorrent/ktorrent.use.package.geoip.database.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
diff --git a/source/kde/patch/ktorrent/geoip.dat b/source/kde/patch/ktorrent/geoip.dat
deleted file mode 100644
index be8b031f..00000000
--- a/source/kde/patch/ktorrent/geoip.dat
+++ /dev/null
Binary files differ
diff --git a/source/kde/patch/ktorrent/ktorrent.use.package.geoip.database.diff b/source/kde/patch/ktorrent/ktorrent.use.package.geoip.database.diff
deleted file mode 100644
index 0a9fd804..00000000
--- a/source/kde/patch/ktorrent/ktorrent.use.package.geoip.database.diff
+++ /dev/null
@@ -1,37 +0,0 @@
---- ./plugins/infowidget/geoipmanager.cpp.orig 2013-01-14 11:12:24.000000000 -0600
-+++ ./plugins/infowidget/geoipmanager.cpp 2019-03-17 15:14:38.020018110 -0500
-@@ -39,7 +39,7 @@
- #ifdef USE_SYSTEM_GEOIP
- geo_ip = GeoIP_open_type(GEOIP_COUNTRY_EDITION, GEOIP_STANDARD);
- #else
-- geoip_data_file = KStandardDirs::locate("data", "ktorrent/geoip.dat");
-+ geoip_data_file = "/usr/share/apps/ktorrent/GeoIP/geoip.dat";
- if (geoip_data_file.isNull())
- geoip_data_file = KStandardDirs::locate("data", "ktorrent/GeoIP.dat");
-
-@@ -54,12 +54,6 @@
- {
- QFileInfo fi(geoip_data_file);
- QDateTime now = QDateTime::currentDateTime();
-- if (fi.lastModified().daysTo(now) >= 30)
-- {
-- // if the last time the geoip file was modified, was more then
-- // 30 days ago, redownload it
-- downloadDataBase();
-- }
- }
- }
- #endif
-@@ -104,12 +98,6 @@
-
- void GeoIPManager::downloadDataBase()
- {
--#ifndef USE_SYSTEM_GEOIP
-- Out(SYS_INW|LOG_NOTICE) << "Downloading GeoIP database: " << geoip_url.prettyUrl() << endl;
-- download_destination = kt::DataDir() + geoip_url.fileName();
-- KIO::CopyJob* job = KIO::copy(geoip_url,download_destination,KIO::Overwrite|KIO::HideProgressInfo);
-- connect(job,SIGNAL(result(KJob*)),this,SLOT(databaseDownloadFinished(KJob*)));
--#endif
- }
-
- void GeoIPManager::databaseDownloadFinished(KJob* job)
diff --git a/source/kde/patch/ktouch.patch b/source/kde/patch/ktouch.patch
deleted file mode 100644
index 66b2cdf7..00000000
--- a/source/kde/patch/ktouch.patch
+++ /dev/null
@@ -1,2 +0,0 @@
-zcat $CWD/patch/ktouch/ktouch.performance.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
diff --git a/source/kde/patch/ktouch/ktouch.performance.diff b/source/kde/patch/ktouch/ktouch.performance.diff
deleted file mode 100644
index 526294fe..00000000
--- a/source/kde/patch/ktouch/ktouch.performance.diff
+++ /dev/null
@@ -1,31 +0,0 @@
-diff --git a/src/declarativeitems/lessonpainter.cpp b/src/declarativeitems/lessonpainter.cpp
-index dc8fc61..2c56c0c 100644
---- a/src/declarativeitems/lessonpainter.cpp
-+++ b/src/declarativeitems/lessonpainter.cpp
-@@ -236,8 +236,7 @@ void LessonPainter::updateTrainingStatus()
- const QString referenceLine = m_trainingLineCore->referenceLine();
- const QString actualLine = m_trainingLineCore->actualLine();
- const QString preeditString = m_trainingLineCore->preeditString();
-- const QTextBlock block = m_doc->findBlockByNumber(m_currentLine + 1);
-- const int blockPosition = block.position();
-+ const int blockPosition = m_doc->findBlockByNumber(m_currentLine + 1).position();
-
- for (int linePos = 0; linePos < referenceLine.length(); linePos++)
- {
-@@ -257,8 +256,14 @@ void LessonPainter::updateTrainingStatus()
-
- cursor.setPosition(charPosition, QTextCursor::MoveAnchor);
- cursor.setPosition(charPosition + 1, QTextCursor::KeepAnchor);
-- cursor.deleteChar();
-- cursor.insertText(QString(displayedChar), charFormat);
-+
-+ /* QUICKFIX: Using the charFormat to decide whether a char must be repainted or not.
-+ * Not nice but quite efficient ... */
-+ if (cursor.charFormat() != charFormat)
-+ {
-+ cursor.deleteChar();
-+ cursor.insertText(QString(displayedChar), charFormat);
-+ }
- }
-
- invalidateImageCache();
diff --git a/source/kde/patch/kuser.patch b/source/kde/patch/kuser.patch
deleted file mode 100644
index 70edfd20..00000000
--- a/source/kde/patch/kuser.patch
+++ /dev/null
@@ -1,3 +0,0 @@
-# Fix build:
-zcat $CWD/patch/kuser/kuser.cmake.include.checkincludefiles.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
diff --git a/source/kde/patch/kuser/kuser.cmake.include.checkincludefiles.diff b/source/kde/patch/kuser/kuser.cmake.include.checkincludefiles.diff
deleted file mode 100644
index 264810f6..00000000
--- a/source/kde/patch/kuser/kuser.cmake.include.checkincludefiles.diff
+++ /dev/null
@@ -1,10 +0,0 @@
---- ./CMakeLists.txt.orig 2013-08-03 23:22:20.000000000 -0500
-+++ ./CMakeLists.txt 2018-01-30 14:37:52.197974764 -0600
-@@ -35,6 +35,7 @@
- set(KU_FIRSTGID 500 CACHE STRING "First GID of normal users")
- set(KU_USERPRIVATEGROUP true CACHE STRING "User private groups by default")
-
-+include(CheckIncludeFiles)
- check_include_files(shadow.h HAVE_SHADOW_H)
- check_include_files(crypt.h HAVE_CRYPT_H)
- check_include_files(sys/stat.h HAVE_SYS_STAT_H)
diff --git a/source/kde/patch/libkscreen.patch b/source/kde/patch/libkscreen.patch
deleted file mode 100644
index 1c696f88..00000000
--- a/source/kde/patch/libkscreen.patch
+++ /dev/null
@@ -1,3 +0,0 @@
-# Kludge around a strange failure in setting up the unit tests:
-zcat $CWD/patch/libkscreen/libkscreen.broken.test.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
diff --git a/source/kde/patch/libkscreen/libkscreen.broken.test.diff b/source/kde/patch/libkscreen/libkscreen.broken.test.diff
deleted file mode 100644
index 30e179d5..00000000
--- a/source/kde/patch/libkscreen/libkscreen.broken.test.diff
+++ /dev/null
@@ -1,10 +0,0 @@
---- ./tests/CMakeLists.txt.orig 2014-08-03 16:14:49.000000000 -0500
-+++ ./tests/CMakeLists.txt 2015-10-24 12:55:55.767426554 -0500
-@@ -6,7 +6,6 @@
- include_directories(${QT_INCLUDES} ${KDE4_INCLUDES} ${CMAKE_CURRENT_BINARY_DIR} ${X11_Xrandr_INCLUDE_PATH})
- kde4_add_unit_test(${_testname} ${_testname}.cpp ${_testname}.moc)
- target_link_libraries(${_testname} ${QT_QTTEST_LIBRARY} ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY} kscreen)
-- add_test(${_testname} ${CMAKE_CURRENT_BINARY_DIR}/${_testname})
- endforeach(_testname)
- endmacro(KSCREEN_TESTS)
-
diff --git a/source/kde/patch/perlqt.patch b/source/kde/patch/perlqt.patch
deleted file mode 100644
index b1aaf264..00000000
--- a/source/kde/patch/perlqt.patch
+++ /dev/null
@@ -1,3 +0,0 @@
-# Fix build:
-zcat $CWD/patch/perlqt/perlqt.gcc6.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
diff --git a/source/kde/patch/perlqt/perlqt.gcc6.diff b/source/kde/patch/perlqt/perlqt.gcc6.diff
deleted file mode 100644
index 9a6e42ea..00000000
--- a/source/kde/patch/perlqt/perlqt.gcc6.diff
+++ /dev/null
@@ -1,11 +0,0 @@
---- ./qtcore/src/util.cpp.orig 2014-11-04 16:59:39.000000000 -0600
-+++ ./qtcore/src/util.cpp 2017-10-04 22:25:36.055839800 -0500
-@@ -2251,7 +2251,7 @@
- methcache.insert(mcid, new Smoke::ModuleIndex(mi));
- }
-
-- static smokeperl_object nothis = { 0, 0, 0, false };
-+ static smokeperl_object nothis = { 0, 0, 0, NULL };
- smokeperl_object* call_this = 0;
- if ( SvOK(sv_this) ) {
- call_this = sv_obj_info( sv_this );
diff --git a/source/kde/patch/plasma-nm.patch b/source/kde/patch/plasma-nm.patch
deleted file mode 100644
index 9997fe41..00000000
--- a/source/kde/patch/plasma-nm.patch
+++ /dev/null
@@ -1,2 +0,0 @@
-zcat $CWD/patch/plasma-nm/plasma-nm.nm.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
diff --git a/source/kde/patch/plasma-nm/plasma-nm.nm.diff b/source/kde/patch/plasma-nm/plasma-nm.nm.diff
deleted file mode 100644
index 91efa849..00000000
--- a/source/kde/patch/plasma-nm/plasma-nm.nm.diff
+++ /dev/null
@@ -1,10 +0,0 @@
---- ./CMakeLists.txt.orig 2015-04-07 08:20:28.000000000 -0500
-+++ ./CMakeLists.txt 2015-10-24 18:12:52.316604417 -0500
-@@ -49,6 +49,7 @@
- ${CMAKE_CURRENT_SOURCE_DIR}/libs
- ${CMAKE_CURRENT_SOURCE_DIR}/libs/editor/
- ${NETWORKMANAGER_INCLUDE_DIRS}
-+ ${NM-UTIL_INCLUDE_DIRS}
- ${NETWORKMANAGERQT_INCLUDE_DIRS}
- ${KDE4_INCLUDES})
-
diff --git a/source/kde/patch/print-manager.patch b/source/kde/patch/print-manager.patch
deleted file mode 100644
index 46e0f2b9..00000000
--- a/source/kde/patch/print-manager.patch
+++ /dev/null
@@ -1 +0,0 @@
-zcat $CWD/patch/print-manager/print-manager.fix.build.against.cups22.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
diff --git a/source/kde/patch/print-manager/print-manager.fix.build.against.cups22.diff b/source/kde/patch/print-manager/print-manager.fix.build.against.cups22.diff
deleted file mode 100644
index 53010fba..00000000
--- a/source/kde/patch/print-manager/print-manager.fix.build.against.cups22.diff
+++ /dev/null
@@ -1,24 +0,0 @@
-From=20971e75934bc64627226d61565f68aff3c9b0000b Mon Sep 17 00:00:00 2001
-From: Rex Dieter <rdieter@math.unl.edu>
-Date: Mon, 12 Sep 2016 11:58:12 -0500
-Subject: [PATCH] fix FTBFS against cups-2.2
-
-cupsGetPPD2 moved to cups/ppd.h
-
-BUG: 366483
-FIXED-IN: 16.08.2
----
- libkcups/KCupsRequest.cpp | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/libkcups/KCupsRequest.cpp b/libkcups/KCupsRequest.cpp
-index 39a5cf5..3625bec 100644
---- a/libkcups/KCupsRequest.cpp
-+++ b/libkcups/KCupsRequest.cpp
-@@ -29,6 +29,7 @@
- #include <QStringBuilder>
-
- #include <cups/adminutil.h>
-+#include <cups/ppd.h>
-
- #define CUPS_DATADIR "/usr/share/cups"
diff --git a/source/kde/patch/pykde4.patch b/source/kde/patch/pykde4.patch
deleted file mode 100644
index 68be53e8..00000000
--- a/source/kde/patch/pykde4.patch
+++ /dev/null
@@ -1,6 +0,0 @@
-zcat $CWD/patch/pykde4/pykde4.solid.cmake.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-zcat $CWD/patch/pykde4/0003-Fix-build-with-sip-4.19.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-zcat $CWD/patch/pykde4/fix_kpythonpluginfactory_build.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-zcat $CWD/patch/pykde4/Annotate-KAutoMount-as-Abstract.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-zcat $CWD/patch/pykde4/pykde4-4.14.3-checkstate-sip-4.19.5.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-zcat $CWD/patch/pykde4/0004-Fix-build-with-sip-4.19.16.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
diff --git a/source/kde/patch/pykde4/0003-Fix-build-with-sip-4.19.patch b/source/kde/patch/pykde4/0003-Fix-build-with-sip-4.19.patch
deleted file mode 100644
index 61ef78df..00000000
--- a/source/kde/patch/pykde4/0003-Fix-build-with-sip-4.19.patch
+++ /dev/null
@@ -1,599 +0,0 @@
-From 2d1eadf5d0148c88cb4393993f0269e196cbe7b1 Mon Sep 17 00:00:00 2001
-From: Johannes Huber <johu@gentoo.org>
-Date: Mon, 9 Jan 2017 11:52:12 +0100
-Subject: [PATCH 3/3] Fix build with sip 4.19
-
-REVIEW: 129799
----
- sip/dnssd/remoteservice.sip | 10 +++++-----
- sip/kdecore/kmimetype.sip | 10 +++++-----
- sip/kdecore/ksharedconfig.sip | 4 ++--
- sip/kdecore/ksycocaentry.sip | 10 +++++-----
- sip/kdecore/typedefs.sip | 30 +++++++++++++++---------------
- sip/kdeui/kcompletion.sip | 10 +++++-----
- sip/kdeui/kxmlguibuilder.sip | 4 ++--
- sip/kio/kservicegroup.sip | 10 +++++-----
- sip/ktexteditor/markinterface.sip | 10 +++++-----
- sip/phonon/objectdescription.sip | 10 +++++-----
- sip/soprano/pluginmanager.sip | 30 +++++++++++++++---------------
- 11 files changed, 69 insertions(+), 69 deletions(-)
-
-diff --git a/sip/dnssd/remoteservice.sip b/sip/dnssd/remoteservice.sip
-index 5c5397a..44db887 100644
---- a/sip/dnssd/remoteservice.sip
-+++ b/sip/dnssd/remoteservice.sip
-@@ -66,7 +66,7 @@ protected:
- DNSSD::RemoteService::Ptr *t = new DNSSD::RemoteService::Ptr (sipCpp->at(i));
- PyObject *tobj;
-
-- if ((tobj = sipConvertFromNewInstance(t->data(), sipClass_DNSSD_RemoteService, sipTransferObj)) == NULL)
-+ if ((tobj = sipConvertFromNewType(t->data(), sipType_DNSSD_RemoteService, sipTransferObj)) == NULL)
- {
- Py_DECREF(l);
- delete t;
-@@ -88,7 +88,7 @@ protected:
- return 0;
-
- for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i)
-- if (!sipCanConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_DNSSD_RemoteService, SIP_NOT_NONE))
-+ if (!sipCanConvertToType(PyList_GET_ITEM(sipPy, i), sipType_DNSSD_RemoteService, SIP_NOT_NONE))
- return 0;
-
- return 1;
-@@ -99,11 +99,11 @@ protected:
- for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i)
- {
- int state;
-- DNSSD::RemoteService *t = reinterpret_cast<DNSSD::RemoteService *>(sipConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_DNSSD_RemoteService, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
-+ DNSSD::RemoteService *t = reinterpret_cast<DNSSD::RemoteService *>(sipConvertToType(PyList_GET_ITEM(sipPy, i), sipType_DNSSD_RemoteService, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
-
- if (*sipIsErr)
- {
-- sipReleaseInstance(t, sipClass_DNSSD_RemoteService, state);
-+ sipReleaseType(t, sipType_DNSSD_RemoteService, state);
-
- delete ql;
- return 0;
-@@ -113,7 +113,7 @@ protected:
-
- ql->append(*tptr);
-
-- sipReleaseInstance(t, sipClass_DNSSD_RemoteService, state);
-+ sipReleaseType(t, sipType_DNSSD_RemoteService, state);
- }
-
- *sipCppPtr = ql;
-diff --git a/sip/kdecore/kmimetype.sip b/sip/kdecore/kmimetype.sip
-index b2d21f7..2945210 100644
---- a/sip/kdecore/kmimetype.sip
-+++ b/sip/kdecore/kmimetype.sip
-@@ -100,7 +100,7 @@ public:
- KMimeType::Ptr *t = new KMimeType::Ptr (sipCpp->at(i));
- PyObject *tobj;
-
-- if ((tobj = sipConvertFromNewInstance(t->data(), sipClass_KMimeType, sipTransferObj)) == NULL)
-+ if ((tobj = sipConvertFromNewType(t->data(), sipType_KMimeType, sipTransferObj)) == NULL)
- {
- Py_DECREF(l);
- delete t;
-@@ -122,7 +122,7 @@ public:
- return 0;
-
- for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i)
-- if (!sipCanConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_KMimeType, SIP_NOT_NONE))
-+ if (!sipCanConvertToType(PyList_GET_ITEM(sipPy, i), sipType_KMimeType, SIP_NOT_NONE))
- return 0;
-
- return 1;
-@@ -133,11 +133,11 @@ public:
- for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i)
- {
- int state;
-- KMimeType *t = reinterpret_cast<KMimeType *>(sipConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_KMimeType, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
-+ KMimeType *t = reinterpret_cast<KMimeType *>(sipConvertToType(PyList_GET_ITEM(sipPy, i), sipType_KMimeType, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
-
- if (*sipIsErr)
- {
-- sipReleaseInstance(t, sipClass_KMimeType, state);
-+ sipReleaseType(t, sipType_KMimeType, state);
-
- delete ql;
- return 0;
-@@ -147,7 +147,7 @@ public:
-
- ql->append(*tptr);
-
-- sipReleaseInstance(t, sipClass_KMimeType, state);
-+ sipReleaseType(t, sipType_KMimeType, state);
- }
-
- *sipCppPtr = ql;
-diff --git a/sip/kdecore/ksharedconfig.sip b/sip/kdecore/ksharedconfig.sip
-index 54b1599..9442d80 100644
---- a/sip/kdecore/ksharedconfig.sip
-+++ b/sip/kdecore/ksharedconfig.sip
-@@ -65,7 +65,7 @@ typedef KSharedConfig::Ptr KSharedConfigPtr;
- KSharedConfigPtr kcpp = *sipCpp;
- KSharedConfig *ksc = kcpp.data ();
- ksc->ref.ref();
-- PyObject *pyKsc = sipConvertFromInstance(ksc, sipClass_KSharedConfig, sipTransferObj);
-+ PyObject *pyKsc = sipConvertFromType(ksc, sipType_KSharedConfig, sipTransferObj);
- return pyKsc;
- %End
-
-@@ -74,7 +74,7 @@ typedef KSharedConfig::Ptr KSharedConfigPtr;
- return 1;
-
- int state;
-- KSharedConfig* ksc = (KSharedConfig *)sipConvertToInstance(sipPy, sipClass_KSharedConfig, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr);
-+ KSharedConfig* ksc = (KSharedConfig *)sipConvertToType(sipPy, sipType_KSharedConfig, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr);
- *sipCppPtr = new KSharedConfigPtr (ksc);
- ksc->ref.deref();
- return sipGetState(sipTransferObj);
-diff --git a/sip/kdecore/ksycocaentry.sip b/sip/kdecore/ksycocaentry.sip
-index 4632e4a..ceb85fa 100644
---- a/sip/kdecore/ksycocaentry.sip
-+++ b/sip/kdecore/ksycocaentry.sip
-@@ -83,7 +83,7 @@ private:
- KSycocaEntry::Ptr *t = new KSycocaEntry::Ptr (sipCpp->at(i));
- PyObject *tobj;
-
-- if ((tobj = sipConvertFromNewInstance(t->data(), sipClass_KSycocaEntry, sipTransferObj)) == NULL)
-+ if ((tobj = sipConvertFromNewType(t->data(), sipType_KSycocaEntry, sipTransferObj)) == NULL)
- {
- Py_DECREF(l);
- delete t;
-@@ -105,7 +105,7 @@ private:
- return 0;
-
- for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i)
-- if (!sipCanConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_KSycocaEntry, SIP_NOT_NONE))
-+ if (!sipCanConvertToType(PyList_GET_ITEM(sipPy, i), sipType_KSycocaEntry, SIP_NOT_NONE))
- return 0;
-
- return 1;
-@@ -116,11 +116,11 @@ private:
- for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i)
- {
- int state;
-- KSycocaEntry *t = reinterpret_cast<KSycocaEntry *>(sipConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_KSycocaEntry, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
-+ KSycocaEntry *t = reinterpret_cast<KSycocaEntry *>(sipConvertToType(PyList_GET_ITEM(sipPy, i), sipType_KSycocaEntry, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
-
- if (*sipIsErr)
- {
-- sipReleaseInstance(t, sipClass_KSycocaEntry, state);
-+ sipReleaseType(t, sipType_KSycocaEntry, state);
-
- delete ql;
- return 0;
-@@ -130,7 +130,7 @@ private:
-
- ql->append(*tptr);
-
-- sipReleaseInstance(t, sipClass_KSycocaEntry, state);
-+ sipReleaseType(t, sipType_KSycocaEntry, state);
- }
-
- *sipCppPtr = ql;
-diff --git a/sip/kdecore/typedefs.sip b/sip/kdecore/typedefs.sip
-index af53f85..23956b7 100644
---- a/sip/kdecore/typedefs.sip
-+++ b/sip/kdecore/typedefs.sip
-@@ -397,8 +397,8 @@ template <TYPE1,TYPE2>
- TYPE1 *t1 = new TYPE1(i.key());
- TYPE2 *t2 = new TYPE2(i.value());
-
-- PyObject *t1obj = sipConvertFromNewInstance(t1, sipClass_TYPE1, sipTransferObj);
-- PyObject *t2obj = sipConvertFromNewInstance(t2, sipClass_TYPE2, sipTransferObj);
-+ PyObject *t1obj = sipConvertFromNewType(t1, sipType_TYPE1, sipTransferObj);
-+ PyObject *t2obj = sipConvertFromNewType(t2, sipType_TYPE2, sipTransferObj);
-
- if (t1obj == NULL || t2obj == NULL || PyDict_SetItem(d, t1obj, t2obj) < 0)
- {
-@@ -438,10 +438,10 @@ template <TYPE1,TYPE2>
-
- while (PyDict_Next(sipPy, &i, &t1obj, &t2obj))
- {
-- if (!sipCanConvertToInstance(t1obj, sipClass_TYPE1, SIP_NOT_NONE))
-+ if (!sipCanConvertToType(t1obj, sipType_TYPE1, SIP_NOT_NONE))
- return 0;
-
-- if (!sipCanConvertToInstance(t2obj, sipClass_TYPE2, SIP_NOT_NONE))
-+ if (!sipCanConvertToType(t2obj, sipType_TYPE2, SIP_NOT_NONE))
- return 0;
- }
-
-@@ -454,13 +454,13 @@ template <TYPE1,TYPE2>
- {
- int state1, state2;
-
-- TYPE1 *t1 = reinterpret_cast<TYPE1 *>(sipConvertToInstance(t1obj, sipClass_TYPE1, sipTransferObj, SIP_NOT_NONE, &state1, sipIsErr));
-- TYPE2 *t2 = reinterpret_cast<TYPE2 *>(sipConvertToInstance(t2obj, sipClass_TYPE2, sipTransferObj, SIP_NOT_NONE, &state2, sipIsErr));
-+ TYPE1 *t1 = reinterpret_cast<TYPE1 *>(sipConvertToType(t1obj, sipType_TYPE1, sipTransferObj, SIP_NOT_NONE, &state1, sipIsErr));
-+ TYPE2 *t2 = reinterpret_cast<TYPE2 *>(sipConvertToType(t2obj, sipType_TYPE2, sipTransferObj, SIP_NOT_NONE, &state2, sipIsErr));
-
- if (*sipIsErr)
- {
-- sipReleaseInstance(t1, sipClass_TYPE1, state1);
-- sipReleaseInstance(t2, sipClass_TYPE2, state2);
-+ sipReleaseType(t1, sipType_TYPE1, state1);
-+ sipReleaseType(t2, sipType_TYPE2, state2);
-
- delete qm;
- return 0;
-@@ -468,8 +468,8 @@ template <TYPE1,TYPE2>
-
- qm->insert(*t1, *t2);
-
-- sipReleaseInstance(t1, sipClass_TYPE1, state1);
-- sipReleaseInstance(t2, sipClass_TYPE2, state2);
-+ sipReleaseType(t1, sipType_TYPE1, state1);
-+ sipReleaseType(t2, sipType_TYPE2, state2);
- }
-
- *sipCppPtr = qm;
-@@ -669,7 +669,7 @@ template <TYPE*>
- TYPE *t = (TYPE *)(sipCpp->at(i));
- PyObject *tobj;
-
-- if ((tobj = sipConvertFromNewInstance(t, sipClass_TYPE, sipTransferObj)) == NULL)
-+ if ((tobj = sipConvertFromNewType(t, sipType_TYPE, sipTransferObj)) == NULL)
- {
- Py_DECREF(l);
- delete t;
-@@ -691,7 +691,7 @@ template <TYPE*>
- return 0;
-
- for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i)
-- if (!sipCanConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_TYPE, SIP_NOT_NONE))
-+ if (!sipCanConvertToType(PyList_GET_ITEM(sipPy, i), sipType_TYPE, SIP_NOT_NONE))
- return 0;
-
- return 1;
-@@ -702,11 +702,11 @@ template <TYPE*>
- for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i)
- {
- int state;
-- TYPE *t = reinterpret_cast<TYPE *>(sipConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_TYPE, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
-+ TYPE *t = reinterpret_cast<TYPE *>(sipConvertToType(PyList_GET_ITEM(sipPy, i), sipType_TYPE, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
-
- if (*sipIsErr)
- {
-- sipReleaseInstance(t, sipClass_TYPE, state);
-+ sipReleaseType(t, sipType_TYPE, state);
-
- delete qv;
- return 0;
-@@ -714,7 +714,7 @@ template <TYPE*>
-
- qv->append(t);
-
-- sipReleaseInstance(t, sipClass_TYPE, state);
-+ sipReleaseType(t, sipType_TYPE, state);
- }
-
- *sipCppPtr = qv;
-diff --git a/sip/kdeui/kcompletion.sip b/sip/kdeui/kcompletion.sip
-index f1d327f..938506a 100644
---- a/sip/kdeui/kcompletion.sip
-+++ b/sip/kdeui/kcompletion.sip
-@@ -176,7 +176,7 @@ public:
- #else
- PyObject *kobj = PyInt_FromLong((int)i.key());
- #endif
-- PyObject *tobj = sipConvertFromNewInstance(t, sipClass_KShortcut, sipTransferObj);
-+ PyObject *tobj = sipConvertFromNewType(t, sipType_KShortcut, sipTransferObj);
-
- if (kobj == NULL || tobj == NULL || PyDict_SetItem(d, kobj, tobj) < 0)
- {
-@@ -213,7 +213,7 @@ public:
- return 0;
-
- while (PyDict_Next(sipPy, &i, &kobj, &tobj))
-- if (!sipCanConvertToInstance(tobj, sipClass_KShortcut, SIP_NOT_NONE))
-+ if (!sipCanConvertToType(tobj, sipType_KShortcut, SIP_NOT_NONE))
- return 0;
-
- return 1;
-@@ -229,11 +229,11 @@ public:
- #else
- int k = PyInt_AsLong(kobj);
- #endif
-- KShortcut *t = reinterpret_cast<KShortcut *>(sipConvertToInstance(tobj, sipClass_KShortcut, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
-+ KShortcut *t = reinterpret_cast<KShortcut *>(sipConvertToType(tobj, sipType_KShortcut, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
-
- if (*sipIsErr)
- {
-- sipReleaseInstance(t, sipClass_KShortcut, state);
-+ sipReleaseType(t, sipType_KShortcut, state);
-
- delete qm;
- return 0;
-@@ -241,7 +241,7 @@ public:
-
- qm->insert((KCompletionBase::KeyBindingType)k, *t);
-
-- sipReleaseInstance(t, sipClass_KShortcut, state);
-+ sipReleaseType(t, sipType_KShortcut, state);
- }
-
- *sipCppPtr = qm;
-diff --git a/sip/kdeui/kxmlguibuilder.sip b/sip/kdeui/kxmlguibuilder.sip
-index 41ae2aa..e4cf187 100644
---- a/sip/kdeui/kxmlguibuilder.sip
-+++ b/sip/kdeui/kxmlguibuilder.sip
-@@ -49,10 +49,10 @@ QAction *containerAction;
- PyObject *pyWidget;
- PyObject *pyContainerAction;
-
-- if ((pyWidget = sipConvertFromNewInstance(res, sipClass_QWidget, NULL)) == NULL)
-+ if ((pyWidget = sipConvertFromNewType(res, sipType_QWidget, NULL)) == NULL)
- return NULL;
-
-- if ((pyContainerAction = sipConvertFromNewInstance(containerAction, sipClass_QAction, NULL)) == NULL)
-+ if ((pyContainerAction = sipConvertFromNewType(containerAction, sipType_QAction, NULL)) == NULL)
- return NULL;
-
- sipRes = Py_BuildValue ("NN", pyWidget, pyContainerAction);
-diff --git a/sip/kio/kservicegroup.sip b/sip/kio/kservicegroup.sip
-index a1ef981..1ddce37 100644
---- a/sip/kio/kservicegroup.sip
-+++ b/sip/kio/kservicegroup.sip
-@@ -151,7 +151,7 @@ public:
- KServiceGroup::SPtr *t = new KServiceGroup::SPtr (sipCpp->at(i));
- PyObject *tobj;
-
-- if ((tobj = sipConvertFromNewInstance(t->data(), sipClass_KServiceGroup, sipTransferObj)) == NULL)
-+ if ((tobj = sipConvertFromNewType(t->data(), sipType_KServiceGroup, sipTransferObj)) == NULL)
- {
- Py_DECREF(l);
- delete t;
-@@ -173,7 +173,7 @@ public:
- return 0;
-
- for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i)
-- if (!sipCanConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_KServiceGroup, SIP_NOT_NONE))
-+ if (!sipCanConvertToType(PyList_GET_ITEM(sipPy, i), sipType_KServiceGroup, SIP_NOT_NONE))
- return 0;
-
- return 1;
-@@ -184,11 +184,11 @@ public:
- for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i)
- {
- int state;
-- KServiceGroup *t = reinterpret_cast<KServiceGroup *>(sipConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_KServiceGroup, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
-+ KServiceGroup *t = reinterpret_cast<KServiceGroup *>(sipConvertToType(PyList_GET_ITEM(sipPy, i), sipType_KServiceGroup, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
-
- if (*sipIsErr)
- {
-- sipReleaseInstance(t, sipClass_KServiceGroup, state);
-+ sipReleaseType(t, sipType_KServiceGroup, state);
-
- delete ql;
- return 0;
-@@ -198,7 +198,7 @@ public:
-
- ql->append(*tptr);
-
-- sipReleaseInstance(t, sipClass_KServiceGroup, state);
-+ sipReleaseType(t, sipType_KServiceGroup, state);
- }
-
- *sipCppPtr = ql;
-diff --git a/sip/ktexteditor/markinterface.sip b/sip/ktexteditor/markinterface.sip
-index d9b0ec9..888c506 100644
---- a/sip/ktexteditor/markinterface.sip
-+++ b/sip/ktexteditor/markinterface.sip
-@@ -158,7 +158,7 @@ signals:
- #else
- PyObject *t1obj = PyInt_FromLong ((long)t1);
- #endif
-- PyObject *t2obj = sipConvertFromNewInstance(t2, sipClass_KTextEditor_Mark, sipTransferObj);
-+ PyObject *t2obj = sipConvertFromNewType(t2, sipType_KTextEditor_Mark, sipTransferObj);
-
- if (t2obj == NULL || PyDict_SetItem(d, t1obj, t2obj) < 0)
- {
-@@ -203,7 +203,7 @@ signals:
- #endif
- return 0;
-
-- if (!sipCanConvertToInstance(t2obj, sipClass_KTextEditor_Mark, SIP_NOT_NONE))
-+ if (!sipCanConvertToType(t2obj, sipType_KTextEditor_Mark, SIP_NOT_NONE))
- return 0;
- }
-
-@@ -221,11 +221,11 @@ signals:
- #else
- int t1 = PyInt_AS_LONG (t1obj);
- #endif
-- KTextEditor::Mark *t2 = reinterpret_cast<KTextEditor::Mark *>(sipConvertToInstance(t2obj, sipClass_KTextEditor_Mark, sipTransferObj, SIP_NOT_NONE, &state2, sipIsErr));
-+ KTextEditor::Mark *t2 = reinterpret_cast<KTextEditor::Mark *>(sipConvertToType(t2obj, sipType_KTextEditor_Mark, sipTransferObj, SIP_NOT_NONE, &state2, sipIsErr));
-
- if (*sipIsErr)
- {
-- sipReleaseInstance(t2, sipClass_KTextEditor_Mark, state2);
-+ sipReleaseType(t2, sipType_KTextEditor_Mark, state2);
-
- delete qm;
- return 0;
-@@ -233,7 +233,7 @@ signals:
-
- qm->insert(t1, t2);
-
-- sipReleaseInstance(t2, sipClass_KTextEditor_Mark, state2);
-+ sipReleaseType(t2, sipType_KTextEditor_Mark, state2);
- }
-
- *sipCppPtr = qm;
-diff --git a/sip/phonon/objectdescription.sip b/sip/phonon/objectdescription.sip
-index 2b86d5e..015b2ef 100644
---- a/sip/phonon/objectdescription.sip
-+++ b/sip/phonon/objectdescription.sip
-@@ -116,7 +116,7 @@ void registerMetaTypes ();
- DNSSD::RemoteService::Ptr *t = new Phonon::ObjectDescription (sipCpp->at(i));
- PyObject *tobj;
-
-- if ((tobj = sipConvertFromNewInstance(t->data(), sipClass_DNSSD_RemoteService, sipTransferObj)) == NULL)
-+ if ((tobj = sipConvertFromNewType(t->data(), sipType_DNSSD_RemoteService, sipTransferObj)) == NULL)
- {
- Py_DECREF(l);
- delete t;
-@@ -138,7 +138,7 @@ void registerMetaTypes ();
- return 0;
-
- for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i)
-- if (!sipCanConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_DNSSD_RemoteService, SIP_NOT_NONE))
-+ if (!sipCanConvertToType(PyList_GET_ITEM(sipPy, i), sipType_DNSSD_RemoteService, SIP_NOT_NONE))
- return 0;
-
- return 1;
-@@ -149,11 +149,11 @@ void registerMetaTypes ();
- for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i)
- {
- int state;
-- DNSSD::RemoteService *t = reinterpret_cast<DNSSD::RemoteService *>(sipConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_DNSSD_RemoteService, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
-+ DNSSD::RemoteService *t = reinterpret_cast<DNSSD::RemoteService *>(sipConvertToType(PyList_GET_ITEM(sipPy, i), sipType_DNSSD_RemoteService, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
-
- if (*sipIsErr)
- {
-- sipReleaseInstance(t, sipClass_DNSSD_RemoteService, state);
-+ sipReleaseType(t, sipType_DNSSD_RemoteService, state);
-
- delete ql;
- return 0;
-@@ -163,7 +163,7 @@ void registerMetaTypes ();
-
- ql->append(*tptr);
-
-- sipReleaseInstance(t, sipClass_DNSSD_RemoteService, state);
-+ sipReleaseType(t, sipType_DNSSD_RemoteService, state);
- }
-
- *sipCppPtr = ql;
-diff --git a/sip/soprano/pluginmanager.sip b/sip/soprano/pluginmanager.sip
-index c2be1c3..fe990f8 100644
---- a/sip/soprano/pluginmanager.sip
-+++ b/sip/soprano/pluginmanager.sip
-@@ -73,7 +73,7 @@ public:
- Soprano::Backend* t = const_cast<Soprano::Backend*>(sipCpp->at(i));
- PyObject *tobj;
-
-- if ((tobj = sipConvertFromInstance(t, sipClass_Soprano_Backend, sipTransferObj)) == NULL)
-+ if ((tobj = sipConvertFromType(t, sipType_Soprano_Backend, sipTransferObj)) == NULL)
- {
- Py_DECREF(l);
- return NULL;
-@@ -93,7 +93,7 @@ public:
- return 0;
-
- for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i)
-- if (!sipCanConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_Soprano_Backend, SIP_NOT_NONE))
-+ if (!sipCanConvertToType(PyList_GET_ITEM(sipPy, i), sipType_Soprano_Backend, SIP_NOT_NONE))
- return 0;
-
- return 1;
-@@ -104,18 +104,18 @@ public:
- for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i)
- {
- int state;
-- const Soprano::Backend*t = reinterpret_cast<const Soprano::Backend*>(sipConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_Soprano_Backend, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
-+ const Soprano::Backend*t = reinterpret_cast<const Soprano::Backend*>(sipConvertToType(PyList_GET_ITEM(sipPy, i), sipType_Soprano_Backend, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
-
- if (*sipIsErr)
- {
-- sipReleaseInstance(const_cast<Soprano::Backend*>(t), sipClass_Soprano_Backend, state);
-+ sipReleaseType(const_cast<Soprano::Backend*>(t), sipType_Soprano_Backend, state);
-
- delete ql;
- return 0;
- }
- ql->append(t);
-
-- sipReleaseInstance(const_cast<Soprano::Backend*>(t), sipClass_Soprano_Backend, state);
-+ sipReleaseType(const_cast<Soprano::Backend*>(t), sipType_Soprano_Backend, state);
- }
-
- *sipCppPtr = ql;
-@@ -144,7 +144,7 @@ public:
- Soprano::Parser* t = const_cast<Soprano::Parser*>(sipCpp->at(i));
- PyObject *tobj;
-
-- if ((tobj = sipConvertFromInstance(t, sipClass_Soprano_Parser, sipTransferObj)) == NULL)
-+ if ((tobj = sipConvertFromType(t, sipType_Soprano_Parser, sipTransferObj)) == NULL)
- {
- Py_DECREF(l);
- return NULL;
-@@ -164,7 +164,7 @@ public:
- return 0;
-
- for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i)
-- if (!sipCanConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_Soprano_Parser, SIP_NOT_NONE))
-+ if (!sipCanConvertToType(PyList_GET_ITEM(sipPy, i), sipType_Soprano_Parser, SIP_NOT_NONE))
- return 0;
-
- return 1;
-@@ -175,18 +175,18 @@ public:
- for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i)
- {
- int state;
-- const Soprano::Parser*t = reinterpret_cast<const Soprano::Parser*>(sipConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_Soprano_Parser, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
-+ const Soprano::Parser*t = reinterpret_cast<const Soprano::Parser*>(sipConvertToType(PyList_GET_ITEM(sipPy, i), sipType_Soprano_Parser, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
-
- if (*sipIsErr)
- {
-- sipReleaseInstance(const_cast<Soprano::Parser*>(t), sipClass_Soprano_Parser, state);
-+ sipReleaseType(const_cast<Soprano::Parser*>(t), sipType_Soprano_Parser, state);
-
- delete ql;
- return 0;
- }
- ql->append(t);
-
-- sipReleaseInstance(const_cast<Soprano::Parser*>(t), sipClass_Soprano_Parser, state);
-+ sipReleaseType(const_cast<Soprano::Parser*>(t), sipType_Soprano_Parser, state);
- }
-
- *sipCppPtr = ql;
-@@ -215,7 +215,7 @@ public:
- Soprano::Serializer* t = const_cast<Soprano::Serializer*>(sipCpp->at(i));
- PyObject *tobj;
-
-- if ((tobj = sipConvertFromInstance(t, sipClass_Soprano_Serializer, sipTransferObj)) == NULL)
-+ if ((tobj = sipConvertFromType(t, sipType_Soprano_Serializer, sipTransferObj)) == NULL)
- {
- Py_DECREF(l);
- return NULL;
-@@ -235,7 +235,7 @@ public:
- return 0;
-
- for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i)
-- if (!sipCanConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_Soprano_Serializer, SIP_NOT_NONE))
-+ if (!sipCanConvertToType(PyList_GET_ITEM(sipPy, i), sipType_Soprano_Serializer, SIP_NOT_NONE))
- return 0;
-
- return 1;
-@@ -246,18 +246,18 @@ public:
- for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i)
- {
- int state;
-- const Soprano::Serializer*t = reinterpret_cast<const Soprano::Serializer*>(sipConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_Soprano_Serializer, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
-+ const Soprano::Serializer*t = reinterpret_cast<const Soprano::Serializer*>(sipConvertToType(PyList_GET_ITEM(sipPy, i), sipType_Soprano_Serializer, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
-
- if (*sipIsErr)
- {
-- sipReleaseInstance(const_cast<Soprano::Serializer*>(t), sipClass_Soprano_Serializer, state);
-+ sipReleaseType(const_cast<Soprano::Serializer*>(t), sipType_Soprano_Serializer, state);
-
- delete ql;
- return 0;
- }
- ql->append(t);
-
-- sipReleaseInstance(const_cast<Soprano::Serializer*>(t), sipClass_Soprano_Serializer, state);
-+ sipReleaseType(const_cast<Soprano::Serializer*>(t), sipType_Soprano_Serializer, state);
- }
-
- *sipCppPtr = ql;
---
-2.9.3
-
diff --git a/source/kde/patch/pykde4/0004-Fix-build-with-sip-4.19.16.patch b/source/kde/patch/pykde4/0004-Fix-build-with-sip-4.19.16.patch
deleted file mode 100644
index a67888c8..00000000
--- a/source/kde/patch/pykde4/0004-Fix-build-with-sip-4.19.16.patch
+++ /dev/null
@@ -1,18 +0,0 @@
---- ./sip/kdecore/typedefs.sip.orig 2014-08-14 15:17:11.000000000 -0500
-+++ ./sip/kdecore/typedefs.sip 2019-07-31 14:22:50.591053652 -0500
-@@ -23,7 +23,7 @@
-
- typedef long time_t;
-
--typedef ulong size_t;
-+// typedef ulong size_t;
-
- typedef int ssize_t;
-
-@@ -1028,4 +1028,4 @@
- return sipGetState(sipTransferObj);
- %End
- };
--%End
-\ No newline at end of file
-+%End
diff --git a/source/kde/patch/pykde4/Annotate-KAutoMount-as-Abstract.patch b/source/kde/patch/pykde4/Annotate-KAutoMount-as-Abstract.patch
deleted file mode 100644
index 1cee8e79..00000000
--- a/source/kde/patch/pykde4/Annotate-KAutoMount-as-Abstract.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff -ur pykde4-4.14.3.old/sip/kio/kautomount.sip pykde4-4.14.3/sip/kio/kautomount.sip
---- pykde4-4.14.3.old/sip/kio/kautomount.sip 2014-08-14 22:17:11.000000000 +0200
-+++ pykde4-4.14.3/sip/kio/kautomount.sip 2017-02-25 19:17:16.511589230 +0100
-@@ -20,7 +20,7 @@
- // along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-
--class KAutoMount : QObject
-+class KAutoMount : QObject /Abstract/
- {
- %TypeHeaderCode
- #include <kautomount.h>
-@@ -42,7 +42,7 @@
- // KAutoMount
-
-
--class KAutoUnmount : QObject
-+class KAutoUnmount : QObject /Abstract/
- {
- %TypeHeaderCode
- #include <kautomount.h>
diff --git a/source/kde/patch/pykde4/fix_kpythonpluginfactory_build.diff b/source/kde/patch/pykde4/fix_kpythonpluginfactory_build.diff
deleted file mode 100644
index 71f5928c..00000000
--- a/source/kde/patch/pykde4/fix_kpythonpluginfactory_build.diff
+++ /dev/null
@@ -1,26 +0,0 @@
-From: Modestas Vainius <modax@debian.org>
-Subject: Include Python.h first as Qt includes steal "slots" keyword
-Forwarded: no
-Origin: vendor
-Last-Update: 2008-12-05
-
-Index: pykde4-4.9.80/kpythonpluginfactory/kpythonpluginfactory.cpp
-===================================================================
---- pykde4-4.9.80.orig/kpythonpluginfactory/kpythonpluginfactory.cpp 2012-11-14 16:14:05.000000000 +0000
-+++ pykde4-4.9.80/kpythonpluginfactory/kpythonpluginfactory.cpp 2012-11-19 17:23:32.497203781 +0000
-@@ -18,6 +18,7 @@
- Boston, MA 02111-1307, USA.
- */
-
-+#include <Python.h>
- #include <QtCore/QCoreApplication>
- #include <QFileInfo>
- #include <QDir>
-@@ -25,7 +26,6 @@
- #include <klibloader.h>
- #include <kstandarddirs.h>
- #include <kcmodule.h>
--#include <Python.h>
- #include <kcomponentdata.h>
- #include <kdebug.h>
-
diff --git a/source/kde/patch/pykde4/pykde4-4.14.3-checkstate-sip-4.19.5.patch b/source/kde/patch/pykde4/pykde4-4.14.3-checkstate-sip-4.19.5.patch
deleted file mode 100644
index ffc5384d..00000000
--- a/source/kde/patch/pykde4/pykde4-4.14.3-checkstate-sip-4.19.5.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-diff -up pykde4-4.14.3/sip/kdeui/kfontchooser.sip.me pykde4-4.14.3/sip/kdeui/kfontchooser.sip
---- pykde4-4.14.3/sip/kdeui/kfontchooser.sip.me 2018-01-17 13:16:50.738465947 +0100
-+++ pykde4-4.14.3/sip/kdeui/kfontchooser.sip 2018-01-17 13:28:24.665226258 +0100
-@@ -59,7 +59,7 @@ public:
-
- typedef QFlags<KFontChooser::DisplayFlag> DisplayFlags;
-
-- explicit KFontChooser (QWidget* parent /TransferThis/ = 0, const KFontChooser::DisplayFlags& flags = KFontChooser::DisplayFrame, const QStringList& fontList = QStringList(), int visibleListSize = 8, Qt::CheckState* sizeIsRelativeState = 0) [(QWidget* = 0, const KFontChooser::DisplayFlags& = KFontChooser::DisplayFrame, const QStringList& = QStringList(), int = 8, Qt::CheckState* = 0)];
-+ explicit KFontChooser (QWidget* parent /TransferThis/ = 0, const KFontChooser::DisplayFlags& flags = KFontChooser::DisplayFrame, const QStringList& fontList = QStringList(), int visibleListSize = 8, Qt::CheckState sizeIsRelativeState = Qt::Unchecked) [(QWidget* = 0, const KFontChooser::DisplayFlags& = KFontChooser::DisplayFrame, const QStringList& = QStringList(), int = 8, Qt::CheckState* = 0)];
- %MethodCode
- Py_BEGIN_ALLOW_THREADS
- sipCpp = new sipKFontChooser (a0, *a1, *a2, a3, &a4);
-diff -up pykde4-4.14.3/sip/kdeui/kfontdialog.sip.me pykde4-4.14.3/sip/kdeui/kfontdialog.sip
---- pykde4-4.14.3/sip/kdeui/kfontdialog.sip.me 2018-01-17 13:18:31.112670465 +0100
-+++ pykde4-4.14.3/sip/kdeui/kfontdialog.sip 2018-01-17 13:28:00.121154351 +0100
-@@ -28,7 +28,7 @@ class KFontDialog : KDialog
-
-
- public:
-- explicit KFontDialog (QWidget* parent /TransferThis/ = 0, const KFontChooser::DisplayFlags& flags = KFontChooser::NoDisplayFlags, const QStringList& fontlist = QStringList(), Qt::CheckState* sizeIsRelativeState = 0) [(QWidget* = 0, const KFontChooser::DisplayFlags& = KFontChooser::NoDisplayFlags, const QStringList& = QStringList(), Qt::CheckState* = 0)];
-+ explicit KFontDialog (QWidget* parent /TransferThis/ = 0, const KFontChooser::DisplayFlags& flags = KFontChooser::NoDisplayFlags, const QStringList& fontlist = QStringList(), Qt::CheckState sizeIsRelativeState = Qt::Unchecked) [(QWidget* = 0, const KFontChooser::DisplayFlags& = KFontChooser::NoDisplayFlags, const QStringList& = QStringList(), Qt::CheckState* = 0)];
- %MethodCode
- Py_BEGIN_ALLOW_THREADS
- sipCpp= new sipKFontDialog (a0, *a1, *a2, &a3);
diff --git a/source/kde/patch/pykde4/pykde4.solid.cmake.diff b/source/kde/patch/pykde4/pykde4.solid.cmake.diff
deleted file mode 100644
index e4f6cdc7..00000000
--- a/source/kde/patch/pykde4/pykde4.solid.cmake.diff
+++ /dev/null
@@ -1,20 +0,0 @@
---- ./CMakeLists.txt.orig 2014-08-14 15:17:11.000000000 -0500
-+++ ./CMakeLists.txt 2016-09-07 14:32:28.115226093 -0500
-@@ -166,7 +166,7 @@
-
- file(GLOB kio_files_sip sip/kio/*.sip)
- set(SIP_EXTRA_FILES_DEPEND ${kio_files_sip})
--add_sip_python_module(PyKDE4.kio sip/kio/kiomod.sip ${KDE4_KIO_LIBS} ${KDE4_KFILE_LIBS})
-+add_sip_python_module(PyKDE4.kio sip/kio/kiomod.sip ${KDE4_KIO_LIBS} ${KDE4_KFILE_LIBS} ${KDE4_SOLID_LIBS})
-
- file(GLOB kutils_files_sip sip/kutils/*.sip)
- set(SIP_EXTRA_FILES_DEPEND ${kutils_files_sip})
-@@ -190,7 +190,7 @@
-
- file(GLOB dnssd_files_sip sip/dnssd/*.sip)
- set(SIP_EXTRA_FILES_DEPEND ${dnssd_files_sip})
--add_sip_python_module(PyKDE4.dnssd sip/dnssd/dnssdmod.sip ${KDE4_KDNSSD_LIBS} ${QT_QTCORE_LIBRARY})
-+add_sip_python_module(PyKDE4.dnssd sip/dnssd/dnssdmod.sip ${KDE4_KDNSSD_LIBS} ${QT_QTCORE_LIBRARY} ${QT_QTNETWORK_LIBRARY})
-
- file(GLOB phonon_files_sip sip/phonon/*.sip)
- set(SIP_EXTRA_FILES_DEPEND ${phonon_files_sip})
diff --git a/source/kde/patch/smokeqt.patch b/source/kde/patch/smokeqt.patch
deleted file mode 100644
index a39121d4..00000000
--- a/source/kde/patch/smokeqt.patch
+++ /dev/null
@@ -1 +0,0 @@
-zcat $CWD/patch/smokeqt/smokeqt.qscintilla2.uintptr_t.diff.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
diff --git a/source/kde/patch/smokeqt/smokeqt.qscintilla2.uintptr_t.diff b/source/kde/patch/smokeqt/smokeqt.qscintilla2.uintptr_t.diff
deleted file mode 100644
index 6f94fec5..00000000
--- a/source/kde/patch/smokeqt/smokeqt.qscintilla2.uintptr_t.diff
+++ /dev/null
@@ -1,7 +0,0 @@
---- ./qsci/qscintilla2_includes.h.orig 2013-11-24 10:25:24.000000000 -0600
-+++ ./qsci/qscintilla2_includes.h 2019-07-31 16:42:20.264301942 -0500
-@@ -1,3 +1,4 @@
-+#include <stdint.h> /* for uintptr_t */
- #include <qsciabstractapis.h>
- #include <qsciapis.h>
- #include <qscicommand.h>
diff --git a/source/kde/patch/strigi-multimedia.patch b/source/kde/patch/strigi-multimedia.patch
deleted file mode 100644
index 8b03abd2..00000000
--- a/source/kde/patch/strigi-multimedia.patch
+++ /dev/null
@@ -1,3 +0,0 @@
-# Fix build:
-zcat $CWD/patch/strigi-multimedia/strigi-multimedia_port.patch.gz | patch -p1 --verbose || { touch ${SLACK_KDE_BUILD_DIR}/${PKGNAME}.failed ; continue ; }
-
diff --git a/source/kde/patch/strigi-multimedia/strigi-multimedia_port.patch b/source/kde/patch/strigi-multimedia/strigi-multimedia_port.patch
deleted file mode 100644
index 21a29a03..00000000
--- a/source/kde/patch/strigi-multimedia/strigi-multimedia_port.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-diff -urB strigi-multimedia/CMakeLists.txt new/CMakeLists.txt
---- strigi-multimedia/CMakeLists.txt 2012-04-08 11:47:03.923386124 +0200
-+++ new/CMakeLists.txt 2012-04-08 12:29:05.807989600 +0200
-@@ -1,3 +1,5 @@
-+Project(strigi-multimedia)
-+
- set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake/)
- find_package(Qt4 REQUIRED)
- find_package(KDE4 REQUIRED)
-@@ -5,12 +7,10 @@
- include(MacroLibrary)
-
- include_directories(${KDE4_INCLUDES} ${QT_INCLUDES})
-+add_definitions (${QT_DEFINITIONS} ${KDE4_DEFINITIONS} )
-
- include(CheckIncludeFileCXX)
-
--message (STATUS "port strigi-analyzer !!!")
--if(KFILE_PLUGINS_PORTED)
--
- macro_optional_find_package(Theora)
- macro_log_feature(THEORA_FOUND "Theora" "A video codec intended for use within the Ogg's project's Ogg multimedia streaming system" "http://www.theora.org" FALSE "" "Required to build the Theora Strigi Analyzer.")
-
-@@ -35,5 +35,3 @@
- if (OGGVORBIS_FOUND)
- add_subdirectory(ogg)
- endif(OGGVORBIS_FOUND)
--
--endif(KFILE_PLUGINS_PORTED)