diff options
-rw-r--r-- | dev-qt/qtwebkit/Manifest | 3 | ||||
-rw-r--r-- | dev-qt/qtwebkit/files/qtwebkit-5.8.0-disable-gstreamer.patch | 15 | ||||
-rw-r--r-- | dev-qt/qtwebkit/metadata.xml | 1 | ||||
-rw-r--r-- | dev-qt/qtwebkit/qtwebkit-5.9.1.ebuild | 122 |
4 files changed, 140 insertions, 1 deletions
diff --git a/dev-qt/qtwebkit/Manifest b/dev-qt/qtwebkit/Manifest index 5e1202f3..373025ec 100644 --- a/dev-qt/qtwebkit/Manifest +++ b/dev-qt/qtwebkit/Manifest @@ -1 +1,2 @@ -DIST qtwebkit-opensource-src-5.7.1.tar.xz 35298736 SHA256 a46cf7c89339645f94a5777e8ae5baccf75c5fc87ab52c9dafc25da3327b5f03 SHA512 538928ada8fd25c01f0b78efac79e004904e6e4ec110108c492877e334acd5d9253653d3b207e535d1e08d092af2833a7566cebb2bf8b90069944634bf24f60a WHIRLPOOL d2dce72777a6babb1c35025ff6d882b7f48895dca4425b9e29b099e45282e8538548a653f0757998d6a619d706544fad0363199d8979ccca94762ba39b6516bd +DIST qtwebkit-opensource-src-5.7.1.tar.xz 35298736 BLAKE2B 74819c28ab00b09d090a77f10d5338e04381432130e0420cf006b8dba75da2426b047cf449a708343eae76e06a9230d962e724dc5d34f8c799947de2e5079581 SHA512 538928ada8fd25c01f0b78efac79e004904e6e4ec110108c492877e334acd5d9253653d3b207e535d1e08d092af2833a7566cebb2bf8b90069944634bf24f60a +DIST qtwebkit-opensource-src-5.9.1.tar.xz 35300628 BLAKE2B eb64f6345e14698d176958faccf7493073e177ac8c2e25b44f02c09df6b45e4a069e2c86960d9fbe497f7d59099b25d021743437276c1bd6bc8fd0593052faa2 SHA512 79316ab746a230fdb290e28629d7cec5fca75119ba8868060742c682ab86490de9ffd8e517569aa7412f35fd709568dbb5f7d2d467bdb4461e192f8b05d6f1e5 diff --git a/dev-qt/qtwebkit/files/qtwebkit-5.8.0-disable-gstreamer.patch b/dev-qt/qtwebkit/files/qtwebkit-5.8.0-disable-gstreamer.patch new file mode 100644 index 00000000..867e8dcb --- /dev/null +++ b/dev-qt/qtwebkit/files/qtwebkit-5.8.0-disable-gstreamer.patch @@ -0,0 +1,15 @@ +--- a/Tools/qmake/mkspecs/features/features.prf ++++ b/Tools/qmake/mkspecs/features/features.prf +@@ -101,12 +101,6 @@ defineTest(detectFeatures) { + + # HTML5 Media Support for builds with GStreamer + unix:!mac:qtConfig(pkg-config) { +- packagesExist("glib-2.0 gio-2.0 gstreamer-1.0 gstreamer-plugins-base-1.0") { +- WEBKIT_CONFIG += video use_gstreamer +- } else: packagesExist("glib-2.0 gio-2.0 \'gstreamer-0.10 >= 0.10.30\' \'gstreamer-plugins-base-0.10 >= 0.10.30\'") { +- WEBKIT_CONFIG += video use_gstreamer use_gstreamer010 +- } +- use?(gstreamer): WEBKIT_CONFIG += use_native_fullscreen_video + } + + !enable?(video):qtHaveModule(multimediawidgets) { diff --git a/dev-qt/qtwebkit/metadata.xml b/dev-qt/qtwebkit/metadata.xml index 021a9178..87f1ed33 100644 --- a/dev-qt/qtwebkit/metadata.xml +++ b/dev-qt/qtwebkit/metadata.xml @@ -7,6 +7,7 @@ </maintainer> <use> <flag name="geolocation">Enable physical position determination via <pkg>dev-qt/qtpositioning</pkg></flag> + <flag name="gles2">Use GLES 2.0 or later instead of full OpenGL</flag> <flag name="gstreamer">Enable HTML5 audio/video support via <pkg>media-libs/gstreamer</pkg> using SLOT 1.0</flag> <flag name="gstreamer010">Enable HTML5 audio/video support via <pkg>media-libs/gstreamer</pkg> using SLOT 0.10</flag> <flag name="multimedia">Enable HTML5 audio/video support via <pkg>dev-qt/qtmultimedia</pkg></flag> diff --git a/dev-qt/qtwebkit/qtwebkit-5.9.1.ebuild b/dev-qt/qtwebkit/qtwebkit-5.9.1.ebuild new file mode 100644 index 00000000..4c30fd08 --- /dev/null +++ b/dev-qt/qtwebkit/qtwebkit-5.9.1.ebuild @@ -0,0 +1,122 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +PYTHON_COMPAT=( python2_7 ) +QT_MIN_VER="5.9.1:5" +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 gles2 +jit multimedia opengl orientation printsupport qml test webchannel webp" +REQUIRED_USE="?? ( gstreamer 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-${QT_MIN_VER}[icu] + >=dev-qt/qtgui-${QT_MIN_VER} + >=dev-qt/qtnetwork-${QT_MIN_VER} + >=dev-qt/qtsql-${QT_MIN_VER} + >=dev-qt/qtwidgets-${QT_MIN_VER} + 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-${QT_MIN_VER} ) + gstreamer? ( + dev-libs/glib:2 + media-libs/gstreamer:1.0 + media-libs/gst-plugins-base:1.0 + ) + multimedia? ( >=dev-qt/qtmultimedia-${QT_MIN_VER}[widgets] ) + opengl? ( + >=dev-qt/qtgui-${QT_MIN_VER}[gles2=] + >=dev-qt/qtopengl-${QT_MIN_VER} + ) + orientation? ( >=dev-qt/qtsensors-${QT_MIN_VER} ) + printsupport? ( >=dev-qt/qtprintsupport-${QT_MIN_VER} ) + qml? ( >=dev-qt/qtdeclarative-${QT_MIN_VER} ) + webchannel? ( >=dev-qt/qtwebchannel-${QT_MIN_VER} ) + webp? ( media-libs/libwebp:0= ) +" +DEPEND="${RDEPEND} + ${PYTHON_DEPS} + dev-lang/ruby + dev-util/gperf + sys-devel/bison + sys-devel/flex + virtual/rubygems + test? ( >=dev-qt/qttest-${QT_MIN_VER} ) +" + +PATCHES=( + "${FILESDIR}/${PN}-5.4.2-system-leveldb.patch" + "${FILESDIR}/${PN}-5.5.0-fix-backtrace-detection-musl.patch" + "${FILESDIR}/${PN}-5.5.1-fix-stack-size-musl.patch" +) + +src_prepare() { + # ensure bundled library cannot be used + rm -r Source/ThirdParty/leveldb || die + + # force using system library + sed -i -e 's/qtConfig(system-jpeg)/true/' \ + -e 's/qtConfig(system-png)/true/' \ + Tools/qmake/mkspecs/features/features.prf || 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_config opengl opengl Tools/qmake/mkspecs/features/features.prf + + 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/Target.pri \ + Source/WebKit2/WebKit2.pri + + if ! use gstreamer; then + PATCHES+=("${FILESDIR}/${PN}-5.8.0-disable-gstreamer.patch") + fi + + # bug 562396 + use jit || PATCHES+=("${FILESDIR}/${PN}-5.5.1-disable-jit.patch") + + 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 + + qt5-build_src_prepare +} + +src_install() { + qt5-build_src_install + + # bug 572056 + if [[ ! -f ${D%/}${QT5_LIBDIR}/libQt5WebKit.so ]]; then + eerror "${CATEGORY}/${PF} could not build due to a broken ruby environment." + die 'Check "eselect ruby" and ensure you have a working ruby in your $PATH' + fi +} |