aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--main/qt5-qtbase/APKBUILD29
-rw-r--r--main/qt5-qtbase/hack-openssl_test.patch11
-rw-r--r--main/qt5-qtbase/libressl-compat.patch130
-rw-r--r--main/qt5-qtbase/qt-musl-iconv-no-bom.patch10
4 files changed, 134 insertions, 46 deletions
diff --git a/main/qt5-qtbase/APKBUILD b/main/qt5-qtbase/APKBUILD
index 3c9831b392..36a8f41573 100644
--- a/main/qt5-qtbase/APKBUILD
+++ b/main/qt5-qtbase/APKBUILD
@@ -1,12 +1,12 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=qt5-qtbase
-pkgver=5.6.1_p1
+pkgver=5.8.0
_ver=${pkgver/_p/-}
_ver=${_ver/_/-}
_ver=${_ver/beta0/beta}
_ver=${_ver/rc0/rc}
_V=${_ver/rc/RC}
-pkgrel=2
+pkgrel=0
pkgdesc="Qt5 - QtBase components"
url="http://qt-project.org/"
arch="all"
@@ -28,6 +28,7 @@ makedepends="$depends_dev
gtk+2.0-dev
hicolor-icon-theme
icu-dev
+ libinput-dev
libjpeg-turbo-dev
libxkbcommon-dev
libxi-dev
@@ -36,6 +37,7 @@ makedepends="$depends_dev
libxslt-dev
libxv-dev
mariadb-dev
+ mtdev-dev
pcre-dev
postgresql-dev
unixodbc-dev
@@ -43,6 +45,7 @@ makedepends="$depends_dev
xcb-util-image-dev
xcb-util-keysyms-dev
xcb-util-wm-dev
+ xcb-util-renderutil-dev
"
install=""
subpackages="$pkgname-dev $pkgname-doc $_sub"
@@ -53,6 +56,7 @@ esac
source="http://download.qt-project.org/$_rel/qt/${pkgver%.*}/$_ver/submodules/qtbase-opensource-src-$_V.tar.xz
qt-musl-iconv-no-bom.patch
libressl-compat.patch
+ hack-openssl_test.patch
"
_qt5_prefix=/usr/lib/qt5
@@ -88,12 +92,9 @@ build() {
-docdir /usr/share/doc/qt5 \
-examplesdir /usr/share/doc/qt5/examples \
-glib \
- -gtkstyle \
-icu \
-importdir "$_qt5_prefix"/imports \
- -largefile \
-libexecdir "$_qt5_prefix"/libexec \
- -no-openvg \
-no-rpath \
-no-separate-debug-info \
-nomake examples \
@@ -189,12 +190,13 @@ x11() {
depends="hicolor-icon-theme"
cd "$pkgdir"
_mv_files \
+ usr/lib/libQt5EglFSDeviceIntegration.so.* \
+ usr/lib/libQt5EglFsKmsSupport.so.* \
usr/lib/libQt5Gui.so.* \
- usr/lib/libQt5Widgets.so.* \
usr/lib/libQt5OpenGL.so.* \
usr/lib/libQt5PrintSupport.so.* \
+ usr/lib/libQt5Widgets.so.* \
usr/lib/libQt5XcbQpa.so.* \
- usr/lib/libQt5EglDeviceIntegration.so.* \
usr/lib/qt5/plugins/egldeviceintegrations \
usr/lib/qt5/plugins/generic \
usr/lib/qt5/plugins/image* \
@@ -207,12 +209,7 @@ x11() {
return 0
}
-md5sums="6f8036a82f8b7fda65cd98f89ca99628 qtbase-opensource-src-5.6.1-1.tar.xz
-077e31e0cb0d25637a3b3638fffbef3c qt-musl-iconv-no-bom.patch
-4d9825668b5d571ef4d0d0ea787721af libressl-compat.patch"
-sha256sums="329678347ec5ebb404225345300a8deb1e7c991322a4c50584be550c69be7c39 qtbase-opensource-src-5.6.1-1.tar.xz
-40b337c16bbb1d259f315fe5a1b110f9917223aee53b82809934efa4fa5e62a3 qt-musl-iconv-no-bom.patch
-f26a62f1747db5b4be4a812a23ca0b7ae49ee14596a719cdbaf5ea39ddb64bcf libressl-compat.patch"
-sha512sums="e9660bee2e0acd91c3232831e4f1a99ad30b82b8ff26850494efec89a525499b721adfb63f7ede586408489d3ebf727b842cd12eab665c58769001454e7f661d qtbase-opensource-src-5.6.1-1.tar.xz
-a185ea5e984d2636e3f9f6c4ed8fad66a17575da0679724da60a3dc519468ab45aa9369f43ce5c64f07cb730910e36623164aefafca3aabe0359c62becca870e qt-musl-iconv-no-bom.patch
-7b73964efef1a6c00cf98da7569dba1c93c0a9ff3a397ce2e38a0c203505dbb49e9bfb751e0e59af75b3ee237fb6f320caee4bab3e2e564236d484cf1879388b libressl-compat.patch"
+sha512sums="36a1ba4b0dba02ae65c3b2b0aa3fb3767cbee4dbdf204c9ded7d1700e70144ce85a3a66167f86cc716a1fdd38d832962b2a752e803b0647d03032b2685da5ced qtbase-opensource-src-5.8.0.tar.xz
+7d68421a14f0259535c977d8a521c98918193c107b76ac664571b12f5b0d7588a0d0e1297af412a26753a393b21f3f44c3274fa8ab5bc87f03705a3a03acb444 qt-musl-iconv-no-bom.patch
+af284ebb51e3d903275f0f43901755fee0d0071a2fa4f5d6e8a4b00d9185d9d9fffba8e5cbda8c4aa2b3acde69fd26a449b23ad104f509fd4156f6908e0b43da libressl-compat.patch
+3bc1380268f077587114cfa535c58403f59c4c931902d0599633e1365f075d2e253b6f461e22ed3fe3adb12ef45ea97e1dbcbc1bbe0d151435703986f25c44c6 hack-openssl_test.patch"
diff --git a/main/qt5-qtbase/hack-openssl_test.patch b/main/qt5-qtbase/hack-openssl_test.patch
new file mode 100644
index 0000000000..fdf31b45df
--- /dev/null
+++ b/main/qt5-qtbase/hack-openssl_test.patch
@@ -0,0 +1,11 @@
+--- qtbase/config.tests/unix/openssl/openssl.cpp 2016-09-16 07:49:42.000000000 +0200
++++ qtbase/config.tests/unix/openssl/openssl.cpp 2016-10-21 19:05:10.099362793 +0200
+@@ -39,7 +39,7 @@
+
+ #include <openssl/ssl.h>
+
+-#if OPENSSL_VERSION_NUMBER-0 >= 0x10002000L && !defined(OPENSSL_NO_EC) && !defined(SSL_CTRL_SET_CURVES)
++#if (OPENSSL_VERSION_NUMBER-0 >= 0x10002000L) && !defined(LIBRESSL_VERSION_NUMBER) && !defined(OPENSSL_NO_EC) && !defined(SSL_CTRL_SET_CURVES)
+ # error "OpenSSL was reported as >= 1.0.2 but is missing required features, possibly it's libressl which is unsupported"
+ #endif
+
diff --git a/main/qt5-qtbase/libressl-compat.patch b/main/qt5-qtbase/libressl-compat.patch
index cc6d3aadbe..c9f2e33f50 100644
--- a/main/qt5-qtbase/libressl-compat.patch
+++ b/main/qt5-qtbase/libressl-compat.patch
@@ -1,22 +1,37 @@
-The checks for OPENSSL_VERSION_NUMBER > 0x10002000 are used to
-enable openssl specific macros and functions which libressl
-obviously does not provide, thus add some additional tests
-to disable that code for libressl.
-
---- qtbase/src/network/ssl/qsslcontext_openssl.cpp 2015-06-29 22:04:46.000000000 +0200
-+++ qtbase/src/network/ssl/qsslcontext_openssl.cpp 2015-07-04 03:51:25.926570550 +0200
-@@ -338,7 +338,7 @@
+--- qtbase/src/network/ssl/qsslellipticcurve_openssl.cpp 2017-01-18 15:20:58.000000000 +0100
++++ qtbase/src/network/ssl/qsslellipticcurve_openssl.cpp 2017-02-21 16:25:56.477986158 +0100
+@@ -82,7 +82,7 @@
- const QVector<QSslEllipticCurve> qcurves = sslContext->sslConfiguration.ellipticCurves();
- if (!qcurves.isEmpty()) {
--#if OPENSSL_VERSION_NUMBER >= 0x10002000L && !defined(OPENSSL_NO_EC)
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L && !defined(OPENSSL_NO_EC) && defined(SSL_CTRL_SET_CURVES)
- // Set the curves to be used
- if (q_SSLeay() >= 0x10002000L) {
- // SSL_CTX_ctrl wants a non-const pointer as last argument,
---- qtbase/src/network/ssl/qsslsocket_openssl_symbols.cpp 2015-06-29 22:04:46.000000000 +0200
-+++ qtbase/src/network/ssl/qsslsocket_openssl_symbols.cpp 2015-07-04 03:58:29.430569295 +0200
-@@ -406,7 +406,7 @@
+ int nid = q_OBJ_sn2nid(curveNameLatin1.data());
+
+-#if OPENSSL_VERSION_NUMBER >= 0x10002000L
++#if (OPENSSL_VERSION_NUMBER >= 0x10002000L) && !defined(LIBRESSL_VERSION_NUMBER)
+ if (nid == 0 && q_SSLeay() >= 0x10002000L)
+ nid = q_EC_curve_nist2nid(curveNameLatin1.data());
+ #endif // OPENSSL_VERSION_NUMBER >= 0x10002000L
+--- qtbase/src/network/ssl/qsslsocket_openssl.cpp 2017-01-18 15:20:58.000000000 +0100
++++ qtbase/src/network/ssl/qsslsocket_openssl.cpp 2017-02-21 19:12:22.200604090 +0100
+@@ -1626,7 +1626,7 @@
+ }
+ #endif // OPENSSL_VERSION_NUMBER >= 0x1000100fL ...
+
+-#if OPENSSL_VERSION_NUMBER >= 0x10002000L
++#if (OPENSSL_VERSION_NUMBER >= 0x10002000L) && !defined(LIBRESSL_VERSION_NUMBER)
+ if (q_SSLeay() >= 0x10002000L && mode == QSslSocket::SslClientMode) {
+ EVP_PKEY *key;
+ if (q_SSL_get_server_tmp_key(ssl, &key))
+--- qtbase/src/network/ssl/qsslsocket_openssl_symbols.cpp 2017-01-18 15:20:58.000000000 +0100
++++ qtbase/src/network/ssl/qsslsocket_openssl_symbols.cpp 2017-02-21 19:14:32.805677245 +0100
+@@ -151,7 +151,7 @@
+ DEFINEFUNC(BIO_METHOD *, BIO_s_mem, void, DUMMYARG, return 0, return)
+ DEFINEFUNC3(int, BIO_write, BIO *a, a, const void *b, b, int c, c, return -1, return)
+ DEFINEFUNC(int, BN_num_bits, const BIGNUM *a, a, return 0, return)
+-#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++#if (OPENSSL_VERSION_NUMBER >= 0x10100000L) && !defined(LIBRESSL_VERSION_NUMBER)
+ DEFINEFUNC2(int, BN_is_word, BIGNUM *a, a, BN_ULONG w, w, return 0, return)
+ #endif
+ DEFINEFUNC2(BN_ULONG, BN_mod_word, const BIGNUM *a, a, BN_ULONG w, w, return -1, return)
+@@ -451,7 +451,7 @@
DEFINEFUNC(EC_KEY *, EC_KEY_new_by_curve_name, int nid, nid, return 0, return)
DEFINEFUNC(void, EC_KEY_free, EC_KEY *ecdh, ecdh, return, DUMMYARG)
DEFINEFUNC2(size_t, EC_get_builtin_curves, EC_builtin_curve * r, r, size_t nitems, nitems, return 0, return)
@@ -25,14 +40,79 @@ to disable that code for libressl.
DEFINEFUNC(int, EC_curve_nist2nid, const char *name, name, return 0, return)
#endif // OPENSSL_VERSION_NUMBER >= 0x10002000L
#endif // OPENSSL_NO_EC
---- qtbase/src/network/ssl/qsslellipticcurve_openssl.cpp 2015-07-04 04:05:26.110568061 +0200
-+++ qtbase/src/network/ssl/qsslellipticcurve_openssl.cpp 2015-07-04 04:06:01.709567956 +0200
-@@ -76,7 +76,7 @@
+@@ -791,7 +791,7 @@
+ RESOLVEFUNC(EC_GROUP_get_degree)
+ #endif
+ RESOLVEFUNC(BN_num_bits)
+-#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++#if (OPENSSL_VERSION_NUMBER >= 0x10100000L) && !defined(LIBRESSL_VERSION_NUMBER)
+ RESOLVEFUNC(BN_is_word)
+ #endif
+ RESOLVEFUNC(BN_mod_word)
+@@ -1020,7 +1020,7 @@
+ RESOLVEFUNC(EC_KEY_new_by_curve_name)
+ RESOLVEFUNC(EC_KEY_free)
+ RESOLVEFUNC(EC_get_builtin_curves)
+-#if OPENSSL_VERSION_NUMBER >= 0x10002000L
++#if (OPENSSL_VERSION_NUMBER >= 0x10002000L) && !defined(LIBRESSL_VERSION_NUMBER)
+ if (q_SSLeay() >= 0x10002000L)
+ RESOLVEFUNC(EC_curve_nist2nid)
+ #endif // OPENSSL_VERSION_NUMBER >= 0x10002000L
+--- qtbase/src/network/ssl/qsslsocket_openssl_symbols_p.h 2017-01-18 15:20:58.000000000 +0100
++++ qtbase/src/network/ssl/qsslsocket_openssl_symbols_p.h 2017-02-21 19:15:38.083714302 +0100
+@@ -228,7 +228,7 @@
+ Q_AUTOTEST_EXPORT BIO_METHOD *q_BIO_s_mem();
+ Q_AUTOTEST_EXPORT int q_BIO_write(BIO *a, const void *b, int c);
+ int q_BN_num_bits(const BIGNUM *a);
+-#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++#if (OPENSSL_VERSION_NUMBER >= 0x10100000L) && !defined(LIBRESSL_VERSION_NUMBER)
+ int q_BN_is_word(BIGNUM *a, BN_ULONG w);
+ #else
+ // BN_is_word is implemented purely as a
+@@ -241,7 +241,7 @@
+ //
+ // Users are required to include <openssl/bn.h>.
+ #define q_BN_is_word BN_is_word
+-#endif // OPENSSL_VERSION_NUMBER >= 0x10100000L
++#endif // (OPENSSL_VERSION_NUMBER >= 0x10100000L) && !defined(LIBRESSL_VERSION_NUMBER)
+ BN_ULONG q_BN_mod_word(const BIGNUM *a, BN_ULONG w);
+ #ifndef OPENSSL_NO_EC
+ const EC_GROUP* q_EC_KEY_get0_group(const EC_KEY* k);
+@@ -509,13 +509,13 @@
+
+ // EC curves management
+ size_t q_EC_get_builtin_curves(EC_builtin_curve *r, size_t nitems);
+-#if OPENSSL_VERSION_NUMBER >= 0x10002000L
++#if (OPENSSL_VERSION_NUMBER >= 0x10002000L) && !defined(LIBRESSL_VERSION_NUMBER)
+ int q_EC_curve_nist2nid(const char *name);
+-#endif // OPENSSL_VERSION_NUMBER >= 0x10002000L
++#endif // (OPENSSL_VERSION_NUMBER >= 0x10002000L) && !defined(LIBRESSL_VERSION_NUMBER)
+ #endif // OPENSSL_NO_EC
+-#if OPENSSL_VERSION_NUMBER >= 0x10002000L
++#if (OPENSSL_VERSION_NUMBER >= 0x10002000L) && !defined(LIBRESSL_VERSION_NUMBER)
+ #define q_SSL_get_server_tmp_key(ssl, key) q_SSL_ctrl((ssl), SSL_CTRL_GET_SERVER_TMP_KEY, 0, (char *)key)
+-#endif // OPENSSL_VERSION_NUMBER >= 0x10002000L
++#endif // (OPENSSL_VERSION_NUMBER >= 0x10002000L) && !defined(LIBRESSL_VERSION_NUMBER)
- int nid = q_OBJ_sn2nid(curveNameLatin1.data());
+ // PKCS#12 support
+ int q_PKCS12_parse(PKCS12 *p12, const char *pass, EVP_PKEY **pkey, X509 **cert, STACK_OF(X509) **ca);
+--- qtbase/src/network/ssl/qsslcontext_openssl.cpp 2017-01-18 15:20:58.000000000 +0100
++++ qtbase/src/network/ssl/qsslcontext_openssl.cpp 2017-02-21 19:23:04.291975945 +0100
+@@ -344,7 +344,7 @@
+ const QVector<QSslEllipticCurve> qcurves = sslContext->sslConfiguration.ellipticCurves();
+ if (!qcurves.isEmpty()) {
+-#if OPENSSL_VERSION_NUMBER >= 0x10002000L && !defined(OPENSSL_NO_EC)
++#if (OPENSSL_VERSION_NUMBER >= 0x10002000L) && !defined(OPENSSL_NO_EC) && !defined(LIBRESSL_VERSION_NUMBER)
+ // Set the curves to be used
+ if (q_SSLeay() >= 0x10002000L) {
+ // SSL_CTX_ctrl wants a non-const pointer as last argument,
+@@ -462,7 +462,7 @@
+ m_npnContext.data = reinterpret_cast<unsigned char *>(m_supportedNPNVersions.data());
+ m_npnContext.len = m_supportedNPNVersions.count();
+ m_npnContext.status = QSslConfiguration::NextProtocolNegotiationNone;
-#if OPENSSL_VERSION_NUMBER >= 0x10002000L
+#if (OPENSSL_VERSION_NUMBER >= 0x10002000L) && !defined(LIBRESSL_VERSION_NUMBER)
- if (nid == 0 && q_SSLeay() >= 0x10002000L)
- nid = q_EC_curve_nist2nid(curveNameLatin1.data());
- #endif // OPENSSL_VERSION_NUMBER >= 0x10002000L
+ if (q_SSLeay() >= 0x10002000L) {
+ // Callback's type has a parameter 'const unsigned char ** out'
+ // since it was introduced in 1.0.2. Internally, OpenSSL's own code
diff --git a/main/qt5-qtbase/qt-musl-iconv-no-bom.patch b/main/qt5-qtbase/qt-musl-iconv-no-bom.patch
index 35380ad671..8bf35ec1ec 100644
--- a/main/qt5-qtbase/qt-musl-iconv-no-bom.patch
+++ b/main/qt5-qtbase/qt-musl-iconv-no-bom.patch
@@ -1,11 +1,11 @@
---- qt-everywhere-opensource-src-4.8.5/src/corelib/codecs/qiconvcodec.cpp.orig
-+++ qt-everywhere-opensource-src-4.8.5/src/corelib/codecs/qiconvcodec.cpp
-@@ -62,7 +62,7 @@
+--- qtbase/src/corelib/codecs/qiconvcodec.cpp 2017-01-18 15:20:58.000000000 +0100
++++ qtbase/src/corelib/codecs/qiconvcodec.cpp 2017-02-21 14:33:32.423808603 +0100
+@@ -64,7 +64,7 @@
#elif defined(Q_OS_AIX)
# define NO_BOM
# define UTF16 "UCS-2"
--#elif defined(Q_OS_FREEBSD) || defined(Q_OS_MAC)
-+#elif defined(Q_OS_FREEBSD) || defined(Q_OS_MAC) || (defined(Q_OS_LINUX) && !defined(__GLIBC__))
+-#elif defined(Q_OS_FREEBSD)
++#elif defined(Q_OS_FREEBSD) || (defined(Q_OS_LINUX) && !defined(__GLIBC__))
# define NO_BOM
# if Q_BYTE_ORDER == Q_BIG_ENDIAN
# define UTF16 "UTF-16BE"