libraries/qt5: Fix build against nss 3.23.

Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
This commit is contained in:
Willy Sudiarto Raharjo 2016-05-05 07:47:27 +07:00
parent 83dfa9f3d4
commit 000cfb8176
2 changed files with 88 additions and 1 deletions

View file

@ -0,0 +1,83 @@
QTBUG-51890: qtwebengine fails to build with system nss 3.23
Patch obtained from:
https://github.com/qtproject/qtwebengine/commit/82900c7b96b2a6fb42fe3841df7685b820edd588.patch
And modified to exclude the "Subproject commit" lines.
# ----------------------------------------------------------------------------
From 82900c7b96b2a6fb42fe3841df7685b820edd588 Mon Sep 17 00:00:00 2001
From: Kai Koehne <kai.koehne@theqtcompany.com>
Date: Thu, 24 Mar 2016 13:55:28 +0100
Subject: [PATCH] Use system NSS only for certificate handling
Compiling against NSS 3.23 fails with current Chromium. Also, with NSS
3.21 there are failures connecting to e.g. google.com.
Fix this by adapting the setup endorsed by upstream Chromium: BoringSSL
is always used for cryptography, and NSS only for certificate handlng.
Patches included in 3rdparty update:
0a385bb [backport] Call EnsureNSSHttpIOInit in the chimera build.
0472123 Fix build against newer NSS
90c62c4 <third_party/libpng> [Backport] update to libpng 1.2.56
34857b8 <third_party/libpng> [Backport] Stop large iCCP chunks causing delays and "Aw Snap!"
Task-number: QTBUG-52193
Task-number: QTBUG-51890
Task-number: QTBUG-52068
Change-Id: If8aaed9b9a09475c5ed0dfec64d31f45ce9670f5
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
---
src/3rdparty | 2 +-
src/core/config/linux.pri | 9 ++++++---
tools/qmake/mkspecs/features/configure.prf | 4 ++--
3 files changed, 9 insertions(+), 6 deletions(-)
#diff --git a/src/3rdparty b/src/3rdparty
#index 3b2b78c..0a385bb 160000
#--- a/src/3rdparty
#+++ b/src/3rdparty
#@@ -1 +1 @@
#-Subproject commit 3b2b78caa761db2b7b25dc51c3dae8316f595db1
#+Subproject commit 0a385bb01d9cf060fae4c9d350ee98561654df96
diff --git a/src/core/config/linux.pri b/src/core/config/linux.pri
index 88c1a41..39eeb2a 100644
--- a/src/core/config/linux.pri
+++ b/src/core/config/linux.pri
@@ -18,11 +18,14 @@ GYP_CONFIG += \
use_gio=0 \
use_gnome_keyring=0 \
use_kerberos=0 \
- use_pango=0
+ use_pango=0 \
+ use_openssl=1
-!use?(nss) {
+use?(nss) {
+ GYP_CONFIG += use_nss_certs=1 \
+ use_openssl_certs=0
+} else {
GYP_CONFIG += use_nss_certs=0 \
- use_openssl=1 \
use_openssl_certs=1
}
diff --git a/tools/qmake/mkspecs/features/configure.prf b/tools/qmake/mkspecs/features/configure.prf
index 4cb4600..953572d 100644
--- a/tools/qmake/mkspecs/features/configure.prf
+++ b/tools/qmake/mkspecs/features/configure.prf
@@ -72,9 +72,9 @@ defineTest(runConfigure) {
defineTest(finalizeConfigure) {
linux {
use?(nss) {
- log("SSL............................... Using system NSS$${EOL}")
+ log("Certificate handling.............. Using system NSS$${EOL}")
} else {
- log("SSL............................... Using bundled BoringSSL$${EOL}")
+ log("Certificate handling.............. Using bundled BoringSSL$${EOL}")
}
use?(system_icu) {
packagesExist("icu-uc icu-i18n") {

View file

@ -47,7 +47,7 @@
PRGNAM=qt5
VERSION=${VERSION:-5.5.1}
BUILD=${BUILD:-2}
BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
@ -119,6 +119,10 @@ else
RELOCATIONS=""
fi
# Patch for qtwebengine against nss 3.23
cd qtwebengine
cat $CWD/patches/qt5-nss.patch | patch -p1 --verbose || exit 1
cd ..
sed -i "s|-O2|$SLKCFLAGS|" qtbase/mkspecs/common/gcc-base.conf
# Build examples. Default is no.