Openembedded Core Discussions
 help / color / mirror / Atom feed
* [PATCH] webkitgtk: add a new recipe for latest upstream version
@ 2015-09-10 18:18 Alexander Kanavin
  2015-09-10 19:40 ` Burton, Ross
  2015-09-11  7:23 ` Burton, Ross
  0 siblings, 2 replies; 6+ messages in thread
From: Alexander Kanavin @ 2015-09-10 18:18 UTC (permalink / raw)
  To: openembedded-core, ross.burton

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: 1ffa1c36f5d3d3f076840c9239c17f13f36064c3)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
---
 ...fixes-a-command-line-that-is-too-long-ove.patch | 89 ++++++++++++++++++++++
 meta/recipes-sato/webkit/webkitgtk_2.8.5.bb        | 57 ++++++++++++++
 2 files changed, 146 insertions(+)
 create mode 100644 meta/recipes-sato/webkit/files/0001-This-patch-fixes-a-command-line-that-is-too-long-ove.patch
 create mode 100644 meta/recipes-sato/webkit/webkitgtk_2.8.5.bb

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 0000000..ee9c807
--- /dev/null
+++ b/meta/recipes-sato/webkit/files/0001-This-patch-fixes-a-command-line-that-is-too-long-ove.patch
@@ -0,0 +1,89 @@
+From 22d5063c551d3c08c0a4ad8b80e08b793d53093d Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Thu, 10 Sep 2015 16:23:27 +0300
+Subject: [PATCH] This patch fixes a command line that is too long (over 100K!)
+ and is rejected by /bin/sh.
+
+Upstream-status: Backport [should appear in 2.10, http://trac.webkit.org/changeset/184856]
+---
+ Source/WebKit2/PlatformGTK.cmake                   | 11 ++++++-----
+ Tools/gtk/generate-inspector-gresource-manifest.py | 16 ++++++++++++----
+ 2 files changed, 18 insertions(+), 9 deletions(-)
+
+diff --git a/Source/WebKit2/PlatformGTK.cmake b/Source/WebKit2/PlatformGTK.cmake
+index a13af7c..058c241 100644
+--- a/Source/WebKit2/PlatformGTK.cmake
++++ b/Source/WebKit2/PlatformGTK.cmake
+@@ -408,7 +408,7 @@ set(WebKit2WebExtension_INSTALLED_HEADERS
+     ${WEBKIT2_DIR}/WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h
+ )
+ 
+-file(GLOB InspectorFiles
++set(InspectorFiles
+     ${CMAKE_SOURCE_DIR}/Source/WebInspectorUI/UserInterface/*.html
+     ${CMAKE_SOURCE_DIR}/Source/WebInspectorUI/UserInterface/Base/*.js
+     ${CMAKE_SOURCE_DIR}/Source/WebInspectorUI/UserInterface/Controllers/*.css
+@@ -423,13 +423,14 @@ file(GLOB InspectorFiles
+     ${CMAKE_SOURCE_DIR}/Source/WebInspectorUI/UserInterface/Views/*.js
+     ${CMAKE_SOURCE_DIR}/Source/WebInspectorUI/UserInterface/Images/gtk/*.png
+     ${CMAKE_SOURCE_DIR}/Source/WebInspectorUI/UserInterface/Images/gtk/*.svg
+-)
+-
+-list(APPEND InspectorFiles
+     ${CMAKE_SOURCE_DIR}/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js
+     ${DERIVED_SOURCES_WEBINSPECTORUI_DIR}/UserInterface/Protocol/InspectorBackendCommands.js
+ )
+ 
++file(GLOB InspectorFilesDependencies
++    ${InspectorFiles}
++)
++
+ # This is necessary because of a conflict between the GTK+ API WebKitVersion.h and one generated by WebCore.
+ list(INSERT WebKit2_INCLUDE_DIRECTORIES 0
+     "${FORWARDING_HEADERS_WEBKIT2GTK_DIR}"
+@@ -564,7 +565,7 @@ add_custom_command(
+ 
+ add_custom_command(
+     OUTPUT ${DERIVED_SOURCES_WEBKIT2GTK_DIR}/InspectorGResourceBundle.xml
+-    DEPENDS ${InspectorFiles}
++    DEPENDS ${InspectorFilesDependencies}
+             ${TOOLS_DIR}/gtk/generate-inspector-gresource-manifest.py
+     COMMAND ${TOOLS_DIR}/gtk/generate-inspector-gresource-manifest.py --output=${DERIVED_SOURCES_WEBKIT2GTK_DIR}/InspectorGResourceBundle.xml ${InspectorFiles}
+     VERBATIM
+diff --git a/Tools/gtk/generate-inspector-gresource-manifest.py b/Tools/gtk/generate-inspector-gresource-manifest.py
+index 0687c4c..03060cf 100755
+--- a/Tools/gtk/generate-inspector-gresource-manifest.py
++++ b/Tools/gtk/generate-inspector-gresource-manifest.py
+@@ -16,6 +16,7 @@
+ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+ 
+ import argparse
++import glob
+ import os
+ import sys
+ 
+@@ -26,10 +27,17 @@ BASE_DIR = 'WebInspectorUI/'
+ def get_filenames(args):
+     filenames = []
+ 
+-    for filename in args:
+-        base_dir_index = filename.rfind(BASE_DIR)
+-        if base_dir_index != -1:
+-            filenames.append(filename[base_dir_index + len(BASE_DIR):])
++    for pattern in args:
++        paths = glob.glob(pattern)
++        for filename in paths:
++            base_dir_index = filename.rfind(BASE_DIR)
++            if base_dir_index != -1:
++                name = filename[base_dir_index + len(BASE_DIR):]
++                # The result should use forward slashes, thus make sure any os-specific
++                # separator, added by the glob.glob() call, is properly replaced
++                if os.sep != '/':
++                    name = name.replace(os.sep, '/')
++                filenames.append(name)
+     return filenames
+ 
+ 
+-- 
+2.1.4
+
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 0000000..365f20b
--- /dev/null
+++ b/meta/recipes-sato/webkit/webkitgtk_2.8.5.bb
@@ -0,0 +1,57 @@
+SUMMARY = "WebKit web rendering engine for the GTK+ platform"
+HOMEPAGE = "http://www.webkitgtk.org/"
+BUGTRACKER = "http://bugs.webkit.org/"
+
+LICENSE = "BSD & LGPLv2+"
+LIC_FILES_CHKSUM = "file://Source/JavaScriptCore/COPYING.LIB;md5=d0c6d6397a5d84286dda758da57bd691 \
+                    file://Source/WebKit/LICENSE;md5=4646f90082c40bcf298c285f8bab0b12 \
+                    file://Source/WebCore/LICENSE-APPLE;md5=4646f90082c40bcf298c285f8bab0b12 \
+		    file://Source/WebCore/LICENSE-LGPL-2;md5=36357ffde2b64ae177b2494445b79d21 \
+		    file://Source/WebCore/LICENSE-LGPL-2.1;md5=a778a33ef338abbaf8b8a7c36b6eec80 \
+		   "
+
+SRC_URI = "\
+  http://www.webkitgtk.org/releases/${BPN}-${PV}.tar.xz \
+  file://0001-This-patch-fixes-a-command-line-that-is-too-long-ove.patch \
+  "
+SRC_URI[md5sum] = "df79991848a5096d3a75289ebce547ae"
+SRC_URI[sha256sum] = "3d1f0c534935f43fd74df90f2648fcee672d60f1f57a30fa557a77891ae04d20"
+
+inherit cmake lib_package pkgconfig perlnative pythonnative
+
+DEPENDS = "zlib enchant libsoup-2.4 curl libxml2 cairo libxslt libxt libidn gnutls \
+           gtk+ gtk+3 gstreamer1.0 gstreamer1.0-plugins-base flex-native gperf-native sqlite3 \
+	   pango icu bison-native gnome-common gawk intltool-native libwebp \
+	   atk udev harfbuzz jpeg libpng pulseaudio librsvg libtheora libvorbis libxcomposite libxtst \
+	   ruby-native libsecret libnotify gstreamer1.0-plugins-bad \
+          "
+DEPENDS += " ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'virtual/libgl', '', d)}"
+
+EXTRA_OECMAKE = " \
+		-DPORT=GTK \
+		-DCMAKE_BUILD_TYPE=Release \
+		-DENABLE_INTROSPECTION=False \
+		-DENABLE_MINIBROWSER=True \
+	        ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', '-DENABLE_WEBGL=True', '-DENABLE_WEBGL=False', d)} \
+		"
+
+# Javascript JIT is not supported on powerpc
+EXTRA_OECMAKE_append_powerpc = " -DENABLE_JIT=False "
+EXTRA_OECMAKE_append_powerpc64 = " -DENABLE_JIT=False "
+
+# ARM JIT code does not build on ARMv5/6 anymore, apparently they test only on v7 onwards
+EXTRA_OECMAKE_append_armv5 = " -DENABLE_JIT=False "
+EXTRA_OECMAKE_append_armv6 = " -DENABLE_JIT=False "
+
+# binutils 2.25.1 has a bug on aarch64:
+# https://sourceware.org/bugzilla/show_bug.cgi?id=18430
+EXTRA_OECMAKE_append_aarch64 = " -DUSE_LD_GOLD=False "
+
+# JIT not supported on MIPS either
+EXTRA_OECMAKE_append_mips = " -DENABLE_JIT=False "
+EXTRA_OECMAKE_append_mips64 = " -DENABLE_JIT=False "
+
+FILES_${PN} += "${libdir}/webkit2gtk-4.0/injected-bundle/libwebkit2gtkinjectedbundle.so"
+FILES_${PN}-dbg += "${libdir}/webkit2gtk-4.0/injected-bundle/.debug/libwebkit2gtkinjectedbundle.so"
+FILES_${PN}-dbg += "${libdir}/webkitgtk/webkit2gtk-4.0/.debug/*"
+
-- 
2.1.4



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

* Re: [PATCH] webkitgtk: add a new recipe for latest upstream version
  2015-09-10 18:18 [PATCH] webkitgtk: add a new recipe for latest upstream version Alexander Kanavin
@ 2015-09-10 19:40 ` Burton, Ross
  2015-09-11  7:12   ` alexander.kanavin
  2015-09-11  7:23 ` Burton, Ross
  1 sibling, 1 reply; 6+ messages in thread
From: Burton, Ross @ 2015-09-10 19:40 UTC (permalink / raw)
  To: Alexander Kanavin; +Cc: OE-core

[-- Attachment #1: Type: text/plain, Size: 381 bytes --]

On 10 September 2015 at 19:18, Alexander Kanavin <
alexander.kanavin@linux.intel.com> wrote:

> +Upstream-status: Backport [should appear in 2.10,
> http://trac.webkit.org/changeset/184856]
>

Capital S in Status, and missing a signed-off-by (your name in the patch
header doesn't count).  I've made these changes locally, don't bother
sending a revised edition.

Ross

[-- Attachment #2: Type: text/html, Size: 894 bytes --]

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

* Re: [PATCH] webkitgtk: add a new recipe for latest upstream version
  2015-09-10 19:40 ` Burton, Ross
@ 2015-09-11  7:12   ` alexander.kanavin
  2015-09-11  7:19     ` Burton, Ross
  0 siblings, 1 reply; 6+ messages in thread
From: alexander.kanavin @ 2015-09-11  7:12 UTC (permalink / raw)
  To: Burton, Ross; +Cc: OE-core

> On 10 September 2015 at 19:18, Alexander Kanavin <
> alexander.kanavin@linux.intel.com> wrote:
>
>> +Upstream-status: Backport [should appear in 2.10,
>> http://trac.webkit.org/changeset/184856]
>>
>
> Capital S in Status, and missing a signed-off-by (your name in the patch
> header doesn't count).  I've made these changes locally, don't bother
> sending a revised edition.

Wait a moment, why do we need a second signed-off-by there? The commit
that adds the custom patch already has my signed-off-by, so it is
redundant to repeat it I think.

Alex


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

* Re: [PATCH] webkitgtk: add a new recipe for latest upstream version
  2015-09-11  7:12   ` alexander.kanavin
@ 2015-09-11  7:19     ` Burton, Ross
  0 siblings, 0 replies; 6+ messages in thread
From: Burton, Ross @ 2015-09-11  7:19 UTC (permalink / raw)
  To: Alexander Kanavin; +Cc: OE-core

[-- Attachment #1: Type: text/plain, Size: 1052 bytes --]

On 11 September 2015 at 08:12, <alexander.kanavin@linux.intel.com> wrote:

> Wait a moment, why do we need a second signed-off-by there? The commit
> that adds the custom patch already has my signed-off-by, so it is
> redundant to repeat it I think.
>

Because the patch and the commit are not always tied together - if the
patch gets copied for another recipe then there's no way to find out who
added it, and VCS migrations complicate chasing history.  It's not uncommon
to be chasing down who created a patch to get additional context some seven
years after it was created, which at this point in time means traversing
two repos and three VCS migrations.   I know this happens because I've
spent 30 minutes chasing a crazy patch back to monotone commits in
oe-classic only to find that I created it back in 2008...

Another real example: python3 has some setuptool patches which were added
by Khem.  From the Signed-off we can see that the patch was actually
created by Richard and simply copied from the python2 recipes.

Ross

[-- Attachment #2: Type: text/html, Size: 1545 bytes --]

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

* Re: [PATCH] webkitgtk: add a new recipe for latest upstream version
  2015-09-10 18:18 [PATCH] webkitgtk: add a new recipe for latest upstream version Alexander Kanavin
  2015-09-10 19:40 ` Burton, Ross
@ 2015-09-11  7:23 ` Burton, Ross
  2015-09-11 20:15   ` alexander.kanavin
  1 sibling, 1 reply; 6+ messages in thread
From: Burton, Ross @ 2015-09-11  7:23 UTC (permalink / raw)
  To: Alexander Kanavin; +Cc: OE-core

[-- Attachment #1: Type: text/plain, Size: 15186 bytes --]

This is now failing on qemumips for me:

|
/data/poky-master/tmp/sysroots/x86_64-linux/usr/libexec/mips-poky-linux/gcc/mips-poky-linux/5.2.0/ld:
CMakeFiles/JavaScriptCore.dir/parser/Lexer.cpp.o: Can't find matching LO16
reloc against `_ZN3JSC5LexerIhE13internalShiftILi4EEEvv.isra.66' for
R_MIPS_GOT16 at 0x6394 in section
`.text._ZN3JSC5LexerIhE3lexEPNS_7JSTokenEjb[_ZN3JSC5LexerIhE3lexEPNS_7JSTokenEjb]'
|
/data/poky-master/tmp/sysroots/x86_64-linux/usr/libexec/mips-poky-linux/gcc/mips-poky-linux/5.2.0/ld:
CMakeFiles/JavaScriptCore.dir/parser/Lexer.cpp.o: Can't find matching LO16
reloc against `_ZN3JSC5LexerIhE13internalShiftILi6EEEvv.isra.67' for
R_MIPS_GOT16 at 0x6d0c in section
`.text._ZN3JSC5LexerIhE3lexEPNS_7JSTokenEjb[_ZN3JSC5LexerIhE3lexEPNS_7JSTokenEjb]'
|
/data/poky-master/tmp/sysroots/x86_64-linux/usr/libexec/mips-poky-linux/gcc/mips-poky-linux/5.2.0/ld:
CMakeFiles/JavaScriptCore.dir/parser/Lexer.cpp.o: Can't find matching LO16
reloc against `_ZN3JSC5LexerIhE13internalShiftILi3EEEvv.isra.63' for
R_MIPS_GOT16 at 0x6d48 in section
`.text._ZN3JSC5LexerIhE3lexEPNS_7JSTokenEjb[_ZN3JSC5LexerIhE3lexEPNS_7JSTokenEjb]'
|
/data/poky-master/tmp/sysroots/x86_64-linux/usr/libexec/mips-poky-linux/gcc/mips-poky-linux/5.2.0/ld:
CMakeFiles/JavaScriptCore.dir/parser/Lexer.cpp.o: Can't find matching LO16
reloc against `_ZN3JSC5LexerIhE13internalShiftILi6EEEvv.isra.67' for
R_MIPS_GOT16 at 0x6d94 in section
`.text._ZN3JSC5LexerIhE3lexEPNS_7JSTokenEjb[_ZN3JSC5LexerIhE3lexEPNS_7JSTokenEjb]'
|
/data/poky-master/tmp/sysroots/x86_64-linux/usr/libexec/mips-poky-linux/gcc/mips-poky-linux/5.2.0/ld:
CMakeFiles/JavaScriptCore.dir/parser/Lexer.cpp.o: Can't find matching LO16
reloc against `_ZN3JSC5LexerIhE13internalShiftILi7EEEvv.isra.65' for
R_MIPS_GOT16 at 0x6f20 in section
`.text._ZN3JSC5LexerIhE3lexEPNS_7JSTokenEjb[_ZN3JSC5LexerIhE3lexEPNS_7JSTokenEjb]'
|
/data/poky-master/tmp/sysroots/x86_64-linux/usr/libexec/mips-poky-linux/gcc/mips-poky-linux/5.2.0/ld:
CMakeFiles/JavaScriptCore.dir/parser/Lexer.cpp.o: Can't find matching LO16
reloc against `_ZN3JSC5LexerItE13internalShiftILi6EEEvv.isra.79' for
R_MIPS_GOT16 at 0x6714 in section
`.text._ZN3JSC5LexerItE3lexEPNS_7JSTokenEjb[_ZN3JSC5LexerItE3lexEPNS_7JSTokenEjb]'
|
/data/poky-master/tmp/sysroots/x86_64-linux/usr/libexec/mips-poky-linux/gcc/mips-poky-linux/5.2.0/ld:
CMakeFiles/JavaScriptCore.dir/parser/Lexer.cpp.o: Can't find matching LO16
reloc against `_ZN3JSC5LexerItE13internalShiftILi6EEEvv.isra.79' for
R_MIPS_GOT16 at 0x6764 in section
`.text._ZN3JSC5LexerItE3lexEPNS_7JSTokenEjb[_ZN3JSC5LexerItE3lexEPNS_7JSTokenEjb]'
|
/data/poky-master/tmp/sysroots/x86_64-linux/usr/libexec/mips-poky-linux/gcc/mips-poky-linux/5.2.0/ld:
CMakeFiles/JavaScriptCore.dir/parser/Lexer.cpp.o: Can't find matching LO16
reloc against `_ZN3JSC5LexerItE13internalShiftILi3EEEvv.isra.75' for
R_MIPS_GOT16 at 0x67b4 in section
`.text._ZN3JSC5LexerItE3lexEPNS_7JSTokenEjb[_ZN3JSC5LexerItE3lexEPNS_7JSTokenEjb]'
|
/data/poky-master/tmp/sysroots/x86_64-linux/usr/libexec/mips-poky-linux/gcc/mips-poky-linux/5.2.0/ld:
CMakeFiles/JavaScriptCore.dir/parser/Lexer.cpp.o: Can't find matching LO16
reloc against `_ZN3JSC5LexerItE13internalShiftILi6EEEvv.isra.79' for
R_MIPS_GOT16 at 0x68b4 in section
`.text._ZN3JSC5LexerItE3lexEPNS_7JSTokenEjb[_ZN3JSC5LexerItE3lexEPNS_7JSTokenEjb]'
|
/data/poky-master/tmp/sysroots/x86_64-linux/usr/libexec/mips-poky-linux/gcc/mips-poky-linux/5.2.0/ld:
CMakeFiles/JavaScriptCore.dir/parser/Lexer.cpp.o: Can't find matching LO16
reloc against `_ZN3JSC5LexerItE13internalShiftILi3EEEvv.isra.75' for
R_MIPS_GOT16 at 0x6ab4 in section
`.text._ZN3JSC5LexerItE3lexEPNS_7JSTokenEjb[_ZN3JSC5LexerItE3lexEPNS_7JSTokenEjb]'
|
/data/poky-master/tmp/sysroots/x86_64-linux/usr/libexec/mips-poky-linux/gcc/mips-poky-linux/5.2.0/ld:
CMakeFiles/JavaScriptCore.dir/parser/Lexer.cpp.o: Can't find matching LO16
reloc against `_ZN3JSC5LexerItE13internalShiftILi7EEEvv.isra.77' for
R_MIPS_GOT16 at 0x6af0 in section
`.text._ZN3JSC5LexerItE3lexEPNS_7JSTokenEjb[_ZN3JSC5LexerItE3lexEPNS_7JSTokenEjb]'
|
/data/poky-master/tmp/sysroots/x86_64-linux/usr/libexec/mips-poky-linux/gcc/mips-poky-linux/5.2.0/ld:
CMakeFiles/JavaScriptCore.dir/parser/Lexer.cpp.o: Can't find matching LO16
reloc against `_ZN3JSC5LexerItE13internalShiftILi3EEEvv.isra.75' for
R_MIPS_GOT16 at 0x70cc in section
`.text._ZN3JSC5LexerItE3lexEPNS_7JSTokenEjb[_ZN3JSC5LexerItE3lexEPNS_7JSTokenEjb]'
|
/data/poky-master/tmp/sysroots/x86_64-linux/usr/libexec/mips-poky-linux/gcc/mips-poky-linux/5.2.0/ld:
CMakeFiles/JavaScriptCore.dir/parser/Lexer.cpp.o: Can't find matching LO16
reloc against `_ZN3JSC5LexerItE13internalShiftILi5EEEvv.isra.76' for
R_MIPS_GOT16 at 0x745c in section
`.text._ZN3JSC5LexerItE3lexEPNS_7JSTokenEjb[_ZN3JSC5LexerItE3lexEPNS_7JSTokenEjb]'
|
/data/poky-master/tmp/sysroots/x86_64-linux/usr/libexec/mips-poky-linux/gcc/mips-poky-linux/5.2.0/ld:
CMakeFiles/JavaScriptCore.dir/parser/Lexer.cpp.o: Can't find matching LO16
reloc against `_ZN3JSC5LexerItE13internalShiftILi3EEEvv.isra.75' for
R_MIPS_GOT16 at 0x7518 in section
`.text._ZN3JSC5LexerItE3lexEPNS_7JSTokenEjb[_ZN3JSC5LexerItE3lexEPNS_7JSTokenEjb]'
|
/data/poky-master/tmp/sysroots/x86_64-linux/usr/libexec/mips-poky-linux/gcc/mips-poky-linux/5.2.0/ld:
CMakeFiles/JavaScriptCore.dir/parser/Lexer.cpp.o: Can't find matching LO16
reloc against `_ZN3JSC5LexerItE13internalShiftILi3EEEvv.isra.75' for
R_MIPS_GOT16 at 0x7678 in section
`.text._ZN3JSC5LexerItE3lexEPNS_7JSTokenEjb[_ZN3JSC5LexerItE3lexEPNS_7JSTokenEjb]'
|
/data/poky-master/tmp/sysroots/x86_64-linux/usr/libexec/mips-poky-linux/gcc/mips-poky-linux/5.2.0/ld:
CMakeFiles/JavaScriptCore.dir/parser/Lexer.cpp.o: Can't find matching LO16
reloc against `_ZN3JSC5LexerItE13internalShiftILi4EEEvv.isra.78' for
R_MIPS_GOT16 at 0x7910 in section
`.text._ZN3JSC5LexerItE3lexEPNS_7JSTokenEjb[_ZN3JSC5LexerItE3lexEPNS_7JSTokenEjb]'
| CMakeFiles/JavaScriptCore.dir/runtime/JSArray.cpp.o: In function
`JSC::JSArray::push(JSC::ExecState*, JSC::JSValue)':
|
/data/poky-master/tmp/work/mips32r2-poky-linux/webkitgtk/2.8.5-r0/webkitgtk-2.8.5/Source/JavaScriptCore/runtime/JSArray.cpp:566:
undefined reference to `void
JSC::JSObject::putByIndexBeyondVectorLengthWithoutAttributes<(unsigned
char)20>(JSC::ExecState*, unsigned int, JSC::JSValue)'
| collect2: error: ld returned 1 exit status
| Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/build.make:14167:
recipe for target 'lib/libjavascriptcoregtk-4.0.so.18.1.12' failed

(similar failure on qemuppc too)

Ross

On 10 September 2015 at 19:18, Alexander Kanavin <
alexander.kanavin@linux.intel.com> wrote:

> 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: 1ffa1c36f5d3d3f076840c9239c17f13f36064c3)
>
> Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
> ---
>  ...fixes-a-command-line-that-is-too-long-ove.patch | 89
> ++++++++++++++++++++++
>  meta/recipes-sato/webkit/webkitgtk_2.8.5.bb        | 57 ++++++++++++++
>  2 files changed, 146 insertions(+)
>  create mode 100644
> meta/recipes-sato/webkit/files/0001-This-patch-fixes-a-command-line-that-is-too-long-ove.patch
>  create mode 100644 meta/recipes-sato/webkit/webkitgtk_2.8.5.bb
>
> 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 0000000..ee9c807
> --- /dev/null
> +++
> b/meta/recipes-sato/webkit/files/0001-This-patch-fixes-a-command-line-that-is-too-long-ove.patch
> @@ -0,0 +1,89 @@
> +From 22d5063c551d3c08c0a4ad8b80e08b793d53093d Mon Sep 17 00:00:00 2001
> +From: Alexander Kanavin <alex.kanavin@gmail.com>
> +Date: Thu, 10 Sep 2015 16:23:27 +0300
> +Subject: [PATCH] This patch fixes a command line that is too long (over
> 100K!)
> + and is rejected by /bin/sh.
> +
> +Upstream-status: Backport [should appear in 2.10,
> http://trac.webkit.org/changeset/184856]
> +---
> + Source/WebKit2/PlatformGTK.cmake                   | 11 ++++++-----
> + Tools/gtk/generate-inspector-gresource-manifest.py | 16 ++++++++++++----
> + 2 files changed, 18 insertions(+), 9 deletions(-)
> +
> +diff --git a/Source/WebKit2/PlatformGTK.cmake
> b/Source/WebKit2/PlatformGTK.cmake
> +index a13af7c..058c241 100644
> +--- a/Source/WebKit2/PlatformGTK.cmake
> ++++ b/Source/WebKit2/PlatformGTK.cmake
> +@@ -408,7 +408,7 @@ set(WebKit2WebExtension_INSTALLED_HEADERS
> +
>  ${WEBKIT2_DIR}/WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h
> + )
> +
> +-file(GLOB InspectorFiles
> ++set(InspectorFiles
> +     ${CMAKE_SOURCE_DIR}/Source/WebInspectorUI/UserInterface/*.html
> +     ${CMAKE_SOURCE_DIR}/Source/WebInspectorUI/UserInterface/Base/*.js
> +
>  ${CMAKE_SOURCE_DIR}/Source/WebInspectorUI/UserInterface/Controllers/*.css
> +@@ -423,13 +423,14 @@ file(GLOB InspectorFiles
> +     ${CMAKE_SOURCE_DIR}/Source/WebInspectorUI/UserInterface/Views/*.js
> +
>  ${CMAKE_SOURCE_DIR}/Source/WebInspectorUI/UserInterface/Images/gtk/*.png
> +
>  ${CMAKE_SOURCE_DIR}/Source/WebInspectorUI/UserInterface/Images/gtk/*.svg
> +-)
> +-
> +-list(APPEND InspectorFiles
> +
>  ${CMAKE_SOURCE_DIR}/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js
> +
>  ${DERIVED_SOURCES_WEBINSPECTORUI_DIR}/UserInterface/Protocol/InspectorBackendCommands.js
> + )
> +
> ++file(GLOB InspectorFilesDependencies
> ++    ${InspectorFiles}
> ++)
> ++
> + # This is necessary because of a conflict between the GTK+ API
> WebKitVersion.h and one generated by WebCore.
> + list(INSERT WebKit2_INCLUDE_DIRECTORIES 0
> +     "${FORWARDING_HEADERS_WEBKIT2GTK_DIR}"
> +@@ -564,7 +565,7 @@ add_custom_command(
> +
> + add_custom_command(
> +     OUTPUT ${DERIVED_SOURCES_WEBKIT2GTK_DIR}/InspectorGResourceBundle.xml
> +-    DEPENDS ${InspectorFiles}
> ++    DEPENDS ${InspectorFilesDependencies}
> +             ${TOOLS_DIR}/gtk/generate-inspector-gresource-manifest.py
> +     COMMAND ${TOOLS_DIR}/gtk/generate-inspector-gresource-manifest.py
> --output=${DERIVED_SOURCES_WEBKIT2GTK_DIR}/InspectorGResourceBundle.xml
> ${InspectorFiles}
> +     VERBATIM
> +diff --git a/Tools/gtk/generate-inspector-gresource-manifest.py
> b/Tools/gtk/generate-inspector-gresource-manifest.py
> +index 0687c4c..03060cf 100755
> +--- a/Tools/gtk/generate-inspector-gresource-manifest.py
> ++++ b/Tools/gtk/generate-inspector-gresource-manifest.py
> +@@ -16,6 +16,7 @@
> + # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
> 02110-1301  USA
> +
> + import argparse
> ++import glob
> + import os
> + import sys
> +
> +@@ -26,10 +27,17 @@ BASE_DIR = 'WebInspectorUI/'
> + def get_filenames(args):
> +     filenames = []
> +
> +-    for filename in args:
> +-        base_dir_index = filename.rfind(BASE_DIR)
> +-        if base_dir_index != -1:
> +-            filenames.append(filename[base_dir_index + len(BASE_DIR):])
> ++    for pattern in args:
> ++        paths = glob.glob(pattern)
> ++        for filename in paths:
> ++            base_dir_index = filename.rfind(BASE_DIR)
> ++            if base_dir_index != -1:
> ++                name = filename[base_dir_index + len(BASE_DIR):]
> ++                # The result should use forward slashes, thus make sure
> any os-specific
> ++                # separator, added by the glob.glob() call, is properly
> replaced
> ++                if os.sep != '/':
> ++                    name = name.replace(os.sep, '/')
> ++                filenames.append(name)
> +     return filenames
> +
> +
> +--
> +2.1.4
> +
> 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 0000000..365f20b
> --- /dev/null
> +++ b/meta/recipes-sato/webkit/webkitgtk_2.8.5.bb
> @@ -0,0 +1,57 @@
> +SUMMARY = "WebKit web rendering engine for the GTK+ platform"
> +HOMEPAGE = "http://www.webkitgtk.org/"
> +BUGTRACKER = "http://bugs.webkit.org/"
> +
> +LICENSE = "BSD & LGPLv2+"
> +LIC_FILES_CHKSUM =
> "file://Source/JavaScriptCore/COPYING.LIB;md5=d0c6d6397a5d84286dda758da57bd691
> \
> +
> file://Source/WebKit/LICENSE;md5=4646f90082c40bcf298c285f8bab0b12 \
> +
> file://Source/WebCore/LICENSE-APPLE;md5=4646f90082c40bcf298c285f8bab0b12 \
> +
>  file://Source/WebCore/LICENSE-LGPL-2;md5=36357ffde2b64ae177b2494445b79d21 \
> +
>  file://Source/WebCore/LICENSE-LGPL-2.1;md5=a778a33ef338abbaf8b8a7c36b6eec80
> \
> +                  "
> +
> +SRC_URI = "\
> +  http://www.webkitgtk.org/releases/${BPN}-${PV}.tar.xz \
> +  file://0001-This-patch-fixes-a-command-line-that-is-too-long-ove.patch \
> +  "
> +SRC_URI[md5sum] = "df79991848a5096d3a75289ebce547ae"
> +SRC_URI[sha256sum] =
> "3d1f0c534935f43fd74df90f2648fcee672d60f1f57a30fa557a77891ae04d20"
> +
> +inherit cmake lib_package pkgconfig perlnative pythonnative
> +
> +DEPENDS = "zlib enchant libsoup-2.4 curl libxml2 cairo libxslt libxt
> libidn gnutls \
> +           gtk+ gtk+3 gstreamer1.0 gstreamer1.0-plugins-base flex-native
> gperf-native sqlite3 \
> +          pango icu bison-native gnome-common gawk intltool-native
> libwebp \
> +          atk udev harfbuzz jpeg libpng pulseaudio librsvg libtheora
> libvorbis libxcomposite libxtst \
> +          ruby-native libsecret libnotify gstreamer1.0-plugins-bad \
> +          "
> +DEPENDS += " ${@bb.utils.contains('DISTRO_FEATURES', 'opengl',
> 'virtual/libgl', '', d)}"
> +
> +EXTRA_OECMAKE = " \
> +               -DPORT=GTK \
> +               -DCMAKE_BUILD_TYPE=Release \
> +               -DENABLE_INTROSPECTION=False \
> +               -DENABLE_MINIBROWSER=True \
> +               ${@bb.utils.contains('DISTRO_FEATURES', 'opengl',
> '-DENABLE_WEBGL=True', '-DENABLE_WEBGL=False', d)} \
> +               "
> +
> +# Javascript JIT is not supported on powerpc
> +EXTRA_OECMAKE_append_powerpc = " -DENABLE_JIT=False "
> +EXTRA_OECMAKE_append_powerpc64 = " -DENABLE_JIT=False "
> +
> +# ARM JIT code does not build on ARMv5/6 anymore, apparently they test
> only on v7 onwards
> +EXTRA_OECMAKE_append_armv5 = " -DENABLE_JIT=False "
> +EXTRA_OECMAKE_append_armv6 = " -DENABLE_JIT=False "
> +
> +# binutils 2.25.1 has a bug on aarch64:
> +# https://sourceware.org/bugzilla/show_bug.cgi?id=18430
> +EXTRA_OECMAKE_append_aarch64 = " -DUSE_LD_GOLD=False "
> +
> +# JIT not supported on MIPS either
> +EXTRA_OECMAKE_append_mips = " -DENABLE_JIT=False "
> +EXTRA_OECMAKE_append_mips64 = " -DENABLE_JIT=False "
> +
> +FILES_${PN} +=
> "${libdir}/webkit2gtk-4.0/injected-bundle/libwebkit2gtkinjectedbundle.so"
> +FILES_${PN}-dbg +=
> "${libdir}/webkit2gtk-4.0/injected-bundle/.debug/libwebkit2gtkinjectedbundle.so"
> +FILES_${PN}-dbg += "${libdir}/webkitgtk/webkit2gtk-4.0/.debug/*"
> +
> --
> 2.1.4
>
>

[-- Attachment #2: Type: text/html, Size: 17822 bytes --]

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

* Re: [PATCH] webkitgtk: add a new recipe for latest upstream version
  2015-09-11  7:23 ` Burton, Ross
@ 2015-09-11 20:15   ` alexander.kanavin
  0 siblings, 0 replies; 6+ messages in thread
From: alexander.kanavin @ 2015-09-11 20:15 UTC (permalink / raw)
  To: Burton, Ross; +Cc: OE-core




> This is now failing on qemumips for me:
....

| CMakeFiles/JavaScriptCore.dir/runtime/JSArray.cpp.o: In function
> `JSC::JSArray::push(JSC::ExecState*, JSC::JSValue)':
> |
> /data/poky-master/tmp/work/mips32r2-poky-linux/webkitgtk/2.8.5-r0/webkitgtk-2.8.5/Source/JavaScriptCore/runtime/JSArray.cpp:566:
> undefined reference to `void
> JSC::JSObject::putByIndexBeyondVectorLengthWithoutAttributes<(unsigned
> char)20>(JSC::ExecState*, unsigned int, JSC::JSValue)'
> | collect2: error: ld returned 1 exit status
> | Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/build.make:14167:
> recipe for target 'lib/libjavascriptcoregtk-4.0.so.18.1.12' failed
>
> (similar failure on qemuppc too)

'git bisect' identified this as the reason:


3d81a56912fb2c6ca1c5aafb93cbc6e2cfea20b3 is the first bad commit
commit 3d81a56912fb2c6ca1c5aafb93cbc6e2cfea20b3
Author: Richard Purdie <richard.purdie@linuxfoundation.org>
Date:   Fri Sep 4 16:27:41 2015 +0100

    tcmode-default: Set gcc 5.2 as the default

    gcc 5.X is now working in all the places we test it in, its been in
    testing for quite some time. Time to make it the default (we have some
    room in M4 for any other bugfixes). Its easy to switch back to 4.9, we
    should really remove 4.8 at this point (to meta-oe?).

    (From OE-Core rev: 039211f0d8fe79d07b65f2f02e299b9656034214)

    Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>

:040000 040000 e99162e4020b9b8b286c355c8afef5d63317c149
69db8e38223a0107e38e2a054a8b1b2b5dc6974d M      meta

Regards,
Alex


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

end of thread, other threads:[~2015-09-11 20:16 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-09-10 18:18 [PATCH] webkitgtk: add a new recipe for latest upstream version Alexander Kanavin
2015-09-10 19:40 ` Burton, Ross
2015-09-11  7:12   ` alexander.kanavin
2015-09-11  7:19     ` Burton, Ross
2015-09-11  7:23 ` Burton, Ross
2015-09-11 20:15   ` alexander.kanavin

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