From 1cee6ac6b3c5576b11097a02dc578d9fcc2b47ed Mon Sep 17 00:00:00 2001 From: Gluzskiy Alexandr Date: Sat, 25 Nov 2017 22:33:40 +0300 Subject: qtwebengine, qtnetwork 5.10.x ebuilds with libressl patches --- .../qtnetwork/files/qtnetwork-5.10-libressl.patch | 42 ++++++++ dev-qt/qtnetwork/qtnetwork-5.10.9999-r1.ebuild | 4 + dev-qt/qtwebengine/qtwebengine-5.10.9999-r1.ebuild | 119 +++++++++++++++++++++ dev-qt/qtwebengine/qtwebengine-5.9.9999-r1.ebuild | 115 -------------------- 4 files changed, 165 insertions(+), 115 deletions(-) create mode 100644 dev-qt/qtnetwork/files/qtnetwork-5.10-libressl.patch create mode 100644 dev-qt/qtwebengine/qtwebengine-5.10.9999-r1.ebuild delete mode 100644 dev-qt/qtwebengine/qtwebengine-5.9.9999-r1.ebuild (limited to 'dev-qt') diff --git a/dev-qt/qtnetwork/files/qtnetwork-5.10-libressl.patch b/dev-qt/qtnetwork/files/qtnetwork-5.10-libressl.patch new file mode 100644 index 0000000..3a1f80a --- /dev/null +++ b/dev-qt/qtnetwork/files/qtnetwork-5.10-libressl.patch @@ -0,0 +1,42 @@ +--- a/config.tests/unix/openssl11/openssl.cpp 2017-11-05 16:07:40.963385070 -0500 ++++ b/config.tests/unix/openssl11/openssl.cpp 2017-11-05 16:07:51.755255545 -0500 +@@ -39,7 +39,7 @@ + + #include + +-#if !defined(OPENSSL_VERSION_NUMBER) || OPENSSL_VERSION_NUMBER-0 < 0x10100000L ++#if !defined(OPENSSL_VERSION_NUMBER) || OPENSSL_VERSION_NUMBER-0 < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + # error "OpenSSL >= 1.1 is required" + #endif + +--- a/src/network/ssl/qsslsocket_openssl_symbols_p.h 2017-11-06 00:02:18.919611226 -0500 ++++ b/src/network/ssl/qsslsocket_openssl_symbols_p.h 2017-11-06 00:09:46.879756111 -0500 +@@ -232,7 +232,7 @@ + int q_BIO_read(BIO *a, void *b, int c); + 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 QT_CONFIG(opensslv11) + int q_BN_is_word(BIGNUM *a, BN_ULONG w); + #else + // BN_is_word is implemented purely as a +@@ -245,7 +245,7 @@ + // + // Users are required to include . + #define q_BN_is_word BN_is_word +-#endif // OPENSSL_VERSION_NUMBER >= 0x10100000L ++#endif // QT_CONFIG + 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); +--- a/src/network/ssl/qsslsocket_openssl_symbols.cpp 2017-11-06 00:04:58.843877923 -0500 ++++ b/src/network/ssl/qsslsocket_openssl_symbols.cpp 2017-11-06 00:06:12.985074360 -0500 +@@ -1017,7 +1017,7 @@ + RESOLVEFUNC(EC_GROUP_get_degree) + #endif + RESOLVEFUNC(BN_num_bits) +-#if OPENSSL_VERSION_NUMBER >= 0x10100000L ++#if QT_CONFIG(opensslv11) + RESOLVEFUNC(BN_is_word) + #endif + RESOLVEFUNC(BN_mod_word) diff --git a/dev-qt/qtnetwork/qtnetwork-5.10.9999-r1.ebuild b/dev-qt/qtnetwork/qtnetwork-5.10.9999-r1.ebuild index 24105c2..264a801 100644 --- a/dev-qt/qtnetwork/qtnetwork-5.10.9999-r1.ebuild +++ b/dev-qt/qtnetwork/qtnetwork-5.10.9999-r1.ebuild @@ -38,6 +38,10 @@ QT5_GENTOO_CONFIG=( ssl:openssl-linked:LINKED_OPENSSL ) +PATCHES=( + "${FILESDIR}/qtnetwork-5.10-libressl.patch" +) + pkg_setup() { use connman && QT5_TARGET_SUBDIRS+=(src/plugins/bearer/connman) use networkmanager && QT5_TARGET_SUBDIRS+=(src/plugins/bearer/networkmanager) diff --git a/dev-qt/qtwebengine/qtwebengine-5.10.9999-r1.ebuild b/dev-qt/qtwebengine/qtwebengine-5.10.9999-r1.ebuild new file mode 100644 index 0000000..d515498 --- /dev/null +++ b/dev-qt/qtwebengine/qtwebengine-5.10.9999-r1.ebuild @@ -0,0 +1,119 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +PYTHON_COMPAT=( python2_7 ) +inherit multiprocessing pax-utils python-any-r1 qt5-build + +DESCRIPTION="Library for rendering dynamic web content in Qt5 C++ and QML applications" + +if [[ ${QT5_BUILD_TYPE} == release ]]; then + KEYWORDS="~amd64 ~arm ~arm64 ~x86" +fi + +IUSE="alsa bindist geolocation pax_kernel pulseaudio +system-ffmpeg +system-icu widgets" + +RDEPEND=" + app-arch/snappy:= + dev-libs/glib:2 + dev-libs/nspr + dev-libs/nss + ~dev-qt/qtcore-${PV} + ~dev-qt/qtdeclarative-${PV} + ~dev-qt/qtgui-${PV} + ~dev-qt/qtnetwork-${PV} + ~dev-qt/qtprintsupport-${PV} + ~dev-qt/qtwebchannel-${PV}[qml] + dev-libs/expat + dev-libs/libevent:= + dev-libs/libxml2 + dev-libs/libxslt + dev-libs/protobuf:= + media-libs/fontconfig + media-libs/freetype + media-libs/harfbuzz:= + media-libs/libpng:0= + >=media-libs/libvpx-1.5:=[svc] + media-libs/libwebp:= + media-libs/mesa + media-libs/opus + net-libs/libsrtp:0= + sys-apps/dbus + sys-apps/pciutils + sys-libs/libcap + sys-libs/zlib[minizip] + virtual/jpeg:0 + virtual/libudev + x11-libs/libdrm + x11-libs/libX11 + x11-libs/libXcomposite + x11-libs/libXcursor + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXi + x11-libs/libXrandr + x11-libs/libXrender + x11-libs/libXScrnSaver + x11-libs/libXtst + alsa? ( media-libs/alsa-lib ) + geolocation? ( ~dev-qt/qtpositioning-${PV} ) + pulseaudio? ( media-sound/pulseaudio:= ) + system-ffmpeg? ( media-video/ffmpeg:0= ) + system-icu? ( dev-libs/icu:= ) + widgets? ( ~dev-qt/qtwidgets-${PV} ) +" +DEPEND="${RDEPEND} + ${PYTHON_DEPS} + dev-util/gperf + dev-util/ninja + dev-util/re2c + sys-devel/bison + pax_kernel? ( sys-apps/elfix ) +" + +src_prepare() { + use pax_kernel && PATCHES+=( "${FILESDIR}/${PN}-5.9.0-paxmark-mksnapshot.patch" ) + PATCHES+=( + "${FILESDIR}/build_fix.patch" + "${FILESDIR}/build_fix2.patch" + ) + + # bug 620444 - ensure local headers are used + find "${S}" -type f -name "*.pr[fio]" | xargs sed -i -e 's|INCLUDEPATH += |&$$QTWEBENGINE_ROOT/include |' || die + + qt_use_disable_config alsa alsa src/core/config/linux.pri + qt_use_disable_config pulseaudio pulseaudio src/core/config/linux.pri + + qt_use_disable_mod geolocation positioning \ + mkspecs/features/configure.prf \ + src/core/core_chromium.pri \ + src/core/core_common.pri + + qt_use_disable_mod widgets widgets src/src.pro + + qt5-build_src_prepare +} + +src_configure() { + export NINJA_PATH=/usr/bin/ninja + export NINJAFLAGS="${NINJAFLAGS:--j$(makeopts_jobs) -l$(makeopts_loadavg "${MAKEOPTS}" 0) -v}" + + local myqmakeargs=( + $(usex bindist '' 'WEBENGINE_CONFIG+=use_proprietary_codecs') + $(usex system-ffmpeg 'WEBENGINE_CONFIG+=use_system_ffmpeg' '') + $(usex system-icu 'WEBENGINE_CONFIG+=use_system_icu' '') + ) + qt5-build_src_configure +} + +src_install() { + qt5-build_src_install + + # bug 601472 + if [[ ! -f ${D%/}${QT5_LIBDIR}/libQt5WebEngine.so ]]; then + die "${CATEGORY}/${PF} failed to build anything. Please report to https://bugs.gentoo.org/" + fi + + pax-mark m "${D%/}${QT5_LIBEXECDIR}"/QtWebEngineProcess +} diff --git a/dev-qt/qtwebengine/qtwebengine-5.9.9999-r1.ebuild b/dev-qt/qtwebengine/qtwebengine-5.9.9999-r1.ebuild deleted file mode 100644 index cd913e8..0000000 --- a/dev-qt/qtwebengine/qtwebengine-5.9.9999-r1.ebuild +++ /dev/null @@ -1,115 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 -PYTHON_COMPAT=( python2_7 ) -inherit multiprocessing pax-utils python-any-r1 qt5-build - -DESCRIPTION="Library for rendering dynamic web content in Qt5 C++ and QML applications" - -if [[ ${QT5_BUILD_TYPE} == release ]]; then - KEYWORDS="~amd64 ~arm64 ~x86" -fi - -IUSE="alsa bindist geolocation pax_kernel pulseaudio +system-ffmpeg +system-icu widgets" - -RDEPEND=" - app-arch/snappy - dev-libs/glib:2 - dev-libs/nspr - dev-libs/nss - ~dev-qt/qtcore-${PV} - ~dev-qt/qtdeclarative-${PV} - ~dev-qt/qtgui-${PV} - ~dev-qt/qtnetwork-${PV} - ~dev-qt/qtwebchannel-${PV}[qml] - dev-libs/expat - dev-libs/libevent:= - dev-libs/libxml2 - dev-libs/libxslt - dev-libs/protobuf:= - media-libs/fontconfig - media-libs/freetype - media-libs/harfbuzz:= - media-libs/libpng:0= - >=media-libs/libvpx-1.5:=[svc] - media-libs/libwebp:= - media-libs/mesa - media-libs/opus - net-libs/libsrtp:0= - sys-apps/dbus - sys-apps/pciutils - sys-libs/libcap - sys-libs/zlib[minizip] - virtual/jpeg:0 - virtual/libudev - x11-libs/libdrm - x11-libs/libX11 - x11-libs/libXcomposite - x11-libs/libXcursor - x11-libs/libXdamage - x11-libs/libXext - x11-libs/libXfixes - x11-libs/libXi - x11-libs/libXrandr - x11-libs/libXrender - x11-libs/libXScrnSaver - x11-libs/libXtst - alsa? ( media-libs/alsa-lib ) - geolocation? ( ~dev-qt/qtpositioning-${PV} ) - pulseaudio? ( media-sound/pulseaudio:= ) - system-ffmpeg? ( media-video/ffmpeg:0= ) - system-icu? ( dev-libs/icu:= ) - widgets? ( ~dev-qt/qtwidgets-${PV} ) -" -DEPEND="${RDEPEND} - ${PYTHON_DEPS} - dev-util/gperf - dev-util/ninja - dev-util/re2c - sys-devel/bison - pax_kernel? ( sys-apps/elfix ) -" - -src_prepare() { - use pax_kernel && PATCHES+=( "${FILESDIR}/${PN}-5.9.0-paxmark-mksnapshot.patch" ) - PATCHES+=( - "${FILESDIR}/build_fix.patch" - "${FILESDIR}/build_fix2.patch" - ) - - qt_use_disable_config alsa alsa src/core/config/linux.pri - qt_use_disable_config pulseaudio pulseaudio src/core/config/linux.pri - - qt_use_disable_mod geolocation positioning \ - mkspecs/features/configure.prf \ - src/core/core_chromium.pri \ - src/core/core_common.pri - - qt_use_disable_mod widgets widgets src/src.pro - - qt5-build_src_prepare -} - -src_configure() { - export NINJA_PATH=/usr/bin/ninja - export NINJAFLAGS="${NINJAFLAGS:--j$(makeopts_jobs) -l$(makeopts_loadavg "${MAKEOPTS}" 0) -v}" - - local myqmakeargs=( - $(usex bindist '' 'WEBENGINE_CONFIG+=use_proprietary_codecs') - $(usex system-ffmpeg 'WEBENGINE_CONFIG+=use_system_ffmpeg' '') - $(usex system-icu 'WEBENGINE_CONFIG+=use_system_icu' '') - ) - qt5-build_src_configure -} - -src_install() { - qt5-build_src_install - - # bug 601472 - if [[ ! -f ${D%/}${QT5_LIBDIR}/libQt5WebEngine.so ]]; then - die "${CATEGORY}/${PF} failed to build anything. Please report to https://bugs.gentoo.org/" - fi - - pax-mark m "${D%/}${QT5_LIBEXECDIR}"/QtWebEngineProcess -} -- cgit v1.2.3