summaryrefslogtreecommitdiffstats
path: root/meta/recipes-sato/webkit/webkitgtk
diff options
context:
space:
mode:
authorAlexander Kanavin <alexander.kanavin@linux.intel.com>2018-01-12 18:20:02 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-01-14 22:10:54 +0000
commit04ba2c349c436852367c2a9cb79bb784e1d69322 (patch)
tree922b0ebbdce6300b074e24d9add26ae9e0d931c6 /meta/recipes-sato/webkit/webkitgtk
parentbbc0795ada93d943bf534289eaa7c07c5ffb7d44 (diff)
downloadpoky-04ba2c349c436852367c2a9cb79bb784e1d69322.tar.gz
webkitgtk: update to 2.18.5 (includes Spectre mitigations; see commit description)
This is the only available stable version with mitigation fixes for Spectre. Webkit upstream developers do not port CVE fixes to earlier stable series, no exception was made in this case. More information: https://webkit.org/blog/8048/what-spectre-and-meltdown-mean-for-webkit/ https://webkitgtk.org/security/WSA-2018-0001.html https://webkitgtk.org/2018/01/10/webkitgtk2.18.5-released.html This commit also contains the following commits added in master branch after morty release: webkitgtk: update to 2.14.1 Rebase 0001-WebKitMacros-Append-to-I-and-not-to-isystem.patch (From OE-Core rev: a44d50c827b5180ff901d31c443ea02e100b10d5) (From OE-Core rev: 22f686cd6b818d27571bd42060246851cc2e093a) 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> === webkit: Reduce duplication in MIPS variants. Reduce duplication in MIPS variants now that the MACHINEOVERRIDES variable is defined (From OE-Core rev: f76d972aff47412a2cbd2d47134d66046cfe574a) Signed-off-by: Zubair Lutfullah Kakakhel <Zubair.Kakakhel@imgtec.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> === webkitgtk: drop patch 0001-WebKitMacros-Append-to-I-and-not-to-isystem.patch * This patch is not longer needed. Upstream has fixed this issue in: https://trac.webkit.org/changeset/205672 which is already included in WebKitGTK+ >= 2.14.0 (From OE-Core rev: 812c52f654c1bccca033163100055e3a8b8cda6e) Signed-off-by: Carlos Alberto Lopez Perez <clopez@igalia.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> === webkitgtk: Add an option to disable opengl support (From OE-Core rev: 04e17727a3d1b52f6f93078fd16c6c7c9ba2b0d4) Signed-off-by: Carlos Alberto Lopez Perez <clopez@igalia.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> === webkitgtk: Use MIPS MACHINE_OVERRIDES The mipsarch* MACHINE_OVERRIDES can be used to pass the same parameters to MIPS pre-R2 and R6 ISA variants. Use them to reduce duplication in supporting MIPS R6 ISA. (From OE-Core rev: 8369b3568828b1dcff0f3a061a18367f018ac447) Signed-off-by: Zubair Lutfullah Kakakhel <Zubair.Kakakhel@imgtec.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> === webkitgtk: update to 2.14.2 (From OE-Core rev: ccce954f7f0b24390ce36460cf05499c8169ed10) Signed-off-by: Carlos Alberto Lopez Perez <clopez@igalia.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> === Revert "webkitgtk: drop patch 0001-WebKitMacros-Append-to-I-and-not-to-isystem.patch" This reverts commit 812c52f654c1bccca033163100055e3a8b8cda6e. Upstream fixed the issue with GCC. But the build still fails with Clang. Therefore reintroduce this patch until a better solution is found. Upstream bug: https://bugs.webkit.org/show_bug.cgi?id=161697 (From OE-Core rev: 39be43943e3de0eb0ab9b61b405f3b76f12a307d) Signed-off-by: Carlos Alberto Lopez Perez <clopez@igalia.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> === webkitgtk: Fix atomic detection on arm architecture (From OE-Core rev: a77fc49defcf3a30a8f026cfdbd56565750f5a61) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> === webkitgtk: patch & disable JIT for x32 It might not be speedy, but it does build now. (From OE-Core rev: 79f7e215ee7c176f02efafe7359aaa77dbd9430c) Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> === webkitgtk: add missing python-native dep Since we can't inherit pythonnative, we need this dep explicitly. (From OE-Core rev: 63530f59e43738bac081aaf3c89ec57006038dce) Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> === webkitgtk: update to 2.14.5 Remove a reference to WebKit/LICENSE, as the directory is not there anymore (and the LICENSE file in it hasn't been moved somewhere else) - it was a relic of webkit 1.x era. (From OE-Core rev: 10331f42acfa5dc429198b7c025cc2360511e534) 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> === webkitgtk: Fix build on aarch64 Do not try to do runtime tests during cross compile Fixes | CMake Error at Source/cmake/OptionsCommon.cmake:73 (math): | math cannot parse the expression: "-1": syntax error, unexpected exp_MINUS, | expecting exp_OPENPARENT or exp_NUMBER (1) (From OE-Core rev: 528006009dddd876a830e0a8f248658182a37f37) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> === webkitgtk: Upgrade to 2.16.1 Fix build with gcc7 Move all patches to webkit folder Drop patches that were backports or have been upstreamed (From OE-Core rev: bfbdd1a2069f199be9ba0909dd512469ff17b65e) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> === webkitgtk: remove native python dependency Using host python seems to be fine. (From OE-Core rev: 7cf80640f53bd8faa4874c2dad5f630a935475f6) 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> === webkitgtk: Fix build for armv5 Detect atomics during configure (From OE-Core rev: 424ffbde2111130137e307eb9e598ad50451c865) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> === webkitgtk: Upgrade to 2.16.3 Use bfd linker on ppc, this is because gold fails to link webkit libraries when PIE is enabled (From OE-Core rev: 8808d4b13a946499bc6e84a1be15f53d8ab3f673) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> === webkitgtk: Upgrade to 2.16.5 Adjust some dependencies: libgcrypt is now required (instead of gnutls) and the following build deps where missing: gettext-native, glib-2.0 and glib-2.0-native. Also the CMake argument ENABLE_CREDENTIAL_STORAGE has been renamed to USE_LIBSECRET. This new upstream release (2.16.4 actually) includes security fixes for CVE: CVE-2017-2538 (From OE-Core rev: ef68005a8c527e9b1d05b7769f0ec8ebe9ec3f91) Signed-off-by: Carlos Alberto Lopez Perez <clopez@igalia.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> === webkitgtk: update to 2.16.6 (From OE-Core rev: 198ccdbefa481f725492b5d8834213fe26431be5) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> === webkitgtk: Do not use -isystem forcibly this causes include_next <stdlib.h> to not find this header since -isystem <sysroot> is added via cmake, we alrady are using --sysroot so rely on that (From OE-Core rev: a0f2d1389a7e76b64003fea391a0cd485ff5fe77) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> === webkitgtk: Add a recommends on shared-mime-info. * without this package installed any WebKitGTK+ based browser will fail to correctly open html files (and other files) from disk (file:// URIs). It will open them as plain txt files. (From OE-Core rev: b708cb53b46d9d82a7853bcd0f25ef6bc417bd10) Signed-off-by: Carlos Alberto Lopez Perez <clopez@igalia.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> === webkitgtk: disable gobject-introspection on armv7a Disable gobject-introspection on armv7a and armv7ve to avoid do_compile failure: | qemu: uncaught target signal 11 (Segmentation fault) - core dumped | Segmentation fault (From OE-Core rev: bdddd81c8b4eab6bbf7a8697992b48cb5a30ae4a) Signed-off-by: Jackie Huang <jackie.huang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> === webkitgtk: update to 2.18.3 gcc7.patch, musl-fixes.patch, and ppc-musl-fix.patch all change code that is no longer present in upstream tree. However, a patch with different musl fixes has been added. The rest of the patches are rebased to the new tree. Libtasn is a new dependency. Disable Gstreamer GL support on x86 due to clashing headers problem. (From OE-Core rev: 3acae2dcd130122fe76504ec855af78db829d6ec) === webkitgtk: fix build with musl and x32 Make the x32 check generic to make it work with musl as well. Fixes [YOCTO #12118] (From OE-Core rev: dbd604ccf34e304769937b15051c047561de47f7) === Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-sato/webkit/webkitgtk')
-rw-r--r--meta/recipes-sato/webkit/webkitgtk/0001-FindGObjectIntrospection.cmake-prefix-variables-obta.patch27
-rw-r--r--meta/recipes-sato/webkit/webkitgtk/0001-Fix-build-with-musl.patch77
-rw-r--r--meta/recipes-sato/webkit/webkitgtk/0001-Fix-racy-parallel-build-of-WebKit2-4.0.gir.patch49
-rw-r--r--meta/recipes-sato/webkit/webkitgtk/0001-OptionsGTK.cmake-drop-the-hardcoded-introspection-gt.patch32
-rw-r--r--meta/recipes-sato/webkit/webkitgtk/0001-Tweak-gtkdoc-settings-so-that-gtkdoc-generation-work.patch50
-rw-r--r--meta/recipes-sato/webkit/webkitgtk/0001-WebKitMacros-Append-to-I-and-not-to-isystem.patch126
-rw-r--r--meta/recipes-sato/webkit/webkitgtk/0001-When-building-introspection-files-add-CMAKE_C_FLAGS-.patch41
-rw-r--r--meta/recipes-sato/webkit/webkitgtk/cross-compile.patch23
-rw-r--r--meta/recipes-sato/webkit/webkitgtk/detect-atomics-during-configure.patch46
-rw-r--r--meta/recipes-sato/webkit/webkitgtk/x32_support.patch21
10 files changed, 492 insertions, 0 deletions
diff --git a/meta/recipes-sato/webkit/webkitgtk/0001-FindGObjectIntrospection.cmake-prefix-variables-obta.patch b/meta/recipes-sato/webkit/webkitgtk/0001-FindGObjectIntrospection.cmake-prefix-variables-obta.patch
new file mode 100644
index 0000000000..fae3b0b2e5
--- /dev/null
+++ b/meta/recipes-sato/webkit/webkitgtk/0001-FindGObjectIntrospection.cmake-prefix-variables-obta.patch
@@ -0,0 +1,27 @@
1From 317a5ac120c44987219bc03486cd2f2d1842c9b9 Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Tue, 27 Oct 2015 16:02:19 +0200
4Subject: [PATCH] FindGObjectIntrospection.cmake: prefix variables obtained
5 from pkg-config with PKG_CONFIG_SYSROOT_DIR
6
7Upstream-Status: Pending [review on oe-core list]
8Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
9---
10 Source/cmake/FindGObjectIntrospection.cmake | 1 +
11 1 file changed, 1 insertion(+)
12
13diff --git a/Source/cmake/FindGObjectIntrospection.cmake b/Source/cmake/FindGObjectIntrospection.cmake
14index e1f49b4..03a4446 100644
15--- a/Source/cmake/FindGObjectIntrospection.cmake
16+++ b/Source/cmake/FindGObjectIntrospection.cmake
17@@ -26,6 +26,7 @@ macro(_GIR_GET_PKGCONFIG_VAR _outvar _varname _extra_args)
18 else ()
19 string(REGEX REPLACE "[\r\n]" " " _result "${_result}")
20 string(REGEX REPLACE " +$" "" _result "${_result}")
21+ string(CONCAT _result $ENV{PKG_CONFIG_SYSROOT_DIR} "${_result}")
22 separate_arguments(_result)
23 set(${_outvar} ${_result} CACHE INTERNAL "")
24 endif ()
25--
262.1.4
27
diff --git a/meta/recipes-sato/webkit/webkitgtk/0001-Fix-build-with-musl.patch b/meta/recipes-sato/webkit/webkitgtk/0001-Fix-build-with-musl.patch
new file mode 100644
index 0000000000..7cc4514fcc
--- /dev/null
+++ b/meta/recipes-sato/webkit/webkitgtk/0001-Fix-build-with-musl.patch
@@ -0,0 +1,77 @@
1From 415e31bd5444fa360af58b069f1b9db6607fca7d Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Fri, 6 Oct 2017 17:00:08 +0300
4Subject: [PATCH] Fix build with musl
5
6Upstream-Status: Pending
7Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
8---
9 Source/JavaScriptCore/runtime/MachineContext.h | 10 +++++-----
10 Source/WTF/wtf/Platform.h | 2 +-
11 2 files changed, 6 insertions(+), 6 deletions(-)
12
13diff --git a/Source/JavaScriptCore/runtime/MachineContext.h b/Source/JavaScriptCore/runtime/MachineContext.h
14index 95080b9..2bb689c 100644
15--- a/Source/JavaScriptCore/runtime/MachineContext.h
16+++ b/Source/JavaScriptCore/runtime/MachineContext.h
17@@ -146,7 +146,7 @@ inline void*& stackPointer(mcontext_t& machineContext)
18 #error Unknown Architecture
19 #endif
20
21-#elif defined(__GLIBC__)
22+#elif defined(__linux__)
23
24 #if CPU(X86)
25 return reinterpret_cast<void*&>((uintptr_t&) machineContext.gregs[REG_ESP]);
26@@ -251,7 +251,7 @@ inline void*& framePointer(mcontext_t& machineContext)
27 #error Unknown Architecture
28 #endif
29
30-#elif defined(__GLIBC__)
31+#elif defined(__linux__)
32
33 // The following sequence depends on glibc's sys/ucontext.h.
34 #if CPU(X86)
35@@ -354,7 +354,7 @@ inline void*& instructionPointer(mcontext_t& machineContext)
36 #error Unknown Architecture
37 #endif
38
39-#elif defined(__GLIBC__)
40+#elif defined(__linux__)
41
42 // The following sequence depends on glibc's sys/ucontext.h.
43 #if CPU(X86)
44@@ -466,7 +466,7 @@ inline void*& argumentPointer<1>(mcontext_t& machineContext)
45 #error Unknown Architecture
46 #endif
47
48-#elif defined(__GLIBC__)
49+#elif defined(__linux__)
50
51 // The following sequence depends on glibc's sys/ucontext.h.
52 #if CPU(X86)
53@@ -583,7 +583,7 @@ inline void*& llintInstructionPointer(mcontext_t& machineContext)
54 #error Unknown Architecture
55 #endif
56
57-#elif defined(__GLIBC__)
58+#elif defined(__linux__)
59
60 // The following sequence depends on glibc's sys/ucontext.h.
61 #if CPU(X86)
62diff --git a/Source/WTF/wtf/Platform.h b/Source/WTF/wtf/Platform.h
63index 5a2863b..b36c3ff 100644
64--- a/Source/WTF/wtf/Platform.h
65+++ b/Source/WTF/wtf/Platform.h
66@@ -680,7 +680,7 @@
67 #define HAVE_CFNETWORK_STORAGE_PARTITIONING 1
68 #endif
69
70-#if OS(DARWIN) || ((OS(FREEBSD) || defined(__GLIBC__)) && (CPU(X86) || CPU(X86_64) || CPU(ARM) || CPU(ARM64) || CPU(MIPS)))
71+#if OS(DARWIN) || ((OS(FREEBSD) || defined(__linux__)) && (CPU(X86) || CPU(X86_64) || CPU(ARM) || CPU(ARM64) || CPU(MIPS)))
72 #define HAVE_MACHINE_CONTEXT 1
73 #endif
74
75--
762.14.1
77
diff --git a/meta/recipes-sato/webkit/webkitgtk/0001-Fix-racy-parallel-build-of-WebKit2-4.0.gir.patch b/meta/recipes-sato/webkit/webkitgtk/0001-Fix-racy-parallel-build-of-WebKit2-4.0.gir.patch
new file mode 100644
index 0000000000..896890b433
--- /dev/null
+++ b/meta/recipes-sato/webkit/webkitgtk/0001-Fix-racy-parallel-build-of-WebKit2-4.0.gir.patch
@@ -0,0 +1,49 @@
1From b7f40eceef0f23bf88090789d4c5845c35f048ae Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Mon, 29 Aug 2016 16:38:11 +0300
4Subject: [PATCH 4/9] Fix racy parallel build of WebKit2-4.0.gir
5
6Upstream-Status: Pending
7Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
8
9---
10 Source/WebKit/PlatformGTK.cmake | 9 +++++----
11 1 file changed, 5 insertions(+), 4 deletions(-)
12
13diff --git a/Source/WebKit/PlatformGTK.cmake b/Source/WebKit/PlatformGTK.cmake
14index a33c6a86..d83a2e77 100644
15--- a/Source/WebKit/PlatformGTK.cmake
16+++ b/Source/WebKit/PlatformGTK.cmake
17@@ -1122,8 +1122,9 @@ endif ()
18 string(REGEX MATCHALL "-L[^ ]*"
19 INTROSPECTION_ADDITIONAL_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS}")
20
21-add_custom_command(
22- OUTPUT ${CMAKE_BINARY_DIR}/WebKit2-${WEBKITGTK_API_VERSION}.gir
23+# This is a target and not a command because it's used to build another .gir
24+# and a .typelib, which would trigger two racy parallel builds when using command
25+add_custom_target(WebKit2-${WEBKITGTK_API_VERSION}-gir
26 DEPENDS WebKit2
27 DEPENDS ${CMAKE_BINARY_DIR}/JavaScriptCore-${WEBKITGTK_API_VERSION}.gir
28 COMMAND CC=${CMAKE_C_COMPILER} CFLAGS=-Wno-deprecated-declarations\ ${CMAKE_C_FLAGS} LDFLAGS=
29@@ -1168,7 +1169,7 @@ add_custom_command(
30 add_custom_command(
31 OUTPUT ${CMAKE_BINARY_DIR}/WebKit2WebExtension-${WEBKITGTK_API_VERSION}.gir
32 DEPENDS ${CMAKE_BINARY_DIR}/JavaScriptCore-${WEBKITGTK_API_VERSION}.gir
33- DEPENDS ${CMAKE_BINARY_DIR}/WebKit2-${WEBKITGTK_API_VERSION}.gir
34+ DEPENDS WebKit2-${WEBKITGTK_API_VERSION}-gir
35 COMMAND CC=${CMAKE_C_COMPILER} CFLAGS=-Wno-deprecated-declarations\ ${CMAKE_C_FLAGS}
36 LDFLAGS="${INTROSPECTION_ADDITIONAL_LDFLAGS}"
37 ${LOADER_LIBRARY_PATH_VAR}="${INTROSPECTION_ADDITIONAL_LIBRARY_PATH}"
38@@ -1225,7 +1226,7 @@ add_custom_command(
39
40 add_custom_command(
41 OUTPUT ${CMAKE_BINARY_DIR}/WebKit2-${WEBKITGTK_API_VERSION}.typelib
42- DEPENDS ${CMAKE_BINARY_DIR}/WebKit2-${WEBKITGTK_API_VERSION}.gir
43+ DEPENDS WebKit2-${WEBKITGTK_API_VERSION}-gir
44 COMMAND ${INTROSPECTION_COMPILER} --includedir=${CMAKE_BINARY_DIR} ${CMAKE_BINARY_DIR}/WebKit2-${WEBKITGTK_API_VERSION}.gir -o ${CMAKE_BINARY_DIR}/WebKit2-${WEBKITGTK_API_VERSION}.typelib
45 )
46
47--
482.14.1
49
diff --git a/meta/recipes-sato/webkit/webkitgtk/0001-OptionsGTK.cmake-drop-the-hardcoded-introspection-gt.patch b/meta/recipes-sato/webkit/webkitgtk/0001-OptionsGTK.cmake-drop-the-hardcoded-introspection-gt.patch
new file mode 100644
index 0000000000..93a69c0292
--- /dev/null
+++ b/meta/recipes-sato/webkit/webkitgtk/0001-OptionsGTK.cmake-drop-the-hardcoded-introspection-gt.patch
@@ -0,0 +1,32 @@
1From 48648570e449cf7f84a26dc03c1e3f620fa69757 Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Mon, 29 Feb 2016 18:13:39 +0200
4Subject: [PATCH] OptionsGTK.cmake: drop the hardcoded introspection/gtkdoc
5 disabling when cross-compiling
6
7This was not possible to override from the command line and in OpenEmbedded
8(one of the most prominent cross-compilation frameworks) introspection does work fine,
9through the use of qemu target emulation.
10
11Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
12---
13 Source/cmake/OptionsGTK.cmake | 6 ------
14 1 file changed, 6 deletions(-)
15
16Index: webkitgtk-2.12.1/Source/cmake/OptionsGTK.cmake
17===================================================================
18--- webkitgtk-2.12.1.orig/Source/cmake/OptionsGTK.cmake
19+++ webkitgtk-2.12.1/Source/cmake/OptionsGTK.cmake
20@@ -424,12 +424,6 @@ if (USE_LIBHYPHEN)
21 endif ()
22 endif ()
23
24-# Override the cached variables, gtk-doc and gobject-introspection do not really work when cross-building.
25-if (CMAKE_CROSSCOMPILING)
26- set(ENABLE_GTKDOC OFF)
27- set(ENABLE_INTROSPECTION OFF)
28-endif ()
29-
30 # Override the cached variable, gtk-doc does not really work when building on Mac.
31 if (APPLE)
32 set(ENABLE_GTKDOC OFF)
diff --git a/meta/recipes-sato/webkit/webkitgtk/0001-Tweak-gtkdoc-settings-so-that-gtkdoc-generation-work.patch b/meta/recipes-sato/webkit/webkitgtk/0001-Tweak-gtkdoc-settings-so-that-gtkdoc-generation-work.patch
new file mode 100644
index 0000000000..83fd5129a0
--- /dev/null
+++ b/meta/recipes-sato/webkit/webkitgtk/0001-Tweak-gtkdoc-settings-so-that-gtkdoc-generation-work.patch
@@ -0,0 +1,50 @@
1From 9b09974003097c9a408bbeea568996768efe705b Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Thu, 11 Aug 2016 17:13:51 +0300
4Subject: [PATCH 05/10] Tweak gtkdoc settings so that gtkdoc generation works
5 under OpenEmbedded build system
6
7This requires setting a few environment variables so that the transient
8binary is build and linked correctly, and disabling the tweaks to RUN
9variable from gtkdoc.py script so that our qemu wrapper is taken into use.
10
11Upstream-Status: Inappropriate [oe-specific]
12Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
13
14---
15 Source/PlatformGTK.cmake | 2 +-
16 Tools/gtk/gtkdoc.py | 4 ++--
17 2 files changed, 3 insertions(+), 3 deletions(-)
18
19diff --git a/Source/PlatformGTK.cmake b/Source/PlatformGTK.cmake
20index 50b5393..7a31db5 100644
21--- a/Source/PlatformGTK.cmake
22+++ b/Source/PlatformGTK.cmake
23@@ -24,7 +24,7 @@ macro(ADD_GTKDOC_GENERATOR _stamp_name _extra_args)
24 add_custom_command(
25 OUTPUT "${CMAKE_BINARY_DIR}/${_stamp_name}"
26 DEPENDS ${DocumentationDependencies}
27- COMMAND ${CMAKE_COMMAND} -E env "CC=${CMAKE_C_COMPILER}" "CFLAGS=${CMAKE_C_FLAGS} -Wno-unused-parameter" ${CMAKE_SOURCE_DIR}/Tools/gtk/generate-gtkdoc ${_extra_args}
28+ COMMAND ${CMAKE_COMMAND} -E env "CC=${CMAKE_C_COMPILER}" "CFLAGS=${CMAKE_C_FLAGS} -Wno-unused-parameter" "LD=${CMAKE_C_COMPILER}" "LDFLAGS=${CMAKE_C_LINK_FLAGS}" "RUN=${CMAKE_BINARY_DIR}/gtkdoc-qemuwrapper" ${CMAKE_SOURCE_DIR}/Tools/gtk/generate-gtkdoc -v ${_extra_args}
29 COMMAND touch ${_stamp_name}
30 WORKING_DIRECTORY "${CMAKE_BINARY_DIR}"
31 VERBATIM
32diff --git a/Tools/gtk/gtkdoc.py b/Tools/gtk/gtkdoc.py
33index 03c8e8e..34fbaff 100644
34--- a/Tools/gtk/gtkdoc.py
35+++ b/Tools/gtk/gtkdoc.py
36@@ -318,9 +318,9 @@ class GTKDoc(object):
37 additional_ldflags = '%s %s' % (additional_ldflags, arg)
38 ldflags = ' "-L%s" %s ' % (self.library_path, additional_ldflags) + ldflags
39 current_ld_library_path = env.get('LD_LIBRARY_PATH')
40- if current_ld_library_path:
41+ if current_ld_library_path and 'RUN' not in env:
42 env['LD_LIBRARY_PATH'] = '%s:%s' % (self.library_path, current_ld_library_path)
43- else:
44+ elif 'RUN' not in env:
45 env['LD_LIBRARY_PATH'] = self.library_path
46
47 if ldflags:
48--
492.15.1
50
diff --git a/meta/recipes-sato/webkit/webkitgtk/0001-WebKitMacros-Append-to-I-and-not-to-isystem.patch b/meta/recipes-sato/webkit/webkitgtk/0001-WebKitMacros-Append-to-I-and-not-to-isystem.patch
new file mode 100644
index 0000000000..dfdc116018
--- /dev/null
+++ b/meta/recipes-sato/webkit/webkitgtk/0001-WebKitMacros-Append-to-I-and-not-to-isystem.patch
@@ -0,0 +1,126 @@
1From ef832a115b40861c08df333339b1366da49e5393 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Sun, 17 Apr 2016 12:35:41 -0700
4Subject: [PATCH 9/9] WebKitMacros: Append to -I and not to -isystem
5
6gcc-6 has now introduced stdlib.h in libstdc++ for better
7compliance and its including the C library stdlib.h using
8include_next which is sensitive to order of system header
9include paths. Its infact better to not tinker with the
10system header include paths at all. Since adding /usr/include
11to -system is redundant and compiler knows about it moreover
12now with gcc6 it interferes with compiler's functioning
13and ends up with compile errors e.g.
14
15/usr/include/c++/6.0.0/cstdlib:75:25: fatal error: stdlib.h: No such file or directory
16
17Signed-off-by: Khem Raj <raj.khem@gmail.com>
18
19---
20 Source/JavaScriptCore/shell/CMakeLists.txt | 2 +-
21 Source/WebCore/PlatformGTK.cmake | 6 +++---
22 Source/WebKit/PlatformGTK.cmake | 2 +-
23 Source/cmake/WebKitMacros.cmake | 2 +-
24 Tools/MiniBrowser/gtk/CMakeLists.txt | 2 +-
25 Tools/TestWebKitAPI/PlatformGTK.cmake | 2 +-
26 6 files changed, 8 insertions(+), 8 deletions(-)
27
28diff --git a/Source/JavaScriptCore/shell/CMakeLists.txt b/Source/JavaScriptCore/shell/CMakeLists.txt
29index bc37dd31..4e49871f 100644
30--- a/Source/JavaScriptCore/shell/CMakeLists.txt
31+++ b/Source/JavaScriptCore/shell/CMakeLists.txt
32@@ -35,7 +35,7 @@ WEBKIT_INCLUDE_CONFIG_FILES_IF_EXISTS()
33 WEBKIT_WRAP_SOURCELIST(${JSC_SOURCES})
34 WEBKIT_WRAP_SOURCELIST(${TESTAPI_SOURCES})
35 include_directories(./ ${JavaScriptCore_INCLUDE_DIRECTORIES})
36-include_directories(SYSTEM ${JavaScriptCore_SYSTEM_INCLUDE_DIRECTORIES})
37+include_directories(${JavaScriptCore_SYSTEM_INCLUDE_DIRECTORIES})
38 add_executable(jsc ${JSC_SOURCES})
39 target_link_libraries(jsc ${JSC_LIBRARIES})
40
41diff --git a/Source/WebCore/PlatformGTK.cmake b/Source/WebCore/PlatformGTK.cmake
42index 73506c74..8eb8b415 100644
43--- a/Source/WebCore/PlatformGTK.cmake
44+++ b/Source/WebCore/PlatformGTK.cmake
45@@ -281,7 +281,7 @@ if (ENABLE_PLUGIN_PROCESS_GTK2)
46 ${GTK2_INCLUDE_DIRS}
47 ${GDK2_INCLUDE_DIRS}
48 )
49- target_include_directories(WebCorePlatformGTK2 SYSTEM PRIVATE
50+ target_include_directories(WebCorePlatformGTK2 PRIVATE
51 ${WebCore_SYSTEM_INCLUDE_DIRECTORIES}
52 )
53 target_link_libraries(WebCorePlatformGTK2
54@@ -305,7 +305,7 @@ add_dependencies(WebCorePlatformGTK WebCore)
55 target_include_directories(WebCorePlatformGTK PRIVATE
56 ${WebCore_INCLUDE_DIRECTORIES}
57 )
58-target_include_directories(WebCorePlatformGTK SYSTEM PRIVATE
59+target_include_directories(WebCorePlatformGTK PRIVATE
60 ${WebCore_SYSTEM_INCLUDE_DIRECTORIES}
61 ${GTK_INCLUDE_DIRS}
62 ${GDK_INCLUDE_DIRS}
63@@ -321,7 +321,7 @@ include_directories(
64 "${WEBCORE_DIR}/bindings/gobject/"
65 )
66
67-include_directories(SYSTEM
68+include_directories(
69 ${WebCore_SYSTEM_INCLUDE_DIRECTORIES}
70 )
71
72diff --git a/Source/WebKit/PlatformGTK.cmake b/Source/WebKit/PlatformGTK.cmake
73index d83a2e77..401246f4 100644
74--- a/Source/WebKit/PlatformGTK.cmake
75+++ b/Source/WebKit/PlatformGTK.cmake
76@@ -1050,7 +1050,7 @@ if (ENABLE_PLUGIN_PROCESS_GTK2)
77 target_include_directories(WebKitPluginProcess2 PRIVATE
78 ${WebKit2CommonIncludeDirectories}
79 )
80- target_include_directories(WebKitPluginProcess2 SYSTEM PRIVATE
81+ target_include_directories(WebKitPluginProcess2 PRIVATE
82 ${WebKit2CommonSystemIncludeDirectories}
83 ${GTK2_INCLUDE_DIRS}
84 ${GDK2_INCLUDE_DIRS}
85diff --git a/Source/cmake/WebKitMacros.cmake b/Source/cmake/WebKitMacros.cmake
86index 7bc89543..d9818fa4 100644
87--- a/Source/cmake/WebKitMacros.cmake
88+++ b/Source/cmake/WebKitMacros.cmake
89@@ -78,7 +78,7 @@ macro(WEBKIT_FRAMEWORK_DECLARE _target)
90 endmacro()
91
92 macro(WEBKIT_FRAMEWORK _target)
93- include_directories(SYSTEM ${${_target}_SYSTEM_INCLUDE_DIRECTORIES})
94+ include_directories(${${_target}_SYSTEM_INCLUDE_DIRECTORIES})
95 target_sources(${_target} PRIVATE
96 ${${_target}_HEADERS}
97 ${${_target}_SOURCES}
98diff --git a/Tools/MiniBrowser/gtk/CMakeLists.txt b/Tools/MiniBrowser/gtk/CMakeLists.txt
99index e832a86d..ce92c864 100644
100--- a/Tools/MiniBrowser/gtk/CMakeLists.txt
101+++ b/Tools/MiniBrowser/gtk/CMakeLists.txt
102@@ -57,7 +57,7 @@ endif ()
103 add_definitions(-DGDK_VERSION_MIN_REQUIRED=GDK_VERSION_3_6)
104
105 include_directories(${MiniBrowser_INCLUDE_DIRECTORIES})
106-include_directories(SYSTEM ${MiniBrowser_SYSTEM_INCLUDE_DIRECTORIES})
107+include_directories(${MiniBrowser_SYSTEM_INCLUDE_DIRECTORIES})
108 add_executable(MiniBrowser ${MiniBrowser_SOURCES})
109 target_link_libraries(MiniBrowser ${MiniBrowser_LIBRARIES})
110
111diff --git a/Tools/TestWebKitAPI/PlatformGTK.cmake b/Tools/TestWebKitAPI/PlatformGTK.cmake
112index 1be3dd52..7bdddf37 100644
113--- a/Tools/TestWebKitAPI/PlatformGTK.cmake
114+++ b/Tools/TestWebKitAPI/PlatformGTK.cmake
115@@ -20,7 +20,7 @@ include_directories(
116 ${WEBKIT2_DIR}/UIProcess/API/gtk
117 )
118
119-include_directories(SYSTEM
120+include_directories(
121 ${GDK3_INCLUDE_DIRS}
122 ${GLIB_INCLUDE_DIRS}
123 ${GTK3_INCLUDE_DIRS}
124--
1252.14.1
126
diff --git a/meta/recipes-sato/webkit/webkitgtk/0001-When-building-introspection-files-add-CMAKE_C_FLAGS-.patch b/meta/recipes-sato/webkit/webkitgtk/0001-When-building-introspection-files-add-CMAKE_C_FLAGS-.patch
new file mode 100644
index 0000000000..fb4c4dc932
--- /dev/null
+++ b/meta/recipes-sato/webkit/webkitgtk/0001-When-building-introspection-files-add-CMAKE_C_FLAGS-.patch
@@ -0,0 +1,41 @@
1From 98b1359a0cd87bbdb22cef98ba594440f4c57d92 Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Wed, 28 Oct 2015 14:18:57 +0200
4Subject: [PATCH 2/9] When building introspection files, add CMAKE_C_FLAGS to
5 the compiler flags.
6
7g-ir-compiler is using a C compiler internally, so it needs to set
8the proper flags for it.
9
10Upstream-Status: Pending [review on oe-core list]
11Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
12
13---
14 Source/WebKit/PlatformGTK.cmake | 4 ++--
15 1 file changed, 2 insertions(+), 2 deletions(-)
16
17diff --git a/Source/WebKit/PlatformGTK.cmake b/Source/WebKit/PlatformGTK.cmake
18index 7f92ae72..a33c6a86 100644
19--- a/Source/WebKit/PlatformGTK.cmake
20+++ b/Source/WebKit/PlatformGTK.cmake
21@@ -1126,7 +1126,7 @@ add_custom_command(
22 OUTPUT ${CMAKE_BINARY_DIR}/WebKit2-${WEBKITGTK_API_VERSION}.gir
23 DEPENDS WebKit2
24 DEPENDS ${CMAKE_BINARY_DIR}/JavaScriptCore-${WEBKITGTK_API_VERSION}.gir
25- COMMAND CC=${CMAKE_C_COMPILER} CFLAGS=-Wno-deprecated-declarations LDFLAGS=
26+ COMMAND CC=${CMAKE_C_COMPILER} CFLAGS=-Wno-deprecated-declarations\ ${CMAKE_C_FLAGS} LDFLAGS=
27 ${LOADER_LIBRARY_PATH_VAR}="${INTROSPECTION_ADDITIONAL_LIBRARY_PATH}"
28 ${INTROSPECTION_SCANNER}
29 --quiet
30@@ -1169,7 +1169,7 @@ add_custom_command(
31 OUTPUT ${CMAKE_BINARY_DIR}/WebKit2WebExtension-${WEBKITGTK_API_VERSION}.gir
32 DEPENDS ${CMAKE_BINARY_DIR}/JavaScriptCore-${WEBKITGTK_API_VERSION}.gir
33 DEPENDS ${CMAKE_BINARY_DIR}/WebKit2-${WEBKITGTK_API_VERSION}.gir
34- COMMAND CC=${CMAKE_C_COMPILER} CFLAGS=-Wno-deprecated-declarations
35+ COMMAND CC=${CMAKE_C_COMPILER} CFLAGS=-Wno-deprecated-declarations\ ${CMAKE_C_FLAGS}
36 LDFLAGS="${INTROSPECTION_ADDITIONAL_LDFLAGS}"
37 ${LOADER_LIBRARY_PATH_VAR}="${INTROSPECTION_ADDITIONAL_LIBRARY_PATH}"
38 ${INTROSPECTION_SCANNER}
39--
402.14.1
41
diff --git a/meta/recipes-sato/webkit/webkitgtk/cross-compile.patch b/meta/recipes-sato/webkit/webkitgtk/cross-compile.patch
new file mode 100644
index 0000000000..4d1de72851
--- /dev/null
+++ b/meta/recipes-sato/webkit/webkitgtk/cross-compile.patch
@@ -0,0 +1,23 @@
1Disable the tests meant to run when compiling natively
2
3Upstream-Status: Pending
4Signed-off-by: Khem Raj <raj.khem@gmail.com>
5
6Index: webkitgtk-2.14.5/Source/cmake/OptionsCommon.cmake
7===================================================================
8--- webkitgtk-2.14.5.orig/Source/cmake/OptionsCommon.cmake
9+++ webkitgtk-2.14.5/Source/cmake/OptionsCommon.cmake
10@@ -67,8 +67,11 @@ endif ()
11 # Detect Cortex-A53 core if CPU is ARM64 and OS is Linux.
12 # Query /proc/cpuinfo for each available core and check reported CPU part number: 0xd03 signals Cortex-A53.
13 # (see Main ID Register in ARM Cortex-A53 MPCore Processor Technical Reference Manual)
14-set(WTF_CPU_ARM64_CORTEXA53_INITIALVALUE OFF)
15-if (WTF_CPU_ARM64 AND (${CMAKE_SYSTEM_NAME} STREQUAL "Linux"))
16+if( NOT WTF_CPU_ARM64_CORTEXA53_INITIALVALUE)
17+ set(WTF_CPU_ARM64_CORTEXA53_INITIALVALUE OFF)
18+endif(WTF_CPU_ARM64_CORTEXA53_INITIALVALUE)
19+
20+if (WTF_CPU_ARM64 AND NOT CMAKE_CROSSCOMPILING AND (${CMAKE_SYSTEM_NAME} STREQUAL "Linux"))
21 execute_process(COMMAND nproc OUTPUT_VARIABLE PROC_COUNT)
22 math(EXPR PROC_MAX ${PROC_COUNT}-1)
23 foreach (PROC_ID RANGE ${PROC_MAX})
diff --git a/meta/recipes-sato/webkit/webkitgtk/detect-atomics-during-configure.patch b/meta/recipes-sato/webkit/webkitgtk/detect-atomics-during-configure.patch
new file mode 100644
index 0000000000..c6157e1037
--- /dev/null
+++ b/meta/recipes-sato/webkit/webkitgtk/detect-atomics-during-configure.patch
@@ -0,0 +1,46 @@
1From 0b3811771ae6385503f2d949f9433d8f810d2ff9 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Wed, 17 May 2017 22:34:24 -0700
4Subject: [PATCH 8/9] webkitgtk: Fix build for armv5
5
6Taken from
7https://bugs.webkit.org/show_bug.cgi?id=161900
8
9Upstream-Status: Pending
10Signed-off-by: Khem Raj <raj.khem@gmail.com>
11
12---
13 Source/WTF/wtf/CMakeLists.txt | 10 +++++++++-
14 1 file changed, 9 insertions(+), 1 deletion(-)
15
16diff --git a/Source/WTF/wtf/CMakeLists.txt b/Source/WTF/wtf/CMakeLists.txt
17index 6b5e45b9..46ee3c22 100644
18--- a/Source/WTF/wtf/CMakeLists.txt
19+++ b/Source/WTF/wtf/CMakeLists.txt
20@@ -205,7 +205,6 @@ set(WTF_HEADERS
21
22 set(WTF_SOURCES
23 Assertions.cpp
24- Atomics.cpp
25 AutomaticThread.cpp
26 BitVector.cpp
27 CPUTime.cpp
28@@ -336,6 +335,15 @@ if (NOT USE_SYSTEM_MALLOC)
29 list(APPEND WTF_LIBRARIES bmalloc)
30 endif ()
31
32+file(WRITE ${CMAKE_BINARY_DIR}/test_atomics.cpp
33+ "int main(void)\n"
34+ "{ long long x = 1; return (int) __sync_add_and_fetch_8(&x, 1); }\n")
35+try_compile(ATOMICS_BUILD_SUCCEEDED ${CMAKE_BINARY_DIR} ${CMAKE_BINARY_DIR}/test_atomics.cpp)
36+if (NOT ATOMICS_BUILD_SUCCEEDED)
37+ list(APPEND WTF_SOURCES Atomics.cpp)
38+endif ()
39+file(REMOVE ${CMAKE_BINARY_DIR}/test_atomics.cpp)
40+
41 list(APPEND WTF_SOURCES
42 unicode/icu/CollatorICU.cpp
43 )
44--
452.14.1
46
diff --git a/meta/recipes-sato/webkit/webkitgtk/x32_support.patch b/meta/recipes-sato/webkit/webkitgtk/x32_support.patch
new file mode 100644
index 0000000000..5f23837585
--- /dev/null
+++ b/meta/recipes-sato/webkit/webkitgtk/x32_support.patch
@@ -0,0 +1,21 @@
1From: Daniel Schepler <dschepler@gmail.com>
2Subject: Fix FTBFS in x32
3Bug-Debian: https://bugs.debian.org/700795
4Upstream-Status: Pending
5Signed-off-by: Christopher Larson <chris_larson@mentor.com>
6Index: webkitgtk-2.16.1/Source/WTF/wtf/Platform.h
7===================================================================
8--- webkitgtk-2.16.1.orig/Source/WTF/wtf/Platform.h
9+++ webkitgtk-2.16.1/Source/WTF/wtf/Platform.h
10@@ -172,7 +172,11 @@
11 /* CPU(X86_64) - AMD64 / Intel64 / x86_64 64-bit */
12 #if defined(__x86_64__) \
13 || defined(_M_X64)
14+#ifdef __ILP32__
15+#define WTF_CPU_X86_64_32 1
16+#else
17 #define WTF_CPU_X86_64 1
18+#endif
19 #define WTF_CPU_X86_SSE2 1
20 #endif
21