1 |
commit: e32dff1babd97ecdad3fda186cfe733bd86f8f80 |
2 |
Author: Sam James <sam <AT> gentoo <DOT> org> |
3 |
AuthorDate: Fri Apr 29 09:29:53 2022 +0000 |
4 |
Commit: Sam James <sam <AT> gentoo <DOT> org> |
5 |
CommitDate: Fri Apr 29 10:20:57 2022 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e32dff1b |
7 |
|
8 |
net-irc/quassel: drop 0.13.1-r3, fix USE=gui description |
9 |
|
10 |
Signed-off-by: Sam James <sam <AT> gentoo.org> |
11 |
|
12 |
net-irc/quassel/Manifest | 1 - |
13 |
net-irc/quassel/files/quassel-0.13.1-qt5.14.patch | 118 -------------- |
14 |
net-irc/quassel/metadata.xml | 2 +- |
15 |
net-irc/quassel/quassel-0.13.1-r3.ebuild | 183 ---------------------- |
16 |
4 files changed, 1 insertion(+), 303 deletions(-) |
17 |
|
18 |
diff --git a/net-irc/quassel/Manifest b/net-irc/quassel/Manifest |
19 |
index dc37b4072457..43a0bf9abda1 100644 |
20 |
--- a/net-irc/quassel/Manifest |
21 |
+++ b/net-irc/quassel/Manifest |
22 |
@@ -1,2 +1 @@ |
23 |
-DIST quassel-0.13.1.tar.bz2 4289663 BLAKE2B 1d5252efe3febd26e7d04f6533f551316d58b5e4a7c143cc81dd0cf6a3602e28a57de4c73c86fb668e43bf8d01049456d1f5cf37a73f683b9c8b6dd9d78ee4bd SHA512 4ed55e81b1638c8851ddae5d9c9d23a1c2cea92f307e19f426873c2600d8e183898d3ed7c290f2ea5d1b8c5e1be7f9ffcc3e8c3c0193d080fc879b10cc3a962c |
24 |
DIST quassel-0.14.0.tar.bz2 4774297 BLAKE2B c17c64a2ed6c414c94c12b2fa0b8abf40810608e3e4f35df19db597444e09594efc9569c65855c3df5e2c211c2d65a46482f20c3d912c87140c66fa4f022b3b8 SHA512 ea6b9723acab5ce73f760692770c1340c03bf277d2c99a2520345bfb6a7bb6fdc64a01dccfd7026341b46ee727821e1bcc2f487be72dfbc155f1de1ad264763f |
25 |
|
26 |
diff --git a/net-irc/quassel/files/quassel-0.13.1-qt5.14.patch b/net-irc/quassel/files/quassel-0.13.1-qt5.14.patch |
27 |
deleted file mode 100644 |
28 |
index f0305ea53ce7..000000000000 |
29 |
--- a/net-irc/quassel/files/quassel-0.13.1-qt5.14.patch |
30 |
+++ /dev/null |
31 |
@@ -1,118 +0,0 @@ |
32 |
-commit c90702bdbc43fc542d7df6d5ec4b321912ca0035 |
33 |
-Author: Manuel Nickschas <sputnick@×××××××××××.org> |
34 |
-Date: Tue Jan 7 18:34:54 2020 +0100 |
35 |
- |
36 |
- common: Disable enum type stream operators for Qt >= 5.14 |
37 |
- |
38 |
- Starting from version 5.14, Qt provides stream operators for enum |
39 |
- types, which collide with the ones we ship in types.h. Disable |
40 |
- Quassel's stream operators when compiling against Qt 5.14 or later. |
41 |
- |
42 |
- Add a unit test that ensures that enum serialization honors the width |
43 |
- of the underlying type. |
44 |
- |
45 |
-diff --git a/src/common/types.h b/src/common/types.h |
46 |
-index 467d9fb2..c4b9f364 100644 |
47 |
---- a/src/common/types.h |
48 |
-+++ b/src/common/types.h |
49 |
-@@ -140,6 +140,7 @@ Q_DECLARE_METATYPE(QHostAddress) |
50 |
- typedef QList<MsgId> MsgIdList; |
51 |
- typedef QList<BufferId> BufferIdList; |
52 |
- |
53 |
-+#if QT_VERSION < QT_VERSION_CHECK(5, 14, 0) |
54 |
- /** |
55 |
- * Catch-all stream serialization operator for enum types. |
56 |
- * |
57 |
-@@ -169,6 +170,7 @@ QDataStream &operator>>(QDataStream &in, T &value) { |
58 |
- value = static_cast<T>(v); |
59 |
- return in; |
60 |
- } |
61 |
-+#endif |
62 |
- |
63 |
- // Exceptions |
64 |
- |
65 |
-diff --git a/src/common/typestest.cpp b/src/common/typestest.cpp |
66 |
-new file mode 100644 |
67 |
-index 00000000..04031c29 |
68 |
---- /dev/null |
69 |
-+++ b/src/common/typestest.cpp |
70 |
-@@ -0,0 +1,79 @@ |
71 |
-+/*************************************************************************** |
72 |
-+ * Copyright (C) 2005-2020 by the Quassel Project * |
73 |
-+ * devel@×××××××××××.org * |
74 |
-+ * * |
75 |
-+ * This program is free software; you can redistribute it and/or modify * |
76 |
-+ * it under the terms of the GNU General Public License as published by * |
77 |
-+ * the Free Software Foundation; either version 2 of the License, or * |
78 |
-+ * (at your option) version 3. * |
79 |
-+ * * |
80 |
-+ * This program is distributed in the hope that it will be useful, * |
81 |
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of * |
82 |
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * |
83 |
-+ * GNU General Public License for more details. * |
84 |
-+ * * |
85 |
-+ * You should have received a copy of the GNU General Public License * |
86 |
-+ * along with this program; if not, write to the * |
87 |
-+ * Free Software Foundation, Inc., * |
88 |
-+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * |
89 |
-+ ***************************************************************************/ |
90 |
-+ |
91 |
-+#include <cstdint> |
92 |
-+ |
93 |
-+#include <QByteArray> |
94 |
-+#include <QDataStream> |
95 |
-+#include <QObject> |
96 |
-+ |
97 |
-+#include "testglobal.h" |
98 |
-+#include "types.h" |
99 |
-+ |
100 |
-+using namespace ::testing; |
101 |
-+ |
102 |
-+class EnumHolder |
103 |
-+{ |
104 |
-+ Q_GADGET |
105 |
-+ |
106 |
-+public: |
107 |
-+ enum class Enum16 : uint16_t {}; |
108 |
-+ enum class Enum32 : uint32_t {}; |
109 |
-+ |
110 |
-+ enum class EnumQt16 : uint16_t {}; |
111 |
-+ Q_ENUM(EnumQt16) |
112 |
-+ enum class EnumQt32 : uint32_t {}; |
113 |
-+ Q_ENUM(EnumQt32) |
114 |
-+}; |
115 |
-+ |
116 |
-+// Verify that enums are (de)serialized as their underlying type |
117 |
-+TEST(TypesTest, enumSerialization) |
118 |
-+{ |
119 |
-+ QByteArray data; |
120 |
-+ QDataStream out(&data, QIODevice::WriteOnly); |
121 |
-+ |
122 |
-+ // Serialize |
123 |
-+ out << EnumHolder::Enum16(0xabcd); |
124 |
-+ ASSERT_THAT(data.size(), Eq(2)); |
125 |
-+ out << EnumHolder::Enum32(0x123456); |
126 |
-+ ASSERT_THAT(data.size(), Eq(6)); |
127 |
-+ out << EnumHolder::EnumQt16(0x4321); |
128 |
-+ ASSERT_THAT(data.size(), Eq(8)); |
129 |
-+ out << EnumHolder::Enum32(0xfedcba); |
130 |
-+ ASSERT_THAT(data.size(), Eq(12)); |
131 |
-+ ASSERT_THAT(out.status(), Eq(QDataStream::Status::Ok)); |
132 |
-+ |
133 |
-+ // Deserialize |
134 |
-+ QDataStream in(data); |
135 |
-+ EnumHolder::Enum16 enum16; |
136 |
-+ EnumHolder::Enum32 enum32; |
137 |
-+ EnumHolder::EnumQt16 enumQt16; |
138 |
-+ EnumHolder::EnumQt32 enumQt32; |
139 |
-+ in >> enum16 >> enum32 >> enumQt16 >> enumQt32; |
140 |
-+ ASSERT_THAT(in.status(), Eq(QDataStream::Status::Ok)); |
141 |
-+ EXPECT_TRUE(in.atEnd()); |
142 |
-+ |
143 |
-+ EXPECT_THAT((int)enum16, Eq(0xabcd)); |
144 |
-+ EXPECT_THAT((int)enum32, Eq(0x123456)); |
145 |
-+ EXPECT_THAT((int)enumQt16, Eq(0x4321)); |
146 |
-+ EXPECT_THAT((int)enumQt32, Eq(0xfedcba)); |
147 |
-+} |
148 |
-+ |
149 |
-+#include "typestest.moc" |
150 |
|
151 |
diff --git a/net-irc/quassel/metadata.xml b/net-irc/quassel/metadata.xml |
152 |
index 452b0d024739..c7ddcb9b20bf 100644 |
153 |
--- a/net-irc/quassel/metadata.xml |
154 |
+++ b/net-irc/quassel/metadata.xml |
155 |
@@ -38,7 +38,7 @@ |
156 |
<flag name="urlpreview"> |
157 |
Use QtWebEngine rendering engine for showing URL thumbnails. |
158 |
</flag> |
159 |
- <flag name="X"> |
160 |
+ <flag name="gui"> |
161 |
Build the Qt5 GUI client for quassel. If this USE flag is |
162 |
disabled, the GUI is not built, and cannot be used. You might |
163 |
want to disable this on the server, but you need it enabled on |
164 |
|
165 |
diff --git a/net-irc/quassel/quassel-0.13.1-r3.ebuild b/net-irc/quassel/quassel-0.13.1-r3.ebuild |
166 |
deleted file mode 100644 |
167 |
index 6e710d92abd3..000000000000 |
168 |
--- a/net-irc/quassel/quassel-0.13.1-r3.ebuild |
169 |
+++ /dev/null |
170 |
@@ -1,183 +0,0 @@ |
171 |
-# Copyright 1999-2022 Gentoo Authors |
172 |
-# Distributed under the terms of the GNU General Public License v2 |
173 |
- |
174 |
-EAPI=7 |
175 |
- |
176 |
-inherit cmake xdg-utils pax-utils systemd |
177 |
- |
178 |
-if [[ ${PV} != *9999* ]]; then |
179 |
- MY_P=${PN}-${PV/_/-} |
180 |
- SRC_URI="https://quassel-irc.org/pub/${MY_P}.tar.bz2" |
181 |
- KEYWORDS="amd64 ~arm arm64 ~ppc64 ~riscv x86 ~amd64-linux ~sparc-solaris" |
182 |
- S="${WORKDIR}/${MY_P}" |
183 |
-else |
184 |
- EGIT_REPO_URI=( "https://github.com/${PN}/${PN}" ) |
185 |
- inherit git-r3 |
186 |
-fi |
187 |
- |
188 |
-DESCRIPTION="Qt/KDE IRC client supporting a remote daemon for 24/7 connectivity" |
189 |
-HOMEPAGE="https://quassel-irc.org/" |
190 |
-LICENSE="GPL-3" |
191 |
-SLOT="0" |
192 |
-IUSE="bundled-icons crypt +dbus debug kde ldap monolithic oxygen postgres +server |
193 |
-snorenotify spell +ssl syslog urlpreview X" |
194 |
- |
195 |
-SERVER_DEPEND=" |
196 |
- acct-group/quassel |
197 |
- acct-user/quassel |
198 |
- dev-qt/qtscript:5 |
199 |
- crypt? ( app-crypt/qca:2[ssl] ) |
200 |
- ldap? ( net-nds/openldap:= ) |
201 |
- postgres? ( dev-qt/qtsql:5[postgres] ) |
202 |
- !postgres? ( dev-qt/qtsql:5[sqlite] dev-db/sqlite:3[threadsafe(+),-secure-delete] ) |
203 |
- syslog? ( virtual/logger ) |
204 |
-" |
205 |
- |
206 |
-GUI_DEPEND=" |
207 |
- dev-qt/qtgui:5 |
208 |
- dev-qt/qtmultimedia:5 |
209 |
- dev-qt/qtwidgets:5 |
210 |
- !bundled-icons? ( |
211 |
- kde-frameworks/breeze-icons:5 |
212 |
- oxygen? ( kde-frameworks/oxygen-icons:5 ) |
213 |
- ) |
214 |
- dbus? ( |
215 |
- >=dev-libs/libdbusmenu-qt-0.9.3_pre20140619 |
216 |
- dev-qt/qtdbus:5 |
217 |
- ) |
218 |
- kde? ( |
219 |
- kde-frameworks/kconfigwidgets:5 |
220 |
- kde-frameworks/kcoreaddons:5 |
221 |
- kde-frameworks/knotifications:5 |
222 |
- kde-frameworks/knotifyconfig:5 |
223 |
- kde-frameworks/ktextwidgets:5 |
224 |
- kde-frameworks/kwidgetsaddons:5 |
225 |
- kde-frameworks/kxmlgui:5 |
226 |
- ) |
227 |
- snorenotify? ( >=x11-libs/snorenotify-0.7.0 ) |
228 |
- spell? ( kde-frameworks/sonnet:5 ) |
229 |
- urlpreview? ( dev-qt/qtwebengine:5[widgets] ) |
230 |
-" |
231 |
- |
232 |
-DEPEND=" |
233 |
- dev-qt/qtcore:5 |
234 |
- dev-qt/qtnetwork:5[ssl?] |
235 |
- sys-libs/zlib |
236 |
- monolithic? ( |
237 |
- ${SERVER_DEPEND} |
238 |
- ${GUI_DEPEND} |
239 |
- ) |
240 |
- !monolithic? ( |
241 |
- server? ( ${SERVER_DEPEND} ) |
242 |
- X? ( ${GUI_DEPEND} ) |
243 |
- ) |
244 |
-" |
245 |
-RDEPEND="${DEPEND}" |
246 |
-BDEPEND=" |
247 |
- dev-qt/linguist-tools:5 |
248 |
- kde-frameworks/extra-cmake-modules |
249 |
-" |
250 |
- |
251 |
-DOCS=( AUTHORS ChangeLog README.md ) |
252 |
- |
253 |
-REQUIRED_USE=" |
254 |
- || ( X server monolithic ) |
255 |
- crypt? ( || ( server monolithic ) ) |
256 |
- kde? ( dbus spell ) |
257 |
- ldap? ( || ( server monolithic ) ) |
258 |
- postgres? ( || ( server monolithic ) ) |
259 |
- snorenotify? ( || ( X monolithic ) ) |
260 |
- spell? ( || ( X monolithic ) ) |
261 |
- syslog? ( || ( server monolithic ) ) |
262 |
-" |
263 |
- |
264 |
-PATCHES=( "${FILESDIR}/${P}-qt5.14.patch" ) |
265 |
- |
266 |
-src_configure() { |
267 |
- local mycmakeargs=( |
268 |
- -DUSE_QT4=OFF |
269 |
- -DUSE_QT5=ON |
270 |
- -DUSE_CCACHE=OFF |
271 |
- -DCMAKE_SKIP_RPATH=ON |
272 |
- -DEMBED_DATA=OFF |
273 |
- -DWITH_WEBKIT=OFF |
274 |
- -DWITH_BUNDLED_ICONS=$(usex bundled-icons) |
275 |
- $(cmake_use_find_package dbus dbusmenu-qt5) |
276 |
- $(cmake_use_find_package dbus Qt5DBus) |
277 |
- -DWITH_KDE=$(usex kde) |
278 |
- -DWITH_LDAP=$(usex ldap) |
279 |
- -DWANT_MONO=$(usex monolithic) |
280 |
- -DWITH_OXYGEN_ICONS=$(usex oxygen) |
281 |
- -DWANT_CORE=$(usex server) |
282 |
- $(cmake_use_find_package snorenotify LibsnoreQt5) |
283 |
- $(cmake_use_find_package spell KF5Sonnet) |
284 |
- -DWITH_WEBENGINE=$(usex urlpreview) |
285 |
- -DWANT_QTCLIENT=$(usex X) |
286 |
- ) |
287 |
- |
288 |
- if use server || use monolithic; then |
289 |
- mycmakeargs+=( $(cmake_use_find_package crypt QCA2-QT5) ) |
290 |
- fi |
291 |
- |
292 |
- cmake_src_configure |
293 |
-} |
294 |
- |
295 |
-src_install() { |
296 |
- cmake_src_install |
297 |
- |
298 |
- if use server ; then |
299 |
- # needs PAX marking wrt bug#346255 |
300 |
- pax-mark m "${ED}/usr/bin/quasselcore" |
301 |
- |
302 |
- # init scripts & systemd unit |
303 |
- newinitd "${FILESDIR}"/quasselcore.init-r1 quasselcore |
304 |
- newconfd "${FILESDIR}"/quasselcore.conf-r1 quasselcore |
305 |
- systemd_dounit "${FILESDIR}"/quasselcore.service |
306 |
- |
307 |
- # logrotate |
308 |
- insinto /etc/logrotate.d |
309 |
- newins "${FILESDIR}/quassel.logrotate" quassel |
310 |
- fi |
311 |
-} |
312 |
- |
313 |
-pkg_postinst() { |
314 |
- if use monolithic && use ssl ; then |
315 |
- elog "Information on how to enable SSL support for client/core connections" |
316 |
- elog "is available at http://bugs.quassel-irc.org/projects/quassel-irc/wiki/Client-Core_SSL_support." |
317 |
- fi |
318 |
- |
319 |
- if use server; then |
320 |
- einfo "If you want to generate SSL certificate remember to run:" |
321 |
- einfo " emerge --config =${CATEGORY}/${PF}" |
322 |
- fi |
323 |
- |
324 |
- if use server || use monolithic ; then |
325 |
- einfo "Quassel can use net-misc/oidentd package if installed on your system." |
326 |
- einfo "Consider installing it if you want to run quassel within identd daemon." |
327 |
- fi |
328 |
- |
329 |
- xdg_icon_cache_update |
330 |
-} |
331 |
- |
332 |
-pkg_postrm() { |
333 |
- xdg_icon_cache_update |
334 |
-} |
335 |
- |
336 |
-pkg_config() { |
337 |
- if use server && use ssl; then |
338 |
- # generate the pem file only when it does not already exist |
339 |
- QUASSEL_DIR=/var/lib/${PN} |
340 |
- if [ ! -f "${QUASSEL_DIR}/quasselCert.pem" ]; then |
341 |
- einfo "Generating QUASSEL SSL certificate to: \"${QUASSEL_DIR}/quasselCert.pem\"" |
342 |
- openssl req -x509 -nodes -days 365 -newkey rsa:2048 \ |
343 |
- -keyout "${QUASSEL_DIR}/quasselCert.pem" \ |
344 |
- -out "${QUASSEL_DIR}/quasselCert.pem" |
345 |
- # permissions for the key |
346 |
- chown ${PN}:${PN} "${QUASSEL_DIR}/quasselCert.pem" |
347 |
- chmod 400 "${QUASSEL_DIR}/quasselCert.pem" |
348 |
- else |
349 |
- einfo "Certificate \"${QUASSEL_DIR}/quasselCert.pem\" already exists." |
350 |
- einfo "Remove it if you want to create new one." |
351 |
- fi |
352 |
- fi |
353 |
-} |