diff options
author | Andreas Sturmlechner <asturm@gentoo.org> | 2017-11-26 19:51:54 +0100 |
---|---|---|
committer | Andreas Sturmlechner <asturm@gentoo.org> | 2017-11-26 19:56:22 +0100 |
commit | 2dcff392b8f28d8eaa874c352873065ef70a9946 (patch) | |
tree | b78955087b8800eb0e62eff204ed8dd753c87a4d /kde-frameworks | |
parent | dev-lang/gnat-gpl: gnat-gpl-2017 stable (diff) | |
download | gentoo-2dcff392b8f28d8eaa874c352873065ef70a9946.tar.gz gentoo-2dcff392b8f28d8eaa874c352873065ef70a9946.tar.bz2 gentoo-2dcff392b8f28d8eaa874c352873065ef70a9946.zip |
kde-frameworks/kio: Fix mkpath with >=Qt-5.9.3
See also:
https://mail.kde.org/pipermail/kde-distro-packagers/2017-November/000297.html
Package-Manager: Portage-2.3.16, Repoman-2.3.6
Diffstat (limited to 'kde-frameworks')
-rw-r--r-- | kde-frameworks/kio/Manifest | 2 | ||||
-rw-r--r-- | kde-frameworks/kio/files/kio-5.40.0-mkpath-qt-5.9.3.patch | 65 | ||||
-rw-r--r-- | kde-frameworks/kio/kio-5.40.0-r1.ebuild | 80 |
3 files changed, 146 insertions, 1 deletions
diff --git a/kde-frameworks/kio/Manifest b/kde-frameworks/kio/Manifest index 6cdc8304cb1b..20bed421afaa 100644 --- a/kde-frameworks/kio/Manifest +++ b/kde-frameworks/kio/Manifest @@ -1,2 +1,2 @@ DIST kio-5.37.0.tar.xz 3084204 SHA256 49448ebcfe182805f8f9cd40c1e2c8e686578cc2e7fa3688204d5ca4e182ac5b SHA512 42b2cbf6cbc414a0b69fdb36984d13574b1aee033170761dc55835cace44abead82f387f8afb35d8a82ee93a1909854ef43cff29d45c5881c4b13ca8862d2a64 WHIRLPOOL 649b16ebf5708d410d826a70726a9fdfd3668e00784246e7cb4d193b1951525e821046121886580bc16004280170277ac0344d1ee18afb91722e095118b1ccd6 -DIST kio-5.40.0.tar.xz 3100424 SHA256 30ea0b231b995faaf4283b9c9ecfaffb589268f5d7b5b805f69ed95601ac389b SHA512 e35a7fed3c38f91c056d5ac04b4839ebbf199e4509187e997d6d8a217175a9dc442c7beacccf333ec092c0d110f8f008144293364006888f25b570d697c10bed WHIRLPOOL cfae3b3dc85f1398217c934943829dc28d2b7bfefe6d8adb5a082593f66127b313652b34278e6e4d612b266f7df8b03462a5ae8ac71af5685ad9641c08181b3a +DIST kio-5.40.0.tar.xz 3100424 BLAKE2B 27f69f10febc327d1f935e2b8f3c24dc8b64e85ef35830841f99fdefb6238f590dc8a1284bd0896d6e0e2eb86f123e6788ebd277ca208df18312e8ac475221dc SHA512 e35a7fed3c38f91c056d5ac04b4839ebbf199e4509187e997d6d8a217175a9dc442c7beacccf333ec092c0d110f8f008144293364006888f25b570d697c10bed diff --git a/kde-frameworks/kio/files/kio-5.40.0-mkpath-qt-5.9.3.patch b/kde-frameworks/kio/files/kio-5.40.0-mkpath-qt-5.9.3.patch new file mode 100644 index 000000000000..d9cf7402741d --- /dev/null +++ b/kde-frameworks/kio/files/kio-5.40.0-mkpath-qt-5.9.3.patch @@ -0,0 +1,65 @@ +From 2353119aae8f03565bc7779ed1d597d266f5afda Mon Sep 17 00:00:00 2001 +From: Elvis Angelaccio <elvis.angelaccio@kde.org> +Date: Thu, 16 Nov 2017 10:41:19 +0100 +Subject: Fix KIO::mkpath with qtbase 5.10 beta 4 + +Summary: +The latest Qt 5.10 beta includes [1] which breaks a bunch of unit tests, +since `url.setPath("//foo")` will now result in an invalid (empty) QUrl. + +This patch fixes the KIO::mkpath() case. + +[1]: http://code.qt.io/cgit/qt/qtbase.git/commit/?id=f62768d046528636789f901ac79e2cfa1843a7b7 + +Test Plan: + +* I can now create folders from dolphin and plasma. +* fileundomanagertest and mkpathjobtest no longer fail + +Reviewers: #frameworks, dfaure + +Tags: #frameworks + +Differential Revision: https://phabricator.kde.org/D8836 +--- + src/core/mkpathjob.cpp | 17 ++++++++++++++--- + 1 file changed, 14 insertions(+), 3 deletions(-) + +diff --git a/src/core/mkpathjob.cpp b/src/core/mkpathjob.cpp +index bff46ca..a177805 100644 +--- a/src/core/mkpathjob.cpp ++++ b/src/core/mkpathjob.cpp +@@ -43,8 +43,13 @@ public: + m_url.setPath(QStringLiteral("/")); + int i = 0; + for (; i < basePathComponents.count() && i < m_pathComponents.count(); ++i) { +- if (m_pathComponents.at(i) == basePathComponents.at(i)) { +- m_url.setPath(m_url.path() + '/' + m_pathComponents.at(i)); ++ const QString pathComponent = m_pathComponents.at(i); ++ if (pathComponent == basePathComponents.at(i)) { ++ if (m_url.path() == QLatin1Char('/')) { ++ m_url.setPath(m_url.path() + pathComponent); ++ } else { ++ m_url.setPath(m_url.path() + '/' + pathComponent); ++ } + } else { + break; + } +@@ -57,7 +62,13 @@ public: + if (m_url.isLocalFile()) { + i = 0; + for (; i < m_pathComponents.count(); ++i) { +- QString testDir = m_url.toLocalFile() + '/' + m_pathComponents.at(i); ++ const QString localFile = m_url.toLocalFile(); ++ QString testDir; ++ if (localFile == QLatin1Char('/')) { ++ testDir = localFile + m_pathComponents.at(i); ++ } else { ++ testDir = localFile + '/' + m_pathComponents.at(i); ++ } + if (QFileInfo(testDir).isDir()) { + m_url.setPath(testDir); + } else { +-- +cgit v0.11.2 + diff --git a/kde-frameworks/kio/kio-5.40.0-r1.ebuild b/kde-frameworks/kio/kio-5.40.0-r1.ebuild new file mode 100644 index 000000000000..014388b99351 --- /dev/null +++ b/kde-frameworks/kio/kio-5.40.0-r1.ebuild @@ -0,0 +1,80 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +KDE_TEST="forceoptional" +VIRTUALX_REQUIRED="test" +inherit kde5 + +DESCRIPTION="Framework providing transparent file and data management" +LICENSE="LGPL-2+" +KEYWORDS="~amd64 ~arm ~arm64 ~x86" +IUSE="acl +handbook kerberos +kwallet X" + +RDEPEND=" + $(add_frameworks_dep karchive) + $(add_frameworks_dep kbookmarks) + $(add_frameworks_dep kcodecs) + $(add_frameworks_dep kcompletion) + $(add_frameworks_dep kconfig) + $(add_frameworks_dep kconfigwidgets) + $(add_frameworks_dep kcoreaddons) + $(add_frameworks_dep kdbusaddons) + $(add_frameworks_dep ki18n) + $(add_frameworks_dep kiconthemes) + $(add_frameworks_dep kitemviews) + $(add_frameworks_dep kjobwidgets) + $(add_frameworks_dep knotifications) + $(add_frameworks_dep kservice) + $(add_frameworks_dep ktextwidgets) + $(add_frameworks_dep kwidgetsaddons) + $(add_frameworks_dep kwindowsystem) + $(add_frameworks_dep kxmlgui) + $(add_frameworks_dep solid) + $(add_qt_dep qtdbus) + $(add_qt_dep qtgui) + $(add_qt_dep qtnetwork 'ssl') + $(add_qt_dep qtscript) + $(add_qt_dep qtwidgets) + $(add_qt_dep qtxml) + dev-libs/libxml2 + dev-libs/libxslt + acl? ( + sys-apps/attr + virtual/acl + ) + kerberos? ( virtual/krb5 ) + kwallet? ( $(add_frameworks_dep kwallet) ) + X? ( $(add_qt_dep qtx11extras) ) +" +DEPEND="${RDEPEND} + $(add_qt_dep qtconcurrent) + handbook? ( $(add_frameworks_dep kdoctools) ) + test? ( sys-libs/zlib ) + X? ( + x11-libs/libX11 + x11-libs/libXrender + x11-proto/xproto + ) +" +PDEPEND=" + $(add_frameworks_dep kded) +" + +PATCHES=( "${FILESDIR}/${P}-mkpath-qt-5.9.3.patch" ) + +# tests hang +RESTRICT+=" test" + +src_configure() { + local mycmakeargs=( + $(cmake-utils_use_find_package acl ACL) + $(cmake-utils_use_find_package handbook KF5DocTools) + $(cmake-utils_use_find_package kerberos GSSAPI) + $(cmake-utils_use_find_package kwallet KF5Wallet) + $(cmake-utils_use_find_package X X11) + ) + + kde5_src_configure +} |