1 |
commit: c8910f26e19546ce609d0049c0266188b1e00065 |
2 |
Author: Alexandre Rostovtsev <tetromino <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sun Feb 26 17:06:57 2012 +0000 |
4 |
Commit: Alexandre Restovtsev <tetromino <AT> gmail <DOT> com> |
5 |
CommitDate: Sun Feb 26 19:20:03 2012 +0000 |
6 |
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=c8910f26 |
7 |
|
8 |
net-libs/webkit-gtk: 1.7.5 → 1.7.90 |
9 |
|
10 |
Bump and sync with gx86. Add ugly workaround for parallel make issues, |
11 |
disable failing tests, add patch to respect LINGUAS (bug #403049), work |
12 |
around USE=doc file collisions (bug #402699). Enable webgl by default |
13 |
per upstream recommendation. |
14 |
|
15 |
--- |
16 |
....patch => webkit-gtk-1.6.1-darwin-quartz.patch} | 72 ++++++++----------- |
17 |
.../files/webkit-gtk-1.7.5-linguas.patch | 47 ++++++++++++ |
18 |
.../webkit-gtk-1.7.90-parallel-make-hack.patch | 21 ++++++ |
19 |
...webkit-gtk-1.7.90-test_garbage_collection.patch | 18 +++++ |
20 |
...5-r200.ebuild => webkit-gtk-1.7.90-r200.ebuild} | 75 ++++++++++++++------ |
21 |
...5-r300.ebuild => webkit-gtk-1.7.90-r300.ebuild} | 68 ++++++++++++------ |
22 |
6 files changed, 213 insertions(+), 88 deletions(-) |
23 |
|
24 |
diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.2.5-darwin-quartz.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.6.1-darwin-quartz.patch |
25 |
similarity index 50% |
26 |
rename from net-libs/webkit-gtk/files/webkit-gtk-1.2.5-darwin-quartz.patch |
27 |
rename to net-libs/webkit-gtk/files/webkit-gtk-1.6.1-darwin-quartz.patch |
28 |
index fe1ebc4..5ad357e 100644 |
29 |
--- a/net-libs/webkit-gtk/files/webkit-gtk-1.2.5-darwin-quartz.patch |
30 |
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.6.1-darwin-quartz.patch |
31 |
@@ -1,39 +1,21 @@ |
32 |
+Original from: |
33 |
http://trac.macports.org/browser/trunk/dports/www/webkit-gtk/files/patch-quartz-WebCore-plugins-gtk-gtkxtbin.c.diff?format=txt |
34 |
http://trac.macports.org/browser/trunk/dports/www/webkit-gtk/files/patch-quartz-WebCore-plugins-gtk-PluginViewGtk.cpp.diff?format=txt |
35 |
|
36 |
---- WebCore/plugins/gtk/gtk2xtbin.c.orig 2010-09-10 06:20:33.000000000 -0700 |
37 |
-+++ WebCore/plugins/gtk/gtk2xtbin.c 2010-10-06 09:45:37.000000000 -0700 |
38 |
-@@ -41,7 +41,7 @@ |
39 |
- * The GtkXtBin widget allows for Xt toolkit code to be used |
40 |
- * inside a GTK application. |
41 |
- */ |
42 |
-- |
43 |
-+#if 0 |
44 |
- #include "GtkVersioning.h" |
45 |
- #include "xembed.h" |
46 |
- #include "gtk2xtbin.h" |
47 |
-@@ -951,3 +951,4 @@ |
48 |
- |
49 |
- return; |
50 |
- } |
51 |
-+#endif |
52 |
---- WebCore/plugins/gtk/PluginViewGtk.cpp.orig 2010-09-10 06:20:33.000000000 -0700 |
53 |
-+++ WebCore/plugins/gtk/PluginViewGtk.cpp 2010-10-06 09:45:37.000000000 -0700 |
54 |
-@@ -60,10 +60,13 @@ |
55 |
- #include "runtime_root.h" |
56 |
- #include <runtime/JSLock.h> |
57 |
- #include <runtime/JSValue.h> |
58 |
-+#include "NotImplemented.h" |
59 |
- |
60 |
- #include <gdkconfig.h> |
61 |
+Adapted for 1.6.1 |
62 |
+ |
63 |
+--- Source/WebCore/plugins/gtk/PluginViewGtk.cpp |
64 |
++++ Source/WebCore/plugins/gtk/PluginViewGtk.cpp |
65 |
+@@ -70,6 +70,8 @@ |
66 |
+ #endif |
67 |
#include <gtk/gtk.h> |
68 |
|
69 |
+#undef XP_UNIX |
70 |
+ |
71 |
#if defined(XP_UNIX) |
72 |
+ #include "RefPtrCairo.h" |
73 |
#include "gtk2xtbin.h" |
74 |
- #define Bool int // this got undefined somewhere |
75 |
-@@ -441,9 +444,9 @@ |
76 |
+@@ -439,9 +441,9 @@ |
77 |
event->setDefaultHandled(); |
78 |
} |
79 |
|
80 |
@@ -41,10 +23,10 @@ http://trac.macports.org/browser/trunk/dports/www/webkit-gtk/files/patch-quartz- |
81 |
void PluginView::handleFocusInEvent() |
82 |
{ |
83 |
+#if defined(XP_UNIX) |
84 |
- XEvent npEvent; |
85 |
- initXEvent(&npEvent); |
86 |
+ if (!m_isStarted || m_status != PluginStatusLoadedSuccessfully) |
87 |
+ return; |
88 |
|
89 |
-@@ -453,10 +456,12 @@ |
90 |
+@@ -454,10 +456,12 @@ |
91 |
event.detail = NotifyDetailNone; |
92 |
|
93 |
dispatchNPEvent(npEvent); |
94 |
@@ -54,10 +36,10 @@ http://trac.macports.org/browser/trunk/dports/www/webkit-gtk/files/patch-quartz- |
95 |
void PluginView::handleFocusOutEvent() |
96 |
{ |
97 |
+#if defined(XP_UNIX) |
98 |
- XEvent npEvent; |
99 |
- initXEvent(&npEvent); |
100 |
+ if (!m_isStarted || m_status != PluginStatusLoadedSuccessfully) |
101 |
+ return; |
102 |
|
103 |
-@@ -466,8 +471,8 @@ |
104 |
+@@ -470,8 +474,8 @@ |
105 |
event.detail = NotifyDetailNone; |
106 |
|
107 |
dispatchNPEvent(npEvent); |
108 |
@@ -67,13 +49,19 @@ http://trac.macports.org/browser/trunk/dports/www/webkit-gtk/files/patch-quartz- |
109 |
|
110 |
void PluginView::setParent(ScrollView* parent) |
111 |
{ |
112 |
-@@ -797,8 +802,8 @@ |
113 |
- } |
114 |
- |
115 |
- if (m_isWindowed) { |
116 |
--#if defined(XP_UNIX) |
117 |
- GtkWidget* pageClient = m_parentFrame->view()->hostWindow()->platformPageClient(); |
118 |
-+#if defined(XP_UNIX) |
119 |
+--- Source/WebCore/plugins/gtk/gtk2xtbin.c |
120 |
++++ Source/WebCore/plugins/gtk/gtk2xtbin.c |
121 |
+@@ -41,7 +41,7 @@ |
122 |
+ * The GtkXtBin widget allows for Xt toolkit code to be used |
123 |
+ * inside a GTK application. |
124 |
+ */ |
125 |
+- |
126 |
++#if 0 |
127 |
+ #include "GtkVersioning.h" |
128 |
+ #include "xembed.h" |
129 |
+ #include "gtk2xtbin.h" |
130 |
+@@ -966,3 +966,4 @@ |
131 |
|
132 |
- if (m_needsXEmbed) { |
133 |
- // If our parent is not anchored the startup process will |
134 |
+ return; |
135 |
+ } |
136 |
++#endif |
137 |
|
138 |
diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.7.5-linguas.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.7.5-linguas.patch |
139 |
new file mode 100644 |
140 |
index 0000000..df14a5c |
141 |
--- /dev/null |
142 |
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.7.5-linguas.patch |
143 |
@@ -0,0 +1,47 @@ |
144 |
+Respect intltool's LINGUAS variable for building translations. |
145 |
+ |
146 |
+--- a/webkit-1.7.5/GNUmakefile.am |
147 |
++++ b/webkit-1.7.5/GNUmakefile.am |
148 |
+@@ -54,6 +54,9 @@ |
149 |
+ IDL_BINDINGS := |
150 |
+ TEST_PROGS := |
151 |
+ POFILES := |
152 |
++PO_LINGUAS := |
153 |
++USER_LINGUAS := |
154 |
++USE_LINGUAS := |
155 |
+ MOFILES := |
156 |
+ dom_binding_idls := |
157 |
+ wtf_cppflags:= |
158 |
+--- a/webkit-1.7.5/Source/WebKit/gtk/po/GNUmakefile.am |
159 |
++++ b/webkit-1.7.5/Source/WebKit/gtk/po/GNUmakefile.am |
160 |
+@@ -27,7 +27,15 @@ |
161 |
+ |
162 |
+ POFILES += $(shell ls $(srcdir)/Source/WebKit/gtk/po/*.po) |
163 |
+ |
164 |
+-MOFILES += $(shell echo $(POFILES) | tr ' ' '\n' | sed "s,^$(srcdir)/,,g" | sed 's/\.po/.mo/g') |
165 |
++PO_LINGUAS += $(patsubst $(srcdir)/Source/WebKit/gtk/po/%.po,%,$(POFILES)) |
166 |
++ |
167 |
++USER_LINGUAS += $(filter $(LINGUAS),$(PO_LINGUAS)) |
168 |
++ |
169 |
++USE_LINGUAS += $(shell if test -n "$(USER_LINGUAS)" -o -n "$(LINGUAS)"; then LLINGUAS="$(USER_LINGUAS)"; else LLINGUAS="$(PO_LINGUAS)"; fi; for lang in $$LLINGUAS; do printf "$$lang "; done) |
170 |
++ |
171 |
++MOFILES += $(USE_LINGUAS:%=Source/WebKit/gtk/po/%.mo) |
172 |
++ |
173 |
++ALL_MOFILES := $(shell echo $(POFILES) | tr ' ' '\n' | sed "s,^$(srcdir)/,,g" | sed 's/\.po/.mo/g') |
174 |
+ |
175 |
+ .po.mo: |
176 |
+ test -d Source/WebKit/gtk/po/ || mkdir -p Source/WebKit/gtk/po/ |
177 |
+@@ -124,11 +132,11 @@ |
178 |
+ $(top_builddir)/stamp-po |
179 |
+ |
180 |
+ MAINTAINERCLEANFILES += \ |
181 |
+- $(MOFILES) \ |
182 |
++ $(ALL_MOFILES) \ |
183 |
+ $(top_builddir)/Source/WebKit/gtk/po/$(DOMAIN).pot |
184 |
+ |
185 |
+ DISTCLEANFILES += \ |
186 |
+- $(MOFILES) \ |
187 |
++ $(ALL_MOFILES) \ |
188 |
+ $(top_builddir)/Source/WebKit/gtk/po/$(DOMAIN).pot |
189 |
+ |
190 |
+ po-install-data-local: all |
191 |
|
192 |
diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.7.90-parallel-make-hack.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.7.90-parallel-make-hack.patch |
193 |
new file mode 100644 |
194 |
index 0000000..b632ca2 |
195 |
--- /dev/null |
196 |
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.7.90-parallel-make-hack.patch |
197 |
@@ -0,0 +1,21 @@ |
198 |
+Horrible failure of a hack to enable workaround for |
199 |
+https://bugs.webkit.org/show_bug.cgi?id=79498 |
200 |
+ |
201 |
+--- a/GNUmakefile.am |
202 |
++++ b/GNUmakefile.am |
203 |
+@@ -285,6 +285,15 @@ |
204 |
+ all-local: stamp-po |
205 |
+ $(mkdir_p) $(top_builddir)/$(DEPDIR)/DerivedSources |
206 |
+ |
207 |
++# Horrible hack to enable workaround for parallel make failure |
208 |
++all-built-sources-local: $(BUILT_SOURCES) autotoolsconfig.h |
209 |
++ |
210 |
++all-ltlibraries-local: GNUmakefile $(LTLIBRARIES) |
211 |
++ |
212 |
++all-programs-local: GNUmakefile $(PROGRAMS) |
213 |
++ |
214 |
++all-data-local: GNUmakefile $(DATA) |
215 |
++ |
216 |
+ # remove built sources and program directories |
217 |
+ clean-local: |
218 |
+ -rm -rf $(GENPROGRAMS) |
219 |
|
220 |
diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.7.90-test_garbage_collection.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.7.90-test_garbage_collection.patch |
221 |
new file mode 100644 |
222 |
index 0000000..577c249 |
223 |
--- /dev/null |
224 |
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.7.90-test_garbage_collection.patch |
225 |
@@ -0,0 +1,18 @@ |
226 |
+Garbage collection test fails intermittently if icedtea browser plugin is |
227 |
+installed. |
228 |
+ |
229 |
+--- a/Source/WebKit/gtk/tests/testdomdocument.c |
230 |
++++ b/Source/WebKit/gtk/tests/testdomdocument.c |
231 |
+@@ -353,12 +353,6 @@ |
232 |
+ test_dom_document_get_links, |
233 |
+ dom_document_fixture_teardown); |
234 |
+ |
235 |
+- g_test_add("/webkit/domdocument/test_garbage_collection", |
236 |
+- DomDocumentFixture, HTML_DOCUMENT_LINKS, |
237 |
+- dom_document_fixture_setup, |
238 |
+- test_dom_document_garbage_collection, |
239 |
+- dom_document_fixture_teardown); |
240 |
+- |
241 |
+ return g_test_run(); |
242 |
+ } |
243 |
+ |
244 |
|
245 |
diff --git a/net-libs/webkit-gtk/webkit-gtk-1.7.5-r200.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.7.90-r200.ebuild |
246 |
similarity index 62% |
247 |
rename from net-libs/webkit-gtk/webkit-gtk-1.7.5-r200.ebuild |
248 |
rename to net-libs/webkit-gtk/webkit-gtk-1.7.90-r200.ebuild |
249 |
index b4b0f8b..4e44011 100644 |
250 |
--- a/net-libs/webkit-gtk/webkit-gtk-1.7.5-r200.ebuild |
251 |
+++ b/net-libs/webkit-gtk/webkit-gtk-1.7.90-r200.ebuild |
252 |
@@ -5,7 +5,7 @@ |
253 |
EAPI="4" |
254 |
|
255 |
# Don't define PYTHON_DEPEND: python only needed at build time |
256 |
-inherit autotools eutils flag-o-matic eutils python virtualx |
257 |
+inherit autotools eutils flag-o-matic eutils python virtualx gnome2-utils |
258 |
|
259 |
MY_P="webkit-${PV}" |
260 |
DESCRIPTION="Open source web browser engine" |
261 |
@@ -18,7 +18,7 @@ SLOT="2" |
262 |
KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd |
263 |
~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~x86-macos" |
264 |
# geoclue |
265 |
-IUSE="aqua coverage debug +gstreamer +introspection +jit spell webgl" |
266 |
+IUSE="aqua coverage debug +gstreamer +introspection +jit spell +webgl" |
267 |
# bug 372493 |
268 |
REQUIRED_USE="introspection? ( gstreamer )" |
269 |
|
270 |
@@ -30,12 +30,12 @@ RDEPEND=" |
271 |
virtual/jpeg |
272 |
>=media-libs/libpng-1.4:0 |
273 |
>=x11-libs/cairo-1.10 |
274 |
- >=dev-libs/glib-2.27.90:2 |
275 |
+ >=dev-libs/glib-2.31.2:2 |
276 |
>=x11-libs/gtk+-2.13:2[aqua=,introspection?] |
277 |
>=dev-libs/icu-3.8.1-r1 |
278 |
>=net-libs/libsoup-2.33.6:2.4[introspection?] |
279 |
dev-db/sqlite:3 |
280 |
- >=x11-libs/pango-1.12 |
281 |
+ >=x11-libs/pango-1.21 |
282 |
x11-libs/libXrender |
283 |
|
284 |
gstreamer? ( |
285 |
@@ -49,15 +49,17 @@ RDEPEND=" |
286 |
webgl? ( virtual/opengl ) |
287 |
" |
288 |
DEPEND="${RDEPEND} |
289 |
+ dev-lang/perl |
290 |
=dev-lang/python-2* |
291 |
+ sys-devel/bison |
292 |
>=sys-devel/flex-2.5.33 |
293 |
sys-devel/gettext |
294 |
- virtual/yacc |
295 |
dev-util/gperf |
296 |
dev-util/pkgconfig |
297 |
dev-util/gtk-doc-am |
298 |
test? ( x11-themes/hicolor-icon-theme ) |
299 |
" |
300 |
+# Need real bison, not yacc |
301 |
|
302 |
S="${WORKDIR}/${MY_P}" |
303 |
|
304 |
@@ -72,25 +74,44 @@ src_prepare() { |
305 |
|
306 |
# FIXME: Fix unaligned accesses on ARM, IA64 and SPARC |
307 |
# https://bugs.webkit.org/show_bug.cgi?id=19775 |
308 |
- use sparc && epatch "${FILESDIR}"/${PN}-1.2.3-fix-pool-sparc.patch |
309 |
+ # TODO: FAILS TO APPLY! |
310 |
+ #use sparc && epatch "${FILESDIR}"/${PN}-1.2.3-fix-pool-sparc.patch |
311 |
|
312 |
# intermediate MacPorts hack while upstream bug is not fixed properly |
313 |
# https://bugs.webkit.org/show_bug.cgi?id=28727 |
314 |
- use aqua && epatch "${FILESDIR}"/${PN}-1.2.5-darwin-quartz.patch |
315 |
+ use aqua && epatch "${FILESDIR}"/${PN}-1.6.1-darwin-quartz.patch |
316 |
|
317 |
- # Fix build on Darwin8 (10.4 Tiger) |
318 |
- # XXX: Fails to apply |
319 |
- #epatch "${FILESDIR}"/${PN}-1.2.5-darwin8.patch |
320 |
+ # Bug #403049, https://bugs.webkit.org/show_bug.cgi?id=79605 |
321 |
+ epatch "${FILESDIR}/${PN}-1.7.5-linguas.patch" |
322 |
|
323 |
- # Don't force -O2 |
324 |
- sed -i 's/-O2//g' "${S}"/configure.ac |
325 |
- |
326 |
- # Don't build tests if not needed, part of bug #343249 |
327 |
- # XXX: Fails to apply |
328 |
- #epatch "${FILESDIR}/${PN}-1.2.5-tests-build.patch" |
329 |
+ # Drop DEPRECATED flags |
330 |
+ sed -i -e 's:-D[A-Z_]*DISABLE_DEPRECATED:$(NULL):g' GNUmakefile.am || die |
331 |
|
332 |
- # Required for webgl; https://bugs.webkit.org/show_bug.cgi?id=69085 |
333 |
- mkdir -p DerivedSources/ANGLE |
334 |
+ # Don't force -O2 |
335 |
+ sed -i 's/-O2//g' "${S}"/configure.ac || die |
336 |
+ |
337 |
+ # We need to reset some variables to prevent permissions problems and failures |
338 |
+ # like https://bugs.webkit.org/show_bug.cgi?id=35471 and bug #323669 |
339 |
+ gnome2_environment_reset |
340 |
+ |
341 |
+ # https://bugs.webkit.org/show_bug.cgi?id=79498 |
342 |
+ epatch "${FILESDIR}/${PN}-1.7.90-parallel-make-hack.patch" |
343 |
+ |
344 |
+ # XXX: failing tests |
345 |
+ # https://bugs.webkit.org/show_bug.cgi?id=79599 |
346 |
+ # https://bugs.webkit.org/show_bug.cgi?id=50744 |
347 |
+ # testkeyevents is interactive |
348 |
+ # mimehandling test sometimes fails under Xvfb (works fine manually) |
349 |
+ sed -e '/Programs\/unittests\/testwebview/ d' \ |
350 |
+ -e '/Programs\/unittests\/testwebinspector/ d' \ |
351 |
+ -e '/Programs\/unittests\/testkeyevents/ d' \ |
352 |
+ -e '/Programs\/unittests\/testmimehandling/ d' \ |
353 |
+ -i Source/WebKit/gtk/GNUmakefile.am || die |
354 |
+ # garbage collection test fails intermittently if icedtea-web is installed |
355 |
+ epatch "${FILESDIR}/${PN}-1.7.90-test_garbage_collection.patch" |
356 |
+ |
357 |
+ # Respect CC, otherwise fails on prefix #395875 |
358 |
+ tc-export CC |
359 |
|
360 |
# Prevent maintainer mode from being triggered during make |
361 |
AT_M4DIR=Source/autotools eautoreconf |
362 |
@@ -132,17 +153,21 @@ src_configure() { |
363 |
} |
364 |
|
365 |
src_compile() { |
366 |
- # Fix sandbox error with USE="introspection" |
367 |
- # https://bugs.webkit.org/show_bug.cgi?id=35471 |
368 |
- emake XDG_DATA_HOME="${T}/.local" |
369 |
+ # Horrible failure of a hack to work around parallel make problems, |
370 |
+ # see https://bugs.webkit.org/show_bug.cgi?id=79498 |
371 |
+ emake all-built-sources-local |
372 |
+ emake all-ltlibraries-local |
373 |
+ emake all-programs-local |
374 |
+ use introspection && emake WebKit-1.0.gir |
375 |
+ emake all-data-local |
376 |
+ default |
377 |
} |
378 |
|
379 |
src_test() { |
380 |
unset DISPLAY |
381 |
# Tests need virtualx, bug #294691, bug #310695 |
382 |
- # Set XDG_DATA_HOME for introspection tools, bug #323669 |
383 |
# Parallel tests sometimes fail |
384 |
- Xemake -j1 check XDG_DATA_HOME="${T}/.local" |
385 |
+ Xemake -j1 check |
386 |
} |
387 |
|
388 |
src_install() { |
389 |
@@ -155,4 +180,8 @@ src_install() { |
390 |
|
391 |
# Remove .la files |
392 |
find "${D}" -name '*.la' -exec rm -f '{}' + |
393 |
+ |
394 |
+ # File collisions with slot 3 |
395 |
+ # bug #402699, https://bugs.webkit.org/show_bug.cgi?id=78134 |
396 |
+ rm -rf "${ED}usr/share/gtk-doc" || die |
397 |
} |
398 |
|
399 |
diff --git a/net-libs/webkit-gtk/webkit-gtk-1.7.5-r300.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.7.90-r300.ebuild |
400 |
similarity index 65% |
401 |
rename from net-libs/webkit-gtk/webkit-gtk-1.7.5-r300.ebuild |
402 |
rename to net-libs/webkit-gtk/webkit-gtk-1.7.90-r300.ebuild |
403 |
index 8dd0c8c..bf6320a 100644 |
404 |
--- a/net-libs/webkit-gtk/webkit-gtk-1.7.5-r300.ebuild |
405 |
+++ b/net-libs/webkit-gtk/webkit-gtk-1.7.90-r300.ebuild |
406 |
@@ -5,7 +5,7 @@ |
407 |
EAPI="4" |
408 |
|
409 |
# Don't define PYTHON_DEPEND: python only needed at build time |
410 |
-inherit autotools eutils flag-o-matic eutils python virtualx |
411 |
+inherit autotools eutils flag-o-matic eutils python virtualx gnome2-utils |
412 |
|
413 |
MY_P="webkit-${PV}" |
414 |
DESCRIPTION="Open source web browser engine" |
415 |
@@ -15,10 +15,9 @@ SRC_URI="http://www.webkitgtk.org/${MY_P}.tar.xz" |
416 |
|
417 |
LICENSE="LGPL-2 LGPL-2.1 BSD" |
418 |
SLOT="3" |
419 |
-KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd |
420 |
-~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~x86-macos" |
421 |
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~x86-macos" |
422 |
# geoclue |
423 |
-IUSE="aqua coverage debug doc +gstreamer +introspection +jit spell webgl" |
424 |
+IUSE="aqua coverage debug doc +gstreamer +introspection +jit spell +webgl" |
425 |
# bug 372493 |
426 |
REQUIRED_USE="introspection? ( gstreamer )" |
427 |
|
428 |
@@ -32,12 +31,12 @@ RDEPEND=" |
429 |
virtual/jpeg |
430 |
>=media-libs/libpng-1.4:0 |
431 |
>=x11-libs/cairo-1.10 |
432 |
- >=dev-libs/glib-2.27.90:2 |
433 |
+ >=dev-libs/glib-2.31.2:2 |
434 |
>=x11-libs/gtk+-3.0:3[aqua=,introspection?] |
435 |
>=dev-libs/icu-3.8.1-r1 |
436 |
>=net-libs/libsoup-2.37.2.1:2.4[introspection?] |
437 |
dev-db/sqlite:3 |
438 |
- >=x11-libs/pango-1.12 |
439 |
+ >=x11-libs/pango-1.21 |
440 |
x11-libs/libXrender |
441 |
|
442 |
gstreamer? ( |
443 |
@@ -51,16 +50,18 @@ RDEPEND=" |
444 |
webgl? ( virtual/opengl ) |
445 |
" |
446 |
DEPEND="${RDEPEND} |
447 |
+ dev-lang/perl |
448 |
=dev-lang/python-2* |
449 |
+ sys-devel/bison |
450 |
>=sys-devel/flex-2.5.33 |
451 |
sys-devel/gettext |
452 |
- virtual/yacc |
453 |
dev-util/gperf |
454 |
dev-util/pkgconfig |
455 |
dev-util/gtk-doc-am |
456 |
doc? ( >=dev-util/gtk-doc-1.10 ) |
457 |
test? ( x11-themes/hicolor-icon-theme ) |
458 |
" |
459 |
+# Need real bison, not yacc |
460 |
|
461 |
S="${WORKDIR}/${MY_P}" |
462 |
|
463 |
@@ -75,25 +76,42 @@ src_prepare() { |
464 |
|
465 |
# FIXME: Fix unaligned accesses on ARM, IA64 and SPARC |
466 |
# https://bugs.webkit.org/show_bug.cgi?id=19775 |
467 |
- use sparc && epatch "${FILESDIR}"/${PN}-1.2.3-fix-pool-sparc.patch |
468 |
+ # TODO: FAILS TO APPLY! |
469 |
+ #use sparc && epatch "${FILESDIR}"/${PN}-1.2.3-fix-pool-sparc.patch |
470 |
|
471 |
# intermediate MacPorts hack while upstream bug is not fixed properly |
472 |
# https://bugs.webkit.org/show_bug.cgi?id=28727 |
473 |
- use aqua && epatch "${FILESDIR}"/${PN}-1.2.5-darwin-quartz.patch |
474 |
+ use aqua && epatch "${FILESDIR}"/${PN}-1.6.1-darwin-quartz.patch |
475 |
|
476 |
- # Fix build on Darwin8 (10.4 Tiger) |
477 |
- # XXX: Fails to apply |
478 |
- #epatch "${FILESDIR}"/${PN}-1.2.5-darwin8.patch |
479 |
+ # Bug #403049, https://bugs.webkit.org/show_bug.cgi?id=79605 |
480 |
+ epatch "${FILESDIR}/${PN}-1.7.5-linguas.patch" |
481 |
+ |
482 |
+ # Drop DEPRECATED flags |
483 |
+ sed -i -e 's:-D[A-Z_]*DISABLE_DEPRECATED:$(NULL):g' GNUmakefile.am || die |
484 |
|
485 |
# Don't force -O2 |
486 |
- sed -i 's/-O2//g' "${S}"/configure.ac |
487 |
+ sed -i 's/-O2//g' "${S}"/configure.ac || die |
488 |
+ |
489 |
+ # We need to reset some variables to prevent permissions problems and failures |
490 |
+ # like https://bugs.webkit.org/show_bug.cgi?id=35471 and bug #323669 |
491 |
+ gnome2_environment_reset |
492 |
|
493 |
- # Don't build tests if not needed, part of bug #343249 |
494 |
- # XXX: Fails to apply |
495 |
- #epatch "${FILESDIR}/${PN}-1.2.5-tests-build.patch" |
496 |
+ # https://bugs.webkit.org/show_bug.cgi?id=79498 |
497 |
+ epatch "${FILESDIR}/${PN}-1.7.90-parallel-make-hack.patch" |
498 |
|
499 |
- # Required for webgl; https://bugs.webkit.org/show_bug.cgi?id=69085 |
500 |
- mkdir -p DerivedSources/ANGLE |
501 |
+ # XXX: failing tests |
502 |
+ # https://bugs.webkit.org/show_bug.cgi?id=50744 |
503 |
+ # testkeyevents is interactive |
504 |
+ # mimehandling test sometimes fails under Xvfb (works fine manually) |
505 |
+ sed -e '/Programs\/unittests\/testwebinspector/ d' \ |
506 |
+ -e '/Programs\/unittests\/testkeyevents/ d' \ |
507 |
+ -e '/Programs\/unittests\/testmimehandling/ d' \ |
508 |
+ -i Source/WebKit/gtk/GNUmakefile.am || die |
509 |
+ # garbage collection test fails intermittently if icedtea-web is installed |
510 |
+ epatch "${FILESDIR}/${PN}-1.7.90-test_garbage_collection.patch" |
511 |
+ |
512 |
+ # Respect CC, otherwise fails on prefix #395875 |
513 |
+ tc-export CC |
514 |
|
515 |
# Prevent maintainer mode from being triggered during make |
516 |
AT_M4DIR=Source/autotools eautoreconf |
517 |
@@ -134,17 +152,21 @@ src_configure() { |
518 |
} |
519 |
|
520 |
src_compile() { |
521 |
- # Fix sandbox error with USE="introspection" |
522 |
- # https://bugs.webkit.org/show_bug.cgi?id=35471 |
523 |
- emake XDG_DATA_HOME="${T}/.local" |
524 |
+ # Horrible failure of a hack to work around parallel make problems, |
525 |
+ # see https://bugs.webkit.org/show_bug.cgi?id=79498 |
526 |
+ emake all-built-sources-local |
527 |
+ emake all-ltlibraries-local |
528 |
+ emake all-programs-local |
529 |
+ use introspection && emake WebKit-3.0.gir |
530 |
+ emake all-data-local |
531 |
+ default |
532 |
} |
533 |
|
534 |
src_test() { |
535 |
unset DISPLAY |
536 |
# Tests need virtualx, bug #294691, bug #310695 |
537 |
- # Set XDG_DATA_HOME for introspection tools, bug #323669 |
538 |
# Parallel tests sometimes fail |
539 |
- Xemake -j1 check XDG_DATA_HOME="${T}/.local" |
540 |
+ Xemake -j1 check |
541 |
} |
542 |
|
543 |
src_install() { |