public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] proj/gnome:master commit in: net-libs/webkit-gtk/files/, net-libs/webkit-gtk/
@ 2011-02-25 11:54 Priit Laes
  0 siblings, 0 replies; 25+ messages in thread
From: Priit Laes @ 2011-02-25 11:54 UTC (permalink / raw
  To: gentoo-commits

commit:     4a112fc3e193f2a2fe8fad32b7ba7f8388e5f765
Author:     Priit Laes <plaes <AT> plaes <DOT> org>
AuthorDate: Fri Feb 25 11:50:23 2011 +0000
Commit:     Priit Laes <plaes <AT> plaes <DOT> org>
CommitDate: Fri Feb 25 11:50:23 2011 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=4a112fc3

net-libs/webkit-gtk: Revbump to fix some issues in new utf-8 decoder

---
 .../files/webkit-gtk-1.3.12-utf-decode-v1.patch    |  392 ++++++++++++++++++++
 .../files/webkit-gtk-1.3.12-utf-decode-v2.patch    |   44 +++
 ...k-1.3.12.ebuild => webkit-gtk-1.3.12-r1.ebuild} |    3 +
 3 files changed, 439 insertions(+), 0 deletions(-)

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.3.12-utf-decode-v1.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.3.12-utf-decode-v1.patch
new file mode 100644
index 0000000..ea1a961
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.3.12-utf-decode-v1.patch
@@ -0,0 +1,392 @@
+commit a4853e0b12ad2305ba7c3593a08f7f366dee5eaf
+Author: darin@apple.com <darin@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
+Date:   Wed Feb 23 20:00:25 2011 +0000
+
+    2011-02-23  Darin Adler  <darin@apple.com>
+    
+            Reviewed by Alexey Proskuryakov.
+    
+            REGRESSION (new UTF-8 decoder): Reproducible crash on alltommac.se
+            https://bugs.webkit.org/show_bug.cgi?id=54862
+    
+            Correct handling of end of buffer partial sequence in UTF-8 and UTF-16 decoders when flushing with zero length
+            https://bugs.webkit.org/show_bug.cgi?id=54444
+    
+            No new tests at this time. I will add some tests later, but since multiple
+            people are hitting this I wanted to get it in as quickly as possible.
+    
+            * platform/text/TextCodecUTF16.cpp:
+            (WebCore::TextCodecUTF16::decode): Tweaked coding style quite a bit.
+            Removed special case for zero length now that main code handles it
+            correctly. Used words instead of abbreviations for local variable names.
+            Added error handling for a trailing byte.
+    
+            * platform/text/TextCodecUTF8.cpp:
+            (WebCore::TextCodecUTF8::consumePartialSequenceByte): Added. Helper function
+            to make the handleError and handlePartialSequence functions clearer.
+            (WebCore::TextCodecUTF8::handleError): Added. Helper function to make the
+            handlePartialSequence clearer.
+            (WebCore::TextCodecUTF8::handlePartialSequence): Added. Factored out code for
+            the partial sequence case. Making this a separate function probably helps make
+            the fast case a little faster. This new version handles more cases correctly,
+            which is what fixes the crashes we were seeing. In particular, it no longer
+            assumes that the partial sequence is truly partial, because there are cases
+            where we end up handling complete sequences here, such as when a complete
+            sequence is inside a malformed partial sequence.
+            (WebCore::TextCodecUTF8::decode): Removed partial sequence code and made this
+            call handlePartialSequence instead. Could be streamlined if we double checked
+            that passing a reference to "destination" and "source" doesn't harm code
+            generation too much, so perhaps someone can do that research on a few compilers
+            later and clean this up. Removed special case for zero length now that the
+            main code handles that correctly.
+    
+            * platform/text/TextCodecUTF8.h: Added declarations for new functions.
+            Made partial sequence buffer large enough to hold a whole sequence so we can
+            use it to complete and decode a sequence in place.
+    
+    
+    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@79466 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+diff --git a/Source/WebCore/platform/text/TextCodecUTF16.cpp b/Source/WebCore/platform/text/TextCodecUTF16.cpp
+index 4ceed23..f5dd59c 100644
+--- a/Source/WebCore/platform/text/TextCodecUTF16.cpp
++++ b/Source/WebCore/platform/text/TextCodecUTF16.cpp
+@@ -1,5 +1,5 @@
+ /*
+- * Copyright (C) 2004, 2006, 2008, 2010 Apple Inc. All rights reserved.
++ * Copyright (C) 2004, 2006, 2008, 2010, 2011 Apple Inc. All rights reserved.
+  *
+  * Redistribution and use in source and binary forms, with or without
+  * modification, are permitted provided that the following conditions
+@@ -27,10 +27,12 @@
+ #include "TextCodecUTF16.h"
+ 
+ #include "PlatformString.h"
++#include <wtf/PassOwnPtr.h>
+ #include <wtf/text/CString.h>
+ #include <wtf/text/StringBuffer.h>
+-#include <wtf/PassOwnPtr.h>
++#include <wtf/unicode/CharacterNames.h>
+ 
++using namespace WTF::Unicode;
+ using namespace std;
+ 
+ namespace WebCore {
+@@ -52,12 +54,12 @@ void TextCodecUTF16::registerEncodingNames(EncodingNameRegistrar registrar)
+ 
+ static PassOwnPtr<TextCodec> newStreamingTextDecoderUTF16LE(const TextEncoding&, const void*)
+ {
+-    return new TextCodecUTF16(true);
++    return adoptPtr(new TextCodecUTF16(true));
+ }
+ 
+ static PassOwnPtr<TextCodec> newStreamingTextDecoderUTF16BE(const TextEncoding&, const void*)
+ {
+-    return new TextCodecUTF16(false);
++    return adoptPtr(new TextCodecUTF16(false));
+ }
+ 
+ void TextCodecUTF16::registerCodecs(TextCodecRegistrar registrar)
+@@ -66,53 +68,56 @@ void TextCodecUTF16::registerCodecs(TextCodecRegistrar registrar)
+     registrar("UTF-16BE", newStreamingTextDecoderUTF16BE, 0);
+ }
+ 
+-String TextCodecUTF16::decode(const char* bytes, size_t length, bool, bool, bool&)
++String TextCodecUTF16::decode(const char* bytes, size_t length, bool flush, bool stopOnError, bool& sawError)
+ {
+-    if (!length)
+-        return String();
+-
+-    // FIXME: This should generate an error if there is an unpaired surrogate.
++    // FIXME: This should buffer surrogates, not just single bytes,
++    // and should generate an error if there is an unpaired surrogate.
+ 
+-    const unsigned char* p = reinterpret_cast<const unsigned char*>(bytes);
++    const uint8_t* source = reinterpret_cast<const uint8_t*>(bytes);
+     size_t numBytes = length + m_haveBufferedByte;
+-    size_t numChars = numBytes / 2;
+-
+-    StringBuffer buffer(numChars);
+-    UChar* q = buffer.characters();
+-
+-    if (m_haveBufferedByte) {
+-        UChar c;
+-        if (m_littleEndian)
+-            c = m_bufferedByte | (p[0] << 8);
+-        else
+-            c = (m_bufferedByte << 8) | p[0];
+-        *q++ = c;
+-        m_haveBufferedByte = false;
+-        p += 1;
+-        numChars -= 1;
+-    }
+-
+-    if (m_littleEndian) {
+-        for (size_t i = 0; i < numChars; ++i) {
+-            UChar c = p[0] | (p[1] << 8);
+-            p += 2;
+-            *q++ = c;
++    size_t numCharacters = numBytes / 2;
++
++    StringBuffer buffer(numCharacters + (flush && (numBytes & 1)));
++    UChar* destination = buffer.characters();
++
++    if (length) {
++        if (m_haveBufferedByte) {
++            UChar character;
++            if (m_littleEndian)
++                *destination++ = m_bufferedByte | (source[0] << 8);
++            else
++                *destination++ = (m_bufferedByte << 8) | source[0];
++            m_haveBufferedByte = false;
++            ++source;
++            --numCharacters;
+         }
+-    } else {
+-        for (size_t i = 0; i < numChars; ++i) {
+-            UChar c = (p[0] << 8) | p[1];
+-            p += 2;
+-            *q++ = c;
++
++        if (m_littleEndian) {
++            for (size_t i = 0; i < numCharacters; ++i) {
++                *destination++ = source[0] | (source[1] << 8);
++                source += 2;
++            }
++        } else {
++            for (size_t i = 0; i < numCharacters; ++i) {
++                *destination++ = (source[0] << 8) | source[1];
++                source += 2;
++            }
+         }
+     }
+ 
+     if (numBytes & 1) {
+-        ASSERT(!m_haveBufferedByte);
+-        m_haveBufferedByte = true;
+-        m_bufferedByte = p[0];
++        if (flush) {
++            sawError = true;
++            if (!stopOnError)
++                *destination++ = replacementCharacter;
++        } else {
++            ASSERT(!m_haveBufferedByte);
++            m_haveBufferedByte = true;
++            m_bufferedByte = source[0];
++        }
+     }
+-
+-    buffer.shrink(q - buffer.characters());
++    
++    buffer.shrink(destination - buffer.characters());
+ 
+     return String::adopt(buffer);
+ }
+@@ -134,15 +139,15 @@ CString TextCodecUTF16::encode(const UChar* characters, size_t length, Unencodab
+     // null characters inside it. Perhaps the result of encode should not be a CString.
+     if (m_littleEndian) {
+         for (size_t i = 0; i < length; ++i) {
+-            UChar c = characters[i];
+-            bytes[i * 2] = c;
+-            bytes[i * 2 + 1] = c >> 8;
++            UChar character = characters[i];
++            bytes[i * 2] = character;
++            bytes[i * 2 + 1] = character >> 8;
+         }
+     } else {
+         for (size_t i = 0; i < length; ++i) {
+-            UChar c = characters[i];
+-            bytes[i * 2] = c >> 8;
+-            bytes[i * 2 + 1] = c;
++            UChar character = characters[i];
++            bytes[i * 2] = character >> 8;
++            bytes[i * 2 + 1] = character;
+         }
+     }
+ 
+diff --git a/Source/WebCore/platform/text/TextCodecUTF8.cpp b/Source/WebCore/platform/text/TextCodecUTF8.cpp
+index 2466e8c..29426ad 100644
+--- a/Source/WebCore/platform/text/TextCodecUTF8.cpp
++++ b/Source/WebCore/platform/text/TextCodecUTF8.cpp
+@@ -150,11 +150,71 @@ static inline UChar* appendCharacter(UChar* destination, int character)
+     return destination;
+ }
+ 
+-String TextCodecUTF8::decode(const char* bytes, size_t length, bool flush, bool stopOnError, bool& sawError)
++void TextCodecUTF8::consumePartialSequenceByte()
+ {
+-    if (!length)
+-        return String();
++    --m_partialSequenceSize;
++    memmove(m_partialSequence, m_partialSequence + 1, m_partialSequenceSize);
++}
+ 
++void TextCodecUTF8::handleError(UChar*& destination, bool stopOnError, bool& sawError)
++{
++    sawError = true;
++    if (stopOnError)
++        return;
++    // Each error generates a replacement character and consumes one byte.
++    *destination++ = replacementCharacter;
++    consumePartialSequenceByte();
++}
++
++void TextCodecUTF8::handlePartialSequence(UChar*& destination, const uint8_t*& source, const uint8_t* end, bool flush, bool stopOnError, bool& sawError)
++{
++    ASSERT(m_partialSequenceSize);
++    do {
++        if (isASCII(m_partialSequence[0])) {
++            *destination++ = m_partialSequence[0];
++            consumePartialSequenceByte();
++            continue;
++        }
++        int count = nonASCIISequenceLength(m_partialSequence[0]);
++        if (!count) {
++            handleError(destination, stopOnError, sawError);
++            if (stopOnError)
++                return;
++            continue;
++        }
++        if (count > m_partialSequenceSize) {
++            if (count - m_partialSequenceSize > end - source) {
++                if (!flush) {
++                    // The new data is not enough to complete the sequence, so
++                    // add it to the existing partial sequence.
++                    memcpy(m_partialSequence + m_partialSequenceSize, source, end - source);
++                    m_partialSequenceSize += end - source;
++                    return;
++                }
++                // An incomplete partial sequence at the end is an error.
++                handleError(destination, stopOnError, sawError);
++                if (stopOnError)
++                    return;
++                continue;
++            }
++            memcpy(m_partialSequence + m_partialSequenceSize, source, count - m_partialSequenceSize);
++            source += count - m_partialSequenceSize;
++            m_partialSequenceSize = count;
++        }
++        int character = decodeNonASCIISequence(m_partialSequence, count);
++        if (character == nonCharacter) {
++            handleError(destination, stopOnError, sawError);
++            if (stopOnError)
++                return;
++            continue;
++        }
++        m_partialSequenceSize -= count;
++        destination = appendCharacter(destination, character);
++    } while (m_partialSequenceSize);
++}
++
++String TextCodecUTF8::decode(const char* bytes, size_t length, bool flush, bool stopOnError, bool& sawError)
++{
+     // Each input byte might turn into a character.
+     // That includes all bytes in the partial-sequence buffer because
+     // each byte in an invalid sequence will turn into a replacement character.
+@@ -166,52 +226,19 @@ String TextCodecUTF8::decode(const char* bytes, size_t length, bool flush, bool
+     UChar* destination = buffer.characters();
+ 
+     do {
+-        while (m_partialSequenceSize) {
+-            int count = nonASCIISequenceLength(m_partialSequence[0]);
+-            ASSERT(count > m_partialSequenceSize);
+-            ASSERT(count >= 2);
+-            ASSERT(count <= 4);
+-            if (count - m_partialSequenceSize > end - source) {
+-                if (!flush) {
+-                    // We have an incomplete partial sequence, so put it all in the partial
+-                    // sequence buffer, and break out of this loop so we can exit the function.
+-                    memcpy(m_partialSequence + m_partialSequenceSize, source, end - source);
+-                    m_partialSequenceSize += end - source;
+-                    source = end;
+-                    break;
+-                }
+-                // We have an incomplete partial sequence at the end of the buffer.
+-                // That is an error.
+-                sawError = true;
+-                if (stopOnError) {
+-                    source = end;
+-                    break;
+-                }
+-                // Each error consumes one byte and generates one replacement character.
+-                --m_partialSequenceSize;
+-                memmove(m_partialSequence, m_partialSequence + 1, m_partialSequenceSize);
+-                *destination++ = replacementCharacter;
+-                continue;
++        if (m_partialSequenceSize) {
++            // Explicitly copy destination and source to avoid taking a pointer to them,
++            // which may harm code generation.
++            UChar* destinationForHandlePartialSequence = destination;
++            const uint8_t* sourceForHandlePartialSequence = source;
++            handlePartialSequence(destinationForHandlePartialSequence, sourceForHandlePartialSequence, end, flush, stopOnError, sawError);
++            destination = destinationForHandlePartialSequence;
++            source = sourceForHandlePartialSequence;
++            if (m_partialSequenceSize) {
++                ASSERT(stopOnError);
++                ASSERT(sawError);
++                break;
+             }
+-            uint8_t completeSequence[U8_MAX_LENGTH];
+-            memcpy(completeSequence, m_partialSequence, m_partialSequenceSize);
+-            memcpy(completeSequence + m_partialSequenceSize, source, count - m_partialSequenceSize);
+-            source += count - m_partialSequenceSize;
+-            int character = decodeNonASCIISequence(completeSequence, count);
+-            if (character == nonCharacter) {
+-                sawError = true;
+-                if (stopOnError) {
+-                    source = end;
+-                    break;
+-                }
+-                // Each error consumes one byte and generates one replacement character.
+-                memcpy(m_partialSequence, completeSequence + 1, count - 1);
+-                m_partialSequenceSize = count - 1;
+-                *destination++ = replacementCharacter;
+-                continue;
+-            }
+-            m_partialSequenceSize = 0;
+-            destination = appendCharacter(destination, character);
+         }
+ 
+         while (source < end) {
+@@ -239,10 +266,8 @@ String TextCodecUTF8::decode(const char* bytes, size_t length, bool flush, bool
+             if (!count)
+                 character = nonCharacter;
+             else {
+-                ASSERT(count >= 2);
+-                ASSERT(count <= 4);
+                 if (count > end - source) {
+-                    ASSERT(end - source <= static_cast<ptrdiff_t>(sizeof(m_partialSequence)));
++                    ASSERT(end - source < static_cast<ptrdiff_t>(sizeof(m_partialSequence)));
+                     ASSERT(!m_partialSequenceSize);
+                     m_partialSequenceSize = end - source;
+                     memcpy(m_partialSequence, source, m_partialSequenceSize);
+@@ -255,9 +280,9 @@ String TextCodecUTF8::decode(const char* bytes, size_t length, bool flush, bool
+                 sawError = true;
+                 if (stopOnError)
+                     break;
+-                // Each error consumes one byte and generates one replacement character.
+-                ++source;
++                // Each error generates a replacement character and consumes one byte.
+                 *destination++ = replacementCharacter;
++                ++source;
+                 continue;
+             }
+             source += count;
+diff --git a/Source/WebCore/platform/text/TextCodecUTF8.h b/Source/WebCore/platform/text/TextCodecUTF8.h
+index 2bbb31e..39fd753 100644
+--- a/Source/WebCore/platform/text/TextCodecUTF8.h
++++ b/Source/WebCore/platform/text/TextCodecUTF8.h
+@@ -42,8 +42,12 @@ private:
+     virtual String decode(const char*, size_t length, bool flush, bool stopOnError, bool& sawError);
+     virtual CString encode(const UChar*, size_t length, UnencodableHandling);
+ 
++    void handlePartialSequence(UChar*& destination, const uint8_t*& source, const uint8_t* end, bool flush, bool stopOnError, bool& sawError);
++    void handleError(UChar*& destination, bool stopOnError, bool& sawError);
++    void consumePartialSequenceByte();
++
+     int m_partialSequenceSize;
+-    char m_partialSequence[U8_MAX_LENGTH - 1];
++    uint8_t m_partialSequence[U8_MAX_LENGTH];
+     
+ };
+ 

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.3.12-utf-decode-v2.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.3.12-utf-decode-v2.patch
new file mode 100644
index 0000000..7fb9a46
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.3.12-utf-decode-v2.patch
@@ -0,0 +1,44 @@
+commit 3f28cee7ffa83df4510b234af13c223714b9324c
+Author: darin@apple.com <darin@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
+Date:   Fri Feb 25 02:20:42 2011 +0000
+
+    2011-02-24  Darin Adler  <darin@apple.com>
+    
+            Reviewed by Alexey Proskuryakov.
+    
+            REGRESSION (r79466): http/tests/incremental/slow-utf8-html.pl flaky due to incorrect assertions
+            https://bugs.webkit.org/show_bug.cgi?id=55135
+    
+            * platform/text/TextCodecUTF8.cpp:
+            (WebCore::TextCodecUTF8::decode): Removed incorrect assertions.
+    
+    
+    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@79655 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+diff --git a/Source/WebCore/platform/text/TextCodecUTF8.cpp b/Source/WebCore/platform/text/TextCodecUTF8.cpp
+index 29426ad..5f82092 100644
+--- a/Source/WebCore/platform/text/TextCodecUTF8.cpp
++++ b/Source/WebCore/platform/text/TextCodecUTF8.cpp
+@@ -227,18 +227,16 @@ String TextCodecUTF8::decode(const char* bytes, size_t length, bool flush, bool
+ 
+     do {
+         if (m_partialSequenceSize) {
+-            // Explicitly copy destination and source to avoid taking a pointer to them,
+-            // which may harm code generation.
++            // Explicitly copy destination and source pointers to avoid taking pointers to the
++            // local variables, which may harm code generation by disabling some optimizations
++            // in some compilers.
+             UChar* destinationForHandlePartialSequence = destination;
+             const uint8_t* sourceForHandlePartialSequence = source;
+             handlePartialSequence(destinationForHandlePartialSequence, sourceForHandlePartialSequence, end, flush, stopOnError, sawError);
+             destination = destinationForHandlePartialSequence;
+             source = sourceForHandlePartialSequence;
+-            if (m_partialSequenceSize) {
+-                ASSERT(stopOnError);
+-                ASSERT(sawError);
++            if (m_partialSequenceSize)
+                 break;
+-            }
+         }
+ 
+         while (source < end) {

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.3.12.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.3.12-r1.ebuild
similarity index 97%
rename from net-libs/webkit-gtk/webkit-gtk-1.3.12.ebuild
rename to net-libs/webkit-gtk/webkit-gtk-1.3.12-r1.ebuild
index 9603900..6c259f3 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.3.12.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.3.12-r1.ebuild
@@ -60,6 +60,9 @@ src_prepare() {
 	# https://bugs.webkit.org/show_bug.cgi?id=19775
 	use sparc && epatch "${FILESDIR}"/${PN}-1.1.15.2-unaligned.patch
 
+	epatch "${FILESDIR}/${P}-utf-decode-v1.patch"
+	epatch "${FILESDIR}/${P}-utf-decode-v2.patch"
+
 	# Darwin/Aqua build is broken, needs autoreconf
 	# XXX: BROKEN. Patch does not apply anymore.
 	# https://bugs.webkit.org/show_bug.cgi?id=28727



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [gentoo-commits] proj/gnome:master commit in: net-libs/webkit-gtk/files/, net-libs/webkit-gtk/
@ 2011-03-04 10:23 Nirbheek Chauhan
  0 siblings, 0 replies; 25+ messages in thread
From: Nirbheek Chauhan @ 2011-03-04 10:23 UTC (permalink / raw
  To: gentoo-commits

commit:     4cad3e96653a1c2801b5475b1adfb00c2fce3b7c
Author:     Nirbheek Chauhan <nirbheek <AT> gentoo <DOT> org>
AuthorDate: Tue Mar  1 21:59:38 2011 +0000
Commit:     Nirbheek Chauhan <nirbheek <AT> gentoo <DOT> org>
CommitDate: Thu Mar  3 08:57:52 2011 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=4cad3e96

net-libs/webkit-gtk: sync with tree

---
 .../files/webkit-gtk-1.1.15.2-unaligned.patch      |  139 --------------------
 .../files/webkit-gtk-1.2.5-darwin-quartz.patch     |   79 +++++++++++
 .../files/webkit-gtk-1.2.5-darwin8.patch           |   33 +++++
 .../files/webkit-gtk-1.2.5-tests-build.patch       |   22 +++
 net-libs/webkit-gtk/webkit-gtk-1.3.12-r1.ebuild    |   59 +++++----
 net-libs/webkit-gtk/webkit-gtk-1.3.12-r200.ebuild  |   69 ++++++----
 6 files changed, 212 insertions(+), 189 deletions(-)

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.1.15.2-unaligned.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.1.15.2-unaligned.patch
deleted file mode 100644
index ae2d921..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-1.1.15.2-unaligned.patch
+++ /dev/null
@@ -1,139 +0,0 @@
---- webkit-1.1.16.orig/JavaScriptCore/wtf/Platform.h
-+++ webkit-1.1.16/JavaScriptCore/wtf/Platform.h
-@@ -347,6 +347,23 @@
- #define WTF_PLATFORM_X86_64 1
- #endif
- 
-+/* PLATFORM(IA64) */
-+#if defined(__ia64__)
-+#define WTF_PLATFORM_IA64 1
-+#endif
-+
-+/* PLATFORM(ALPHA) */
-+#if defined(__alpha__)
-+#define WTF_PLATFORM_ALPHA 1
-+#endif
-+
-+/* PLATFORM(SPARC) */
-+#if   defined(__sparc__) \
-+   || defined(__sparc)
-+#define WTF_PLATFORM_SPARC 1
-+#define WTF_PLATFORM_BIG_ENDIAN 1
-+#endif
-+
- /* PLATFORM(SH4) */
- #if defined(__SH4__)
- #define WTF_PLATFORM_SH4 1
-@@ -372,6 +389,16 @@
- #   endif
- #endif
- 
-+/* For undefined platforms */
-+#if !defined(WTF_PLATFORM_BIG_ENDIAN) && !defined(WTF_PLATFORM_MIDDLE_ENDIAN)
-+#include <sys/param.h>
-+#if __BYTE_ORDER == __BIG_ENDIAN
-+#define WTF_PLATFORM_BIG_ENDIAN 1
-+#elif  __BYTE_ORDER == __PDP_ENDIAN
-+#define WTF_PLATFORM_MIDDLE_ENDIAN 1
-+#endif
-+#endif
-+
- /* Compiler */
- 
- /* COMPILER(MSVC) */
-@@ -703,7 +730,7 @@
- #endif
- 
- #if !defined(WTF_USE_JSVALUE64) && !defined(WTF_USE_JSVALUE32) && !defined(WTF_USE_JSVALUE32_64)
--#if PLATFORM(X86_64) && (PLATFORM(DARWIN) || PLATFORM(LINUX))
-+#if (PLATFORM(X86_64) && (PLATFORM(DARWIN) || PLATFORM(LINUX) || PLATFORM(FREEBSD))) || PLATFORM(IA64) || PLATFORM(ALPHA)
- #define WTF_USE_JSVALUE64 1
- #elif PLATFORM(ARM) || PLATFORM(PPC64)
- #define WTF_USE_JSVALUE32 1
---- webkit-1.1.16.orig/JavaScriptCore/wtf/ListHashSet.h
-+++ webkit-1.1.16/JavaScriptCore/wtf/ListHashSet.h
-@@ -127,7 +127,7 @@
-             : 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 @@
-         }
- 
-     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 @@
-         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.1.16.orig/JavaScriptCore/wtf/FastMalloc.cpp
-+++ webkit-1.1.16/JavaScriptCore/wtf/FastMalloc.cpp
-@@ -2259,13 +2259,13 @@
- 
- // Page-level allocator
- static SpinLock pageheap_lock = SPINLOCK_INITIALIZER;
--static void* pageheap_memory[(sizeof(TCMalloc_PageHeap) + sizeof(void*) - 1) / sizeof(void*)];
-+static uint64_t pageheap_memory[(sizeof(TCMalloc_PageHeap) + sizeof(uint64_t) - 1) / sizeof(uint64_t)];
- static bool phinited = false;
- 
- // Avoid extra level of indirection by making "pageheap" be just an alias
- // of pageheap_memory.
- typedef union {
--    void* m_memory;
-+    uint64_t* m_memory;
-     TCMalloc_PageHeap* m_pageHeap;
- } PageHeapUnion;
- 
---- webkit-1.1.16.orig/WebCore/platform/text/AtomicString.cpp
-+++ webkit-1.1.16/WebCore/platform/text/AtomicString.cpp
-@@ -103,7 +103,7 @@
-     if (string->length() != length)
-         return false;
- 
--#if PLATFORM(ARM) || PLATFORM(SH4)
-+#if PLATFORM(ARM) || PLATFORM(SPARC) || PLATFORM(SH4)
-     const UChar* stringCharacters = string->characters();
-     for (unsigned i = 0; i != length; ++i) {
-         if (*stringCharacters++ != *characters++)
---- webkit-1.1.16.orig/WebCore/platform/text/StringHash.h
-+++ webkit-1.1.16/WebCore/platform/text/StringHash.h
-@@ -47,6 +47,15 @@
-             if (aLength != bLength)
-                 return false;
- 
-+#if PLATFORM(ARM) || PLATFORM(SPARC)
-+            const UChar* aChars = a->characters();
-+            const UChar* bChars = b->characters();
-+            for (unsigned i = 0; i != aLength; ++i)
-+                if (*aChars++ != *bChars++)
-+                    return false;
-+
-+            return true;
-+#else
-             const uint32_t* aChars = reinterpret_cast<const uint32_t*>(a->characters());
-             const uint32_t* bChars = reinterpret_cast<const uint32_t*>(b->characters());
- 
-@@ -59,6 +68,7 @@
-                 return false;
- 
-             return true;
-+#endif
-         }
- 
-         static unsigned hash(const RefPtr<StringImpl>& key) { return key->hash(); }
\ No newline at end of file

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 0000000..fe1ebc4
--- /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 0000000..cf25b5d
--- /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 0000000..0d9e144
--- /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.3.12-r1.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.3.12-r1.ebuild
index 6c259f3..5a0d593 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.3.12-r1.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.3.12-r1.ebuild
@@ -19,18 +19,17 @@ IUSE="coverage debug doc +gstreamer +introspection +jit spell"
 
 # use sqlite, svg by default
 # dependency on >=x11-libs/gtk+-2.13:2 for gail
-# XXX: Quartz patch does not apply
-# >=x11-libs/gtk+-2.13:2[aqua=]
+# Aqua support in gtk3 is untested
 RDEPEND="
-	dev-libs/libxml2
+	dev-libs/libxml2:2
 	dev-libs/libxslt
-	media-libs/jpeg:0
-	media-libs/libpng
+	virtual/jpeg
+	media-libs/libpng:0
 	x11-libs/cairo
-	>=dev-libs/glib-2.27.90
+	>=dev-libs/glib-2.27.90:2
 	>=x11-libs/gtk+-3.0:3
 	>=dev-libs/icu-3.8.1-r1
-	>=net-libs/libsoup-2.33.6
+	>=net-libs/libsoup-2.33.6:2.4
 	>=dev-db/sqlite-3
 	>=x11-libs/pango-1.12
 
@@ -44,32 +43,40 @@ RDEPEND="
 	spell? (
 		>=app-text/enchant-0.22 )"
 
-
 DEPEND="${RDEPEND}
 	>=sys-devel/flex-2.5.33
 	sys-devel/gettext
 	dev-util/gperf
 	dev-util/pkgconfig
 	dev-util/gtk-doc-am
-	doc? ( >=dev-util/gtk-doc-1.10 )"
+	doc? ( >=dev-util/gtk-doc-1.10 )
+	test? ( x11-themes/hicolor-icon-theme )"
 
 S="${WORKDIR}/${MY_P}"
 
 src_prepare() {
 	# FIXME: Fix unaligned accesses on ARM, IA64 and SPARC
 	# https://bugs.webkit.org/show_bug.cgi?id=19775
-	use sparc && epatch "${FILESDIR}"/${PN}-1.1.15.2-unaligned.patch
+	use sparc && epatch "${FILESDIR}"/${PN}-1.2.3-fix-pool-sparc.patch
 
 	epatch "${FILESDIR}/${P}-utf-decode-v1.patch"
 	epatch "${FILESDIR}/${P}-utf-decode-v2.patch"
 
-	# Darwin/Aqua build is broken, needs autoreconf
-	# XXX: BROKEN. Patch does not apply anymore.
+	# intermediate MacPorts hack while upstream bug is not fixed properly
 	# https://bugs.webkit.org/show_bug.cgi?id=28727
-	#epatch "${FILESDIR}"/${PN}-1.1.15.4-darwin-quartz.patch
+	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 || die "sed failed"
+
+	# 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
 }
@@ -78,13 +85,15 @@ src_configure() {
 	# It doesn't compile on alpha without this in LDFLAGS
 	use alpha && append-ldflags "-Wl,--no-relax"
 
-	# Sigbuses on SPARC with mcpu
+	# 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: websockets disabled due to security issue in protocol
 	# XXX: webgl fails compilation
 	# XXX: Wtf is WebKit2?
 	myconf="
@@ -98,24 +107,28 @@ src_configure() {
 		--with-gtk=3.0
 		--disable-webkit2
 		--disable-web-sockets"
-		# quartz patch above does not apply anymore
-		#$(use aqua && echo "--with-target=quartz")"
+		# Aqua support in gtk3 is untested
+		#$(use aqua && echo "--with-font-backend=pango --with-target=quartz")"
+		# Disable web-sockets per bug #326547
 
 	econf ${myconf}
 }
 
-src_test() {
-	unset DISPLAY
-	# Tests will fail without it, bug 294691, bug 310695
-	Xemake check || die "Test phase failed"
-}
-
 src_compile() {
 	# XXX: This step is required so we properly build gettext catalogs
 	emake update-po || die "Compile failed"
+	# Fix sandbox error with USE="introspection"
+	# https://bugs.webkit.org/show_bug.cgi?id=35471
 	emake XDG_DATA_HOME="${T}/.local" || die "Compile failed"
 }
 
+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" || die "Test phase failed"
+}
+
 src_install() {
 	emake DESTDIR="${D}" install || die "Install failed"
 	dodoc Source/WebKit/gtk/{NEWS,ChangeLog} || die "dodoc failed"

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.3.12-r200.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.3.12-r200.ebuild
index 869c130..ab64243 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.3.12-r200.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.3.12-r200.ebuild
@@ -14,23 +14,21 @@ SRC_URI="http://www.webkitgtk.org/${MY_P}.tar.gz"
 LICENSE="LGPL-2 LGPL-2.1 BSD"
 SLOT="2"
 KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~x86-macos"
-# aqua, geoclue
-IUSE="coverage debug doc spell +gstreamer +introspection +jit"
+# geoclue
+IUSE="aqua coverage debug doc spell +gstreamer +introspection +jit"
 
 # use sqlite, svg by default
 # dependency on >=x11-libs/gtk+-2.13:2 for gail
-# XXX: Quartz patch does not apply
-# >=x11-libs/gtk+-2.13:2[aqua=]
 RDEPEND="
-	dev-libs/libxml2
+	dev-libs/libxml2:2
 	dev-libs/libxslt
-	media-libs/jpeg:0
-	media-libs/libpng
+	virtual/jpeg
+	media-libs/libpng:0
 	x11-libs/cairo
-	>=dev-libs/glib-2.27.90
-	>=x11-libs/gtk+-2.13:2
+	>=dev-libs/glib-2.27.90:2
+	>=x11-libs/gtk+-2.13:2[aqua=]
 	>=dev-libs/icu-3.8.1-r1
-	>=net-libs/libsoup-2.33.6
+	>=net-libs/libsoup-2.33.6:2.4
 	>=dev-db/sqlite-3
 	>=x11-libs/pango-1.12
 
@@ -50,7 +48,8 @@ DEPEND="${RDEPEND}
 	dev-util/gperf
 	dev-util/pkgconfig
 	dev-util/gtk-doc-am
-	doc? ( >=dev-util/gtk-doc-1.10 )"
+	doc? ( >=dev-util/gtk-doc-1.10 )
+	test? ( x11-themes/hicolor-icon-theme )"
 
 S="${WORKDIR}/${MY_P}"
 
@@ -59,13 +58,24 @@ src_prepare() {
 	# https://bugs.webkit.org/show_bug.cgi?id=19775
 	use sparc && epatch "${FILESDIR}"/${PN}-1.1.15.2-unaligned.patch
 
-	# Darwin/Aqua build is broken, needs autoreconf
-	# XXX: BROKEN. Patch does not apply anymore.
+	epatch "${FILESDIR}/${P}-utf-decode-v1.patch"
+	epatch "${FILESDIR}/${P}-utf-decode-v2.patch"
+
+	# intermediate MacPorts hack while upstream bug is not fixed properly
 	# https://bugs.webkit.org/show_bug.cgi?id=28727
-	#epatch "${FILESDIR}"/${PN}-1.1.15.4-darwin-quartz.patch
+	use sparc && epatch "${FILESDIR}"/${PN}-1.2.3-fix-pool-sparc.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 || die "sed failed"
+
+	# 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
 }
@@ -74,15 +84,17 @@ src_configure() {
 	# It doesn't compile on alpha without this in LDFLAGS
 	use alpha && append-ldflags "-Wl,--no-relax"
 
-	# Sigbuses on SPARC with mcpu
+	# 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: websockets disabled due to security issue in protocol
+	# XXX: webgl fails compilation
 	# XXX: Wtf is WebKit2?
-	# XXX: WebGL fails to compile
 	myconf="
 		$(use_enable coverage)
 		$(use_enable debug)
@@ -90,28 +102,31 @@ src_configure() {
 		$(use_enable introspection)
 		$(use_enable gstreamer video)
 		$(use_enable jit)
-		--with-gtk=2.0
 		--disable-webgl
+		--with-gtk=2.0
 		--disable-webkit2
-		--disable-web-sockets"
-		# quartz patch above does not apply anymore
-		#$(use aqua && echo "--with-target=quartz")"
+		--disable-web-sockets
+		$(use aqua && echo "--with-font-backend=pango --with-target=quartz")"
+		# Disable web-sockets per bug #326547
 
 	econf ${myconf}
 }
 
-src_test() {
-	unset DISPLAY
-	# Tests will fail without it, bug 294691, bug 310695
-	Xemake check || die "Test phase failed"
-}
-
 src_compile() {
 	# XXX: This step is required so we properly build gettext catalogs
 	emake update-po || die "Compile failed"
+	# Fix sandbox error with USE="introspection"
+	# https://bugs.webkit.org/show_bug.cgi?id=35471
 	emake XDG_DATA_HOME="${T}/.local" || die "Compile failed"
 }
 
+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" || die "Test phase failed"
+}
+
 src_install() {
 	emake DESTDIR="${D}" install || die "Install failed"
 	dodoc Source/WebKit/gtk/{NEWS,ChangeLog} || die "dodoc failed"



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [gentoo-commits] proj/gnome:master commit in: net-libs/webkit-gtk/files/, net-libs/webkit-gtk/
@ 2011-03-22 13:22 Priit Laes
  0 siblings, 0 replies; 25+ messages in thread
From: Priit Laes @ 2011-03-22 13:22 UTC (permalink / raw
  To: gentoo-commits

commit:     221108b698e93702d5a851ff311a858a24b9477a
Author:     Priit Laes <plaes <AT> plaes <DOT> org>
AuthorDate: Tue Mar 22 13:22:08 2011 +0000
Commit:     Priit Laes <plaes <AT> plaes <DOT> org>
CommitDate: Tue Mar 22 13:22:08 2011 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=221108b6

net-libs/webkit-gtk: Bump to 1.3.13

---
 .../files/webkit-gtk-1.3.12-utf-decode-v1.patch    |  392 --------------------
 .../files/webkit-gtk-1.3.12-utf-decode-v2.patch    |   44 ---
 ...2-r200.ebuild => webkit-gtk-1.3.13-r200.ebuild} |    3 -
 ...k-1.3.12-r1.ebuild => webkit-gtk-1.3.13.ebuild} |    3 -
 4 files changed, 0 insertions(+), 442 deletions(-)

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.3.12-utf-decode-v1.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.3.12-utf-decode-v1.patch
deleted file mode 100644
index ea1a961..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-1.3.12-utf-decode-v1.patch
+++ /dev/null
@@ -1,392 +0,0 @@
-commit a4853e0b12ad2305ba7c3593a08f7f366dee5eaf
-Author: darin@apple.com <darin@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
-Date:   Wed Feb 23 20:00:25 2011 +0000
-
-    2011-02-23  Darin Adler  <darin@apple.com>
-    
-            Reviewed by Alexey Proskuryakov.
-    
-            REGRESSION (new UTF-8 decoder): Reproducible crash on alltommac.se
-            https://bugs.webkit.org/show_bug.cgi?id=54862
-    
-            Correct handling of end of buffer partial sequence in UTF-8 and UTF-16 decoders when flushing with zero length
-            https://bugs.webkit.org/show_bug.cgi?id=54444
-    
-            No new tests at this time. I will add some tests later, but since multiple
-            people are hitting this I wanted to get it in as quickly as possible.
-    
-            * platform/text/TextCodecUTF16.cpp:
-            (WebCore::TextCodecUTF16::decode): Tweaked coding style quite a bit.
-            Removed special case for zero length now that main code handles it
-            correctly. Used words instead of abbreviations for local variable names.
-            Added error handling for a trailing byte.
-    
-            * platform/text/TextCodecUTF8.cpp:
-            (WebCore::TextCodecUTF8::consumePartialSequenceByte): Added. Helper function
-            to make the handleError and handlePartialSequence functions clearer.
-            (WebCore::TextCodecUTF8::handleError): Added. Helper function to make the
-            handlePartialSequence clearer.
-            (WebCore::TextCodecUTF8::handlePartialSequence): Added. Factored out code for
-            the partial sequence case. Making this a separate function probably helps make
-            the fast case a little faster. This new version handles more cases correctly,
-            which is what fixes the crashes we were seeing. In particular, it no longer
-            assumes that the partial sequence is truly partial, because there are cases
-            where we end up handling complete sequences here, such as when a complete
-            sequence is inside a malformed partial sequence.
-            (WebCore::TextCodecUTF8::decode): Removed partial sequence code and made this
-            call handlePartialSequence instead. Could be streamlined if we double checked
-            that passing a reference to "destination" and "source" doesn't harm code
-            generation too much, so perhaps someone can do that research on a few compilers
-            later and clean this up. Removed special case for zero length now that the
-            main code handles that correctly.
-    
-            * platform/text/TextCodecUTF8.h: Added declarations for new functions.
-            Made partial sequence buffer large enough to hold a whole sequence so we can
-            use it to complete and decode a sequence in place.
-    
-    
-    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@79466 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
-diff --git a/Source/WebCore/platform/text/TextCodecUTF16.cpp b/Source/WebCore/platform/text/TextCodecUTF16.cpp
-index 4ceed23..f5dd59c 100644
---- a/Source/WebCore/platform/text/TextCodecUTF16.cpp
-+++ b/Source/WebCore/platform/text/TextCodecUTF16.cpp
-@@ -1,5 +1,5 @@
- /*
-- * Copyright (C) 2004, 2006, 2008, 2010 Apple Inc. All rights reserved.
-+ * Copyright (C) 2004, 2006, 2008, 2010, 2011 Apple Inc. All rights reserved.
-  *
-  * Redistribution and use in source and binary forms, with or without
-  * modification, are permitted provided that the following conditions
-@@ -27,10 +27,12 @@
- #include "TextCodecUTF16.h"
- 
- #include "PlatformString.h"
-+#include <wtf/PassOwnPtr.h>
- #include <wtf/text/CString.h>
- #include <wtf/text/StringBuffer.h>
--#include <wtf/PassOwnPtr.h>
-+#include <wtf/unicode/CharacterNames.h>
- 
-+using namespace WTF::Unicode;
- using namespace std;
- 
- namespace WebCore {
-@@ -52,12 +54,12 @@ void TextCodecUTF16::registerEncodingNames(EncodingNameRegistrar registrar)
- 
- static PassOwnPtr<TextCodec> newStreamingTextDecoderUTF16LE(const TextEncoding&, const void*)
- {
--    return new TextCodecUTF16(true);
-+    return adoptPtr(new TextCodecUTF16(true));
- }
- 
- static PassOwnPtr<TextCodec> newStreamingTextDecoderUTF16BE(const TextEncoding&, const void*)
- {
--    return new TextCodecUTF16(false);
-+    return adoptPtr(new TextCodecUTF16(false));
- }
- 
- void TextCodecUTF16::registerCodecs(TextCodecRegistrar registrar)
-@@ -66,53 +68,56 @@ void TextCodecUTF16::registerCodecs(TextCodecRegistrar registrar)
-     registrar("UTF-16BE", newStreamingTextDecoderUTF16BE, 0);
- }
- 
--String TextCodecUTF16::decode(const char* bytes, size_t length, bool, bool, bool&)
-+String TextCodecUTF16::decode(const char* bytes, size_t length, bool flush, bool stopOnError, bool& sawError)
- {
--    if (!length)
--        return String();
--
--    // FIXME: This should generate an error if there is an unpaired surrogate.
-+    // FIXME: This should buffer surrogates, not just single bytes,
-+    // and should generate an error if there is an unpaired surrogate.
- 
--    const unsigned char* p = reinterpret_cast<const unsigned char*>(bytes);
-+    const uint8_t* source = reinterpret_cast<const uint8_t*>(bytes);
-     size_t numBytes = length + m_haveBufferedByte;
--    size_t numChars = numBytes / 2;
--
--    StringBuffer buffer(numChars);
--    UChar* q = buffer.characters();
--
--    if (m_haveBufferedByte) {
--        UChar c;
--        if (m_littleEndian)
--            c = m_bufferedByte | (p[0] << 8);
--        else
--            c = (m_bufferedByte << 8) | p[0];
--        *q++ = c;
--        m_haveBufferedByte = false;
--        p += 1;
--        numChars -= 1;
--    }
--
--    if (m_littleEndian) {
--        for (size_t i = 0; i < numChars; ++i) {
--            UChar c = p[0] | (p[1] << 8);
--            p += 2;
--            *q++ = c;
-+    size_t numCharacters = numBytes / 2;
-+
-+    StringBuffer buffer(numCharacters + (flush && (numBytes & 1)));
-+    UChar* destination = buffer.characters();
-+
-+    if (length) {
-+        if (m_haveBufferedByte) {
-+            UChar character;
-+            if (m_littleEndian)
-+                *destination++ = m_bufferedByte | (source[0] << 8);
-+            else
-+                *destination++ = (m_bufferedByte << 8) | source[0];
-+            m_haveBufferedByte = false;
-+            ++source;
-+            --numCharacters;
-         }
--    } else {
--        for (size_t i = 0; i < numChars; ++i) {
--            UChar c = (p[0] << 8) | p[1];
--            p += 2;
--            *q++ = c;
-+
-+        if (m_littleEndian) {
-+            for (size_t i = 0; i < numCharacters; ++i) {
-+                *destination++ = source[0] | (source[1] << 8);
-+                source += 2;
-+            }
-+        } else {
-+            for (size_t i = 0; i < numCharacters; ++i) {
-+                *destination++ = (source[0] << 8) | source[1];
-+                source += 2;
-+            }
-         }
-     }
- 
-     if (numBytes & 1) {
--        ASSERT(!m_haveBufferedByte);
--        m_haveBufferedByte = true;
--        m_bufferedByte = p[0];
-+        if (flush) {
-+            sawError = true;
-+            if (!stopOnError)
-+                *destination++ = replacementCharacter;
-+        } else {
-+            ASSERT(!m_haveBufferedByte);
-+            m_haveBufferedByte = true;
-+            m_bufferedByte = source[0];
-+        }
-     }
--
--    buffer.shrink(q - buffer.characters());
-+    
-+    buffer.shrink(destination - buffer.characters());
- 
-     return String::adopt(buffer);
- }
-@@ -134,15 +139,15 @@ CString TextCodecUTF16::encode(const UChar* characters, size_t length, Unencodab
-     // null characters inside it. Perhaps the result of encode should not be a CString.
-     if (m_littleEndian) {
-         for (size_t i = 0; i < length; ++i) {
--            UChar c = characters[i];
--            bytes[i * 2] = c;
--            bytes[i * 2 + 1] = c >> 8;
-+            UChar character = characters[i];
-+            bytes[i * 2] = character;
-+            bytes[i * 2 + 1] = character >> 8;
-         }
-     } else {
-         for (size_t i = 0; i < length; ++i) {
--            UChar c = characters[i];
--            bytes[i * 2] = c >> 8;
--            bytes[i * 2 + 1] = c;
-+            UChar character = characters[i];
-+            bytes[i * 2] = character >> 8;
-+            bytes[i * 2 + 1] = character;
-         }
-     }
- 
-diff --git a/Source/WebCore/platform/text/TextCodecUTF8.cpp b/Source/WebCore/platform/text/TextCodecUTF8.cpp
-index 2466e8c..29426ad 100644
---- a/Source/WebCore/platform/text/TextCodecUTF8.cpp
-+++ b/Source/WebCore/platform/text/TextCodecUTF8.cpp
-@@ -150,11 +150,71 @@ static inline UChar* appendCharacter(UChar* destination, int character)
-     return destination;
- }
- 
--String TextCodecUTF8::decode(const char* bytes, size_t length, bool flush, bool stopOnError, bool& sawError)
-+void TextCodecUTF8::consumePartialSequenceByte()
- {
--    if (!length)
--        return String();
-+    --m_partialSequenceSize;
-+    memmove(m_partialSequence, m_partialSequence + 1, m_partialSequenceSize);
-+}
- 
-+void TextCodecUTF8::handleError(UChar*& destination, bool stopOnError, bool& sawError)
-+{
-+    sawError = true;
-+    if (stopOnError)
-+        return;
-+    // Each error generates a replacement character and consumes one byte.
-+    *destination++ = replacementCharacter;
-+    consumePartialSequenceByte();
-+}
-+
-+void TextCodecUTF8::handlePartialSequence(UChar*& destination, const uint8_t*& source, const uint8_t* end, bool flush, bool stopOnError, bool& sawError)
-+{
-+    ASSERT(m_partialSequenceSize);
-+    do {
-+        if (isASCII(m_partialSequence[0])) {
-+            *destination++ = m_partialSequence[0];
-+            consumePartialSequenceByte();
-+            continue;
-+        }
-+        int count = nonASCIISequenceLength(m_partialSequence[0]);
-+        if (!count) {
-+            handleError(destination, stopOnError, sawError);
-+            if (stopOnError)
-+                return;
-+            continue;
-+        }
-+        if (count > m_partialSequenceSize) {
-+            if (count - m_partialSequenceSize > end - source) {
-+                if (!flush) {
-+                    // The new data is not enough to complete the sequence, so
-+                    // add it to the existing partial sequence.
-+                    memcpy(m_partialSequence + m_partialSequenceSize, source, end - source);
-+                    m_partialSequenceSize += end - source;
-+                    return;
-+                }
-+                // An incomplete partial sequence at the end is an error.
-+                handleError(destination, stopOnError, sawError);
-+                if (stopOnError)
-+                    return;
-+                continue;
-+            }
-+            memcpy(m_partialSequence + m_partialSequenceSize, source, count - m_partialSequenceSize);
-+            source += count - m_partialSequenceSize;
-+            m_partialSequenceSize = count;
-+        }
-+        int character = decodeNonASCIISequence(m_partialSequence, count);
-+        if (character == nonCharacter) {
-+            handleError(destination, stopOnError, sawError);
-+            if (stopOnError)
-+                return;
-+            continue;
-+        }
-+        m_partialSequenceSize -= count;
-+        destination = appendCharacter(destination, character);
-+    } while (m_partialSequenceSize);
-+}
-+
-+String TextCodecUTF8::decode(const char* bytes, size_t length, bool flush, bool stopOnError, bool& sawError)
-+{
-     // Each input byte might turn into a character.
-     // That includes all bytes in the partial-sequence buffer because
-     // each byte in an invalid sequence will turn into a replacement character.
-@@ -166,52 +226,19 @@ String TextCodecUTF8::decode(const char* bytes, size_t length, bool flush, bool
-     UChar* destination = buffer.characters();
- 
-     do {
--        while (m_partialSequenceSize) {
--            int count = nonASCIISequenceLength(m_partialSequence[0]);
--            ASSERT(count > m_partialSequenceSize);
--            ASSERT(count >= 2);
--            ASSERT(count <= 4);
--            if (count - m_partialSequenceSize > end - source) {
--                if (!flush) {
--                    // We have an incomplete partial sequence, so put it all in the partial
--                    // sequence buffer, and break out of this loop so we can exit the function.
--                    memcpy(m_partialSequence + m_partialSequenceSize, source, end - source);
--                    m_partialSequenceSize += end - source;
--                    source = end;
--                    break;
--                }
--                // We have an incomplete partial sequence at the end of the buffer.
--                // That is an error.
--                sawError = true;
--                if (stopOnError) {
--                    source = end;
--                    break;
--                }
--                // Each error consumes one byte and generates one replacement character.
--                --m_partialSequenceSize;
--                memmove(m_partialSequence, m_partialSequence + 1, m_partialSequenceSize);
--                *destination++ = replacementCharacter;
--                continue;
-+        if (m_partialSequenceSize) {
-+            // Explicitly copy destination and source to avoid taking a pointer to them,
-+            // which may harm code generation.
-+            UChar* destinationForHandlePartialSequence = destination;
-+            const uint8_t* sourceForHandlePartialSequence = source;
-+            handlePartialSequence(destinationForHandlePartialSequence, sourceForHandlePartialSequence, end, flush, stopOnError, sawError);
-+            destination = destinationForHandlePartialSequence;
-+            source = sourceForHandlePartialSequence;
-+            if (m_partialSequenceSize) {
-+                ASSERT(stopOnError);
-+                ASSERT(sawError);
-+                break;
-             }
--            uint8_t completeSequence[U8_MAX_LENGTH];
--            memcpy(completeSequence, m_partialSequence, m_partialSequenceSize);
--            memcpy(completeSequence + m_partialSequenceSize, source, count - m_partialSequenceSize);
--            source += count - m_partialSequenceSize;
--            int character = decodeNonASCIISequence(completeSequence, count);
--            if (character == nonCharacter) {
--                sawError = true;
--                if (stopOnError) {
--                    source = end;
--                    break;
--                }
--                // Each error consumes one byte and generates one replacement character.
--                memcpy(m_partialSequence, completeSequence + 1, count - 1);
--                m_partialSequenceSize = count - 1;
--                *destination++ = replacementCharacter;
--                continue;
--            }
--            m_partialSequenceSize = 0;
--            destination = appendCharacter(destination, character);
-         }
- 
-         while (source < end) {
-@@ -239,10 +266,8 @@ String TextCodecUTF8::decode(const char* bytes, size_t length, bool flush, bool
-             if (!count)
-                 character = nonCharacter;
-             else {
--                ASSERT(count >= 2);
--                ASSERT(count <= 4);
-                 if (count > end - source) {
--                    ASSERT(end - source <= static_cast<ptrdiff_t>(sizeof(m_partialSequence)));
-+                    ASSERT(end - source < static_cast<ptrdiff_t>(sizeof(m_partialSequence)));
-                     ASSERT(!m_partialSequenceSize);
-                     m_partialSequenceSize = end - source;
-                     memcpy(m_partialSequence, source, m_partialSequenceSize);
-@@ -255,9 +280,9 @@ String TextCodecUTF8::decode(const char* bytes, size_t length, bool flush, bool
-                 sawError = true;
-                 if (stopOnError)
-                     break;
--                // Each error consumes one byte and generates one replacement character.
--                ++source;
-+                // Each error generates a replacement character and consumes one byte.
-                 *destination++ = replacementCharacter;
-+                ++source;
-                 continue;
-             }
-             source += count;
-diff --git a/Source/WebCore/platform/text/TextCodecUTF8.h b/Source/WebCore/platform/text/TextCodecUTF8.h
-index 2bbb31e..39fd753 100644
---- a/Source/WebCore/platform/text/TextCodecUTF8.h
-+++ b/Source/WebCore/platform/text/TextCodecUTF8.h
-@@ -42,8 +42,12 @@ private:
-     virtual String decode(const char*, size_t length, bool flush, bool stopOnError, bool& sawError);
-     virtual CString encode(const UChar*, size_t length, UnencodableHandling);
- 
-+    void handlePartialSequence(UChar*& destination, const uint8_t*& source, const uint8_t* end, bool flush, bool stopOnError, bool& sawError);
-+    void handleError(UChar*& destination, bool stopOnError, bool& sawError);
-+    void consumePartialSequenceByte();
-+
-     int m_partialSequenceSize;
--    char m_partialSequence[U8_MAX_LENGTH - 1];
-+    uint8_t m_partialSequence[U8_MAX_LENGTH];
-     
- };
- 

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.3.12-utf-decode-v2.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.3.12-utf-decode-v2.patch
deleted file mode 100644
index 7fb9a46..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-1.3.12-utf-decode-v2.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-commit 3f28cee7ffa83df4510b234af13c223714b9324c
-Author: darin@apple.com <darin@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
-Date:   Fri Feb 25 02:20:42 2011 +0000
-
-    2011-02-24  Darin Adler  <darin@apple.com>
-    
-            Reviewed by Alexey Proskuryakov.
-    
-            REGRESSION (r79466): http/tests/incremental/slow-utf8-html.pl flaky due to incorrect assertions
-            https://bugs.webkit.org/show_bug.cgi?id=55135
-    
-            * platform/text/TextCodecUTF8.cpp:
-            (WebCore::TextCodecUTF8::decode): Removed incorrect assertions.
-    
-    
-    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@79655 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
-diff --git a/Source/WebCore/platform/text/TextCodecUTF8.cpp b/Source/WebCore/platform/text/TextCodecUTF8.cpp
-index 29426ad..5f82092 100644
---- a/Source/WebCore/platform/text/TextCodecUTF8.cpp
-+++ b/Source/WebCore/platform/text/TextCodecUTF8.cpp
-@@ -227,18 +227,16 @@ String TextCodecUTF8::decode(const char* bytes, size_t length, bool flush, bool
- 
-     do {
-         if (m_partialSequenceSize) {
--            // Explicitly copy destination and source to avoid taking a pointer to them,
--            // which may harm code generation.
-+            // Explicitly copy destination and source pointers to avoid taking pointers to the
-+            // local variables, which may harm code generation by disabling some optimizations
-+            // in some compilers.
-             UChar* destinationForHandlePartialSequence = destination;
-             const uint8_t* sourceForHandlePartialSequence = source;
-             handlePartialSequence(destinationForHandlePartialSequence, sourceForHandlePartialSequence, end, flush, stopOnError, sawError);
-             destination = destinationForHandlePartialSequence;
-             source = sourceForHandlePartialSequence;
--            if (m_partialSequenceSize) {
--                ASSERT(stopOnError);
--                ASSERT(sawError);
-+            if (m_partialSequenceSize)
-                 break;
--            }
-         }
- 
-         while (source < end) {

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.3.12-r200.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.3.13-r200.ebuild
similarity index 97%
rename from net-libs/webkit-gtk/webkit-gtk-1.3.12-r200.ebuild
rename to net-libs/webkit-gtk/webkit-gtk-1.3.13-r200.ebuild
index ab64243..59a9b40 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.3.12-r200.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.3.13-r200.ebuild
@@ -58,9 +58,6 @@ src_prepare() {
 	# https://bugs.webkit.org/show_bug.cgi?id=19775
 	use sparc && epatch "${FILESDIR}"/${PN}-1.1.15.2-unaligned.patch
 
-	epatch "${FILESDIR}/${P}-utf-decode-v1.patch"
-	epatch "${FILESDIR}/${P}-utf-decode-v2.patch"
-
 	# intermediate MacPorts hack while upstream bug is not fixed properly
 	# https://bugs.webkit.org/show_bug.cgi?id=28727
 	use sparc && epatch "${FILESDIR}"/${PN}-1.2.3-fix-pool-sparc.patch

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.3.12-r1.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.3.13.ebuild
similarity index 97%
rename from net-libs/webkit-gtk/webkit-gtk-1.3.12-r1.ebuild
rename to net-libs/webkit-gtk/webkit-gtk-1.3.13.ebuild
index 5a0d593..a59f6f8 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.3.12-r1.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.3.13.ebuild
@@ -59,9 +59,6 @@ src_prepare() {
 	# https://bugs.webkit.org/show_bug.cgi?id=19775
 	use sparc && epatch "${FILESDIR}"/${PN}-1.2.3-fix-pool-sparc.patch
 
-	epatch "${FILESDIR}/${P}-utf-decode-v1.patch"
-	epatch "${FILESDIR}/${P}-utf-decode-v2.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



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [gentoo-commits] proj/gnome:master commit in: net-libs/webkit-gtk/files/, net-libs/webkit-gtk/
@ 2011-05-07 19:18 Priit Laes
  0 siblings, 0 replies; 25+ messages in thread
From: Priit Laes @ 2011-05-07 19:18 UTC (permalink / raw
  To: gentoo-commits

commit:     86a19fae13dbbc5fb8f3e5366ba5aef7b22d14e0
Author:     Priit Laes <plaes <AT> plaes <DOT> org>
AuthorDate: Sat May  7 19:08:39 2011 +0000
Commit:     Priit Laes <plaes <AT> plaes <DOT> org>
CommitDate: Sat May  7 19:08:39 2011 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=86a19fae

net-libs/webkit-gtk: Fix for frequent crasher and small cleanups

---
 .../files/webkit-gtk-1.4.0-nav-crasher.patch       |   73 ++++++++++++++++++++
 ...gtk-1.4.0.ebuild => webkit-gtk-1.4.0-r1.ebuild} |    4 +-
 ....0-r200.ebuild => webkit-gtk-1.4.0-r201.ebuild} |    3 +-
 3 files changed, 76 insertions(+), 4 deletions(-)

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.4.0-nav-crasher.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.4.0-nav-crasher.patch
new file mode 100644
index 0000000..e447708
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.4.0-nav-crasher.patch
@@ -0,0 +1,73 @@
+commit e037ca43e772ac0e5b0d80f95a2a6c996c0c11fb
+Author: xan@webkit.org <xan@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
+Date:   Sat Apr 30 05:20:07 2011 +0000
+
+    2011-04-29  Xan Lopez  <xlopez@igalia.com>
+    
+            Reviewed by Martin Robinson.
+    
+            [Gtk+] Crash when navigating back
+            https://bugs.webkit.org/show_bug.cgi?id=59799
+    
+            The innerNode management in WebKitHitTestResult was relying on the
+            old DOM bindings behavior where every DOM objects had to be
+            disposed by the caller. Now the objects are garbage collected by
+            WebKit when either the parent frame or document dies, so this is
+            not needed anymore. Update the code to simply take ownership of
+            the node, which effectively correctly balances the reference
+            count.
+    
+            * webkit/webkithittestresult.cpp:
+            (webkit_hit_test_result_dispose): call C++ dtors in private data.
+            (webkit_hit_test_result_get_property): adatp to GRefPtr API.
+            (webkit_hit_test_result_init): call C++ ctors in private data.
+    
+    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@85390 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+diff --git a/Source/WebKit/gtk/webkit/webkithittestresult.cpp b/Source/WebKit/gtk/webkit/webkithittestresult.cpp
+index 9632493..1abb166 100644
+--- a/Source/WebKit/gtk/webkit/webkithittestresult.cpp
++++ b/Source/WebKit/gtk/webkit/webkithittestresult.cpp
+@@ -22,6 +22,7 @@
+ #include "webkithittestresult.h"
+ 
+ #include "GOwnPtr.h"
++#include "GRefPtr.h"
+ #include "HitTestResult.h"
+ #include "KURL.h"
+ #include "WebKitDOMBinding.h"
+@@ -47,7 +48,7 @@ struct _WebKitHitTestResultPrivate {
+     char* linkURI;
+     char* imageURI;
+     char* mediaURI;
+-    WebKitDOMNode* innerNode;
++    GRefPtr<WebKitDOMNode> innerNode;
+ };
+ 
+ enum {
+@@ -74,7 +75,7 @@ static void webkit_hit_test_result_finalize(GObject* object)
+ 
+ static void webkit_hit_test_result_dispose(GObject* object)
+ {
+-    g_object_unref(WEBKIT_HIT_TEST_RESULT(object)->priv->innerNode);
++    WEBKIT_HIT_TEST_RESULT(object)->priv->~WebKitHitTestResultPrivate();
+ 
+     G_OBJECT_CLASS(webkit_hit_test_result_parent_class)->dispose(object);
+ }
+@@ -98,7 +99,7 @@ static void webkit_hit_test_result_get_property(GObject* object, guint propertyI
+         g_value_set_string(value, priv->mediaURI);
+         break;
+     case PROP_INNER_NODE:
+-        g_value_set_object(value, priv->innerNode);
++        g_value_set_object(value, priv->innerNode.get());
+         break;
+     default:
+         G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propertyID, pspec);
+@@ -230,6 +231,7 @@ static void webkit_hit_test_result_class_init(WebKitHitTestResultClass* webHitTe
+ static void webkit_hit_test_result_init(WebKitHitTestResult* web_hit_test_result)
+ {
+     web_hit_test_result->priv = G_TYPE_INSTANCE_GET_PRIVATE(web_hit_test_result, WEBKIT_TYPE_HIT_TEST_RESULT, WebKitHitTestResultPrivate);
++    new (web_hit_test_result->priv) WebKitHitTestResultPrivate();
+ }
+ 
+ namespace WebKit {

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.4.0.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.4.0-r1.ebuild
similarity index 97%
rename from net-libs/webkit-gtk/webkit-gtk-1.4.0.ebuild
rename to net-libs/webkit-gtk/webkit-gtk-1.4.0-r1.ebuild
index e37d989..8c8b69b 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.4.0.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.4.0-r1.ebuild
@@ -67,6 +67,8 @@ src_prepare() {
 	# XXX: Fails to apply
 	#epatch "${FILESDIR}"/${PN}-1.2.5-darwin8.patch
 
+	epatch "${FILESDIR}/${P}-nav-crasher.patch"
+
 	# Don't force -O2
 	sed -i 's/-O2//g' "${S}"/configure.ac || die "sed failed"
 
@@ -112,8 +114,6 @@ src_configure() {
 }
 
 src_compile() {
-	# XXX: This step is required so we properly build gettext catalogs
-	emake update-po || die "Compile failed"
 	# Fix sandbox error with USE="introspection"
 	# https://bugs.webkit.org/show_bug.cgi?id=35471
 	emake XDG_DATA_HOME="${T}/.local" || die "Compile failed"

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.4.0-r200.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.4.0-r201.ebuild
similarity index 96%
rename from net-libs/webkit-gtk/webkit-gtk-1.4.0-r200.ebuild
rename to net-libs/webkit-gtk/webkit-gtk-1.4.0-r201.ebuild
index 7cb607a..4f379e0 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.4.0-r200.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.4.0-r201.ebuild
@@ -65,6 +65,7 @@ src_prepare() {
 	# Fix build on Darwin8 (10.4 Tiger)
 	# XXX: Fails to apply
 	#epatch "${FILESDIR}"/${PN}-1.2.5-darwin8.patch
+	epatch "${FILESDIR}/${P}-nav-crasher.patch"
 
 	# Don't force -O2
 	sed -i 's/-O2//g' "${S}"/configure.ac || die "sed failed"
@@ -110,8 +111,6 @@ src_configure() {
 }
 
 src_compile() {
-	# XXX: This step is required so we properly build gettext catalogs
-	emake update-po || die "Compile failed"
 	# Fix sandbox error with USE="introspection"
 	# https://bugs.webkit.org/show_bug.cgi?id=35471
 	emake XDG_DATA_HOME="${T}/.local" || die "Compile failed"



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [gentoo-commits] proj/gnome:master commit in: net-libs/webkit-gtk/files/, net-libs/webkit-gtk/
@ 2011-06-05 20:12 Priit Laes
  0 siblings, 0 replies; 25+ messages in thread
From: Priit Laes @ 2011-06-05 20:12 UTC (permalink / raw
  To: gentoo-commits

commit:     192e77066681de71fcb7bc543da4d5136c9c549a
Author:     Priit Laes <plaes <AT> plaes <DOT> org>
AuthorDate: Sun Jun  5 20:03:02 2011 +0000
Commit:     Priit Laes <plaes <AT> plaes <DOT> org>
CommitDate: Sun Jun  5 20:03:02 2011 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=192e7706

net-libs/webkit-gtk: Bump to 1.4.1

---
 .../files/webkit-gtk-1.4.0-nav-crasher.patch       |   73 --------------------
 ....0-r201.ebuild => webkit-gtk-1.4.1-r200.ebuild} |    7 --
 ...gtk-1.4.0-r1.ebuild => webkit-gtk-1.4.1.ebuild} |    8 --
 3 files changed, 0 insertions(+), 88 deletions(-)

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.4.0-nav-crasher.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.4.0-nav-crasher.patch
deleted file mode 100644
index e447708..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-1.4.0-nav-crasher.patch
+++ /dev/null
@@ -1,73 +0,0 @@
-commit e037ca43e772ac0e5b0d80f95a2a6c996c0c11fb
-Author: xan@webkit.org <xan@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
-Date:   Sat Apr 30 05:20:07 2011 +0000
-
-    2011-04-29  Xan Lopez  <xlopez@igalia.com>
-    
-            Reviewed by Martin Robinson.
-    
-            [Gtk+] Crash when navigating back
-            https://bugs.webkit.org/show_bug.cgi?id=59799
-    
-            The innerNode management in WebKitHitTestResult was relying on the
-            old DOM bindings behavior where every DOM objects had to be
-            disposed by the caller. Now the objects are garbage collected by
-            WebKit when either the parent frame or document dies, so this is
-            not needed anymore. Update the code to simply take ownership of
-            the node, which effectively correctly balances the reference
-            count.
-    
-            * webkit/webkithittestresult.cpp:
-            (webkit_hit_test_result_dispose): call C++ dtors in private data.
-            (webkit_hit_test_result_get_property): adatp to GRefPtr API.
-            (webkit_hit_test_result_init): call C++ ctors in private data.
-    
-    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@85390 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
-diff --git a/Source/WebKit/gtk/webkit/webkithittestresult.cpp b/Source/WebKit/gtk/webkit/webkithittestresult.cpp
-index 9632493..1abb166 100644
---- a/Source/WebKit/gtk/webkit/webkithittestresult.cpp
-+++ b/Source/WebKit/gtk/webkit/webkithittestresult.cpp
-@@ -22,6 +22,7 @@
- #include "webkithittestresult.h"
- 
- #include "GOwnPtr.h"
-+#include "GRefPtr.h"
- #include "HitTestResult.h"
- #include "KURL.h"
- #include "WebKitDOMBinding.h"
-@@ -47,7 +48,7 @@ struct _WebKitHitTestResultPrivate {
-     char* linkURI;
-     char* imageURI;
-     char* mediaURI;
--    WebKitDOMNode* innerNode;
-+    GRefPtr<WebKitDOMNode> innerNode;
- };
- 
- enum {
-@@ -74,7 +75,7 @@ static void webkit_hit_test_result_finalize(GObject* object)
- 
- static void webkit_hit_test_result_dispose(GObject* object)
- {
--    g_object_unref(WEBKIT_HIT_TEST_RESULT(object)->priv->innerNode);
-+    WEBKIT_HIT_TEST_RESULT(object)->priv->~WebKitHitTestResultPrivate();
- 
-     G_OBJECT_CLASS(webkit_hit_test_result_parent_class)->dispose(object);
- }
-@@ -98,7 +99,7 @@ static void webkit_hit_test_result_get_property(GObject* object, guint propertyI
-         g_value_set_string(value, priv->mediaURI);
-         break;
-     case PROP_INNER_NODE:
--        g_value_set_object(value, priv->innerNode);
-+        g_value_set_object(value, priv->innerNode.get());
-         break;
-     default:
-         G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propertyID, pspec);
-@@ -230,6 +231,7 @@ static void webkit_hit_test_result_class_init(WebKitHitTestResultClass* webHitTe
- static void webkit_hit_test_result_init(WebKitHitTestResult* web_hit_test_result)
- {
-     web_hit_test_result->priv = G_TYPE_INSTANCE_GET_PRIVATE(web_hit_test_result, WEBKIT_TYPE_HIT_TEST_RESULT, WebKitHitTestResultPrivate);
-+    new (web_hit_test_result->priv) WebKitHitTestResultPrivate();
- }
- 
- namespace WebKit {

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.4.0-r201.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.4.1-r200.ebuild
similarity index 95%
rename from net-libs/webkit-gtk/webkit-gtk-1.4.0-r201.ebuild
rename to net-libs/webkit-gtk/webkit-gtk-1.4.1-r200.ebuild
index a45c33b..9bacd74 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.4.0-r201.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.4.1-r200.ebuild
@@ -53,12 +53,6 @@ DEPEND="${RDEPEND}
 
 S="${WORKDIR}/${MY_P}"
 
-pkg_setup() {
-	if ! use gstreamer ; then
-		die "Build does not work with USE=-gstreamer due to upstream issue"
-	fi
-}
-
 src_prepare() {
 	# FIXME: Fix unaligned accesses on ARM, IA64 and SPARC
 	# https://bugs.webkit.org/show_bug.cgi?id=19775
@@ -71,7 +65,6 @@ src_prepare() {
 	# Fix build on Darwin8 (10.4 Tiger)
 	# XXX: Fails to apply
 	#epatch "${FILESDIR}"/${PN}-1.2.5-darwin8.patch
-	epatch "${FILESDIR}/${P}-nav-crasher.patch"
 
 	# Don't force -O2
 	sed -i 's/-O2//g' "${S}"/configure.ac || die "sed failed"

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.4.0-r1.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.4.1.ebuild
similarity index 95%
rename from net-libs/webkit-gtk/webkit-gtk-1.4.0-r1.ebuild
rename to net-libs/webkit-gtk/webkit-gtk-1.4.1.ebuild
index d8cccec..8c0dff1 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.4.0-r1.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.4.1.ebuild
@@ -54,12 +54,6 @@ DEPEND="${RDEPEND}
 
 S="${WORKDIR}/${MY_P}"
 
-pkg_setup() {
-	if ! use gstreamer ; then
-		die "Build does not work with USE=-gstreamer due to upstream issue"
-	fi
-}
-
 src_prepare() {
 	# FIXME: Fix unaligned accesses on ARM, IA64 and SPARC
 	# https://bugs.webkit.org/show_bug.cgi?id=19775
@@ -73,8 +67,6 @@ src_prepare() {
 	# XXX: Fails to apply
 	#epatch "${FILESDIR}"/${PN}-1.2.5-darwin8.patch
 
-	epatch "${FILESDIR}/${P}-nav-crasher.patch"
-
 	# Don't force -O2
 	sed -i 's/-O2//g' "${S}"/configure.ac || die "sed failed"
 



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [gentoo-commits] proj/gnome:master commit in: net-libs/webkit-gtk/files/, net-libs/webkit-gtk/
@ 2011-06-11  1:44 Nirbheek Chauhan
  0 siblings, 0 replies; 25+ messages in thread
From: Nirbheek Chauhan @ 2011-06-11  1:44 UTC (permalink / raw
  To: gentoo-commits

commit:     8887d9954c0e9af89adfc6a19b6b8adae25c1e93
Author:     Nirbheek Chauhan <nirbheek <AT> gentoo <DOT> org>
AuthorDate: Sat Jun 11 01:44:08 2011 +0000
Commit:     Nirbheek Chauhan <nirbheek <AT> gentoo <DOT> org>
CommitDate: Sat Jun 11 01:44:08 2011 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=8887d995

net-libs/webkit-gtk: moved to the tree

---
 .../files/webkit-gtk-1.2.5-darwin-quartz.patch     |   79 ------------
 .../files/webkit-gtk-1.2.5-darwin8.patch           |   33 -----
 .../files/webkit-gtk-1.2.5-tests-build.patch       |   22 ----
 net-libs/webkit-gtk/webkit-gtk-1.4.1-r200.ebuild   |  131 -------------------
 net-libs/webkit-gtk/webkit-gtk-1.4.1.ebuild        |  133 --------------------
 5 files changed, 0 insertions(+), 398 deletions(-)

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
deleted file mode 100644
index fe1ebc4..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-1.2.5-darwin-quartz.patch
+++ /dev/null
@@ -1,79 +0,0 @@
-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
deleted file mode 100644
index cf25b5d..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-1.2.5-darwin8.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-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
deleted file mode 100644
index 0d9e144..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-1.2.5-tests-build.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-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.4.1-r200.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.4.1-r200.ebuild
deleted file mode 100644
index 9bacd74..0000000
--- a/net-libs/webkit-gtk/webkit-gtk-1.4.1-r200.ebuild
+++ /dev/null
@@ -1,131 +0,0 @@
-# Copyright 1999-2010 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: $
-
-EAPI="2"
-
-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="2"
-KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~x86-macos"
-# geoclue
-IUSE="aqua coverage debug doc spell +gstreamer +introspection +jit"
-
-# use sqlite, svg by default
-# dependency on >=x11-libs/gtk+-2.13:2 for gail
-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+-2.13:2[aqua=]
-	>=dev-libs/icu-3.8.1-r1
-	>=net-libs/libsoup-2.33.6:2.4
-	>=dev-db/sqlite-3
-	>=x11-libs/pango-1.12
-
-	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
-	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() {
-	# FIXME: Fix unaligned accesses on ARM, IA64 and SPARC
-	# https://bugs.webkit.org/show_bug.cgi?id=19775
-	use sparc && epatch "${FILESDIR}"/${PN}-1.1.15.2-unaligned.patch
-
-	# intermediate MacPorts hack while upstream bug is not fixed properly
-	# https://bugs.webkit.org/show_bug.cgi?id=28727
-	use sparc && epatch "${FILESDIR}"/${PN}-1.2.3-fix-pool-sparc.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 || die "sed failed"
-
-	# 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: Wtf is WebKit2?
-	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=2.0
-		--disable-webkit2
-		--disable-web-sockets
-		$(use aqua && echo "--with-font-backend=pango --with-target=quartz")"
-		# 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" || die "Compile failed"
-}
-
-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" || die "Test phase failed"
-}
-
-src_install() {
-	emake DESTDIR="${D}" install || die "Install failed"
-	dodoc Source/WebKit/gtk/{NEWS,ChangeLog} || die "dodoc failed"
-
-	# Remove .la files
-	find "${D}" -name '*.la' -exec rm -f '{}' + || die
-}

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.4.1.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.4.1.ebuild
deleted file mode 100644
index 8c0dff1..0000000
--- a/net-libs/webkit-gtk/webkit-gtk-1.4.1.ebuild
+++ /dev/null
@@ -1,133 +0,0 @@
-# Copyright 1999-2010 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: $
-
-EAPI="2"
-
-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 ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~x86-macos"
-# aqua, geoclue
-IUSE="coverage debug doc +gstreamer +introspection +jit spell"
-
-# 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
-	>=dev-libs/icu-3.8.1-r1
-	>=net-libs/libsoup-2.33.6:2.4
-	>=dev-db/sqlite-3
-	>=x11-libs/pango-1.12
-
-	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
-	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() {
-	# 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 || die "sed failed"
-
-	# 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: Wtf is WebKit2?
-	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"
-		# Aqua support in gtk3 is untested
-		#$(use aqua && echo "--with-font-backend=pango --with-target=quartz")"
-		# 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" || die "Compile failed"
-}
-
-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" || die "Test phase failed"
-}
-
-src_install() {
-	emake DESTDIR="${D}" install || die "Install failed"
-	dodoc Source/WebKit/gtk/{NEWS,ChangeLog} || die "dodoc failed"
-
-	# Remove .la files
-	find "${D}" -name '*.la' -exec rm -f '{}' + || die
-}



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [gentoo-commits] proj/gnome:master commit in: net-libs/webkit-gtk/files/, net-libs/webkit-gtk/
@ 2011-10-30  0:13 Alexandre Restovtsev
  0 siblings, 0 replies; 25+ messages in thread
From: Alexandre Restovtsev @ 2011-10-30  0:13 UTC (permalink / raw
  To: gentoo-commits

commit:     28bce071ba4872b8f134d71e61088a6f4bc2ec23
Author:     Alexandre Rostovtsev <tetromino <AT> gentoo <DOT> org>
AuthorDate: Sat Oct 29 20:36:36 2011 +0000
Commit:     Alexandre Restovtsev <tetromino <AT> gmail <DOT> com>
CommitDate: Sat Oct 29 23:10:14 2011 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=28bce071

net-libs/webkit-gtk: fix USE=doc build

The special Source/WebKit/gtk/docs handling for src_compile is no longer
needed in 1.7.1. Unfortunately, in 1.7.1 the makefiles have no provision
for actually installing docs; add a patch to fix that.
Fixes build with USE=doc. Thanks to Marien Zwart for reporting on IRC.

---
 .../files/webkit-gtk-1.7.1-install-docs.patch      |   43 ++++++++++++++++++++
 net-libs/webkit-gtk/webkit-gtk-1.7.1-r300.ebuild   |   13 +-----
 2 files changed, 46 insertions(+), 10 deletions(-)

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.7.1-install-docs.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.7.1-install-docs.patch
new file mode 100644
index 0000000..b053908
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.7.1-install-docs.patch
@@ -0,0 +1,43 @@
+Enable gtk-doc installation when building with --enable-gtk-doc
+
+--- a/Source/WebKit/gtk/GNUmakefile.gtk-doc.am
++++ b/Source/WebKit/gtk/GNUmakefile.gtk-doc.am
+@@ -180,6 +180,38 @@
+ 	@rm -rf Documentation/xml Documentation/html
+ 	-@rmdir Documentation
+ 
++if ENABLE_GTK_DOC
++install-data-local:
++	@installfiles=`echo $(builddir)/html/*`; \
++	if test "$$installfiles" = '$(builddir)/html/*'; \
++	then echo 1>&2 'Nothing to install' ; \
++	else \
++	  if test -n "$(DOC_MODULE_VERSION)"; then \
++	    installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \
++	  else \
++	    installdir="$(DESTDIR)$(TARGET_DIR)"; \
++	  fi; \
++	  $(mkinstalldirs) $${installdir} ; \
++	  for i in $$installfiles; do \
++	    echo ' $(INSTALL_DATA) '$$i ; \
++	    $(INSTALL_DATA) $$i $${installdir}; \
++	  done; \
++	  if test -n "$(DOC_MODULE_VERSION)"; then \
++	    mv -f $${installdir}/$(DOC_MODULE).devhelp2 \
++	      $${installdir}/$(DOC_MODULE)-$(DOC_MODULE_VERSION).devhelp2; \
++	  fi; \
++	  $(GTKDOC_REBASE) --relative --dest-dir=$(DESTDIR) --html-dir=$${installdir}; \
++	fi
++
++uninstall-local:
++	@if test -n "$(DOC_MODULE_VERSION)"; then \
++	  installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \
++	else \
++	  installdir="$(DESTDIR)$(TARGET_DIR)"; \
++	fi; \
++	rm -rf $${installdir}
++endif
++
+ #
+ # Require gtk-doc when making dist
+ #

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.7.1-r300.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.7.1-r300.ebuild
index a2a1f7a..f79732a 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.7.1-r300.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.7.1-r300.ebuild
@@ -88,6 +88,9 @@ src_prepare() {
 	# Required for webgl; https://bugs.webkit.org/show_bug.cgi?id=69085
 	mkdir -p DerivedSources/ANGLE
 
+	# Install docs on "make install" when USE=doc
+	epatch "${FILESDIR}/${PN}-1.7.1-install-docs.patch"
+
 	# Prevent maintainer mode from being triggered during make
 	AT_M4DIR=Source/autotools eautoreconf
 }
@@ -130,11 +133,6 @@ src_compile() {
 	# Fix sandbox error with USE="introspection"
 	# https://bugs.webkit.org/show_bug.cgi?id=35471
 	emake XDG_DATA_HOME="${T}/.local"
-
-	# ${PN} neither ships, nor builds documentation on its own
-	if use doc; then
-		emake -C "${S}/Source/WebKit/gtk/docs"
-	fi
 }
 
 src_test() {
@@ -148,11 +146,6 @@ src_test() {
 src_install() {
 	default
 
-	# ${PN} doesn't install documentation on its own
-	if use doc; then
-		emake DESTDIR=${D} -C "${S}/Source/WebKit/gtk/docs" install
-	fi
-
 	newdoc Source/WebKit/gtk/ChangeLog ChangeLog.gtk
 	newdoc Source/WebKit/gtk/po/ChangeLog ChangeLog.gtk-po
 	newdoc Source/JavaScriptCore/ChangeLog ChangeLog.JavaScriptCore



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [gentoo-commits] proj/gnome:master commit in: net-libs/webkit-gtk/files/, net-libs/webkit-gtk/
@ 2011-11-26  8:43 Priit Laes
  0 siblings, 0 replies; 25+ messages in thread
From: Priit Laes @ 2011-11-26  8:43 UTC (permalink / raw
  To: gentoo-commits

commit:     8bac2c8ca9edbea37aea508c176eea6e3e211042
Author:     Priit Laes <plaes <AT> plaes <DOT> org>
AuthorDate: Sat Nov 26 08:32:08 2011 +0000
Commit:     Priit Laes <plaes <AT> plaes <DOT> org>
CommitDate: Sat Nov 26 08:32:08 2011 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=8bac2c8c

net-libs/webkit-gtk: 1.7.1 → 1.7.2

---
 .../files/webkit-gtk-1.7.2-fix-webgl-build.patch   |   44 ++++++++++++++++++++
 ....1-r200.ebuild => webkit-gtk-1.7.2-r200.ebuild} |    4 +-
 ....1-r300.ebuild => webkit-gtk-1.7.2-r300.ebuild} |    4 +-
 3 files changed, 48 insertions(+), 4 deletions(-)

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.7.2-fix-webgl-build.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.7.2-fix-webgl-build.patch
new file mode 100644
index 0000000..529b068
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.7.2-fix-webgl-build.patch
@@ -0,0 +1,44 @@
+commit f3a5204d163a46adc16fcee03e5478aa5031763a
+Author: mrobinson@webkit.org <mrobinson@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
+Date:   Wed Nov 23 12:48:12 2011 +0000
+
+    Build fix for GTK+.
+    
+    * platform/graphics/gtk/DrawingBufferGtk.cpp:
+    (WebCore::DrawingBuffer::DrawingBuffer): Update signature and ASSERT
+    for the GTK+ port.
+    
+    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@101067 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+diff --git a/Source/WebCore/platform/graphics/gtk/DrawingBufferGtk.cpp b/Source/WebCore/platform/graphics/gtk/DrawingBufferGtk.cpp
+index 64a5310..f9a248b 100644
+--- a/Source/WebCore/platform/graphics/gtk/DrawingBufferGtk.cpp
++++ b/Source/WebCore/platform/graphics/gtk/DrawingBufferGtk.cpp
+@@ -36,17 +36,25 @@ namespace WebCore {
+ DrawingBuffer::DrawingBuffer(GraphicsContext3D* context,
+                              const IntSize& size,
+                              bool multisampleExtensionSupported,
+-                             bool packedDepthStencilExtensionSupported)
+-    : m_context(context)
++                             bool packedDepthStencilExtensionSupported,
++                             bool separateBackingTexture)
++    : m_separateBackingTexture(separateBackingTexture)
++    , m_scissorEnabled(false)
++    , m_context(context)
+     , m_size(-1, -1)
+     , m_multisampleExtensionSupported(multisampleExtensionSupported)
+     , m_packedDepthStencilExtensionSupported(packedDepthStencilExtensionSupported)
+     , m_fbo(context->createFramebuffer())
+     , m_colorBuffer(0)
+     , m_depthStencilBuffer(0)
++    , m_depthBuffer(0)
++    , m_stencilBuffer(0)
+     , m_multisampleFBO(0)
+     , m_multisampleColorBuffer(0)
+ {
++    // Support for a separate backing texture has only been enabled for
++    // the chromium port.
++    ASSERT(!m_separateBackingTexture);
+     ASSERT(m_fbo);
+     if (!m_fbo) {
+         clear();

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.7.1-r200.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.7.2-r200.ebuild
similarity index 97%
rename from net-libs/webkit-gtk/webkit-gtk-1.7.1-r200.ebuild
rename to net-libs/webkit-gtk/webkit-gtk-1.7.2-r200.ebuild
index 1e7d478..4d7744b 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.7.1-r200.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.7.2-r200.ebuild
@@ -10,8 +10,7 @@ inherit autotools eutils flag-o-matic eutils python virtualx
 MY_P="webkit-${PV}"
 DESCRIPTION="Open source web browser engine"
 HOMEPAGE="http://www.webkitgtk.org/"
-# Upstream is still shipping silly gzip files
-SRC_URI="http://www.webkitgtk.org/${MY_P}.tar.gz"
+SRC_URI="http://www.webkitgtk.org/${MY_P}.tar.xz"
 #SRC_URI="mirror://gentoo/${P}.tar.xz"
 
 LICENSE="LGPL-2 LGPL-2.1 BSD"
@@ -92,6 +91,7 @@ src_prepare() {
 
 	# Required for webgl; https://bugs.webkit.org/show_bug.cgi?id=69085
 	mkdir -p DerivedSources/ANGLE
+	epatch "${FILESDIR}/${PN}-1.7.2-fix-webgl-build.patch"
 
 	# Prevent maintainer mode from being triggered during make
 	AT_M4DIR=Source/autotools eautoreconf

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.7.1-r300.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.7.2-r300.ebuild
similarity index 97%
rename from net-libs/webkit-gtk/webkit-gtk-1.7.1-r300.ebuild
rename to net-libs/webkit-gtk/webkit-gtk-1.7.2-r300.ebuild
index 9888ea5..faa8a47 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.7.1-r300.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.7.2-r300.ebuild
@@ -10,8 +10,7 @@ inherit autotools eutils flag-o-matic eutils python virtualx
 MY_P="webkit-${PV}"
 DESCRIPTION="Open source web browser engine"
 HOMEPAGE="http://www.webkitgtk.org/"
-# Upstream is still shipping silly gzip files
-SRC_URI="http://www.webkitgtk.org/${MY_P}.tar.gz"
+SRC_URI="http://www.webkitgtk.org/${MY_P}.tar.xz"
 #SRC_URI="mirror://gentoo/${P}.tar.xz"
 
 LICENSE="LGPL-2 LGPL-2.1 BSD"
@@ -95,6 +94,7 @@ src_prepare() {
 
 	# Required for webgl; https://bugs.webkit.org/show_bug.cgi?id=69085
 	mkdir -p DerivedSources/ANGLE
+	epatch "${FILESDIR}/${PN}-1.7.2-fix-webgl-build.patch"
 
 	# Install docs on "make install" when USE=doc
 	epatch "${FILESDIR}/${PN}-1.7.1-install-docs.patch"



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [gentoo-commits] proj/gnome:master commit in: net-libs/webkit-gtk/files/, net-libs/webkit-gtk/
@ 2011-11-28  5:35 Priit Laes
  0 siblings, 0 replies; 25+ messages in thread
From: Priit Laes @ 2011-11-28  5:35 UTC (permalink / raw
  To: gentoo-commits

commit:     4cb3edcd961376016decf957f2823fb0c4b323ca
Author:     Priit Laes <plaes <AT> plaes <DOT> org>
AuthorDate: Mon Nov 28 05:33:30 2011 +0000
Commit:     Priit Laes <plaes <AT> plaes <DOT> org>
CommitDate: Mon Nov 28 05:33:30 2011 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=4cb3edcd

net-libs/webkit-gtk: Fix GTK2 build, add back 1.7.1

---
 .../files/webkit-gtk-1.7.2-fix-gtk2-build.patch    |   13 ++++++++++
 ....2-r200.ebuild => webkit-gtk-1.7.1-r200.ebuild} |    3 +-
 ....2-r200.ebuild => webkit-gtk-1.7.1-r300.ebuild} |   26 ++++++++++++-------
 net-libs/webkit-gtk/webkit-gtk-1.7.2-r200.ebuild   |    1 +
 4 files changed, 31 insertions(+), 12 deletions(-)

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.7.2-fix-gtk2-build.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.7.2-fix-gtk2-build.patch
new file mode 100644
index 0000000..77718b4
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.7.2-fix-gtk2-build.patch
@@ -0,0 +1,13 @@
+diff -ur webkit-1.7.2.orig//Source/WebKit/gtk/tests/testatk.c webkit-1.7.2//Source/WebKit/gtk/tests/testatk.c
+--- webkit-1.7.2.orig//Source/WebKit/gtk/tests/testatk.c	2011-11-28 01:06:19.868230689 +0100
++++ webkit-1.7.2//Source/WebKit/gtk/tests/testatk.c	2011-11-28 01:45:56.214331937 +0100
+@@ -1686,7 +1686,9 @@
+     g_test_init(&argc, &argv, 0);
+     gtk_disable_setlocale();
+     setlocale(LC_ALL, "C");
++#ifndef GTK_API_VERSION_2
+     gdk_disable_multidevice();
++#endif
+     gtk_init(&argc, &argv);
+ }
+ 

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.7.2-r200.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.7.1-r200.ebuild
similarity index 97%
copy from net-libs/webkit-gtk/webkit-gtk-1.7.2-r200.ebuild
copy to net-libs/webkit-gtk/webkit-gtk-1.7.1-r200.ebuild
index 4d7744b..3506b3c 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.7.2-r200.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.7.1-r200.ebuild
@@ -10,7 +10,7 @@ inherit autotools eutils flag-o-matic eutils python 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.xz"
+SRC_URI="http://www.webkitgtk.org/${MY_P}.tar.gz"
 #SRC_URI="mirror://gentoo/${P}.tar.xz"
 
 LICENSE="LGPL-2 LGPL-2.1 BSD"
@@ -91,7 +91,6 @@ src_prepare() {
 
 	# Required for webgl; https://bugs.webkit.org/show_bug.cgi?id=69085
 	mkdir -p DerivedSources/ANGLE
-	epatch "${FILESDIR}/${PN}-1.7.2-fix-webgl-build.patch"
 
 	# Prevent maintainer mode from being triggered during make
 	AT_M4DIR=Source/autotools eautoreconf

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.7.2-r200.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.7.1-r300.ebuild
similarity index 85%
copy from net-libs/webkit-gtk/webkit-gtk-1.7.2-r200.ebuild
copy to net-libs/webkit-gtk/webkit-gtk-1.7.1-r300.ebuild
index 4d7744b..80fa1b5 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.7.2-r200.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.7.1-r300.ebuild
@@ -1,6 +1,6 @@
 # Copyright 1999-2011 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-libs/webkit-gtk/webkit-gtk-1.6.1-r200.ebuild,v 1.1 2011/09/30 13:52:33 nirbheek Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-libs/webkit-gtk/webkit-gtk-1.6.1-r300.ebuild,v 1.1 2011/09/30 13:52:33 nirbheek Exp $
 
 EAPI="4"
 
@@ -10,20 +10,22 @@ inherit autotools eutils flag-o-matic eutils python 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.xz"
+SRC_URI="http://www.webkitgtk.org/${MY_P}.tar.gz"
 #SRC_URI="mirror://gentoo/${P}.tar.xz"
 
 LICENSE="LGPL-2 LGPL-2.1 BSD"
-SLOT="2"
+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 +gstreamer +introspection +jit spell webgl"
+IUSE="aqua coverage debug doc +gstreamer +introspection +jit spell webgl"
 # 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
+# gtk2 is needed for plugin process support
 RDEPEND="
 	dev-libs/libxml2:2
 	dev-libs/libxslt
@@ -31,7 +33,7 @@ RDEPEND="
 	>=media-libs/libpng-1.4:0
 	>=x11-libs/cairo-1.10
 	>=dev-libs/glib-2.27.90:2
-	>=x11-libs/gtk+-2.13:2[aqua=,introspection?]
+	>=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
@@ -56,6 +58,7 @@ DEPEND="${RDEPEND}
 	dev-util/gperf
 	dev-util/pkgconfig
 	dev-util/gtk-doc-am
+	doc? ( >=dev-util/gtk-doc-1.10 )
 	test? ( x11-themes/hicolor-icon-theme )
 "
 
@@ -91,7 +94,9 @@ src_prepare() {
 
 	# Required for webgl; https://bugs.webkit.org/show_bug.cgi?id=69085
 	mkdir -p DerivedSources/ANGLE
-	epatch "${FILESDIR}/${PN}-1.7.2-fix-webgl-build.patch"
+
+	# Install docs on "make install" when USE=doc
+	epatch "${FILESDIR}/${PN}-1.7.1-install-docs.patch"
 
 	# Prevent maintainer mode from being triggered during make
 	AT_M4DIR=Source/autotools eautoreconf
@@ -110,22 +115,23 @@ src_configure() {
 	local myconf
 
 	# XXX: Check Web Audio support
-	# WebKit2 can only be built with gtk3
-	# API documentation (gtk-doc) is built in webkit-gtk:3, always disable here
+	# XXX: files for generating DerivedSources/WebKit2/* are missing, see
+	#      https://bugs.webkit.org/show_bug.cgi?id=66527
 	myconf="
 		$(use_enable coverage)
 		$(use_enable debug)
 		$(use_enable debug debug-features)
+		$(use_enable doc gtk-doc)
 		$(use_enable spell spellcheck)
 		$(use_enable introspection)
 		$(use_enable gstreamer video)
 		$(use_enable jit)
 		$(use_enable webgl)
 		--enable-web-sockets
-		--with-gtk=2.0
-		--disable-gtk-doc
+		--with-gtk=3.0
 		--disable-webkit2
 		$(use aqua && echo "--with-font-backend=pango --with-target=quartz")"
+		# Aqua support in gtk3 is untested
 
 	econf ${myconf}
 }

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.7.2-r200.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.7.2-r200.ebuild
index 4d7744b..cba9d55 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.7.2-r200.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.7.2-r200.ebuild
@@ -92,6 +92,7 @@ src_prepare() {
 	# Required for webgl; https://bugs.webkit.org/show_bug.cgi?id=69085
 	mkdir -p DerivedSources/ANGLE
 	epatch "${FILESDIR}/${PN}-1.7.2-fix-webgl-build.patch"
+	epatch "${FILESDIR}/${P}-fix-gtk2-build.patch"
 
 	# Prevent maintainer mode from being triggered during make
 	AT_M4DIR=Source/autotools eautoreconf



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [gentoo-commits] proj/gnome:master commit in: net-libs/webkit-gtk/files/, net-libs/webkit-gtk/
@ 2011-12-20 17:37 Priit Laes
  0 siblings, 0 replies; 25+ messages in thread
From: Priit Laes @ 2011-12-20 17:37 UTC (permalink / raw
  To: gentoo-commits

commit:     e251a7a5128ababb1c23752acadd4ca5cb8ad242
Author:     Priit Laes <plaes <AT> plaes <DOT> org>
AuthorDate: Tue Dec 20 17:34:49 2011 +0000
Commit:     Priit Laes <plaes <AT> plaes <DOT> org>
CommitDate: Tue Dec 20 17:34:49 2011 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=e251a7a5

net-libs/webkit-gtk: Bump to 1.7.3

---
 .../files/webkit-gtk-1.7.2-fix-gtk2-build.patch    |   13 ------
 .../files/webkit-gtk-1.7.2-fix-webgl-build.patch   |   44 --------------------
 ....2-r200.ebuild => webkit-gtk-1.7.3-r200.ebuild} |    2 -
 ....2-r300.ebuild => webkit-gtk-1.7.3-r300.ebuild} |    5 +-
 4 files changed, 2 insertions(+), 62 deletions(-)

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.7.2-fix-gtk2-build.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.7.2-fix-gtk2-build.patch
deleted file mode 100644
index 77718b4..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-1.7.2-fix-gtk2-build.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff -ur webkit-1.7.2.orig//Source/WebKit/gtk/tests/testatk.c webkit-1.7.2//Source/WebKit/gtk/tests/testatk.c
---- webkit-1.7.2.orig//Source/WebKit/gtk/tests/testatk.c	2011-11-28 01:06:19.868230689 +0100
-+++ webkit-1.7.2//Source/WebKit/gtk/tests/testatk.c	2011-11-28 01:45:56.214331937 +0100
-@@ -1686,7 +1686,9 @@
-     g_test_init(&argc, &argv, 0);
-     gtk_disable_setlocale();
-     setlocale(LC_ALL, "C");
-+#ifndef GTK_API_VERSION_2
-     gdk_disable_multidevice();
-+#endif
-     gtk_init(&argc, &argv);
- }
- 

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.7.2-fix-webgl-build.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.7.2-fix-webgl-build.patch
deleted file mode 100644
index 529b068..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-1.7.2-fix-webgl-build.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-commit f3a5204d163a46adc16fcee03e5478aa5031763a
-Author: mrobinson@webkit.org <mrobinson@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
-Date:   Wed Nov 23 12:48:12 2011 +0000
-
-    Build fix for GTK+.
-    
-    * platform/graphics/gtk/DrawingBufferGtk.cpp:
-    (WebCore::DrawingBuffer::DrawingBuffer): Update signature and ASSERT
-    for the GTK+ port.
-    
-    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@101067 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
-diff --git a/Source/WebCore/platform/graphics/gtk/DrawingBufferGtk.cpp b/Source/WebCore/platform/graphics/gtk/DrawingBufferGtk.cpp
-index 64a5310..f9a248b 100644
---- a/Source/WebCore/platform/graphics/gtk/DrawingBufferGtk.cpp
-+++ b/Source/WebCore/platform/graphics/gtk/DrawingBufferGtk.cpp
-@@ -36,17 +36,25 @@ namespace WebCore {
- DrawingBuffer::DrawingBuffer(GraphicsContext3D* context,
-                              const IntSize& size,
-                              bool multisampleExtensionSupported,
--                             bool packedDepthStencilExtensionSupported)
--    : m_context(context)
-+                             bool packedDepthStencilExtensionSupported,
-+                             bool separateBackingTexture)
-+    : m_separateBackingTexture(separateBackingTexture)
-+    , m_scissorEnabled(false)
-+    , m_context(context)
-     , m_size(-1, -1)
-     , m_multisampleExtensionSupported(multisampleExtensionSupported)
-     , m_packedDepthStencilExtensionSupported(packedDepthStencilExtensionSupported)
-     , m_fbo(context->createFramebuffer())
-     , m_colorBuffer(0)
-     , m_depthStencilBuffer(0)
-+    , m_depthBuffer(0)
-+    , m_stencilBuffer(0)
-     , m_multisampleFBO(0)
-     , m_multisampleColorBuffer(0)
- {
-+    // Support for a separate backing texture has only been enabled for
-+    // the chromium port.
-+    ASSERT(!m_separateBackingTexture);
-     ASSERT(m_fbo);
-     if (!m_fbo) {
-         clear();

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.7.2-r200.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.7.3-r200.ebuild
similarity index 97%
rename from net-libs/webkit-gtk/webkit-gtk-1.7.2-r200.ebuild
rename to net-libs/webkit-gtk/webkit-gtk-1.7.3-r200.ebuild
index cba9d55..f62db47 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.7.2-r200.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.7.3-r200.ebuild
@@ -91,8 +91,6 @@ src_prepare() {
 
 	# Required for webgl; https://bugs.webkit.org/show_bug.cgi?id=69085
 	mkdir -p DerivedSources/ANGLE
-	epatch "${FILESDIR}/${PN}-1.7.2-fix-webgl-build.patch"
-	epatch "${FILESDIR}/${P}-fix-gtk2-build.patch"
 
 	# Prevent maintainer mode from being triggered during make
 	AT_M4DIR=Source/autotools eautoreconf

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.7.2-r300.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.7.3-r300.ebuild
similarity index 96%
rename from net-libs/webkit-gtk/webkit-gtk-1.7.2-r300.ebuild
rename to net-libs/webkit-gtk/webkit-gtk-1.7.3-r300.ebuild
index faa8a47..4ae3a69 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.7.2-r300.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.7.3-r300.ebuild
@@ -35,7 +35,7 @@ RDEPEND="
 	>=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?]
+	>=net-libs/libsoup-2.37.2.1:2.4[introspection?]
 	dev-db/sqlite:3
 	>=x11-libs/pango-1.12
 	x11-libs/libXrender
@@ -94,10 +94,9 @@ src_prepare() {
 
 	# Required for webgl; https://bugs.webkit.org/show_bug.cgi?id=69085
 	mkdir -p DerivedSources/ANGLE
-	epatch "${FILESDIR}/${PN}-1.7.2-fix-webgl-build.patch"
 
 	# Install docs on "make install" when USE=doc
-	epatch "${FILESDIR}/${PN}-1.7.1-install-docs.patch"
+	#epatch "${FILESDIR}/${PN}-1.7.1-install-docs.patch"
 
 	# Prevent maintainer mode from being triggered during make
 	AT_M4DIR=Source/autotools eautoreconf



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [gentoo-commits] proj/gnome:master commit in: net-libs/webkit-gtk/files/, net-libs/webkit-gtk/
@ 2012-01-17  9:08 Priit Laes
  0 siblings, 0 replies; 25+ messages in thread
From: Priit Laes @ 2012-01-17  9:08 UTC (permalink / raw
  To: gentoo-commits

commit:     260580eb2a6df508f756024f33c36dcd5588336a
Author:     Priit Laes <plaes <AT> plaes <DOT> org>
AuthorDate: Tue Jan 17 09:05:32 2012 +0000
Commit:     Priit Laes <plaes <AT> plaes <DOT> org>
CommitDate: Tue Jan 17 09:05:32 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=260580eb

net-libs/webkit-gtk: 1.7.3 → 1.7.4

---
 .../files/webkit-gtk-1.7.1-install-docs.patch      |   43 --------------------
 net-libs/webkit-gtk/webkit-gtk-1.7.3-r300.ebuild   |    3 -
 ....1-r200.ebuild => webkit-gtk-1.7.4-r200.ebuild} |    2 +-
 ....1-r300.ebuild => webkit-gtk-1.7.4-r300.ebuild} |    9 +---
 4 files changed, 3 insertions(+), 54 deletions(-)

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.7.1-install-docs.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.7.1-install-docs.patch
deleted file mode 100644
index b053908..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-1.7.1-install-docs.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Enable gtk-doc installation when building with --enable-gtk-doc
-
---- a/Source/WebKit/gtk/GNUmakefile.gtk-doc.am
-+++ b/Source/WebKit/gtk/GNUmakefile.gtk-doc.am
-@@ -180,6 +180,38 @@
- 	@rm -rf Documentation/xml Documentation/html
- 	-@rmdir Documentation
- 
-+if ENABLE_GTK_DOC
-+install-data-local:
-+	@installfiles=`echo $(builddir)/html/*`; \
-+	if test "$$installfiles" = '$(builddir)/html/*'; \
-+	then echo 1>&2 'Nothing to install' ; \
-+	else \
-+	  if test -n "$(DOC_MODULE_VERSION)"; then \
-+	    installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \
-+	  else \
-+	    installdir="$(DESTDIR)$(TARGET_DIR)"; \
-+	  fi; \
-+	  $(mkinstalldirs) $${installdir} ; \
-+	  for i in $$installfiles; do \
-+	    echo ' $(INSTALL_DATA) '$$i ; \
-+	    $(INSTALL_DATA) $$i $${installdir}; \
-+	  done; \
-+	  if test -n "$(DOC_MODULE_VERSION)"; then \
-+	    mv -f $${installdir}/$(DOC_MODULE).devhelp2 \
-+	      $${installdir}/$(DOC_MODULE)-$(DOC_MODULE_VERSION).devhelp2; \
-+	  fi; \
-+	  $(GTKDOC_REBASE) --relative --dest-dir=$(DESTDIR) --html-dir=$${installdir}; \
-+	fi
-+
-+uninstall-local:
-+	@if test -n "$(DOC_MODULE_VERSION)"; then \
-+	  installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \
-+	else \
-+	  installdir="$(DESTDIR)$(TARGET_DIR)"; \
-+	fi; \
-+	rm -rf $${installdir}
-+endif
-+
- #
- # Require gtk-doc when making dist
- #

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.7.3-r300.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.7.3-r300.ebuild
index 4ae3a69..e896d47 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.7.3-r300.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.7.3-r300.ebuild
@@ -95,9 +95,6 @@ src_prepare() {
 	# Required for webgl; https://bugs.webkit.org/show_bug.cgi?id=69085
 	mkdir -p DerivedSources/ANGLE
 
-	# Install docs on "make install" when USE=doc
-	#epatch "${FILESDIR}/${PN}-1.7.1-install-docs.patch"
-
 	# Prevent maintainer mode from being triggered during make
 	AT_M4DIR=Source/autotools eautoreconf
 }

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.7.1-r200.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.7.4-r200.ebuild
similarity index 98%
rename from net-libs/webkit-gtk/webkit-gtk-1.7.1-r200.ebuild
rename to net-libs/webkit-gtk/webkit-gtk-1.7.4-r200.ebuild
index 3506b3c..f62db47 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.7.1-r200.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.7.4-r200.ebuild
@@ -10,7 +10,7 @@ inherit autotools eutils flag-o-matic eutils python 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"
+SRC_URI="http://www.webkitgtk.org/${MY_P}.tar.xz"
 #SRC_URI="mirror://gentoo/${P}.tar.xz"
 
 LICENSE="LGPL-2 LGPL-2.1 BSD"

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.7.1-r300.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.7.4-r300.ebuild
similarity index 92%
rename from net-libs/webkit-gtk/webkit-gtk-1.7.1-r300.ebuild
rename to net-libs/webkit-gtk/webkit-gtk-1.7.4-r300.ebuild
index 80fa1b5..6adaa5e 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.7.1-r300.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.7.4-r300.ebuild
@@ -10,7 +10,7 @@ inherit autotools eutils flag-o-matic eutils python 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"
+SRC_URI="http://www.webkitgtk.org/${MY_P}.tar.xz"
 #SRC_URI="mirror://gentoo/${P}.tar.xz"
 
 LICENSE="LGPL-2 LGPL-2.1 BSD"
@@ -35,7 +35,7 @@ RDEPEND="
 	>=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?]
+	>=net-libs/libsoup-2.37.2.1:2.4[introspection?]
 	dev-db/sqlite:3
 	>=x11-libs/pango-1.12
 	x11-libs/libXrender
@@ -95,9 +95,6 @@ src_prepare() {
 	# Required for webgl; https://bugs.webkit.org/show_bug.cgi?id=69085
 	mkdir -p DerivedSources/ANGLE
 
-	# Install docs on "make install" when USE=doc
-	epatch "${FILESDIR}/${PN}-1.7.1-install-docs.patch"
-
 	# Prevent maintainer mode from being triggered during make
 	AT_M4DIR=Source/autotools eautoreconf
 }
@@ -115,8 +112,6 @@ src_configure() {
 	local myconf
 
 	# XXX: Check Web Audio support
-	# XXX: files for generating DerivedSources/WebKit2/* are missing, see
-	#      https://bugs.webkit.org/show_bug.cgi?id=66527
 	myconf="
 		$(use_enable coverage)
 		$(use_enable debug)



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [gentoo-commits] proj/gnome:master commit in: net-libs/webkit-gtk/files/, net-libs/webkit-gtk/
@ 2012-02-26 19:20 Alexandre Restovtsev
  0 siblings, 0 replies; 25+ messages in thread
From: Alexandre Restovtsev @ 2012-02-26 19:20 UTC (permalink / raw
  To: gentoo-commits

commit:     c8910f26e19546ce609d0049c0266188b1e00065
Author:     Alexandre Rostovtsev <tetromino <AT> gentoo <DOT> org>
AuthorDate: Sun Feb 26 17:06:57 2012 +0000
Commit:     Alexandre Restovtsev <tetromino <AT> gmail <DOT> com>
CommitDate: Sun Feb 26 19:20:03 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=c8910f26

net-libs/webkit-gtk: 1.7.5 → 1.7.90

Bump and sync with gx86. Add ugly workaround for parallel make issues,
disable failing tests, add patch to respect LINGUAS (bug #403049), work
around USE=doc file collisions (bug #402699). Enable webgl by default
per upstream recommendation.

---
 ....patch => webkit-gtk-1.6.1-darwin-quartz.patch} |   72 ++++++++-----------
 .../files/webkit-gtk-1.7.5-linguas.patch           |   47 ++++++++++++
 .../webkit-gtk-1.7.90-parallel-make-hack.patch     |   21 ++++++
 ...webkit-gtk-1.7.90-test_garbage_collection.patch |   18 +++++
 ...5-r200.ebuild => webkit-gtk-1.7.90-r200.ebuild} |   75 ++++++++++++++------
 ...5-r300.ebuild => webkit-gtk-1.7.90-r300.ebuild} |   68 ++++++++++++------
 6 files changed, 213 insertions(+), 88 deletions(-)

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.2.5-darwin-quartz.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.6.1-darwin-quartz.patch
similarity index 50%
rename from net-libs/webkit-gtk/files/webkit-gtk-1.2.5-darwin-quartz.patch
rename to net-libs/webkit-gtk/files/webkit-gtk-1.6.1-darwin-quartz.patch
index fe1ebc4..5ad357e 100644
--- a/net-libs/webkit-gtk/files/webkit-gtk-1.2.5-darwin-quartz.patch
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.6.1-darwin-quartz.patch
@@ -1,39 +1,21 @@
+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
 
---- 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>
+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"
- #define Bool int // this got undefined somewhere
-@@ -441,9 +444,9 @@
+@@ -439,9 +441,9 @@
          event->setDefaultHandled();
  }
  
@@ -41,10 +23,10 @@ http://trac.macports.org/browser/trunk/dports/www/webkit-gtk/files/patch-quartz-
  void PluginView::handleFocusInEvent()
  {
 +#if defined(XP_UNIX)
-     XEvent npEvent;
-     initXEvent(&npEvent);
+     if (!m_isStarted || m_status != PluginStatusLoadedSuccessfully)
+         return;
  
-@@ -453,10 +456,12 @@
+@@ -454,10 +456,12 @@
      event.detail = NotifyDetailNone;
  
      dispatchNPEvent(npEvent);
@@ -54,10 +36,10 @@ http://trac.macports.org/browser/trunk/dports/www/webkit-gtk/files/patch-quartz-
  void PluginView::handleFocusOutEvent()
  {
 +#if defined(XP_UNIX)
-     XEvent npEvent;
-     initXEvent(&npEvent);
+     if (!m_isStarted || m_status != PluginStatusLoadedSuccessfully)
+         return;
  
-@@ -466,8 +471,8 @@
+@@ -470,8 +474,8 @@
      event.detail = NotifyDetailNone;
  
      dispatchNPEvent(npEvent);
@@ -67,13 +49,19 @@ http://trac.macports.org/browser/trunk/dports/www/webkit-gtk/files/patch-quartz-
  
  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)
+--- 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 @@
  
-         if (m_needsXEmbed) {
-             // If our parent is not anchored the startup process will
+   return;
+ }
++#endif

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.7.5-linguas.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.7.5-linguas.patch
new file mode 100644
index 0000000..df14a5c
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.7.5-linguas.patch
@@ -0,0 +1,47 @@
+Respect intltool's LINGUAS variable for building translations.
+
+--- a/webkit-1.7.5/GNUmakefile.am
++++ b/webkit-1.7.5/GNUmakefile.am
+@@ -54,6 +54,9 @@
+ IDL_BINDINGS :=
+ TEST_PROGS :=
+ POFILES :=
++PO_LINGUAS :=
++USER_LINGUAS :=
++USE_LINGUAS :=
+ MOFILES :=
+ dom_binding_idls :=
+ wtf_cppflags:=
+--- a/webkit-1.7.5/Source/WebKit/gtk/po/GNUmakefile.am
++++ b/webkit-1.7.5/Source/WebKit/gtk/po/GNUmakefile.am
+@@ -27,7 +27,15 @@
+ 
+ POFILES += $(shell ls $(srcdir)/Source/WebKit/gtk/po/*.po)
+ 
+-MOFILES += $(shell echo $(POFILES) | tr ' ' '\n' | sed "s,^$(srcdir)/,,g" | sed 's/\.po/.mo/g')
++PO_LINGUAS += $(patsubst $(srcdir)/Source/WebKit/gtk/po/%.po,%,$(POFILES))
++
++USER_LINGUAS += $(filter $(LINGUAS),$(PO_LINGUAS))
++
++USE_LINGUAS += $(shell if test -n "$(USER_LINGUAS)" -o -n "$(LINGUAS)"; then LLINGUAS="$(USER_LINGUAS)"; else LLINGUAS="$(PO_LINGUAS)"; fi; for lang in $$LLINGUAS; do printf "$$lang "; done)
++
++MOFILES += $(USE_LINGUAS:%=Source/WebKit/gtk/po/%.mo)
++
++ALL_MOFILES := $(shell echo $(POFILES) | tr ' ' '\n' | sed "s,^$(srcdir)/,,g" | sed 's/\.po/.mo/g')
+ 
+ .po.mo:
+ 	test -d Source/WebKit/gtk/po/ || mkdir -p Source/WebKit/gtk/po/
+@@ -124,11 +132,11 @@
+ 	$(top_builddir)/stamp-po
+ 
+ MAINTAINERCLEANFILES += \
+-	$(MOFILES) \
++	$(ALL_MOFILES) \
+ 	$(top_builddir)/Source/WebKit/gtk/po/$(DOMAIN).pot
+ 
+ DISTCLEANFILES += \
+-	$(MOFILES) \
++	$(ALL_MOFILES) \
+ 	$(top_builddir)/Source/WebKit/gtk/po/$(DOMAIN).pot
+ 
+ po-install-data-local: all

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.7.90-parallel-make-hack.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.7.90-parallel-make-hack.patch
new file mode 100644
index 0000000..b632ca2
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.7.90-parallel-make-hack.patch
@@ -0,0 +1,21 @@
+Horrible failure of a hack to enable workaround for
+https://bugs.webkit.org/show_bug.cgi?id=79498
+
+--- a/GNUmakefile.am
++++ b/GNUmakefile.am
+@@ -285,6 +285,15 @@
+ all-local: stamp-po
+ 	$(mkdir_p) $(top_builddir)/$(DEPDIR)/DerivedSources
+ 
++# Horrible hack to enable workaround for parallel make failure
++all-built-sources-local: $(BUILT_SOURCES) autotoolsconfig.h
++
++all-ltlibraries-local: GNUmakefile $(LTLIBRARIES)
++
++all-programs-local: GNUmakefile $(PROGRAMS)
++
++all-data-local: GNUmakefile $(DATA)
++
+ # remove built sources and program directories
+ clean-local:
+ 	-rm -rf $(GENPROGRAMS)

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.7.90-test_garbage_collection.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.7.90-test_garbage_collection.patch
new file mode 100644
index 0000000..577c249
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.7.90-test_garbage_collection.patch
@@ -0,0 +1,18 @@
+Garbage collection test fails intermittently if icedtea browser plugin is
+installed.
+
+--- a/Source/WebKit/gtk/tests/testdomdocument.c
++++ b/Source/WebKit/gtk/tests/testdomdocument.c
+@@ -353,12 +353,6 @@
+                test_dom_document_get_links,
+                dom_document_fixture_teardown);
+ 
+-    g_test_add("/webkit/domdocument/test_garbage_collection",
+-               DomDocumentFixture, HTML_DOCUMENT_LINKS,
+-               dom_document_fixture_setup,
+-               test_dom_document_garbage_collection,
+-               dom_document_fixture_teardown);
+-
+     return g_test_run();
+ }
+ 

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.7.5-r200.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.7.90-r200.ebuild
similarity index 62%
rename from net-libs/webkit-gtk/webkit-gtk-1.7.5-r200.ebuild
rename to net-libs/webkit-gtk/webkit-gtk-1.7.90-r200.ebuild
index b4b0f8b..4e44011 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.7.5-r200.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.7.90-r200.ebuild
@@ -5,7 +5,7 @@
 EAPI="4"
 
 # Don't define PYTHON_DEPEND: python only needed at build time
-inherit autotools eutils flag-o-matic eutils python virtualx
+inherit autotools eutils flag-o-matic eutils python virtualx gnome2-utils
 
 MY_P="webkit-${PV}"
 DESCRIPTION="Open source web browser engine"
@@ -18,7 +18,7 @@ SLOT="2"
 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 +gstreamer +introspection +jit spell webgl"
+IUSE="aqua coverage debug +gstreamer +introspection +jit spell +webgl"
 # bug 372493
 REQUIRED_USE="introspection? ( gstreamer )"
 
@@ -30,12 +30,12 @@ RDEPEND="
 	virtual/jpeg
 	>=media-libs/libpng-1.4:0
 	>=x11-libs/cairo-1.10
-	>=dev-libs/glib-2.27.90:2
+	>=dev-libs/glib-2.31.2:2
 	>=x11-libs/gtk+-2.13:2[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/pango-1.21
 	x11-libs/libXrender
 
 	gstreamer? (
@@ -49,15 +49,17 @@ RDEPEND="
 	webgl? ( virtual/opengl )
 "
 DEPEND="${RDEPEND}
+	dev-lang/perl
 	=dev-lang/python-2*
+	sys-devel/bison
 	>=sys-devel/flex-2.5.33
 	sys-devel/gettext
-	virtual/yacc
 	dev-util/gperf
 	dev-util/pkgconfig
 	dev-util/gtk-doc-am
 	test? ( x11-themes/hicolor-icon-theme )
 "
+# Need real bison, not yacc
 
 S="${WORKDIR}/${MY_P}"
 
@@ -72,25 +74,44 @@ src_prepare() {
 
 	# 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
+	# TODO: FAILS TO APPLY!
+	#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
+	use aqua && epatch "${FILESDIR}"/${PN}-1.6.1-darwin-quartz.patch
 
-	# Fix build on Darwin8 (10.4 Tiger)
-	# XXX: Fails to apply
-	#epatch "${FILESDIR}"/${PN}-1.2.5-darwin8.patch
+	# Bug #403049, https://bugs.webkit.org/show_bug.cgi?id=79605
+	epatch "${FILESDIR}/${PN}-1.7.5-linguas.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"
+	# Drop DEPRECATED flags
+	sed -i -e 's:-D[A-Z_]*DISABLE_DEPRECATED:$(NULL):g' GNUmakefile.am || die
 
-	# Required for webgl; https://bugs.webkit.org/show_bug.cgi?id=69085
-	mkdir -p DerivedSources/ANGLE
+	# Don't force -O2
+	sed -i 's/-O2//g' "${S}"/configure.ac || die
+
+	# We need to reset some variables to prevent permissions problems and failures
+	# like https://bugs.webkit.org/show_bug.cgi?id=35471 and bug #323669
+	gnome2_environment_reset
+
+	# https://bugs.webkit.org/show_bug.cgi?id=79498
+	epatch "${FILESDIR}/${PN}-1.7.90-parallel-make-hack.patch"
+
+	# XXX: failing tests
+	# https://bugs.webkit.org/show_bug.cgi?id=79599
+	# https://bugs.webkit.org/show_bug.cgi?id=50744
+	# testkeyevents is interactive
+	# mimehandling test sometimes fails under Xvfb (works fine manually)
+	sed -e '/Programs\/unittests\/testwebview/ d' \
+		-e '/Programs\/unittests\/testwebinspector/ d' \
+		-e '/Programs\/unittests\/testkeyevents/ d' \
+		-e '/Programs\/unittests\/testmimehandling/ d' \
+		-i Source/WebKit/gtk/GNUmakefile.am || die
+	# garbage collection test fails intermittently if icedtea-web is installed
+	epatch "${FILESDIR}/${PN}-1.7.90-test_garbage_collection.patch"
+
+	# Respect CC, otherwise fails on prefix #395875
+	tc-export CC
 
 	# Prevent maintainer mode from being triggered during make
 	AT_M4DIR=Source/autotools eautoreconf
@@ -132,17 +153,21 @@ src_configure() {
 }
 
 src_compile() {
-	# Fix sandbox error with USE="introspection"
-	# https://bugs.webkit.org/show_bug.cgi?id=35471
-	emake XDG_DATA_HOME="${T}/.local"
+	# Horrible failure of a hack to work around parallel make problems,
+	# see https://bugs.webkit.org/show_bug.cgi?id=79498
+	emake all-built-sources-local
+	emake all-ltlibraries-local
+	emake all-programs-local
+	use introspection && emake WebKit-1.0.gir
+	emake all-data-local
+	default
 }
 
 src_test() {
 	unset DISPLAY
 	# Tests need virtualx, bug #294691, bug #310695
-	# Set XDG_DATA_HOME for introspection tools, bug #323669
 	# Parallel tests sometimes fail
-	Xemake -j1 check XDG_DATA_HOME="${T}/.local"
+	Xemake -j1 check
 }
 
 src_install() {
@@ -155,4 +180,8 @@ src_install() {
 
 	# Remove .la files
 	find "${D}" -name '*.la' -exec rm -f '{}' +
+
+	# 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-1.7.5-r300.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.7.90-r300.ebuild
similarity index 65%
rename from net-libs/webkit-gtk/webkit-gtk-1.7.5-r300.ebuild
rename to net-libs/webkit-gtk/webkit-gtk-1.7.90-r300.ebuild
index 8dd0c8c..bf6320a 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.7.5-r300.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.7.90-r300.ebuild
@@ -5,7 +5,7 @@
 EAPI="4"
 
 # Don't define PYTHON_DEPEND: python only needed at build time
-inherit autotools eutils flag-o-matic eutils python virtualx
+inherit autotools eutils flag-o-matic eutils python virtualx gnome2-utils
 
 MY_P="webkit-${PV}"
 DESCRIPTION="Open source web browser engine"
@@ -15,10 +15,9 @@ SRC_URI="http://www.webkitgtk.org/${MY_P}.tar.xz"
 
 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"
+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 webgl"
+IUSE="aqua coverage debug doc +gstreamer +introspection +jit spell +webgl"
 # bug 372493
 REQUIRED_USE="introspection? ( gstreamer )"
 
@@ -32,12 +31,12 @@ RDEPEND="
 	virtual/jpeg
 	>=media-libs/libpng-1.4:0
 	>=x11-libs/cairo-1.10
-	>=dev-libs/glib-2.27.90:2
+	>=dev-libs/glib-2.31.2:2
 	>=x11-libs/gtk+-3.0:3[aqua=,introspection?]
 	>=dev-libs/icu-3.8.1-r1
 	>=net-libs/libsoup-2.37.2.1:2.4[introspection?]
 	dev-db/sqlite:3
-	>=x11-libs/pango-1.12
+	>=x11-libs/pango-1.21
 	x11-libs/libXrender
 
 	gstreamer? (
@@ -51,16 +50,18 @@ RDEPEND="
 	webgl? ( virtual/opengl )
 "
 DEPEND="${RDEPEND}
+	dev-lang/perl
 	=dev-lang/python-2*
+	sys-devel/bison
 	>=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 )
 "
+# Need real bison, not yacc
 
 S="${WORKDIR}/${MY_P}"
 
@@ -75,25 +76,42 @@ src_prepare() {
 
 	# 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
+	# TODO: FAILS TO APPLY!
+	#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
+	use aqua && epatch "${FILESDIR}"/${PN}-1.6.1-darwin-quartz.patch
 
-	# Fix build on Darwin8 (10.4 Tiger)
-	# XXX: Fails to apply
-	#epatch "${FILESDIR}"/${PN}-1.2.5-darwin8.patch
+	# Bug #403049, https://bugs.webkit.org/show_bug.cgi?id=79605
+	epatch "${FILESDIR}/${PN}-1.7.5-linguas.patch"
+
+	# Drop DEPRECATED flags
+	sed -i -e 's:-D[A-Z_]*DISABLE_DEPRECATED:$(NULL):g' GNUmakefile.am || die
 
 	# Don't force -O2
-	sed -i 's/-O2//g' "${S}"/configure.ac
+	sed -i 's/-O2//g' "${S}"/configure.ac || die
+
+	# We need to reset some variables to prevent permissions problems and failures
+	# like https://bugs.webkit.org/show_bug.cgi?id=35471 and bug #323669
+	gnome2_environment_reset
 
-	# Don't build tests if not needed, part of bug #343249
-	# XXX: Fails to apply
-	#epatch "${FILESDIR}/${PN}-1.2.5-tests-build.patch"
+	# https://bugs.webkit.org/show_bug.cgi?id=79498
+	epatch "${FILESDIR}/${PN}-1.7.90-parallel-make-hack.patch"
 
-	# Required for webgl; https://bugs.webkit.org/show_bug.cgi?id=69085
-	mkdir -p DerivedSources/ANGLE
+	# XXX: failing tests
+	# https://bugs.webkit.org/show_bug.cgi?id=50744
+	# testkeyevents is interactive
+	# mimehandling test sometimes fails under Xvfb (works fine manually)
+	sed -e '/Programs\/unittests\/testwebinspector/ d' \
+		-e '/Programs\/unittests\/testkeyevents/ d' \
+		-e '/Programs\/unittests\/testmimehandling/ d' \
+		-i Source/WebKit/gtk/GNUmakefile.am || die
+	# garbage collection test fails intermittently if icedtea-web is installed
+	epatch "${FILESDIR}/${PN}-1.7.90-test_garbage_collection.patch"
+
+	# Respect CC, otherwise fails on prefix #395875
+	tc-export CC
 
 	# Prevent maintainer mode from being triggered during make
 	AT_M4DIR=Source/autotools eautoreconf
@@ -134,17 +152,21 @@ src_configure() {
 }
 
 src_compile() {
-	# Fix sandbox error with USE="introspection"
-	# https://bugs.webkit.org/show_bug.cgi?id=35471
-	emake XDG_DATA_HOME="${T}/.local"
+	# Horrible failure of a hack to work around parallel make problems,
+	# see https://bugs.webkit.org/show_bug.cgi?id=79498
+	emake all-built-sources-local
+	emake all-ltlibraries-local
+	emake all-programs-local
+	use introspection && emake WebKit-3.0.gir
+	emake all-data-local
+	default
 }
 
 src_test() {
 	unset DISPLAY
 	# Tests need virtualx, bug #294691, bug #310695
-	# Set XDG_DATA_HOME for introspection tools, bug #323669
 	# Parallel tests sometimes fail
-	Xemake -j1 check XDG_DATA_HOME="${T}/.local"
+	Xemake -j1 check
 }
 
 src_install() {



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [gentoo-commits] proj/gnome:master commit in: net-libs/webkit-gtk/files/, net-libs/webkit-gtk/
@ 2012-03-04 21:11 Alexandre Restovtsev
  0 siblings, 0 replies; 25+ messages in thread
From: Alexandre Restovtsev @ 2012-03-04 21:11 UTC (permalink / raw
  To: gentoo-commits

commit:     283cead650ab41ccdf2ec0a12ffe3c90b5e0bd76
Author:     Alexandre Rostovtsev <tetromino <AT> gentoo <DOT> org>
AuthorDate: Sun Mar  4 20:59:14 2012 +0000
Commit:     Alexandre Restovtsev <tetromino <AT> gmail <DOT> com>
CommitDate: Sun Mar  4 21:05:24 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=283cead6

net-libs/webkit-gtk: fix build-time segfaults with USE="introspection jit" (bug #404215)

Fix build problems on PaX with USE="introspection jit" (bug #404215,
thanks to Grant and Magnus Granberg) by having g-ir-scanner call a
libtool wrapper that disables secure memory protection on generated gir
dumper binaries.

---
 net-libs/webkit-gtk/files/gir-paxctl-lt-wrapper    |   33 ++++++++++++++++++++
 .../webkit-gtk-1.6.3-paxctl-introspection.patch    |   21 ++++++++++++
 net-libs/webkit-gtk/webkit-gtk-1.7.90-r200.ebuild  |    4 ++
 net-libs/webkit-gtk/webkit-gtk-1.7.90-r300.ebuild  |    4 ++
 4 files changed, 62 insertions(+), 0 deletions(-)

diff --git a/net-libs/webkit-gtk/files/gir-paxctl-lt-wrapper b/net-libs/webkit-gtk/files/gir-paxctl-lt-wrapper
new file mode 100755
index 0000000..b80b6bb
--- /dev/null
+++ b/net-libs/webkit-gtk/files/gir-paxctl-lt-wrapper
@@ -0,0 +1,33 @@
+#!/bin/sh
+# Wrapper for $(LIBTOOL) that performs PaX marking on the dumper binary
+# generated by g-ir-scanner.
+# PaX marking code stolen from pax-utils.eclass
+
+flags=$1; shift
+
+echo ${LIBTOOL} "$@"
+${LIBTOOL} "$@"
+
+retval=$?
+
+files=$(find . -path "*tmp-introspect*/.libs/*")
+
+if type -p paxctl > /dev/null; then
+	echo "PT PaX marking -${flags} ${files}"
+	for f in ${files}; do
+		# First, try modifying the existing PAX_FLAGS header
+		paxctl -q${flags} "${f}" && continue
+		# Second, try stealing the (unused under PaX) PT_GNU_STACK header
+		paxctl -qc${flags} "${f}" && continue
+		# Third, try pulling the base down a page, to create space and
+		# insert a PT_GNU_STACK header (works on ET_EXEC)
+		paxctl -qC${flags} "${f}" && continue
+	done
+elif type -p scanelf > /dev/null; then
+	# Try scanelf, the Gentoo swiss-army knife ELF utility
+	# Currently this sets PT if it can, no option to control what it does.
+	echo "Fallback PaX marking -${flags} ${files}"
+	scanelf -Xxz ${flags} ${files}
+fi
+
+exit ${retval}

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.6.3-paxctl-introspection.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.6.3-paxctl-introspection.patch
new file mode 100644
index 0000000..c34cc40
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.6.3-paxctl-introspection.patch
@@ -0,0 +1,21 @@
+diff -ru a/Source/WebKit/gtk/GNUmakefile.am b/Source/WebKit/gtk/GNUmakefile.am
+--- a/Source/WebKit/gtk/GNUmakefile.am
++++ b/Source/WebKit/gtk/GNUmakefile.am
+@@ -269,7 +269,7 @@
+ WEBKIT_GIRSOURCES += WebKit-@WEBKITGTK_API_VERSION@.gir
+ 
+ $(WEBKIT_GIRSOURCES): $(G_IR_SCANNER) $(JSCORE_GIRSOURCES) libwebkitgtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la
+-	$(AM_V_GEN)$(G_IR_SCANNER) -v --warn-all \
++	$(AM_V_GEN)LIBTOOL="$(LIBTOOL)" $(G_IR_SCANNER) -v --warn-all \
+ 	     --symbol-prefix=webkit \
+ 	     --identifier-prefix=WebKit \
+ 	     --namespace=WebKit \
+@@ -280,7 +280,7 @@
+ 	     --include=Soup-2.4 \
+ 	     --library=webkitgtk-@WEBKITGTK_API_VERSION@ \
+ 	     --library=javascriptcoregtk-@WEBKITGTK_API_VERSION@ \
+-	     --libtool="$(LIBTOOL)" \
++	     --libtool="bash $(top_srcdir)/gir-paxctl-lt-wrapper m" \
+ 	     --pkg=gobject-2.0 \
+ 	     --pkg=gtk+-@GTK_API_VERSION@ \
+ 	     --pkg=libsoup-2.4 \

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.7.90-r200.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.7.90-r200.ebuild
index bc59f8d..f29db1e 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.7.90-r200.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.7.90-r200.ebuild
@@ -92,6 +92,10 @@ src_prepare() {
 	# Don't force -O2
 	sed -i 's/-O2//g' "${S}"/configure.ac || die
 
+	# Build-time segfaults under PaX with USE="introspection jit", bug #404215
+	epatch "${FILESDIR}/${PN}-1.6.3-paxctl-introspection.patch"
+	cp "${FILESDIR}/gir-paxctl-lt-wrapper" "${S}/" || die
+
 	# We need to reset some variables to prevent permissions problems and failures
 	# like https://bugs.webkit.org/show_bug.cgi?id=35471 and bug #323669
 	gnome2_environment_reset

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.7.90-r300.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.7.90-r300.ebuild
index 6a740d7..2d56cb9 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.7.90-r300.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.7.90-r300.ebuild
@@ -94,6 +94,10 @@ src_prepare() {
 	# Don't force -O2
 	sed -i 's/-O2//g' "${S}"/configure.ac || die
 
+	# Build-time segfaults under PaX with USE="introspection jit", bug #404215
+	epatch "${FILESDIR}/${PN}-1.6.3-paxctl-introspection.patch"
+	cp "${FILESDIR}/gir-paxctl-lt-wrapper" "${S}/" || die
+
 	# We need to reset some variables to prevent permissions problems and failures
 	# like https://bugs.webkit.org/show_bug.cgi?id=35471 and bug #323669
 	gnome2_environment_reset



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [gentoo-commits] proj/gnome:master commit in: net-libs/webkit-gtk/files/, net-libs/webkit-gtk/
@ 2012-04-06  2:36 Alexandre Restovtsev
  0 siblings, 0 replies; 25+ messages in thread
From: Alexandre Restovtsev @ 2012-04-06  2:36 UTC (permalink / raw
  To: gentoo-commits

commit:     843751634fc300555c18e04451931d5018c69fc3
Author:     Alexandre Rostovtsev <tetromino <AT> gentoo <DOT> org>
AuthorDate: Fri Apr  6 02:28:01 2012 +0000
Commit:     Alexandre Restovtsev <tetromino <AT> gmail <DOT> com>
CommitDate: Fri Apr  6 02:35:39 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=84375163

net-libs/webkit-gtk: 1.7.92 → 1.8.0

Enable optional webkit2 support, add patch for CVE-2011-3064, add
workaround for paludis --disable-dependency-tracking bug (#406117,
thanks to Maciej Piechotka).

---
 .../webkit-gtk-1.8.0-svgimagebuffer-clip.patch     |  114 ++++++++++++++++++++
 ...92-r200.ebuild => webkit-gtk-1.8.0-r200.ebuild} |    9 ++-
 ...92-r300.ebuild => webkit-gtk-1.8.0-r300.ebuild} |   16 +++-
 3 files changed, 135 insertions(+), 4 deletions(-)

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.8.0-svgimagebuffer-clip.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.8.0-svgimagebuffer-clip.patch
new file mode 100644
index 0000000..e93059f
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.8.0-svgimagebuffer-clip.patch
@@ -0,0 +1,114 @@
+Index: /trunk/Source/WebCore/ChangeLog
+===================================================================
+--- /trunk/Source/WebCore/ChangeLog	(revision 110561)
++++ /trunk/Source/WebCore/ChangeLog	(revision 110563)
+@@ -1,2 +1,31 @@
++2012-03-13  Stephen Chenney  <schenney@chromium.org>
++
++        Crash in WebCore::GraphicsContext::paintingDisabled
++        https://bugs.webkit.org/show_bug.cgi?id=80669
++
++        Reviewed by Nikolas Zimmermann.
++
++        The SVGImageBufferTools::clipToImageBuffer method deletes the clip
++        image when it thinks it is not needed. However, there are cases when
++        it is in fact still needed, particularly when the clip buffer is
++        coming from higher up in the stack where it may be needed again.
++
++        So this patch adds a flag to only allow deletion of the image buffer
++        if it was created at the most recent call site.
++
++        Tests: svg/custom/circular-clip-path-references-crash-expected.svg
++               svg/custom/circular-clip-path-references-crash.svg
++
++        * rendering/svg/RenderSVGResourceClipper.cpp:
++        (WebCore::RenderSVGResourceClipper::applyClippingToContext):
++        * rendering/svg/RenderSVGResourceGradient.cpp:
++        (WebCore::clipToTextMask):
++        * rendering/svg/RenderSVGResourceMasker.cpp:
++        (WebCore::RenderSVGResourceMasker::applyResource):
++        * rendering/svg/SVGImageBufferTools.cpp:
++        (WebCore::SVGImageBufferTools::clipToImageBuffer):
++        * rendering/svg/SVGImageBufferTools.h:
++        (SVGImageBufferTools):
++
+ 2012-03-13  Gavin Peters  <gavinp@chromium.org>
+ 
+Index: /trunk/Source/WebCore/rendering/svg/SVGImageBufferTools.cpp
+===================================================================
+--- /trunk/Source/WebCore/rendering/svg/SVGImageBufferTools.cpp	(revision 109016)
++++ /trunk/Source/WebCore/rendering/svg/SVGImageBufferTools.cpp	(revision 110563)
+@@ -122,5 +122,5 @@
+ }
+ 
+-void SVGImageBufferTools::clipToImageBuffer(GraphicsContext* context, const AffineTransform& absoluteTransform, const FloatRect& targetRect, OwnPtr<ImageBuffer>& imageBuffer)
++void SVGImageBufferTools::clipToImageBuffer(GraphicsContext* context, const AffineTransform& absoluteTransform, const FloatRect& targetRect, OwnPtr<ImageBuffer>& imageBuffer, bool safeToClear)
+ {
+     ASSERT(context);
+@@ -137,5 +137,5 @@
+     // When nesting resources, with objectBoundingBox as content unit types, there's no use in caching the
+     // resulting image buffer as the parent resource already caches the result.
+-    if (!currentContentTransformation().isIdentity())
++    if (safeToClear && !currentContentTransformation().isIdentity())
+         imageBuffer.clear();
+ }
+Index: /trunk/Source/WebCore/rendering/svg/RenderSVGResourceGradient.cpp
+===================================================================
+--- /trunk/Source/WebCore/rendering/svg/RenderSVGResourceGradient.cpp	(revision 106108)
++++ /trunk/Source/WebCore/rendering/svg/RenderSVGResourceGradient.cpp	(revision 110563)
+@@ -99,5 +99,5 @@
+ 
+     targetRect = textRootBlock->repaintRectInLocalCoordinates();
+-    SVGImageBufferTools::clipToImageBuffer(context, absoluteTransform, targetRect, imageBuffer);
++    SVGImageBufferTools::clipToImageBuffer(context, absoluteTransform, targetRect, imageBuffer, false);
+ 
+     AffineTransform matrix;
+Index: /trunk/Source/WebCore/rendering/svg/RenderSVGResourceMasker.cpp
+===================================================================
+--- /trunk/Source/WebCore/rendering/svg/RenderSVGResourceMasker.cpp	(revision 106108)
++++ /trunk/Source/WebCore/rendering/svg/RenderSVGResourceMasker.cpp	(revision 110563)
+@@ -87,5 +87,6 @@
+     ASSERT_UNUSED(resourceMode, resourceMode == ApplyToDefaultMode);
+ 
+-    if (!m_masker.contains(object))
++    bool missingMaskerData = !m_masker.contains(object);
++    if (missingMaskerData)
+         m_masker.set(object, new MaskerData);
+ 
+@@ -117,5 +118,5 @@
+         return false;
+ 
+-    SVGImageBufferTools::clipToImageBuffer(context, absoluteTransform, repaintRect, maskerData->maskImage);
++    SVGImageBufferTools::clipToImageBuffer(context, absoluteTransform, repaintRect, maskerData->maskImage, missingMaskerData);
+     return true;
+ }
+Index: /trunk/Source/WebCore/rendering/svg/SVGImageBufferTools.h
+===================================================================
+--- /trunk/Source/WebCore/rendering/svg/SVGImageBufferTools.h	(revision 106157)
++++ /trunk/Source/WebCore/rendering/svg/SVGImageBufferTools.h	(revision 110563)
+@@ -43,5 +43,5 @@
+ 
+     static void renderSubtreeToImageBuffer(ImageBuffer*, RenderObject*, const AffineTransform&);
+-    static void clipToImageBuffer(GraphicsContext*, const AffineTransform& absoluteTransform, const FloatRect& targetRect, OwnPtr<ImageBuffer>&);
++    static void clipToImageBuffer(GraphicsContext*, const AffineTransform& absoluteTransform, const FloatRect& targetRect, OwnPtr<ImageBuffer>&, bool safeToClear);
+ 
+     static void calculateTransformationToOutermostSVGCoordinateSystem(const RenderObject*, AffineTransform& absoluteTransform);
+Index: /trunk/Source/WebCore/rendering/svg/RenderSVGResourceClipper.cpp
+===================================================================
+--- /trunk/Source/WebCore/rendering/svg/RenderSVGResourceClipper.cpp	(revision 109097)
++++ /trunk/Source/WebCore/rendering/svg/RenderSVGResourceClipper.cpp	(revision 110563)
+@@ -156,5 +156,6 @@
+                                                       const FloatRect& repaintRect, GraphicsContext* context)
+ {
+-    if (!m_clipper.contains(object))
++    bool missingClipperData = !m_clipper.contains(object);
++    if (missingClipperData)
+         m_clipper.set(object, new ClipperData);
+ 
+@@ -202,5 +203,5 @@
+         return false;
+ 
+-    SVGImageBufferTools::clipToImageBuffer(context, absoluteTransform, repaintRect, clipperData->clipMaskImage);
++    SVGImageBufferTools::clipToImageBuffer(context, absoluteTransform, repaintRect, clipperData->clipMaskImage, missingClipperData);
+     return true;
+ }

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.7.92-r200.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.8.0-r200.ebuild
similarity index 94%
rename from net-libs/webkit-gtk/webkit-gtk-1.7.92-r200.ebuild
rename to net-libs/webkit-gtk/webkit-gtk-1.8.0-r200.ebuild
index 2ba8aef..999fe29 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.7.92-r200.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.8.0-r200.ebuild
@@ -10,7 +10,7 @@ inherit autotools eutils flag-o-matic gnome2-utils pax-utils python 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.xz"
+SRC_URI="http://www.webkitgtk.org/releases/${MY_P}.tar.xz"
 #SRC_URI="mirror://gentoo/${P}.tar.xz"
 
 LICENSE="LGPL-2 LGPL-2.1 BSD"
@@ -82,6 +82,9 @@ src_prepare() {
 	# TODO: FAILS TO APPLY!
 	#use sparc && epatch "${FILESDIR}"/${PN}-1.2.3-fix-pool-sparc.patch
 
+	# CVE-2011-3064, https://bugzilla.redhat.com/show_bug.cgi?id=807596
+	epatch "${FILESDIR}/${P}-svgimagebuffer-clip.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.6.1-darwin-quartz.patch
@@ -127,6 +130,10 @@ src_prepare() {
 
 	# Prevent maintainer mode from being triggered during make
 	AT_M4DIR=Source/autotools eautoreconf
+
+	# Ugly hack of a workaround for paludis braindamage, bug #406117
+	# http://paludis.exherbo.org/trac/ticket/1230
+	sed -e '/  --\(en\|dis\)able-dependency-tracking/ d' -i configure || die
 }
 
 src_configure() {

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.7.92-r300.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.8.0-r300.ebuild
similarity index 92%
rename from net-libs/webkit-gtk/webkit-gtk-1.7.92-r300.ebuild
rename to net-libs/webkit-gtk/webkit-gtk-1.8.0-r300.ebuild
index 743f185..7573a17 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.7.92-r300.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.8.0-r300.ebuild
@@ -10,14 +10,14 @@ inherit autotools eutils flag-o-matic gnome2-utils pax-utils python 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.xz"
+SRC_URI="http://www.webkitgtk.org/releases/${MY_P}.tar.xz"
 #SRC_URI="mirror://gentoo/${P}.tar.xz"
 
 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 +geoloc +gstreamer +introspection +jit spell +webgl"
+IUSE="aqua coverage debug doc +geoloc +gstreamer +introspection +jit spell +webgl webkit2"
 # bug 372493
 REQUIRED_USE="introspection? ( gstreamer )"
 
@@ -50,6 +50,8 @@ RDEPEND="
 	spell? ( >=app-text/enchant-0.22 )
 
 	webgl? ( virtual/opengl )
+
+	webkit2? ( >=x11-libs/gtk+-2.13:2 )
 "
 # paxctl needed for bug #407085
 DEPEND="${RDEPEND}
@@ -66,6 +68,7 @@ DEPEND="${RDEPEND}
 	test? (
 		x11-themes/hicolor-icon-theme
 		jit? ( sys-apps/paxctl ) )
+	webkit2? ( app-accessibility/at-spi2-core )
 "
 # Need real bison, not yacc
 
@@ -85,6 +88,9 @@ src_prepare() {
 	# TODO: FAILS TO APPLY!
 	#use sparc && epatch "${FILESDIR}"/${PN}-1.2.3-fix-pool-sparc.patch
 
+	# CVE-2011-3064, https://bugzilla.redhat.com/show_bug.cgi?id=807596
+	epatch "${FILESDIR}/${P}-svgimagebuffer-clip.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.6.1-darwin-quartz.patch
@@ -130,6 +136,10 @@ src_prepare() {
 
 	# Prevent maintainer mode from being triggered during make
 	AT_M4DIR=Source/autotools eautoreconf
+
+	# Ugly hack of a workaround for paludis braindamage, bug #406117
+	# http://paludis.exherbo.org/trac/ticket/1230
+	sed -e '/  --\(en\|dis\)able-dependency-tracking/ d' -i configure || die
 }
 
 src_configure() {
@@ -157,9 +167,9 @@ src_configure() {
 		$(use_enable gstreamer video)
 		$(use_enable jit)
 		$(use_enable webgl)
+		$(use_enable webkit2)
 		--enable-web-sockets
 		--with-gtk=3.0
-		--disable-webkit2
 		--enable-dependency-tracking
 		$(use aqua && echo "--with-font-backend=pango --with-target=quartz")"
 		# Aqua support in gtk3 is untested



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [gentoo-commits] proj/gnome:master commit in: net-libs/webkit-gtk/files/, net-libs/webkit-gtk/
@ 2012-04-14  6:10 Alexandre Restovtsev
  0 siblings, 0 replies; 25+ messages in thread
From: Alexandre Restovtsev @ 2012-04-14  6:10 UTC (permalink / raw
  To: gentoo-commits

commit:     965445f35a491a99cab32234646a616aa9878a9a
Author:     Alexandre Rostovtsev <tetromino <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 14 04:11:12 2012 +0000
Commit:     Alexandre Restovtsev <tetromino <AT> gmail <DOT> com>
CommitDate: Sat Apr 14 04:11:12 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=965445f3

net-libs/webkit-gtk: moved to gx86

---
 net-libs/webkit-gtk/files/gir-paxctl-lt-wrapper    |   33 ---
 .../files/webkit-gtk-1.2.3-fix-pool-sparc.patch    |   65 ------
 .../files/webkit-gtk-1.6.1-darwin-quartz.patch     |   67 ------
 .../webkit-gtk-1.6.3-paxctl-introspection.patch    |   21 --
 .../files/webkit-gtk-1.7.5-linguas.patch           |   47 -----
 .../webkit-gtk-1.7.90-parallel-make-hack.patch     |   21 --
 ...webkit-gtk-1.7.90-test_garbage_collection.patch |   18 --
 .../webkit-gtk-1.8.0-svgimagebuffer-clip.patch     |  114 ----------
 net-libs/webkit-gtk/webkit-gtk-1.8.0-r200.ebuild   |  215 -------------------
 net-libs/webkit-gtk/webkit-gtk-1.8.0-r300.ebuild   |  217 --------------------
 10 files changed, 0 insertions(+), 818 deletions(-)

diff --git a/net-libs/webkit-gtk/files/gir-paxctl-lt-wrapper b/net-libs/webkit-gtk/files/gir-paxctl-lt-wrapper
deleted file mode 100755
index d4f270c..0000000
--- a/net-libs/webkit-gtk/files/gir-paxctl-lt-wrapper
+++ /dev/null
@@ -1,33 +0,0 @@
-#!/bin/bash
-# Wrapper for $(LIBTOOL) that performs PaX marking on the dumper binary
-# generated by g-ir-scanner.
-# PaX marking code stolen from pax-utils.eclass
-
-flags=${1//-}; shift
-
-echo ${LIBTOOL} "$@"
-${LIBTOOL} "$@"
-
-retval=$?
-
-files=$(find . -path "*tmp-introspect*/.libs/*")
-
-if type -p paxctl > /dev/null; then
-	echo "PT PaX marking -${flags} ${files}"
-	for f in ${files}; do
-		# First, try modifying the existing PAX_FLAGS header
-		paxctl -q${flags} "${f}" && continue
-		# Second, try stealing the (unused under PaX) PT_GNU_STACK header
-		paxctl -qc${flags} "${f}" && continue
-		# Third, try pulling the base down a page, to create space and
-		# insert a PT_GNU_STACK header (works on ET_EXEC)
-		paxctl -qC${flags} "${f}" && continue
-	done
-elif type -p scanelf > /dev/null; then
-	# Try scanelf, the Gentoo swiss-army knife ELF utility
-	# Currently this sets PT if it can, no option to control what it does.
-	echo "Fallback PaX marking -${flags} ${files}"
-	scanelf -Xxz ${flags} ${files}
-fi
-
-exit ${retval}

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
deleted file mode 100644
index 3b1c5c4..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-1.2.3-fix-pool-sparc.patch
+++ /dev/null
@@ -1,65 +0,0 @@
-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.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-1.6.3-paxctl-introspection.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.6.3-paxctl-introspection.patch
deleted file mode 100644
index c34cc40..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-1.6.3-paxctl-introspection.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff -ru a/Source/WebKit/gtk/GNUmakefile.am b/Source/WebKit/gtk/GNUmakefile.am
---- a/Source/WebKit/gtk/GNUmakefile.am
-+++ b/Source/WebKit/gtk/GNUmakefile.am
-@@ -269,7 +269,7 @@
- WEBKIT_GIRSOURCES += WebKit-@WEBKITGTK_API_VERSION@.gir
- 
- $(WEBKIT_GIRSOURCES): $(G_IR_SCANNER) $(JSCORE_GIRSOURCES) libwebkitgtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la
--	$(AM_V_GEN)$(G_IR_SCANNER) -v --warn-all \
-+	$(AM_V_GEN)LIBTOOL="$(LIBTOOL)" $(G_IR_SCANNER) -v --warn-all \
- 	     --symbol-prefix=webkit \
- 	     --identifier-prefix=WebKit \
- 	     --namespace=WebKit \
-@@ -280,7 +280,7 @@
- 	     --include=Soup-2.4 \
- 	     --library=webkitgtk-@WEBKITGTK_API_VERSION@ \
- 	     --library=javascriptcoregtk-@WEBKITGTK_API_VERSION@ \
--	     --libtool="$(LIBTOOL)" \
-+	     --libtool="bash $(top_srcdir)/gir-paxctl-lt-wrapper m" \
- 	     --pkg=gobject-2.0 \
- 	     --pkg=gtk+-@GTK_API_VERSION@ \
- 	     --pkg=libsoup-2.4 \

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.7.5-linguas.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.7.5-linguas.patch
deleted file mode 100644
index df14a5c..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-1.7.5-linguas.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-Respect intltool's LINGUAS variable for building translations.
-
---- a/webkit-1.7.5/GNUmakefile.am
-+++ b/webkit-1.7.5/GNUmakefile.am
-@@ -54,6 +54,9 @@
- IDL_BINDINGS :=
- TEST_PROGS :=
- POFILES :=
-+PO_LINGUAS :=
-+USER_LINGUAS :=
-+USE_LINGUAS :=
- MOFILES :=
- dom_binding_idls :=
- wtf_cppflags:=
---- a/webkit-1.7.5/Source/WebKit/gtk/po/GNUmakefile.am
-+++ b/webkit-1.7.5/Source/WebKit/gtk/po/GNUmakefile.am
-@@ -27,7 +27,15 @@
- 
- POFILES += $(shell ls $(srcdir)/Source/WebKit/gtk/po/*.po)
- 
--MOFILES += $(shell echo $(POFILES) | tr ' ' '\n' | sed "s,^$(srcdir)/,,g" | sed 's/\.po/.mo/g')
-+PO_LINGUAS += $(patsubst $(srcdir)/Source/WebKit/gtk/po/%.po,%,$(POFILES))
-+
-+USER_LINGUAS += $(filter $(LINGUAS),$(PO_LINGUAS))
-+
-+USE_LINGUAS += $(shell if test -n "$(USER_LINGUAS)" -o -n "$(LINGUAS)"; then LLINGUAS="$(USER_LINGUAS)"; else LLINGUAS="$(PO_LINGUAS)"; fi; for lang in $$LLINGUAS; do printf "$$lang "; done)
-+
-+MOFILES += $(USE_LINGUAS:%=Source/WebKit/gtk/po/%.mo)
-+
-+ALL_MOFILES := $(shell echo $(POFILES) | tr ' ' '\n' | sed "s,^$(srcdir)/,,g" | sed 's/\.po/.mo/g')
- 
- .po.mo:
- 	test -d Source/WebKit/gtk/po/ || mkdir -p Source/WebKit/gtk/po/
-@@ -124,11 +132,11 @@
- 	$(top_builddir)/stamp-po
- 
- MAINTAINERCLEANFILES += \
--	$(MOFILES) \
-+	$(ALL_MOFILES) \
- 	$(top_builddir)/Source/WebKit/gtk/po/$(DOMAIN).pot
- 
- DISTCLEANFILES += \
--	$(MOFILES) \
-+	$(ALL_MOFILES) \
- 	$(top_builddir)/Source/WebKit/gtk/po/$(DOMAIN).pot
- 
- po-install-data-local: all

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.7.90-parallel-make-hack.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.7.90-parallel-make-hack.patch
deleted file mode 100644
index b632ca2..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-1.7.90-parallel-make-hack.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-Horrible failure of a hack to enable workaround for
-https://bugs.webkit.org/show_bug.cgi?id=79498
-
---- a/GNUmakefile.am
-+++ b/GNUmakefile.am
-@@ -285,6 +285,15 @@
- all-local: stamp-po
- 	$(mkdir_p) $(top_builddir)/$(DEPDIR)/DerivedSources
- 
-+# Horrible hack to enable workaround for parallel make failure
-+all-built-sources-local: $(BUILT_SOURCES) autotoolsconfig.h
-+
-+all-ltlibraries-local: GNUmakefile $(LTLIBRARIES)
-+
-+all-programs-local: GNUmakefile $(PROGRAMS)
-+
-+all-data-local: GNUmakefile $(DATA)
-+
- # remove built sources and program directories
- clean-local:
- 	-rm -rf $(GENPROGRAMS)

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.7.90-test_garbage_collection.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.7.90-test_garbage_collection.patch
deleted file mode 100644
index 577c249..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-1.7.90-test_garbage_collection.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Garbage collection test fails intermittently if icedtea browser plugin is
-installed.
-
---- a/Source/WebKit/gtk/tests/testdomdocument.c
-+++ b/Source/WebKit/gtk/tests/testdomdocument.c
-@@ -353,12 +353,6 @@
-                test_dom_document_get_links,
-                dom_document_fixture_teardown);
- 
--    g_test_add("/webkit/domdocument/test_garbage_collection",
--               DomDocumentFixture, HTML_DOCUMENT_LINKS,
--               dom_document_fixture_setup,
--               test_dom_document_garbage_collection,
--               dom_document_fixture_teardown);
--
-     return g_test_run();
- }
- 

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.8.0-svgimagebuffer-clip.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.8.0-svgimagebuffer-clip.patch
deleted file mode 100644
index e93059f..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-1.8.0-svgimagebuffer-clip.patch
+++ /dev/null
@@ -1,114 +0,0 @@
-Index: /trunk/Source/WebCore/ChangeLog
-===================================================================
---- /trunk/Source/WebCore/ChangeLog	(revision 110561)
-+++ /trunk/Source/WebCore/ChangeLog	(revision 110563)
-@@ -1,2 +1,31 @@
-+2012-03-13  Stephen Chenney  <schenney@chromium.org>
-+
-+        Crash in WebCore::GraphicsContext::paintingDisabled
-+        https://bugs.webkit.org/show_bug.cgi?id=80669
-+
-+        Reviewed by Nikolas Zimmermann.
-+
-+        The SVGImageBufferTools::clipToImageBuffer method deletes the clip
-+        image when it thinks it is not needed. However, there are cases when
-+        it is in fact still needed, particularly when the clip buffer is
-+        coming from higher up in the stack where it may be needed again.
-+
-+        So this patch adds a flag to only allow deletion of the image buffer
-+        if it was created at the most recent call site.
-+
-+        Tests: svg/custom/circular-clip-path-references-crash-expected.svg
-+               svg/custom/circular-clip-path-references-crash.svg
-+
-+        * rendering/svg/RenderSVGResourceClipper.cpp:
-+        (WebCore::RenderSVGResourceClipper::applyClippingToContext):
-+        * rendering/svg/RenderSVGResourceGradient.cpp:
-+        (WebCore::clipToTextMask):
-+        * rendering/svg/RenderSVGResourceMasker.cpp:
-+        (WebCore::RenderSVGResourceMasker::applyResource):
-+        * rendering/svg/SVGImageBufferTools.cpp:
-+        (WebCore::SVGImageBufferTools::clipToImageBuffer):
-+        * rendering/svg/SVGImageBufferTools.h:
-+        (SVGImageBufferTools):
-+
- 2012-03-13  Gavin Peters  <gavinp@chromium.org>
- 
-Index: /trunk/Source/WebCore/rendering/svg/SVGImageBufferTools.cpp
-===================================================================
---- /trunk/Source/WebCore/rendering/svg/SVGImageBufferTools.cpp	(revision 109016)
-+++ /trunk/Source/WebCore/rendering/svg/SVGImageBufferTools.cpp	(revision 110563)
-@@ -122,5 +122,5 @@
- }
- 
--void SVGImageBufferTools::clipToImageBuffer(GraphicsContext* context, const AffineTransform& absoluteTransform, const FloatRect& targetRect, OwnPtr<ImageBuffer>& imageBuffer)
-+void SVGImageBufferTools::clipToImageBuffer(GraphicsContext* context, const AffineTransform& absoluteTransform, const FloatRect& targetRect, OwnPtr<ImageBuffer>& imageBuffer, bool safeToClear)
- {
-     ASSERT(context);
-@@ -137,5 +137,5 @@
-     // When nesting resources, with objectBoundingBox as content unit types, there's no use in caching the
-     // resulting image buffer as the parent resource already caches the result.
--    if (!currentContentTransformation().isIdentity())
-+    if (safeToClear && !currentContentTransformation().isIdentity())
-         imageBuffer.clear();
- }
-Index: /trunk/Source/WebCore/rendering/svg/RenderSVGResourceGradient.cpp
-===================================================================
---- /trunk/Source/WebCore/rendering/svg/RenderSVGResourceGradient.cpp	(revision 106108)
-+++ /trunk/Source/WebCore/rendering/svg/RenderSVGResourceGradient.cpp	(revision 110563)
-@@ -99,5 +99,5 @@
- 
-     targetRect = textRootBlock->repaintRectInLocalCoordinates();
--    SVGImageBufferTools::clipToImageBuffer(context, absoluteTransform, targetRect, imageBuffer);
-+    SVGImageBufferTools::clipToImageBuffer(context, absoluteTransform, targetRect, imageBuffer, false);
- 
-     AffineTransform matrix;
-Index: /trunk/Source/WebCore/rendering/svg/RenderSVGResourceMasker.cpp
-===================================================================
---- /trunk/Source/WebCore/rendering/svg/RenderSVGResourceMasker.cpp	(revision 106108)
-+++ /trunk/Source/WebCore/rendering/svg/RenderSVGResourceMasker.cpp	(revision 110563)
-@@ -87,5 +87,6 @@
-     ASSERT_UNUSED(resourceMode, resourceMode == ApplyToDefaultMode);
- 
--    if (!m_masker.contains(object))
-+    bool missingMaskerData = !m_masker.contains(object);
-+    if (missingMaskerData)
-         m_masker.set(object, new MaskerData);
- 
-@@ -117,5 +118,5 @@
-         return false;
- 
--    SVGImageBufferTools::clipToImageBuffer(context, absoluteTransform, repaintRect, maskerData->maskImage);
-+    SVGImageBufferTools::clipToImageBuffer(context, absoluteTransform, repaintRect, maskerData->maskImage, missingMaskerData);
-     return true;
- }
-Index: /trunk/Source/WebCore/rendering/svg/SVGImageBufferTools.h
-===================================================================
---- /trunk/Source/WebCore/rendering/svg/SVGImageBufferTools.h	(revision 106157)
-+++ /trunk/Source/WebCore/rendering/svg/SVGImageBufferTools.h	(revision 110563)
-@@ -43,5 +43,5 @@
- 
-     static void renderSubtreeToImageBuffer(ImageBuffer*, RenderObject*, const AffineTransform&);
--    static void clipToImageBuffer(GraphicsContext*, const AffineTransform& absoluteTransform, const FloatRect& targetRect, OwnPtr<ImageBuffer>&);
-+    static void clipToImageBuffer(GraphicsContext*, const AffineTransform& absoluteTransform, const FloatRect& targetRect, OwnPtr<ImageBuffer>&, bool safeToClear);
- 
-     static void calculateTransformationToOutermostSVGCoordinateSystem(const RenderObject*, AffineTransform& absoluteTransform);
-Index: /trunk/Source/WebCore/rendering/svg/RenderSVGResourceClipper.cpp
-===================================================================
---- /trunk/Source/WebCore/rendering/svg/RenderSVGResourceClipper.cpp	(revision 109097)
-+++ /trunk/Source/WebCore/rendering/svg/RenderSVGResourceClipper.cpp	(revision 110563)
-@@ -156,5 +156,6 @@
-                                                       const FloatRect& repaintRect, GraphicsContext* context)
- {
--    if (!m_clipper.contains(object))
-+    bool missingClipperData = !m_clipper.contains(object);
-+    if (missingClipperData)
-         m_clipper.set(object, new ClipperData);
- 
-@@ -202,5 +203,5 @@
-         return false;
- 
--    SVGImageBufferTools::clipToImageBuffer(context, absoluteTransform, repaintRect, clipperData->clipMaskImage);
-+    SVGImageBufferTools::clipToImageBuffer(context, absoluteTransform, repaintRect, clipperData->clipMaskImage, missingClipperData);
-     return true;
- }

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.8.0-r200.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.8.0-r200.ebuild
deleted file mode 100644
index 999fe29..0000000
--- a/net-libs/webkit-gtk/webkit-gtk-1.8.0-r200.ebuild
+++ /dev/null
@@ -1,215 +0,0 @@
-# Copyright 1999-2011 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-libs/webkit-gtk/webkit-gtk-1.6.1-r200.ebuild,v 1.1 2011/09/30 13:52:33 nirbheek Exp $
-
-EAPI="4"
-
-# Don't define PYTHON_DEPEND: python only needed at build time
-inherit autotools eutils flag-o-matic gnome2-utils pax-utils python virtualx
-
-MY_P="webkit-${PV}"
-DESCRIPTION="Open source web browser engine"
-HOMEPAGE="http://www.webkitgtk.org/"
-SRC_URI="http://www.webkitgtk.org/releases/${MY_P}.tar.xz"
-#SRC_URI="mirror://gentoo/${P}.tar.xz"
-
-LICENSE="LGPL-2 LGPL-2.1 BSD"
-SLOT="2"
-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 +geoloc +gstreamer +introspection +jit spell +webgl"
-# bug 372493
-REQUIRED_USE="introspection? ( gstreamer )"
-
-# use sqlite, svg by default
-# dependency on >=x11-libs/gtk+-2.13:2 for gail
-RDEPEND="
-	dev-libs/libxml2:2
-	dev-libs/libxslt
-	virtual/jpeg
-	>=media-libs/libpng-1.4:0
-	>=x11-libs/cairo-1.10
-	>=dev-libs/glib-2.31.2:2
-	>=x11-libs/gtk+-2.13:2[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.21
-	x11-libs/libXrender
-
-	geoloc? ( app-misc/geoclue )
-
-	gstreamer? (
-		media-libs/gstreamer:0.10
-		>=media-libs/gst-plugins-base-0.10.30:0.10 )
-
-	introspection? ( >=dev-libs/gobject-introspection-0.9.5 )
-
-	spell? ( >=app-text/enchant-0.22 )
-
-	webgl? ( virtual/opengl )
-"
-# paxctl needed for bug #407085
-DEPEND="${RDEPEND}
-	dev-lang/perl
-	=dev-lang/python-2*
-	sys-devel/bison
-	>=sys-devel/flex-2.5.33
-	sys-devel/gettext
-	dev-util/gperf
-	dev-util/pkgconfig
-	dev-util/gtk-doc-am
-	introspection? ( jit? ( sys-apps/paxctl ) )
-	test? ( x11-themes/hicolor-icon-theme
-		jit? ( sys-apps/paxctl ) )
-"
-# Need real bison, not yacc
-
-S="${WORKDIR}/${MY_P}"
-
-pkg_setup() {
-	# Needed for CodeGeneratorInspector.py
-	python_set_active_version 2
-	python_pkg_setup
-}
-
-src_prepare() {
-	DOCS="ChangeLog NEWS" # other ChangeLog files handled by src_install
-
-	# FIXME: Fix unaligned accesses on ARM, IA64 and SPARC
-	# https://bugs.webkit.org/show_bug.cgi?id=19775
-	# TODO: FAILS TO APPLY!
-	#use sparc && epatch "${FILESDIR}"/${PN}-1.2.3-fix-pool-sparc.patch
-
-	# CVE-2011-3064, https://bugzilla.redhat.com/show_bug.cgi?id=807596
-	epatch "${FILESDIR}/${P}-svgimagebuffer-clip.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.6.1-darwin-quartz.patch
-
-	# Bug #403049, https://bugs.webkit.org/show_bug.cgi?id=79605
-	epatch "${FILESDIR}/${PN}-1.7.5-linguas.patch"
-
-	# Drop DEPRECATED flags
-	sed -i -e 's:-D[A-Z_]*DISABLE_DEPRECATED:$(NULL):g' GNUmakefile.am || die
-
-	# Don't force -O2
-	sed -i 's/-O2//g' "${S}"/configure.ac || die
-
-	# Build-time segfaults under PaX with USE="introspection jit", bug #404215
-	if use introspection && use jit; then
-		epatch "${FILESDIR}/${PN}-1.6.3-paxctl-introspection.patch"
-		cp "${FILESDIR}/gir-paxctl-lt-wrapper" "${S}/" || die
-	fi
-
-	# We need to reset some variables to prevent permissions problems and failures
-	# like https://bugs.webkit.org/show_bug.cgi?id=35471 and bug #323669
-	gnome2_environment_reset
-
-	# https://bugs.webkit.org/show_bug.cgi?id=79498
-	epatch "${FILESDIR}/${PN}-1.7.90-parallel-make-hack.patch"
-
-	# XXX: failing tests
-	# https://bugs.webkit.org/show_bug.cgi?id=50744
-	# testkeyevents is interactive
-	# mimehandling test sometimes fails under Xvfb (works fine manually)
-	# datasource test needs a network connection and intermittently fails with
-	#  icedtea-web
-	sed -e '/Programs\/unittests\/testwebinspector/ d' \
-		-e '/Programs\/unittests\/testkeyevents/ d' \
-		-e '/Programs\/unittests\/testmimehandling/ d' \
-		-e '/Programs\/unittests\/testwebdatasource/ d' \
-		-i Source/WebKit/gtk/GNUmakefile.am || die
-	# garbage collection test fails intermittently if icedtea-web is installed
-	epatch "${FILESDIR}/${PN}-1.7.90-test_garbage_collection.patch"
-
-	# Respect CC, otherwise fails on prefix #395875
-	tc-export CC
-
-	# Prevent maintainer mode from being triggered during make
-	AT_M4DIR=Source/autotools eautoreconf
-
-	# Ugly hack of a workaround for paludis braindamage, bug #406117
-	# http://paludis.exherbo.org/trac/ticket/1230
-	sed -e '/  --\(en\|dis\)able-dependency-tracking/ d' -i configure || die
-}
-
-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 "-mvis"
-
-	# https://bugs.webkit.org/show_bug.cgi?id=42070 , #301634
-	use ppc64 && append-flags "-mminimal-toc"
-
-	local myconf
-
-	# XXX: Check Web Audio support
-	# XXX: dependency-tracking is required so parallel builds won't fail
-	# WebKit2 can only be built with gtk3
-	# API documentation (gtk-doc) is built in webkit-gtk:3, always disable here
-	myconf="
-		$(use_enable coverage)
-		$(use_enable debug)
-		$(use_enable debug debug-features)
-		$(use_enable geoloc geolocation)
-		$(use_enable spell spellcheck)
-		$(use_enable introspection)
-		$(use_enable gstreamer video)
-		$(use_enable jit)
-		$(use_enable webgl)
-		--enable-web-sockets
-		--with-gtk=2.0
-		--disable-gtk-doc
-		--disable-webkit2
-		--enable-dependency-tracking
-		$(use aqua && echo "--with-font-backend=pango --with-target=quartz")"
-
-	econf ${myconf}
-}
-
-src_compile() {
-	# Horrible failure of a hack to work around parallel make problems,
-	# see https://bugs.webkit.org/show_bug.cgi?id=79498
-	emake -j1 all-built-sources-local
-	emake all-ltlibraries-local
-	emake all-programs-local
-	use introspection && emake WebKit-1.0.gir
-	emake all-data-local
-	default
-}
-
-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/unittests/test*) \
-		Programs/unittests/.libs/test*
-	unset DISPLAY
-	# Tests need virtualx, bug #294691, bug #310695
-	# Parallel tests sometimes fail
-	Xemake -j1 check
-}
-
-src_install() {
-	default
-
-	newdoc Source/WebKit/gtk/ChangeLog ChangeLog.gtk
-	newdoc Source/WebKit/gtk/po/ChangeLog ChangeLog.gtk-po
-	newdoc Source/JavaScriptCore/ChangeLog ChangeLog.JavaScriptCore
-	newdoc Source/WebCore/ChangeLog ChangeLog.WebCore
-
-	# Remove .la files
-	find "${D}" -name '*.la' -exec rm -f '{}' +
-
-	# 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-1.8.0-r300.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.8.0-r300.ebuild
deleted file mode 100644
index 7573a17..0000000
--- a/net-libs/webkit-gtk/webkit-gtk-1.8.0-r300.ebuild
+++ /dev/null
@@ -1,217 +0,0 @@
-# Copyright 1999-2011 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-libs/webkit-gtk/webkit-gtk-1.6.1-r300.ebuild,v 1.1 2011/09/30 13:52:33 nirbheek Exp $
-
-EAPI="4"
-
-# Don't define PYTHON_DEPEND: python only needed at build time
-inherit autotools eutils flag-o-matic gnome2-utils pax-utils python virtualx
-
-MY_P="webkit-${PV}"
-DESCRIPTION="Open source web browser engine"
-HOMEPAGE="http://www.webkitgtk.org/"
-SRC_URI="http://www.webkitgtk.org/releases/${MY_P}.tar.xz"
-#SRC_URI="mirror://gentoo/${P}.tar.xz"
-
-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 +geoloc +gstreamer +introspection +jit spell +webgl webkit2"
-# 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
-# gtk2 is needed for plugin process support
-RDEPEND="
-	dev-libs/libxml2:2
-	dev-libs/libxslt
-	virtual/jpeg
-	>=media-libs/libpng-1.4:0
-	>=x11-libs/cairo-1.10
-	>=dev-libs/glib-2.31.2:2
-	>=x11-libs/gtk+-3.0:3[aqua=,introspection?]
-	>=dev-libs/icu-3.8.1-r1
-	>=net-libs/libsoup-2.37.2.1:2.4[introspection?]
-	dev-db/sqlite:3
-	>=x11-libs/pango-1.21
-	x11-libs/libXrender
-
-	geoloc? ( app-misc/geoclue )
-
-	gstreamer? (
-		media-libs/gstreamer:0.10
-		>=media-libs/gst-plugins-base-0.10.30:0.10 )
-
-	introspection? ( >=dev-libs/gobject-introspection-0.9.5 )
-
-	spell? ( >=app-text/enchant-0.22 )
-
-	webgl? ( virtual/opengl )
-
-	webkit2? ( >=x11-libs/gtk+-2.13:2 )
-"
-# paxctl needed for bug #407085
-DEPEND="${RDEPEND}
-	dev-lang/perl
-	=dev-lang/python-2*
-	sys-devel/bison
-	>=sys-devel/flex-2.5.33
-	sys-devel/gettext
-	dev-util/gperf
-	dev-util/pkgconfig
-	dev-util/gtk-doc-am
-	doc? ( >=dev-util/gtk-doc-1.10 )
-	introspection? ( jit? ( sys-apps/paxctl ) )
-	test? (
-		x11-themes/hicolor-icon-theme
-		jit? ( sys-apps/paxctl ) )
-	webkit2? ( app-accessibility/at-spi2-core )
-"
-# Need real bison, not yacc
-
-S="${WORKDIR}/${MY_P}"
-
-pkg_setup() {
-	# Needed for CodeGeneratorInspector.py
-	python_set_active_version 2
-	python_pkg_setup
-}
-
-src_prepare() {
-	DOCS="ChangeLog NEWS" # other ChangeLog files handled by src_install
-
-	# FIXME: Fix unaligned accesses on ARM, IA64 and SPARC
-	# https://bugs.webkit.org/show_bug.cgi?id=19775
-	# TODO: FAILS TO APPLY!
-	#use sparc && epatch "${FILESDIR}"/${PN}-1.2.3-fix-pool-sparc.patch
-
-	# CVE-2011-3064, https://bugzilla.redhat.com/show_bug.cgi?id=807596
-	epatch "${FILESDIR}/${P}-svgimagebuffer-clip.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.6.1-darwin-quartz.patch
-
-	# Bug #403049, https://bugs.webkit.org/show_bug.cgi?id=79605
-	epatch "${FILESDIR}/${PN}-1.7.5-linguas.patch"
-
-	# Drop DEPRECATED flags
-	sed -i -e 's:-D[A-Z_]*DISABLE_DEPRECATED:$(NULL):g' GNUmakefile.am || die
-
-	# Don't force -O2
-	sed -i 's/-O2//g' "${S}"/configure.ac || die
-
-	# Build-time segfaults under PaX with USE="introspection jit", bug #404215
-	if use introspection && use jit; then
-		epatch "${FILESDIR}/${PN}-1.6.3-paxctl-introspection.patch"
-		cp "${FILESDIR}/gir-paxctl-lt-wrapper" "${S}/" || die
-	fi
-
-	# We need to reset some variables to prevent permissions problems and failures
-	# like https://bugs.webkit.org/show_bug.cgi?id=35471 and bug #323669
-	gnome2_environment_reset
-
-	# https://bugs.webkit.org/show_bug.cgi?id=79498
-	epatch "${FILESDIR}/${PN}-1.7.90-parallel-make-hack.patch"
-
-	# XXX: failing tests
-	# https://bugs.webkit.org/show_bug.cgi?id=50744
-	# testkeyevents is interactive
-	# mimehandling test sometimes fails under Xvfb (works fine manually)
-	# datasource test needs a network connection and intermittently fails with
-	#  icedtea-web
-	sed -e '/Programs\/unittests\/testwebinspector/ d' \
-		-e '/Programs\/unittests\/testkeyevents/ d' \
-		-e '/Programs\/unittests\/testmimehandling/ d' \
-		-e '/Programs\/unittests\/testwebdatasource/ d' \
-		-i Source/WebKit/gtk/GNUmakefile.am || die
-	# garbage collection test fails intermittently if icedtea-web is installed
-	epatch "${FILESDIR}/${PN}-1.7.90-test_garbage_collection.patch"
-
-	# Respect CC, otherwise fails on prefix #395875
-	tc-export CC
-
-	# Prevent maintainer mode from being triggered during make
-	AT_M4DIR=Source/autotools eautoreconf
-
-	# Ugly hack of a workaround for paludis braindamage, bug #406117
-	# http://paludis.exherbo.org/trac/ticket/1230
-	sed -e '/  --\(en\|dis\)able-dependency-tracking/ d' -i configure || die
-}
-
-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 "-mvis"
-
-	# https://bugs.webkit.org/show_bug.cgi?id=42070 , #301634
-	use ppc64 && append-flags "-mminimal-toc"
-
-	local myconf
-
-	# XXX: Check Web Audio support
-	# XXX: dependency-tracking is required so parallel builds won't fail
-	myconf="
-		$(use_enable coverage)
-		$(use_enable debug)
-		$(use_enable debug debug-features)
-		$(use_enable doc gtk-doc)
-		$(use_enable geoloc geolocation)
-		$(use_enable spell spellcheck)
-		$(use_enable introspection)
-		$(use_enable gstreamer video)
-		$(use_enable jit)
-		$(use_enable webgl)
-		$(use_enable webkit2)
-		--enable-web-sockets
-		--with-gtk=3.0
-		--enable-dependency-tracking
-		$(use aqua && echo "--with-font-backend=pango --with-target=quartz")"
-		# Aqua support in gtk3 is untested
-
-	econf ${myconf}
-}
-
-src_compile() {
-	# Horrible failure of a hack to work around parallel make problems,
-	# see https://bugs.webkit.org/show_bug.cgi?id=79498
-	emake -j1 all-built-sources-local
-	emake all-ltlibraries-local
-	emake all-programs-local
-	use introspection && emake WebKit-3.0.gir
-	emake all-data-local
-	default
-}
-
-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/unittests/test*) \
-		Programs/unittests/.libs/test*
-	unset DISPLAY
-	# Tests need virtualx, bug #294691, bug #310695
-	# Parallel tests sometimes fail
-	Xemake -j1 check
-}
-
-src_install() {
-	default
-
-	newdoc Source/WebKit/gtk/ChangeLog ChangeLog.gtk
-	newdoc Source/WebKit/gtk/po/ChangeLog ChangeLog.gtk-po
-	newdoc Source/JavaScriptCore/ChangeLog ChangeLog.JavaScriptCore
-	newdoc Source/WebCore/ChangeLog ChangeLog.WebCore
-
-	# Remove .la files
-	find "${D}" -name '*.la' -exec rm -f '{}' +
-
-	# Prevents crashes on PaX systems
-	use jit && pax-mark m "${ED}usr/bin/jsc-3"
-}



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [gentoo-commits] proj/gnome:master commit in: net-libs/webkit-gtk/files/, net-libs/webkit-gtk/
@ 2012-07-12 12:33 Priit Laes
  0 siblings, 0 replies; 25+ messages in thread
From: Priit Laes @ 2012-07-12 12:33 UTC (permalink / raw
  To: gentoo-commits

commit:     e7f0d84a0ad621789983c8849e2de5a610468867
Author:     Priit Laes <plaes <AT> plaes <DOT> org>
AuthorDate: Thu Jul 12 12:31:36 2012 +0000
Commit:     Priit Laes <plaes <AT> plaes <DOT> org>
CommitDate: Thu Jul 12 12:31:36 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=e7f0d84a

net-libs/webkit-gtk: Added 1.9.4 to overlay

---
 net-libs/webkit-gtk/files/gir-paxctl-lt-wrapper    |   33 +++
 .../files/webkit-gtk-1.2.3-fix-pool-sparc.patch    |   65 ++++++
 .../files/webkit-gtk-1.2.5-darwin-quartz.patch     |   79 +++++++
 .../files/webkit-gtk-1.2.5-darwin8.patch           |   33 +++
 .../files/webkit-gtk-1.2.5-tests-build.patch       |   22 ++
 .../files/webkit-gtk-1.6.1-darwin-quartz.patch     |   67 ++++++
 .../webkit-gtk-1.6.3-paxctl-introspection.patch    |   21 ++
 ...webkit-gtk-1.7.90-test_garbage_collection.patch |   18 ++
 .../files/webkit-gtk-1.8.0-no-geoloc.patch         |   57 +++++
 .../files/webkit-gtk-1.8.1-tests-xvfb.patch        |   32 +++
 .../webkit-gtk-1.9.4-llint-build-failure.patch     |   43 ++++
 net-libs/webkit-gtk/metadata.xml                   |   16 ++
 net-libs/webkit-gtk/webkit-gtk-1.9.4-r300.ebuild   |  220 ++++++++++++++++++++
 13 files changed, 706 insertions(+), 0 deletions(-)

diff --git a/net-libs/webkit-gtk/files/gir-paxctl-lt-wrapper b/net-libs/webkit-gtk/files/gir-paxctl-lt-wrapper
new file mode 100755
index 0000000..d4f270c
--- /dev/null
+++ b/net-libs/webkit-gtk/files/gir-paxctl-lt-wrapper
@@ -0,0 +1,33 @@
+#!/bin/bash
+# Wrapper for $(LIBTOOL) that performs PaX marking on the dumper binary
+# generated by g-ir-scanner.
+# PaX marking code stolen from pax-utils.eclass
+
+flags=${1//-}; shift
+
+echo ${LIBTOOL} "$@"
+${LIBTOOL} "$@"
+
+retval=$?
+
+files=$(find . -path "*tmp-introspect*/.libs/*")
+
+if type -p paxctl > /dev/null; then
+	echo "PT PaX marking -${flags} ${files}"
+	for f in ${files}; do
+		# First, try modifying the existing PAX_FLAGS header
+		paxctl -q${flags} "${f}" && continue
+		# Second, try stealing the (unused under PaX) PT_GNU_STACK header
+		paxctl -qc${flags} "${f}" && continue
+		# Third, try pulling the base down a page, to create space and
+		# insert a PT_GNU_STACK header (works on ET_EXEC)
+		paxctl -qC${flags} "${f}" && continue
+	done
+elif type -p scanelf > /dev/null; then
+	# Try scanelf, the Gentoo swiss-army knife ELF utility
+	# Currently this sets PT if it can, no option to control what it does.
+	echo "Fallback PaX marking -${flags} ${files}"
+	scanelf -Xxz ${flags} ${files}
+fi
+
+exit ${retval}

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 0000000..3b1c5c4
--- /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 0000000..5046118
--- /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
+
+--- 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"
+@@ -951,3 +951,4 @@
+ 
+   return;
+ }
++#endif
+--- Source/WebCore/plugins/gtk/PluginViewGtk.cpp
++++ Source/WebCore/plugins/gtk/PluginViewGtk.cpp
+@@ -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 0000000..cf25b5d
--- /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 0000000..0d9e144
--- /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/files/webkit-gtk-1.6.1-darwin-quartz.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.6.1-darwin-quartz.patch
new file mode 100644
index 0000000..5ad357e
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.6.1-darwin-quartz.patch
@@ -0,0 +1,67 @@
+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-1.6.3-paxctl-introspection.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.6.3-paxctl-introspection.patch
new file mode 100644
index 0000000..c34cc40
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.6.3-paxctl-introspection.patch
@@ -0,0 +1,21 @@
+diff -ru a/Source/WebKit/gtk/GNUmakefile.am b/Source/WebKit/gtk/GNUmakefile.am
+--- a/Source/WebKit/gtk/GNUmakefile.am
++++ b/Source/WebKit/gtk/GNUmakefile.am
+@@ -269,7 +269,7 @@
+ WEBKIT_GIRSOURCES += WebKit-@WEBKITGTK_API_VERSION@.gir
+ 
+ $(WEBKIT_GIRSOURCES): $(G_IR_SCANNER) $(JSCORE_GIRSOURCES) libwebkitgtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la
+-	$(AM_V_GEN)$(G_IR_SCANNER) -v --warn-all \
++	$(AM_V_GEN)LIBTOOL="$(LIBTOOL)" $(G_IR_SCANNER) -v --warn-all \
+ 	     --symbol-prefix=webkit \
+ 	     --identifier-prefix=WebKit \
+ 	     --namespace=WebKit \
+@@ -280,7 +280,7 @@
+ 	     --include=Soup-2.4 \
+ 	     --library=webkitgtk-@WEBKITGTK_API_VERSION@ \
+ 	     --library=javascriptcoregtk-@WEBKITGTK_API_VERSION@ \
+-	     --libtool="$(LIBTOOL)" \
++	     --libtool="bash $(top_srcdir)/gir-paxctl-lt-wrapper m" \
+ 	     --pkg=gobject-2.0 \
+ 	     --pkg=gtk+-@GTK_API_VERSION@ \
+ 	     --pkg=libsoup-2.4 \

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.7.90-test_garbage_collection.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.7.90-test_garbage_collection.patch
new file mode 100644
index 0000000..577c249
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.7.90-test_garbage_collection.patch
@@ -0,0 +1,18 @@
+Garbage collection test fails intermittently if icedtea browser plugin is
+installed.
+
+--- a/Source/WebKit/gtk/tests/testdomdocument.c
++++ b/Source/WebKit/gtk/tests/testdomdocument.c
+@@ -353,12 +353,6 @@
+                test_dom_document_get_links,
+                dom_document_fixture_teardown);
+ 
+-    g_test_add("/webkit/domdocument/test_garbage_collection",
+-               DomDocumentFixture, HTML_DOCUMENT_LINKS,
+-               dom_document_fixture_setup,
+-               test_dom_document_garbage_collection,
+-               dom_document_fixture_teardown);
+-
+     return g_test_run();
+ }
+ 

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.8.0-no-geoloc.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.8.0-no-geoloc.patch
new file mode 100644
index 0000000..1094f50
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.8.0-no-geoloc.patch
@@ -0,0 +1,57 @@
+2012-03-31  Martin Robinson  <mrobinson@igalia.com>
+
+        [GTK] [Stable] --disable geolocation broken after recent merges
+        https://bugs.webkit.org/show_bug.cgi?id=82452
+
+        No review, as this is just a build fix.
+
+        Fix the geolocation build.
+
+        * webkit/webkitgeolocationpolicydecision.cpp:
+        (webkit_geolocation_policy_decision_new): When gelocation is off, just return null.
+        * webkit/webkitgeolocationpolicydecisionprivate.h: Activate webkit_geolocation_policy_decision_new
+        for non-Geolocation builds.
+
+Index: /releases/WebKitGTK/webkit-1.8/Source/WebKit/gtk/webkit/webkitgeolocationpolicydecisionprivate.h
+===================================================================
+--- /releases/WebKitGTK/webkit-1.8/Source/WebKit/gtk/webkit/webkitgeolocationpolicydecisionprivate.h	(revision 112120)
++++ /releases/WebKitGTK/webkit-1.8/Source/WebKit/gtk/webkit/webkitgeolocationpolicydecisionprivate.h	(revision 112800)
+@@ -26,6 +26,4 @@
+ #include "webkitgeolocationpolicydecision.h"
+ 
+-#if ENABLE(GEOLOCATION)
+-
+ extern "C" {
+ 
+@@ -34,5 +32,3 @@
+ }
+ 
+-#endif // ENABLE(GEOLOCATION)
+-
+ #endif
+Index: /releases/WebKitGTK/webkit-1.8/Source/WebKit/gtk/webkit/webkitgeolocationpolicydecision.cpp
+===================================================================
+--- /releases/WebKitGTK/webkit-1.8/Source/WebKit/gtk/webkit/webkitgeolocationpolicydecision.cpp	(revision 112120)
++++ /releases/WebKitGTK/webkit-1.8/Source/WebKit/gtk/webkit/webkitgeolocationpolicydecision.cpp	(revision 112800)
+@@ -54,8 +54,8 @@
+ }
+ 
+-#if ENABLE(GEOLOCATION)
+ WebKitGeolocationPolicyDecision* webkit_geolocation_policy_decision_new(WebKitWebFrame* frame, WebCore::Geolocation* geolocation)
+ {
+-    g_return_val_if_fail(frame, NULL);
++#if ENABLE(GEOLOCATION)
++    g_return_val_if_fail(frame, 0);
+     WebKitGeolocationPolicyDecision* decision = WEBKIT_GEOLOCATION_POLICY_DECISION(g_object_new(WEBKIT_TYPE_GEOLOCATION_POLICY_DECISION, NULL));
+     WebKitGeolocationPolicyDecisionPrivate* priv = decision->priv;
+@@ -64,6 +64,8 @@
+     priv->geolocation = geolocation;
+     return decision;
++#else
++    return 0;
++#endif
+ }
+-#endif
+ 
+ /**
+ 

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.8.1-tests-xvfb.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.8.1-tests-xvfb.patch
new file mode 100644
index 0000000..e310c65
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.8.1-tests-xvfb.patch
@@ -0,0 +1,32 @@
+Rely on virtualx.eclass instead of manually spawning Xvfb. Fixes occasional
+test failures.
+
+--- a/Tools/Scripts/run-gtk-tests
++++ b/Tools/Scripts/run-gtk-tests
+@@ -147,18 +147,9 @@
+ 
+     def _setup_testing_environment(self):
+         self._test_env = os.environ
+-        self._test_env["DISPLAY"] = self._options.display
+         self._test_env["WEBKIT_INSPECTOR_PATH"] = os.path.abspath(os.path.join(self._programs_path, 'resources', 'inspector'))
+         self._test_env['GSETTINGS_BACKEND'] = 'memory'
+ 
+-        try:
+-            self._xvfb = self._create_process(["Xvfb", self._options.display, "-screen", "0", "800x600x24", "-nolisten", "tcp"],
+-                                              stdout=subprocess.PIPE, stderr=subprocess.PIPE)
+-        except Exception as e:
+-            sys.stderr.write("Failed to run Xvfb: %s\n", e)
+-            sys.stderr.flush()
+-            return False
+-
+         # If we cannot start the accessibility daemons, we can just skip the accessibility tests.
+         if not self._start_accessibility_daemons():
+             print "Could not start accessibility bus, so skipping TestWebKitAccessibility"
+@@ -170,7 +161,6 @@
+             self._spi_registryd.terminate()
+         if self._spi_bus_launcher:
+             self._spi_bus_launcher.terminate()
+-        self._xvfb.kill();
+ 
+     def _remove_skipped_tests(self):
+         tests_to_remove = []

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.9.4-llint-build-failure.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.9.4-llint-build-failure.patch
new file mode 100644
index 0000000..a614d3b
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.9.4-llint-build-failure.patch
@@ -0,0 +1,43 @@
+[GTK] LLint build fails with -g -02
+https://bugs.webkit.org/show_bug.cgi?id=90098
+
+diff --git a/Source/JavaScriptCore/offlineasm/offsets.rb b/Source/JavaScriptCore/offlineasm/offsets.rb
+index 4f2734f..ecd1b53 100644
+--- a/Source/JavaScriptCore/offlineasm/offsets.rb
++++ b/Source/JavaScriptCore/offlineasm/offsets.rb
+@@ -60,7 +60,7 @@ end
+ 
+ #
+ # offsetsAndConfigurationIndex(ast, file) ->
+-#     [[offsets, index], ...]
++#     {[offsets, index], ...}
+ #
+ # Parses the offsets from a file and returns a list of offsets and the
+ # index of the configuration that is valid in this build target.
+@@ -68,7 +68,7 @@ end
+ 
+ def offsetsAndConfigurationIndex(file)
+     endiannessMarkerBytes = nil
+-    result = []
++    result = {}
+     
+     def readInt(endianness, bytes)
+         if endianness == :little
+@@ -154,13 +154,15 @@ def offsetsAndConfigurationIndex(file)
+                     | data |
+                     offsets << readInt(endianness, data)
+                 }
+-                result << [offsets, index]
++                #result << [offsets, index]
++                if not result.has_key?(offsets)
++                    result[offsets] = index
++                end
+             }
+         end
+     }
+     
+     raise MissingMagicValuesException unless result.length >= 1
+-    raise if result.map{|v| v[1]}.uniq.size < result.map{|v| v[1]}.size
+     
+     result
+ end

diff --git a/net-libs/webkit-gtk/metadata.xml b/net-libs/webkit-gtk/metadata.xml
new file mode 100644
index 0000000..4232b5d
--- /dev/null
+++ b/net-libs/webkit-gtk/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+  <herd>gnome</herd>
+  <use>
+	<flag name="coverage">Enable code coverage support</flag>
+	<flag name="geoloc">Enable geolocation support through
+		<pkg>app-misc/geoclue</pkg></flag>
+	<flag name="introspection">Use <pkg>dev-libs/gobject-introspection</pkg>
+		for introspection</flag>
+	<flag name="webgl">Build support for the WebGL HTML API using
+		<pkg>virtual/opengl</pkg></flag>
+	<flag name="webkit2">Enable WebKit2 API that splits web content rendering
+		and application UI into separate processes</flag>
+  </use>
+</pkgmetadata>

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.9.4-r300.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.9.4-r300.ebuild
new file mode 100644
index 0000000..93fd313
--- /dev/null
+++ b/net-libs/webkit-gtk/webkit-gtk-1.9.4-r300.ebuild
@@ -0,0 +1,220 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-libs/webkit-gtk/webkit-gtk-1.8.1-r301.ebuild,v 1.5 2012/06/20 06:34:59 ssuominen Exp $
+
+EAPI="4"
+
+# Don't define PYTHON_DEPEND: python only needed at build time
+inherit autotools flag-o-matic gnome2-utils pax-utils python virtualx
+
+MY_P="webkit-${PV}"
+DESCRIPTION="Open source web browser engine"
+HOMEPAGE="http://www.webkitgtk.org/"
+SRC_URI="http://www.webkitgtk.org/releases/${MY_P}.tar.xz"
+#SRC_URI="mirror://gentoo/${P}.tar.xz"
+
+LICENSE="LGPL-2 LGPL-2.1 BSD"
+SLOT="3"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~x86-macos"
+# geoclue
+IUSE="aqua coverage debug doc +geoloc +gstreamer +introspection +jit spell +webgl"
+# bugs 372493, 416331
+REQUIRED_USE="introspection? ( geoloc gstreamer )"
+
+# use sqlite, svg by default
+# dependency on >=x11-libs/gtk+-2.13:2 for gail
+# Aqua support in gtk3 is untested
+# gtk2 is needed for plugin process support
+RDEPEND="
+	dev-libs/libxml2:2
+	dev-libs/libxslt
+	virtual/jpeg
+	>=media-libs/libpng-1.4:0
+	>=x11-libs/cairo-1.10
+	>=dev-libs/glib-2.32:2
+	>=x11-libs/gtk+-3.4:3[aqua=,introspection?]
+	>=dev-libs/icu-3.8.1-r1
+	>=net-libs/libsoup-2.37.92:2.4[introspection?]
+	dev-db/sqlite:3
+	>=x11-libs/pango-1.21
+	x11-libs/libXrender
+	>=x11-libs/gtk+-2.13:2
+
+	geoloc? ( app-misc/geoclue )
+
+	gstreamer? (
+		media-libs/gstreamer:0.10
+		>=media-libs/gst-plugins-base-0.10.30:0.10 )
+
+	introspection? ( >=dev-libs/gobject-introspection-0.9.5 )
+
+	spell? ( >=app-text/enchant-0.22 )
+
+	webgl? ( virtual/opengl )
+
+"
+# paxctl needed for bug #407085
+DEPEND="${RDEPEND}
+	dev-lang/perl
+	=dev-lang/python-2*
+	sys-devel/bison
+	>=sys-devel/flex-2.5.33
+	sys-devel/gettext
+	dev-util/gperf
+	virtual/pkgconfig
+	dev-util/gtk-doc-am
+	app-accessibility/at-spi2-core
+
+	doc? ( >=dev-util/gtk-doc-1.10 )
+	introspection? ( jit? ( sys-apps/paxctl ) )
+	test? (
+		x11-themes/hicolor-icon-theme
+		jit? ( sys-apps/paxctl ) )
+"
+# Need real bison, not yacc
+
+S="${WORKDIR}/${MY_P}"
+
+pkg_setup() {
+	# Needed for CodeGeneratorInspector.py
+	python_set_active_version 2
+	python_pkg_setup
+	if is-flagq "-g*" ; then
+		einfo "You need ~23GB of free space to build this package with debugging CFLAGS."
+	fi
+}
+
+src_prepare() {
+	DOCS="ChangeLog NEWS" # other ChangeLog files handled by src_install
+
+	# 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
+
+	# Drop DEPRECATED flags
+	LC_ALL=C sed -i -e 's:-D[A-Z_]*DISABLE_DEPRECATED:$(NULL):g' GNUmakefile.am || die
+
+	# Don't force -O2
+	sed -i 's/-O2//g' "${S}"/configure.ac || die
+
+	# Build-time segfaults under PaX with USE="introspection jit", bug #404215
+	if use introspection && use jit; then
+		epatch "${FILESDIR}/${PN}-1.6.3-paxctl-introspection.patch"
+		cp "${FILESDIR}/gir-paxctl-lt-wrapper" "${S}/" || die
+	fi
+
+	# We need to reset some variables to prevent permissions problems and failures
+	# like https://bugs.webkit.org/show_bug.cgi?id=35471 and bug #323669
+	gnome2_environment_reset
+
+	# https://bugs.webkit.org/show_bug.cgi?id=79498
+	#epatch "${FILESDIR}/${PN}-1.7.90-parallel-make-hack.patch"
+
+	# XXX: failing tests
+	# https://bugs.webkit.org/show_bug.cgi?id=50744
+	# testkeyevents is interactive
+	# mimehandling test sometimes fails under Xvfb (works fine manually)
+	# datasource test needs a network connection and intermittently fails with
+	#  icedtea-web
+	sed -e '/Programs\/unittests\/testwebinspector/ d' \
+		-e '/Programs\/unittests\/testkeyevents/ d' \
+		-e '/Programs\/unittests\/testmimehandling/ d' \
+		-e '/Programs\/unittests\/testwebdatasource/ d' \
+		-i Source/WebKit/gtk/GNUmakefile.am || die
+	if ! use gstreamer; then
+		# webkit2's TestWebKitWebView requires <video> support
+		sed -e '/Programs\/WebKit2APITests\/TestWebKitWebView/ d' \
+			-i Source/WebKit2/UIProcess/API/gtk/tests/GNUmakefile.am || die
+	fi
+	# garbage collection test fails intermittently if icedtea-web is installed
+	epatch "${FILESDIR}/${PN}-1.7.90-test_garbage_collection.patch"
+
+	# occasional test failure due to additional Xvfb process spawned
+	# TODO epatch "${FILESDIR}/${PN}-1.8.1-tests-xvfb.patch"
+
+    # Build failure with "-g -O2"
+	# https://bugs.webkit.org/show_bug.cgi?id=90098
+	epatch "${FILESDIR}/${PN}-1.9.4-llint-build-failure.patch"
+
+	# Respect CC, otherwise fails on prefix #395875
+	tc-export CC
+
+	# Prevent maintainer mode from being triggered during make
+	AT_M4DIR=Source/autotools eautoreconf
+
+	# Ugly hack of a workaround for bizarre paludis behavior, bug #406117
+	# http://paludis.exherbo.org/trac/ticket/1230
+	sed -e '/  --\(en\|dis\)able-dependency-tracking/ d' -i configure || die
+}
+
+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 "-mvis"
+
+	# https://bugs.webkit.org/show_bug.cgi?id=42070 , #301634
+	use ppc64 && append-flags "-mminimal-toc"
+
+	local myconf
+
+	# XXX: Check Web Audio support
+	# XXX: dependency-tracking is required so parallel builds won't fail
+	myconf="
+		$(use_enable coverage)
+		$(use_enable debug)
+		$(use_enable debug debug-features)
+		$(use_enable doc gtk-doc)
+		$(use_enable geoloc geolocation)
+		$(use_enable spell spellcheck)
+		$(use_enable introspection)
+		$(use_enable gstreamer video)
+		$(use_enable jit)
+		$(use_enable webgl)
+		--with-gtk=3.0
+		--enable-dependency-tracking
+		$(use aqua && echo "--with-font-backend=pango --with-target=quartz")"
+		# Aqua support in gtk3 is untested
+
+	econf ${myconf}
+}
+
+src_compile() {
+	# Horrible failure of a hack to work around parallel make problems,
+	# see https://bugs.webkit.org/show_bug.cgi?id=79498
+	#emake -j1 all-built-sources-local
+	#emake all-ltlibraries-local
+	#emake all-programs-local
+	#use introspection && emake WebKit-3.0.gir
+	#emake all-data-local
+	emake -j1
+}
+
+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() {
+	default
+
+	newdoc Source/WebKit/gtk/ChangeLog ChangeLog.gtk
+	newdoc Source/WebKit/gtk/po/ChangeLog ChangeLog.gtk-po
+	newdoc Source/JavaScriptCore/ChangeLog ChangeLog.JavaScriptCore
+	newdoc Source/WebCore/ChangeLog ChangeLog.WebCore
+
+	# Remove .la files
+	find "${D}" -name '*.la' -exec rm -f '{}' +
+
+	# Prevents crashes on PaX systems
+	use jit && pax-mark m "${ED}usr/bin/jsc-3"
+}



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [gentoo-commits] proj/gnome:master commit in: net-libs/webkit-gtk/files/, net-libs/webkit-gtk/
@ 2012-09-13  5:35 Alexandre Rostovtsev
  0 siblings, 0 replies; 25+ messages in thread
From: Alexandre Rostovtsev @ 2012-09-13  5:35 UTC (permalink / raw
  To: gentoo-commits

commit:     ae7ab2b6095d5551eb548b41a316f1e0595ce46a
Author:     Alexandre Rostovtsev <tetromino <AT> gentoo <DOT> org>
AuthorDate: Thu Sep 13 05:35:04 2012 +0000
Commit:     Alexandre Rostovtsev <tetromino <AT> gentoo <DOT> org>
CommitDate: Thu Sep 13 05:35:04 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=ae7ab2b6

net-libs/webkit-gtk: sync with gx86

Fix linking failure on freebsd.

---
 .../webkit-gtk/files/webkit-gtk-1.9.91-libdl.patch |   27 ++++++++++++++++++++
 net-libs/webkit-gtk/webkit-gtk-1.9.91-r300.ebuild  |    3 ++
 2 files changed, 30 insertions(+), 0 deletions(-)

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.9.91-libdl.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.9.91-libdl.patch
new file mode 100644
index 0000000..841d41c
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.9.91-libdl.patch
@@ -0,0 +1,27 @@
+https://bugs.gentoo.org/show_bug.cgi?id=417523
+https://bugs.webkit.org/show_bug.cgi?id=96602
+
+Index: configure.ac
+===================================================================
+--- configure.ac	(revision 128397)
++++ configure.ac	(working copy)
+@@ -278,6 +278,10 @@
+ AC_SUBST([OLE32_LIBS])
+ 
+ 
++AC_CHECK_FUNC([dlopen], [], [AC_CHECK_LIB([dl], [dlopen], [DLOPEN_LIBS="-ldl"])])
++AC_SUBST([DLOPEN_LIBS])
++
++
+ # determine the GTK+ version to use
+ AC_MSG_CHECKING([the GTK+ version to use])
+ AC_ARG_WITH([gtk],
+@@ -1124,7 +1128,7 @@
+ fi
+ 
+ if test "$with_acceleration_backend" = "opengl"; then
+-    OPENGL_LIBS="-lGL -ldl"
++    OPENGL_LIBS="-lGL -$DLOPEN_LIBS"
+ fi
+ AC_SUBST([OPENGL_LIBS])
+ 

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.9.91-r300.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.9.91-r300.ebuild
index 338d8d6..4680564 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.9.91-r300.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.9.91-r300.ebuild
@@ -137,6 +137,9 @@ src_prepare() {
 	# https://bugs.webkit.org/show_bug.cgi?id=90098
 	epatch "${FILESDIR}/${PN}-1.9.4-llint-build-failure.patch"
 
+	# bug #417523, https://bugs.webkit.org/show_bug.cgi?id=96602
+	epatch "${FILESDIR}/${PN}-1.9.91-libdl.patch"
+
 	# Respect CC, otherwise fails on prefix #395875
 	tc-export CC
 


^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [gentoo-commits] proj/gnome:master commit in: net-libs/webkit-gtk/files/, net-libs/webkit-gtk/
@ 2012-10-10 17:34 Priit Laes
  0 siblings, 0 replies; 25+ messages in thread
From: Priit Laes @ 2012-10-10 17:34 UTC (permalink / raw
  To: gentoo-commits

commit:     3a106303c6d33cde43a51c6982bf02e772d625a3
Author:     Priit Laes <plaes <AT> plaes <DOT> org>
AuthorDate: Wed Oct 10 17:32:36 2012 +0000
Commit:     Priit Laes <plaes <AT> plaes <DOT> org>
CommitDate: Wed Oct 10 17:32:36 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=3a106303

net-libs/webkit-gtk: 1.9.91 → 1.10.0

---
 .../webkit-gtk-1.9.4-llint-build-failure.patch     |   43 --------------------
 ...1-r300.ebuild => webkit-gtk-1.10.0-r300.ebuild} |    6 +--
 2 files changed, 1 insertions(+), 48 deletions(-)

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.9.4-llint-build-failure.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.9.4-llint-build-failure.patch
deleted file mode 100644
index a614d3b..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-1.9.4-llint-build-failure.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-[GTK] LLint build fails with -g -02
-https://bugs.webkit.org/show_bug.cgi?id=90098
-
-diff --git a/Source/JavaScriptCore/offlineasm/offsets.rb b/Source/JavaScriptCore/offlineasm/offsets.rb
-index 4f2734f..ecd1b53 100644
---- a/Source/JavaScriptCore/offlineasm/offsets.rb
-+++ b/Source/JavaScriptCore/offlineasm/offsets.rb
-@@ -60,7 +60,7 @@ end
- 
- #
- # offsetsAndConfigurationIndex(ast, file) ->
--#     [[offsets, index], ...]
-+#     {[offsets, index], ...}
- #
- # Parses the offsets from a file and returns a list of offsets and the
- # index of the configuration that is valid in this build target.
-@@ -68,7 +68,7 @@ end
- 
- def offsetsAndConfigurationIndex(file)
-     endiannessMarkerBytes = nil
--    result = []
-+    result = {}
-     
-     def readInt(endianness, bytes)
-         if endianness == :little
-@@ -154,13 +154,15 @@ def offsetsAndConfigurationIndex(file)
-                     | data |
-                     offsets << readInt(endianness, data)
-                 }
--                result << [offsets, index]
-+                #result << [offsets, index]
-+                if not result.has_key?(offsets)
-+                    result[offsets] = index
-+                end
-             }
-         end
-     }
-     
-     raise MissingMagicValuesException unless result.length >= 1
--    raise if result.map{|v| v[1]}.uniq.size < result.map{|v| v[1]}.size
-     
-     result
- end

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.9.91-r300.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.10.0-r300.ebuild
similarity index 97%
rename from net-libs/webkit-gtk/webkit-gtk-1.9.91-r300.ebuild
rename to net-libs/webkit-gtk/webkit-gtk-1.10.0-r300.ebuild
index 4680564..1fb6329 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.9.91-r300.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.10.0-r300.ebuild
@@ -7,7 +7,7 @@ EAPI="4"
 # Don't define PYTHON_DEPEND: python only needed at build time
 inherit autotools flag-o-matic gnome2-utils pax-utils python virtualx
 
-MY_P="webkit-${PV}"
+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"
@@ -133,10 +133,6 @@ src_prepare() {
 	# occasional test failure due to additional Xvfb process spawned
 	# TODO epatch "${FILESDIR}/${PN}-1.8.1-tests-xvfb.patch"
 
-    # Build failure with "-g -O2"
-	# https://bugs.webkit.org/show_bug.cgi?id=90098
-	epatch "${FILESDIR}/${PN}-1.9.4-llint-build-failure.patch"
-
 	# bug #417523, https://bugs.webkit.org/show_bug.cgi?id=96602
 	epatch "${FILESDIR}/${PN}-1.9.91-libdl.patch"
 


^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [gentoo-commits] proj/gnome:master commit in: net-libs/webkit-gtk/files/, net-libs/webkit-gtk/
@ 2012-10-27  8:43 Priit Laes
  0 siblings, 0 replies; 25+ messages in thread
From: Priit Laes @ 2012-10-27  8:43 UTC (permalink / raw
  To: gentoo-commits

commit:     84bc77e71b9eaa92fbf991abc8ab40cc2ee2b8eb
Author:     Priit Laes <plaes <AT> plaes <DOT> org>
AuthorDate: Sat Oct 27 08:37:57 2012 +0000
Commit:     Priit Laes <plaes <AT> plaes <DOT> org>
CommitDate: Sat Oct 27 08:42:05 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=84bc77e7

net-libs/webkit-gtk: Add masked 1.11.1 to overlay

---
 .../webkit-gtk/files/webkit-gtk-1.11.1-libdl.patch |   24 +++
 net-libs/webkit-gtk/webkit-gtk-1.11.1-r300.ebuild  |  216 ++++++++++++++++++++
 2 files changed, 240 insertions(+), 0 deletions(-)

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.11.1-libdl.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.11.1-libdl.patch
new file mode 100644
index 0000000..50f2729
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.11.1-libdl.patch
@@ -0,0 +1,24 @@
+https://bugs.webkit.org/show_bug.cgi?id=96602
+
+--- configure.ac	(revision 132329)
++++ configure.ac	(working copy)
+@@ -278,6 +278,10 @@
+ AC_SUBST([OLE32_LIBS])
+ 
+ 
++AC_CHECK_FUNC([dlopen], [], [AC_CHECK_LIB([dl], [dlopen], [DLOPEN_LIBS="-ldl"])])
++AC_SUBST([DLOPEN_LIBS])
++
++
+ # determine the GTK+ version to use
+ AC_MSG_CHECKING([the GTK+ version to use])
+ AC_ARG_WITH([gtk],
+@@ -1039,7 +1043,7 @@
+    if test "$enable_glx" = "yes"; then
+     acceleration_backend_description+=", glx"
+    fi
+-   OPENGL_LIBS+=" -ldl"
++   OPENGL_LIBS+=" $DLOPEN_LIBS"
+    acceleration_backend_description+=")"
+ fi
+ AC_SUBST([OPENGL_LIBS])

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.11.1-r300.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.11.1-r300.ebuild
new file mode 100644
index 0000000..cb7ffec
--- /dev/null
+++ b/net-libs/webkit-gtk/webkit-gtk-1.11.1-r300.ebuild
@@ -0,0 +1,216 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-libs/webkit-gtk/webkit-gtk-1.8.1-r301.ebuild,v 1.5 2012/06/20 06:34:59 ssuominen Exp $
+
+EAPI="4"
+
+# Don't define PYTHON_DEPEND: python only needed at build time
+inherit autotools flag-o-matic gnome2-utils pax-utils python 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"
+#SRC_URI="mirror://gentoo/${P}.tar.xz"
+
+LICENSE="LGPL-2 LGPL-2.1 BSD"
+SLOT="3"
+#KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~x86-macos"
+KEYWORDS=""
+# geoclue
+IUSE="aqua coverage debug doc +geoloc +gstreamer +introspection +jit spell +webgl"
+# bugs 372493, 416331
+REQUIRED_USE="introspection? ( geoloc gstreamer )"
+
+# use sqlite, svg by default
+# dependency on >=x11-libs/gtk+-2.13:2 for gail
+# Aqua support in gtk3 is untested
+# gtk2 is needed for plugin process support
+# TODO: There's 3 acceleration backends: opengl, egl and gles2
+RDEPEND="
+	dev-libs/libxml2:2
+	dev-libs/libxslt
+	virtual/jpeg
+	>=media-libs/libpng-1.4:0
+	>=x11-libs/cairo-1.10
+	>=dev-libs/glib-2.32:2
+	>=x11-libs/gtk+-3.4:3[aqua=,introspection?]
+	>=dev-libs/icu-3.8.1-r1
+	>=net-libs/libsoup-2.39.2:2.4[introspection?]
+	dev-db/sqlite:3
+	>=x11-libs/pango-1.21
+	x11-libs/libXrender
+	>=x11-libs/gtk+-2.13:2
+
+	geoloc? ( app-misc/geoclue )
+
+	gstreamer? (
+		media-libs/gstreamer:0.10
+		>=media-libs/gst-plugins-base-0.10.30:0.10 )
+
+	introspection? ( >=dev-libs/gobject-introspection-0.9.5 )
+
+	spell? ( >=app-text/enchant-0.22 )
+
+	webgl? (
+		virtual/opengl
+		x11-libs/libXcomposite
+		x11-libs/libXdamage )
+"
+# paxctl needed for bug #407085
+DEPEND="${RDEPEND}
+	dev-lang/perl
+	=dev-lang/python-2*
+	virtual/rubygems
+	sys-devel/bison
+	>=sys-devel/flex-2.5.33
+	sys-devel/gettext
+	dev-util/gperf
+	virtual/pkgconfig
+	dev-util/gtk-doc-am
+	app-accessibility/at-spi2-core
+
+	>=sys-devel/make-3.82-r4
+
+	doc? ( >=dev-util/gtk-doc-1.10 )
+	introspection? ( jit? ( sys-apps/paxctl ) )
+	test? (
+		x11-themes/hicolor-icon-theme
+		jit? ( sys-apps/paxctl ) )
+"
+# Need real bison, not yacc
+
+S="${WORKDIR}/${MY_P}"
+
+pkg_setup() {
+	# Needed for CodeGeneratorInspector.py
+	python_set_active_version 2
+	python_pkg_setup
+	if is-flagq "-g*" ; then
+		einfo "You need ~23GB of free space to build this package with debugging CFLAGS."
+	fi
+}
+
+src_prepare() {
+	DOCS="ChangeLog NEWS" # other ChangeLog files handled by src_install
+
+	# 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
+
+	# Drop DEPRECATED flags
+	LC_ALL=C sed -i -e 's:-D[A-Z_]*DISABLE_DEPRECATED:$(NULL):g' GNUmakefile.am || die
+
+	# Don't force -O2
+	sed -i 's/-O2//g' "${S}"/configure.ac || die
+
+	# Build-time segfaults under PaX with USE="introspection jit", bug #404215
+	if use introspection && use jit; then
+		epatch "${FILESDIR}/${PN}-1.6.3-paxctl-introspection.patch"
+		cp "${FILESDIR}/gir-paxctl-lt-wrapper" "${S}/" || die
+	fi
+
+	# We need to reset some variables to prevent permissions problems and failures
+	# like https://bugs.webkit.org/show_bug.cgi?id=35471 and bug #323669
+	gnome2_environment_reset
+
+	# XXX: failing tests
+	# https://bugs.webkit.org/show_bug.cgi?id=50744
+	# testkeyevents is interactive
+	# mimehandling test sometimes fails under Xvfb (works fine manually)
+	# datasource test needs a network connection and intermittently fails with
+	#  icedtea-web
+	sed -e '/Programs\/unittests\/testwebinspector/ d' \
+		-e '/Programs\/unittests\/testkeyevents/ d' \
+		-e '/Programs\/unittests\/testmimehandling/ d' \
+		-e '/Programs\/unittests\/testwebdatasource/ d' \
+		-i Source/WebKit/gtk/GNUmakefile.am || die
+	if ! use gstreamer; then
+		# webkit2's TestWebKitWebView requires <video> support
+		sed -e '/Programs\/WebKit2APITests\/TestWebKitWebView/ d' \
+			-i Source/WebKit2/UIProcess/API/gtk/tests/GNUmakefile.am || die
+	fi
+	# garbage collection test fails intermittently if icedtea-web is installed
+	epatch "${FILESDIR}/${PN}-1.7.90-test_garbage_collection.patch"
+
+	# occasional test failure due to additional Xvfb process spawned
+	# TODO epatch "${FILESDIR}/${PN}-1.8.1-tests-xvfb.patch"
+
+	# bug #417523, https://bugs.webkit.org/show_bug.cgi?id=96602
+	epatch "${FILESDIR}/${P}-libdl.patch"
+
+	# Respect CC, otherwise fails on prefix #395875
+	tc-export CC
+
+	# Prevent maintainer mode from being triggered during make
+	AT_M4DIR=Source/autotools eautoreconf
+
+	# Ugly hack of a workaround for bizarre paludis behavior, bug #406117
+	# http://paludis.exherbo.org/trac/ticket/1230
+	sed -e '/  --\(en\|dis\)able-dependency-tracking/ d' -i configure || die
+}
+
+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 "-mvis"
+
+	# https://bugs.webkit.org/show_bug.cgi?id=42070 , #301634
+	use ppc64 && append-flags "-mminimal-toc"
+
+	local myconf
+
+	# XXX: Check Web Audio support
+	# XXX: dependency-tracking is required so parallel builds won't fail
+	# XXX: There's 3 acceleration backends: opengl, egl and gles2
+    #      should somehow let user select between them?
+	myconf="
+		$(use_enable coverage)
+		$(use_enable debug)
+		$(use_enable debug debug-features)
+		$(use_enable doc gtk-doc)
+		$(use_enable geoloc geolocation)
+		$(use_enable spell spellcheck)
+		$(use_enable introspection)
+		$(use_enable gstreamer video)
+		$(use_enable jit)
+		$(use_enable webgl)
+		--disable-egl
+		--disable-gles2
+		--with-gtk=3.0
+		--enable-dependency-tracking
+		$(use aqua && echo "--with-font-backend=pango --with-target=quartz")"
+		# Aqua support in gtk3 is untested
+
+	econf ${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() {
+	default
+
+	newdoc Source/WebKit/gtk/ChangeLog ChangeLog.gtk
+	newdoc Source/WebKit/gtk/po/ChangeLog ChangeLog.gtk-po
+	newdoc Source/JavaScriptCore/ChangeLog ChangeLog.JavaScriptCore
+	newdoc Source/WebCore/ChangeLog ChangeLog.WebCore
+
+	# Remove .la files
+	find "${D}" -name '*.la' -exec rm -f '{}' +
+
+	# Prevents crashes on PaX systems
+	use jit && pax-mark m "${ED}usr/bin/jsc-3"
+}


^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [gentoo-commits] proj/gnome:master commit in: net-libs/webkit-gtk/files/, net-libs/webkit-gtk/
@ 2012-11-04  6:25 Alexandre Rostovtsev
  0 siblings, 0 replies; 25+ messages in thread
From: Alexandre Rostovtsev @ 2012-11-04  6:25 UTC (permalink / raw
  To: gentoo-commits

commit:     25263d282661ea70d5140a7724a8d39cb11c1f6d
Author:     Alexandre Rostovtsev <tetromino <AT> gentoo <DOT> org>
AuthorDate: Sun Nov  4 05:47:02 2012 +0000
Commit:     Alexandre Rostovtsev <tetromino <AT> gentoo <DOT> org>
CommitDate: Sun Nov  4 05:47:02 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=25263d28

net-libs/webkit-gtk: add uclibc patch (#441674), update license

---
 ...ebkit-gtk-1.10.1-disable-backtrace-uclibc.patch |   29 ++++++++++++++++++++
 net-libs/webkit-gtk/webkit-gtk-1.10.1-r300.ebuild  |    5 +++-
 net-libs/webkit-gtk/webkit-gtk-1.11.1-r300.ebuild  |    5 +++-
 3 files changed, 37 insertions(+), 2 deletions(-)

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.10.1-disable-backtrace-uclibc.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.10.1-disable-backtrace-uclibc.patch
new file mode 100644
index 0000000..510fe4f
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.10.1-disable-backtrace-uclibc.patch
@@ -0,0 +1,29 @@
+From: Anthony Basile <blueness@gentoo.org>
+Date: Sun, 04 Nov 2012 01:51:27 +0000
+
+webkit-gtk fails to build on a uclibc system because
+Source/JavaScriptCore/wtf/Assertions.cpp assumes that all linux systems have
+/usr/include/execinfo.h and provide backtrace().  But uclibc does not.  Its
+straightforward to extend the test to see if its also a uclibc system and not
+include execinfo.h or call backtrace()
+
+--- a/Source/WTF/wtf/Assertions.cpp
++++ b/Source/WTF/wtf/Assertions.cpp
+@@ -58,7 +58,7 @@
+ #include <windows.h>
+ #endif
+ 
+-#if (OS(DARWIN) || OS(LINUX)) && !OS(ANDROID)
++#if (OS(DARWIN) || OS(LINUX) && !defined(__UCLIBC__)) && !OS(ANDROID)
+ #include <cxxabi.h>
+ #include <dlfcn.h>
+ #include <execinfo.h>
+@@ -268,7 +268,7 @@
+ 
+ void WTFGetBacktrace(void** stack, int* size)
+ {
+-#if (OS(DARWIN) || OS(LINUX)) && !OS(ANDROID)
++#if (OS(DARWIN) || OS(LINUX) && !defined(__UCLIBC__)) && !OS(ANDROID)
+     *size = backtrace(stack, *size);
+ #elif OS(WINDOWS) && !OS(WINCE)
+     // The CaptureStackBackTrace function is available in XP, but it is not defined

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.10.1-r300.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.10.1-r300.ebuild
index bb432bc..8ab781d 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.10.1-r300.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.10.1-r300.ebuild
@@ -13,7 +13,7 @@ HOMEPAGE="http://www.webkitgtk.org/"
 SRC_URI="http://www.webkitgtk.org/releases/${MY_P}.tar.xz"
 #SRC_URI="mirror://gentoo/${P}.tar.xz"
 
-LICENSE="LGPL-2 LGPL-2.1 BSD"
+LICENSE="LGPL-2+ BSD"
 SLOT="3"
 KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~x86-macos"
 # geoclue
@@ -149,6 +149,9 @@ src_prepare() {
 	# bug #417523, https://bugs.webkit.org/show_bug.cgi?id=96602
 	epatch "${FILESDIR}/${PN}-1.9.91-libdl.patch"
 
+	# uclibc fix, bug #441674
+	epatch "${FILESDIR}/${PN}-1.10.1-disable-backtrace-uclibc.patch"
+
 	# Respect CC, otherwise fails on prefix #395875
 	tc-export CC
 

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.11.1-r300.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.11.1-r300.ebuild
index 06e82f6..c92517f 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.11.1-r300.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.11.1-r300.ebuild
@@ -13,7 +13,7 @@ HOMEPAGE="http://www.webkitgtk.org/"
 SRC_URI="http://www.webkitgtk.org/releases/${MY_P}.tar.xz"
 #SRC_URI="mirror://gentoo/${P}.tar.xz"
 
-LICENSE="LGPL-2 LGPL-2.1 BSD"
+LICENSE="LGPL-2+ BSD"
 SLOT="3"
 #KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~x86-macos"
 KEYWORDS=""
@@ -152,6 +152,9 @@ src_prepare() {
 	# bug #417523, https://bugs.webkit.org/show_bug.cgi?id=96602
 	epatch "${FILESDIR}/${P}-libdl.patch"
 
+	# uclibc fix, bug #441674
+	epatch "${FILESDIR}/${PN}-1.10.1-disable-backtrace-uclibc.patch"
+
 	# Respect CC, otherwise fails on prefix #395875
 	tc-export CC
 


^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [gentoo-commits] proj/gnome:master commit in: net-libs/webkit-gtk/files/, net-libs/webkit-gtk/
@ 2013-01-15  9:39 Priit Laes
  0 siblings, 0 replies; 25+ messages in thread
From: Priit Laes @ 2013-01-15  9:39 UTC (permalink / raw
  To: gentoo-commits

commit:     1cb62bc73b6dafc9b5c34c78da97f7d02c4fbea9
Author:     Priit Laes <plaes <AT> plaes <DOT> org>
AuthorDate: Tue Jan 15 09:37:02 2013 +0000
Commit:     Priit Laes <plaes <AT> plaes <DOT> org>
CommitDate: Tue Jan 15 09:37:02 2013 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=1cb62bc7

net-libs/webkit-gtk: 1.11.2 → 1.11.4

---
 ...ebkit-gtk-1.10.1-disable-backtrace-uclibc.patch |   29 --------------------
 ...2-r300.ebuild => webkit-gtk-1.11.4-r300.ebuild} |   10 +++----
 2 files changed, 4 insertions(+), 35 deletions(-)

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.10.1-disable-backtrace-uclibc.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.10.1-disable-backtrace-uclibc.patch
deleted file mode 100644
index 510fe4f..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-1.10.1-disable-backtrace-uclibc.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From: Anthony Basile <blueness@gentoo.org>
-Date: Sun, 04 Nov 2012 01:51:27 +0000
-
-webkit-gtk fails to build on a uclibc system because
-Source/JavaScriptCore/wtf/Assertions.cpp assumes that all linux systems have
-/usr/include/execinfo.h and provide backtrace().  But uclibc does not.  Its
-straightforward to extend the test to see if its also a uclibc system and not
-include execinfo.h or call backtrace()
-
---- a/Source/WTF/wtf/Assertions.cpp
-+++ b/Source/WTF/wtf/Assertions.cpp
-@@ -58,7 +58,7 @@
- #include <windows.h>
- #endif
- 
--#if (OS(DARWIN) || OS(LINUX)) && !OS(ANDROID)
-+#if (OS(DARWIN) || OS(LINUX) && !defined(__UCLIBC__)) && !OS(ANDROID)
- #include <cxxabi.h>
- #include <dlfcn.h>
- #include <execinfo.h>
-@@ -268,7 +268,7 @@
- 
- void WTFGetBacktrace(void** stack, int* size)
- {
--#if (OS(DARWIN) || OS(LINUX)) && !OS(ANDROID)
-+#if (OS(DARWIN) || OS(LINUX) && !defined(__UCLIBC__)) && !OS(ANDROID)
-     *size = backtrace(stack, *size);
- #elif OS(WINDOWS) && !OS(WINCE)
-     // The CaptureStackBackTrace function is available in XP, but it is not defined

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.11.2-r300.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.11.4-r300.ebuild
similarity index 96%
rename from net-libs/webkit-gtk/webkit-gtk-1.11.2-r300.ebuild
rename to net-libs/webkit-gtk/webkit-gtk-1.11.4-r300.ebuild
index 65ec3a7..126b24a 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.11.2-r300.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.11.4-r300.ebuild
@@ -14,8 +14,7 @@ SRC_URI="http://www.webkitgtk.org/releases/${MY_P}.tar.xz"
 
 LICENSE="LGPL-2+ BSD"
 SLOT="3"
-#KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~x86-macos"
-KEYWORDS=""
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~x86-macos"
 IUSE="aqua coverage debug +geoloc +gstreamer +introspection +jit spell +webgl"
 # bugs 372493, 416331
 REQUIRED_USE="introspection? ( geoloc gstreamer )"
@@ -28,13 +27,15 @@ RDEPEND="
 	app-crypt/libsecret
 	dev-libs/libxml2:2
 	dev-libs/libxslt
+	media-libs/harfbuzz
+	media-libs/libwebp
 	virtual/jpeg:=
 	>=media-libs/libpng-1.4:0=
 	>=x11-libs/cairo-1.10:=
 	>=dev-libs/glib-2.32:2
 	>=x11-libs/gtk+-3.4:3[aqua=,introspection?]
 	>=dev-libs/icu-3.8.1-r1:=
-	>=net-libs/libsoup-2.39.2:2.4[introspection?]
+	>=net-libs/libsoup-2.40.0:2.4[introspection?]
 	dev-db/sqlite:3=
 	>=x11-libs/pango-1.21
 	x11-libs/libXrender
@@ -155,9 +156,6 @@ src_prepare() {
 	# bug #417523, https://bugs.webkit.org/show_bug.cgi?id=96602
 	epatch "${FILESDIR}/${PN}-1.11.1-libdl.patch"
 
-	# uclibc fix, bug #441674
-	epatch "${FILESDIR}/${PN}-1.10.1-disable-backtrace-uclibc.patch"
-
 	# Respect CC, otherwise fails on prefix #395875
 	tc-export CC
 


^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [gentoo-commits] proj/gnome:master commit in: net-libs/webkit-gtk/files/, net-libs/webkit-gtk/
@ 2013-02-13 14:05 Priit Laes
  0 siblings, 0 replies; 25+ messages in thread
From: Priit Laes @ 2013-02-13 14:05 UTC (permalink / raw
  To: gentoo-commits

commit:     2b2d6ff288945bf9ad20c811ac481b033d7ab2eb
Author:     Priit Laes <plaes <AT> plaes <DOT> org>
AuthorDate: Wed Feb 13 14:01:11 2013 +0000
Commit:     Priit Laes <plaes <AT> plaes <DOT> org>
CommitDate: Wed Feb 13 14:01:11 2013 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=2b2d6ff2

net-libs/webkit-gtk: 1.11.4 → 1.11.5

---
 .../webkit-gtk/files/webkit-gtk-1.11.1-libdl.patch |   24 -----------------
 .../webkit-gtk/files/webkit-gtk-1.9.91-libdl.patch |   27 --------------------
 ...4-r300.ebuild => webkit-gtk-1.11.5-r300.ebuild} |    6 +---
 3 files changed, 1 insertions(+), 56 deletions(-)

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.11.1-libdl.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.11.1-libdl.patch
deleted file mode 100644
index 50f2729..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-1.11.1-libdl.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-https://bugs.webkit.org/show_bug.cgi?id=96602
-
---- configure.ac	(revision 132329)
-+++ configure.ac	(working copy)
-@@ -278,6 +278,10 @@
- AC_SUBST([OLE32_LIBS])
- 
- 
-+AC_CHECK_FUNC([dlopen], [], [AC_CHECK_LIB([dl], [dlopen], [DLOPEN_LIBS="-ldl"])])
-+AC_SUBST([DLOPEN_LIBS])
-+
-+
- # determine the GTK+ version to use
- AC_MSG_CHECKING([the GTK+ version to use])
- AC_ARG_WITH([gtk],
-@@ -1039,7 +1043,7 @@
-    if test "$enable_glx" = "yes"; then
-     acceleration_backend_description+=", glx"
-    fi
--   OPENGL_LIBS+=" -ldl"
-+   OPENGL_LIBS+=" $DLOPEN_LIBS"
-    acceleration_backend_description+=")"
- fi
- AC_SUBST([OPENGL_LIBS])

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.9.91-libdl.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.9.91-libdl.patch
deleted file mode 100644
index 1ab7a6d..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-1.9.91-libdl.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-https://bugs.gentoo.org/show_bug.cgi?id=417523
-https://bugs.webkit.org/show_bug.cgi?id=96602
-
-Index: configure.ac
-===================================================================
---- configure.ac	(revision 128397)
-+++ configure.ac	(working copy)
-@@ -278,6 +278,10 @@
- AC_SUBST([OLE32_LIBS])
- 
- 
-+AC_CHECK_FUNC([dlopen], [], [AC_CHECK_LIB([dl], [dlopen], [DLOPEN_LIBS="-ldl"])])
-+AC_SUBST([DLOPEN_LIBS])
-+
-+
- # determine the GTK+ version to use
- AC_MSG_CHECKING([the GTK+ version to use])
- AC_ARG_WITH([gtk],
-@@ -1124,7 +1128,7 @@
- fi
- 
- if test "$with_acceleration_backend" = "opengl"; then
--    OPENGL_LIBS="-lGL -ldl"
-+    OPENGL_LIBS="-lGL $DLOPEN_LIBS"
- fi
- AC_SUBST([OPENGL_LIBS])
- 

diff --git a/net-libs/webkit-gtk/webkit-gtk-1.11.4-r300.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.11.5-r300.ebuild
similarity index 96%
rename from net-libs/webkit-gtk/webkit-gtk-1.11.4-r300.ebuild
rename to net-libs/webkit-gtk/webkit-gtk-1.11.5-r300.ebuild
index d941598..8e7f8a8 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.11.4-r300.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.11.5-r300.ebuild
@@ -14,8 +14,7 @@ SRC_URI="http://www.webkitgtk.org/releases/${MY_P}.tar.xz"
 
 LICENSE="LGPL-2+ BSD"
 SLOT="3"
-#KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~x86-macos"
-KEYWORDS=""
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~x86-macos"
 IUSE="aqua coverage debug +geoloc +gstreamer +introspection +jit spell +webgl"
 # bugs 372493, 416331
 REQUIRED_USE="introspection? ( geoloc gstreamer )"
@@ -154,9 +153,6 @@ src_prepare() {
 	# occasional test failure due to additional Xvfb process spawned
 	# TODO epatch "${FILESDIR}/${PN}-1.8.1-tests-xvfb.patch"
 
-	# bug #417523, https://bugs.webkit.org/show_bug.cgi?id=96602
-	epatch "${FILESDIR}/${PN}-1.11.1-libdl.patch"
-
 	# Respect CC, otherwise fails on prefix #395875
 	tc-export CC
 


^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [gentoo-commits] proj/gnome:master commit in: net-libs/webkit-gtk/files/, net-libs/webkit-gtk/
@ 2013-03-03  0:57 Priit Laes
  0 siblings, 0 replies; 25+ messages in thread
From: Priit Laes @ 2013-03-03  0:57 UTC (permalink / raw
  To: gentoo-commits

commit:     38ad4bd8a384837e1239c4d7032095eb89d3c0de
Author:     Priit Laes <plaes <AT> plaes <DOT> org>
AuthorDate: Sun Mar  3 00:56:12 2013 +0000
Commit:     Priit Laes <plaes <AT> plaes <DOT> org>
CommitDate: Sun Mar  3 00:56:12 2013 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=38ad4bd8

net-libs/webkit-gtk: 1.11.5 → 1.11.90

---
 .../files/webkit-gtk-1.11.90-gtk-docize-fix.patch  |   10 ++++++++++
 ...-r300.ebuild => webkit-gtk-1.11.90-r300.ebuild} |   14 +++++---------
 2 files changed, 15 insertions(+), 9 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
new file mode 100644
index 0000000..8f56ab2
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-1.11.90-gtk-docize-fix.patch
@@ -0,0 +1,10 @@
+--- 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/webkit-gtk-1.11.5-r300.ebuild b/net-libs/webkit-gtk/webkit-gtk-1.11.90-r300.ebuild
similarity index 96%
rename from net-libs/webkit-gtk/webkit-gtk-1.11.5-r300.ebuild
rename to net-libs/webkit-gtk/webkit-gtk-1.11.90-r300.ebuild
index 8e7f8a8..641baea 100644
--- a/net-libs/webkit-gtk/webkit-gtk-1.11.5-r300.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-1.11.90-r300.ebuild
@@ -27,7 +27,6 @@ RDEPEND="
 	app-crypt/libsecret
 	dev-libs/libxml2:2
 	dev-libs/libxslt
-	media-libs/harfbuzz
 	media-libs/libwebp
 	virtual/jpeg:=
 	>=media-libs/libpng-1.4:0=
@@ -43,8 +42,8 @@ RDEPEND="
 
 	geoloc? ( app-misc/geoclue )
 	gstreamer? (
-		media-libs/gstreamer:1.0
-		media-libs/gst-plugins-base:1.0 )
+		>=media-libs/gstreamer-1.0.3:1.0
+		>=media-libs/gst-plugins-base-1.0.3:1.0 )
 	introspection? ( >=dev-libs/gobject-introspection-0.9.5 )
 	spell? ( >=app-text/enchant-0.22:= )
 	webgl? (
@@ -113,11 +112,8 @@ src_prepare() {
 	# https://bugs.webkit.org/show_bug.cgi?id=28727
 	use aqua && epatch "${FILESDIR}"/${PN}-1.6.1-darwin-quartz.patch
 
-	# Drop DEPRECATED flags
-	LC_ALL=C sed -i -e 's:-D[A-Z_]*DISABLE_DEPRECATED:$(NULL):g' GNUmakefile.am || die
-
 	# Don't force -O2
-	sed -i 's/-O2//g' "${S}"/configure.ac || die
+	sed -i 's/-O2//g' "${S}"/Source/autotools/SetupCompilerFlags.m4 || die
 
 	# Build-time segfaults under PaX with USE="introspection jit", bug #404215
 	if use introspection && use jit; then
@@ -156,6 +152,8 @@ src_prepare() {
 	# Respect CC, otherwise fails on prefix #395875
 	tc-export CC
 
+	epatch "${FILESDIR}/${P}-gtk-docize-fix.patch"
+
 	# Prevent maintainer mode from being triggered during make
 	AT_M4DIR=Source/autotools eautoreconf
 
@@ -183,7 +181,6 @@ src_configure() {
 	myconf="
 		$(use_enable coverage)
 		$(use_enable debug)
-		$(use_enable debug debug-features)
 		$(use_enable geoloc geolocation)
 		$(use_enable spell spellcheck)
 		$(use_enable introspection)
@@ -193,7 +190,6 @@ src_configure() {
 		--disable-egl
 		--disable-gles2
 		--with-gtk=3.0
-		--with-gstreamer=1.0
 		--enable-accelerated-compositing
 		--enable-dependency-tracking
 		--disable-gtk-doc


^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [gentoo-commits] proj/gnome:master commit in: net-libs/webkit-gtk/files/, net-libs/webkit-gtk/
@ 2013-11-27 23:32 Gilles Dartiguelongue
  0 siblings, 0 replies; 25+ messages in thread
From: Gilles Dartiguelongue @ 2013-11-27 23:32 UTC (permalink / raw
  To: gentoo-commits

commit:     9cf5cf2220ee1a5de7575441a0b817b948ca5aa9
Author:     Gilles Dartiguelongue <eva <AT> gentoo <DOT> org>
AuthorDate: Wed Nov 27 22:39:11 2013 +0000
Commit:     Gilles Dartiguelongue <eva <AT> gentoo <DOT> org>
CommitDate: Wed Nov 27 23:27:08 2013 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=9cf5cf22

net-libs/webkit-gtk: do not build unittests unless needed

---
 .../files/webkit-gtk-1.8.1-tests-xvfb.patch        | 32 ---------------
 .../files/webkit-gtk-2.2.2-unittests-build.patch   | 45 ++++++++++++++++++++++
 net-libs/webkit-gtk/webkit-gtk-2.2.2.ebuild        |  3 ++
 3 files changed, 48 insertions(+), 32 deletions(-)

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.8.1-tests-xvfb.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.8.1-tests-xvfb.patch
deleted file mode 100644
index e310c65..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-1.8.1-tests-xvfb.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-Rely on virtualx.eclass instead of manually spawning Xvfb. Fixes occasional
-test failures.
-
---- a/Tools/Scripts/run-gtk-tests
-+++ b/Tools/Scripts/run-gtk-tests
-@@ -147,18 +147,9 @@
- 
-     def _setup_testing_environment(self):
-         self._test_env = os.environ
--        self._test_env["DISPLAY"] = self._options.display
-         self._test_env["WEBKIT_INSPECTOR_PATH"] = os.path.abspath(os.path.join(self._programs_path, 'resources', 'inspector'))
-         self._test_env['GSETTINGS_BACKEND'] = 'memory'
- 
--        try:
--            self._xvfb = self._create_process(["Xvfb", self._options.display, "-screen", "0", "800x600x24", "-nolisten", "tcp"],
--                                              stdout=subprocess.PIPE, stderr=subprocess.PIPE)
--        except Exception as e:
--            sys.stderr.write("Failed to run Xvfb: %s\n", e)
--            sys.stderr.flush()
--            return False
--
-         # If we cannot start the accessibility daemons, we can just skip the accessibility tests.
-         if not self._start_accessibility_daemons():
-             print "Could not start accessibility bus, so skipping TestWebKitAccessibility"
-@@ -170,7 +161,6 @@
-             self._spi_registryd.terminate()
-         if self._spi_bus_launcher:
-             self._spi_bus_launcher.terminate()
--        self._xvfb.kill();
- 
-     def _remove_skipped_tests(self):
-         tests_to_remove = []

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-2.2.2-unittests-build.patch b/net-libs/webkit-gtk/files/webkit-gtk-2.2.2-unittests-build.patch
new file mode 100644
index 0000000..14fa30f
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-2.2.2-unittests-build.patch
@@ -0,0 +1,45 @@
+From: Gilles Dartiguelongue <eva@gentoo.org>
+Date: Wed, 27 Nov 2013 23:36:41 +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,7 @@
+ # Libraries and support components
+ bin_PROGRAMS :=
+ noinst_PROGRAMS :=
++check_PROGRAMS :=
+ libexec_PROGRAMS :=
+ noinst_DATA :=
+ noinst_HEADERS :=
+--- a/Source/WebKit/gtk/GNUmakefile.am
++++ b/Source/WebKit/gtk/GNUmakefile.am
+@@ -446,7 +446,7 @@ webkit_tests_ldflags = \
+ 	-no-fast-install
+ 
+ if ENABLE_WEBKIT1
+-noinst_PROGRAMS += \
++check_PROGRAMS += \
+ 	Programs/unittests/testapplicationcache \
+ 	Programs/unittests/testcontextmenu \
+ 	Programs/unittests/testdomdocument \
+--- a/Source/WebKit2/UIProcess/API/gtk/tests/GNUmakefile.am
++++ b/Source/WebKit2/UIProcess/API/gtk/tests/GNUmakefile.am
+@@ -25,12 +25,12 @@ TEST_PROGS += \
+ 	Programs/WebKit2APITests/TestWebKitWebViewGroup \
+ 	Programs/WebKit2APITests/TestWebViewEditor
+ 
+-noinst_PROGRAMS += $(TEST_PROGS)
++check_PROGRAMS += $(TEST_PROGS)
+ 
+ if HAVE_ATSPI2
+ TEST_PROGS += Programs/WebKit2APITests/TestWebKitAccessibility
+ 
+-noinst_PROGRAMS += Programs/WebKit2APITests/AccessibilityTestServer
++check_PROGRAMS += Programs/WebKit2APITests/AccessibilityTestServer
+ endif
+ 
+ webkit2_tests_cppflags = \
+-- 
+1.8.3.2
+

diff --git a/net-libs/webkit-gtk/webkit-gtk-2.2.2.ebuild b/net-libs/webkit-gtk/webkit-gtk-2.2.2.ebuild
index 7e1b36d..6afe3a6 100644
--- a/net-libs/webkit-gtk/webkit-gtk-2.2.2.ebuild
+++ b/net-libs/webkit-gtk/webkit-gtk-2.2.2.ebuild
@@ -178,6 +178,9 @@ src_prepare() {
 	# bug #459978, upstream bug #113397
 	epatch "${FILESDIR}/${PN}-1.11.90-gtk-docize-fix.patch"
 
+	# Do not build unittests unless requested
+	epatch "${FILESDIR}"/${PN}-2.2.2-unittests-build.patch
+
 	# Prevent maintainer mode from being triggered during make
 	AT_M4DIR=Source/autotools eautoreconf
 }


^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [gentoo-commits] proj/gnome:master commit in: net-libs/webkit-gtk/files/, net-libs/webkit-gtk/
@ 2014-04-21 14:40 Gilles Dartiguelongue
  0 siblings, 0 replies; 25+ messages in thread
From: Gilles Dartiguelongue @ 2014-04-21 14:40 UTC (permalink / raw
  To: gentoo-commits

commit:     f9cb21a5eb447b7897fa4111598838c914265c75
Author:     Gilles Dartiguelongue <eva <AT> gentoo <DOT> org>
AuthorDate: Mon Apr 21 10:36:42 2014 +0000
Commit:     Gilles Dartiguelongue <eva <AT> gentoo <DOT> org>
CommitDate: Mon Apr 21 13:20:04 2014 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=f9cb21a5

net-libs/webkit-gtk: 2.2.6 → 2.4.1

---
 net-libs/webkit-gtk/files/gir-paxctl-lt-wrapper    |  33 ---
 .../webkit-gtk-1.6.3-paxctl-introspection.patch    |  21 --
 ...webkit-gtk-1.7.90-test_garbage_collection.patch |  18 --
 .../files/webkit-gtk-2.2.2-unittests-build.patch   |  45 ----
 .../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 ++
 net-libs/webkit-gtk/webkit-gtk-2.4.1-r200.ebuild   | 269 ++++++++++++++++++++
 net-libs/webkit-gtk/webkit-gtk-2.4.1.ebuild        | 272 +++++++++++++++++++++
 12 files changed, 814 insertions(+), 117 deletions(-)

diff --git a/net-libs/webkit-gtk/files/gir-paxctl-lt-wrapper b/net-libs/webkit-gtk/files/gir-paxctl-lt-wrapper
deleted file mode 100755
index d4f270c..0000000
--- a/net-libs/webkit-gtk/files/gir-paxctl-lt-wrapper
+++ /dev/null
@@ -1,33 +0,0 @@
-#!/bin/bash
-# Wrapper for $(LIBTOOL) that performs PaX marking on the dumper binary
-# generated by g-ir-scanner.
-# PaX marking code stolen from pax-utils.eclass
-
-flags=${1//-}; shift
-
-echo ${LIBTOOL} "$@"
-${LIBTOOL} "$@"
-
-retval=$?
-
-files=$(find . -path "*tmp-introspect*/.libs/*")
-
-if type -p paxctl > /dev/null; then
-	echo "PT PaX marking -${flags} ${files}"
-	for f in ${files}; do
-		# First, try modifying the existing PAX_FLAGS header
-		paxctl -q${flags} "${f}" && continue
-		# Second, try stealing the (unused under PaX) PT_GNU_STACK header
-		paxctl -qc${flags} "${f}" && continue
-		# Third, try pulling the base down a page, to create space and
-		# insert a PT_GNU_STACK header (works on ET_EXEC)
-		paxctl -qC${flags} "${f}" && continue
-	done
-elif type -p scanelf > /dev/null; then
-	# Try scanelf, the Gentoo swiss-army knife ELF utility
-	# Currently this sets PT if it can, no option to control what it does.
-	echo "Fallback PaX marking -${flags} ${files}"
-	scanelf -Xxz ${flags} ${files}
-fi
-
-exit ${retval}

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.6.3-paxctl-introspection.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.6.3-paxctl-introspection.patch
deleted file mode 100644
index c34cc40..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-1.6.3-paxctl-introspection.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff -ru a/Source/WebKit/gtk/GNUmakefile.am b/Source/WebKit/gtk/GNUmakefile.am
---- a/Source/WebKit/gtk/GNUmakefile.am
-+++ b/Source/WebKit/gtk/GNUmakefile.am
-@@ -269,7 +269,7 @@
- WEBKIT_GIRSOURCES += WebKit-@WEBKITGTK_API_VERSION@.gir
- 
- $(WEBKIT_GIRSOURCES): $(G_IR_SCANNER) $(JSCORE_GIRSOURCES) libwebkitgtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la
--	$(AM_V_GEN)$(G_IR_SCANNER) -v --warn-all \
-+	$(AM_V_GEN)LIBTOOL="$(LIBTOOL)" $(G_IR_SCANNER) -v --warn-all \
- 	     --symbol-prefix=webkit \
- 	     --identifier-prefix=WebKit \
- 	     --namespace=WebKit \
-@@ -280,7 +280,7 @@
- 	     --include=Soup-2.4 \
- 	     --library=webkitgtk-@WEBKITGTK_API_VERSION@ \
- 	     --library=javascriptcoregtk-@WEBKITGTK_API_VERSION@ \
--	     --libtool="$(LIBTOOL)" \
-+	     --libtool="bash $(top_srcdir)/gir-paxctl-lt-wrapper m" \
- 	     --pkg=gobject-2.0 \
- 	     --pkg=gtk+-@GTK_API_VERSION@ \
- 	     --pkg=libsoup-2.4 \

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-1.7.90-test_garbage_collection.patch b/net-libs/webkit-gtk/files/webkit-gtk-1.7.90-test_garbage_collection.patch
deleted file mode 100644
index 577c249..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-1.7.90-test_garbage_collection.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Garbage collection test fails intermittently if icedtea browser plugin is
-installed.
-
---- a/Source/WebKit/gtk/tests/testdomdocument.c
-+++ b/Source/WebKit/gtk/tests/testdomdocument.c
-@@ -353,12 +353,6 @@
-                test_dom_document_get_links,
-                dom_document_fixture_teardown);
- 
--    g_test_add("/webkit/domdocument/test_garbage_collection",
--               DomDocumentFixture, HTML_DOCUMENT_LINKS,
--               dom_document_fixture_setup,
--               test_dom_document_garbage_collection,
--               dom_document_fixture_teardown);
--
-     return g_test_run();
- }
- 

diff --git a/net-libs/webkit-gtk/files/webkit-gtk-2.2.2-unittests-build.patch b/net-libs/webkit-gtk/files/webkit-gtk-2.2.2-unittests-build.patch
deleted file mode 100644
index 14fa30f..0000000
--- a/net-libs/webkit-gtk/files/webkit-gtk-2.2.2-unittests-build.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From: Gilles Dartiguelongue <eva@gentoo.org>
-Date: Wed, 27 Nov 2013 23:36:41 +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,7 @@
- # Libraries and support components
- bin_PROGRAMS :=
- noinst_PROGRAMS :=
-+check_PROGRAMS :=
- libexec_PROGRAMS :=
- noinst_DATA :=
- noinst_HEADERS :=
---- a/Source/WebKit/gtk/GNUmakefile.am
-+++ b/Source/WebKit/gtk/GNUmakefile.am
-@@ -446,7 +446,7 @@ webkit_tests_ldflags = \
- 	-no-fast-install
- 
- if ENABLE_WEBKIT1
--noinst_PROGRAMS += \
-+check_PROGRAMS += \
- 	Programs/unittests/testapplicationcache \
- 	Programs/unittests/testcontextmenu \
- 	Programs/unittests/testdomdocument \
---- a/Source/WebKit2/UIProcess/API/gtk/tests/GNUmakefile.am
-+++ b/Source/WebKit2/UIProcess/API/gtk/tests/GNUmakefile.am
-@@ -25,12 +25,12 @@ TEST_PROGS += \
- 	Programs/WebKit2APITests/TestWebKitWebViewGroup \
- 	Programs/WebKit2APITests/TestWebViewEditor
- 
--noinst_PROGRAMS += $(TEST_PROGS)
-+check_PROGRAMS += $(TEST_PROGS)
- 
- if HAVE_ATSPI2
- TEST_PROGS += Programs/WebKit2APITests/TestWebKitAccessibility
- 
--noinst_PROGRAMS += Programs/WebKit2APITests/AccessibilityTestServer
-+check_PROGRAMS += Programs/WebKit2APITests/AccessibilityTestServer
- endif
- 
- webkit2_tests_cppflags = \
--- 
-1.8.3.2
-

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
new file mode 100644
index 0000000..a6077b4
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-2.2.4-unittests-build.patch
@@ -0,0 +1,103 @@
+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
new file mode 100644
index 0000000..854a112
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-2.2.5-gir-nvidia-hangs.patch
@@ -0,0 +1,95 @@
+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
new file mode 100644
index 0000000..8aee778
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-2.2.5-hppa-platform.patch
@@ -0,0 +1,20 @@
+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
new file mode 100644
index 0000000..a63e9e8
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-2.2.5-ia64-platform.patch
@@ -0,0 +1,12 @@
+--- 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
new file mode 100644
index 0000000..691b528
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-2.2.5-sparc64-build.patch
@@ -0,0 +1,23 @@
+$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
new file mode 100644
index 0000000..8c387ff
--- /dev/null
+++ b/net-libs/webkit-gtk/files/webkit-gtk-2.4.1-ia64-malloc.patch
@@ -0,0 +1,20 @@
+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/webkit-gtk-2.4.1-r200.ebuild b/net-libs/webkit-gtk/webkit-gtk-2.4.1-r200.ebuild
new file mode 100644
index 0000000..7fe38de
--- /dev/null
+++ b/net-libs/webkit-gtk/webkit-gtk-2.4.1-r200.ebuild
@@ -0,0 +1,269 @@
+# 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.4.1.ebuild
new file mode 100644
index 0000000..9f43613
--- /dev/null
+++ b/net-libs/webkit-gtk/webkit-gtk-2.4.1.ebuild
@@ -0,0 +1,272 @@
+# 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="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"
+# bugs 372493, 416331
+REQUIRED_USE="
+	geoloc? ( introspection )
+	introspection? ( gstreamer )
+	gles2? ( egl )
+	webgl? ( ^^ ( gles2 opengl ) )
+	!webgl? ( ?? ( gles2 opengl ) )
+	|| ( aqua wayland X )
+"
+
+# use sqlite, svg by default
+# Aqua support in gtk3 is untested
+# 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:=
+	virtual/jpeg:0=
+	>=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?]
+	>=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:= )
+	wayland? ( >=x11-libs/gtk+-3.10:3[wayland] )
+	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]
+	)
+	>=app-accessibility/at-spi2-core-2.5.3
+	>=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?
+	#
+	# * 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}
+}
+
+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-3"
+}


^ permalink raw reply related	[flat|nested] 25+ messages in thread

end of thread, other threads:[~2014-04-21 14:40 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-02-25 11:54 [gentoo-commits] proj/gnome:master commit in: net-libs/webkit-gtk/files/, net-libs/webkit-gtk/ Priit Laes
  -- strict thread matches above, loose matches on Subject: below --
2011-03-04 10:23 Nirbheek Chauhan
2011-03-22 13:22 Priit Laes
2011-05-07 19:18 Priit Laes
2011-06-05 20:12 Priit Laes
2011-06-11  1:44 Nirbheek Chauhan
2011-10-30  0:13 Alexandre Restovtsev
2011-11-26  8:43 Priit Laes
2011-11-28  5:35 Priit Laes
2011-12-20 17:37 Priit Laes
2012-01-17  9:08 Priit Laes
2012-02-26 19:20 Alexandre Restovtsev
2012-03-04 21:11 Alexandre Restovtsev
2012-04-06  2:36 Alexandre Restovtsev
2012-04-14  6:10 Alexandre Restovtsev
2012-07-12 12:33 Priit Laes
2012-09-13  5:35 Alexandre Rostovtsev
2012-10-10 17:34 Priit Laes
2012-10-27  8:43 Priit Laes
2012-11-04  6:25 Alexandre Rostovtsev
2013-01-15  9:39 Priit Laes
2013-02-13 14:05 Priit Laes
2013-03-03  0:57 Priit Laes
2013-11-27 23:32 Gilles Dartiguelongue
2014-04-21 14:40 Gilles Dartiguelongue

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