summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Kanavin <alexander.kanavin@linux.intel.com>2015-09-10 21:18:07 +0300
committerRichard Purdie <richard.purdie@linuxfoundation.org>2015-09-14 20:46:39 +0100
commit572e50d73a1ddf97ec5e81fb114bbb5c730cae2e (patch)
tree2bc6cd350ab9b9e055d879366ef74911a1aa40e2
parent7eabed3039b28119bb6642205bf26460695cb22e (diff)
downloadpoky-572e50d73a1ddf97ec5e81fb114bbb5c730cae2e.tar.gz
webkitgtk: add a new recipe for latest upstream version
Also, add a backported patch that prevents too long command lines from happening. Recipe for the obsolete webkit-gtk 1.8.3 is removed in a separate commit. (From OE-Core rev: a7f06b7821f788f77ae5e0f2822480f85e338ad1) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-sato/webkit/files/0001-This-patch-fixes-a-command-line-that-is-too-long-ove.patch91
-rw-r--r--meta/recipes-sato/webkit/webkitgtk_2.8.5.bb57
2 files changed, 148 insertions, 0 deletions
diff --git a/meta/recipes-sato/webkit/files/0001-This-patch-fixes-a-command-line-that-is-too-long-ove.patch b/meta/recipes-sato/webkit/files/0001-This-patch-fixes-a-command-line-that-is-too-long-ove.patch
new file mode 100644
index 0000000000..28b3420537
--- /dev/null
+++ b/meta/recipes-sato/webkit/files/0001-This-patch-fixes-a-command-line-that-is-too-long-ove.patch
@@ -0,0 +1,91 @@
1From 22d5063c551d3c08c0a4ad8b80e08b793d53093d Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Thu, 10 Sep 2015 16:23:27 +0300
4Subject: [PATCH] This patch fixes a command line that is too long (over 100K!)
5 and is rejected by /bin/sh.
6
7Upstream-Status: Backport [should appear in 2.10, http://trac.webkit.org/changeset/184856]
8Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
9
10---
11 Source/WebKit2/PlatformGTK.cmake | 11 ++++++-----
12 Tools/gtk/generate-inspector-gresource-manifest.py | 16 ++++++++++++----
13 2 files changed, 18 insertions(+), 9 deletions(-)
14
15diff --git a/Source/WebKit2/PlatformGTK.cmake b/Source/WebKit2/PlatformGTK.cmake
16index a13af7c..058c241 100644
17--- a/Source/WebKit2/PlatformGTK.cmake
18+++ b/Source/WebKit2/PlatformGTK.cmake
19@@ -408,7 +408,7 @@ set(WebKit2WebExtension_INSTALLED_HEADERS
20 ${WEBKIT2_DIR}/WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h
21 )
22
23-file(GLOB InspectorFiles
24+set(InspectorFiles
25 ${CMAKE_SOURCE_DIR}/Source/WebInspectorUI/UserInterface/*.html
26 ${CMAKE_SOURCE_DIR}/Source/WebInspectorUI/UserInterface/Base/*.js
27 ${CMAKE_SOURCE_DIR}/Source/WebInspectorUI/UserInterface/Controllers/*.css
28@@ -423,13 +423,14 @@ file(GLOB InspectorFiles
29 ${CMAKE_SOURCE_DIR}/Source/WebInspectorUI/UserInterface/Views/*.js
30 ${CMAKE_SOURCE_DIR}/Source/WebInspectorUI/UserInterface/Images/gtk/*.png
31 ${CMAKE_SOURCE_DIR}/Source/WebInspectorUI/UserInterface/Images/gtk/*.svg
32-)
33-
34-list(APPEND InspectorFiles
35 ${CMAKE_SOURCE_DIR}/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js
36 ${DERIVED_SOURCES_WEBINSPECTORUI_DIR}/UserInterface/Protocol/InspectorBackendCommands.js
37 )
38
39+file(GLOB InspectorFilesDependencies
40+ ${InspectorFiles}
41+)
42+
43 # This is necessary because of a conflict between the GTK+ API WebKitVersion.h and one generated by WebCore.
44 list(INSERT WebKit2_INCLUDE_DIRECTORIES 0
45 "${FORWARDING_HEADERS_WEBKIT2GTK_DIR}"
46@@ -564,7 +565,7 @@ add_custom_command(
47
48 add_custom_command(
49 OUTPUT ${DERIVED_SOURCES_WEBKIT2GTK_DIR}/InspectorGResourceBundle.xml
50- DEPENDS ${InspectorFiles}
51+ DEPENDS ${InspectorFilesDependencies}
52 ${TOOLS_DIR}/gtk/generate-inspector-gresource-manifest.py
53 COMMAND ${TOOLS_DIR}/gtk/generate-inspector-gresource-manifest.py --output=${DERIVED_SOURCES_WEBKIT2GTK_DIR}/InspectorGResourceBundle.xml ${InspectorFiles}
54 VERBATIM
55diff --git a/Tools/gtk/generate-inspector-gresource-manifest.py b/Tools/gtk/generate-inspector-gresource-manifest.py
56index 0687c4c..03060cf 100755
57--- a/Tools/gtk/generate-inspector-gresource-manifest.py
58+++ b/Tools/gtk/generate-inspector-gresource-manifest.py
59@@ -16,6 +16,7 @@
60 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
61
62 import argparse
63+import glob
64 import os
65 import sys
66
67@@ -26,10 +27,17 @@ BASE_DIR = 'WebInspectorUI/'
68 def get_filenames(args):
69 filenames = []
70
71- for filename in args:
72- base_dir_index = filename.rfind(BASE_DIR)
73- if base_dir_index != -1:
74- filenames.append(filename[base_dir_index + len(BASE_DIR):])
75+ for pattern in args:
76+ paths = glob.glob(pattern)
77+ for filename in paths:
78+ base_dir_index = filename.rfind(BASE_DIR)
79+ if base_dir_index != -1:
80+ name = filename[base_dir_index + len(BASE_DIR):]
81+ # The result should use forward slashes, thus make sure any os-specific
82+ # separator, added by the glob.glob() call, is properly replaced
83+ if os.sep != '/':
84+ name = name.replace(os.sep, '/')
85+ filenames.append(name)
86 return filenames
87
88
89--
902.1.4
91
diff --git a/meta/recipes-sato/webkit/webkitgtk_2.8.5.bb b/meta/recipes-sato/webkit/webkitgtk_2.8.5.bb
new file mode 100644
index 0000000000..365f20bbb8
--- /dev/null
+++ b/meta/recipes-sato/webkit/webkitgtk_2.8.5.bb
@@ -0,0 +1,57 @@
1SUMMARY = "WebKit web rendering engine for the GTK+ platform"
2HOMEPAGE = "http://www.webkitgtk.org/"
3BUGTRACKER = "http://bugs.webkit.org/"
4
5LICENSE = "BSD & LGPLv2+"
6LIC_FILES_CHKSUM = "file://Source/JavaScriptCore/COPYING.LIB;md5=d0c6d6397a5d84286dda758da57bd691 \
7 file://Source/WebKit/LICENSE;md5=4646f90082c40bcf298c285f8bab0b12 \
8 file://Source/WebCore/LICENSE-APPLE;md5=4646f90082c40bcf298c285f8bab0b12 \
9 file://Source/WebCore/LICENSE-LGPL-2;md5=36357ffde2b64ae177b2494445b79d21 \
10 file://Source/WebCore/LICENSE-LGPL-2.1;md5=a778a33ef338abbaf8b8a7c36b6eec80 \
11 "
12
13SRC_URI = "\
14 http://www.webkitgtk.org/releases/${BPN}-${PV}.tar.xz \
15 file://0001-This-patch-fixes-a-command-line-that-is-too-long-ove.patch \
16 "
17SRC_URI[md5sum] = "df79991848a5096d3a75289ebce547ae"
18SRC_URI[sha256sum] = "3d1f0c534935f43fd74df90f2648fcee672d60f1f57a30fa557a77891ae04d20"
19
20inherit cmake lib_package pkgconfig perlnative pythonnative
21
22DEPENDS = "zlib enchant libsoup-2.4 curl libxml2 cairo libxslt libxt libidn gnutls \
23 gtk+ gtk+3 gstreamer1.0 gstreamer1.0-plugins-base flex-native gperf-native sqlite3 \
24 pango icu bison-native gnome-common gawk intltool-native libwebp \
25 atk udev harfbuzz jpeg libpng pulseaudio librsvg libtheora libvorbis libxcomposite libxtst \
26 ruby-native libsecret libnotify gstreamer1.0-plugins-bad \
27 "
28DEPENDS += " ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'virtual/libgl', '', d)}"
29
30EXTRA_OECMAKE = " \
31 -DPORT=GTK \
32 -DCMAKE_BUILD_TYPE=Release \
33 -DENABLE_INTROSPECTION=False \
34 -DENABLE_MINIBROWSER=True \
35 ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', '-DENABLE_WEBGL=True', '-DENABLE_WEBGL=False', d)} \
36 "
37
38# Javascript JIT is not supported on powerpc
39EXTRA_OECMAKE_append_powerpc = " -DENABLE_JIT=False "
40EXTRA_OECMAKE_append_powerpc64 = " -DENABLE_JIT=False "
41
42# ARM JIT code does not build on ARMv5/6 anymore, apparently they test only on v7 onwards
43EXTRA_OECMAKE_append_armv5 = " -DENABLE_JIT=False "
44EXTRA_OECMAKE_append_armv6 = " -DENABLE_JIT=False "
45
46# binutils 2.25.1 has a bug on aarch64:
47# https://sourceware.org/bugzilla/show_bug.cgi?id=18430
48EXTRA_OECMAKE_append_aarch64 = " -DUSE_LD_GOLD=False "
49
50# JIT not supported on MIPS either
51EXTRA_OECMAKE_append_mips = " -DENABLE_JIT=False "
52EXTRA_OECMAKE_append_mips64 = " -DENABLE_JIT=False "
53
54FILES_${PN} += "${libdir}/webkit2gtk-4.0/injected-bundle/libwebkit2gtkinjectedbundle.so"
55FILES_${PN}-dbg += "${libdir}/webkit2gtk-4.0/injected-bundle/.debug/libwebkit2gtkinjectedbundle.so"
56FILES_${PN}-dbg += "${libdir}/webkitgtk/webkit2gtk-4.0/.debug/*"
57