[gtk-osx: 5/7] Add webkit1gtk3 module for WebKit 2.4.8
- From: John Ralls <jralls src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk-osx: 5/7] Add webkit1gtk3 module for WebKit 2.4.8
- Date: Thu, 29 Jan 2015 23:36:40 +0000 (UTC)
commit fdef6d1759d43744bbe91f273183ca3ac875c77a
Author: Philip Chimento <philip chimento gmail com>
Date: Wed Jan 21 22:38:23 2015 -0800
Add webkit1gtk3 module for WebKit 2.4.8
The "webkit1gtk3" module is the last version of WebKitGTK that still
includes the WebKit 1 API. It's built for GTK 3.
The 2.4.x branch will continue to receive stable releases, so this module
should track it.
modulesets-stable/gtk-osx-unsupported.modules | 35 ++++++++++++++++++++++
modulesets-unstable/gtk-osx-unsupported.modules | 35 ++++++++++++++++++++++
modulesets/gtk-osx-unsupported.modules | 35 ++++++++++++++++++++++
patches/patch status | 11 +++++++
patches/webkit-126324-clang-check.patch | 33 ++++++++++++++++++++
patches/webkit-126433-check-platform-gtk.patch | 16 ++++++++++
patches/webkit-133293-cfi-clang-failure.patch | 21 +++++++++++++
patches/webkit-140167-disable-netscape-api.patch | 12 +++++++
8 files changed, 198 insertions(+), 0 deletions(-)
---
diff --git a/modulesets-stable/gtk-osx-unsupported.modules b/modulesets-stable/gtk-osx-unsupported.modules
index 1f516d5..3baa4d6 100644
--- a/modulesets-stable/gtk-osx-unsupported.modules
+++ b/modulesets-stable/gtk-osx-unsupported.modules
@@ -213,4 +213,39 @@
<dep package="meta-gstreamer-1.0"/>
</after>
</autotools>
+
+ <!-- This is WebKitGTK 2.4.x, the last version that had the WebKit1 API.
+ disable-webkit2: Requires both GTK2 and 3. Currently not supported.
+ disable-credential-storage: Requires libsecret. No module for this yet.
+ disable-geolocation: Requires geoclue 1 or 2. No module for this yet.
+ disable-video, disable-web-audio: Requires gstreamer. If you want video and
+ audio, add this to your .jhbuildrc:
+ append_autogenargs('WebKit', '--enable-video')
+ append_autogenargs('WebKit', '--enable-web-audio')
+ -j1: Workaround for https://bugs.webkit.org/show_bug.cgi?id=140171
+ -->
+ <autotools id="webkit1gtk3" autogen-sh="autoreconf" makeargs="-j1"
+ autogenargs="--enable-quartz-target --with-gtk=3.0 --disable-webkit2
--disable-credential-storage --disable-geolocation --disable-video --disable-web-audio
CXXFLAGS='-std=gnu++11'">
+ <branch repo="webkit.org" module="webkitgtk-2.4.8.tar.xz" version="2.4.8">
+ <patch file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-126324-clang-check.patch"
+ strip="1"/>
+ <patch
file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-140167-disable-netscape-api.patch"
+ strip="1"/>
+ <patch file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-133293-cfi-clang-failure.patch"
+ strip="1"/>
+ <patch file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-126433-check-platform-gtk.patch"
+ strip="1"/>
+ </branch>
+ <dependencies>
+ <dep package="libwebp"/>
+ <dep package="enchant"/>
+ <dep package="icu"/>
+ <dep package="libsoup"/>
+ <dep package="meta-gtk-osx-freetype"/>
+ </dependencies>
+ <after>
+ <dep package="meta-gtk-osx-gtk3"/>
+ <dep package="meta-gstreamer-1.0"/>
+ </after>
+ </autotools>
</moduleset>
diff --git a/modulesets-unstable/gtk-osx-unsupported.modules b/modulesets-unstable/gtk-osx-unsupported.modules
index c7309f4..783770f 100644
--- a/modulesets-unstable/gtk-osx-unsupported.modules
+++ b/modulesets-unstable/gtk-osx-unsupported.modules
@@ -201,6 +201,41 @@
</after>
</autotools>
+ <!-- This is WebKitGTK 2.4.x, the last version that had the WebKit1 API.
+ disable-webkit2: Requires both GTK2 and 3. Currently not supported.
+ disable-credential-storage: Requires libsecret. No module for this yet.
+ disable-geolocation: Requires geoclue 1 or 2. No module for this yet.
+ disable-video, disable-web-audio: Requires gstreamer. If you want video and
+ audio, add this to your .jhbuildrc:
+ append_autogenargs('WebKit', '--enable-video')
+ append_autogenargs('WebKit', '--enable-web-audio')
+ -j1: Workaround for https://bugs.webkit.org/show_bug.cgi?id=140171
+ -->
+ <autotools id="webkit1gtk3" autogen-sh="autoreconf" makeargs="-j1"
+ autogenargs="--enable-quartz-target --with-gtk=3.0 --disable-webkit2
--disable-credential-storage --disable-geolocation --disable-video --disable-web-audio
CXXFLAGS='-std=gnu++11'">
+ <branch repo="webkit.org" module="webkitgtk-2.4.8.tar.xz" version="2.4.8">
+ <patch file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-126324-clang-check.patch"
+ strip="1"/>
+ <patch
file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-140167-disable-netscape-api.patch"
+ strip="1"/>
+ <patch file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-133293-cfi-clang-failure.patch"
+ strip="1"/>
+ <patch file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-126433-check-platform-gtk.patch"
+ strip="1"/>
+ </branch>
+ <dependencies>
+ <dep package="libwebp"/>
+ <dep package="enchant"/>
+ <dep package="icu"/>
+ <dep package="libsoup"/>
+ <dep package="meta-gtk-osx-freetype"/>
+ </dependencies>
+ <after>
+ <dep package="meta-gtk-osx-gtk3"/>
+ <dep package="meta-gstreamer-1.0"/>
+ </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 75bc759..b7dc092 100644
--- a/modulesets/gtk-osx-unsupported.modules
+++ b/modulesets/gtk-osx-unsupported.modules
@@ -207,4 +207,39 @@
<dep package="meta-gstreamer-1.0"/>
</after>
</autotools>
+
+ <!-- This is WebKitGTK 2.4.x, the last version that had the WebKit1 API.
+ disable-webkit2: Requires both GTK2 and 3. Currently not supported.
+ disable-credential-storage: Requires libsecret. No module for this yet.
+ disable-geolocation: Requires geoclue 1 or 2. No module for this yet.
+ disable-video, disable-web-audio: Requires gstreamer. If you want video and
+ audio, add this to your .jhbuildrc:
+ append_autogenargs('WebKit', '--enable-video')
+ append_autogenargs('WebKit', '--enable-web-audio')
+ -j1: Workaround for https://bugs.webkit.org/show_bug.cgi?id=140171
+ -->
+ <autotools id="webkit1gtk3" autogen-sh="autoreconf" makeargs="-j1"
+ autogenargs="--enable-quartz-target --with-gtk=3.0 --disable-webkit2
--disable-credential-storage --disable-geolocation --disable-video --disable-web-audio
CXXFLAGS='-std=gnu++11'">
+ <branch repo="webkit.org" module="webkitgtk-2.4.8.tar.xz" version="2.4.8">
+ <patch file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-126324-clang-check.patch"
+ strip="1"/>
+ <patch
file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-140167-disable-netscape-api.patch"
+ strip="1"/>
+ <patch file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-133293-cfi-clang-failure.patch"
+ strip="1"/>
+ <patch file="http://git.gnome.org/browse/gtk-osx/plain/patches/webkit-126433-check-platform-gtk.patch"
+ strip="1"/>
+ </branch>
+ <dependencies>
+ <dep package="libwebp"/>
+ <dep package="enchant"/>
+ <dep package="icu"/>
+ <dep package="libsoup"/>
+ <dep package="meta-gtk-osx-freetype"/>
+ </dependencies>
+ <after>
+ <dep package="meta-gtk-osx-gtk3"/>
+ <dep package="meta-gstreamer-1.0"/>
+ </after>
+ </autotools>
</moduleset>
diff --git a/patches/patch status b/patches/patch status
index 28888e5..81d9038 100644
--- a/patches/patch status
+++ b/patches/patch status
@@ -39,6 +39,17 @@ Webkit: webkit-1.10-no-x11.patch
See also https://bugs.webkit.org/show_bug.cgi?id=58737
webkit-1.10-pango-includes.patch
+webkit1gtk: webkit-126324-clang-check.patch
+ https://bugs.webkit.org/show_bug.cgi?id=126324
+ webkit-140167-disable-netscape-api.patch
+ There's no configure option to disable this. Work around by
+ modifying the variable directly.
+ https://bugs.webkit.org/show_bug.cgi?id=140167
+ webkit-133293-cfi-clang-failure.patch
+ Workaround for https://bugs.webkit.org/show_bug.cgi?id=133293
+ webkit-126433-check-platform-gtk.patch
+ https://bugs.webkit.org/show_bug.cgi?id=126433
+
GConf: GConf-characters.patch Bug 161209. Unlikely ever to be fixed.
Glade: Glade-3-8-Bug-663492-Update-Mac-integration-bindings-to-.patch
diff --git a/patches/webkit-126324-clang-check.patch b/patches/webkit-126324-clang-check.patch
new file mode 100644
index 0000000..ef3be0e
--- /dev/null
+++ b/patches/webkit-126324-clang-check.patch
@@ -0,0 +1,33 @@
+diff --git a/Source/autotools/CheckSystemAndBasicDependencies.m4
b/Source/autotools/CheckSystemAndBasicDependencies.m4
+--- a/Source/autotools/CheckSystemAndBasicDependencies.m4 (revision 174258)
++++ b/Source/autotools/CheckSystemAndBasicDependencies.m4 (working copy)
+@@ -87,12 +87,12 @@
+ c_compiler="unknown"
+ AC_LANG_PUSH([C])
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
+-#if !(defined(__GNUC__) && !defined(__clang__) && !defined(__INTEL_COMPILER) && __GNUC__ >= 4 &&
__GNUC_MINOR__ >= 7)
++#if !(defined(__GNUC__) && !defined(__clang__) && !defined(__INTEL_COMPILER) && (__GNUC__ >= 4 || (__GNUC__
== 4 && __GNUC_MINOR__ >= 7)))
+ #error Not a supported GCC compiler
+ #endif
+ ])], [c_compiler="gcc"], [])
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
+-#if !(defined(__clang__) && __clang_major__ >= 3 && __clang_minor__ >= 3)
++#if !(defined(__clang__) && (__apple_build_version__ >= 4250024 || (!defined(__apple_build_version__) &&
(__clang_major__ > 3 || (__clang_major__ == 3 && __clang_minor__ >= 3)))))
+ #error Not a supported Clang compiler
+ #endif
+ ])], [c_compiler="clang"], [])
+@@ -106,12 +106,12 @@
+ cxx_compiler="unknown"
+ AC_LANG_PUSH([C++])
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
+-#if !(defined(__GNUG__) && defined(__GNUC__) && !defined(__clang__) && !defined(__INTEL_COMPILER) &&
__GNUC__ >= 4 && __GNUC_MINOR__ >= 7)
++#if !(defined(__GNUG__) && defined(__GNUC__) && !defined(__clang__) && !defined(__INTEL_COMPILER) &&
(__GNUC__ >= 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 7)))
+ #error Not a supported G++ compiler
+ #endif
+ ])], [cxx_compiler="g++"], [])
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
+-#if !(defined(__clang__) && __clang_major__ >= 3 && __clang_minor__ >= 3)
++#if !(defined(__clang__) && (__apple_build_version__ >= 4250024 || (!defined(__apple_build_version__) &&
(__clang_major__ > 3 || (__clang_major__ == 3 && __clang_minor__ >= 3)))))
+ #error Not a supported Clang++ compiler
+ #endif
+ ])], [cxx_compiler="clang++"], [])
diff --git a/patches/webkit-126433-check-platform-gtk.patch b/patches/webkit-126433-check-platform-gtk.patch
new file mode 100644
index 0000000..68493be
--- /dev/null
+++ b/patches/webkit-126433-check-platform-gtk.patch
@@ -0,0 +1,16 @@
+Index: Source/JavaScriptCore/API/WebKitAvailability.h
+===================================================================
+diff --git a/JavaScriptCore/API/WebKitAvailability.h b/Source/JavaScriptCore/API/WebKitAvailability.h
+--- a/Source/JavaScriptCore/API/WebKitAvailability.h (revision 174258)
++++ b/Source/JavaScriptCore/API/WebKitAvailability.h (working copy)
+@@ -26,7 +26,9 @@
+ #ifndef __WebKitAvailability__
+ #define __WebKitAvailability__
+
+-#ifdef __APPLE__
++#include <wtf/Platform.h>
++
++#if defined(__APPLE__) && !PLATFORM(GTK)
+ #include <AvailabilityMacros.h>
+ #include <CoreFoundation/CoreFoundation.h>
+ #else
diff --git a/patches/webkit-133293-cfi-clang-failure.patch b/patches/webkit-133293-cfi-clang-failure.patch
new file mode 100644
index 0000000..649f276
--- /dev/null
+++ b/patches/webkit-133293-cfi-clang-failure.patch
@@ -0,0 +1,21 @@
+diff --git a/Source/JavaScriptCore/llint/LowLevelInterpreter.cpp
b/Source/JavaScriptCore/llint/LowLevelInterpreter.cpp
+--- a/Source/JavaScriptCore/llint/LowLevelInterpreter.cpp (revision 174258)
++++ b/Source/JavaScriptCore/llint/LowLevelInterpreter.cpp (working copy)
+@@ -522,7 +522,7 @@
+ //
+
+ // These are for building an interpreter from generated assembly code:
+-#if CPU(X86_64) && COMPILER(CLANG)
++#if 0
+ #define OFFLINE_ASM_BEGIN asm ( \
+ ".cfi_startproc\n"
+
+@@ -545,7 +545,7 @@
+ ".thumb\n" \
+ ".thumb_func " THUMB_FUNC_PARAM(label) "\n" \
+ SYMBOL_STRING(label) ":\n"
+-#elif CPU(X86_64) && COMPILER(CLANG)
++#elif 0
+ #define OFFLINE_ASM_GLOBAL_LABEL(label) \
+ ".text\n" \
+ ".globl " SYMBOL_STRING(label) "\n" \
diff --git a/patches/webkit-140167-disable-netscape-api.patch
b/patches/webkit-140167-disable-netscape-api.patch
new file mode 100644
index 0000000..080b05e
--- /dev/null
+++ b/patches/webkit-140167-disable-netscape-api.patch
@@ -0,0 +1,12 @@
+diff --git a/Source/autotools/SetupWebKitFeatures.m4 b/Source/autotools/SetupWebKitFeatures.m4
+--- a/Source/autotools/SetupWebKitFeatures.m4 (revision 174258)
++++ b/Source/autotools/SetupWebKitFeatures.m4 (working copy)
+@@ -146,7 +146,7 @@
+ ENABLE_MHTML=1 \
+ ENABLE_MOUSE_CURSOR_SCALE=0 \
+ ENABLE_NAVIGATOR_CONTENT_UTILS=0 \
+- ENABLE_NETSCAPE_PLUGIN_API=1 \
++ ENABLE_NETSCAPE_PLUGIN_API=0 \
+ ENABLE_NETWORK_INFO=0 \
+ ENABLE_NOTIFICATIONS=0 \
+ ENABLE_ORIENTATION_EVENTS=0 \
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]