From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id 49421138828 for ; Sun, 19 Oct 2014 21:48:31 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 76AB5E089D; Sun, 19 Oct 2014 21:48:30 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 7D8ADE089D for ; Sun, 19 Oct 2014 21:48:29 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 3399F340459 for ; Sun, 19 Oct 2014 21:48:28 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id CD0E9844F for ; Sun, 19 Oct 2014 21:48:26 +0000 (UTC) From: "Gilles Dartiguelongue" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Gilles Dartiguelongue" Message-ID: <1413753239.010a36b371efa1bb05f519cccdc4bca385c7e3ae.eva@gentoo> Subject: [gentoo-commits] proj/gnome:master commit in: net-libs/webkit-gtk/, net-libs/webkit-gtk/files/ X-VCS-Repository: proj/gnome X-VCS-Files: net-libs/webkit-gtk/files/webkit-gtk-1.11.90-gtk-docize-fix.patch net-libs/webkit-gtk/files/webkit-gtk-1.6.1-darwin-quartz.patch net-libs/webkit-gtk/files/webkit-gtk-2.2.4-unittests-build.patch net-libs/webkit-gtk/files/webkit-gtk-2.2.5-gir-nvidia-hangs.patch net-libs/webkit-gtk/files/webkit-gtk-2.2.5-hppa-platform.patch net-libs/webkit-gtk/files/webkit-gtk-2.2.5-ia64-platform.patch net-libs/webkit-gtk/files/webkit-gtk-2.2.5-sparc64-build.patch net-libs/webkit-gtk/files/webkit-gtk-2.4.1-ia64-malloc.patch net-libs/webkit-gtk/files/webkit-gtk-2.6.0-atomic-ppc.patch net-libs/webkit-gtk/files/webkit-gtk-2.6.0-hppa-platform.patch net-libs/webkit-gtk/files/webkit-gtk-2.6.0-ia64-malloc.patch net-libs/webkit-gtk/files/webkit-gtk-2.6.0-ia64-platform.patch net-libs/webkit-gtk/webkit-gtk-2.4.1-r200.ebuild net-libs/webkit-gtk/webkit-gtk-2.4.1.ebuild net-libs/webkit-gtk/webkit-gtk-2.6.1.ebuild X-VCS-Directories: net-libs/webkit-gtk/files/ net-libs/webkit-gtk/ X-VCS-Committer: eva X-VCS-Committer-Name: Gilles Dartiguelongue X-VCS-Revision: 010a36b371efa1bb05f519cccdc4bca385c7e3ae X-VCS-Branch: master Date: Sun, 19 Oct 2014 21:48:26 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Archives-Salt: b401b7b1-2865-497a-a43c-d9f97be0f46c X-Archives-Hash: 1ddcf527b6eeb635bcb1b606ddd6be6b commit: 010a36b371efa1bb05f519cccdc4bca385c7e3ae Author: Gilles Dartiguelongue gentoo org> AuthorDate: Sun Oct 19 16:48:41 2014 +0000 Commit: Gilles Dartiguelongue gentoo 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 - -+#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 -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 -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 +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 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 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 +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 +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 +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 }