Gentoo Archives: gentoo-commits

From: Andreas Sturmlechner <asturm@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: kde-frameworks/kio/files/, kde-frameworks/kio/
Date: Sun, 26 Nov 2017 18:57:03
Message-Id: 1511722582.2dcff392b8f28d8eaa874c352873065ef70a9946.asturm@gentoo
1 commit: 2dcff392b8f28d8eaa874c352873065ef70a9946
2 Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
3 AuthorDate: Sun Nov 26 18:51:54 2017 +0000
4 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
5 CommitDate: Sun Nov 26 18:56:22 2017 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2dcff392
7
8 kde-frameworks/kio: Fix mkpath with >=Qt-5.9.3
9
10 See also:
11 https://mail.kde.org/pipermail/kde-distro-packagers/2017-November/000297.html
12
13 Package-Manager: Portage-2.3.16, Repoman-2.3.6
14
15 kde-frameworks/kio/Manifest | 2 +-
16 .../kio/files/kio-5.40.0-mkpath-qt-5.9.3.patch | 65 ++++++++++++++++++
17 kde-frameworks/kio/kio-5.40.0-r1.ebuild | 80 ++++++++++++++++++++++
18 3 files changed, 146 insertions(+), 1 deletion(-)
19
20 diff --git a/kde-frameworks/kio/Manifest b/kde-frameworks/kio/Manifest
21 index 6cdc8304cb1..20bed421afa 100644
22 --- a/kde-frameworks/kio/Manifest
23 +++ b/kde-frameworks/kio/Manifest
24 @@ -1,2 +1,2 @@
25 DIST kio-5.37.0.tar.xz 3084204 SHA256 49448ebcfe182805f8f9cd40c1e2c8e686578cc2e7fa3688204d5ca4e182ac5b SHA512 42b2cbf6cbc414a0b69fdb36984d13574b1aee033170761dc55835cace44abead82f387f8afb35d8a82ee93a1909854ef43cff29d45c5881c4b13ca8862d2a64 WHIRLPOOL 649b16ebf5708d410d826a70726a9fdfd3668e00784246e7cb4d193b1951525e821046121886580bc16004280170277ac0344d1ee18afb91722e095118b1ccd6
26 -DIST kio-5.40.0.tar.xz 3100424 SHA256 30ea0b231b995faaf4283b9c9ecfaffb589268f5d7b5b805f69ed95601ac389b SHA512 e35a7fed3c38f91c056d5ac04b4839ebbf199e4509187e997d6d8a217175a9dc442c7beacccf333ec092c0d110f8f008144293364006888f25b570d697c10bed WHIRLPOOL cfae3b3dc85f1398217c934943829dc28d2b7bfefe6d8adb5a082593f66127b313652b34278e6e4d612b266f7df8b03462a5ae8ac71af5685ad9641c08181b3a
27 +DIST kio-5.40.0.tar.xz 3100424 BLAKE2B 27f69f10febc327d1f935e2b8f3c24dc8b64e85ef35830841f99fdefb6238f590dc8a1284bd0896d6e0e2eb86f123e6788ebd277ca208df18312e8ac475221dc SHA512 e35a7fed3c38f91c056d5ac04b4839ebbf199e4509187e997d6d8a217175a9dc442c7beacccf333ec092c0d110f8f008144293364006888f25b570d697c10bed
28
29 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
30 new file mode 100644
31 index 00000000000..d9cf7402741
32 --- /dev/null
33 +++ b/kde-frameworks/kio/files/kio-5.40.0-mkpath-qt-5.9.3.patch
34 @@ -0,0 +1,65 @@
35 +From 2353119aae8f03565bc7779ed1d597d266f5afda Mon Sep 17 00:00:00 2001
36 +From: Elvis Angelaccio <elvis.angelaccio@×××.org>
37 +Date: Thu, 16 Nov 2017 10:41:19 +0100
38 +Subject: Fix KIO::mkpath with qtbase 5.10 beta 4
39 +
40 +Summary:
41 +The latest Qt 5.10 beta includes [1] which breaks a bunch of unit tests,
42 +since `url.setPath("//foo")` will now result in an invalid (empty) QUrl.
43 +
44 +This patch fixes the KIO::mkpath() case.
45 +
46 +[1]: http://code.qt.io/cgit/qt/qtbase.git/commit/?id=f62768d046528636789f901ac79e2cfa1843a7b7
47 +
48 +Test Plan:
49 +
50 +* I can now create folders from dolphin and plasma.
51 +* fileundomanagertest and mkpathjobtest no longer fail
52 +
53 +Reviewers: #frameworks, dfaure
54 +
55 +Tags: #frameworks
56 +
57 +Differential Revision: https://phabricator.kde.org/D8836
58 +---
59 + src/core/mkpathjob.cpp | 17 ++++++++++++++---
60 + 1 file changed, 14 insertions(+), 3 deletions(-)
61 +
62 +diff --git a/src/core/mkpathjob.cpp b/src/core/mkpathjob.cpp
63 +index bff46ca..a177805 100644
64 +--- a/src/core/mkpathjob.cpp
65 ++++ b/src/core/mkpathjob.cpp
66 +@@ -43,8 +43,13 @@ public:
67 + m_url.setPath(QStringLiteral("/"));
68 + int i = 0;
69 + for (; i < basePathComponents.count() && i < m_pathComponents.count(); ++i) {
70 +- if (m_pathComponents.at(i) == basePathComponents.at(i)) {
71 +- m_url.setPath(m_url.path() + '/' + m_pathComponents.at(i));
72 ++ const QString pathComponent = m_pathComponents.at(i);
73 ++ if (pathComponent == basePathComponents.at(i)) {
74 ++ if (m_url.path() == QLatin1Char('/')) {
75 ++ m_url.setPath(m_url.path() + pathComponent);
76 ++ } else {
77 ++ m_url.setPath(m_url.path() + '/' + pathComponent);
78 ++ }
79 + } else {
80 + break;
81 + }
82 +@@ -57,7 +62,13 @@ public:
83 + if (m_url.isLocalFile()) {
84 + i = 0;
85 + for (; i < m_pathComponents.count(); ++i) {
86 +- QString testDir = m_url.toLocalFile() + '/' + m_pathComponents.at(i);
87 ++ const QString localFile = m_url.toLocalFile();
88 ++ QString testDir;
89 ++ if (localFile == QLatin1Char('/')) {
90 ++ testDir = localFile + m_pathComponents.at(i);
91 ++ } else {
92 ++ testDir = localFile + '/' + m_pathComponents.at(i);
93 ++ }
94 + if (QFileInfo(testDir).isDir()) {
95 + m_url.setPath(testDir);
96 + } else {
97 +--
98 +cgit v0.11.2
99 +
100
101 diff --git a/kde-frameworks/kio/kio-5.40.0-r1.ebuild b/kde-frameworks/kio/kio-5.40.0-r1.ebuild
102 new file mode 100644
103 index 00000000000..014388b9935
104 --- /dev/null
105 +++ b/kde-frameworks/kio/kio-5.40.0-r1.ebuild
106 @@ -0,0 +1,80 @@
107 +# Copyright 1999-2017 Gentoo Foundation
108 +# Distributed under the terms of the GNU General Public License v2
109 +
110 +EAPI=6
111 +
112 +KDE_TEST="forceoptional"
113 +VIRTUALX_REQUIRED="test"
114 +inherit kde5
115 +
116 +DESCRIPTION="Framework providing transparent file and data management"
117 +LICENSE="LGPL-2+"
118 +KEYWORDS="~amd64 ~arm ~arm64 ~x86"
119 +IUSE="acl +handbook kerberos +kwallet X"
120 +
121 +RDEPEND="
122 + $(add_frameworks_dep karchive)
123 + $(add_frameworks_dep kbookmarks)
124 + $(add_frameworks_dep kcodecs)
125 + $(add_frameworks_dep kcompletion)
126 + $(add_frameworks_dep kconfig)
127 + $(add_frameworks_dep kconfigwidgets)
128 + $(add_frameworks_dep kcoreaddons)
129 + $(add_frameworks_dep kdbusaddons)
130 + $(add_frameworks_dep ki18n)
131 + $(add_frameworks_dep kiconthemes)
132 + $(add_frameworks_dep kitemviews)
133 + $(add_frameworks_dep kjobwidgets)
134 + $(add_frameworks_dep knotifications)
135 + $(add_frameworks_dep kservice)
136 + $(add_frameworks_dep ktextwidgets)
137 + $(add_frameworks_dep kwidgetsaddons)
138 + $(add_frameworks_dep kwindowsystem)
139 + $(add_frameworks_dep kxmlgui)
140 + $(add_frameworks_dep solid)
141 + $(add_qt_dep qtdbus)
142 + $(add_qt_dep qtgui)
143 + $(add_qt_dep qtnetwork 'ssl')
144 + $(add_qt_dep qtscript)
145 + $(add_qt_dep qtwidgets)
146 + $(add_qt_dep qtxml)
147 + dev-libs/libxml2
148 + dev-libs/libxslt
149 + acl? (
150 + sys-apps/attr
151 + virtual/acl
152 + )
153 + kerberos? ( virtual/krb5 )
154 + kwallet? ( $(add_frameworks_dep kwallet) )
155 + X? ( $(add_qt_dep qtx11extras) )
156 +"
157 +DEPEND="${RDEPEND}
158 + $(add_qt_dep qtconcurrent)
159 + handbook? ( $(add_frameworks_dep kdoctools) )
160 + test? ( sys-libs/zlib )
161 + X? (
162 + x11-libs/libX11
163 + x11-libs/libXrender
164 + x11-proto/xproto
165 + )
166 +"
167 +PDEPEND="
168 + $(add_frameworks_dep kded)
169 +"
170 +
171 +PATCHES=( "${FILESDIR}/${P}-mkpath-qt-5.9.3.patch" )
172 +
173 +# tests hang
174 +RESTRICT+=" test"
175 +
176 +src_configure() {
177 + local mycmakeargs=(
178 + $(cmake-utils_use_find_package acl ACL)
179 + $(cmake-utils_use_find_package handbook KF5DocTools)
180 + $(cmake-utils_use_find_package kerberos GSSAPI)
181 + $(cmake-utils_use_find_package kwallet KF5Wallet)
182 + $(cmake-utils_use_find_package X X11)
183 + )
184 +
185 + kde5_src_configure
186 +}