patch for qt5-webengine when using libressl
XueFeng Deng
dengxf at gmail.com
Sat May 13 07:26:48 UTC 2017
hi guys,
when build ports with libressl as the default ssl library, qt5-webengine
will failed due to ED25519 related code in qt5-webengine.
the attached file will fix this issue. please test and merge.
thanks.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-freebsd/attachments/20170513/f714a554/attachment.html>
-------------- next part --------------
diff -nurNp qt5-webengine.orig/Makefile qt5-webengine/Makefile
--- qt5-webengine.orig/Makefile 2017-05-06 07:14:36.003008000 +0800
+++ qt5-webengine/Makefile 2017-05-06 07:11:19.819618000 +0800
@@ -91,6 +91,11 @@ MAKE_ENV+= CC="${CC}" CXX="${CXX}" ${CON
# than the rest of Qt5.
DISTINFO_FILE= ${MASTERDIR}/distinfo
+.include <bsd.port.pre.mk>
+.if empty(SSL_DEFAULT:Mlibressl*)
+EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-src_3rdparty_chromium_content_common_experiments_api_key.cc
+.endif
+
post-extract:
# Install FreeBSD's freebsd.pri file.
${CP} ${FILESDIR}/freebsd.pri ${WRKSRC}/src/core/config/freebsd.pri
diff -nurNp qt5-webengine.orig/files/extra-patch-src_3rdparty_chromium_content_common_experiments_api_key.cc qt5-webengine/files/extra-patch-src_3rdparty_chromium_content_common_experiments_api_key.cc
--- qt5-webengine.orig/files/extra-patch-src_3rdparty_chromium_content_common_experiments_api_key.cc 1970-01-01 08:00:00.000000000 +0800
+++ qt5-webengine/files/extra-patch-src_3rdparty_chromium_content_common_experiments_api_key.cc 2017-05-06 06:33:41.998704000 +0800
@@ -0,0 +1,19 @@
+--- src/3rdparty/chromium/content/common/experiments/api_key.cc.orig 2017-05-06 06:24:25.335118000 +0800
++++ src/3rdparty/chromium/content/common/experiments/api_key.cc 2017-05-06 06:30:18.511543000 +0800
+@@ -5,6 +5,7 @@
+ #include "content/common/experiments/api_key.h"
+
+ #include <openssl/curve25519.h>
++#include <nettle/eddsa.h>
+
+ #include <vector>
+
+@@ -134,7 +135,7 @@
+ return false;
+ }
+
+- int result = ED25519_verify(
++ int result = ed25519_sha512_verify(
+ reinterpret_cast<const uint8_t*>(data.data()), data.length(),
+ reinterpret_cast<const uint8_t*>(signature.data()),
+ reinterpret_cast<const uint8_t*>(public_key.data()));
More information about the kde-freebsd
mailing list