summaryrefslogtreecommitdiffstats
path: root/meta/recipes-sato
diff options
context:
space:
mode:
authorMarkus Volk <f_l_k@t-online.de>2024-04-01 17:24:39 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2024-04-04 14:05:03 +0100
commitb041bd9eaba79a8d9a9a5cb74bafac0c1b2be2f9 (patch)
tree1fdf41e02ba1f97c71d3061f13179404aa933621 /meta/recipes-sato
parent1885588807328010aa735cedb77c7c763b998c98 (diff)
downloadpoky-b041bd9eaba79a8d9a9a5cb74bafac0c1b2be2f9.tar.gz
webkitgtk: update 2.42.5 -> 2.44.0
- add a PACKAGECONFIG for libbacktrace to avoid: | -- Could NOT find LibBacktrace (missing: LIBBACKTRACE_INCLUDE_DIR LIBBACKTRACE_LIBRARY) | CMake Error at Source/cmake/OptionsGTK.cmake:425 (message): | libbacktrace is required for USE_LIBBACKTRACE - while at it also add a PACKAGECONFIG for gamepad - remove submitted patch. Issue seems to be fixed. Not entirely sure about that, but there has been rework: [https://bugs.webkit.org/show_bug.cgi?id=267349] I also did a test build with oe-core/poky for qemuarm. It completed without error - There is an issue with creating the json files if CMAKE_EXPORT_COMPILE_COMMANDS is enabled. Disable this for now to fix the build: FAILED: CMakeFiles/RewriteCompileCommands DeveloperTools/compile_commands.json /home/flk/poky/build-hypr/tmp/work/corei7-64-poky-linux/webkitgtk/2.44.0/build/CMakeFiles/RewriteCompileCommands /home/flk/poky/build-hypr/tmp/work/corei7-64-poky-linux/webkitgtk/2.44.0/build/DeveloperTools/compile_commands.json cd /home/flk/poky/build-hypr/tmp/work/corei7-64-poky-linux/webkitgtk/2.44.0/build && /home/flk/poky/build-hypr/tmp/work/corei7-64-poky-linux/webkitgtk/2.44.0/recipe-sysroot-native/usr/bin/python3-native/python3 /home/flk/poky/build-hypr/tmp/work/corei7-64-poky-linux/webkitgtk/2.44.0/webkitgtk-2.44.0/Tools/Scripts/rewrite-compile-commands /home/flk/poky/build-hypr/tmp/work/corei7-64-poky-linux/webkitgtk/2.44.0/build/compile_commands.json /home/flk/poky/build-hypr/tmp/work/corei7-64-poky-linux/webkitgtk/2.44.0/build/DeveloperTools/compile_commands.json /home/flk/poky/build-hypr/tmp/work/corei7-64-poky-linux/webkitgtk/2.44.0/webkitgtk-2.44.0 /home/flk/poky/build-hypr/tmp/work/corei7-64-poky-linux/webkitgtk/2.44.0/build /home/flk/poky/build-hypr/tmp/work/corei7-64-poky-linux/webkitgtk/2.44.0/recipe-sysroot-native/usr/bin/python3-native/python3: can't open file '/home/flk/poky/build-hypr/tmp/work/corei7-64-poky-linux/webkitgtk/2.44.0/webkitgtk-2.44.0/Tools/Scripts/rewrite-compile-commands': [Errno 2] No such file or directory - Add a patch to fix webassembly for riscv64 - Add a backport patch to fix the build for 32bit architectures ================ WebKitGTK 2.44.0 ================ What's new in WebKitGTK 2.44.0? - Fix connection of UI and web process accessibility tree in GTK4. - Add BubblewrapLauncher sandbox directory for the gstreamer user registry cache directory. - Fix bug causing preferred language to not be passed to NetworkProcess if set in WebContext before creating WebView. - Do not use real time priority for the display link thread. - Use a shorter web process cache lifetime. - Fix several crashes and rendering issues. - Translation updates: German, Polish, Swedish, Turkish. ================ WebKitGTK 2.43.4 ================ What's new in WebKitGTK 2.43.4? - Remove key event reinjection in GTK4 to make keyboard shortcuts work in web sites. - Use the new GTK API to create a GdkTexture from a DMA-BUF buffer when available. - Fix rendering when GTK is using the vulkan renderer. - Fix gamepads detection by correctly handling focused window in GTK4. - Fix rendering after history navigation. - Write bwrapinfo.json to disk for xdg-desktop-portal. - Fixed several memory leaks in media backend. - Fix several crashes and rendering issues. ================ WebKitGTK 2.43.3 ================ What's new in WebKitGTK 2.43.3? - Show vblank monitor information in webkit://gpu. - Fallback to timer based vblank monitor if drmWaitVBlank fails. - Fix several memory leaks in media backend. - Fix several crashes and rendering issues. ================ WebKitGTK 2.43.2 ================ What's new in WebKitGTK 2.43.2? - Remove the X11 and WPE renderers. - Release unused buffers when the view is hidden. - Fix flickering while playing videos with DMA-BUF sink. - Do not special case the "sans" font family name. - Fix webkit_web_context_allow_tls_certificate_for_host() for IPv6 URIs produced by SoupURI. - Fix several crashes and rendering issues. ================ WebKitGTK 2.43.1 ================ What's new in WebKitGTK 2.43.1? - Improve vblank synchronization when rendering. - Improve DMA-BUF buffers handling for video frames. - Use the buffer format preferred by the driver in DMA-BUF renderer. - Do not block the compositing thread waiting for rendering threads. - Improve performance when scaling images in a canvas. - Fix several crashes and rendering (From OE-Core rev: 7b96a7e433eb6b85c35dd6a36a12ad55d2e6a108) Signed-off-by: Markus Volk <f_l_k@t-online.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-sato')
-rw-r--r--meta/recipes-sato/webkit/webkitgtk/0d3344e17d258106617b0e6d783d073b188a2548.patch310
-rw-r--r--meta/recipes-sato/webkit/webkitgtk/2922af379dc70b4b1a63b01d67179eb431f03ac4.patch38
-rw-r--r--meta/recipes-sato/webkit/webkitgtk/30e1d5e22213fdaca2a29ec3400c927d710a37a8.patch67
-rw-r--r--meta/recipes-sato/webkit/webkitgtk_2.44.0.bb (renamed from meta/recipes-sato/webkit/webkitgtk_2.42.5.bb)9
4 files changed, 111 insertions, 313 deletions
diff --git a/meta/recipes-sato/webkit/webkitgtk/0d3344e17d258106617b0e6d783d073b188a2548.patch b/meta/recipes-sato/webkit/webkitgtk/0d3344e17d258106617b0e6d783d073b188a2548.patch
deleted file mode 100644
index a4ef565db0..0000000000
--- a/meta/recipes-sato/webkit/webkitgtk/0d3344e17d258106617b0e6d783d073b188a2548.patch
+++ /dev/null
@@ -1,310 +0,0 @@
1From a180f6821f81c65e320be0cebac72b4dcf86342e Mon Sep 17 00:00:00 2001
2From: Adrian Perez de Castro <aperez@igalia.com>
3Date: Thu, 2 Jun 2022 11:19:06 +0300
4Subject: [PATCH] FELightningNEON.cpp fails to build, NEON fast path seems
5 unused https://bugs.webkit.org/show_bug.cgi?id=241182
6
7Reviewed by NOBODY (OOPS!).
8
9Move the NEON fast path for the SVG lighting filter effects into
10FELightingSoftwareApplier, and arrange to actually use them by
11forwarding calls to applyPlatformGeneric() into applyPlatformNeon().
12
13Some changes were needed to adapt platformApplyNeon() to the current
14state of filters after r286140. This was not detected because the code
15bitrotted due to it being guarded with CPU(ARM_TRADITIONAL), which does
16not get used much these days: CPU(ARM_THUMB2) is more common. It should
17be possible to use the NEON fast paths also in Thumb mode, but that is
18left for a follow-up fix.
19
20* Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp:
21(WebCore::FELightingSoftwareApplier::platformApplyNeonWorker):
22(WebCore::FELightingSoftwareApplier::getPowerCoefficients):
23(WebCore::FELighting::platformApplyNeonWorker): Deleted.
24(WebCore::FELighting::getPowerCoefficients): Deleted.
25* Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h:
26(WebCore::FELightingSoftwareApplier::applyPlatformNeon):
27(WebCore::FELighting::platformApplyNeon): Deleted.
28* Source/WebCore/platform/graphics/filters/DistantLightSource.h:
29* Source/WebCore/platform/graphics/filters/FELighting.h:
30* Source/WebCore/platform/graphics/filters/PointLightSource.h:
31* Source/WebCore/platform/graphics/filters/SpotLightSource.h:
32* Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h:
33
34Upstream-Status: Submitted [https://github.com/WebKit/WebKit/pull/1233]
35Signed-off-by: Khem Raj <raj.khem@gmail.com>
36---
37 .../cpu/arm/filters/FELightingNEON.cpp | 4 +-
38 .../graphics/cpu/arm/filters/FELightingNEON.h | 52 +++++++++----------
39 .../graphics/filters/DistantLightSource.h | 4 ++
40 .../platform/graphics/filters/FELighting.h | 7 ---
41 .../graphics/filters/PointLightSource.h | 4 ++
42 .../graphics/filters/SpotLightSource.h | 4 ++
43 .../software/FELightingSoftwareApplier.h | 16 ++++++
44 7 files changed, 56 insertions(+), 35 deletions(-)
45
46diff --git a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp
47index f6ff8c20..42a97ffc 100644
48--- a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp
49+++ b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp
50@@ -49,7 +49,7 @@ short* feLightingConstantsForNeon()
51 return s_FELightingConstantsForNeon;
52 }
53
54-void FELighting::platformApplyNeonWorker(FELightingPaintingDataForNeon* parameters)
55+void FELightingSoftwareApplier::platformApplyNeonWorker(FELightingPaintingDataForNeon* parameters)
56 {
57 neonDrawLighting(parameters);
58 }
59@@ -464,7 +464,7 @@ TOSTRING(neonDrawLighting) ":" NL
60 "b .lightStrengthCalculated" NL
61 ); // NOLINT
62
63-int FELighting::getPowerCoefficients(float exponent)
64+int FELightingSoftwareApplier::getPowerCoefficients(float exponent)
65 {
66 // Calling a powf function from the assembly code would require to save
67 // and reload a lot of NEON registers. Since the base is in range [0..1]
68diff --git a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h
69index b17c603d..e4629cda 100644
70--- a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h
71+++ b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h
72@@ -24,14 +24,15 @@
73 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
74 */
75
76-#ifndef FELightingNEON_h
77-#define FELightingNEON_h
78+#pragma once
79
80 #if CPU(ARM_NEON) && CPU(ARM_TRADITIONAL) && COMPILER(GCC_COMPATIBLE)
81
82-#include "FELighting.h"
83+#include "FELightingSoftwareApplier.h"
84+#include "ImageBuffer.h"
85 #include "PointLightSource.h"
86 #include "SpotLightSource.h"
87+#include <wtf/ObjectIdentifier.h>
88 #include <wtf/ParallelJobs.h>
89
90 namespace WebCore {
91@@ -93,14 +94,14 @@ extern "C" {
92 void neonDrawLighting(FELightingPaintingDataForNeon*);
93 }
94
95-inline void FELighting::platformApplyNeon(const LightingData& data, const LightSource::PaintingData& paintingData)
96+inline void FELightingSoftwareApplier::applyPlatformNeon(const FELightingSoftwareApplier::LightingData& data, const LightSource::PaintingData& paintingData)
97 {
98- alignas(16) FELightingFloatArgumentsForNeon floatArguments;
99- FELightingPaintingDataForNeon neonData = {
100+ WebCore::FELightingFloatArgumentsForNeon alignas(16) floatArguments;
101+ WebCore::FELightingPaintingDataForNeon neonData = {
102 data.pixels->data(),
103 1,
104- data.widthDecreasedByOne - 1,
105- data.heightDecreasedByOne - 1,
106+ data.width - 2,
107+ data.height - 2,
108 0,
109 0,
110 0,
111@@ -111,23 +112,23 @@ inline void FELighting::platformApplyNeon(const LightingData& data, const LightS
112 // Set light source arguments.
113 floatArguments.constOne = 1;
114
115- auto color = m_lightingColor.toColorTypeLossy<SRGBA<uint8_t>>().resolved();
116+ auto color = data.lightingColor.toColorTypeLossy<SRGBA<uint8_t>>().resolved();
117
118 floatArguments.colorRed = color.red;
119 floatArguments.colorGreen = color.green;
120 floatArguments.colorBlue = color.blue;
121 floatArguments.padding4 = 0;
122
123- if (m_lightSource->type() == LS_POINT) {
124+ if (data.lightSource->type() == LS_POINT) {
125 neonData.flags |= FLAG_POINT_LIGHT;
126- PointLightSource& pointLightSource = static_cast<PointLightSource&>(m_lightSource.get());
127+ const auto& pointLightSource = *static_cast<const PointLightSource*>(data.lightSource);
128 floatArguments.lightX = pointLightSource.position().x();
129 floatArguments.lightY = pointLightSource.position().y();
130 floatArguments.lightZ = pointLightSource.position().z();
131 floatArguments.padding2 = 0;
132- } else if (m_lightSource->type() == LS_SPOT) {
133+ } else if (data.lightSource->type() == LS_SPOT) {
134 neonData.flags |= FLAG_SPOT_LIGHT;
135- SpotLightSource& spotLightSource = static_cast<SpotLightSource&>(m_lightSource.get());
136+ const auto& spotLightSource = *static_cast<const SpotLightSource*>(data.lightSource);
137 floatArguments.lightX = spotLightSource.position().x();
138 floatArguments.lightY = spotLightSource.position().y();
139 floatArguments.lightZ = spotLightSource.position().z();
140@@ -145,7 +146,7 @@ inline void FELighting::platformApplyNeon(const LightingData& data, const LightS
141 if (spotLightSource.specularExponent() == 1)
142 neonData.flags |= FLAG_CONE_EXPONENT_IS_1;
143 } else {
144- ASSERT(m_lightSource->type() == LS_DISTANT);
145+ ASSERT(data.lightSource->type() == LS_DISTANT);
146 floatArguments.lightX = paintingData.initialLightingData.lightVector.x();
147 floatArguments.lightY = paintingData.initialLightingData.lightVector.y();
148 floatArguments.lightZ = paintingData.initialLightingData.lightVector.z();
149@@ -155,38 +156,39 @@ inline void FELighting::platformApplyNeon(const LightingData& data, const LightS
150 // Set lighting arguments.
151 floatArguments.surfaceScale = data.surfaceScale;
152 floatArguments.minusSurfaceScaleDividedByFour = -data.surfaceScale / 4;
153- if (m_lightingType == FELighting::DiffuseLighting)
154- floatArguments.diffuseConstant = m_diffuseConstant;
155+ if (data.filterType == FilterEffect::Type::FEDiffuseLighting)
156+ floatArguments.diffuseConstant = data.diffuseConstant;
157 else {
158 neonData.flags |= FLAG_SPECULAR_LIGHT;
159- floatArguments.diffuseConstant = m_specularConstant;
160- neonData.specularExponent = getPowerCoefficients(m_specularExponent);
161- if (m_specularExponent == 1)
162+ floatArguments.diffuseConstant = data.specularConstant;
163+ neonData.specularExponent = getPowerCoefficients(data.specularExponent);
164+ if (data.specularExponent == 1)
165 neonData.flags |= FLAG_SPECULAR_EXPONENT_IS_1;
166 }
167 if (floatArguments.diffuseConstant == 1)
168 neonData.flags |= FLAG_DIFFUSE_CONST_IS_1;
169
170- int optimalThreadNumber = ((data.widthDecreasedByOne - 1) * (data.heightDecreasedByOne - 1)) / s_minimalRectDimension;
171+ static constexpr int minimalRectDimension = 100 * 100; // Empirical data limit for parallel jobs
172+ int optimalThreadNumber = ((data.width - 2) * (data.height - 2)) / minimalRectDimension;
173 if (optimalThreadNumber > 1) {
174 // Initialize parallel jobs
175- ParallelJobs<FELightingPaintingDataForNeon> parallelJobs(&WebCore::FELighting::platformApplyNeonWorker, optimalThreadNumber);
176+ ParallelJobs<FELightingPaintingDataForNeon> parallelJobs(&FELightingSoftwareApplier::platformApplyNeonWorker, optimalThreadNumber);
177
178 // Fill the parameter array
179 int job = parallelJobs.numberOfJobs();
180 if (job > 1) {
181 int yStart = 1;
182- int yStep = (data.heightDecreasedByOne - 1) / job;
183+ int yStep = (data.height - 2) / job;
184 for (--job; job >= 0; --job) {
185 FELightingPaintingDataForNeon& params = parallelJobs.parameter(job);
186 params = neonData;
187 params.yStart = yStart;
188- params.pixels += (yStart - 1) * (data.widthDecreasedByOne + 1) * 4;
189+ params.pixels += (yStart - 1) * data.width * 4;
190 if (job > 0) {
191 params.absoluteHeight = yStep;
192 yStart += yStep;
193 } else
194- params.absoluteHeight = data.heightDecreasedByOne - yStart;
195+ params.absoluteHeight = (data.height - 1) - yStart;
196 }
197 parallelJobs.execute();
198 return;
199@@ -199,5 +201,3 @@ inline void FELighting::platformApplyNeon(const LightingData& data, const LightS
200 } // namespace WebCore
201
202 #endif // CPU(ARM_NEON) && COMPILER(GCC_COMPATIBLE)
203-
204-#endif // FELightingNEON_h
205diff --git a/Source/WebCore/platform/graphics/filters/DistantLightSource.h b/Source/WebCore/platform/graphics/filters/DistantLightSource.h
206index 70f583b3..7d5d27e5 100644
207--- a/Source/WebCore/platform/graphics/filters/DistantLightSource.h
208+++ b/Source/WebCore/platform/graphics/filters/DistantLightSource.h
209@@ -26,6 +26,10 @@
210 #include <wtf/ArgumentCoder.h>
211 #include <wtf/Ref.h>
212
213+namespace WTF {
214+class TextStream;
215+} // namespace WTF
216+
217 namespace WebCore {
218
219 class DistantLightSource : public LightSource {
220diff --git a/Source/WebCore/platform/graphics/filters/FELighting.h b/Source/WebCore/platform/graphics/filters/FELighting.h
221index 179edf6d..694d712d 100644
222--- a/Source/WebCore/platform/graphics/filters/FELighting.h
223+++ b/Source/WebCore/platform/graphics/filters/FELighting.h
224@@ -35,8 +35,6 @@
225
226 namespace WebCore {
227
228-struct FELightingPaintingDataForNeon;
229-
230 class FELighting : public FilterEffect {
231 public:
232 bool operator==(const FELighting&) const;
233@@ -68,11 +66,6 @@ protected:
234
235 std::unique_ptr<FilterEffectApplier> createSoftwareApplier() const override;
236
237-#if CPU(ARM_NEON) && CPU(ARM_TRADITIONAL) && COMPILER(GCC_COMPATIBLE)
238- static int getPowerCoefficients(float exponent);
239- inline void platformApplyNeon(const LightingData&, const LightSource::PaintingData&);
240-#endif
241-
242 Color m_lightingColor;
243 float m_surfaceScale;
244 float m_diffuseConstant;
245diff --git a/Source/WebCore/platform/graphics/filters/PointLightSource.h b/Source/WebCore/platform/graphics/filters/PointLightSource.h
246index a8cfdab8..34f867bb 100644
247--- a/Source/WebCore/platform/graphics/filters/PointLightSource.h
248+++ b/Source/WebCore/platform/graphics/filters/PointLightSource.h
249@@ -26,6 +26,10 @@
250 #include "LightSource.h"
251 #include <wtf/Ref.h>
252
253+namespace WTF {
254+class TextStream;
255+} // namespace WTF
256+
257 namespace WebCore {
258
259 class PointLightSource : public LightSource {
260diff --git a/Source/WebCore/platform/graphics/filters/SpotLightSource.h b/Source/WebCore/platform/graphics/filters/SpotLightSource.h
261index 6404467a..5cac38f2 100644
262--- a/Source/WebCore/platform/graphics/filters/SpotLightSource.h
263+++ b/Source/WebCore/platform/graphics/filters/SpotLightSource.h
264@@ -26,6 +26,10 @@
265 #include "LightSource.h"
266 #include <wtf/Ref.h>
267
268+namespace WTF {
269+class TextStream;
270+} // namespace WTF
271+
272 namespace WebCore {
273
274 class SpotLightSource : public LightSource {
275diff --git a/Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h b/Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h
276index c974d921..e2896660 100644
277--- a/Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h
278+++ b/Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h
279@@ -36,6 +36,7 @@
280 namespace WebCore {
281
282 class FELighting;
283+struct FELightingPaintingDataForNeon;
284
285 class FELightingSoftwareApplier final : public FilterEffectConcreteApplier<FELighting> {
286 WTF_MAKE_FAST_ALLOCATED;
287@@ -132,8 +133,23 @@ private:
288
289 static void applyPlatformGenericPaint(const LightingData&, const LightSource::PaintingData&, int startY, int endY);
290 static void applyPlatformGenericWorker(ApplyParameters*);
291+
292+#if CPU(ARM_NEON) && CPU(ARM_TRADITIONAL) && COMPILER(GCC_COMPATIBLE)
293+ static int getPowerCoefficients(float exponent);
294+ static void platformApplyNeonWorker(FELightingPaintingDataForNeon*);
295+ inline static void applyPlatformNeon(const LightingData&, const LightSource::PaintingData&);
296+
297+ inline static void applyPlatformGeneric(const LightingData& data, const LightSource::PaintingData& paintingData)
298+ {
299+ applyPlatformNeon(data, paintingData);
300+ }
301+#else
302 static void applyPlatformGeneric(const LightingData&, const LightSource::PaintingData&);
303+#endif
304+
305 static void applyPlatform(const LightingData&);
306 };
307
308 } // namespace WebCore
309+
310+#include "FELightingNEON.h"
diff --git a/meta/recipes-sato/webkit/webkitgtk/2922af379dc70b4b1a63b01d67179eb431f03ac4.patch b/meta/recipes-sato/webkit/webkitgtk/2922af379dc70b4b1a63b01d67179eb431f03ac4.patch
new file mode 100644
index 0000000000..3067500447
--- /dev/null
+++ b/meta/recipes-sato/webkit/webkitgtk/2922af379dc70b4b1a63b01d67179eb431f03ac4.patch
@@ -0,0 +1,38 @@
1From 2922af379dc70b4b1a63b01d67179eb431f03ac4 Mon Sep 17 00:00:00 2001
2From: Michael Catanzaro <mcatanzaro@redhat.com>
3Date: Mon, 18 Mar 2024 11:14:54 -0700
4Subject: [PATCH] REGRESSION(274077@main): failure to build on i586 (and likely
5 other 32bit arches): static assertion failed: Timer should stay small
6 https://bugs.webkit.org/show_bug.cgi?id=271108
7
8Unreviewed build fix. This changes SameSizeOfTimer to ensure it matches
9the size of Timer on 32-bit platforms.
10
11* Source/WebCore/platform/Timer.cpp:
12
13Canonical link: https://commits.webkit.org/276282@main
14
15Upstream-Status: Backport [https://github.com/WebKit/WebKit/commit/2922af379dc70b4b1a63b01d67179eb431f03ac4]
16
17Signed-off-by: Markus Volk <f_l_k@t-online.de>
18---
19 Source/WebCore/platform/Timer.cpp | 6 +++++-
20 1 file changed, 5 insertions(+), 1 deletion(-)
21
22diff --git a/Source/WebCore/platform/Timer.cpp b/Source/WebCore/platform/Timer.cpp
23index 4f7c0f5c39ca9..0f3734cca2474 100644
24--- a/Source/WebCore/platform/Timer.cpp
25+++ b/Source/WebCore/platform/Timer.cpp
26@@ -263,7 +263,11 @@ struct SameSizeAsTimer {
27
28 WeakPtr<TimerAlignment> timerAlignment;
29 double times[2];
30- void* pointers[3];
31+ void* pointers[2];
32+#if CPU(ADDRESS32)
33+ uint8_t bitfields;
34+#endif
35+ void* pointer;
36 };
37
38 static_assert(sizeof(Timer) == sizeof(SameSizeAsTimer), "Timer should stay small");
diff --git a/meta/recipes-sato/webkit/webkitgtk/30e1d5e22213fdaca2a29ec3400c927d710a37a8.patch b/meta/recipes-sato/webkit/webkitgtk/30e1d5e22213fdaca2a29ec3400c927d710a37a8.patch
new file mode 100644
index 0000000000..76bcb3df99
--- /dev/null
+++ b/meta/recipes-sato/webkit/webkitgtk/30e1d5e22213fdaca2a29ec3400c927d710a37a8.patch
@@ -0,0 +1,67 @@
1From 1523e00a2a76e285262c8aa3721b5d99f3f2d612 Mon Sep 17 00:00:00 2001
2From: Thomas Devoogdt <thomas.devoogdt@barco.com>
3Date: Mon, 16 Jan 2023 17:03:30 +0100
4Subject: [PATCH] REGRESSION(257865@main): B3Validate.cpp: fix
5
6 !ENABLE(WEBASSEMBLY_B3JIT)
7
8https://bugs.webkit.org/show_bug.cgi?id=250681
9
10Reviewed by NOBODY (OOPS!).
11
12WasmTypeDefinition.h isn't included if not ENABLE(WEBASSEMBLY_B3JIT).
13Also, toB3Type and simdScalarType are not defined if it is included.
14
15Signed-off-by: Thomas Devoogdt <thomas.devoogdt@barco.com>
16
17Upstream-Status: Inappropriate [https://bugs.launchpad.net/ubuntu/+source/webkit2gtk/+bug/2008798]
18
19Signed-off-by: Markus Volk <f_l_k@t-online.de>
20---
21 Source/JavaScriptCore/b3/B3Validate.cpp | 12 +++++++++---
22 1 file changed, 9 insertions(+), 3 deletions(-)
23
24diff --git a/Source/JavaScriptCore/b3/B3Validate.cpp b/Source/JavaScriptCore/b3/B3Validate.cpp
25index eaaa3749..1d089783 100644
26--- a/Source/JavaScriptCore/b3/B3Validate.cpp
27+++ b/Source/JavaScriptCore/b3/B3Validate.cpp
28@@ -47,6 +47,12 @@
29 #include <wtf/StringPrintStream.h>
30 #include <wtf/text/CString.h>
31
32+#if ENABLE(WEBASSEMBLY) && ENABLE(WEBASSEMBLY_B3JIT)
33+#define simdScalarTypeToB3Type(type) toB3Type(Wasm::simdScalarType(type))
34+#else
35+#define simdScalarTypeToB3Type(type) B3::Type()
36+#endif
37+
38 namespace JSC { namespace B3 {
39
40 namespace {
41@@ -454,7 +460,7 @@ public:
42 case VectorExtractLane:
43 VALIDATE(!value->kind().hasExtraBits(), ("At ", *value));
44 VALIDATE(value->numChildren() == 1, ("At ", *value));
45- VALIDATE(value->type() == toB3Type(Wasm::simdScalarType(value->asSIMDValue()->simdLane())), ("At ", *value));
46+ VALIDATE(value->type() == simdScalarTypeToB3Type(value->asSIMDValue()->simdLane()), ("At ", *value));
47 VALIDATE(value->child(0)->type() == V128, ("At ", *value));
48 break;
49 case VectorReplaceLane:
50@@ -462,7 +468,7 @@ public:
51 VALIDATE(value->numChildren() == 2, ("At ", *value));
52 VALIDATE(value->type() == V128, ("At ", *value));
53 VALIDATE(value->child(0)->type() == V128, ("At ", *value));
54- VALIDATE(value->child(1)->type() == toB3Type(Wasm::simdScalarType(value->asSIMDValue()->simdLane())), ("At ", *value));
55+ VALIDATE(value->child(1)->type() == simdScalarTypeToB3Type(value->asSIMDValue()->simdLane()), ("At ", *value));
56 break;
57 case VectorDupElement:
58 VALIDATE(!value->kind().hasExtraBits(), ("At ", *value));
59@@ -484,7 +490,7 @@ public:
60 VALIDATE(!value->kind().hasExtraBits(), ("At ", *value));
61 VALIDATE(value->numChildren() == 1, ("At ", *value));
62 VALIDATE(value->type() == V128, ("At ", *value));
63- VALIDATE(value->child(0)->type() == toB3Type(Wasm::simdScalarType(value->asSIMDValue()->simdLane())), ("At ", *value));
64+ VALIDATE(value->child(0)->type() == simdScalarTypeToB3Type(value->asSIMDValue()->simdLane()), ("At ", *value));
65 break;
66
67 case VectorPopcnt:
diff --git a/meta/recipes-sato/webkit/webkitgtk_2.42.5.bb b/meta/recipes-sato/webkit/webkitgtk_2.44.0.bb
index 6790814958..0819f6de0d 100644
--- a/meta/recipes-sato/webkit/webkitgtk_2.42.5.bb
+++ b/meta/recipes-sato/webkit/webkitgtk_2.44.0.bb
@@ -12,12 +12,13 @@ LIC_FILES_CHKSUM = "file://Source/JavaScriptCore/COPYING.LIB;md5=d0c6d6397a5d842
12SRC_URI = "https://www.webkitgtk.org/releases/${BPN}-${PV}.tar.xz \ 12SRC_URI = "https://www.webkitgtk.org/releases/${BPN}-${PV}.tar.xz \
13 file://0001-FindGObjectIntrospection.cmake-prefix-variables-obta.patch \ 13 file://0001-FindGObjectIntrospection.cmake-prefix-variables-obta.patch \
14 file://reproducibility.patch \ 14 file://reproducibility.patch \
15 file://0d3344e17d258106617b0e6d783d073b188a2548.patch \
16 file://0001-CMake-Add-a-variable-to-control-macro-__PAS_ALWAYS_I.patch \ 15 file://0001-CMake-Add-a-variable-to-control-macro-__PAS_ALWAYS_I.patch \
17 file://no-musttail-arm.patch \ 16 file://no-musttail-arm.patch \
18 file://t6-not-declared.patch \ 17 file://t6-not-declared.patch \
18 file://30e1d5e22213fdaca2a29ec3400c927d710a37a8.patch \
19 file://2922af379dc70b4b1a63b01d67179eb431f03ac4.patch \
19 " 20 "
20SRC_URI[sha256sum] = "b64278c1f20b8cfdbfb5ff573c37d871aba74a1db26d9b39f74e8953fe61e749" 21SRC_URI[sha256sum] = "c66530e41ba59b1edba4ee89ef20b2188e273bed0497e95084729e3cfbe30c87"
21 22
22inherit cmake pkgconfig gobject-introspection perlnative features_check upstream-version-is-even gi-docgen 23inherit cmake pkgconfig gobject-introspection perlnative features_check upstream-version-is-even gi-docgen
23 24
@@ -77,6 +78,8 @@ PACKAGECONFIG[journald] = "-DENABLE_JOURNALD_LOG=ON,-DENABLE_JOURNALD_LOG=OFF,sy
77PACKAGECONFIG[avif] = "-DUSE_AVIF_LOG=ON,-DUSE_AVIF=OFF,libavif" 78PACKAGECONFIG[avif] = "-DUSE_AVIF_LOG=ON,-DUSE_AVIF=OFF,libavif"
78PACKAGECONFIG[media-recorder] = "-DENABLE_MEDIA_RECORDER=ON,-DENABLE_MEDIA_RECORDER=OFF,gstreamer1.0-plugins-bad" 79PACKAGECONFIG[media-recorder] = "-DENABLE_MEDIA_RECORDER=ON,-DENABLE_MEDIA_RECORDER=OFF,gstreamer1.0-plugins-bad"
79PACKAGECONFIG[jpegxl] = "-DUSE_JPEGXL=ON,-DUSE_JPEGXL=OFF,libjxl" 80PACKAGECONFIG[jpegxl] = "-DUSE_JPEGXL=ON,-DUSE_JPEGXL=OFF,libjxl"
81PACKAGECONFIG[backtrace] = "-DUSE_LIBBACKTRACE=ON,-DUSE_LIBBACKTRACE=OFF,libbacktrace"
82PACKAGECONFIG[gamepad] = "-DENABLE_GAMEPAD=ON,-DENABLE_GAMEPAD=OFF,libmanette"
80 83
81EXTRA_OECMAKE = " \ 84EXTRA_OECMAKE = " \
82 -DPORT=GTK \ 85 -DPORT=GTK \
@@ -85,8 +88,8 @@ EXTRA_OECMAKE = " \
85 ${@oe.utils.vartrue('DEBUG_BUILD', '-DWEBKIT_NO_INLINE_HINTS=ON', '-DWEBKIT_NO_INLINE_HINTS=OFFF', d)} \ 88 ${@oe.utils.vartrue('DEBUG_BUILD', '-DWEBKIT_NO_INLINE_HINTS=ON', '-DWEBKIT_NO_INLINE_HINTS=OFFF', d)} \
86 -DENABLE_MINIBROWSER=ON \ 89 -DENABLE_MINIBROWSER=ON \
87 -DENABLE_BUBBLEWRAP_SANDBOX=OFF \ 90 -DENABLE_BUBBLEWRAP_SANDBOX=OFF \
88 -DENABLE_GAMEPAD=OFF \
89 -DUSE_GTK4=ON \ 91 -DUSE_GTK4=ON \
92 -DCMAKE_EXPORT_COMPILE_COMMANDS=OFF \
90 " 93 "
91 94
92# Unless DEBUG_BUILD is enabled, pass -g1 to massively reduce the size of the 95# Unless DEBUG_BUILD is enabled, pass -g1 to massively reduce the size of the