Gentoo Archives: gentoo-commits

From: Andreas Sturmlechner <asturm@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: media-libs/libqaccessibilityclient/files/, media-libs/libqaccessibilityclient/
Date: Mon, 03 Sep 2018 20:26:06
Message-Id: 1536006343.440760ba33c5090a70acc9f676affc3b80f96112.asturm@gentoo
1 commit: 440760ba33c5090a70acc9f676affc3b80f96112
2 Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
3 AuthorDate: Mon Sep 3 20:25:43 2018 +0000
4 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
5 CommitDate: Mon Sep 3 20:25:43 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=440760ba
7
8 media-libs/libqaccessibilityclient: Fix build with GCC-8
9
10 Closes: https://bugs.gentoo.org/665180
11 Package-Manager: Portage-2.3.49, Repoman-2.3.10
12
13 .../files/libqaccessibilityclient-0.2.0-gcc8.patch | 100 +++++++++++++++++++++
14 .../libqaccessibilityclient-0.2.0.ebuild | 4 +-
15 2 files changed, 103 insertions(+), 1 deletion(-)
16
17 diff --git a/media-libs/libqaccessibilityclient/files/libqaccessibilityclient-0.2.0-gcc8.patch b/media-libs/libqaccessibilityclient/files/libqaccessibilityclient-0.2.0-gcc8.patch
18 new file mode 100644
19 index 00000000000..74c97982e4c
20 --- /dev/null
21 +++ b/media-libs/libqaccessibilityclient/files/libqaccessibilityclient-0.2.0-gcc8.patch
22 @@ -0,0 +1,100 @@
23 +From 34f6084ff3ba1dd025cae17e5d114caff1d7fa6f Mon Sep 17 00:00:00 2001
24 +From: Frederik Gladhorn <frederik.gladhorn@××.io>
25 +Date: Tue, 25 Jul 2017 16:27:12 +0200
26 +Subject: Compile with clang and make sure qHash works with AccessibleObject
27 +
28 +Clang didn't like the complicated friend declaration. To make sure it's
29 +not broken again, add one test to verify that we can use AO in hashes,
30 +since apps might want to do that.
31 +---
32 + src/qaccessibilityclient/accessibleobject.cpp | 4 ----
33 + src/qaccessibilityclient/accessibleobject.h | 17 ++++++++++-------
34 + tests/auto/tst_accessibilityclient.cpp | 9 +++++++++
35 + 3 files changed, 19 insertions(+), 11 deletions(-)
36 +
37 +diff --git a/src/qaccessibilityclient/accessibleobject.cpp b/src/qaccessibilityclient/accessibleobject.cpp
38 +index b2b005b..b8c9d33 100644
39 +--- a/src/qaccessibilityclient/accessibleobject.cpp
40 ++++ b/src/qaccessibilityclient/accessibleobject.cpp
41 +@@ -534,7 +534,3 @@ QACCESSIBILITYCLIENT_EXPORT QDebug QAccessibleClient::operator<<(QDebug d, const
42 + return d.space();
43 + }
44 + #endif
45 +-
46 +-uint qHash(const QAccessibleClient::AccessibleObject& object) {
47 +- return qHash(object.d);
48 +-}
49 +diff --git a/src/qaccessibilityclient/accessibleobject.h b/src/qaccessibilityclient/accessibleobject.h
50 +index a0d0db4..ee2e5ad 100644
51 +--- a/src/qaccessibilityclient/accessibleobject.h
52 ++++ b/src/qaccessibilityclient/accessibleobject.h
53 +@@ -27,8 +27,6 @@ namespace QAccessibleClient {
54 + class AccessibleObject;
55 + }
56 +
57 +-uint qHash(const QAccessibleClient::AccessibleObject& object);
58 +-
59 + #include <qlist.h>
60 + #include <QSharedPointer>
61 + #include <qaction.h>
62 +@@ -40,6 +38,11 @@ namespace QAccessibleClient {
63 + class AccessibleObjectPrivate;
64 + class RegistryPrivate;
65 +
66 ++
67 ++#ifndef QT_NO_DEBUG_STREAM
68 ++ QACCESSIBILITYCLIENT_EXPORT QDebug operator<<(QDebug, const AccessibleObject &);
69 ++#endif
70 ++
71 + /**
72 + This class represents an accessible object.
73 +
74 +@@ -746,13 +749,13 @@ private:
75 + friend class RegistryPrivate;
76 + friend class CacheWeakStrategy;
77 + friend class CacheStrongStrategy;
78 +- friend QDebug QAccessibleClient::operator<<(QDebug, const AccessibleObject &);
79 +- friend uint ::qHash(const AccessibleObject& object);
80 +-};
81 +-
82 + #ifndef QT_NO_DEBUG_STREAM
83 +-QACCESSIBILITYCLIENT_EXPORT QDebug operator<<(QDebug, const AccessibleObject &);
84 ++ friend QDebug QAccessibleClient::operator<<(QDebug, const AccessibleObject &);
85 + #endif
86 ++ friend uint qHash(const QAccessibleClient::AccessibleObject& object) {
87 ++ return qHash(object.d);
88 ++ }
89 ++};
90 +
91 + }
92 +
93 +diff --git a/tests/auto/tst_accessibilityclient.cpp b/tests/auto/tst_accessibilityclient.cpp
94 +index ad98c0e..c377982 100644
95 +--- a/tests/auto/tst_accessibilityclient.cpp
96 ++++ b/tests/auto/tst_accessibilityclient.cpp
97 +@@ -75,6 +75,7 @@ private Q_SLOTS:
98 +
99 + void tst_registry();
100 + void tst_accessibleObject();
101 ++ void tst_hashable();
102 + void tst_application();
103 + void tst_navigation();
104 + void tst_focus();
105 +@@ -145,6 +146,14 @@ void AccessibilityClientTest::tst_accessibleObject()
106 + QVERIFY(!invalid2.isValid());
107 + }
108 +
109 ++void AccessibilityClientTest::tst_hashable()
110 ++{
111 ++ AccessibleObject testObject;
112 ++ QHash<AccessibleObject, int> testHash;
113 ++ testHash[testObject] = 1;
114 ++ QCOMPARE(testHash[testObject], 1);
115 ++}
116 ++
117 + void AccessibilityClientTest::tst_application()
118 + {
119 + QString appName = QLatin1String("Lib QAccessibleClient test");
120 +--
121 +cgit v0.11.2
122 +
123
124 diff --git a/media-libs/libqaccessibilityclient/libqaccessibilityclient-0.2.0.ebuild b/media-libs/libqaccessibilityclient/libqaccessibilityclient-0.2.0.ebuild
125 index de1d15f27a1..e18e8169c11 100644
126 --- a/media-libs/libqaccessibilityclient/libqaccessibilityclient-0.2.0.ebuild
127 +++ b/media-libs/libqaccessibilityclient/libqaccessibilityclient-0.2.0.ebuild
128 @@ -1,4 +1,4 @@
129 -# Copyright 1999-2017 Gentoo Foundation
130 +# Copyright 1999-2018 Gentoo Foundation
131 # Distributed under the terms of the GNU General Public License v2
132
133 EAPI=6
134 @@ -22,6 +22,8 @@ DEPEND="
135 "
136 RDEPEND="${DEPEND}"
137
138 +PATCHES=( "${FILESDIR}/${P}-gcc8.patch" )
139 +
140 src_prepare() {
141 kde5_src_prepare
142 cmake_comment_add_subdirectory tests