1 |
pacho 14/10/04 08:20:37 |
2 |
|
3 |
Modified: ChangeLog |
4 |
Added: webkit-gtk-2.4.6.ebuild |
5 |
webkit-gtk-2.4.6-r200.ebuild |
6 |
Log: |
7 |
Version bump, pax-mark some more files (#522808 by Alexander Tsoy) |
8 |
|
9 |
(Portage version: 2.2.12/cvs/Linux x86_64, signed Manifest commit with key A188FBD4) |
10 |
|
11 |
Revision Changes Path |
12 |
1.280 net-libs/webkit-gtk/ChangeLog |
13 |
|
14 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-libs/webkit-gtk/ChangeLog?rev=1.280&view=markup |
15 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-libs/webkit-gtk/ChangeLog?rev=1.280&content-type=text/plain |
16 |
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-libs/webkit-gtk/ChangeLog?r1=1.279&r2=1.280 |
17 |
|
18 |
Index: ChangeLog |
19 |
=================================================================== |
20 |
RCS file: /var/cvsroot/gentoo-x86/net-libs/webkit-gtk/ChangeLog,v |
21 |
retrieving revision 1.279 |
22 |
retrieving revision 1.280 |
23 |
diff -u -r1.279 -r1.280 |
24 |
--- ChangeLog 15 Sep 2014 08:23:38 -0000 1.279 |
25 |
+++ ChangeLog 4 Oct 2014 08:20:37 -0000 1.280 |
26 |
@@ -1,6 +1,13 @@ |
27 |
# ChangeLog for net-libs/webkit-gtk |
28 |
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 |
29 |
-# $Header: /var/cvsroot/gentoo-x86/net-libs/webkit-gtk/ChangeLog,v 1.279 2014/09/15 08:23:38 ago Exp $ |
30 |
+# $Header: /var/cvsroot/gentoo-x86/net-libs/webkit-gtk/ChangeLog,v 1.280 2014/10/04 08:20:37 pacho Exp $ |
31 |
+ |
32 |
+*webkit-gtk-2.4.6 (04 Oct 2014) |
33 |
+*webkit-gtk-2.4.6-r200 (04 Oct 2014) |
34 |
+ |
35 |
+ 04 Oct 2014; Pacho Ramos <pacho@g.o> +webkit-gtk-2.4.6-r200.ebuild, |
36 |
+ +webkit-gtk-2.4.6.ebuild: |
37 |
+ Version bump, pax-mark some more files (#522808 by Alexander Tsoy) |
38 |
|
39 |
15 Sep 2014; Agostino Sarubbo <ago@g.o> webkit-gtk-2.4.4-r200.ebuild, |
40 |
webkit-gtk-2.4.4.ebuild: |
41 |
|
42 |
|
43 |
|
44 |
1.1 net-libs/webkit-gtk/webkit-gtk-2.4.6.ebuild |
45 |
|
46 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-libs/webkit-gtk/webkit-gtk-2.4.6.ebuild?rev=1.1&view=markup |
47 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-libs/webkit-gtk/webkit-gtk-2.4.6.ebuild?rev=1.1&content-type=text/plain |
48 |
|
49 |
Index: webkit-gtk-2.4.6.ebuild |
50 |
=================================================================== |
51 |
# Copyright 1999-2014 Gentoo Foundation |
52 |
# Distributed under the terms of the GNU General Public License v2 |
53 |
# $Header: /var/cvsroot/gentoo-x86/net-libs/webkit-gtk/webkit-gtk-2.4.6.ebuild,v 1.1 2014/10/04 08:20:37 pacho Exp $ |
54 |
|
55 |
EAPI="5" |
56 |
GCONF_DEBUG="no" |
57 |
PYTHON_COMPAT=( python{2_6,2_7} ) |
58 |
|
59 |
inherit autotools check-reqs eutils flag-o-matic gnome2 pax-utils python-any-r1 toolchain-funcs versionator virtualx |
60 |
|
61 |
MY_P="webkitgtk-${PV}" |
62 |
DESCRIPTION="Open source web browser engine" |
63 |
HOMEPAGE="http://www.webkitgtk.org/" |
64 |
SRC_URI="http://www.webkitgtk.org/releases/${MY_P}.tar.xz" |
65 |
|
66 |
LICENSE="LGPL-2+ BSD" |
67 |
SLOT="3/25" # soname version of libwebkit2gtk-3.0 |
68 |
KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~x86-macos" |
69 |
IUSE="aqua coverage debug +egl +geoloc gles2 +gstreamer +introspection +jit libsecret +opengl spell wayland +webgl +X" |
70 |
# bugs 372493, 416331 |
71 |
REQUIRED_USE=" |
72 |
geoloc? ( introspection ) |
73 |
introspection? ( gstreamer ) |
74 |
gles2? ( egl ) |
75 |
webgl? ( ^^ ( gles2 opengl ) ) |
76 |
!webgl? ( ?? ( gles2 opengl ) ) |
77 |
|| ( aqua wayland X ) |
78 |
" |
79 |
|
80 |
# use sqlite, svg by default |
81 |
# Aqua support in gtk3 is untested |
82 |
# gtk2 is needed for plugin process support |
83 |
# gtk3-3.10 required for wayland |
84 |
RDEPEND=" |
85 |
dev-libs/libxml2:2 |
86 |
dev-libs/libxslt |
87 |
media-libs/harfbuzz:=[icu(+)] |
88 |
media-libs/libwebp:= |
89 |
virtual/jpeg:0= |
90 |
>=media-libs/libpng-1.4:0= |
91 |
>=x11-libs/cairo-1.10:=[X] |
92 |
>=dev-libs/glib-2.36.0:2 |
93 |
>=x11-libs/gtk+-3.6.0:3[aqua=,introspection?] |
94 |
>=dev-libs/icu-3.8.1-r1:= |
95 |
>=net-libs/libsoup-2.42.0:2.4[introspection?] |
96 |
dev-db/sqlite:3= |
97 |
>=x11-libs/pango-1.30.0.0 |
98 |
x11-libs/libXrender |
99 |
x11-libs/libXt |
100 |
>=x11-libs/gtk+-2.24.10:2 |
101 |
|
102 |
egl? ( media-libs/mesa[egl] ) |
103 |
geoloc? ( >=app-misc/geoclue-2.1.5:2.0 ) |
104 |
gles2? ( media-libs/mesa[gles2] ) |
105 |
gstreamer? ( |
106 |
>=media-libs/gstreamer-1.2:1.0 |
107 |
>=media-libs/gst-plugins-base-1.2:1.0 ) |
108 |
introspection? ( >=dev-libs/gobject-introspection-1.32.0 ) |
109 |
libsecret? ( app-crypt/libsecret ) |
110 |
opengl? ( virtual/opengl ) |
111 |
spell? ( >=app-text/enchant-0.22:= ) |
112 |
wayland? ( >=x11-libs/gtk+-3.10:3[wayland] ) |
113 |
webgl? ( |
114 |
x11-libs/cairo[opengl] |
115 |
x11-libs/libXcomposite |
116 |
x11-libs/libXdamage ) |
117 |
" |
118 |
|
119 |
# paxctl needed for bug #407085 |
120 |
# Need real bison, not yacc |
121 |
DEPEND="${RDEPEND} |
122 |
${PYTHON_DEPS} |
123 |
dev-lang/perl |
124 |
|| ( |
125 |
virtual/rubygems[ruby_targets_ruby20] |
126 |
virtual/rubygems[ruby_targets_ruby21] |
127 |
virtual/rubygems[ruby_targets_ruby19] |
128 |
) |
129 |
>=app-accessibility/at-spi2-core-2.5.3 |
130 |
>=dev-libs/atk-2.8.0 |
131 |
>=dev-util/gtk-doc-am-1.10 |
132 |
dev-util/gperf |
133 |
>=sys-devel/bison-2.4.3 |
134 |
>=sys-devel/flex-2.5.33 |
135 |
|| ( >=sys-devel/gcc-4.7 >=sys-devel/clang-3.3 ) |
136 |
sys-devel/gettext |
137 |
>=sys-devel/make-3.82-r4 |
138 |
virtual/pkgconfig |
139 |
|
140 |
introspection? ( jit? ( sys-apps/paxctl ) ) |
141 |
test? ( |
142 |
dev-lang/python:2.7 |
143 |
dev-python/pygobject:3[python_targets_python2_7] |
144 |
x11-themes/hicolor-icon-theme |
145 |
jit? ( sys-apps/paxctl ) ) |
146 |
" |
147 |
|
148 |
S="${WORKDIR}/${MY_P}" |
149 |
|
150 |
CHECKREQS_DISK_BUILD="18G" # and even this might not be enough, bug #417307 |
151 |
|
152 |
pkg_pretend() { |
153 |
nvidia_check || die #463960 |
154 |
|
155 |
if [[ ${MERGE_TYPE} != "binary" ]] && is-flagq "-g*" && ! is-flagq "-g*0" ; then |
156 |
einfo "Checking for sufficient disk space to build ${PN} with debugging CFLAGS" |
157 |
check-reqs_pkg_pretend |
158 |
fi |
159 |
|
160 |
if ! test-flag-CXX -std=c++11; then |
161 |
die "You need at least GCC 4.7.x or Clang >= 3.3 for C++11-specific compiler flags" |
162 |
fi |
163 |
} |
164 |
|
165 |
pkg_setup() { |
166 |
nvidia_check || die #463960 |
167 |
|
168 |
# Check whether any of the debugging flags is enabled |
169 |
if [[ ${MERGE_TYPE} != "binary" ]] && is-flagq "-g*" && ! is-flagq "-g*0" ; then |
170 |
if is-flagq "-ggdb" && [[ ${WEBKIT_GTK_GGDB} != "yes" ]]; then |
171 |
replace-flags -ggdb -g |
172 |
ewarn "Replacing \"-ggdb\" with \"-g\" in your CFLAGS." |
173 |
ewarn "Building ${PN} with \"-ggdb\" produces binaries which are too" |
174 |
ewarn "large for current binutils releases (bug #432784) and has very" |
175 |
ewarn "high temporary build space and memory requirements." |
176 |
ewarn "If you really want to build ${PN} with \"-ggdb\", add" |
177 |
ewarn "WEBKIT_GTK_GGDB=yes" |
178 |
ewarn "to your make.conf file." |
179 |
fi |
180 |
einfo "You need to have at least 18GB of temporary build space available" |
181 |
einfo "to build ${PN} with debugging CFLAGS. Note that it might still" |
182 |
einfo "not be enough, as the total space requirements depend on the flags" |
183 |
einfo "(-ggdb vs -g1) and enabled features." |
184 |
check-reqs_pkg_setup |
185 |
fi |
186 |
|
187 |
[[ ${MERGE_TYPE} = "binary" ]] || python-any-r1_pkg_setup |
188 |
} |
189 |
|
190 |
src_prepare() { |
191 |
# intermediate MacPorts hack while upstream bug is not fixed properly |
192 |
# https://bugs.webkit.org/show_bug.cgi?id=28727 |
193 |
use aqua && epatch "${FILESDIR}"/${PN}-1.6.1-darwin-quartz.patch |
194 |
|
195 |
# Leave optimization level to user CFLAGS |
196 |
# FORTIFY_SOURCE is enabled by default in Gentoo |
197 |
sed -e 's/-O[012]//g' \ |
198 |
-e 's/-D_FORTIFY_SOURCE=2//g' \ |
199 |
-i Source/autotools/SetupCompilerFlags.m4 || die |
200 |
|
201 |
# Failing tests |
202 |
# * webinspector -> https://bugs.webkit.org/show_bug.cgi?id=50744 |
203 |
# * keyevents is interactive |
204 |
# * mimehandling test sometimes fails under Xvfb (works fine manually), bug #??? |
205 |
# * webdatasource test needs a network connection and intermittently fails with icedtea-web |
206 |
# * webplugindatabase intermittently fails with icedtea-web, bug #???? |
207 |
sed -e '/Programs\/TestWebKitAPI\/WebKitGtk\/testwebinspector/ d' \ |
208 |
-e '/Programs\/TestWebKitAPI\/WebKitGtk\/testkeyevents/ d' \ |
209 |
-e '/Programs\/TestWebKitAPI\/WebKitGtk\/testmimehandling/ d' \ |
210 |
-e '/Programs\/TestWebKitAPI\/WebKitGtk\/testwebdatasource/ d' \ |
211 |
-e '/Programs\/TestWebKitAPI\/WebKitGtk\/testwebplugindatabase/ d' \ |
212 |
-i Tools/TestWebKitAPI/GNUmakefile.am || die |
213 |
|
214 |
# bug #459978, upstream bug #113397 |
215 |
epatch "${FILESDIR}/${PN}-1.11.90-gtk-docize-fix.patch" |
216 |
|
217 |
# FIXME: Needs updating, but probably unneeded in 2.4 as it has a |
218 |
# "developer mode" for this |
219 |
# Do not build unittests unless requested, upstream bug #128163 |
220 |
# epatch "${FILESDIR}"/${PN}-2.2.4-unittests-build.patch |
221 |
|
222 |
# Deadlock causing infinite compilations with nvidia-drivers: |
223 |
# https://bugs.gentoo.org/show_bug.cgi?id=463960 |
224 |
# http://osdyson.org/issues/161 |
225 |
# https://bugs.webkit.org/show_bug.cgi?id=125651 |
226 |
epatch "${FILESDIR}"/${PN}-2.2.5-gir-nvidia-hangs.patch |
227 |
|
228 |
# Debian patches to fix support for some arches |
229 |
# https://bugs.webkit.org/show_bug.cgi?id=129540 |
230 |
epatch "${FILESDIR}"/${PN}-2.2.5-{hppa,ia64}-platform.patch |
231 |
# https://bugs.webkit.org/show_bug.cgi?id=129542 |
232 |
epatch "${FILESDIR}"/${PN}-2.4.1-ia64-malloc.patch |
233 |
|
234 |
# Fix building on ppc (from OpenBSD, only needed on slot 3) |
235 |
# https://bugs.webkit.org/show_bug.cgi?id=130837 |
236 |
epatch "${FILESDIR}"/${PN}-2.4.4-atomic-ppc.patch |
237 |
|
238 |
epatch "${FILESDIR}"/${PN}-2.4.4-jpeg-9a.patch #481688 |
239 |
|
240 |
AT_M4DIR=Source/autotools eautoreconf |
241 |
|
242 |
gnome2_src_prepare |
243 |
} |
244 |
|
245 |
src_configure() { |
246 |
# Respect CC, otherwise fails on prefix #395875 |
247 |
tc-export CC |
248 |
|
249 |
# Arches without JIT support also need this to really disable it in all places |
250 |
use jit || append-cppflags -DENABLE_JIT=0 -DENABLE_YARR_JIT=0 -DENABLE_ASSEMBLER=0 |
251 |
|
252 |
# It doesn't compile on alpha without this in LDFLAGS, bug #??? |
253 |
use alpha && append-ldflags "-Wl,--no-relax" |
254 |
|
255 |
# Sigbuses on SPARC with mcpu and co., bug #??? |
256 |
use sparc && filter-flags "-mvis" |
257 |
|
258 |
# https://bugs.webkit.org/show_bug.cgi?id=42070 , #301634 |
259 |
use ppc64 && append-flags "-mminimal-toc" |
260 |
|
261 |
# Try to use less memory, bug #469942 (see Fedora .spec for reference) |
262 |
# --no-keep-memory doesn't work on ia64, bug #502492 |
263 |
if ! use ia64; then |
264 |
append-ldflags "-Wl,--no-keep-memory" |
265 |
fi |
266 |
if ! $(tc-getLD) --version | grep -q "GNU gold"; then |
267 |
append-ldflags "-Wl,--reduce-memory-overheads" |
268 |
fi |
269 |
|
270 |
local myconf="" |
271 |
|
272 |
if has_version "virtual/rubygems[ruby_targets_ruby21]"; then |
273 |
myconf="${myconf} RUBY=$(type -P ruby21)" |
274 |
elif has_version "virtual/rubygems[ruby_targets_ruby20]"; then |
275 |
myconf="${myconf} RUBY=$(type -P ruby20)" |
276 |
else |
277 |
myconf="${myconf} RUBY=$(type -P ruby19)" |
278 |
fi |
279 |
|
280 |
# TODO: Check Web Audio support |
281 |
# should somehow let user select between them? |
282 |
# |
283 |
# * Aqua support in gtk3 is untested |
284 |
# * dependency-tracking is required so parallel builds won't fail |
285 |
gnome2_src_configure \ |
286 |
$(use_enable aqua quartz-target) \ |
287 |
$(use_enable coverage) \ |
288 |
$(use_enable debug) \ |
289 |
$(use_enable egl) \ |
290 |
$(use_enable geoloc geolocation) \ |
291 |
$(use_enable gles2) \ |
292 |
$(use_enable gstreamer video) \ |
293 |
$(use_enable gstreamer web-audio) \ |
294 |
$(use_enable introspection) \ |
295 |
$(use_enable jit) \ |
296 |
$(use_enable libsecret credential_storage) \ |
297 |
$(use_enable opengl glx) \ |
298 |
$(use_enable spell spellcheck) \ |
299 |
$(use_enable webgl) \ |
300 |
$(use_enable webgl accelerated-compositing) \ |
301 |
$(use_enable wayland wayland-target) \ |
302 |
$(use_enable X x11-target) \ |
303 |
--with-gtk=3.0 \ |
304 |
--enable-dependency-tracking \ |
305 |
--disable-gtk-doc \ |
306 |
${myconf} |
307 |
} |
308 |
|
309 |
src_compile() { |
310 |
# Try to avoid issues like bug #463960 |
311 |
unset DISPLAY |
312 |
gnome2_src_compile |
313 |
} |
314 |
src_test() { |
315 |
# Tests expect an out-of-source build in WebKitBuild |
316 |
ln -s . WebKitBuild || die "ln failed" |
317 |
|
318 |
# Prevents test failures on PaX systems |
319 |
use jit && pax-mark m $(list-paxables Programs/*[Tt]ests/*) # Programs/unittests/.libs/test* |
320 |
|
321 |
unset DISPLAY |
322 |
# Tests need virtualx, bug #294691, bug #310695 |
323 |
# Parallel tests sometimes fail |
324 |
Xemake -j1 check |
325 |
} |
326 |
|
327 |
src_install() { |
328 |
DOCS="ChangeLog NEWS" # other ChangeLog files handled by src_install |
329 |
|
330 |
# https://bugs.webkit.org/show_bug.cgi?id=129242 |
331 |
MAKEOPTS="${MAKEOPTS} -j1" gnome2_src_install |
332 |
|
333 |
newdoc Source/WebKit/gtk/ChangeLog ChangeLog.gtk |
334 |
newdoc Source/JavaScriptCore/ChangeLog ChangeLog.JavaScriptCore |
335 |
newdoc Source/WebCore/ChangeLog ChangeLog.WebCore |
336 |
|
337 |
# Prevents crashes on PaX systems, bug #522808 |
338 |
use jit && pax-mark m "${ED}usr/bin/jsc-3" "${ED}usr/libexec/WebKitWebProcess" |
339 |
pax-mark m "${ED}usr/libexec/WebKitPluginProcess" |
340 |
} |
341 |
|
342 |
nvidia_check() { |
343 |
if [[ ${MERGE_TYPE} != "binary" ]] && |
344 |
use introspection && |
345 |
has_version '=x11-drivers/nvidia-drivers-325*' && |
346 |
[[ $(eselect opengl show 2> /dev/null) = "nvidia" ]] |
347 |
then |
348 |
eerror "${PN} freezes while compiling if x11-drivers/nvidia-drivers-325.* is" |
349 |
eerror "used as the system OpenGL library." |
350 |
eerror "You can either update to >=nvidia-drivers-331.13, or temporarily select" |
351 |
eerror "Mesa as the system OpenGL library:" |
352 |
eerror " # eselect opengl set xorg-x11" |
353 |
eerror "See https://bugs.gentoo.org/463960 for more details." |
354 |
eerror |
355 |
return 1 |
356 |
fi |
357 |
} |
358 |
|
359 |
|
360 |
|
361 |
1.1 net-libs/webkit-gtk/webkit-gtk-2.4.6-r200.ebuild |
362 |
|
363 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-libs/webkit-gtk/webkit-gtk-2.4.6-r200.ebuild?rev=1.1&view=markup |
364 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-libs/webkit-gtk/webkit-gtk-2.4.6-r200.ebuild?rev=1.1&content-type=text/plain |
365 |
|
366 |
Index: webkit-gtk-2.4.6-r200.ebuild |
367 |
=================================================================== |
368 |
# Copyright 1999-2014 Gentoo Foundation |
369 |
# Distributed under the terms of the GNU General Public License v2 |
370 |
# $Header: /var/cvsroot/gentoo-x86/net-libs/webkit-gtk/webkit-gtk-2.4.6-r200.ebuild,v 1.1 2014/10/04 08:20:37 pacho Exp $ |
371 |
|
372 |
EAPI="5" |
373 |
GCONF_DEBUG="no" |
374 |
PYTHON_COMPAT=( python{2_6,2_7} ) |
375 |
|
376 |
inherit autotools check-reqs eutils flag-o-matic gnome2 pax-utils python-any-r1 toolchain-funcs versionator virtualx |
377 |
|
378 |
MY_P="webkitgtk-${PV}" |
379 |
DESCRIPTION="Open source web browser engine" |
380 |
HOMEPAGE="http://www.webkitgtk.org/" |
381 |
SRC_URI="http://www.webkitgtk.org/releases/${MY_P}.tar.xz" |
382 |
|
383 |
LICENSE="LGPL-2+ BSD" |
384 |
SLOT="2" # no usable subslot |
385 |
KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~x86-macos" |
386 |
IUSE="aqua coverage debug +egl +geoloc gles2 +gstreamer +introspection +jit libsecret +opengl spell +webgl +X" |
387 |
# bugs 372493, 416331 |
388 |
REQUIRED_USE=" |
389 |
geoloc? ( introspection ) |
390 |
introspection? ( gstreamer ) |
391 |
gles2? ( egl ) |
392 |
webgl? ( ^^ ( gles2 opengl ) ) |
393 |
!webgl? ( ?? ( gles2 opengl ) ) |
394 |
|| ( aqua X ) |
395 |
" |
396 |
|
397 |
# use sqlite, svg by default |
398 |
RDEPEND=" |
399 |
dev-libs/libxml2:2 |
400 |
dev-libs/libxslt |
401 |
media-libs/harfbuzz:=[icu(+)] |
402 |
media-libs/libwebp:= |
403 |
virtual/jpeg:0= |
404 |
>=media-libs/libpng-1.4:0= |
405 |
>=x11-libs/cairo-1.10:=[X] |
406 |
>=dev-libs/glib-2.36.0:2 |
407 |
>=dev-libs/icu-3.8.1-r1:= |
408 |
>=net-libs/libsoup-2.42.0:2.4[introspection?] |
409 |
dev-db/sqlite:3= |
410 |
>=x11-libs/pango-1.30.0.0 |
411 |
x11-libs/libXrender |
412 |
x11-libs/libXt |
413 |
>=x11-libs/gtk+-2.24.10:2 |
414 |
|
415 |
egl? ( media-libs/mesa[egl] ) |
416 |
geoloc? ( >=app-misc/geoclue-2.1.5:2.0 ) |
417 |
gles2? ( media-libs/mesa[gles2] ) |
418 |
gstreamer? ( |
419 |
>=media-libs/gstreamer-1.2:1.0 |
420 |
>=media-libs/gst-plugins-base-1.2:1.0 ) |
421 |
introspection? ( >=dev-libs/gobject-introspection-1.32.0 ) |
422 |
libsecret? ( app-crypt/libsecret ) |
423 |
opengl? ( virtual/opengl ) |
424 |
spell? ( >=app-text/enchant-0.22:= ) |
425 |
webgl? ( |
426 |
x11-libs/cairo[opengl] |
427 |
x11-libs/libXcomposite |
428 |
x11-libs/libXdamage ) |
429 |
" |
430 |
|
431 |
# paxctl needed for bug #407085 |
432 |
# Need real bison, not yacc |
433 |
DEPEND="${RDEPEND} |
434 |
${PYTHON_DEPS} |
435 |
dev-lang/perl |
436 |
|| ( |
437 |
virtual/rubygems[ruby_targets_ruby20] |
438 |
virtual/rubygems[ruby_targets_ruby21] |
439 |
virtual/rubygems[ruby_targets_ruby19] |
440 |
) |
441 |
>=dev-libs/atk-2.8.0 |
442 |
>=dev-util/gtk-doc-am-1.10 |
443 |
dev-util/gperf |
444 |
>=sys-devel/bison-2.4.3 |
445 |
>=sys-devel/flex-2.5.33 |
446 |
|| ( >=sys-devel/gcc-4.7 >=sys-devel/clang-3.3 ) |
447 |
sys-devel/gettext |
448 |
>=sys-devel/make-3.82-r4 |
449 |
virtual/pkgconfig |
450 |
|
451 |
introspection? ( jit? ( sys-apps/paxctl ) ) |
452 |
test? ( |
453 |
dev-lang/python:2.7 |
454 |
dev-python/pygobject:3[python_targets_python2_7] |
455 |
x11-themes/hicolor-icon-theme |
456 |
jit? ( sys-apps/paxctl ) ) |
457 |
" |
458 |
|
459 |
S="${WORKDIR}/${MY_P}" |
460 |
|
461 |
CHECKREQS_DISK_BUILD="18G" # and even this might not be enough, bug #417307 |
462 |
|
463 |
pkg_pretend() { |
464 |
nvidia_check || die #463960 |
465 |
|
466 |
if [[ ${MERGE_TYPE} != "binary" ]] && is-flagq "-g*" && ! is-flagq "-g*0" ; then |
467 |
einfo "Checking for sufficient disk space to build ${PN} with debugging CFLAGS" |
468 |
check-reqs_pkg_pretend |
469 |
fi |
470 |
|
471 |
if ! test-flag-CXX -std=c++11; then |
472 |
die "You need at least GCC 4.7.x or Clang >= 3.3 for C++11-specific compiler flags" |
473 |
fi |
474 |
} |
475 |
|
476 |
pkg_setup() { |
477 |
nvidia_check || die #463960 |
478 |
|
479 |
# Check whether any of the debugging flags is enabled |
480 |
if [[ ${MERGE_TYPE} != "binary" ]] && is-flagq "-g*" && ! is-flagq "-g*0" ; then |
481 |
if is-flagq "-ggdb" && [[ ${WEBKIT_GTK_GGDB} != "yes" ]]; then |
482 |
replace-flags -ggdb -g |
483 |
ewarn "Replacing \"-ggdb\" with \"-g\" in your CFLAGS." |
484 |
ewarn "Building ${PN} with \"-ggdb\" produces binaries which are too" |
485 |
ewarn "large for current binutils releases (bug #432784) and has very" |
486 |
ewarn "high temporary build space and memory requirements." |
487 |
ewarn "If you really want to build ${PN} with \"-ggdb\", add" |
488 |
ewarn "WEBKIT_GTK_GGDB=yes" |
489 |
ewarn "to your make.conf file." |
490 |
fi |
491 |
einfo "You need to have at least 18GB of temporary build space available" |
492 |
einfo "to build ${PN} with debugging CFLAGS. Note that it might still" |
493 |
einfo "not be enough, as the total space requirements depend on the flags" |
494 |
einfo "(-ggdb vs -g1) and enabled features." |
495 |
check-reqs_pkg_setup |
496 |
fi |
497 |
|
498 |
[[ ${MERGE_TYPE} = "binary" ]] || python-any-r1_pkg_setup |
499 |
} |
500 |
|
501 |
src_prepare() { |
502 |
# intermediate MacPorts hack while upstream bug is not fixed properly |
503 |
# https://bugs.webkit.org/show_bug.cgi?id=28727 |
504 |
use aqua && epatch "${FILESDIR}"/${PN}-1.6.1-darwin-quartz.patch |
505 |
|
506 |
# Leave optimization level to user CFLAGS |
507 |
# FORTIFY_SOURCE is enabled by default in Gentoo |
508 |
sed -e 's/-O[012]//g' \ |
509 |
-e 's/-D_FORTIFY_SOURCE=2//g' \ |
510 |
-i Source/autotools/SetupCompilerFlags.m4 || die |
511 |
|
512 |
# Failing tests |
513 |
# * webinspector -> https://bugs.webkit.org/show_bug.cgi?id=50744 |
514 |
# * keyevents is interactive |
515 |
# * mimehandling test sometimes fails under Xvfb (works fine manually), bug #??? |
516 |
# * webdatasource test needs a network connection and intermittently fails with icedtea-web |
517 |
# * webplugindatabase intermittently fails with icedtea-web, bug #???? |
518 |
sed -e '/Programs\/TestWebKitAPI\/WebKitGtk\/testwebinspector/ d' \ |
519 |
-e '/Programs\/TestWebKitAPI\/WebKitGtk\/testkeyevents/ d' \ |
520 |
-e '/Programs\/TestWebKitAPI\/WebKitGtk\/testmimehandling/ d' \ |
521 |
-e '/Programs\/TestWebKitAPI\/WebKitGtk\/testwebdatasource/ d' \ |
522 |
-e '/Programs\/TestWebKitAPI\/WebKitGtk\/testwebplugindatabase/ d' \ |
523 |
-i Tools/TestWebKitAPI/GNUmakefile.am || die |
524 |
|
525 |
# bug #459978, upstream bug #113397 |
526 |
epatch "${FILESDIR}/${PN}-1.11.90-gtk-docize-fix.patch" |
527 |
|
528 |
# FIXME: Needs updating, but probably unneeded in 2.4 as it has a |
529 |
# "developer mode" for this |
530 |
# Do not build unittests unless requested, upstream bug #128163 |
531 |
# epatch "${FILESDIR}"/${PN}-2.2.4-unittests-build.patch |
532 |
|
533 |
# Deadlock causing infinite compilations with nvidia-drivers: |
534 |
# https://bugs.gentoo.org/show_bug.cgi?id=463960 |
535 |
# http://osdyson.org/issues/161 |
536 |
# https://bugs.webkit.org/show_bug.cgi?id=125651 |
537 |
epatch "${FILESDIR}"/${PN}-2.2.5-gir-nvidia-hangs.patch |
538 |
|
539 |
# Debian patches to fix support for some arches |
540 |
# https://bugs.webkit.org/show_bug.cgi?id=129540 |
541 |
epatch "${FILESDIR}"/${PN}-2.2.5-{hppa,ia64}-platform.patch |
542 |
# https://bugs.webkit.org/show_bug.cgi?id=129542 |
543 |
epatch "${FILESDIR}"/${PN}-2.4.1-ia64-malloc.patch |
544 |
|
545 |
epatch "${FILESDIR}"/${PN}-2.4.4-jpeg-9a.patch #481688 |
546 |
|
547 |
AT_M4DIR=Source/autotools eautoreconf |
548 |
|
549 |
gnome2_src_prepare |
550 |
} |
551 |
|
552 |
src_configure() { |
553 |
# Respect CC, otherwise fails on prefix #395875 |
554 |
tc-export CC |
555 |
|
556 |
# Arches without JIT support also need this to really disable it in all places |
557 |
use jit || append-cppflags -DENABLE_JIT=0 -DENABLE_YARR_JIT=0 -DENABLE_ASSEMBLER=0 |
558 |
|
559 |
# It doesn't compile on alpha without this in LDFLAGS, bug #??? |
560 |
use alpha && append-ldflags "-Wl,--no-relax" |
561 |
|
562 |
# Sigbuses on SPARC with mcpu and co., bug #??? |
563 |
use sparc && filter-flags "-mvis" |
564 |
|
565 |
# https://bugs.webkit.org/show_bug.cgi?id=42070 , #301634 |
566 |
use ppc64 && append-flags "-mminimal-toc" |
567 |
|
568 |
# Try to use less memory, bug #469942 (see Fedora .spec for reference) |
569 |
# --no-keep-memory doesn't work on ia64, bug #502492 |
570 |
if ! use ia64; then |
571 |
append-ldflags "-Wl,--no-keep-memory" |
572 |
fi |
573 |
if ! $(tc-getLD) --version | grep -q "GNU gold"; then |
574 |
append-ldflags "-Wl,--reduce-memory-overheads" |
575 |
fi |
576 |
|
577 |
local myconf="" |
578 |
|
579 |
if has_version "virtual/rubygems[ruby_targets_ruby21]"; then |
580 |
myconf="${myconf} RUBY=$(type -P ruby21)" |
581 |
elif has_version "virtual/rubygems[ruby_targets_ruby20]"; then |
582 |
myconf="${myconf} RUBY=$(type -P ruby20)" |
583 |
else |
584 |
myconf="${myconf} RUBY=$(type -P ruby19)" |
585 |
fi |
586 |
|
587 |
# TODO: Check Web Audio support |
588 |
# should somehow let user select between them? |
589 |
# |
590 |
# * dependency-tracking is required so parallel builds won't fail |
591 |
gnome2_src_configure \ |
592 |
$(use_enable aqua quartz-target) \ |
593 |
$(use_enable coverage) \ |
594 |
$(use_enable debug) \ |
595 |
$(use_enable egl) \ |
596 |
$(use_enable geoloc geolocation) \ |
597 |
$(use_enable gles2) \ |
598 |
$(use_enable gstreamer video) \ |
599 |
$(use_enable gstreamer web-audio) \ |
600 |
$(use_enable introspection) \ |
601 |
$(use_enable jit) \ |
602 |
$(use_enable libsecret credential_storage) \ |
603 |
$(use_enable opengl glx) \ |
604 |
$(use_enable spell spellcheck) \ |
605 |
$(use_enable webgl) \ |
606 |
$(use_enable webgl accelerated-compositing) \ |
607 |
$(use_enable X x11-target) \ |
608 |
--with-gtk=2.0 \ |
609 |
--disable-webkit2 \ |
610 |
--enable-dependency-tracking \ |
611 |
--disable-gtk-doc \ |
612 |
${myconf} |
613 |
} |
614 |
|
615 |
src_compile() { |
616 |
# Try to avoid issues like bug #463960 |
617 |
unset DISPLAY |
618 |
gnome2_src_compile |
619 |
} |
620 |
|
621 |
src_test() { |
622 |
# Tests expect an out-of-source build in WebKitBuild |
623 |
ln -s . WebKitBuild || die "ln failed" |
624 |
|
625 |
# Prevents test failures on PaX systems |
626 |
use jit && pax-mark m $(list-paxables Programs/*[Tt]ests/*) # Programs/unittests/.libs/test* |
627 |
|
628 |
unset DISPLAY |
629 |
# Tests need virtualx, bug #294691, bug #310695 |
630 |
# Parallel tests sometimes fail |
631 |
Xemake -j1 check |
632 |
} |
633 |
|
634 |
src_install() { |
635 |
DOCS="ChangeLog NEWS" # other ChangeLog files handled by src_install |
636 |
|
637 |
# https://bugs.webkit.org/show_bug.cgi?id=129242 |
638 |
MAKEOPTS="${MAKEOPTS} -j1" gnome2_src_install |
639 |
|
640 |
newdoc Source/WebKit/gtk/ChangeLog ChangeLog.gtk |
641 |
newdoc Source/JavaScriptCore/ChangeLog ChangeLog.JavaScriptCore |
642 |
newdoc Source/WebCore/ChangeLog ChangeLog.WebCore |
643 |
|
644 |
# Prevents crashes on PaX systems |
645 |
use jit && pax-mark m "${ED}usr/bin/jsc-1" |
646 |
|
647 |
# File collisions with slot 3 |
648 |
# bug #402699, https://bugs.webkit.org/show_bug.cgi?id=78134 |
649 |
rm -rf "${ED}usr/share/gtk-doc" || die |
650 |
} |
651 |
|
652 |
nvidia_check() { |
653 |
if [[ ${MERGE_TYPE} != "binary" ]] && |
654 |
use introspection && |
655 |
has_version '=x11-drivers/nvidia-drivers-325*' && |
656 |
[[ $(eselect opengl show 2> /dev/null) = "nvidia" ]] |
657 |
then |
658 |
eerror "${PN} freezes while compiling if x11-drivers/nvidia-drivers-325.* is" |
659 |
eerror "used as the system OpenGL library." |
660 |
eerror "You can either update to >=nvidia-drivers-331.13, or temporarily select" |
661 |
eerror "Mesa as the system OpenGL library:" |
662 |
eerror " # eselect opengl set xorg-x11" |
663 |
eerror "See https://bugs.gentoo.org/463960 for more details." |
664 |
eerror |
665 |
return 1 |
666 |
fi |
667 |
} |