summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarc-Antoine Perennou <Marc-Antoine@Perennou.com>2011-08-31 18:41:22 +0200
committerMarc-Antoine Perennou <Marc-Antoine@Perennou.com>2011-08-31 18:41:22 +0200
commit266c920e35ded40d2b46d8b52520f1e2e06047de (patch)
tree5e9965785934b1952fa5a83bf945ec61abb83afe /net-libs
parentadd gnome-contacts (diff)
downloadkeruspe-266c920e35ded40d2b46d8b52520f1e2e06047de.tar.gz
keruspe-266c920e35ded40d2b46d8b52520f1e2e06047de.tar.bz2
keruspe-266c920e35ded40d2b46d8b52520f1e2e06047de.zip
bump webkit-gtk
Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
Diffstat (limited to 'net-libs')
-rw-r--r--net-libs/webkit-gtk/Manifest6
-rw-r--r--net-libs/webkit-gtk/files/webkit-gtk-1.2.3-fix-pool-sparc.patch65
-rw-r--r--net-libs/webkit-gtk/files/webkit-gtk-1.2.5-darwin-quartz.patch79
-rw-r--r--net-libs/webkit-gtk/files/webkit-gtk-1.2.5-darwin8.patch33
-rw-r--r--net-libs/webkit-gtk/files/webkit-gtk-1.2.5-tests-build.patch22
-rw-r--r--net-libs/webkit-gtk/webkit-gtk-1.5.2.ebuild137
6 files changed, 342 insertions, 0 deletions
diff --git a/net-libs/webkit-gtk/Manifest b/net-libs/webkit-gtk/Manifest
new file mode 100644
index 00000000..7267b693
--- /dev/null
+++ b/net-libs/webkit-gtk/Manifest
@@ -0,0 +1,6 @@
+AUX webkit-gtk-1.2.3-fix-pool-sparc.patch 2518 RMD160 48ec89fb42403fae1b1533b54917a3311553cc78 SHA1 8c4e6c5e7c0c957ee1743a0d347b50f992460c17 SHA256 aee1f0d846c1e47c225e421a774fe93c49b71b7d31234fc5515d33922f130434
+AUX webkit-gtk-1.2.5-darwin-quartz.patch 1984 RMD160 5995be8598b62aff487726de02ac12b1a79357b4 SHA1 c7f0c5ac74f8a92f93ab36cfa1e1356f6112eac8 SHA256 8f37d606dec60186c10cca8795adc1dd3c8ec4ded86c94bad3036ed955573b78
+AUX webkit-gtk-1.2.5-darwin8.patch 1152 RMD160 a546515b8a088f8f11e532662833c3e41ad6df83 SHA1 e1e841cae9d5a70940630a918b40ac4b27497c58 SHA256 51e3fb832793cb0be13ceff63d1b4c4ef82efaa7b3151ab53d04ae966d65efa6
+AUX webkit-gtk-1.2.5-tests-build.patch 526 RMD160 c336c7309899169a2691bf3b984fa4df480b2ad4 SHA1 c25129b41dcca46424d58c3796f7207119e4a790 SHA256 aa2875954048318f2a9c5035b670774a1c5ce1b641b067f936fa076f38659383
+EBUILD webkit-gtk-1.5.2.ebuild 3632 RMD160 d4e09b525067938b5209609df769961a465c24ef SHA1 a8273f5bb984d0b614841ce92f5f1658e571cfb1 SHA256 fa0a19347d7cbb11097f836f9835069f05d9740d884db61052bb8d01fcc99f14
+DIST webkit-1.5.2.tar.gz 9657527 RMD160 947bcfb7986e7bc8ac4ecde49dd5a6d2d6b9f733 SHA1 200cd86d85c0d8ed21bf4177a7526300aadccbd9 SHA256 a2999bf4bdf7acbe1221f5e9e9f27535a3684d3954b7d9bce4f3f8fe1e1df251
diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.2.3-fix-pool-sparc.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.2.3-fix-pool-sparc.patch
new file mode 100644
index 00000000..3b1c5c43
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.2.3-fix-pool-sparc.patch
@@ -0,0 +1,65 @@
+Description: Fixup pool and add sparc support
+--- webkit-1.2.1.orig/JavaScriptCore/wtf/ListHashSet.h
++++ webkit-1.2.1/JavaScriptCore/wtf/ListHashSet.h
+@@ -127,7 +127,7 @@ namespace WTF {
+ : m_freeList(pool())
+ , m_isDoneWithInitialFreeList(false)
+ {
+- memset(m_pool.pool, 0, sizeof(m_pool.pool));
++ memset(m_pool, 0, sizeof(m_pool));
+ }
+
+ Node* allocate()
+@@ -171,7 +171,7 @@ namespace WTF {
+ }
+
+ private:
+- Node* pool() { return reinterpret_cast<Node*>(m_pool.pool); }
++ Node* pool() { return reinterpret_cast<Node*>(m_pool); }
+ Node* pastPool() { return pool() + m_poolSize; }
+
+ bool inPool(Node* node)
+@@ -182,10 +182,7 @@ namespace WTF {
+ Node* m_freeList;
+ bool m_isDoneWithInitialFreeList;
+ static const size_t m_poolSize = 256;
+- union {
+- char pool[sizeof(Node) * m_poolSize];
+- double forAlignment;
+- } m_pool;
++ uint32_t m_pool[(sizeof(Node) * m_poolSize + sizeof(uint32_t) - 1) / sizeof(uint32_t)];
+ };
+
+ template<typename ValueArg> struct ListHashSetNode {
+--- webkit-1.2.1.orig/WebCore/platform/text/AtomicString.cpp
++++ webkit-1.2.1/WebCore/platform/text/AtomicString.cpp
+@@ -103,9 +103,9 @@ static inline bool equal(StringImpl* str
+ if (string->length() != length)
+ return false;
+
++#if CPU(ARM) || CPU(SPARC) || CPU(SH4)
+ // FIXME: perhaps we should have a more abstract macro that indicates when
+ // going 4 bytes at a time is unsafe
+-#if CPU(ARM) || CPU(SH4)
+ const UChar* stringCharacters = string->characters();
+ for (unsigned i = 0; i != length; ++i) {
+ if (*stringCharacters++ != *characters++)
+--- webkit-1.2.1.orig/WebCore/platform/text/StringHash.h
++++ webkit-1.2.1/WebCore/platform/text/StringHash.h
+@@ -54,13 +54,13 @@ namespace WebCore {
+
+ // FIXME: perhaps we should have a more abstract macro that indicates when
+ // going 4 bytes at a time is unsafe
+-#if CPU(ARM) || CPU(SH4)
++#if CPU(ARM) || CPU(SPARC) || CPU(SH4)
+ const UChar* aChars = a->characters();
+ const UChar* bChars = b->characters();
+- for (unsigned i = 0; i != aLength; ++i) {
++ for (unsigned i = 0; i != aLength; ++i)
+ if (*aChars++ != *bChars++)
+ return false;
+- }
++
+ return true;
+ #else
+ /* Do it 4-bytes-at-a-time on architectures where it's safe */
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.2.5-darwin-quartz.patch
new file mode 100644
index 00000000..fe1ebc4d
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.2.5-darwin-quartz.patch
@@ -0,0 +1,79 @@
+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
+
+--- WebCore/plugins/gtk/gtk2xtbin.c.orig 2010-09-10 06:20:33.000000000 -0700
++++ WebCore/plugins/gtk/gtk2xtbin.c 2010-10-06 09:45:37.000000000 -0700
+@@ -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"
+@@ -951,3 +951,4 @@
+
+ return;
+ }
++#endif
+--- WebCore/plugins/gtk/PluginViewGtk.cpp.orig 2010-09-10 06:20:33.000000000 -0700
++++ WebCore/plugins/gtk/PluginViewGtk.cpp 2010-10-06 09:45:37.000000000 -0700
+@@ -60,10 +60,13 @@
+ #include "runtime_root.h"
+ #include <runtime/JSLock.h>
+ #include <runtime/JSValue.h>
++#include "NotImplemented.h"
+
+ #include <gdkconfig.h>
+ #include <gtk/gtk.h>
+
++#undef XP_UNIX
++
+ #if defined(XP_UNIX)
+ #include "gtk2xtbin.h"
+ #define Bool int // this got undefined somewhere
+@@ -441,9 +444,9 @@
+ event->setDefaultHandled();
+ }
+
+-#if defined(XP_UNIX)
+ void PluginView::handleFocusInEvent()
+ {
++#if defined(XP_UNIX)
+ XEvent npEvent;
+ initXEvent(&npEvent);
+
+@@ -453,10 +456,12 @@
+ event.detail = NotifyDetailNone;
+
+ dispatchNPEvent(npEvent);
++#endif
+ }
+
+ void PluginView::handleFocusOutEvent()
+ {
++#if defined(XP_UNIX)
+ XEvent npEvent;
+ initXEvent(&npEvent);
+
+@@ -466,8 +471,8 @@
+ event.detail = NotifyDetailNone;
+
+ dispatchNPEvent(npEvent);
+-}
+ #endif
++}
+
+ void PluginView::setParent(ScrollView* parent)
+ {
+@@ -797,8 +802,8 @@
+ }
+
+ if (m_isWindowed) {
+-#if defined(XP_UNIX)
+ GtkWidget* pageClient = m_parentFrame->view()->hostWindow()->platformPageClient();
++#if defined(XP_UNIX)
+
+ if (m_needsXEmbed) {
+ // If our parent is not anchored the startup process will
diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.2.5-darwin8.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.2.5-darwin8.patch
new file mode 100644
index 00000000..cf25b5dd
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.2.5-darwin8.patch
@@ -0,0 +1,33 @@
+https://bugs.webkit.org/show_bug.cgi?id=39847
+
+additionally, also on Darwin8 glib stuff includes system headers that
+use isascii, so we can't have it die on that.
+
+--- JavaScriptCore/wtf/FastMalloc.cpp
++++ JavaScriptCore/wtf/FastMalloc.cpp
+@@ -1381,14 +1381,12 @@
+ // Bytes allocated from system
+ uint64_t system_bytes_;
+
+-#if USE_BACKGROUND_THREAD_TO_SCAVENGE_MEMORY
+ // Number of pages kept in free lists that are still committed.
+ Length free_committed_pages_;
+
+ // Minimum number of free committed pages since last scavenge. (Can be 0 if
+ // we've committed new pages since the last scavenge.)
+ Length min_free_committed_pages_since_last_scavenge_;
+-#endif
+
+ bool GrowHeap(Length n);
+
+--- WebCore/config.h
++++ WebCore/config.h
+@@ -125,7 +125,7 @@
+ // this breaks compilation of <QFontDatabase>, at least, so turn it off for now
+ // Also generates errors on wx on Windows, presumably because these functions
+ // are used from wx headers.
+-#if !PLATFORM(QT) && !PLATFORM(WX) && !PLATFORM(CHROMIUM)
++#if !PLATFORM(QT) && !PLATFORM(WX) && !PLATFORM(CHROMIUM) && !defined(BUILDING_ON_TIGER)
+ #include <wtf/DisallowCType.h>
+ #endif
+
diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.2.5-tests-build.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.2.5-tests-build.patch
new file mode 100644
index 00000000..0d9e1448
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.2.5-tests-build.patch
@@ -0,0 +1,22 @@
+Do not build tests if not requested to.
+
+--- a/GNUmakefile.am 2010-12-21 17:23:58.000000000 +0100
++++ b/GNUmakefile.am 2010-12-21 17:24:28.000000000 +0100
+@@ -46,7 +46,8 @@
+
+ # Libraries and support components
+ bin_PROGRAMS :=
++check_PROGRAMS :=
+ noinst_PROGRAMS :=
+ noinst_HEADERS :=
+ noinst_LTLIBRARIES :=
+ lib_LIBRARIES :=
+@@ -541,7 +541,7 @@
+ include WebKit/gtk/po/GNUmakefile.am
+
+ # Build unit tests
+-noinst_PROGRAMS += $(TEST_PROGS)
++check_PROGRAMS += $(TEST_PROGS)
+
+ webkit_tests_cflags = \
+ -fno-strict-aliasing \
diff --git a/net-libs/webkit-gtk/webkit-gtk-1.5.2.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.5.2.ebuild
new file mode 100644
index 00000000..907067a6
--- /dev/null
+++ b/net-libs/webkit-gtk/webkit-gtk-1.5.2.ebuild
@@ -0,0 +1,137 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI="4"
+
+inherit autotools flag-o-matic eutils virtualx
+
+MY_P="webkit-${PV}"
+DESCRIPTION="Open source web browser engine"
+HOMEPAGE="http://www.webkitgtk.org/"
+SRC_URI="http://www.webkitgtk.org/${MY_P}.tar.gz"
+
+LICENSE="LGPL-2 LGPL-2.1 BSD"
+SLOT="3"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~x86-macos"
+# geoclue
+IUSE="aqua coverage debug doc +gstreamer +introspection +jit spell"
+# bug 372493
+REQUIRED_USE="introspection? ( gstreamer )"
+
+# use sqlite, svg by default
+# dependency on >=x11-libs/gtk+-2.13:2 for gail
+# Aqua support in gtk3 is untested
+RDEPEND="
+ dev-libs/libxml2:2
+ dev-libs/libxslt
+ virtual/jpeg
+ >=media-libs/libpng-1.4:0
+ x11-libs/cairo
+ >=dev-libs/glib-2.27.90:2
+ >=x11-libs/gtk+-3.0:3[aqua=,introspection?]
+ >=dev-libs/icu-3.8.1-r1
+ >=net-libs/libsoup-2.33.6:2.4[introspection?]
+ dev-db/sqlite:3
+ >=x11-libs/pango-1.12
+ x11-libs/libXrender
+
+ gstreamer? (
+ media-libs/gstreamer:0.10
+ >=media-libs/gst-plugins-base-0.10.25:0.10 )
+
+ introspection? ( >=dev-libs/gobject-introspection-0.9.5 )
+
+ spell? ( >=app-text/enchant-0.22 )
+"
+DEPEND="${RDEPEND}
+ >=sys-devel/flex-2.5.33
+ sys-devel/gettext
+ virtual/yacc
+ dev-util/gperf
+ dev-util/pkgconfig
+ dev-util/gtk-doc-am
+ doc? ( >=dev-util/gtk-doc-1.10 )
+ test? ( x11-themes/hicolor-icon-theme )
+"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+ DOCS="Source/WebKit/gtk/NEWS Source/WebKit/gtk/ChangeLog"
+
+ # FIXME: Fix unaligned accesses on ARM, IA64 and SPARC
+ # https://bugs.webkit.org/show_bug.cgi?id=19775
+ use sparc && epatch "${FILESDIR}"/${PN}-1.2.3-fix-pool-sparc.patch
+
+ # 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.2.5-darwin-quartz.patch
+
+ # Fix build on Darwin8 (10.4 Tiger)
+ # XXX: Fails to apply
+ #epatch "${FILESDIR}"/${PN}-1.2.5-darwin8.patch
+
+ # Don't force -O2
+ sed -i 's/-O2//g' "${S}"/configure.ac
+
+ # Don't build tests if not needed, part of bug #343249
+ # XXX: Fails to apply
+ #epatch "${FILESDIR}/${PN}-1.2.5-tests-build.patch"
+
+ # Prevent maintainer mode from being triggered during make
+ AT_M4DIR=Source/autotools eautoreconf
+}
+
+src_configure() {
+ # It doesn't compile on alpha without this in LDFLAGS
+ use alpha && append-ldflags "-Wl,--no-relax"
+
+ # Sigbuses on SPARC with mcpu and co.
+ use sparc && filter-flags "-mcpu=*" "-mvis" "-mtune=*"
+
+ # https://bugs.webkit.org/show_bug.cgi?id=42070 , #301634
+ use ppc64 && append-flags "-mminimal-toc"
+
+ local myconf
+
+ # XXX: Check Web Audio support
+ # XXX: webgl fails compilation
+ # XXX: WebKit2 is the new out-of-process model, doesn't work yet
+ myconf="
+ $(use_enable coverage)
+ $(use_enable debug)
+ $(use_enable spell spellcheck)
+ $(use_enable introspection)
+ $(use_enable gstreamer video)
+ $(use_enable jit)
+ --disable-webgl
+ --with-gtk=3.0
+ --disable-webkit2
+ --disable-web-sockets
+ $(use aqua && echo "--with-font-backend=pango --with-target=quartz")"
+ # Aqua support in gtk3 is untested
+ # Disable web-sockets per bug #326547
+
+ econf ${myconf}
+}
+
+src_compile() {
+ # Fix sandbox error with USE="introspection"
+ # https://bugs.webkit.org/show_bug.cgi?id=35471
+ emake XDG_DATA_HOME="${T}/.local"
+}
+
+src_test() {
+ unset DISPLAY
+ # Tests need virtualx, bug #294691, bug #310695
+ # Set XDG_DATA_HOME for introspection tools, bug #323669
+ Xemake check XDG_DATA_HOME="${T}/.local"
+}
+
+src_install() {
+ default
+
+ # Remove .la files
+ find "${D}" -name '*.la' -exec rm -f '{}' +
+}