1 |
commit: e7ebc1bc36959b7a842b5800b4459dd444c3b5d6 |
2 |
Author: Stefan Strogin <stefan.strogin <AT> gmail <DOT> com> |
3 |
AuthorDate: Sat Mar 2 00:50:42 2019 +0000 |
4 |
Commit: Stefan Strogin <stefan.strogin <AT> gmail <DOT> com> |
5 |
CommitDate: Sat Mar 2 00:50:42 2019 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/proj/libressl.git/commit/?id=e7ebc1bc |
7 |
|
8 |
dev-qt/qtnetwork: bump version to 5.12.1; add patch |
9 |
|
10 |
Bug: https://bugs.gentoo.org/562050 |
11 |
Package-Manager: Portage-2.3.62, Repoman-2.3.12 |
12 |
Signed-off-by: Stefan Strogin <stefan.strogin <AT> gmail.com> |
13 |
|
14 |
dev-qt/qtnetwork/Manifest | 1 + |
15 |
.../files/qtnetwork-5.12.1-libressl.patch | 93 ++++++++++++++++++++++ |
16 |
dev-qt/qtnetwork/qtnetwork-5.12.1.ebuild | 67 ++++++++++++++++ |
17 |
3 files changed, 161 insertions(+) |
18 |
|
19 |
diff --git a/dev-qt/qtnetwork/Manifest b/dev-qt/qtnetwork/Manifest |
20 |
index 69f23c6..95f102a 100644 |
21 |
--- a/dev-qt/qtnetwork/Manifest |
22 |
+++ b/dev-qt/qtnetwork/Manifest |
23 |
@@ -1 +1,2 @@ |
24 |
DIST qtbase-everywhere-src-5.11.3.tar.xz 46997676 BLAKE2B a70089be5530dec0eedcd5ba990140b375261dea5c85ea7d1dbb5b0bd09ee23edbb4917851127686b5f3cac6969a284eb91ab075ebe53326e69e99e81b257da0 SHA512 93865e41c994211456a575b085c2e7491b7975a1c3b4deb48e9616b51104eb990c1fcfd53d5fb2146ba22457cb134e6254e9077ba73c8b4c4b4d1d525e66fb65 |
25 |
+DIST qtbase-everywhere-src-5.12.1.tar.xz 48239912 BLAKE2B 99a92c2134a20d5f52a1ae69e5d248f12e4668308f894ead17927a778558b4fcd598f5f5208527a77e20550d7eb77502253cae91ad19f61ff422a1ff52e84060 SHA512 51494d8947ae16ab7aee22aca156035718f5a700737547de59b4d61d3919c00f4de858111c8928a66c0385604623d847d231892d964d53924a8c97b6e2bedf25 |
26 |
|
27 |
diff --git a/dev-qt/qtnetwork/files/qtnetwork-5.12.1-libressl.patch b/dev-qt/qtnetwork/files/qtnetwork-5.12.1-libressl.patch |
28 |
new file mode 100644 |
29 |
index 0000000..bd86269 |
30 |
--- /dev/null |
31 |
+++ b/dev-qt/qtnetwork/files/qtnetwork-5.12.1-libressl.patch |
32 |
@@ -0,0 +1,93 @@ |
33 |
+diff --git a/src/network/configure.json b/src/network/configure.json |
34 |
+index f3e18662aa..8990763756 100644 |
35 |
+--- a/src/network/configure.json |
36 |
++++ b/src/network/configure.json |
37 |
+@@ -165,7 +165,7 @@ |
38 |
+ "test": { |
39 |
+ "include": "openssl/opensslv.h", |
40 |
+ "tail": [ |
41 |
+- "#if !defined(OPENSSL_VERSION_NUMBER) || OPENSSL_VERSION_NUMBER-0 < 0x10100000L", |
42 |
++ "#if !defined(OPENSSL_VERSION_NUMBER) || OPENSSL_VERSION_NUMBER-0 < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)", |
43 |
+ "# error OpenSSL >= 1.1 is required", |
44 |
+ "#endif" |
45 |
+ ] |
46 |
+diff --git a/src/network/ssl/qsslcontext_openssl.cpp b/src/network/ssl/qsslcontext_openssl.cpp |
47 |
+index 35cca9f01a..03afdc5945 100644 |
48 |
+--- a/src/network/ssl/qsslcontext_openssl.cpp |
49 |
++++ b/src/network/ssl/qsslcontext_openssl.cpp |
50 |
+@@ -249,7 +249,7 @@ void QSslContext::applyBackendConfig(QSslContext *sslContext) |
51 |
+ if (sslContext->sslConfiguration.backendConfiguration().isEmpty()) |
52 |
+ return; |
53 |
+ |
54 |
+-#if OPENSSL_VERSION_NUMBER >= 0x10002000L |
55 |
++#if OPENSSL_VERSION_NUMBER >= 0x10002000L && !defined(LIBRESSL_VERSION_NUMBER) |
56 |
+ if (QSslSocket::sslLibraryVersionNumber() >= 0x10002000L) { |
57 |
+ QSharedPointer<SSL_CONF_CTX> cctx(q_SSL_CONF_CTX_new(), &q_SSL_CONF_CTX_free); |
58 |
+ if (cctx) { |
59 |
+diff --git a/src/network/ssl/qsslsocket_openssl_symbols.cpp b/src/network/ssl/qsslsocket_openssl_symbols.cpp |
60 |
+index 299df6b685..670314d7e5 100644 |
61 |
+--- a/src/network/ssl/qsslsocket_openssl_symbols.cpp |
62 |
++++ b/src/network/ssl/qsslsocket_openssl_symbols.cpp |
63 |
+@@ -216,8 +216,13 @@ DEFINEFUNC3(void *, ASN1_dup, i2d_of_void *a, a, d2i_of_void *b, b, char *c, c, |
64 |
+ #endif |
65 |
+ DEFINEFUNC2(BIO *, BIO_new_file, const char *filename, filename, const char *mode, mode, return nullptr, return) |
66 |
+ DEFINEFUNC(void, ERR_clear_error, DUMMYARG, DUMMYARG, return, DUMMYARG) |
67 |
++#ifdef LIBRESSL_VERSION_NUMBER |
68 |
++DEFINEFUNC(BIO *, BIO_new, const BIO_METHOD *a, a, return nullptr, return) |
69 |
++DEFINEFUNC(const BIO_METHOD *, BIO_s_mem, void, DUMMYARG, return nullptr, return) |
70 |
++#else |
71 |
+ DEFINEFUNC(BIO *, BIO_new, BIO_METHOD *a, a, return nullptr, return) |
72 |
+ DEFINEFUNC(BIO_METHOD *, BIO_s_mem, void, DUMMYARG, return nullptr, return) |
73 |
++#endif |
74 |
+ DEFINEFUNC(int, CRYPTO_num_locks, DUMMYARG, DUMMYARG, return 0, return) |
75 |
+ DEFINEFUNC(void, CRYPTO_set_locking_callback, void (*a)(int, int, const char *, int), a, return, DUMMYARG) |
76 |
+ DEFINEFUNC(void, CRYPTO_set_id_callback, unsigned long (*a)(), a, return, DUMMYARG) |
77 |
+@@ -443,7 +448,7 @@ DEFINEFUNC2(int, SSL_CTX_use_PrivateKey, SSL_CTX *a, a, EVP_PKEY *b, b, return - |
78 |
+ DEFINEFUNC2(int, SSL_CTX_use_RSAPrivateKey, SSL_CTX *a, a, RSA *b, b, return -1, return) |
79 |
+ DEFINEFUNC3(int, SSL_CTX_use_PrivateKey_file, SSL_CTX *a, a, const char *b, b, int c, c, return -1, return) |
80 |
+ DEFINEFUNC(X509_STORE *, SSL_CTX_get_cert_store, const SSL_CTX *a, a, return nullptr, return) |
81 |
+-#if OPENSSL_VERSION_NUMBER >= 0x10002000L |
82 |
++#if OPENSSL_VERSION_NUMBER >= 0x10002000L && !defined(LIBRESSL_VERSION_NUMBER) |
83 |
+ DEFINEFUNC(SSL_CONF_CTX *, SSL_CONF_CTX_new, DUMMYARG, DUMMYARG, return nullptr, return); |
84 |
+ DEFINEFUNC(void, SSL_CONF_CTX_free, SSL_CONF_CTX *a, a, return ,return); |
85 |
+ DEFINEFUNC2(void, SSL_CONF_CTX_set_ssl_ctx, SSL_CONF_CTX *a, a, SSL_CTX *b, b, return, return); |
86 |
+@@ -1246,7 +1251,7 @@ bool q_resolveOpenSslSymbols() |
87 |
+ RESOLVEFUNC(SSL_CTX_use_RSAPrivateKey) |
88 |
+ RESOLVEFUNC(SSL_CTX_use_PrivateKey_file) |
89 |
+ RESOLVEFUNC(SSL_CTX_get_cert_store); |
90 |
+-#if OPENSSL_VERSION_NUMBER >= 0x10002000L |
91 |
++#if OPENSSL_VERSION_NUMBER >= 0x10002000L && !defined(LIBRESSL_VERSION_NUMBER) |
92 |
+ RESOLVEFUNC(SSL_CONF_CTX_new); |
93 |
+ RESOLVEFUNC(SSL_CONF_CTX_free); |
94 |
+ RESOLVEFUNC(SSL_CONF_CTX_set_ssl_ctx); |
95 |
+diff --git a/src/network/ssl/qsslsocket_openssl_symbols_p.h b/src/network/ssl/qsslsocket_openssl_symbols_p.h |
96 |
+index bfdfbf0efc..ad2bd4056b 100644 |
97 |
+--- a/src/network/ssl/qsslsocket_openssl_symbols_p.h |
98 |
++++ b/src/network/ssl/qsslsocket_openssl_symbols_p.h |
99 |
+@@ -359,7 +359,7 @@ int q_SSL_CTX_use_PrivateKey(SSL_CTX *a, EVP_PKEY *b); |
100 |
+ int q_SSL_CTX_use_RSAPrivateKey(SSL_CTX *a, RSA *b); |
101 |
+ int q_SSL_CTX_use_PrivateKey_file(SSL_CTX *a, const char *b, int c); |
102 |
+ X509_STORE *q_SSL_CTX_get_cert_store(const SSL_CTX *a); |
103 |
+-#if OPENSSL_VERSION_NUMBER >= 0x10002000L |
104 |
++#if OPENSSL_VERSION_NUMBER >= 0x10002000L && !defined(LIBRESSL_VERSION_NUMBER) |
105 |
+ SSL_CONF_CTX *q_SSL_CONF_CTX_new(); |
106 |
+ void q_SSL_CONF_CTX_free(SSL_CONF_CTX *a); |
107 |
+ void q_SSL_CONF_CTX_set_ssl_ctx(SSL_CONF_CTX *a, SSL_CTX *b); |
108 |
+diff --git a/src/network/ssl/qsslsocket_opensslpre11_symbols_p.h b/src/network/ssl/qsslsocket_opensslpre11_symbols_p.h |
109 |
+index b7bac5d2a2..9a1a89b0e4 100644 |
110 |
+--- a/src/network/ssl/qsslsocket_opensslpre11_symbols_p.h |
111 |
++++ b/src/network/ssl/qsslsocket_opensslpre11_symbols_p.h |
112 |
+@@ -78,8 +78,13 @@ |
113 |
+ unsigned char * q_ASN1_STRING_data(ASN1_STRING *a); |
114 |
+ BIO *q_BIO_new_file(const char *filename, const char *mode); |
115 |
+ void q_ERR_clear_error(); |
116 |
++#ifdef LIBRESSL_VERSION_NUMBER |
117 |
++Q_AUTOTEST_EXPORT BIO *q_BIO_new(const BIO_METHOD *a); |
118 |
++Q_AUTOTEST_EXPORT const BIO_METHOD *q_BIO_s_mem(); |
119 |
++#else |
120 |
+ Q_AUTOTEST_EXPORT BIO *q_BIO_new(BIO_METHOD *a); |
121 |
+ Q_AUTOTEST_EXPORT BIO_METHOD *q_BIO_s_mem(); |
122 |
++#endif |
123 |
+ int q_CRYPTO_num_locks(); |
124 |
+ void q_CRYPTO_set_locking_callback(void (*a)(int, int, const char *, int)); |
125 |
+ void q_CRYPTO_set_id_callback(unsigned long (*a)()); |
126 |
|
127 |
diff --git a/dev-qt/qtnetwork/qtnetwork-5.12.1.ebuild b/dev-qt/qtnetwork/qtnetwork-5.12.1.ebuild |
128 |
new file mode 100644 |
129 |
index 0000000..1362f6b |
130 |
--- /dev/null |
131 |
+++ b/dev-qt/qtnetwork/qtnetwork-5.12.1.ebuild |
132 |
@@ -0,0 +1,67 @@ |
133 |
+# Copyright 1999-2019 Gentoo Authors |
134 |
+# Distributed under the terms of the GNU General Public License v2 |
135 |
+ |
136 |
+EAPI=6 |
137 |
+QT5_MODULE="qtbase" |
138 |
+inherit qt5-build |
139 |
+ |
140 |
+DESCRIPTION="Network abstraction library for the Qt5 framework" |
141 |
+ |
142 |
+if [[ ${QT5_BUILD_TYPE} == release ]]; then |
143 |
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd" |
144 |
+fi |
145 |
+ |
146 |
+IUSE="bindist connman libproxy libressl networkmanager sctp +ssl" |
147 |
+ |
148 |
+DEPEND=" |
149 |
+ ~dev-qt/qtcore-${PV} |
150 |
+ sys-libs/zlib:= |
151 |
+ connman? ( ~dev-qt/qtdbus-${PV} ) |
152 |
+ libproxy? ( net-libs/libproxy ) |
153 |
+ networkmanager? ( ~dev-qt/qtdbus-${PV} ) |
154 |
+ sctp? ( kernel_linux? ( net-misc/lksctp-tools ) ) |
155 |
+ ssl? ( |
156 |
+ !libressl? ( dev-libs/openssl:0=[bindist=] ) |
157 |
+ libressl? ( dev-libs/libressl:0= ) |
158 |
+ ) |
159 |
+" |
160 |
+RDEPEND="${DEPEND} |
161 |
+ connman? ( net-misc/connman ) |
162 |
+ networkmanager? ( net-misc/networkmanager ) |
163 |
+" |
164 |
+ |
165 |
+PATCHES=( |
166 |
+ "${FILESDIR}"/${P}-libressl.patch |
167 |
+) |
168 |
+ |
169 |
+QT5_TARGET_SUBDIRS=( |
170 |
+ src/network |
171 |
+ src/plugins/bearer/generic |
172 |
+) |
173 |
+ |
174 |
+QT5_GENTOO_CONFIG=( |
175 |
+ libproxy:libproxy: |
176 |
+ ssl::SSL |
177 |
+ ssl::OPENSSL |
178 |
+ ssl:openssl-linked:LINKED_OPENSSL |
179 |
+) |
180 |
+ |
181 |
+QT5_GENTOO_PRIVATE_CONFIG=( |
182 |
+ :network |
183 |
+) |
184 |
+ |
185 |
+pkg_setup() { |
186 |
+ use connman && QT5_TARGET_SUBDIRS+=(src/plugins/bearer/connman) |
187 |
+ use networkmanager && QT5_TARGET_SUBDIRS+=(src/plugins/bearer/networkmanager) |
188 |
+} |
189 |
+ |
190 |
+src_configure() { |
191 |
+ local myconf=( |
192 |
+ $(usex connman -dbus-linked '') |
193 |
+ $(qt_use libproxy) |
194 |
+ $(usex networkmanager -dbus-linked '') |
195 |
+ $(qt_use sctp) |
196 |
+ $(usex ssl -openssl-linked '') |
197 |
+ ) |
198 |
+ qt5-build_src_configure |
199 |
+} |