public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] proj/gnome:master commit in: net-libs/webkit-gtk/, net-libs/webkit-gtk/files/
@ 2014-10-19 21:48 Gilles Dartiguelongue
  0 siblings, 0 replies; only message in thread
From: Gilles Dartiguelongue @ 2014-10-19 21:48 UTC (permalink / raw
  To: gentoo-commits

commit:     010a36b371efa1bb05f519cccdc4bca385c7e3ae
Author:     Gilles Dartiguelongue <eva <AT> gentoo <DOT> org>
AuthorDate: Sun Oct 19 16:48:41 2014 +0000
Commit:     Gilles Dartiguelongue <eva <AT> gentoo <DOT> org>
CommitDate: Sun Oct 19 21:13:59 2014 +0000
URL:        http://sources.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=010a36b3

net-libs/webkit-gtk: 2.4.6 → 2.6.1

---
 .../files/webkit-gtk-1.11.90-gtk-docize-fix.patch  |  10 -
 .../files/webkit-gtk-1.6.1-darwin-quartz.patch     |  67 -----
 .../files/webkit-gtk-2.2.4-unittests-build.patch   | 103 --------
 .../files/webkit-gtk-2.2.5-gir-nvidia-hangs.patch  |  95 --------
 .../files/webkit-gtk-2.2.5-hppa-platform.patch     |  20 --
 .../files/webkit-gtk-2.2.5-ia64-platform.patch     |  12 -
 .../files/webkit-gtk-2.2.5-sparc64-build.patch     |  23 --
 .../files/webkit-gtk-2.4.1-ia64-malloc.patch       |  20 --
 .../files/webkit-gtk-2.6.0-atomic-ppc.patch        |  48 ++++
 .../files/webkit-gtk-2.6.0-hppa-platform.patch     |  34 +++
 .../files/webkit-gtk-2.6.0-ia64-malloc.patch       |  31 +++
 .../files/webkit-gtk-2.6.0-ia64-platform.patch     |  26 ++
 net-libs/webkit-gtk/webkit-gtk-2.4.1-r200.ebuild   | 269 ---------------------
 ...it-gtk-2.4.1.ebuild => webkit-gtk-2.6.1.ebuild} | 179 ++++++--------
 14 files changed, 219 insertions(+), 718 deletions(-)

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.11.90-gtk-docize-fix.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.11.90-gtk-docize-fix.patch
deleted file mode 100644
index 8f56ab2..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-1.11.90-gtk-docize-fix.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- configure.ac.old	2013-03-02 09:22:53.791750644 +0200
-+++ configure.ac	2013-03-02 09:24:56.725213764 +0200
-@@ -24,6 +24,7 @@
- m4_include([Source/autotools/SetupLibtool.m4])
- m4_include([Source/autotools/ReadCommandLineArguments.m4])
- m4_include([Source/autotools/FindDependencies.m4])
-+GTK_DOC_CHECK([1.10])
- m4_include([Source/autotools/SetupCompilerFlags.m4])
- m4_include([Source/autotools/SetupAutoconfHeader.m4])
- 

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.6.1-darwin-quartz.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.6.1-darwin-quartz.patch
deleted file mode 100644
index 5ad357e..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-1.6.1-darwin-quartz.patch
+++ /dev/null
@@ -1,67 +0,0 @@
-Original from:
-http://trac.macports.org/browser/trunk/dports/www/webkit-gtk/files/patch-quartz-WebCore-plugins-gtk-gtkxtbin.c.diff?format=txt
-http://trac.macports.org/browser/trunk/dports/www/webkit-gtk/files/patch-quartz-WebCore-plugins-gtk-PluginViewGtk.cpp.diff?format=txt
-
-Adapted for 1.6.1
-
---- Source/WebCore/plugins/gtk/PluginViewGtk.cpp
-+++ Source/WebCore/plugins/gtk/PluginViewGtk.cpp
-@@ -70,6 +70,8 @@
- #endif
- #include <gtk/gtk.h>
- 
-+#undef XP_UNIX
-+
- #if defined(XP_UNIX)
- #include "RefPtrCairo.h"
- #include "gtk2xtbin.h"
-@@ -439,9 +441,9 @@
-         event->setDefaultHandled();
- }
- 
--#if defined(XP_UNIX)
- void PluginView::handleFocusInEvent()
- {
-+#if defined(XP_UNIX)
-     if (!m_isStarted || m_status != PluginStatusLoadedSuccessfully)
-         return;
- 
-@@ -454,10 +456,12 @@
-     event.detail = NotifyDetailNone;
- 
-     dispatchNPEvent(npEvent);
-+#endif
- }
- 
- void PluginView::handleFocusOutEvent()
- {
-+#if defined(XP_UNIX)
-     if (!m_isStarted || m_status != PluginStatusLoadedSuccessfully)
-         return;
- 
-@@ -470,8 +474,8 @@
-     event.detail = NotifyDetailNone;
- 
-     dispatchNPEvent(npEvent);
--}
- #endif
-+}
- 
- void PluginView::setParent(ScrollView* parent)
- {
---- Source/WebCore/plugins/gtk/gtk2xtbin.c
-+++ Source/WebCore/plugins/gtk/gtk2xtbin.c
-@@ -41,7 +41,7 @@
-  * The GtkXtBin widget allows for Xt toolkit code to be used
-  * inside a GTK application.  
-  */
--
-+#if 0
- #include "GtkVersioning.h"
- #include "xembed.h"
- #include "gtk2xtbin.h"
-@@ -966,3 +966,4 @@
- 
-   return;
- }
-+#endif

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-2.2.4-unittests-build.patch b/net-libs/webkit-gtk/files/webkit-gtk-2.2.4-unittests-build.patch
deleted file mode 100644
index a6077b4..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-2.2.4-unittests-build.patch
+++ /dev/null
@@ -1,103 +0,0 @@
-From: Gilles Dartiguelongue <eva@gentoo.org>
-Date: Wed, 03 Feb 2014 23:47:39 +0100
-Subject: [PATCH] Build unittests on demand
-
---- a/GNUmakefile.am	2013-11-27 23:52:56.148735433 +0100
-+++ b/GNUmakefile.am	2013-11-27 23:51:25.551590806 +0100
-@@ -51,6 +51,9 @@
- # Libraries and support components
- bin_PROGRAMS :=
- noinst_PROGRAMS :=
-+check_PROGRAMS :=
-+check_LTLIBRARIES :=
-+check_DATA :=
- libexec_PROGRAMS :=
- noinst_DATA :=
- noinst_HEADERS :=
---- a/Tools/TestWebKitAPI/GNUmakefile.am	2014-02-03 23:44:52.534272572 +0100
-+++ b/Tools/TestWebKitAPI/GNUmakefile.am	2014-02-03 23:45:41.711783299 +0100
-@@ -1,8 +1,8 @@
--noinst_LTLIBRARIES += \
-+check_LTLIBRARIES += \
- 	Libraries/libTestWebKitAPIMain.la
- 
- if ENABLE_WEBKIT2
--noinst_LTLIBRARIES += \
-+check_LTLIBRARIES += \
- 	Libraries/libTestWebKit2GtkAPI.la
- endif
- 
-@@ -111,14 +111,14 @@
- Libraries_libTestWebKit2GtkAPI_la_CPPFLAGS = $(webkit2gtk_tests_cppflags)
- 
- 
--noinst_PROGRAMS += \
-+check_PROGRAMS += \
- 	Programs/TestWebKitAPI/WTF/TestWTF \
- 	Programs/TestWebKitAPI/JavaScriptCore/TestJavaScriptCore \
- 	Programs/TestWebKitAPI/WebCore/TestWebCore \
- 	Programs/TestWebKitAPI/WebCoreGtk/TestWebCoreGtk
- 
- if ENABLE_WEBKIT1
--noinst_PROGRAMS += \
-+check_PROGRAMS += \
- 	Programs/TestWebKitAPI/WebKitGtk/testapplicationcache \
- 	Programs/TestWebKitAPI/WebKitGtk/testcontextmenu \
- 	Programs/TestWebKitAPI/WebKitGtk/testdomdocument \
-@@ -150,7 +150,7 @@
- endif
- 
- if ENABLE_WEBKIT2
--noinst_PROGRAMS += \
-+check_PROGRAMS += \
- 	Programs/TestWebKitAPI/WebKit2/TestWebKit2 \
- 	Programs/TestWebKitAPI/WebKit2Gtk/InspectorTestServer \
- 	Programs/TestWebKitAPI/WebKit2Gtk/TestAuthentication \
-@@ -179,7 +179,7 @@
- 	Programs/TestWebKitAPI/WebKit2Gtk/TestWebViewEditor
- 
- if HAVE_ATSPI2
--noinst_PROGRAMS += \
-+check_PROGRAMS += \
- 	Programs/TestWebKitAPI/WebKit2Gtk/AccessibilityTestServer \
- 	Programs/TestWebKitAPI/WebKit2Gtk/TestWebKitAccessibility
- endif
-@@ -627,7 +627,7 @@
- 	Tools/TestWebKitAPI/Tests/WebKit2/WKURL.cpp
- 
- if ENABLE_WEBKIT2
--noinst_LTLIBRARIES += \
-+check_LTLIBRARIES += \
- 	Libraries/libTestWebKitAPIInjectedBundle.la
- endif # ENABLE_WEBKIT2
- 
-@@ -684,7 +684,7 @@
- 
- 
- if ENABLE_WEBKIT2
--noinst_LTLIBRARIES += Libraries/WebExtensions/libWebExtensionTest.la
-+check_LTLIBRARIES += Libraries/WebExtensions/libWebExtensionTest.la
- endif
- 
- Libraries_WebExtensions_libWebExtensionTest_la_SOURCES = \
-@@ -711,7 +711,7 @@
- 
- 
- if ENABLE_WEBKIT2
--noinst_LTLIBRARIES += Libraries/WebExtensions/libWebProcessTest.la
-+check_LTLIBRARIES += Libraries/WebExtensions/libWebProcessTest.la
- endif
- 
- Libraries_WebExtensions_libWebProcessTest_la_SOURCES = \
-@@ -747,7 +747,7 @@
- DISTCLEANFILES += \
- 	Programs/TestWebKitAPI/WebKit2Gtk/resources/webkit2gtk-tests-resources.gresource
- 
--noinst_DATA += \
-+check_DATA += \
- 	Programs/TestWebKitAPI/WebKit2Gtk/resources/webkit2gtk-tests-resources.gresource
- 
- 
--- 
-1.8.3.2
-

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-2.2.5-gir-nvidia-hangs.patch b/net-libs/webkit-gtk/files/webkit-gtk-2.2.5-gir-nvidia-hangs.patch
deleted file mode 100644
index 854a112..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-2.2.5-gir-nvidia-hangs.patch
+++ /dev/null
@@ -1,95 +0,0 @@
-Description: deadlock in gobject introspection
-Bug-Dyson: http://osdyson.org/issues/161
-Bug-Gentoo: https://bugs.gentoo.org/show_bug.cgi?id=463960
-Stack:
-25849:  /home/pashev/packaging/webkitgtk/webkitgtk-2.0.4/build-2.0/tmp-introsp
------------------  lwp# 1 / thread# 1  --------------------
- fffffd7ffeeaf957 lwp_park (0, 0, 0)
- fffffd7ffeea8036 mutex_lock_impl () + 156
- fffffd7ffeea810b mutex_lock () + b
- fffffd7ffee340fa _preexec_atfork_unload () + 3a
- fffffd7ffee343ab _preexec_exit_handlers () + bb
- fffffd7fff5ccf0d purge_exit_handlers () + 10d
- fffffd7fff5cec18 remove_hdl () + ce8
- fffffd7fff5c8895 dlclose_core () + c5
- fffffd7fff5c88e5 dlclose_intn () + 15
- fffffd7fff5c89bb dlclose_check () + 7b
- fffffd7fff5c8a21 dlclose () + 41
- fffffd7ffaa03c41 px_module_manager_load () + 191
- fffffd7ffaa03cf6 px_module_manager_load_dir () + 66
- fffffd7ffaa050d7 px_proxy_factory_new () + 107
- fffffd7ffb201671 ???????? ()
- fffffd7feca30eca g_type_create_instance () + 16a
- fffffd7feca1597c ???????? ()
- fffffd7feca17472 g_object_newv () + 792
- fffffd7feca17aec g_object_new () + ec
- fffffd7fece5d052 ???????? ()
- fffffd7fece5d1d8 ???????? ()
- fffffd7fc98659a5 ???????? ()
- fffffd7feca173f6 g_object_newv () + 716
- fffffd7feca17aec g_object_new () + ec
- fffffd7fc986da24 soup_session_add_feature_by_type () + e4
- fffffd7fc986fb43 ???????? ()
- fffffd7feca17e00 g_object_set_valist () + 300
- fffffd7feca186d7 g_object_set () + e7
- fffffd7fc5724f87 WebCore::ResourceHandle::defaultSession() () + a7
- fffffd7fc48da299 webkitExit() () + 9
- fffffd7ffee33f56 _exithandle () + 66
- fffffd7ffee1e191 exit () + 11
- 00000000004086af ???????? ()
- 000000000040724c _start () + 6c
------------------  lwp# 2 / thread# 2  --------------------
- fffffd7ffeeaf957 lwp_park (0, 0, 0)
- fffffd7ffeea94bf cond_wait_queue () + 4f
- fffffd7ffeea9b12 __cond_wait () + b2
- fffffd7ffeea9b42 cond_wait () + 22
- fffffd7ffeea9b79 pthread_cond_wait () + 9
- fffffd7fc4eed04b WebCore::IconDatabase::syncThreadMainLoop() () + 12b
- fffffd7fc4eed278 WebCore::IconDatabase::iconDatabaseSyncThread() () + 138
- fffffd7fc3b2bc59 WTF::wtfThreadEntryPoint(void*) () + 19
- fffffd7ffeeaf617 _thrp_setup () + 77
- fffffd7ffeeaf910 _lwp_start ()
------------------  lwp# 3 / thread# 3  --------------------
- fffffd7ffeeaf957 lwp_park (0, 0, 0)
- fffffd7ffeea8036 mutex_lock_impl () + 156
- fffffd7ffeea810b mutex_lock () + b
- fffffd7ffee33e17 atexit_locks () + 17
- fffffd7ffee58ce9 libc_prepare_atfork () + 9
- fffffd7ffee34533 _prefork_handler () + 33
- fffffd7ffee9fc85 forkx () + 275
- fffffd7ffee9fcab fork () + b
- fffffd7fec68aacb ???????? ()
- fffffd7fec68b2a7 g_spawn_sync () + 167
- fffffd7fec68b994 g_spawn_command_line_sync () + 74
- fffffd7feceb2748 ???????? ()
- fffffd7feceb4019 g_dbus_address_get_for_bus_sync () + 2c9
- fffffd7fecebd11e ???????? ()
- fffffd7fecec4643 g_bus_get_sync () + 63
- fffffd7ffc60700b ???????? ()
- fffffd7ffc60714f ???????? ()
- fffffd7fec648ad0 g_main_context_dispatch () + 130
- fffffd7fec648e40 ???????? ()
- fffffd7fec648f08 g_main_context_iteration () + 38
- fffffd7ffc606f65 ???????? ()
- fffffd7fec66d50d ???????? ()
- fffffd7ffeeaf617 _thrp_setup () + 77
- fffffd7ffeeaf910 _lwp_start ()
-Index: webkit/Source/WebKit/gtk/webkit/webkitglobals.cpp
-===================================================================
---- webkit.orig/Source/WebKit/gtk/webkit/webkitglobals.cpp	2013-12-02 00:06:10.504150531 +0400
-+++ webkit/Source/WebKit/gtk/webkit/webkitglobals.cpp	2013-12-03 14:08:05.956932011 +0400
-@@ -564,6 +564,14 @@
- 
-     WebCore::SchemeRegistry::registerURLSchemeAsLocal("resource");
- 
-+    // http://osdyson.org/issues/161
-+    // WebKitGTK FTBFS when building GObject introspection due to deadlock.
-+    // When gobject introspection is done, a simple program call exit()
-+    // exit() -> webkitExit() -> g_object_unref() -> webkit_get_default_session()
-+    // -> ResourceHandle::defaultSession() => default session doesn't exist! AND
-+    // we try to create it! Thus deadlock. So, create default session earlier:
-+    (void) webkit_get_default_session();
-+
-     atexit(webkitExit);
- }
- 

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-2.2.5-hppa-platform.patch b/net-libs/webkit-gtk/files/webkit-gtk-2.2.5-hppa-platform.patch
deleted file mode 100644
index 8aee778..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-2.2.5-hppa-platform.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-Index: webkitgtk/Source/WTF/wtf/Platform.h
-===================================================================
---- webkitgtk.orig/Source/WTF/wtf/Platform.h
-+++ webkitgtk/Source/WTF/wtf/Platform.h
-@@ -72,6 +72,15 @@
- #define WTF_CPU_BIG_ENDIAN 1
- #endif
- 
-+/* CPU(HPPA) - HP PARISC */
-+#if defined(__hppa__)
-+#define WTF_CPU_HPPA 1
-+#define WTF_CPU_BIG_ENDIAN 1
-+#define ENABLE_JIT 0
-+#define ENABLE_YARR_JIT 0
-+#define ENABLE_ASSEMBLER 0
-+#endif
-+
- /* CPU(IA64) - Itanium / IA-64 */
- #if defined(__ia64__)
- #define WTF_CPU_IA64 1

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-2.2.5-ia64-platform.patch b/net-libs/webkit-gtk/files/webkit-gtk-2.2.5-ia64-platform.patch
deleted file mode 100644
index a63e9e8..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-2.2.5-ia64-platform.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- a/Source/WTF/wtf/Platform.h	2014-02-25 00:33:16.561606810 +0100
-+++ b/Source/WTF/wtf/Platform.h	2014-02-25 00:49:52.895512955 +0100
-@@ -79,6 +79,9 @@
- #if !defined(__LP64__)
- #define WTF_CPU_IA64_32 1
- #endif
-+#define ENABLE_JIT 0
-+#define ENABLE_YARR_JIT 0
-+#define ENABLE_ASSEMBLER 0
- #endif
- 
- /* CPU(MIPS) - MIPS 32-bit */

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-2.2.5-sparc64-build.patch b/net-libs/webkit-gtk/files/webkit-gtk-2.2.5-sparc64-build.patch
deleted file mode 100644
index 691b528..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-2.2.5-sparc64-build.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-$OpenBSD: patch-Source_WTF_wtf_Atomics_h,v 1.3 2013/10/20 09:07:57 landry Exp $
-
-https://bugs.webkit.org/show_bug.cgi?id=86835
-Fix build failure on sparc64 since 1.8.1, provide atomic{In,De}crement implems based on __sync_fetch_and_add builtin
-
---- Source/WTF/wtf/Atomics.h.orig	Sat Aug  3 18:10:38 2013
-+++ Source/WTF/wtf/Atomics.h	Sun Oct 20 11:06:14 2013
-@@ -112,6 +112,15 @@ inline int atomicDecrement(int volatile* addend) { ret
- inline int64_t atomicIncrement(int64_t volatile* addend) { return __sync_add_and_fetch(addend, 1); }
- inline int64_t atomicDecrement(int64_t volatile* addend) { return __sync_sub_and_fetch(addend, 1); }
- 
-+#elif COMPILER(GCC) && CPU(SPARC64)
-+#define WTF_USE_LOCKFREE_THREADSAFEREFCOUNTED 1
-+
-+inline int atomicIncrement(int volatile* addend) { return __sync_fetch_and_add(addend, 1) + 1; }
-+inline int atomicDecrement(int volatile* addend) { return __sync_fetch_and_add(addend, -1) - 1; }
-+
-+inline int64_t atomicIncrement(int64_t volatile* addend) { return __sync_fetch_and_add(addend, 1) + 1; }
-+inline int64_t atomicDecrement(int64_t volatile* addend) { return __sync_fetch_and_add(addend, -1) - 1; }
-+
- #endif
- 
- #if OS(WINDOWS)

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-2.4.1-ia64-malloc.patch b/net-libs/webkit-gtk/files/webkit-gtk-2.4.1-ia64-malloc.patch
deleted file mode 100644
index 8c387ff..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-2.4.1-ia64-malloc.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-Description: Fix wide pointer issues on ia64 (closes: #642750).
-Author: Stephan Schreiber <info@fs-driver.org>
-Index: webkitgtk/Source/WTF/wtf/Platform.h
-===================================================================
---- webkitgtk.orig/Source/WTF/wtf/Platform.h
-+++ webkitgtk/Source/WTF/wtf/Platform.h
-@@ -705,6 +705,13 @@
- #define ENABLE_JIT 1
- #endif
- 
-+/* FIXME: The fast malloc implementation is broken on Itanium / IA64 because
-+   some memory barriers are missing in the thread-unsafe code around the
-+   pagemap_cache_ object. */
-+#if CPU(IA64) || CPU(IA64_32)
-+#define USE_SYSTEM_MALLOC 1
-+#endif
-+
- /* The JIT is enabled by default on all x86, x86-64, ARM & MIPS platforms except Win64. */
- #if !defined(ENABLE_JIT) \
-     && (CPU(X86) || CPU(X86_64) || CPU(ARM) || CPU(ARM64) || CPU(MIPS)) \

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-2.6.0-atomic-ppc.patch b/net-libs/webkit-gtk/files/webkit-gtk-2.6.0-atomic-ppc.patch
new file mode 100644
index 0000000..af6d467
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-2.6.0-atomic-ppc.patch
@@ -0,0 +1,48 @@
+From 7960c437511c650ad33708f4e42457118d95a13d Mon Sep 17 00:00:00 2001
+From: Gilles Dartiguelongue <eva@gentoo.org>
+Date: Sun, 19 Oct 2014 19:43:09 +0200
+Subject: [PATCH 4/4] Do not use std::atomic on PPC
+
+$OpenBSD: patch-Source_WebKit2_Platform_IPC_Connection_h,v 1.2 2014/07/14 21:13:31 ajacoutot Exp $
+
+https://bugs.webkit.org/show_bug.cgi?id=130837
+---
+ Source/WebKit2/Platform/IPC/Connection.h       | 4 ++++
+ Source/WebKit2/UIProcess/StatisticsRequest.cpp | 4 ++++
+ 2 files changed, 8 insertions(+)
+
+diff --git a/Source/WebKit2/Platform/IPC/Connection.h b/Source/WebKit2/Platform/IPC/Connection.h
+index b52cf1e..5597e94 100644
+--- a/Source/WebKit2/Platform/IPC/Connection.h
++++ b/Source/WebKit2/Platform/IPC/Connection.h
+@@ -233,7 +233,11 @@ private:
+     
+     Client* m_client;
+     bool m_isServer;
++#if CPU(PPC)
++    uint64_t m_syncRequestID;
++#else
+     std::atomic<uint64_t> m_syncRequestID;
++#endif
+ 
+     bool m_onlySendMessagesAsDispatchWhenWaitingForSyncReplyWhenProcessingSuchAMessage;
+     bool m_shouldExitOnSyncMessageSendFailure;
+diff --git a/Source/WebKit2/UIProcess/StatisticsRequest.cpp b/Source/WebKit2/UIProcess/StatisticsRequest.cpp
+index bc0a1e6..ef259d1 100644
+--- a/Source/WebKit2/UIProcess/StatisticsRequest.cpp
++++ b/Source/WebKit2/UIProcess/StatisticsRequest.cpp
+@@ -44,7 +44,11 @@ StatisticsRequest::~StatisticsRequest()
+ 
+ uint64_t StatisticsRequest::addOutstandingRequest()
+ {
++#if CPU(PPC)
++    static int64_t uniqueRequestID;
++#else
+     static std::atomic<int64_t> uniqueRequestID;
++#endif
+ 
+     uint64_t requestID = ++uniqueRequestID;
+     m_outstandingRequests.add(requestID);
+-- 
+2.1.2
+

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-2.6.0-hppa-platform.patch b/net-libs/webkit-gtk/files/webkit-gtk-2.6.0-hppa-platform.patch
new file mode 100644
index 0000000..0623582
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-2.6.0-hppa-platform.patch
@@ -0,0 +1,34 @@
+From 8ba68225e9ad35958197aacc03a7a1716741b14c Mon Sep 17 00:00:00 2001
+From: Gilles Dartiguelongue <eva@gentoo.org>
+Date: Sun, 19 Oct 2014 19:37:40 +0200
+Subject: [PATCH 1/4] Fix support for HPPA
+
+Debian patches to fix support for some arches
+https://bugs.webkit.org/show_bug.cgi?id=129540
+---
+ Source/WTF/wtf/Platform.h | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+diff --git a/Source/WTF/wtf/Platform.h b/Source/WTF/wtf/Platform.h
+index 7712ddb..65f1379 100644
+--- a/Source/WTF/wtf/Platform.h
++++ b/Source/WTF/wtf/Platform.h
+@@ -71,6 +71,15 @@
+ #define WTF_CPU_BIG_ENDIAN 1
+ #endif
+ 
++/* CPU(HPPA) - HP PARISC */
++#if defined(__hppa__)
++#define WTF_CPU_HPPA 1
++#define WTF_CPU_BIG_ENDIAN 1
++#define ENABLE_JIT 0
++#define ENABLE_YARR_JIT 0
++#define ENABLE_ASSEMBLER 0
++#endif
++
+ /* CPU(IA64) - Itanium / IA-64 */
+ #if defined(__ia64__)
+ #define WTF_CPU_IA64 1
+-- 
+2.1.2
+

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-2.6.0-ia64-malloc.patch b/net-libs/webkit-gtk/files/webkit-gtk-2.6.0-ia64-malloc.patch
new file mode 100644
index 0000000..0b7808b
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-2.6.0-ia64-malloc.patch
@@ -0,0 +1,31 @@
+From 9348d1c7fbbd9fcbb1702c0c6d81c723ec0b6879 Mon Sep 17 00:00:00 2001
+From: Gilles Dartiguelongue <eva@gentoo.org>
+Date: Sun, 19 Oct 2014 19:40:21 +0200
+Subject: [PATCH 3/4] Use system malloc for IA64
+
+https://bugs.webkit.org/show_bug.cgi?id=129542
+---
+ Source/WTF/wtf/Platform.h | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/Source/WTF/wtf/Platform.h b/Source/WTF/wtf/Platform.h
+index d9afcd7..c4cf1d2 100644
+--- a/Source/WTF/wtf/Platform.h
++++ b/Source/WTF/wtf/Platform.h
+@@ -662,6 +662,13 @@
+ #endif
+ #endif /* !defined(WTF_USE_JSVALUE64) && !defined(WTF_USE_JSVALUE32_64) */
+ 
++/* FIXME: The fast malloc implementation is broken on Itanium / IA64 because
++   some memory barriers are missing in the thread-unsafe code around the
++   pagemap_cache_ object. */
++#if CPU(IA64) || CPU(IA64_32)
++#define USE_SYSTEM_MALLOC 1
++#endif
++
+ /* The JIT is enabled by default on all x86, x86-64, ARM & MIPS platforms except ARMv7k and Windows. */
+ #if !defined(ENABLE_JIT) \
+     && (CPU(X86) || CPU(X86_64) || CPU(ARM) || CPU(ARM64) || CPU(MIPS)) \
+-- 
+2.1.2
+

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-2.6.0-ia64-platform.patch b/net-libs/webkit-gtk/files/webkit-gtk-2.6.0-ia64-platform.patch
new file mode 100644
index 0000000..57587e9
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-2.6.0-ia64-platform.patch
@@ -0,0 +1,26 @@
+From d98ac8c1040318e648f8417fa5ca6df66cc00b35 Mon Sep 17 00:00:00 2001
+From: Gilles Dartiguelongue <eva@gentoo.org>
+Date: Sun, 19 Oct 2014 19:38:18 +0200
+Subject: [PATCH 2/4] Fix support for IA64
+
+---
+ Source/WTF/wtf/Platform.h | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/Source/WTF/wtf/Platform.h b/Source/WTF/wtf/Platform.h
+index 65f1379..d9afcd7 100644
+--- a/Source/WTF/wtf/Platform.h
++++ b/Source/WTF/wtf/Platform.h
+@@ -87,6 +87,9 @@
+ #if !defined(__LP64__)
+ #define WTF_CPU_IA64_32 1
+ #endif
++#define ENABLE_JIT 0
++#define ENABLE_YARR_JIT 0
++#define ENABLE_ASSEMBLER 0
+ #endif
+ 
+ /* CPU(MIPS) - MIPS 32-bit */
+-- 
+2.1.2
+

diff --git a/net-libs/webkit-gtk/webkit-gtk-2.4.1-r200.ebuild b/net-libs/webkit-gtk/webkit-gtk-2.4.1-r200.ebuild
deleted file mode 100644
index 7fe38de..0000000
--- a/net-libs/webkit-gtk/webkit-gtk-2.4.1-r200.ebuild
+++ /dev/null
@@ -1,269 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: $
-
-EAPI="5"
-GCONF_DEBUG="no"
-PYTHON_COMPAT=( python{2_6,2_7} )
-
-inherit autotools check-reqs eutils flag-o-matic gnome2 pax-utils python-any-r1 toolchain-funcs versionator virtualx
-
-MY_P="webkitgtk-${PV}"
-DESCRIPTION="Open source web browser engine"
-HOMEPAGE="http://www.webkitgtk.org/"
-SRC_URI="http://www.webkitgtk.org/releases/${MY_P}.tar.xz"
-
-LICENSE="LGPL-2+ BSD"
-SLOT="2" # no usable subslot
-KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~x86-macos"
-IUSE="aqua coverage debug +egl +geoloc gles2 +gstreamer +introspection +jit libsecret +opengl spell +webgl +X"
-# bugs 372493, 416331
-REQUIRED_USE="
-	geoloc? ( introspection )
-	introspection? ( gstreamer )
-	gles2? ( egl )
-	webgl? ( ^^ ( gles2 opengl ) )
-	!webgl? ( ?? ( gles2 opengl ) )
-	|| ( aqua X )
-"
-
-# use sqlite, svg by default
-RDEPEND="
-	dev-libs/libxml2:2
-	dev-libs/libxslt
-	media-libs/harfbuzz:=[icu(+)]
-	media-libs/libwebp:=
-	virtual/jpeg:0=
-	>=media-libs/libpng-1.4:0=
-	>=x11-libs/cairo-1.10:=[X]
-	>=dev-libs/glib-2.36.0:2
-	>=dev-libs/icu-3.8.1-r1:=
-	>=net-libs/libsoup-2.42.0:2.4[introspection?]
-	dev-db/sqlite:3=
-	>=x11-libs/pango-1.30.0.0
-	x11-libs/libXrender
-	x11-libs/libXt
-	>=x11-libs/gtk+-2.24.10:2
-
-	egl? ( media-libs/mesa[egl] )
-	geoloc? ( >=app-misc/geoclue-2.1.5:2.0 )
-	gles2? ( media-libs/mesa[gles2] )
-	gstreamer? (
-		>=media-libs/gstreamer-1.2:1.0
-		>=media-libs/gst-plugins-base-1.2:1.0 )
-	introspection? ( >=dev-libs/gobject-introspection-1.32.0 )
-	libsecret? ( app-crypt/libsecret )
-	opengl? ( virtual/opengl )
-	spell? ( >=app-text/enchant-0.22:= )
-	webgl? (
-		x11-libs/cairo[opengl]
-		x11-libs/libXcomposite
-		x11-libs/libXdamage )
-"
-
-# paxctl needed for bug #407085
-# Need real bison, not yacc
-DEPEND="${RDEPEND}
-	${PYTHON_DEPS}
-	dev-lang/perl
-	|| (
-		virtual/rubygems[ruby_targets_ruby20]
-		virtual/rubygems[ruby_targets_ruby21]
-		virtual/rubygems[ruby_targets_ruby19]
-	)
-	>=dev-libs/atk-2.8.0
-	>=dev-util/gtk-doc-am-1.10
-	dev-util/gperf
-	>=sys-devel/bison-2.4.3
-	>=sys-devel/flex-2.5.33
-	|| ( >=sys-devel/gcc-4.7 >=sys-devel/clang-3.3 )
-	sys-devel/gettext
-	>=sys-devel/make-3.82-r4
-	virtual/pkgconfig
-
-	introspection? ( jit? ( sys-apps/paxctl ) )
-	test? (
-		dev-lang/python:2.7
-		dev-python/pygobject:3[python_targets_python2_7]
-		x11-themes/hicolor-icon-theme
-		jit? ( sys-apps/paxctl ) )
-"
-
-S="${WORKDIR}/${MY_P}"
-
-CHECKREQS_DISK_BUILD="18G" # and even this might not be enough, bug #417307
-
-pkg_pretend() {
-	if [[ ${MERGE_TYPE} != "binary" ]] && 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
-
-	if ! test-flag-CXX -std=c++11; then
-		die "You need at least GCC 4.7.x or Clang >= 3.3 for C++11-specific compiler flags"
-	fi
-}
-
-pkg_setup() {
-	# Check whether any of the debugging flags is enabled
-	if [[ ${MERGE_TYPE} != "binary" ]] && is-flagq "-g*" && ! is-flagq "-g*0" ; then
-		if is-flagq "-ggdb" && [[ ${WEBKIT_GTK_GGDB} != "yes" ]]; then
-			replace-flags -ggdb -g
-			ewarn "Replacing \"-ggdb\" with \"-g\" in your CFLAGS."
-			ewarn "Building ${PN} with \"-ggdb\" produces binaries which are too"
-			ewarn "large for current binutils releases (bug #432784) and has very"
-			ewarn "high temporary build space and memory requirements."
-			ewarn "If you really want to build ${PN} with \"-ggdb\", add"
-			ewarn "WEBKIT_GTK_GGDB=yes"
-			ewarn "to your make.conf file."
-		fi
-		einfo "You need to have at least 18GB of temporary build space available"
-		einfo "to build ${PN} with debugging CFLAGS. Note that it might still"
-		einfo "not be enough, as the total space requirements depend on the flags"
-		einfo "(-ggdb vs -g1) and enabled features."
-		check-reqs_pkg_setup
-	fi
-
-	[[ ${MERGE_TYPE} = "binary" ]] || python-any-r1_pkg_setup
-}
-
-src_prepare() {
-	# intermediate MacPorts hack while upstream bug is not fixed properly
-	# https://bugs.webkit.org/show_bug.cgi?id=28727
-	use aqua && epatch "${FILESDIR}"/${PN}-1.6.1-darwin-quartz.patch
-
-	# Leave optimization level to user CFLAGS
-	# FORTIFY_SOURCE is enabled by default in Gentoo
-	sed -e 's/-O[012]//g' \
-		-e 's/-D_FORTIFY_SOURCE=2//g' \
-		-i Source/autotools/SetupCompilerFlags.m4 || die
-
-	# Failing tests
-	# * webinspector -> https://bugs.webkit.org/show_bug.cgi?id=50744
-	# * keyevents is interactive
-	# * mimehandling test sometimes fails under Xvfb (works fine manually), bug #???
-	# * webdatasource test needs a network connection and intermittently fails with icedtea-web
-	# * webplugindatabase intermittently fails with icedtea-web, bug #????
-	sed -e '/Programs\/TestWebKitAPI\/WebKitGtk\/testwebinspector/ d' \
-		-e '/Programs\/TestWebKitAPI\/WebKitGtk\/testkeyevents/ d' \
-		-e '/Programs\/TestWebKitAPI\/WebKitGtk\/testmimehandling/ d' \
-		-e '/Programs\/TestWebKitAPI\/WebKitGtk\/testwebdatasource/ d' \
-		-e '/Programs\/TestWebKitAPI\/WebKitGtk\/testwebplugindatabase/ d' \
-		-i Tools/TestWebKitAPI/GNUmakefile.am || die
-
-	# bug #459978, upstream bug #113397
-	epatch "${FILESDIR}/${PN}-1.11.90-gtk-docize-fix.patch"
-
-	# Do not build unittests unless requested, upstream bug #128163
-	epatch "${FILESDIR}"/${PN}-2.2.4-unittests-build.patch
-
-	# Deadlock causing infinite compilations with nvidia-drivers:
-	# https://bugs.gentoo.org/show_bug.cgi?id=463960
-	# http://osdyson.org/issues/161
-	# https://bugs.webkit.org/show_bug.cgi?id=125651
-	epatch "${FILESDIR}"/${PN}-2.2.5-gir-nvidia-hangs.patch
-
-	# Debian patches to fix support for some arches
-	# https://bugs.webkit.org/show_bug.cgi?id=129540
-	epatch "${FILESDIR}"/${PN}-2.2.5-{hppa,ia64}-platform.patch
-	# https://bugs.webkit.org/show_bug.cgi?id=129542
-	epatch "${FILESDIR}"/${PN}-2.4.1-ia64-malloc.patch
-
-	AT_M4DIR=Source/autotools eautoreconf
-
-	gnome2_src_prepare
-}
-
-src_configure() {
-	# Respect CC, otherwise fails on prefix #395875
-	tc-export CC
-
-	# Arches without JIT support also need this to really disable it in all places
-	use jit || append-cppflags -DENABLE_JIT=0 -DENABLE_YARR_JIT=0 -DENABLE_ASSEMBLER=0
-
-	# It doesn't compile on alpha without this in LDFLAGS, bug #???
-	use alpha && append-ldflags "-Wl,--no-relax"
-
-	# Sigbuses on SPARC with mcpu and co., bug #???
-	use sparc && filter-flags "-mvis"
-
-	# https://bugs.webkit.org/show_bug.cgi?id=42070 , #301634
-	use ppc64 && append-flags "-mminimal-toc"
-
-	# Try to use less memory, bug #469942 (see Fedora .spec for reference)
-	# --no-keep-memory doesn't work on ia64, bug #502492
-	if ! use ia64; then
-		append-ldflags "-Wl,--no-keep-memory"
-	fi
-	if ! $(tc-getLD) --version | grep -q "GNU gold"; then
-		append-ldflags "-Wl,--reduce-memory-overheads"
-	fi
-
-	local myconf=""
-
-	if has_version "virtual/rubygems[ruby_targets_ruby21]"; then
-		myconf="${myconf} RUBY=$(type -P ruby21)"
-	elif has_version "virtual/rubygems[ruby_targets_ruby20]"; then
-		myconf="${myconf} RUBY=$(type -P ruby20)"
-	else
-		myconf="${myconf} RUBY=$(type -P ruby19)"
-	fi
-
-	# TODO: Check Web Audio support
-	# should somehow let user select between them?
-	#
-	# * dependency-tracking is required so parallel builds won't fail
-	gnome2_src_configure \
-		$(use_enable aqua quartz-target) \
-		$(use_enable coverage) \
-		$(use_enable debug) \
-		$(use_enable egl) \
-		$(use_enable geoloc geolocation) \
-		$(use_enable gles2) \
-		$(use_enable gstreamer video) \
-		$(use_enable gstreamer web-audio) \
-		$(use_enable introspection) \
-		$(use_enable jit) \
-		$(use_enable libsecret credential_storage) \
-		$(use_enable opengl glx) \
-		$(use_enable spell spellcheck) \
-		$(use_enable webgl) \
-		$(use_enable webgl accelerated-compositing) \
-		$(use_enable X x11-target) \
-		--with-gtk=2.0 \
-		--disable-webkit2 \
-		--enable-dependency-tracking \
-		--disable-gtk-doc \
-		${myconf}
-}
-
-src_test() {
-	# Tests expect an out-of-source build in WebKitBuild
-	ln -s . WebKitBuild || die "ln failed"
-
-	# Prevents test failures on PaX systems
-	use jit && pax-mark m $(list-paxables Programs/*[Tt]ests/*) # Programs/unittests/.libs/test*
-
-	unset DISPLAY
-	# Tests need virtualx, bug #294691, bug #310695
-	# Parallel tests sometimes fail
-	Xemake -j1 check
-}
-
-src_install() {
-	DOCS="ChangeLog NEWS" # other ChangeLog files handled by src_install
-
-	# https://bugs.webkit.org/show_bug.cgi?id=129242
-	MAKEOPTS="${MAKEOPTS} -j1" gnome2_src_install
-
-	newdoc Source/WebKit/gtk/ChangeLog ChangeLog.gtk
-	newdoc Source/JavaScriptCore/ChangeLog ChangeLog.JavaScriptCore
-	newdoc Source/WebCore/ChangeLog ChangeLog.WebCore
-
-	# Prevents crashes on PaX systems
-	use jit && pax-mark m "${ED}usr/bin/jsc-1"
-
-	# File collisions with slot 3
-	# bug #402699, https://bugs.webkit.org/show_bug.cgi?id=78134
-	rm -rf "${ED}usr/share/gtk-doc" || die
-}

diff --git a/net-libs/webkit-gtk/webkit-gtk-2.4.1.ebuild b/net-libs/webkit-gtk/webkit-gtk-2.6.1.ebuild
similarity index 54%
rename from net-libs/webkit-gtk/webkit-gtk-2.4.1.ebuild
rename to net-libs/webkit-gtk/webkit-gtk-2.6.1.ebuild
index 9f43613..fca08a6 100644
--- a/net-libs/webkit-gtk/webkit-gtk-2.4.1.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-2.6.1.ebuild
@@ -4,9 +4,9 @@
 
 EAPI="5"
 GCONF_DEBUG="no"
-PYTHON_COMPAT=( python{2_6,2_7} )
+PYTHON_COMPAT=( python2_7 )
 
-inherit autotools check-reqs eutils flag-o-matic gnome2 pax-utils python-any-r1 toolchain-funcs versionator virtualx
+inherit check-reqs cmake-utils eutils flag-o-matic gnome2 pax-utils python-any-r1 toolchain-funcs versionator virtualx
 
 MY_P="webkitgtk-${PV}"
 DESCRIPTION="Open source web browser engine"
@@ -14,9 +14,9 @@ HOMEPAGE="http://www.webkitgtk.org/"
 SRC_URI="http://www.webkitgtk.org/releases/${MY_P}.tar.xz"
 
 LICENSE="LGPL-2+ BSD"
-SLOT="3/25" # soname version of libwebkit2gtk-3.0
-KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~x86-macos"
-IUSE="aqua coverage debug +egl +geoloc gles2 +gstreamer +introspection +jit libsecret +opengl spell wayland +webgl +X"
+SLOT="4/25" # soname version of libwebkit2gtk-3.0
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~x86-macos"
+IUSE="coverage debug +egl +geoloc gles2 +gstreamer +introspection +jit libsecret +opengl spell wayland +webgl +X"
 # bugs 372493, 416331
 REQUIRED_USE="
 	geoloc? ( introspection )
@@ -24,7 +24,7 @@ REQUIRED_USE="
 	gles2? ( egl )
 	webgl? ( ^^ ( gles2 opengl ) )
 	!webgl? ( ?? ( gles2 opengl ) )
-	|| ( aqua wayland X )
+	|| ( wayland X )
 "
 
 # use sqlite, svg by default
@@ -32,17 +32,19 @@ REQUIRED_USE="
 # gtk2 is needed for plugin process support
 # gtk3-3.10 required for wayland
 RDEPEND="
-	dev-libs/libxml2:2
-	dev-libs/libxslt
-	media-libs/harfbuzz:=[icu(+)]
-	media-libs/libwebp:=
+	>=dev-libs/glib-2.36.0:2
+	>=dev-libs/libxml2-2.8:2
+	>=dev-libs/libxslt-1.1.7
 	virtual/jpeg:0=
+	>=media-libs/harfbuzz-0.9.18:=[icu(+)]
 	>=media-libs/libpng-1.4:0=
-	>=x11-libs/cairo-1.10:=[X]
-	>=dev-libs/glib-2.36.0:2
-	>=x11-libs/gtk+-3.6.0:3[aqua=,introspection?]
+	media-libs/libwebp:=
 	>=dev-libs/icu-3.8.1-r1:=
+	>=media-libs/fontconfig-2.8:1.0
+	>=media-libs/freetype-2.4.2:2
 	>=net-libs/libsoup-2.42.0:2.4[introspection?]
+	>=x11-libs/cairo-1.10.2:=[X]
+	>=x11-libs/gtk+-3.6.0:3[X?,introspection?]
 	dev-db/sqlite:3=
 	>=x11-libs/pango-1.30.0.0
 	x11-libs/libXrender
@@ -59,7 +61,7 @@ RDEPEND="
 	libsecret? ( app-crypt/libsecret )
 	opengl? ( virtual/opengl )
 	spell? ( >=app-text/enchant-0.22:= )
-	wayland? ( >=x11-libs/gtk+-3.10:3[wayland] )
+	wayland? ( >=x11-libs/gtk+-3.12:3[wayland] )
 	webgl? (
 		x11-libs/cairo[opengl]
 		x11-libs/libXcomposite
@@ -70,7 +72,7 @@ RDEPEND="
 # Need real bison, not yacc
 DEPEND="${RDEPEND}
 	${PYTHON_DEPS}
-	dev-lang/perl
+	>=dev-lang/perl-5.10
 	|| (
 		virtual/rubygems[ruby_targets_ruby20]
 		virtual/rubygems[ruby_targets_ruby21]
@@ -79,14 +81,15 @@ DEPEND="${RDEPEND}
 	>=app-accessibility/at-spi2-core-2.5.3
 	>=dev-libs/atk-2.8.0
 	>=dev-util/gtk-doc-am-1.10
-	dev-util/gperf
+	>=dev-util/gperf-3.0.1
 	>=sys-devel/bison-2.4.3
-	>=sys-devel/flex-2.5.33
+	>=sys-devel/flex-2.5.34
 	|| ( >=sys-devel/gcc-4.7 >=sys-devel/clang-3.3 )
 	sys-devel/gettext
 	>=sys-devel/make-3.82-r4
 	virtual/pkgconfig
 
+	geoloc? ( dev-util/gdbus-codegen )
 	introspection? ( jit? ( sys-apps/paxctl ) )
 	test? (
 		dev-lang/python:2.7
@@ -100,6 +103,8 @@ S="${WORKDIR}/${MY_P}"
 CHECKREQS_DISK_BUILD="18G" # and even this might not be enough, bug #417307
 
 pkg_pretend() {
+	nvidia_check || die #463960
+
 	if [[ ${MERGE_TYPE} != "binary" ]] && is-flagq "-g*" && ! is-flagq "-g*0" ; then
 		einfo "Checking for sufficient disk space to build ${PN} with debugging CFLAGS"
 		check-reqs_pkg_pretend
@@ -111,6 +116,8 @@ pkg_pretend() {
 }
 
 pkg_setup() {
+	nvidia_check || die #463960
+
 	# Check whether any of the debugging flags is enabled
 	if [[ ${MERGE_TYPE} != "binary" ]] && is-flagq "-g*" && ! is-flagq "-g*0" ; then
 		if is-flagq "-ggdb" && [[ ${WEBKIT_GTK_GGDB} != "yes" ]]; then
@@ -134,48 +141,15 @@ pkg_setup() {
 }
 
 src_prepare() {
-	# intermediate MacPorts hack while upstream bug is not fixed properly
-	# https://bugs.webkit.org/show_bug.cgi?id=28727
-	use aqua && epatch "${FILESDIR}"/${PN}-1.6.1-darwin-quartz.patch
-
-	# Leave optimization level to user CFLAGS
-	# FORTIFY_SOURCE is enabled by default in Gentoo
-	sed -e 's/-O[012]//g' \
-		-e 's/-D_FORTIFY_SOURCE=2//g' \
-		-i Source/autotools/SetupCompilerFlags.m4 || die
-
-	# Failing tests
-	# * webinspector -> https://bugs.webkit.org/show_bug.cgi?id=50744
-	# * keyevents is interactive
-	# * mimehandling test sometimes fails under Xvfb (works fine manually), bug #???
-	# * webdatasource test needs a network connection and intermittently fails with icedtea-web
-	# * webplugindatabase intermittently fails with icedtea-web, bug #????
-	sed -e '/Programs\/TestWebKitAPI\/WebKitGtk\/testwebinspector/ d' \
-		-e '/Programs\/TestWebKitAPI\/WebKitGtk\/testkeyevents/ d' \
-		-e '/Programs\/TestWebKitAPI\/WebKitGtk\/testmimehandling/ d' \
-		-e '/Programs\/TestWebKitAPI\/WebKitGtk\/testwebdatasource/ d' \
-		-e '/Programs\/TestWebKitAPI\/WebKitGtk\/testwebplugindatabase/ d' \
-		-i Tools/TestWebKitAPI/GNUmakefile.am || die
-
-	# bug #459978, upstream bug #113397
-	epatch "${FILESDIR}/${PN}-1.11.90-gtk-docize-fix.patch"
-
-	# Do not build unittests unless requested, upstream bug #128163
-	epatch "${FILESDIR}"/${PN}-2.2.4-unittests-build.patch
-
-	# Deadlock causing infinite compilations with nvidia-drivers:
-	# https://bugs.gentoo.org/show_bug.cgi?id=463960
-	# http://osdyson.org/issues/161
-	# https://bugs.webkit.org/show_bug.cgi?id=125651
-	epatch "${FILESDIR}"/${PN}-2.2.5-gir-nvidia-hangs.patch
-
 	# Debian patches to fix support for some arches
 	# https://bugs.webkit.org/show_bug.cgi?id=129540
-	epatch "${FILESDIR}"/${PN}-2.2.5-{hppa,ia64}-platform.patch
+	epatch "${FILESDIR}"/${PN}-2.6.0-{hppa,ia64}-platform.patch
 	# https://bugs.webkit.org/show_bug.cgi?id=129542
-	epatch "${FILESDIR}"/${PN}-2.4.1-ia64-malloc.patch
+	epatch "${FILESDIR}"/${PN}-2.6.0-ia64-malloc.patch
 
-	AT_M4DIR=Source/autotools eautoreconf
+	# Fix building on ppc (from OpenBSD, only needed on slot 3)
+	# https://bugs.webkit.org/show_bug.cgi?id=130837
+	epatch "${FILESDIR}"/${PN}-2.6.0-atomic-ppc.patch
 
 	gnome2_src_prepare
 }
@@ -205,68 +179,75 @@ src_configure() {
 		append-ldflags "-Wl,--reduce-memory-overheads"
 	fi
 
-	local myconf=""
+	local ruby_interpreter=""
 
 	if has_version "virtual/rubygems[ruby_targets_ruby21]"; then
-		myconf="${myconf} RUBY=$(type -P ruby21)"
+		ruby_interpreter="RUBY=$(type -P ruby21)"
 	elif has_version "virtual/rubygems[ruby_targets_ruby20]"; then
-		myconf="${myconf} RUBY=$(type -P ruby20)"
+		ruby_interpreter="RUBY=$(type -P ruby20)"
 	else
-		myconf="${myconf} RUBY=$(type -P ruby19)"
+		ruby_interpreter="RUBY=$(type -P ruby19)"
 	fi
 
 	# TODO: Check Web Audio support
 	# should somehow let user select between them?
 	#
-	# * Aqua support in gtk3 is untested
-	# * dependency-tracking is required so parallel builds won't fail
-	gnome2_src_configure \
-		$(use_enable aqua quartz-target) \
-		$(use_enable coverage) \
-		$(use_enable debug) \
-		$(use_enable egl) \
-		$(use_enable geoloc geolocation) \
-		$(use_enable gles2) \
-		$(use_enable gstreamer video) \
-		$(use_enable gstreamer web-audio) \
-		$(use_enable introspection) \
-		$(use_enable jit) \
-		$(use_enable libsecret credential_storage) \
-		$(use_enable opengl glx) \
-		$(use_enable spell spellcheck) \
-		$(use_enable webgl) \
-		$(use_enable webgl accelerated-compositing) \
-		$(use_enable wayland wayland-target) \
-		$(use_enable X x11-target) \
-		--with-gtk=3.0 \
-		--enable-dependency-tracking \
-		--disable-gtk-doc \
-		${myconf}
+	# FTL_JIT requires llvm + libcxxabi
+	local mycmakeargs=(
+		$(cmake-utils_use_enable test API_TESTS)
+		$(cmake-utils_use_enable geoloc GEOLOCATION)
+		$(cmake-utils_use_enable gstreamer VIDEO)
+		$(cmake-utils_use_enable gstreamer WEB_AUDIO)
+		$(cmake-utils_use_enable jit)
+		$(cmake-utils_use_enable libsecret CREDENTIAL_STORAGE)
+		$(cmake-utils_use_enable spell SPELLCHECK SPELLCHECK)
+		$(cmake-utils_use_enable wayland WAYLANG_TARGET)
+		$(cmake-utils_use_enable webgl WEBGL)
+		$(cmake-utils_use_enable X X11_TARGET)
+		$(cmake-utils_use_find_package egl EGL)
+		$(cmake-utils_use_find_package introspection GobjectIntrospection)
+		$(cmake-utils_use_find_package opengl OpenGL)
+		-DPORT=GTK
+		-DENABLE_GTKDOC=ON
+		-DENABLE_PLUGIN_PROCESS_GTK2=ON
+		${ruby_interpreter}
+	)
+
+	cmake-utils_src_configure
 }
 
-src_test() {
-	# Tests expect an out-of-source build in WebKitBuild
-	ln -s . WebKitBuild || die "ln failed"
+src_compile() {
+	cmake-utils_src_compile
+}
 
+src_test() {
 	# Prevents test failures on PaX systems
 	use jit && pax-mark m $(list-paxables Programs/*[Tt]ests/*) # Programs/unittests/.libs/test*
 
-	unset DISPLAY
-	# Tests need virtualx, bug #294691, bug #310695
-	# Parallel tests sometimes fail
-	Xemake -j1 check
+	cmake-utils_src_test
 }
 
 src_install() {
-	DOCS="ChangeLog NEWS" # other ChangeLog files handled by src_install
+	cmake-utils_src_install
 
-	# https://bugs.webkit.org/show_bug.cgi?id=129242
-	MAKEOPTS="${MAKEOPTS} -j1" gnome2_src_install
-
-	newdoc Source/WebKit/gtk/ChangeLog ChangeLog.gtk
-	newdoc Source/JavaScriptCore/ChangeLog ChangeLog.JavaScriptCore
-	newdoc Source/WebCore/ChangeLog ChangeLog.WebCore
+	# Prevents crashes on PaX systems, bug #522808
+	use jit && pax-mark m "${ED}usr/bin/jsc-3" "${ED}usr/libexec/WebKitWebProcess"
+	pax-mark m "${ED}usr/libexec/WebKitPluginProcess"
+}
 
-	# Prevents crashes on PaX systems
-	use jit && pax-mark m "${ED}usr/bin/jsc-3"
+nvidia_check() {
+	if [[ ${MERGE_TYPE} != "binary" ]] &&
+	   use introspection &&
+	   has_version '=x11-drivers/nvidia-drivers-325*' &&
+	   [[ $(eselect opengl show 2> /dev/null) = "nvidia" ]]
+	then
+		eerror "${PN} freezes while compiling if x11-drivers/nvidia-drivers-325.* is"
+		eerror "used as the system OpenGL library."
+		eerror "You can either update to >=nvidia-drivers-331.13, or temporarily select"
+		eerror "Mesa as the system OpenGL library:"
+		eerror " # eselect opengl set xorg-x11"
+		eerror "See https://bugs.gentoo.org/463960 for more details."
+		eerror
+		return 1
+	fi
 }


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2014-10-19 21:48 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-10-19 21:48 [gentoo-commits] proj/gnome:master commit in: net-libs/webkit-gtk/, net-libs/webkit-gtk/files/ Gilles Dartiguelongue

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox