--- a/dev-qt/qtwebkit/qtwebkit-5.9.1.ebuild 2017-10-11 22:48:41.676202760 +0200 +++ b/dev-qt/qtwebkit/qtwebkit-5.212.0_alpha2.ebuild 2017-10-12 22:28:39.405299559 +0200 @@ -2,46 +2,51 @@ # Distributed under the terms of the GNU General Public License v2 EAPI=6 + +CMAKE_MAKEFILE_GENERATOR="ninja" PYTHON_COMPAT=( python2_7 ) -QT_MIN_VER="5.9.1:5" -inherit python-any-r1 qt5-build +QT_MIN_VER="5.6.2:5" +USE_RUBY="ruby22 ruby23 ruby24" +inherit check-reqs cmake-utils flag-o-matic python-any-r1 qmake-utils ruby-single toolchain-funcs + +DESCRIPTION="Open source web browser engine" +HOMEPAGE="https://www.qt.io/" +SRC_URI="https://github.com/annulen/webkit/releases/download/${P/_/-}/${P/_/-}.tar.xz" -DESCRIPTION="WebKit rendering library for the Qt5 framework (deprecated)" +SLOT=5 -if [[ ${QT5_BUILD_TYPE} == release ]]; then - KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" -fi +LICENSE="LGPL-2+ BSD" +KEYWORDS="~amd64 ~x86" -# TODO: qttestlib +IUSE="+geolocation gles2 +gstreamer +hyphen +jit multimedia nsplugin opengl orientation +printsupport qml +webp X" -IUSE="geolocation gstreamer gles2 +jit multimedia opengl orientation printsupport qml test webchannel webp" -REQUIRED_USE="?? ( gstreamer multimedia )" +REQUIRED_USE=" + nsplugin? ( X ) + qml? ( opengl ) + ?? ( gstreamer multimedia ) +" +# Dependencies found at Source/cmake/OptionsQt.cmake 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/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 + media-libs/libwebp:= 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 + media-libs/gst-plugins-bad:1.0 ) + hyphen? ( dev-libs/hyphen ) multimedia? ( >=dev-qt/qtmultimedia-${QT_MIN_VER}[widgets] ) opengl? ( >=dev-qt/qtgui-${QT_MIN_VER}[gles2=] @@ -49,71 +54,99 @@ ) 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= ) + qml? ( + >=dev-qt/qtdeclarative-${QT_MIN_VER} + >=dev-qt/qtwebchannel-${QT_MIN_VER}[qml] + ) + X? ( + x11-libs/libX11 + x11-libs/libXcomposite + x11-libs/libXrender + ) " + +# Need real bison, not yacc DEPEND="${RDEPEND} ${PYTHON_DEPS} - dev-lang/ruby + ${RUBY_DEPS} + dev-lang/perl dev-util/gperf - sys-devel/bison + >=sys-devel/bison-2.4.3 sys-devel/flex - virtual/rubygems - test? ( >=dev-qt/qttest-${QT_MIN_VER} ) + virtual/pkgconfig " -PATCHES=( - "${FILESDIR}/${PN}-5.4.2-system-leveldb.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 +S="${WORKDIR}/${P/_/-}" + +CHECKREQS_DISK_BUILD="1G" # Debug build requires much more see bug #417307 - if ! use gstreamer; then - PATCHES+=("${FILESDIR}/${PN}-5.8.0-disable-gstreamer.patch") +pkg_pretend() { + if [[ ${MERGE_TYPE} != "binary" ]] ; then + if is-flagq "-g*" && ! is-flagq "-g*0" ; then + einfo "Checking for sufficient disk space to build ${PN} with debugging CFLAGS" + check-reqs_pkg_pretend + fi fi +} - # bug 562396 - use jit || PATCHES+=("${FILESDIR}/${PN}-5.5.1-disable-jit.patch") +pkg_setup() { + if [[ ${MERGE_TYPE} != "binary" ]] && is-flagq "-g*" && ! is-flagq "-g*0" ; then + check-reqs_pkg_setup + fi - use webp || sed -i -e '/config_libwebp: WEBKIT_CONFIG += use_webp/d' \ - Tools/qmake/mkspecs/features/features.prf || die + python-any-r1_pkg_setup +} - # bug 458222 - sed -i -e '/SUBDIRS += examples/d' Source/QtWebKit.pro || die +src_configure() { + # Respect CC, otherwise fails on prefix #395875 + tc-export CC + + # older glibc needs this for INTPTR_MAX, bug #533976 + if has_version "