qtwebkit-5.212.9999.ebuild (3732B)
1 # Copyright 1999-2018 Gentoo Foundation 2 # Distributed under the terms of the GNU General Public License v2 3 4 EAPI=6 5 CMAKE_MAKEFILE_GENERATOR="ninja" 6 PYTHON_COMPAT=( python2_7 ) 7 USE_RUBY="ruby20 ruby21 ruby22 ruby23" 8 9 inherit check-reqs cmake-utils eutils flag-o-matic python-any-r1 ruby-single toolchain-funcs versionator git-r3 10 11 DESCRIPTION="Open source web browser engine" 12 HOMEPAGE="https://github.com/annulen/webkit" 13 SRC_URI="" 14 EGIT_REPO_URI="https://github.com/annulen/webkit" 15 QV="5.2" # Minimum Qt version 16 17 SLOT=5 18 19 LICENSE="LGPL-2+ BSD" 20 KEYWORDS="~amd64 ~x86" 21 22 IUSE="+geolocation +gstreamer +jit +hyphen multimedia nsplugin orientation opengl +printsupport qml +webp X" 23 24 REQUIRED_USE=" 25 nsplugin? ( X ) 26 qml? ( opengl ) 27 ?? ( gstreamer multimedia ) 28 " 29 30 # Dependencies found at Source/cmake/OptionsQt.cmake 31 RDEPEND=" 32 dev-db/sqlite:3= 33 >=dev-libs/icu-3.8.1-r1:= 34 >=dev-libs/libxml2-2.8:2 35 >=dev-libs/libxslt-1.1.7 36 >=media-libs/libpng-1.4:0= 37 media-libs/libwebp:= 38 virtual/jpeg:0= 39 >=dev-qt/qtcore-${QV} 40 >=dev-qt/qtgui-${QV} 41 >=dev-qt/qtnetwork-${QV} 42 >=dev-qt/qtwidgets-${QV} 43 44 geolocation? ( >=dev-qt/qtpositioning-${QV} ) 45 gstreamer? ( 46 >=dev-libs/glib-2.36:2 47 >=media-libs/gstreamer-1.2:1.0 48 >=media-libs/gst-plugins-base-1.2:1.0 49 >=media-libs/gst-plugins-bad-1.6.0:1.0 ) 50 hyphen? ( dev-libs/hyphen ) 51 multimedia? ( >=dev-qt/qtmultimedia-${QV}[widgets] ) 52 opengl? ( >=dev-qt/qtopengl-${QV} ) 53 orientation? ( >=dev-qt/qtsensors-${QV} ) 54 printsupport? ( >=dev-qt/qtprintsupport-${QV} ) 55 qml? ( 56 >=dev-qt/qtdeclarative-${QV} 57 >=dev-qt/qtwebchannel-${QV}[qml] ) 58 X? ( 59 x11-libs/libX11 60 x11-libs/libXcomposite 61 x11-libs/libXrender ) 62 " 63 64 # Need real bison, not yacc 65 DEPEND="${RDEPEND} 66 ${PYTHON_DEPS} 67 ${RUBY_DEPS} 68 >=dev-lang/perl-5.10 69 >=dev-util/gperf-3.0.1 70 >=sys-devel/bison-2.4.3 71 >=sys-devel/flex-2.5.34 72 || ( >=sys-devel/gcc-4.9 >=sys-devel/clang-3.3 ) 73 virtual/pkgconfig 74 " 75 76 CHECKREQS_DISK_BUILD="1G" # Debug build requires much more see bug #417307 77 78 pkg_pretend() { 79 if [[ ${MERGE_TYPE} != "binary" ]] ; then 80 if is-flagq "-g*" && ! is-flagq "-g*0" ; then 81 einfo "Checking for sufficient disk space to build ${PN} with debugging CFLAGS" 82 check-reqs_pkg_pretend 83 fi 84 fi 85 } 86 87 pkg_setup() { 88 if [[ ${MERGE_TYPE} != "binary" ]] && is-flagq "-g*" && ! is-flagq "-g*0" ; then 89 check-reqs_pkg_setup 90 fi 91 92 python-any-r1_pkg_setup 93 } 94 95 src_configure() { 96 # Respect CC, otherwise fails on prefix #395875 97 tc-export CC 98 99 # older glibc needs this for INTPTR_MAX, bug #533976 100 if has_version "<sys-libs/glibc-2.18" ; then 101 append-cppflags "-D__STDC_LIMIT_MACROS" 102 fi 103 104 # Multiple rendering bugs on youtube, github, etc without this, bug #547224 105 append-flags $(test-flags -fno-strict-aliasing) 106 107 local ruby_interpreter="" 108 109 if has_version "virtual/rubygems[ruby_targets_ruby23]"; then 110 ruby_interpreter="-DRUBY_EXECUTABLE=$(type -P ruby23)" 111 elif has_version "virtual/rubygems[ruby_targets_ruby22]"; then 112 ruby_interpreter="-DRUBY_EXECUTABLE=$(type -P ruby22)" 113 elif has_version "virtual/rubygems[ruby_targets_ruby21]"; then 114 ruby_interpreter="-DRUBY_EXECUTABLE=$(type -P ruby21)" 115 else 116 ruby_interpreter="-DRUBY_EXECUTABLE=$(type -P ruby20)" 117 fi 118 119 local mycmakeargs=( 120 -DENABLE_API_TESTS=OFF 121 -DENABLE_DEVICE_ORIENTATION=$(usex orientation) 122 -DENABLE_GEOLOCATION=$(usex geolocation) 123 -DENABLE_JIT=$(usex jit) 124 -DENABLE_NETSCAPE_PLUGIN_API=$(usex nsplugin) 125 -DENABLE_OPENGL=$(usex opengl) 126 -DENABLE_WEBKIT2=$(usex qml) 127 -DUSE_GSTREAMER=$(usex gstreamer) 128 -DUSE_QT_MULTIMEDIA=$(usex multimedia) 129 -DENABLE_X11_TARGET=$(usex X) 130 -DCMAKE_BUILD_TYPE=Release 131 -DPORT=Qt 132 ${ruby_interpreter} 133 ) 134 135 cmake-utils_src_configure 136 } 137 138 src_compile() { 139 cmake-utils_src_compile 140 } 141 142 src_install() { 143 cmake-utils_src_install 144 }