[gtk-osx: 13/14] Update WebKit to 1.10.2



commit b491211c4a3479c0435316efcd22cfaaedad725e
Author: Philip Chimento <philip chimento gmail com>
Date:   Fri Dec 26 15:53:37 2014 -0700

    Update WebKit to 1.10.2
    
    This is the last release of the WebKitGTK 1.x series. It is built from
    the same tarball on all three modulesets.

 modulesets-stable/gtk-osx-unsupported.modules   |   30 +-
 modulesets-unstable/gtk-osx-unsupported.modules |   33 ++
 modulesets/gtk-osx-unsupported.modules          |   33 ++
 patches/patch status                            |   14 +-
 patches/webkit-1.10-no-x11.patch                |   39 ++
 patches/webkit-1.10-pango-includes.patch        |   12 +
 patches/webkit-1.10-platform-fixes.patch        |   31 ++
 patches/webkit-1.6-clang-fixup.patch            |   35 --
 patches/webkit-1.6-enable-blob.patch            |   19 -
 patches/webkit-1.6-gnome-3.6-fixup.patch        |  523 -----------------------
 patches/webkit-1.6-missing-utf8-include.patch   |   10 -
 patches/webkit-1.6-no-x11.patch                 |  146 -------
 patches/webkit-1.6-out-of-source-fixup.patch    |   18 -
 patches/webkit-1.6-pango-includes.patch         |   24 -
 patches/webkit-88407-portable-echo-n.patch      |   13 +
 15 files changed, 190 insertions(+), 790 deletions(-)
---
diff --git a/modulesets-stable/gtk-osx-unsupported.modules b/modulesets-stable/gtk-osx-unsupported.modules
index 6299d0f..116b905 100644
--- a/modulesets-stable/gtk-osx-unsupported.modules
+++ b/modulesets-stable/gtk-osx-unsupported.modules
@@ -156,16 +156,25 @@
     <branch repo="curl.haxx.se" module="curl-7.28.0.tar.bz2" version="7.28.0" />
   </autotools>
 
-  <autotools id="WebKit" autogen-sh="configure"
-            autogenargs="--with-target=quartz --disable-video --with-font-backend=pango --with-gtk=2.0">
-    <branch repo="webkit.org" module="webkit-1.6.1.tar.gz" version="1.6.1">
-      <patch file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-1.6-no-x11.patch"; strip="1"/>
-      <patch file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-1.6-pango-includes.patch"; 
strip="1"/>
-      <patch file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-1.6-missing-utf8-include.patch"; 
strip="1"/>
-      <patch file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-1.6-enable-blob.patch"; 
strip="1"/>
-      <patch file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-1.6-gnome-3.6-fixup.patch"; 
strip="1"/>
-      <patch file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-1.6-clang-fixup.patch"; 
strip="1"/>
-      <patch file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-1.6-out-of-source-fixup.patch"; 
strip="1"/>
+  <!-- This is WebKitGTK 1.x, for GTK 2.x.
+    disable-geolocation: Requires geoclue. No module for this yet.
+    disable-video: Requires gstreamer. If you want video, add to .jhbuildrc:
+      append_autogenargs('WebKit', '&#45;-enable-video')
+    Wno-c++11-extensions: Suppresses clang warning that makes output
+      inconvenient to read.
+    std=c99: Required for inline keyword in C.
+  -->
+  <autotools id="WebKit" autogen-sh="autoreconf"
+             autogenargs='--with-target=quartz --disable-video --with-font-backend=pango --with-gtk=2.0 
--disable-geolocation --disable-webkit2 CXXFLAGS="$CXXFLAGS -Wno-c++11-extensions" CFLAGS="$CFLAGS -std=c99"'>
+    <branch repo="webkit.org" module="webkitgtk-1.10.2.tar.xz" version="1.10.2">
+      <patch file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-1.10-no-x11.patch";
+             strip="1"/>
+      <patch file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-88407-portable-echo-n.patch";
+             strip="1"/>
+      <patch file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-1.10-platform-fixes.patch";
+             strip="1"/>
+      <patch file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-1.10-pango-includes.patch";
+             strip="1"/>
     </branch>
     <dependencies>
       <dep package="enchant"/>
@@ -175,7 +184,6 @@
     </dependencies>
     <after>
       <dep package="meta-gtk-osx-core"/>
-      <dep package="meta-gtk-osx-gtk3"/>
     </after>
   </autotools>
 
diff --git a/modulesets-unstable/gtk-osx-unsupported.modules b/modulesets-unstable/gtk-osx-unsupported.modules
index 4c8143a..371e775 100644
--- a/modulesets-unstable/gtk-osx-unsupported.modules
+++ b/modulesets-unstable/gtk-osx-unsupported.modules
@@ -21,6 +21,8 @@
               tags-template="tags/%(tag)s"/>
   <repository type="svn" name="svn.webkit.org"
              href="http://svn.webkit.org/repository/"/>
+  <repository type="tarball" name="webkit.org"
+              href="http://www.webkitgtk.org/releases/"/>
   <repository type="git" name="git.webkit.org"
              href="git://git.webkit.org/"/>
   <repository type="git" name="git.debian.org" href="git://git.debian.org/"/>
@@ -167,6 +169,37 @@
             module='icu4c/54.1/icu4c-54_1-src.tgz'/>
   </autotools>
 
+  <!-- This is WebKitGTK 1.x, for GTK 2.x.
+    disable-geolocation: Requires geoclue. No module for this yet.
+    disable-video: Requires gstreamer. If you want video, add to .jhbuildrc:
+      append_autogenargs('WebKit', '&#45;-enable-video')
+    Wno-c++11-extensions: Suppresses clang warning that makes output
+      inconvenient to read.
+    std=c99: Required for inline keyword in C.
+  -->
+  <autotools id="WebKit" autogen-sh="autoreconf"
+             autogenargs='--with-target=quartz --disable-video --with-font-backend=pango --with-gtk=2.0 
--disable-geolocation --disable-webkit2 CXXFLAGS="$CXXFLAGS -Wno-c++11-extensions" CFLAGS="$CFLAGS -std=c99"'>
+    <branch repo="webkit.org" module="webkitgtk-1.10.2.tar.xz" version="1.10.2">
+      <patch file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-1.10-no-x11.patch";
+             strip="1"/>
+      <patch file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-88407-portable-echo-n.patch";
+             strip="1"/>
+      <patch file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-1.10-platform-fixes.patch";
+             strip="1"/>
+      <patch file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-1.10-pango-includes.patch";
+             strip="1"/>
+    </branch>
+    <dependencies>
+      <dep package="enchant"/>
+      <dep package="icu"/>
+      <dep package="libsoup"/>
+      <dep package="meta-gtk-osx-freetype"/>
+    </dependencies>
+    <after>
+      <dep package="meta-gtk-osx-core"/>
+    </after>
+  </autotools>
+
   <autotools id="WebKit-git"
             autogenargs="--enable-quartz-target --disable-x11-target --disable-video 
--with-font-backend=pango --with-gtk=2.0 --disable-geolocation --disable-webkit2 --disable-credential-storage 
--disable-svg-fonts --disable-web-audio --disable-fast-malloc --disable-gtk-doc-html">
     <!--branch repo="svn.webkit.org" module="webkit/trunk" checkoutdir="WebKit-svn"/-->
diff --git a/modulesets/gtk-osx-unsupported.modules b/modulesets/gtk-osx-unsupported.modules
index 475c214..ef9c6c0 100644
--- a/modulesets/gtk-osx-unsupported.modules
+++ b/modulesets/gtk-osx-unsupported.modules
@@ -18,6 +18,8 @@
   <repository type='svn' name='libproxy.google.com'
               href='http://libproxy.googlecode.com/svn/'
               tags-template="tags/%(tag)s"/>
+  <repository type="tarball" name="webkit.org"
+              href="http://www.webkitgtk.org/releases/"/>
   <repository type='tarball' name='icu'
              href='http://download.icu-project.org/files/'/>
 
@@ -149,4 +151,35 @@
     <branch repo='icu' version='54.1' checkoutdir='icu'
             module='icu4c/54.1/icu4c-54_1-src.tgz'/>
   </autotools>
+
+  <!-- This is WebKitGTK 1.x, for GTK 2.x.
+    disable-geolocation: Requires geoclue. No module for this yet.
+    disable-video: Requires gstreamer. If you want video, add to .jhbuildrc:
+      append_autogenargs('WebKit', '&#45;-enable-video')
+    Wno-c++11-extensions: Suppresses clang warning that makes output
+      inconvenient to read.
+    std=c99: Required for inline keyword in C.
+  -->
+  <autotools id="WebKit" autogen-sh="autoreconf"
+             autogenargs='--with-target=quartz --disable-video --with-font-backend=pango --with-gtk=2.0 
--disable-geolocation --disable-webkit2 CXXFLAGS="$CXXFLAGS -Wno-c++11-extensions" CFLAGS="$CFLAGS -std=c99"'>
+    <branch repo="webkit.org" module="webkitgtk-1.10.2.tar.xz" version="1.10.2">
+      <patch file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-1.10-no-x11.patch";
+             strip="1"/>
+      <patch file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-88407-portable-echo-n.patch";
+             strip="1"/>
+      <patch file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-1.10-platform-fixes.patch";
+             strip="1"/>
+      <patch file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-1.10-pango-includes.patch";
+             strip="1"/>
+    </branch>
+    <dependencies>
+      <dep package="libsoup"/>
+      <dep package="enchant"/>
+      <dep package="icu"/>
+      <dep package="meta-gtk-osx-freetype"/>
+    </dependencies>
+    <after>
+      <dep package="meta-gtk-osx-core"/>
+    </after>
+  </autotools>
 </moduleset>
diff --git a/patches/patch status b/patches/patch status
index 8bdaf7a..28888e5 100644
--- a/patches/patch status      
+++ b/patches/patch status      
@@ -28,10 +28,16 @@ libunique:  libunique-663913-sockaddr-un.patch No Love from maintainer
 pygtk:         pygtk-libtool.patch: The PyGtk-2.24.0 tarball uses an argument
                export-symbols-regex, which llvm-gcc doesn't seem to like.
 
-Webkit:                Webkit-1.6-enable-blob.patch
-               webkit-1.6-missing-utf8-include.patch
-               webkit-1.6-no-x11.patch
-               webkit-1.6-pango-includes.patch
+Webkit:                webkit-1.10-no-x11.patch
+               webkit-88407-portable-echo-n.patch
+                       Remove a few uses of "echo -n" that sh can't handle. This
+                       is a slightly different patch than the one at the bug, because
+                       that one doesn't apply.
+                       https://bugs.webkit.org/show_bug.cgi?id=88407
+               webkit-1.10-platform-fixes.patch
+                       some combinations of PLATFORM(GTK) and non-X11 not anticipated
+                       See also https://bugs.webkit.org/show_bug.cgi?id=58737
+               webkit-1.10-pango-includes.patch
 
 GConf:         GConf-characters.patch Bug 161209. Unlikely ever to be fixed.
 
diff --git a/patches/webkit-1.10-no-x11.patch b/patches/webkit-1.10-no-x11.patch
new file mode 100644
index 0000000..f67fa65
--- /dev/null
+++ b/patches/webkit-1.10-no-x11.patch
@@ -0,0 +1,39 @@
+--- a/Source/WebCore/GNUmakefile.list.am       2012-11-27 05:41:20.000000000 -0700
++++ b/Source/WebCore/GNUmakefile.list.am       2014-12-22 19:28:28.000000000 -0700
+@@ -5949,6 +5949,8 @@
+ webcore_sources += \
+       Source/WebCore/plugins/PluginPackageNone.cpp \
+       Source/WebCore/plugins/PluginViewNone.cpp
++webcoregtk_sources += \
++      Source/WebCore/platform/cairo/WidgetBackingStoreCairo.cpp
+ endif # END TARGET_WIN32
+ endif # END TARGET_X11
+ 
+--- a/configure.ac     2012-12-09 11:01:04.000000000 -0700
++++ b/configure.ac     2014-12-22 19:18:14.000000000 -0700
+@@ -1278,14 +1278,6 @@
+     AC_SUBST([GEOCLUE_LIBS])
+ fi
+ 
+-# check for XRender under Linux/Unix. Some linkers require explicit
+-# linkage (like GNU Gold), so we cannot rely on GTK+ pulling XRender
+-if test "$os_win32" = "no"; then
+-   PKG_CHECK_MODULES([XRENDER], [xrender])
+-   AC_SUBST([XRENDER_CFLAGS])
+-   AC_SUBST([XRENDER_LIBS])
+-fi
+-
+ # check if gstreamer is available
+ if test "$enable_video" = "yes" || test "$enable_web_audio" = "yes"; then
+     gstreamer_modules="gstreamer-$GST_API_VERSION >= $GSTREAMER_REQUIRED_VERSION
+--- a/Source/WebCore/bridge/npruntime_internal.h       2012-05-12 13:43:45.000000000 -0600
++++ b/Source/WebCore/bridge/npruntime_internal.h       2014-12-22 22:07:02.000000000 -0700
+@@ -29,6 +29,8 @@
+ #include "npfunctions.h"
+ #include "npruntime.h"
+ 
++#undef XP_UNIX
++
+ #ifdef XP_UNIX
+     #include <X11/Xresource.h>
+ 
diff --git a/patches/webkit-1.10-pango-includes.patch b/patches/webkit-1.10-pango-includes.patch
new file mode 100644
index 0000000..5c1a88a
--- /dev/null
+++ b/patches/webkit-1.10-pango-includes.patch
@@ -0,0 +1,12 @@
+--- a/Source/WebCore/GNUmakefile.am    2012-01-05 19:13:38.000000000 +0100
++++ b/Source/WebCore/GNUmakefile.am    2012-01-05 19:13:40.000000000 +0100
+@@ -154,7 +154,8 @@
+ if USE_PANGO
+ webcoregtk_cppflags += \
+       -DWTF_USE_PANGO=1 \
+-      -I$(srcdir)/Source/WebCore/platform/graphics/pango
++      -I$(srcdir)/Source/WebCore/platform/graphics/pango \
++      $(PANGO_CFLAGS)
+ endif # END USE_PANGO
+ 
+ # ----
diff --git a/patches/webkit-1.10-platform-fixes.patch b/patches/webkit-1.10-platform-fixes.patch
new file mode 100644
index 0000000..707732e
--- /dev/null
+++ b/patches/webkit-1.10-platform-fixes.patch
@@ -0,0 +1,31 @@
+--- a/Source/WTF/wtf/InlineASM.h       2012-11-23 13:12:16.000000000 -0700
++++ b/Source/WTF/wtf/InlineASM.h       2014-12-22 21:56:32.000000000 -0700
+@@ -77,7 +77,7 @@
+ // FIXME: figure out how this works on all the platforms. I know that
+ // on Linux, the preferred form is ".Lstuff" as opposed to "Lstuff".
+ // Don't know about any of the others.
+-#if PLATFORM(MAC)
++#if PLATFORM(MAC) || OS(DARWIN)
+ #define LOCAL_LABEL_STRING(name) "L" #name
+ #elif OS(LINUX)
+ #define LOCAL_LABEL_STRING(name) ".L" #name
+--- webkitgtk-1.10.2-orig/Source/WTF/wtf/ThreadingPthreads.cpp 2012-11-23 13:12:16.000000000 -0700
++++ webkitgtk-1.10.2/Source/WTF/wtf/ThreadingPthreads.cpp      2014-12-22 23:36:27.000000000 -0700
+@@ -55,7 +55,7 @@
+ #include <sys/time.h>
+ #endif
+ 
+-#if OS(MAC_OS_X) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 1060
++#if PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 1060
+ #include <objc/objc-auto.h>
+ #endif
+ 
+@@ -205,7 +205,7 @@
+     UNUSED_PARAM(threadName);
+ #endif
+ 
+-#if OS(MAC_OS_X) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 1060
++#if PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 1060
+     // All threads that potentially use APIs above the BSD layer must be registered with the Objective-C
+     // garbage collector in case API implementations use garbage-collected memory.
+     objc_registerThreadWithCollector();
diff --git a/patches/webkit-88407-portable-echo-n.patch b/patches/webkit-88407-portable-echo-n.patch
new file mode 100644
index 0000000..e621cd6
--- /dev/null
+++ b/patches/webkit-88407-portable-echo-n.patch
@@ -0,0 +1,13 @@
+--- a/Source/WebCore/GNUmakefile.am    2012-11-27 05:30:01.000000000 -0700
++++ b/Source/WebCore/GNUmakefile.am    2014-12-22 20:30:57.000000000 -0700
+@@ -953,8 +953,8 @@
+ .SECONDARY:
+ $(supplemental_dependency_file): $(SCRIPTS_FOR_PREPROCESS_IDLS) $(dom_binding_idls) $(idl_attributes_file)
+       $(AM_V_GEN)
+-      $(AM_V_at)echo -n > $(idl_files_list)
+-      $(AM_V_at)($(foreach idl, $(dom_binding_idls), echo $(idl) &&) echo -n) >> $(idl_files_list)
++      $(AM_V_at)> $(idl_files_list)
++      $(AM_V_at)($(foreach idl, $(dom_binding_idls), echo $(idl) &&) :) >> $(idl_files_list)
+       $(AM_V_at)$(PERL) -I$(WebCore)/bindings/scripts $(WebCore)/bindings/scripts/preprocess-idls.pl 
--defines "LANGUAGE_JAVASCRIPT=1 $(FEATURE_DEFINES)" --idlFilesList $(idl_files_list) 
--supplementalDependencyFile $@ --idlAttributesFile $(idl_attributes_file)
+ 
+ # This does not appear to work correctly with gnumake unless


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]