diff options
-rw-r--r-- | dev-qt/qtwebkit/files/qtwebkit-5.5.1-disable-jit.patch | 15 | ||||
-rw-r--r-- | dev-qt/qtwebkit/qtwebkit-5.5.1-r1.ebuild | 106 |
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 000000000000..40e58f0d0dec --- /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 000000000000..7153b721a872 --- /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 +} |