summaryrefslogtreecommitdiff
path: root/dev-qt
diff options
context:
space:
mode:
authorMichael Palimaka <kensington@gentoo.org>2016-01-15 18:08:44 +1100
committerMichael Palimaka <kensington@gentoo.org>2016-01-15 18:08:56 +1100
commit09ef50e18b133b1fa59ef57a384933d7dde4e69c (patch)
treeee81951b07e82161360e82832845555ab83c93e1 /dev-qt
parentdev-qt: further revbumps to prevent mixing of Qt versions (diff)
downloadgentoo-09ef50e18b133b1fa59ef57a384933d7dde4e69c.tar.gz
gentoo-09ef50e18b133b1fa59ef57a384933d7dde4e69c.tar.bz2
gentoo-09ef50e18b133b1fa59ef57a384933d7dde4e69c.zip
dev-qt/qtwebkit: introduce jit USE flag
Also prevent mixing of Qt versions. Gentoo-bug: 562396 Package-Manager: portage-2.2.26
Diffstat (limited to 'dev-qt')
-rw-r--r--dev-qt/qtwebkit/files/qtwebkit-5.5.1-disable-jit.patch15
-rw-r--r--dev-qt/qtwebkit/qtwebkit-5.5.1-r1.ebuild106
2 files changed, 121 insertions, 0 deletions
diff --git a/dev-qt/qtwebkit/files/qtwebkit-5.5.1-disable-jit.patch b/dev-qt/qtwebkit/files/qtwebkit-5.5.1-disable-jit.patch
new file mode 100644
index 00000000000..40e58f0d0de
--- /dev/null
+++ b/dev-qt/qtwebkit/files/qtwebkit-5.5.1-disable-jit.patch
@@ -0,0 +1,15 @@
+Allow disabling JIT for hardened.
+
+Author: Magnus Granberg <zorry@gentoo.org>
+Gentoo-bug: 562396
+
+--- a/Tools/qmake/mkspecs/features/features.pri
++++ b/Tools/qmake/mkspecs/features/features.pri
+@@ -70,6 +70,7 @@ FEATURE_DEFAULTS = \
+ ENABLE_INPUT_TYPE_WEEK=0 \
+ ENABLE_INSPECTOR=1 \
+ ENABLE_INSPECTOR_SERVER=1 \
++ ENABLE_JIT=0 \
+ ENABLE_JAVASCRIPT_DEBUGGER=1 \
+ ENABLE_LEGACY_CSS_VENDOR_PREFIXES=0 \
+ ENABLE_LEGACY_NOTIFICATIONS=1 \
diff --git a/dev-qt/qtwebkit/qtwebkit-5.5.1-r1.ebuild b/dev-qt/qtwebkit/qtwebkit-5.5.1-r1.ebuild
new file mode 100644
index 00000000000..7153b721a87
--- /dev/null
+++ b/dev-qt/qtwebkit/qtwebkit-5.5.1-r1.ebuild
@@ -0,0 +1,106 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+PYTHON_COMPAT=( python2_7 )
+inherit python-any-r1 qt5-build
+
+DESCRIPTION="WebKit rendering library for the Qt5 framework (deprecated)"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+fi
+
+# TODO: qttestlib
+
+IUSE="geolocation gstreamer gstreamer010 +jit multimedia opengl orientation printsupport qml webchannel webp"
+REQUIRED_USE="?? ( gstreamer gstreamer010 multimedia )"
+
+RDEPEND="
+ dev-db/sqlite:3
+ dev-libs/icu:=
+ >=dev-libs/leveldb-1.18-r1
+ dev-libs/libxml2:2
+ dev-libs/libxslt
+ ~dev-qt/qtcore-${PV}[icu]
+ ~dev-qt/qtgui-${PV}
+ ~dev-qt/qtnetwork-${PV}
+ ~dev-qt/qtsql-${PV}
+ ~dev-qt/qtwidgets-${PV}
+ media-libs/fontconfig:1.0
+ media-libs/libpng:0=
+ >=sys-libs/zlib-1.2.5
+ virtual/jpeg:0
+ virtual/opengl
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXrender
+ geolocation? ( ~dev-qt/qtpositioning-${PV} )
+ gstreamer? (
+ dev-libs/glib:2
+ media-libs/gstreamer:1.0
+ media-libs/gst-plugins-base:1.0
+ )
+ gstreamer010? (
+ dev-libs/glib:2
+ media-libs/gstreamer:0.10
+ media-libs/gst-plugins-base:0.10
+ )
+ multimedia? ( ~dev-qt/qtmultimedia-${PV}[widgets] )
+ opengl? ( ~dev-qt/qtopengl-${PV} )
+ orientation? ( ~dev-qt/qtsensors-${PV} )
+ printsupport? ( ~dev-qt/qtprintsupport-${PV} )
+ qml? ( ~dev-qt/qtdeclarative-${PV} )
+ webchannel? ( ~dev-qt/qtwebchannel-${PV} )
+ webp? ( media-libs/libwebp:0= )
+"
+DEPEND="${RDEPEND}
+ ${PYTHON_DEPS}
+ dev-lang/ruby
+ dev-util/gperf
+ sys-devel/bison
+ sys-devel/flex
+ virtual/rubygems
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-5.4.2-system-leveldb.patch"
+)
+
+src_prepare() {
+ # ensure bundled library cannot be used
+ rm -r Source/ThirdParty/leveldb || die
+
+ # bug 466216
+ sed -i -e '/CONFIG +=/s/rpath//' \
+ Source/WebKit/qt/declarative/{experimental/experimental,public}.pri \
+ Tools/qmake/mkspecs/features/{force_static_libs_as_shared,unix/default_post}.prf \
+ || die
+
+ qt_use_disable_mod geolocation positioning Tools/qmake/mkspecs/features/features.prf
+ qt_use_disable_mod multimedia multimediawidgets Tools/qmake/mkspecs/features/features.prf
+ qt_use_disable_mod orientation sensors Tools/qmake/mkspecs/features/features.prf
+ qt_use_disable_mod printsupport printsupport Tools/qmake/mkspecs/features/features.prf
+ qt_use_disable_mod qml quick Tools/qmake/mkspecs/features/features.prf
+ qt_use_disable_mod webchannel webchannel Source/WebKit2/WebKit2.pri
+
+ if use gstreamer010; then
+ epatch "${FILESDIR}/${PN}-5.3.2-use-gstreamer010.patch"
+ elif ! use gstreamer; then
+ epatch "${FILESDIR}/${PN}-5.2.1-disable-gstreamer.patch"
+ fi
+
+ use opengl || sed -i -e '/contains(QT_CONFIG, opengl): WEBKIT_CONFIG += use_3d_graphics/d' \
+ Tools/qmake/mkspecs/features/features.prf || die
+ use webp || sed -i -e '/config_libwebp: WEBKIT_CONFIG += use_webp/d' \
+ Tools/qmake/mkspecs/features/features.prf || die
+
+ # bug 458222
+ sed -i -e '/SUBDIRS += examples/d' Source/QtWebKit.pro || die
+
+ # bug 562396
+ use jit || epatch "${FILESDIR}/${PN}-5.5.1-disable-jit.patch"
+
+ qt5-build_src_prepare
+}