* Re: [oe] [meta-oe][PATCHv2] webkitgtk3: update 2.42.5 -> 2.44.0
[not found] <17C1E85F8DD9714E.22094@lists.openembedded.org>
@ 2024-03-31 17:08 ` Markus Volk
2024-04-01 7:50 ` Khem Raj
0 siblings, 1 reply; 5+ messages in thread
From: Markus Volk @ 2024-03-31 17:08 UTC (permalink / raw)
To: openembedded-devel, Khem Raj
[-- Attachment #1: Type: text/plain, Size: 26391 bytes --]
The webkitgtk3 variant already contains PACKAGECONFIG for gamepad.
Remove the duplicate
On Sun, Mar 31 2024 at 07:07:06 PM +02:00:00, Markus Volk
<f_l_k@t-online.de> wrote:
> - 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
>
> - 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
>
> - Explicitly disable gtk4 to avoid:
> | CMake Error at
> /home/flk/poky/build-hypr/tmp/work/corei7-64-poky-linux/webkitgtk3/2.44.0/recipe-sysroot-native/usr/shar>
> | Could NOT find GTK (missing: GTK_VERSION) (Required is at least
> version
> | "4.6.0")
>
> ================
> 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
>
> Signed-off-by: Markus Volk <f_l_k@t-online.de
> <mailto:f_l_k@t-online.de>>
> ---
> ...44e17d258106617b0e6d783d073b188a2548.patch | 312
> ------------------
> ...kitgtk3_2.42.5.bb => webkitgtk3_2.44.0.bb} | 31 +-
> 2 files changed, 17 insertions(+), 326 deletions(-)
> delete mode 100644
> meta-oe/recipes-support/webkitgtk/webkitgtk3/0d3344e17d258106617b0e6d783d073b188a2548.patch
> rename meta-oe/recipes-support/webkitgtk/{webkitgtk3_2.42.5.bb =>
> webkitgtk3_2.44.0.bb} (89%)
>
> diff --git
> a/meta-oe/recipes-support/webkitgtk/webkitgtk3/0d3344e17d258106617b0e6d783d073b188a2548.patch
> b/meta-oe/recipes-support/webkitgtk/webkitgtk3/0d3344e17d258106617b0e6d783d073b188a2548.patch
> deleted file mode 100644
> index d19d1e117..000000000
> ---
> a/meta-oe/recipes-support/webkitgtk/webkitgtk3/0d3344e17d258106617b0e6d783d073b188a2548.patch
> +++ /dev/null
> @@ -1,312 +0,0 @@
> -From e3c12b38037b4bb3053c440e4bd22c36c1dc576b Mon Sep 17 00:00:00
> 2001
> -From: Adrian Perez de Castro <aperez@igalia.com
> <mailto:aperez@igalia.com>>
> -Date: Thu, 2 Jun 2022 11:19:06 +0300
> -Subject: [PATCH] FELightningNEON.cpp fails to build, NEON fast path
> seems
> -
> - unused <https://bugs.webkit.org/show_bug.cgi?id=241182>
> -
> -Reviewed by NOBODY (OOPS!).
> -
> -Move the NEON fast path for the SVG lighting filter effects into
> -FELightingSoftwareApplier, and arrange to actually use them by
> -forwarding calls to applyPlatformGeneric() into applyPlatformNeon().
> -
> -Some changes were needed to adapt platformApplyNeon() to the current
> -state of filters after r286140. This was not detected because the
> code
> -bitrotted due to it being guarded with CPU(ARM_TRADITIONAL), which
> does
> -not get used much these days: CPU(ARM_THUMB2) is more common. It
> should
> -be possible to use the NEON fast paths also in Thumb mode, but that
> is
> -left for a follow-up fix.
> -
> -*
> Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp:
> -(WebCore::FELightingSoftwareApplier::platformApplyNeonWorker):
> -(WebCore::FELightingSoftwareApplier::getPowerCoefficients):
> -(WebCore::FELighting::platformApplyNeonWorker): Deleted.
> -(WebCore::FELighting::getPowerCoefficients): Deleted.
> -* Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h:
> -(WebCore::FELightingSoftwareApplier::applyPlatformNeon):
> -(WebCore::FELighting::platformApplyNeon): Deleted.
> -* Source/WebCore/platform/graphics/filters/DistantLightSource.h:
> -* Source/WebCore/platform/graphics/filters/FELighting.h:
> -* Source/WebCore/platform/graphics/filters/PointLightSource.h:
> -* Source/WebCore/platform/graphics/filters/SpotLightSource.h:
> -*
> Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h:
> -
> -Upstream-Status: Submitted
> [<https://github.com/WebKit/WebKit/pull/1233>]
> -Signed-off-by: Khem Raj <raj.khem@gmail.com
> <mailto:raj.khem@gmail.com>>
> -
> ----
> - .../cpu/arm/filters/FELightingNEON.cpp | 4 +-
> - .../graphics/cpu/arm/filters/FELightingNEON.h | 52
> +++++++++----------
> - .../graphics/filters/DistantLightSource.h | 4 ++
> - .../platform/graphics/filters/FELighting.h | 7 ---
> - .../graphics/filters/PointLightSource.h | 4 ++
> - .../graphics/filters/SpotLightSource.h | 4 ++
> - .../software/FELightingSoftwareApplier.h | 16 ++++++
> - 7 files changed, 56 insertions(+), 35 deletions(-)
> -
> -diff --git
> a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp
> b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp
> -index f6ff8c20..42a97ffc 100644
> ----
> a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp
> -+++
> b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp
> -@@ -49,7 +49,7 @@ short* feLightingConstantsForNeon()
> - return s_FELightingConstantsForNeon;
> - }
> -
> --void
> FELighting::platformApplyNeonWorker(FELightingPaintingDataForNeon*
> parameters)
> -+void
> FELightingSoftwareApplier::platformApplyNeonWorker(FELightingPaintingDataForNeon*
> parameters)
> - {
> - neonDrawLighting(parameters);
> - }
> -@@ -464,7 +464,7 @@ TOSTRING(neonDrawLighting) ":" NL
> - "b .lightStrengthCalculated" NL
> - ); // NOLINT
> -
> --int FELighting::getPowerCoefficients(float exponent)
> -+int FELightingSoftwareApplier::getPowerCoefficients(float exponent)
> - {
> - // Calling a powf function from the assembly code would require
> to save
> - // and reload a lot of NEON registers. Since the base is in
> range [0..1]
> -diff --git
> a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h
> b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h
> -index b17c603d..e4629cda 100644
> ----
> a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h
> -+++
> b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h
> -@@ -24,14 +24,15 @@
> - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
> DAMAGE.
> - */
> -
> --#ifndef FELightingNEON_h
> --#define FELightingNEON_h
> -+#pragma once
> -
> - #if CPU(ARM_NEON) && CPU(ARM_TRADITIONAL) &&
> COMPILER(GCC_COMPATIBLE)
> -
> --#include "FELighting.h"
> -+#include "FELightingSoftwareApplier.h"
> -+#include "ImageBuffer.h"
> - #include "PointLightSource.h"
> - #include "SpotLightSource.h"
> -+#include <wtf/ObjectIdentifier.h>
> - #include <wtf/ParallelJobs.h>
> -
> - namespace WebCore {
> -@@ -93,14 +94,14 @@ extern "C" {
> - void neonDrawLighting(FELightingPaintingDataForNeon*);
> - }
> -
> --inline void FELighting::platformApplyNeon(const LightingData& data,
> const LightSource::PaintingData& paintingData)
> -+inline void FELightingSoftwareApplier::applyPlatformNeon(const
> FELightingSoftwareApplier::LightingData& data, const
> LightSource::PaintingData& paintingData)
> - {
> -- alignas(16) FELightingFloatArgumentsForNeon floatArguments;
> -- FELightingPaintingDataForNeon neonData = {
> -+ WebCore::FELightingFloatArgumentsForNeon alignas(16)
> floatArguments;
> -+ WebCore::FELightingPaintingDataForNeon neonData = {
> - data.pixels->data(),
> - 1,
> -- data.widthDecreasedByOne - 1,
> -- data.heightDecreasedByOne - 1,
> -+ data.width - 2,
> -+ data.height - 2,
> - 0,
> - 0,
> - 0,
> -@@ -111,23 +112,23 @@ inline void
> FELighting::platformApplyNeon(const LightingData& data, const LightS
> - // Set light source arguments.
> - floatArguments.constOne = 1;
> -
> -- auto color =
> m_lightingColor.toColorTypeLossy<SRGBA<uint8_t>>().resolved();
> -+ auto color =
> data.lightingColor.toColorTypeLossy<SRGBA<uint8_t>>().resolved();
> -
> - floatArguments.colorRed = color.red;
> - floatArguments.colorGreen = color.green;
> - floatArguments.colorBlue = color.blue;
> - floatArguments.padding4 = 0;
> -
> -- if (m_lightSource->type() == LS_POINT) {
> -+ if (data.lightSource->type() == LS_POINT) {
> - neonData.flags |= FLAG_POINT_LIGHT;
> -- PointLightSource& pointLightSource =
> static_cast<PointLightSource&>(m_lightSource.get());
> -+ const auto& pointLightSource = *static_cast<const
> PointLightSource*>(data.lightSource);
> - floatArguments.lightX = pointLightSource.position().x();
> - floatArguments.lightY = pointLightSource.position().y();
> - floatArguments.lightZ = pointLightSource.position().z();
> - floatArguments.padding2 = 0;
> -- } else if (m_lightSource->type() == LS_SPOT) {
> -+ } else if (data.lightSource->type() == LS_SPOT) {
> - neonData.flags |= FLAG_SPOT_LIGHT;
> -- SpotLightSource& spotLightSource =
> static_cast<SpotLightSource&>(m_lightSource.get());
> -+ const auto& spotLightSource = *static_cast<const
> SpotLightSource*>(data.lightSource);
> - floatArguments.lightX = spotLightSource.position().x();
> - floatArguments.lightY = spotLightSource.position().y();
> - floatArguments.lightZ = spotLightSource.position().z();
> -@@ -145,7 +146,7 @@ inline void FELighting::platformApplyNeon(const
> LightingData& data, const LightS
> - if (spotLightSource.specularExponent() == 1)
> - neonData.flags |= FLAG_CONE_EXPONENT_IS_1;
> - } else {
> -- ASSERT(m_lightSource->type() == LS_DISTANT);
> -+ ASSERT(data.lightSource->type() == LS_DISTANT);
> - floatArguments.lightX =
> paintingData.initialLightingData.lightVector.x();
> - floatArguments.lightY =
> paintingData.initialLightingData.lightVector.y();
> - floatArguments.lightZ =
> paintingData.initialLightingData.lightVector.z();
> -@@ -155,38 +156,39 @@ inline void
> FELighting::platformApplyNeon(const LightingData& data, const LightS
> - // Set lighting arguments.
> - floatArguments.surfaceScale = data.surfaceScale;
> - floatArguments.minusSurfaceScaleDividedByFour =
> -data.surfaceScale / 4;
> -- if (m_lightingType == FELighting::DiffuseLighting)
> -- floatArguments.diffuseConstant = m_diffuseConstant;
> -+ if (data.filterType == FilterEffect::Type::FEDiffuseLighting)
> -+ floatArguments.diffuseConstant = data.diffuseConstant;
> - else {
> - neonData.flags |= FLAG_SPECULAR_LIGHT;
> -- floatArguments.diffuseConstant = m_specularConstant;
> -- neonData.specularExponent =
> getPowerCoefficients(m_specularExponent);
> -- if (m_specularExponent == 1)
> -+ floatArguments.diffuseConstant = data.specularConstant;
> -+ neonData.specularExponent =
> getPowerCoefficients(data.specularExponent);
> -+ if (data.specularExponent == 1)
> - neonData.flags |= FLAG_SPECULAR_EXPONENT_IS_1;
> - }
> - if (floatArguments.diffuseConstant == 1)
> - neonData.flags |= FLAG_DIFFUSE_CONST_IS_1;
> -
> -- int optimalThreadNumber = ((data.widthDecreasedByOne - 1) *
> (data.heightDecreasedByOne - 1)) / s_minimalRectDimension;
> -+ static constexpr int minimalRectDimension = 100 * 100; //
> Empirical data limit for parallel jobs
> -+ int optimalThreadNumber = ((data.width - 2) * (data.height -
> 2)) / minimalRectDimension;
> - if (optimalThreadNumber > 1) {
> - // Initialize parallel jobs
> -- ParallelJobs<FELightingPaintingDataForNeon>
> parallelJobs(&WebCore::FELighting::platformApplyNeonWorker,
> optimalThreadNumber);
> -+ ParallelJobs<FELightingPaintingDataForNeon>
> parallelJobs(&FELightingSoftwareApplier::platformApplyNeonWorker,
> optimalThreadNumber);
> -
> - // Fill the parameter array
> - int job = parallelJobs.numberOfJobs();
> - if (job > 1) {
> - int yStart = 1;
> -- int yStep = (data.heightDecreasedByOne - 1) / job;
> -+ int yStep = (data.height - 2) / job;
> - for (--job; job >= 0; --job) {
> - FELightingPaintingDataForNeon& params =
> parallelJobs.parameter(job);
> - params = neonData;
> - params.yStart = yStart;
> -- params.pixels += (yStart - 1) *
> (data.widthDecreasedByOne + 1) * 4;
> -+ params.pixels += (yStart - 1) * data.width * 4;
> - if (job > 0) {
> - params.absoluteHeight = yStep;
> - yStart += yStep;
> - } else
> -- params.absoluteHeight =
> data.heightDecreasedByOne - yStart;
> -+ params.absoluteHeight = (data.height - 1) -
> yStart;
> - }
> - parallelJobs.execute();
> - return;
> -@@ -199,5 +201,3 @@ inline void FELighting::platformApplyNeon(const
> LightingData& data, const LightS
> - } // namespace WebCore
> -
> - #endif // CPU(ARM_NEON) && COMPILER(GCC_COMPATIBLE)
> --
> --#endif // FELightingNEON_h
> -diff --git
> a/Source/WebCore/platform/graphics/filters/DistantLightSource.h
> b/Source/WebCore/platform/graphics/filters/DistantLightSource.h
> -index 70f583b3..7d5d27e5 100644
> ---- a/Source/WebCore/platform/graphics/filters/DistantLightSource.h
> -+++ b/Source/WebCore/platform/graphics/filters/DistantLightSource.h
> -@@ -26,6 +26,10 @@
> - #include <wtf/ArgumentCoder.h>
> - #include <wtf/Ref.h>
> -
> -+namespace WTF {
> -+class TextStream;
> -+} // namespace WTF
> -+
> - namespace WebCore {
> -
> - class DistantLightSource : public LightSource {
> -diff --git a/Source/WebCore/platform/graphics/filters/FELighting.h
> b/Source/WebCore/platform/graphics/filters/FELighting.h
> -index 179edf6d..694d712d 100644
> ---- a/Source/WebCore/platform/graphics/filters/FELighting.h
> -+++ b/Source/WebCore/platform/graphics/filters/FELighting.h
> -@@ -35,8 +35,6 @@
> -
> - namespace WebCore {
> -
> --struct FELightingPaintingDataForNeon;
> --
> - class FELighting : public FilterEffect {
> - public:
> - bool operator==(const FELighting&) const;
> -@@ -68,11 +66,6 @@ protected:
> -
> - std::unique_ptr<FilterEffectApplier> createSoftwareApplier()
> const override;
> -
> --#if CPU(ARM_NEON) && CPU(ARM_TRADITIONAL) &&
> COMPILER(GCC_COMPATIBLE)
> -- static int getPowerCoefficients(float exponent);
> -- inline void platformApplyNeon(const LightingData&, const
> LightSource::PaintingData&);
> --#endif
> --
> - Color m_lightingColor;
> - float m_surfaceScale;
> - float m_diffuseConstant;
> -diff --git
> a/Source/WebCore/platform/graphics/filters/PointLightSource.h
> b/Source/WebCore/platform/graphics/filters/PointLightSource.h
> -index a8cfdab8..34f867bb 100644
> ---- a/Source/WebCore/platform/graphics/filters/PointLightSource.h
> -+++ b/Source/WebCore/platform/graphics/filters/PointLightSource.h
> -@@ -26,6 +26,10 @@
> - #include "LightSource.h"
> - #include <wtf/Ref.h>
> -
> -+namespace WTF {
> -+class TextStream;
> -+} // namespace WTF
> -+
> - namespace WebCore {
> -
> - class PointLightSource : public LightSource {
> -diff --git
> a/Source/WebCore/platform/graphics/filters/SpotLightSource.h
> b/Source/WebCore/platform/graphics/filters/SpotLightSource.h
> -index 6404467a..5cac38f2 100644
> ---- a/Source/WebCore/platform/graphics/filters/SpotLightSource.h
> -+++ b/Source/WebCore/platform/graphics/filters/SpotLightSource.h
> -@@ -26,6 +26,10 @@
> - #include "LightSource.h"
> - #include <wtf/Ref.h>
> -
> -+namespace WTF {
> -+class TextStream;
> -+} // namespace WTF
> -+
> - namespace WebCore {
> -
> - class SpotLightSource : public LightSource {
> -diff --git
> a/Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h
> b/Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h
> -index c974d921..e2896660 100644
> ----
> a/Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h
> -+++
> b/Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h
> -@@ -36,6 +36,7 @@
> - namespace WebCore {
> -
> - class FELighting;
> -+struct FELightingPaintingDataForNeon;
> -
> - class FELightingSoftwareApplier final : public
> FilterEffectConcreteApplier<FELighting> {
> - WTF_MAKE_FAST_ALLOCATED;
> -@@ -132,8 +133,23 @@ private:
> -
> - static void applyPlatformGenericPaint(const LightingData&,
> const LightSource::PaintingData&, int startY, int endY);
> - static void applyPlatformGenericWorker(ApplyParameters*);
> -+
> -+#if CPU(ARM_NEON) && CPU(ARM_TRADITIONAL) &&
> COMPILER(GCC_COMPATIBLE)
> -+ static int getPowerCoefficients(float exponent);
> -+ static void
> platformApplyNeonWorker(FELightingPaintingDataForNeon*);
> -+ inline static void applyPlatformNeon(const LightingData&, const
> LightSource::PaintingData&);
> -+
> -+ inline static void applyPlatformGeneric(const LightingData&
> data, const LightSource::PaintingData& paintingData)
> -+ {
> -+ applyPlatformNeon(data, paintingData);
> -+ }
> -+#else
> - static void applyPlatformGeneric(const LightingData&, const
> LightSource::PaintingData&);
> -+#endif
> -+
> - static void applyPlatform(const LightingData&);
> - };
> -
> - } // namespace WebCore
> -+
> -+#include "FELightingNEON.h"
> diff --git a/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.42.5.bb
> b/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.44.0.bb
> similarity index 89%
> rename from meta-oe/recipes-support/webkitgtk/webkitgtk3_2.42.5.bb
> rename to meta-oe/recipes-support/webkitgtk/webkitgtk3_2.44.0.bb
> index 234ecfae0..e5d53329d 100644
> --- a/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.42.5.bb
> +++ b/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.44.0.bb
> @@ -12,11 +12,10 @@ LIC_FILES_CHKSUM =
> "file://Source/JavaScriptCore/COPYING.LIB;md5=d0c6d6397a5d842
> SRC_URI = "https://www.webkitgtk.org/releases/webkitgtk-${PV}.tar.xz
> <https://www.webkitgtk.org/releases/webkitgtk-$%7BPV%7D.tar.xz> \
>
> file://0001-FindGObjectIntrospection.cmake-prefix-variables-obta.patch
> <file://0001-findgobjectintrospection.cmake-prefix-variables-obta.patch/>
> \
> file://reproducibility.patch
> <file://reproducibility.patch/> \
> - file://0d3344e17d258106617b0e6d783d073b188a2548.patch
> <file://0d3344e17d258106617b0e6d783d073b188a2548.patch/> \
> file://no-musttail-arm.patch
> <file://no-musttail-arm.patch/> \
>
> file://0001-LowLevelInterpreter.cpp-339-21-error-t6-was-not-decl.patch
> <file://0001-lowlevelinterpreter.cpp-339-21-error-t6-was-not-decl.patch/>
> \
> "
> -SRC_URI[sha256sum] =
> "b64278c1f20b8cfdbfb5ff573c37d871aba74a1db26d9b39f74e8953fe61e749"
> +SRC_URI[sha256sum] =
> "c66530e41ba59b1edba4ee89ef20b2188e273bed0497e95084729e3cfbe30c87"
>
> inherit cmake pkgconfig gobject-introspection perlnative
> features_check upstream-version-is-even gi-docgen
>
> @@ -47,14 +46,15 @@ DEPENDS += " \
> "
>
> PACKAGECONFIG_SOUP ?= "soup3"
> -PACKAGECONFIG ??= "${@bb.utils.filter
> <mailto:${@bb.utils.filter>('DISTRO_FEATURES', 'systemd wayland x11',
> d)} \
> - ${@bb.utils.contains
> <mailto:${@bb.utils.contains>('DISTRO_FEATURES', 'x11 opengl', 'webgl
> opengl', '', d)} \
> - ${@bb.utils.contains
> <mailto:${@bb.utils.contains>('DISTRO_FEATURES', 'x11', '', 'webgl
> gles2', d)} \
> - ${@bb.utils.contains
> <mailto:${@bb.utils.contains>('DISTRO_FEATURES', 'opengl',
> 'opengl-or-es', '', d)} \
> - enchant \
> - libsecret \
> - ${PACKAGECONFIG_SOUP} \
> - "
> +PACKAGECONFIG ??= " \
> + ${@bb.utils.filter
> <mailto:${@bb.utils.filter>('DISTRO_FEATURES', 'systemd wayland x11',
> d)} \
> + ${@bb.utils.contains
> <mailto:${@bb.utils.contains>('DISTRO_FEATURES', 'x11 opengl', 'webgl
> opengl', '', d)} \
> + ${@bb.utils.contains
> <mailto:${@bb.utils.contains>('DISTRO_FEATURES', 'x11', '', 'webgl
> gles2', d)} \
> + ${@bb.utils.contains
> <mailto:${@bb.utils.contains>('DISTRO_FEATURES', 'opengl',
> 'opengl-or-es', '', d)} \
> + enchant \
> + libsecret \
> + ${PACKAGECONFIG_SOUP} \
> + "
>
> PACKAGECONFIG[wayland] =
> "-DENABLE_WAYLAND_TARGET=ON,-DENABLE_WAYLAND_TARGET=OFF,wayland
> libwpe wpebackend-fdo wayland-native"
> PACKAGECONFIG[angle] = "-DUSE_ANGLE_WEBGL=ON,-DUSE_ANGLE_WEBGL=OFF"
> @@ -81,12 +81,15 @@ PACKAGECONFIG[media-recorder] =
> "-DENABLE_MEDIA_RECORDER=ON,-DENABLE_MEDIA_RECOR
> PACKAGECONFIG[gamepad] =
> "-DENABLE_GAMEPAD=ON,-DENABLE_GAMEPAD=OFF,libmanette"
> PACKAGECONFIG[webrtc] = "-DENABLE_WEB_RTC=ON,-DENABLE_WEB_RTC=OFF"
> PACKAGECONFIG[bubblewrap] = "-DENABLE_BUBBLEWRAP_SANDBOX=ON
> -DBWRAP_EXECUTABLE=${bindir}/bwrap
> -DDBUS_PROXY_EXECUTABLE=${bindir}/xdg-dbus-proxy,-DENABLE_BUBBLEWRAP_SANDBOX=OFF,,bubblewrap
> xdg-dbus-proxy"
> +PACKAGECONFIG[backtrace] =
> "-DUSE_LIBBACKTRACE=ON,-DUSE_LIBBACKTRACE=OFF,libbacktrace"
>
> EXTRA_OECMAKE = " \
> - -DPORT=GTK \
> - ${@bb.utils.contains
> <mailto:${@bb.utils.contains>('GI_DATA_ENABLED', 'True',
> '-DENABLE_INTROSPECTION=ON', '-DENABLE_INTROSPECTION=OFF', d)} \
> - ${@bb.utils.contains
> <mailto:${@bb.utils.contains>('GIDOCGEN_ENABLED', 'True',
> '-DENABLE_DOCUMENTATION=ON', '-DENABLE_DOCUMENTATION=OFF', d)} \
> - -DENABLE_MINIBROWSER=ON \
> + -DPORT=GTK \
> + -DUSE_GTK4=OFF \
> + ${@bb.utils.contains
> <mailto:${@bb.utils.contains>('GI_DATA_ENABLED', 'True',
> '-DENABLE_INTROSPECTION=ON', '-DENABLE_INTROSPECTION=OFF', d)} \
> + ${@bb.utils.contains
> <mailto:${@bb.utils.contains>('GIDOCGEN_ENABLED', 'True',
> '-DENABLE_DOCUMENTATION=ON', '-DENABLE_DOCUMENTATION=OFF', d)} \
> + -DENABLE_MINIBROWSER=ON \
> + -DCMAKE_EXPORT_COMPILE_COMMANDS=OFF \
> "
> # Unless DEBUG_BUILD is enabled, pass -g1 to massively reduce the
> size of the
> # debug symbols (4.3GB to 700M at time of writing)
> --
> 2.44.0
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#109692):
> <https://lists.openembedded.org/g/openembedded-devel/message/109692>
> Mute This Topic: <https://lists.openembedded.org/mt/105250406/3618223>
> Group Owner: openembedded-devel+owner@lists.openembedded.org
> <mailto:openembedded-devel+owner@lists.openembedded.org>
> Unsubscribe:
> <https://lists.openembedded.org/g/openembedded-devel/unsub>
> [f_l_k@t-online.de <mailto:f_l_k@t-online.de>]
> -=-=-=-=-=-=-=-=-=-=-=-
>
[-- Attachment #2: Type: text/html, Size: 26226 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [oe] [meta-oe][PATCHv2] webkitgtk3: update 2.42.5 -> 2.44.0
2024-03-31 17:08 ` [oe] [meta-oe][PATCHv2] webkitgtk3: update 2.42.5 -> 2.44.0 Markus Volk
@ 2024-04-01 7:50 ` Khem Raj
2024-04-01 13:38 ` Markus Volk
[not found] ` <17C22B88C498BBBF.16687@lists.openembedded.org>
0 siblings, 2 replies; 5+ messages in thread
From: Khem Raj @ 2024-04-01 7:50 UTC (permalink / raw)
To: Markus Volk; +Cc: openembedded-devel
fails to build with clang on riscv64 and x86
https://errors.yoctoproject.org/Errors/Details/761343/
https://errors.yoctoproject.org/Errors/Details/761342/
On Sun, Mar 31, 2024 at 10:08 AM Markus Volk <f_l_k@t-online.de> wrote:
>
> The webkitgtk3 variant already contains PACKAGECONFIG for gamepad. Remove the duplicate
>
> On Sun, Mar 31 2024 at 07:07:06 PM +02:00:00, Markus Volk <f_l_k@t-online.de> wrote:
>
> - 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 - 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 - Explicitly disable gtk4 to avoid: | CMake Error at /home/flk/poky/build-hypr/tmp/work/corei7-64-poky-linux/webkitgtk3/2.44.0/recipe-sysroot-native/usr/shar> | Could NOT find GTK (missing: GTK_VERSION) (Required is at least version | "4.6.0") ================ 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 Signed-off-by: Markus Volk <f_l_k@t-online.de> --- ...44e17d258106617b0e6d783d073b188a2548.patch | 312 ------------------ ...kitgtk3_2.42.5.bb => webkitgtk3_2.44.0.bb} | 31 +- 2 files changed, 17 insertions(+), 326 deletions(-) delete mode 100644 meta-oe/recipes-support/webkitgtk/webkitgtk3/0d3344e17d258106617b0e6d783d073b188a2548.patch rename meta-oe/recipes-support/webkitgtk/{webkitgtk3_2.42.5.bb => webkitgtk3_2.44.0.bb} (89%) diff --git a/meta-oe/recipes-support/webkitgtk/webkitgtk3/0d3344e17d258106617b0e6d783d073b188a2548.patch b/meta-oe/recipes-support/webkitgtk/webkitgtk3/0d3344e17d258106617b0e6d783d073b188a2548.patch deleted file mode 100644 index d19d1e117..000000000 --- a/meta-oe/recipes-support/webkitgtk/webkitgtk3/0d3344e17d258106617b0e6d783d073b188a2548.patch +++ /dev/null @@ -1,312 +0,0 @@ -From e3c12b38037b4bb3053c440e4bd22c36c1dc576b Mon Sep 17 00:00:00 2001 -From: Adrian Perez de Castro <aperez@igalia.com> -Date: Thu, 2 Jun 2022 11:19:06 +0300 -Subject: [PATCH] FELightningNEON.cpp fails to build, NEON fast path seems - - unused https://bugs.webkit.org/show_bug.cgi?id=241182 - -Reviewed by NOBODY (OOPS!). - -Move the NEON fast path for the SVG lighting filter effects into -FELightingSoftwareApplier, and arrange to actually use them by -forwarding calls to applyPlatformGeneric() into applyPlatformNeon(). - -Some changes were needed to adapt platformApplyNeon() to the current -state of filters after r286140. This was not detected because the code -bitrotted due to it being guarded with CPU(ARM_TRADITIONAL), which does -not get used much these days: CPU(ARM_THUMB2) is more common. It should -be possible to use the NEON fast paths also in Thumb mode, but that is -left for a follow-up fix. - -* Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp: -(WebCore::FELightingSoftwareApplier::platformApplyNeonWorker): -(WebCore::FELightingSoftwareApplier::getPowerCoefficients): -(WebCore::FELighting::platformApplyNeonWorker): Deleted. -(WebCore::FELighting::getPowerCoefficients): Deleted. -* Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h: -(WebCore::FELightingSoftwareApplier::applyPlatformNeon): -(WebCore::FELighting::platformApplyNeon): Deleted. -* Source/WebCore/platform/graphics/filters/DistantLightSource.h: -* Source/WebCore/platform/graphics/filters/FELighting.h: -* Source/WebCore/platform/graphics/filters/PointLightSource.h: -* Source/WebCore/platform/graphics/filters/SpotLightSource.h: -* Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h: - -Upstream-Status: Submitted [https://github.com/WebKit/WebKit/pull/1233] -Signed-off-by: Khem Raj <raj.khem@gmail.com> - ---- - .../cpu/arm/filters/FELightingNEON.cpp | 4 +- - .../graphics/cpu/arm/filters/FELightingNEON.h | 52 +++++++++---------- - .../graphics/filters/DistantLightSource.h | 4 ++ - .../platform/graphics/filters/FELighting.h | 7 --- - .../graphics/filters/PointLightSource.h | 4 ++ - .../graphics/filters/SpotLightSource.h | 4 ++ - .../software/FELightingSoftwareApplier.h | 16 ++++++ - 7 files changed, 56 insertions(+), 35 deletions(-) - -diff --git a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp -index f6ff8c20..42a97ffc 100644 ---- a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp -+++ b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp -@@ -49,7 +49,7 @@ short* feLightingConstantsForNeon() - return s_FELightingConstantsForNeon; - } - --void FELighting::platformApplyNeonWorker(FELightingPaintingDataForNeon* parameters) -+void FELightingSoftwareApplier::platformApplyNeonWorker(FELightingPaintingDataForNeon* parameters) - { - neonDrawLighting(parameters); - } -@@ -464,7 +464,7 @@ TOSTRING(neonDrawLighting) ":" NL - "b .lightStrengthCalculated" NL - ); // NOLINT - --int FELighting::getPowerCoefficients(float exponent) -+int FELightingSoftwareApplier::getPowerCoefficients(float exponent) - { - // Calling a powf function from the assembly code would require to save - // and reload a lot of NEON registers. Since the base is in range [0..1] -diff --git a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h -index b17c603d..e4629cda 100644 ---- a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h -+++ b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h -@@ -24,14 +24,15 @@ - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - --#ifndef FELightingNEON_h --#define FELightingNEON_h -+#pragma once - - #if CPU(ARM_NEON) && CPU(ARM_TRADITIONAL) && COMPILER(GCC_COMPATIBLE) - --#include "FELighting.h" -+#include "FELightingSoftwareApplier.h" -+#include "ImageBuffer.h" - #include "PointLightSource.h" - #include "SpotLightSource.h" -+#include <wtf/ObjectIdentifier.h> - #include <wtf/ParallelJobs.h> - - namespace WebCore { -@@ -93,14 +94,14 @@ extern "C" { - void neonDrawLighting(FELightingPaintingDataForNeon*); - } - --inline void FELighting::platformApplyNeon(const LightingData& data, const LightSource::PaintingData& paintingData) -+inline void FELightingSoftwareApplier::applyPlatformNeon(const FELightingSoftwareApplier::LightingData& data, const LightSource::PaintingData& paintingData) - { -- alignas(16) FELightingFloatArgumentsForNeon floatArguments; -- FELightingPaintingDataForNeon neonData = { -+ WebCore::FELightingFloatArgumentsForNeon alignas(16) floatArguments; -+ WebCore::FELightingPaintingDataForNeon neonData = { - data.pixels->data(), - 1, -- data.widthDecreasedByOne - 1, -- data.heightDecreasedByOne - 1, -+ data.width - 2, -+ data.height - 2, - 0, - 0, - 0, -@@ -111,23 +112,23 @@ inline void FELighting::platformApplyNeon(const LightingData& data, const LightS - // Set light source arguments. - floatArguments.constOne = 1; - -- auto color = m_lightingColor.toColorTypeLossy<SRGBA<uint8_t>>().resolved(); -+ auto color = data.lightingColor.toColorTypeLossy<SRGBA<uint8_t>>().resolved(); - - floatArguments.colorRed = color.red; - floatArguments.colorGreen = color.green; - floatArguments.colorBlue = color.blue; - floatArguments.padding4 = 0; - -- if (m_lightSource->type() == LS_POINT) { -+ if (data.lightSource->type() == LS_POINT) { - neonData.flags |= FLAG_POINT_LIGHT; -- PointLightSource& pointLightSource = static_cast<PointLightSource&>(m_lightSource.get()); -+ const auto& pointLightSource = *static_cast<const PointLightSource*>(data.lightSource); - floatArguments.lightX = pointLightSource.position().x(); - floatArguments.lightY = pointLightSource.position().y(); - floatArguments.lightZ = pointLightSource.position().z(); - floatArguments.padding2 = 0; -- } else if (m_lightSource->type() == LS_SPOT) { -+ } else if (data.lightSource->type() == LS_SPOT) { - neonData.flags |= FLAG_SPOT_LIGHT; -- SpotLightSource& spotLightSource = static_cast<SpotLightSource&>(m_lightSource.get()); -+ const auto& spotLightSource = *static_cast<const SpotLightSource*>(data.lightSource); - floatArguments.lightX = spotLightSource.position().x(); - floatArguments.lightY = spotLightSource.position().y(); - floatArguments.lightZ = spotLightSource.position().z(); -@@ -145,7 +146,7 @@ inline void FELighting::platformApplyNeon(const LightingData& data, const LightS - if (spotLightSource.specularExponent() == 1) - neonData.flags |= FLAG_CONE_EXPONENT_IS_1; - } else { -- ASSERT(m_lightSource->type() == LS_DISTANT); -+ ASSERT(data.lightSource->type() == LS_DISTANT); - floatArguments.lightX = paintingData.initialLightingData.lightVector.x(); - floatArguments.lightY = paintingData.initialLightingData.lightVector.y(); - floatArguments.lightZ = paintingData.initialLightingData.lightVector.z(); -@@ -155,38 +156,39 @@ inline void FELighting::platformApplyNeon(const LightingData& data, const LightS - // Set lighting arguments. - floatArguments.surfaceScale = data.surfaceScale; - floatArguments.minusSurfaceScaleDividedByFour = -data.surfaceScale / 4; -- if (m_lightingType == FELighting::DiffuseLighting) -- floatArguments.diffuseConstant = m_diffuseConstant; -+ if (data.filterType == FilterEffect::Type::FEDiffuseLighting) -+ floatArguments.diffuseConstant = data.diffuseConstant; - else { - neonData.flags |= FLAG_SPECULAR_LIGHT; -- floatArguments.diffuseConstant = m_specularConstant; -- neonData.specularExponent = getPowerCoefficients(m_specularExponent); -- if (m_specularExponent == 1) -+ floatArguments.diffuseConstant = data.specularConstant; -+ neonData.specularExponent = getPowerCoefficients(data.specularExponent); -+ if (data.specularExponent == 1) - neonData.flags |= FLAG_SPECULAR_EXPONENT_IS_1; - } - if (floatArguments.diffuseConstant == 1) - neonData.flags |= FLAG_DIFFUSE_CONST_IS_1; - -- int optimalThreadNumber = ((data.widthDecreasedByOne - 1) * (data.heightDecreasedByOne - 1)) / s_minimalRectDimension; -+ static constexpr int minimalRectDimension = 100 * 100; // Empirical data limit for parallel jobs -+ int optimalThreadNumber = ((data.width - 2) * (data.height - 2)) / minimalRectDimension; - if (optimalThreadNumber > 1) { - // Initialize parallel jobs -- ParallelJobs<FELightingPaintingDataForNeon> parallelJobs(&WebCore::FELighting::platformApplyNeonWorker, optimalThreadNumber); -+ ParallelJobs<FELightingPaintingDataForNeon> parallelJobs(&FELightingSoftwareApplier::platformApplyNeonWorker, optimalThreadNumber); - - // Fill the parameter array - int job = parallelJobs.numberOfJobs(); - if (job > 1) { - int yStart = 1; -- int yStep = (data.heightDecreasedByOne - 1) / job; -+ int yStep = (data.height - 2) / job; - for (--job; job >= 0; --job) { - FELightingPaintingDataForNeon& params = parallelJobs.parameter(job); - params = neonData; - params.yStart = yStart; -- params.pixels += (yStart - 1) * (data.widthDecreasedByOne + 1) * 4; -+ params.pixels += (yStart - 1) * data.width * 4; - if (job > 0) { - params.absoluteHeight = yStep; - yStart += yStep; - } else -- params.absoluteHeight = data.heightDecreasedByOne - yStart; -+ params.absoluteHeight = (data.height - 1) - yStart; - } - parallelJobs.execute(); - return; -@@ -199,5 +201,3 @@ inline void FELighting::platformApplyNeon(const LightingData& data, const LightS - } // namespace WebCore - - #endif // CPU(ARM_NEON) && COMPILER(GCC_COMPATIBLE) -- --#endif // FELightingNEON_h -diff --git a/Source/WebCore/platform/graphics/filters/DistantLightSource.h b/Source/WebCore/platform/graphics/filters/DistantLightSource.h -index 70f583b3..7d5d27e5 100644 ---- a/Source/WebCore/platform/graphics/filters/DistantLightSource.h -+++ b/Source/WebCore/platform/graphics/filters/DistantLightSource.h -@@ -26,6 +26,10 @@ - #include <wtf/ArgumentCoder.h> - #include <wtf/Ref.h> - -+namespace WTF { -+class TextStream; -+} // namespace WTF -+ - namespace WebCore { - - class DistantLightSource : public LightSource { -diff --git a/Source/WebCore/platform/graphics/filters/FELighting.h b/Source/WebCore/platform/graphics/filters/FELighting.h -index 179edf6d..694d712d 100644 ---- a/Source/WebCore/platform/graphics/filters/FELighting.h -+++ b/Source/WebCore/platform/graphics/filters/FELighting.h -@@ -35,8 +35,6 @@ - - namespace WebCore { - --struct FELightingPaintingDataForNeon; -- - class FELighting : public FilterEffect { - public: - bool operator==(const FELighting&) const; -@@ -68,11 +66,6 @@ protected: - - std::unique_ptr<FilterEffectApplier> createSoftwareApplier() const override; - --#if CPU(ARM_NEON) && CPU(ARM_TRADITIONAL) && COMPILER(GCC_COMPATIBLE) -- static int getPowerCoefficients(float exponent); -- inline void platformApplyNeon(const LightingData&, const LightSource::PaintingData&); --#endif -- - Color m_lightingColor; - float m_surfaceScale; - float m_diffuseConstant; -diff --git a/Source/WebCore/platform/graphics/filters/PointLightSource.h b/Source/WebCore/platform/graphics/filters/PointLightSource.h -index a8cfdab8..34f867bb 100644 ---- a/Source/WebCore/platform/graphics/filters/PointLightSource.h -+++ b/Source/WebCore/platform/graphics/filters/PointLightSource.h -@@ -26,6 +26,10 @@ - #include "LightSource.h" - #include <wtf/Ref.h> - -+namespace WTF { -+class TextStream; -+} // namespace WTF -+ - namespace WebCore { - - class PointLightSource : public LightSource { -diff --git a/Source/WebCore/platform/graphics/filters/SpotLightSource.h b/Source/WebCore/platform/graphics/filters/SpotLightSource.h -index 6404467a..5cac38f2 100644 ---- a/Source/WebCore/platform/graphics/filters/SpotLightSource.h -+++ b/Source/WebCore/platform/graphics/filters/SpotLightSource.h -@@ -26,6 +26,10 @@ - #include "LightSource.h" - #include <wtf/Ref.h> - -+namespace WTF { -+class TextStream; -+} // namespace WTF -+ - namespace WebCore { - - class SpotLightSource : public LightSource { -diff --git a/Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h b/Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h -index c974d921..e2896660 100644 ---- a/Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h -+++ b/Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h -@@ -36,6 +36,7 @@ - namespace WebCore { - - class FELighting; -+struct FELightingPaintingDataForNeon; - - class FELightingSoftwareApplier final : public FilterEffectConcreteApplier<FELighting> { - WTF_MAKE_FAST_ALLOCATED; -@@ -132,8 +133,23 @@ private: - - static void applyPlatformGenericPaint(const LightingData&, const LightSource::PaintingData&, int startY, int endY); - static void applyPlatformGenericWorker(ApplyParameters*); -+ -+#if CPU(ARM_NEON) && CPU(ARM_TRADITIONAL) && COMPILER(GCC_COMPATIBLE) -+ static int getPowerCoefficients(float exponent); -+ static void platformApplyNeonWorker(FELightingPaintingDataForNeon*); -+ inline static void applyPlatformNeon(const LightingData&, const LightSource::PaintingData&); -+ -+ inline static void applyPlatformGeneric(const LightingData& data, const LightSource::PaintingData& paintingData) -+ { -+ applyPlatformNeon(data, paintingData); -+ } -+#else - static void applyPlatformGeneric(const LightingData&, const LightSource::PaintingData&); -+#endif -+ - static void applyPlatform(const LightingData&); - }; - - } // namespace WebCore -+ -+#include "FELightingNEON.h" diff --git a/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.42.5.bb b/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.44.0.bb similarity index 89% rename from meta-oe/recipes-support/webkitgtk/webkitgtk3_2.42.5.bb rename to meta-oe/recipes-support/webkitgtk/webkitgtk3_2.44.0.bb index 234ecfae0..e5d53329d 100644 --- a/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.42.5.bb +++ b/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.44.0.bb @@ -12,11 +12,10 @@ LIC_FILES_CHKSUM = "file://Source/JavaScriptCore/COPYING.LIB;md5=d0c6d6397a5d842 SRC_URI = "https://www.webkitgtk.org/releases/webkitgtk-${PV}.tar.xz \ file://0001-FindGObjectIntrospection.cmake-prefix-variables-obta.patch \ file://reproducibility.patch \ - file://0d3344e17d258106617b0e6d783d073b188a2548.patch \ file://no-musttail-arm.patch \ file://0001-LowLevelInterpreter.cpp-339-21-error-t6-was-not-decl.patch \ " -SRC_URI[sha256sum] = "b64278c1f20b8cfdbfb5ff573c37d871aba74a1db26d9b39f74e8953fe61e749" +SRC_URI[sha256sum] = "c66530e41ba59b1edba4ee89ef20b2188e273bed0497e95084729e3cfbe30c87" inherit cmake pkgconfig gobject-introspection perlnative features_check upstream-version-is-even gi-docgen @@ -47,14 +46,15 @@ DEPENDS += " \ " PACKAGECONFIG_SOUP ?= "soup3" -PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd wayland x11', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'webgl opengl', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', 'webgl gles2', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'opengl-or-es', '', d)} \ - enchant \ - libsecret \ - ${PACKAGECONFIG_SOUP} \ - " +PACKAGECONFIG ??= " \ + ${@bb.utils.filter('DISTRO_FEATURES', 'systemd wayland x11', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'webgl opengl', '', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', 'webgl gles2', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'opengl-or-es', '', d)} \ + enchant \ + libsecret \ + ${PACKAGECONFIG_SOUP} \ + " PACKAGECONFIG[wayland] = "-DENABLE_WAYLAND_TARGET=ON,-DENABLE_WAYLAND_TARGET=OFF,wayland libwpe wpebackend-fdo wayland-native" PACKAGECONFIG[angle] = "-DUSE_ANGLE_WEBGL=ON,-DUSE_ANGLE_WEBGL=OFF" @@ -81,12 +81,15 @@ PACKAGECONFIG[media-recorder] = "-DENABLE_MEDIA_RECORDER=ON,-DENABLE_MEDIA_RECOR PACKAGECONFIG[gamepad] = "-DENABLE_GAMEPAD=ON,-DENABLE_GAMEPAD=OFF,libmanette" PACKAGECONFIG[webrtc] = "-DENABLE_WEB_RTC=ON,-DENABLE_WEB_RTC=OFF" PACKAGECONFIG[bubblewrap] = "-DENABLE_BUBBLEWRAP_SANDBOX=ON -DBWRAP_EXECUTABLE=${bindir}/bwrap -DDBUS_PROXY_EXECUTABLE=${bindir}/xdg-dbus-proxy,-DENABLE_BUBBLEWRAP_SANDBOX=OFF,,bubblewrap xdg-dbus-proxy" +PACKAGECONFIG[backtrace] = "-DUSE_LIBBACKTRACE=ON,-DUSE_LIBBACKTRACE=OFF,libbacktrace" EXTRA_OECMAKE = " \ - -DPORT=GTK \ - ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-DENABLE_INTROSPECTION=ON', '-DENABLE_INTROSPECTION=OFF', d)} \ - ${@bb.utils.contains('GIDOCGEN_ENABLED', 'True', '-DENABLE_DOCUMENTATION=ON', '-DENABLE_DOCUMENTATION=OFF', d)} \ - -DENABLE_MINIBROWSER=ON \ + -DPORT=GTK \ + -DUSE_GTK4=OFF \ + ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-DENABLE_INTROSPECTION=ON', '-DENABLE_INTROSPECTION=OFF', d)} \ + ${@bb.utils.contains('GIDOCGEN_ENABLED', 'True', '-DENABLE_DOCUMENTATION=ON', '-DENABLE_DOCUMENTATION=OFF', d)} \ + -DENABLE_MINIBROWSER=ON \ + -DCMAKE_EXPORT_COMPILE_COMMANDS=OFF \ " # Unless DEBUG_BUILD is enabled, pass -g1 to massively reduce the size of the # debug symbols (4.3GB to 700M at time of writing)
> --
> 2.44.0
> -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#109692): https://lists.openembedded.org/g/openembedded-devel/message/109692 Mute This Topic: https://lists.openembedded.org/mt/105250406/3618223 Group Owner: openembedded-devel+owner@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [f_l_k@t-online.de] -=-=-=-=-=-=-=-=-=-=-=-
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [oe] [meta-oe][PATCHv2] webkitgtk3: update 2.42.5 -> 2.44.0
2024-04-01 7:50 ` Khem Raj
@ 2024-04-01 13:38 ` Markus Volk
[not found] ` <17C22B88C498BBBF.16687@lists.openembedded.org>
1 sibling, 0 replies; 5+ messages in thread
From: Markus Volk @ 2024-04-01 13:38 UTC (permalink / raw)
To: Khem Raj; +Cc: openembedded-devel
[-- Attachment #1: Type: text/plain, Size: 25454 bytes --]
Hi Khem,
I was unable to reproduce the issue for clang + qemux86 but got the
error for qemuriscv64
Have sent a v3 with a fix for it
On Mon, Apr 1 2024 at 12:50:06 AM -07:00:00, Khem Raj
<raj.khem@gmail.com> wrote:
> fails to build with clang on riscv64 and x86
>
> <https://errors.yoctoproject.org/Errors/Details/761343/>
> <https://errors.yoctoproject.org/Errors/Details/761342/>
>
> On Sun, Mar 31, 2024 at 10:08 AM Markus Volk <f_l_k@t-online.de
> <mailto:f_l_k@t-online.de>> wrote:
>>
>> The webkitgtk3 variant already contains PACKAGECONFIG for gamepad.
>> Remove the duplicate
>>
>> On Sun, Mar 31 2024 at 07:07:06 PM +02:00:00, Markus Volk
>> <f_l_k@t-online.de <mailto:f_l_k@t-online.de>> wrote:
>>
>> - 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 - 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 - Explicitly disable gtk4 to
>> avoid: | CMake Error at
>> /home/flk/poky/build-hypr/tmp/work/corei7-64-poky-linux/webkitgtk3/2.44.0/recipe-sysroot-native/usr/shar>
>> | Could NOT find GTK (missing: GTK_VERSION) (Required is at least
>> version | "4.6.0") ================ 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 Signed-off-by: Markus Volk <f_l_k@t-online.de
>> <mailto:f_l_k@t-online.de>> ---
>> ...44e17d258106617b0e6d783d073b188a2548.patch | 312
>> ------------------ ...kitgtk3_2.42.5.bb => webkitgtk3_2.44.0.bb} |
>> 31 +- 2 files changed, 17 insertions(+), 326 deletions(-) delete
>> mode 100644
>> meta-oe/recipes-support/webkitgtk/webkitgtk3/0d3344e17d258106617b0e6d783d073b188a2548.patch
>> rename meta-oe/recipes-support/webkitgtk/{webkitgtk3_2.42.5.bb =>
>> webkitgtk3_2.44.0.bb} (89%) diff --git
>> a/meta-oe/recipes-support/webkitgtk/webkitgtk3/0d3344e17d258106617b0e6d783d073b188a2548.patch
>> b/meta-oe/recipes-support/webkitgtk/webkitgtk3/0d3344e17d258106617b0e6d783d073b188a2548.patch
>> deleted file mode 100644 index d19d1e117..000000000 ---
>> a/meta-oe/recipes-support/webkitgtk/webkitgtk3/0d3344e17d258106617b0e6d783d073b188a2548.patch
>> +++ /dev/null @@ -1,312 +0,0 @@ -From
>> e3c12b38037b4bb3053c440e4bd22c36c1dc576b Mon Sep 17 00:00:00 2001
>> -From: Adrian Perez de Castro <aperez@igalia.com> -Date: Thu, 2 Jun
>> 2022 11:19:06 +0300 -Subject: [PATCH] FELightningNEON.cpp fails to
>> build, NEON fast path seems - - unused
>> https://bugs.webkit.org/show_bug.cgi?id=241182 - -Reviewed by NOBODY
>> (OOPS!). - -Move the NEON fast path for the SVG lighting filter
>> effects into -FELightingSoftwareApplier, and arrange to actually use
>> them by -forwarding calls to applyPlatformGeneric() into
>> applyPlatformNeon(). - -Some changes were needed to adapt
>> platformApplyNeon() to the current -state of filters after r286140.
>> This was not detected because the code -bitrotted due to it being
>> guarded with CPU(ARM_TRADITIONAL), which does -not get used much
>> these days: CPU(ARM_THUMB2) is more common. It should -be possible
>> to use the NEON fast paths also in Thumb mode, but that is -left for
>> a follow-up fix. - -*
>> Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp:
>> -(WebCore::FELightingSoftwareApplier::platformApplyNeonWorker):
>> -(WebCore::FELightingSoftwareApplier::getPowerCoefficients):
>> -(WebCore::FELighting::platformApplyNeonWorker): Deleted.
>> -(WebCore::FELighting::getPowerCoefficients): Deleted. -*
>> Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h:
>> -(WebCore::FELightingSoftwareApplier::applyPlatformNeon):
>> -(WebCore::FELighting::platformApplyNeon): Deleted. -*
>> Source/WebCore/platform/graphics/filters/DistantLightSource.h: -*
>> Source/WebCore/platform/graphics/filters/FELighting.h: -*
>> Source/WebCore/platform/graphics/filters/PointLightSource.h: -*
>> Source/WebCore/platform/graphics/filters/SpotLightSource.h: -*
>> Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h:
>> - -Upstream-Status: Submitted
>> [https://github.com/WebKit/WebKit/pull/1233] -Signed-off-by: Khem
>> Raj <raj.khem@gmail.com> - ---- -
>> .../cpu/arm/filters/FELightingNEON.cpp | 4 +- -
>> .../graphics/cpu/arm/filters/FELightingNEON.h | 52
>> +++++++++---------- - .../graphics/filters/DistantLightSource.h | 4
>> ++ - .../platform/graphics/filters/FELighting.h | 7 --- -
>> .../graphics/filters/PointLightSource.h | 4 ++ -
>> .../graphics/filters/SpotLightSource.h | 4 ++ -
>> .../software/FELightingSoftwareApplier.h | 16 ++++++ - 7 files
>> changed, 56 insertions(+), 35 deletions(-) - -diff --git
>> a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp
>> b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp
>> -index f6ff8c20..42a97ffc 100644 ----
>> a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp
>> -+++
>> b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp
>> -@@ -49,7 +49,7 @@ short* feLightingConstantsForNeon() - return
>> s_FELightingConstantsForNeon; - } - --void
>> FELighting::platformApplyNeonWorker(FELightingPaintingDataForNeon*
>> parameters) -+void
>> FELightingSoftwareApplier::platformApplyNeonWorker(FELightingPaintingDataForNeon*
>> parameters) - { - neonDrawLighting(parameters); - } -@@ -464,7
>> +464,7 @@ TOSTRING(neonDrawLighting) ":" NL - "b
>> .lightStrengthCalculated" NL - ); // NOLINT - --int
>> FELighting::getPowerCoefficients(float exponent) -+int
>> FELightingSoftwareApplier::getPowerCoefficients(float exponent) - {
>> - // Calling a powf function from the assembly code would require to
>> save - // and reload a lot of NEON registers. Since the base is in
>> range [0..1] -diff --git
>> a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h
>> b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h
>> -index b17c603d..e4629cda 100644 ----
>> a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h
>> -+++
>> b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h
>> -@@ -24,14 +24,15 @@ - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE
>> POSSIBILITY OF SUCH DAMAGE. - */ - --#ifndef FELightingNEON_h
>> --#define FELightingNEON_h -+#pragma once - - #if CPU(ARM_NEON) &&
>> CPU(ARM_TRADITIONAL) && COMPILER(GCC_COMPATIBLE) - --#include
>> "FELighting.h" -+#include "FELightingSoftwareApplier.h" -+#include
>> "ImageBuffer.h" - #include "PointLightSource.h" - #include
>> "SpotLightSource.h" -+#include <wtf/ObjectIdentifier.h> - #include
>> <wtf/ParallelJobs.h> - - namespace WebCore { -@@ -93,14 +94,14 @@
>> extern "C" { - void
>> neonDrawLighting(FELightingPaintingDataForNeon*); - } - --inline
>> void FELighting::platformApplyNeon(const LightingData& data, const
>> LightSource::PaintingData& paintingData) -+inline void
>> FELightingSoftwareApplier::applyPlatformNeon(const
>> FELightingSoftwareApplier::LightingData& data, const
>> LightSource::PaintingData& paintingData) - { -- alignas(16)
>> FELightingFloatArgumentsForNeon floatArguments; --
>> FELightingPaintingDataForNeon neonData = { -+
>> WebCore::FELightingFloatArgumentsForNeon alignas(16) floatArguments;
>> -+ WebCore::FELightingPaintingDataForNeon neonData = { -
>> data.pixels->data(), - 1, -- data.widthDecreasedByOne - 1, --
>> data.heightDecreasedByOne - 1, -+ data.width - 2, -+ data.height -
>> 2, - 0, - 0, - 0, -@@ -111,23 +112,23 @@ inline void
>> FELighting::platformApplyNeon(const LightingData& data, const LightS
>> - // Set light source arguments. - floatArguments.constOne = 1; - --
>> auto color =
>> m_lightingColor.toColorTypeLossy<SRGBA<uint8_t>>().resolved(); -+
>> auto color =
>> data.lightingColor.toColorTypeLossy<SRGBA<uint8_t>>().resolved(); -
>> - floatArguments.colorRed = color.red; - floatArguments.colorGreen =
>> color.green; - floatArguments.colorBlue = color.blue; -
>> floatArguments.padding4 = 0; - -- if (m_lightSource->type() ==
>> LS_POINT) { -+ if (data.lightSource->type() == LS_POINT) { -
>> neonData.flags |= FLAG_POINT_LIGHT; -- PointLightSource&
>> pointLightSource =
>> static_cast<PointLightSource&>(m_lightSource.get()); -+ const auto&
>> pointLightSource = *static_cast<const
>> PointLightSource*>(data.lightSource); - floatArguments.lightX =
>> pointLightSource.position().x(); - floatArguments.lightY =
>> pointLightSource.position().y(); - floatArguments.lightZ =
>> pointLightSource.position().z(); - floatArguments.padding2 = 0; -- }
>> else if (m_lightSource->type() == LS_SPOT) { -+ } else if
>> (data.lightSource->type() == LS_SPOT) { - neonData.flags |=
>> FLAG_SPOT_LIGHT; -- SpotLightSource& spotLightSource =
>> static_cast<SpotLightSource&>(m_lightSource.get()); -+ const auto&
>> spotLightSource = *static_cast<const
>> SpotLightSource*>(data.lightSource); - floatArguments.lightX =
>> spotLightSource.position().x(); - floatArguments.lightY =
>> spotLightSource.position().y(); - floatArguments.lightZ =
>> spotLightSource.position().z(); -@@ -145,7 +146,7 @@ inline void
>> FELighting::platformApplyNeon(const LightingData& data, const LightS
>> - if (spotLightSource.specularExponent() == 1) - neonData.flags |=
>> FLAG_CONE_EXPONENT_IS_1; - } else { -- ASSERT(m_lightSource->type()
>> == LS_DISTANT); -+ ASSERT(data.lightSource->type() == LS_DISTANT); -
>> floatArguments.lightX =
>> paintingData.initialLightingData.lightVector.x(); -
>> floatArguments.lightY =
>> paintingData.initialLightingData.lightVector.y(); -
>> floatArguments.lightZ =
>> paintingData.initialLightingData.lightVector.z(); -@@ -155,38
>> +156,39 @@ inline void FELighting::platformApplyNeon(const
>> LightingData& data, const LightS - // Set lighting arguments. -
>> floatArguments.surfaceScale = data.surfaceScale; -
>> floatArguments.minusSurfaceScaleDividedByFour = -data.surfaceScale /
>> 4; -- if (m_lightingType == FELighting::DiffuseLighting) --
>> floatArguments.diffuseConstant = m_diffuseConstant; -+ if
>> (data.filterType == FilterEffect::Type::FEDiffuseLighting) -+
>> floatArguments.diffuseConstant = data.diffuseConstant; - else { -
>> neonData.flags |= FLAG_SPECULAR_LIGHT; --
>> floatArguments.diffuseConstant = m_specularConstant; --
>> neonData.specularExponent =
>> getPowerCoefficients(m_specularExponent); -- if (m_specularExponent
>> == 1) -+ floatArguments.diffuseConstant = data.specularConstant; -+
>> neonData.specularExponent =
>> getPowerCoefficients(data.specularExponent); -+ if
>> (data.specularExponent == 1) - neonData.flags |=
>> FLAG_SPECULAR_EXPONENT_IS_1; - } - if
>> (floatArguments.diffuseConstant == 1) - neonData.flags |=
>> FLAG_DIFFUSE_CONST_IS_1; - -- int optimalThreadNumber =
>> ((data.widthDecreasedByOne - 1) * (data.heightDecreasedByOne - 1)) /
>> s_minimalRectDimension; -+ static constexpr int minimalRectDimension
>> = 100 * 100; // Empirical data limit for parallel jobs -+ int
>> optimalThreadNumber = ((data.width - 2) * (data.height - 2)) /
>> minimalRectDimension; - if (optimalThreadNumber > 1) { - //
>> Initialize parallel jobs --
>> ParallelJobs<FELightingPaintingDataForNeon>
>> parallelJobs(&WebCore::FELighting::platformApplyNeonWorker,
>> optimalThreadNumber); -+ ParallelJobs<FELightingPaintingDataForNeon>
>> parallelJobs(&FELightingSoftwareApplier::platformApplyNeonWorker,
>> optimalThreadNumber); - - // Fill the parameter array - int job =
>> parallelJobs.numberOfJobs(); - if (job > 1) { - int yStart = 1; --
>> int yStep = (data.heightDecreasedByOne - 1) / job; -+ int yStep =
>> (data.height - 2) / job; - for (--job; job >= 0; --job) { -
>> FELightingPaintingDataForNeon& params = parallelJobs.parameter(job);
>> - params = neonData; - params.yStart = yStart; -- params.pixels +=
>> (yStart - 1) * (data.widthDecreasedByOne + 1) * 4; -+ params.pixels
>> += (yStart - 1) * data.width * 4; - if (job > 0) { -
>> params.absoluteHeight = yStep; - yStart += yStep; - } else --
>> params.absoluteHeight = data.heightDecreasedByOne - yStart; -+
>> params.absoluteHeight = (data.height - 1) - yStart; - } -
>> parallelJobs.execute(); - return; -@@ -199,5 +201,3 @@ inline void
>> FELighting::platformApplyNeon(const LightingData& data, const LightS
>> - } // namespace WebCore - - #endif // CPU(ARM_NEON) &&
>> COMPILER(GCC_COMPATIBLE) -- --#endif // FELightingNEON_h -diff --git
>> a/Source/WebCore/platform/graphics/filters/DistantLightSource.h
>> b/Source/WebCore/platform/graphics/filters/DistantLightSource.h
>> -index 70f583b3..7d5d27e5 100644 ----
>> a/Source/WebCore/platform/graphics/filters/DistantLightSource.h -+++
>> b/Source/WebCore/platform/graphics/filters/DistantLightSource.h -@@
>> -26,6 +26,10 @@ - #include <wtf/ArgumentCoder.h> - #include
>> <wtf/Ref.h> - -+namespace WTF { -+class TextStream; -+} // namespace
>> WTF -+ - namespace WebCore { - - class DistantLightSource : public
>> LightSource { -diff --git
>> a/Source/WebCore/platform/graphics/filters/FELighting.h
>> b/Source/WebCore/platform/graphics/filters/FELighting.h -index
>> 179edf6d..694d712d 100644 ----
>> a/Source/WebCore/platform/graphics/filters/FELighting.h -+++
>> b/Source/WebCore/platform/graphics/filters/FELighting.h -@@ -35,8
>> +35,6 @@ - - namespace WebCore { - --struct
>> FELightingPaintingDataForNeon; -- - class FELighting : public
>> FilterEffect { - public: - bool operator==(const FELighting&) const;
>> -@@ -68,11 +66,6 @@ protected: - -
>> std::unique_ptr<FilterEffectApplier> createSoftwareApplier() const
>> override; - --#if CPU(ARM_NEON) && CPU(ARM_TRADITIONAL) &&
>> COMPILER(GCC_COMPATIBLE) -- static int getPowerCoefficients(float
>> exponent); -- inline void platformApplyNeon(const LightingData&,
>> const LightSource::PaintingData&); --#endif -- - Color
>> m_lightingColor; - float m_surfaceScale; - float m_diffuseConstant;
>> -diff --git
>> a/Source/WebCore/platform/graphics/filters/PointLightSource.h
>> b/Source/WebCore/platform/graphics/filters/PointLightSource.h -index
>> a8cfdab8..34f867bb 100644 ----
>> a/Source/WebCore/platform/graphics/filters/PointLightSource.h -+++
>> b/Source/WebCore/platform/graphics/filters/PointLightSource.h -@@
>> -26,6 +26,10 @@ - #include "LightSource.h" - #include <wtf/Ref.h> -
>> -+namespace WTF { -+class TextStream; -+} // namespace WTF -+ -
>> namespace WebCore { - - class PointLightSource : public LightSource
>> { -diff --git
>> a/Source/WebCore/platform/graphics/filters/SpotLightSource.h
>> b/Source/WebCore/platform/graphics/filters/SpotLightSource.h -index
>> 6404467a..5cac38f2 100644 ----
>> a/Source/WebCore/platform/graphics/filters/SpotLightSource.h -+++
>> b/Source/WebCore/platform/graphics/filters/SpotLightSource.h -@@
>> -26,6 +26,10 @@ - #include "LightSource.h" - #include <wtf/Ref.h> -
>> -+namespace WTF { -+class TextStream; -+} // namespace WTF -+ -
>> namespace WebCore { - - class SpotLightSource : public LightSource {
>> -diff --git
>> a/Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h
>> b/Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h
>> -index c974d921..e2896660 100644 ----
>> a/Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h
>> -+++
>> b/Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h
>> -@@ -36,6 +36,7 @@ - namespace WebCore { - - class FELighting;
>> -+struct FELightingPaintingDataForNeon; - - class
>> FELightingSoftwareApplier final : public
>> FilterEffectConcreteApplier<FELighting> { - WTF_MAKE_FAST_ALLOCATED;
>> -@@ -132,8 +133,23 @@ private: - - static void
>> applyPlatformGenericPaint(const LightingData&, const
>> LightSource::PaintingData&, int startY, int endY); - static void
>> applyPlatformGenericWorker(ApplyParameters*); -+ -+#if CPU(ARM_NEON)
>> && CPU(ARM_TRADITIONAL) && COMPILER(GCC_COMPATIBLE) -+ static int
>> getPowerCoefficients(float exponent); -+ static void
>> platformApplyNeonWorker(FELightingPaintingDataForNeon*); -+ inline
>> static void applyPlatformNeon(const LightingData&, const
>> LightSource::PaintingData&); -+ -+ inline static void
>> applyPlatformGeneric(const LightingData& data, const
>> LightSource::PaintingData& paintingData) -+ { -+
>> applyPlatformNeon(data, paintingData); -+ } -+#else - static void
>> applyPlatformGeneric(const LightingData&, const
>> LightSource::PaintingData&); -+#endif -+ - static void
>> applyPlatform(const LightingData&); - }; - - } // namespace WebCore
>> -+ -+#include "FELightingNEON.h" diff --git
>> a/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.42.5.bb
>> b/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.44.0.bb similarity
>> index 89% rename from
>> meta-oe/recipes-support/webkitgtk/webkitgtk3_2.42.5.bb rename to
>> meta-oe/recipes-support/webkitgtk/webkitgtk3_2.44.0.bb index
>> 234ecfae0..e5d53329d 100644 ---
>> a/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.42.5.bb +++
>> b/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.44.0.bb @@ -12,11
>> +12,10 @@ LIC_FILES_CHKSUM =
>> "file://Source/JavaScriptCore/COPYING.LIB;md5=d0c6d6397a5d842
>> SRC_URI = "https://www.webkitgtk.org/releases/webkitgtk-${PV}.tar.xz
>> \
>> file://0001-FindGObjectIntrospection.cmake-prefix-variables-obta.patch
>> \ file://reproducibility.patch \ -
>> file://0d3344e17d258106617b0e6d783d073b188a2548.patch \
>> file://no-musttail-arm.patch \
>> file://0001-LowLevelInterpreter.cpp-339-21-error-t6-was-not-decl.patch
>> \ " -SRC_URI[sha256sum] =
>> "b64278c1f20b8cfdbfb5ff573c37d871aba74a1db26d9b39f74e8953fe61e749"
>> +SRC_URI[sha256sum] =
>> "c66530e41ba59b1edba4ee89ef20b2188e273bed0497e95084729e3cfbe30c87"
>> inherit cmake pkgconfig gobject-introspection perlnative
>> features_check upstream-version-is-even gi-docgen @@ -47,14 +46,15
>> @@ DEPENDS += " \ " PACKAGECONFIG_SOUP ?= "soup3" -PACKAGECONFIG ??=
>> "${@bb.utils.filter('DISTRO_FEATURES', 'systemd wayland x11', d)} \
>> - ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'webgl
>> opengl', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11',
>> '', 'webgl gles2', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES',
>> 'opengl', 'opengl-or-es', '', d)} \ - enchant \ - libsecret \ -
>> ${PACKAGECONFIG_SOUP} \ - " +PACKAGECONFIG ??= " \ +
>> ${@bb.utils.filter('DISTRO_FEATURES', 'systemd wayland x11', d)} \ +
>> ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'webgl
>> opengl', '', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11',
>> '', 'webgl gles2', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES',
>> 'opengl', 'opengl-or-es', '', d)} \ + enchant \ + libsecret \ +
>> ${PACKAGECONFIG_SOUP} \ + " PACKAGECONFIG[wayland] =
>> "-DENABLE_WAYLAND_TARGET=ON,-DENABLE_WAYLAND_TARGET=OFF,wayland
>> libwpe wpebackend-fdo wayland-native" PACKAGECONFIG[angle] =
>> "-DUSE_ANGLE_WEBGL=ON,-DUSE_ANGLE_WEBGL=OFF" @@ -81,12 +81,15 @@
>> PACKAGECONFIG[media-recorder] =
>> "-DENABLE_MEDIA_RECORDER=ON,-DENABLE_MEDIA_RECOR
>> PACKAGECONFIG[gamepad] =
>> "-DENABLE_GAMEPAD=ON,-DENABLE_GAMEPAD=OFF,libmanette"
>> PACKAGECONFIG[webrtc] = "-DENABLE_WEB_RTC=ON,-DENABLE_WEB_RTC=OFF"
>> PACKAGECONFIG[bubblewrap] = "-DENABLE_BUBBLEWRAP_SANDBOX=ON
>> -DBWRAP_EXECUTABLE=${bindir}/bwrap
>> -DDBUS_PROXY_EXECUTABLE=${bindir}/xdg-dbus-proxy,-DENABLE_BUBBLEWRAP_SANDBOX=OFF,,bubblewrap
>> xdg-dbus-proxy" +PACKAGECONFIG[backtrace] =
>> "-DUSE_LIBBACKTRACE=ON,-DUSE_LIBBACKTRACE=OFF,libbacktrace"
>> EXTRA_OECMAKE = " \ - -DPORT=GTK \ -
>> ${@bb.utils.contains('GI_DATA_ENABLED', 'True',
>> '-DENABLE_INTROSPECTION=ON', '-DENABLE_INTROSPECTION=OFF', d)} \ -
>> ${@bb.utils.contains('GIDOCGEN_ENABLED', 'True',
>> '-DENABLE_DOCUMENTATION=ON', '-DENABLE_DOCUMENTATION=OFF', d)} \ -
>> -DENABLE_MINIBROWSER=ON \ + -DPORT=GTK \ + -DUSE_GTK4=OFF \ +
>> ${@bb.utils.contains('GI_DATA_ENABLED', 'True',
>> '-DENABLE_INTROSPECTION=ON', '-DENABLE_INTROSPECTION=OFF', d)} \ +
>> ${@bb.utils.contains('GIDOCGEN_ENABLED', 'True',
>> '-DENABLE_DOCUMENTATION=ON', '-DENABLE_DOCUMENTATION=OFF', d)} \ +
>> -DENABLE_MINIBROWSER=ON \ + -DCMAKE_EXPORT_COMPILE_COMMANDS=OFF \ "
>> # Unless DEBUG_BUILD is enabled, pass -g1 to massively reduce the
>> size of the # debug symbols (4.3GB to 700M at time of writing)
>> --
>> 2.44.0
>>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#109696):
> <https://lists.openembedded.org/g/openembedded-devel/message/109696>
> Mute This Topic: <https://lists.openembedded.org/mt/105250406/3618223>
> Group Owner: openembedded-devel+owner@lists.openembedded.org
> <mailto:openembedded-devel+owner@lists.openembedded.org>
> Unsubscribe:
> <https://lists.openembedded.org/g/openembedded-devel/unsub>
> [f_l_k@t-online.de <mailto:f_l_k@t-online.de>]
> -=-=-=-=-=-=-=-=-=-=-=-
>
[-- Attachment #2: Type: text/html, Size: 24648 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [oe] [meta-oe][PATCHv2] webkitgtk3: update 2.42.5 -> 2.44.0
[not found] ` <17C22B88C498BBBF.16687@lists.openembedded.org>
@ 2024-04-01 15:00 ` Markus Volk
2024-04-02 18:09 ` Martin Jansa
0 siblings, 1 reply; 5+ messages in thread
From: Markus Volk @ 2024-04-01 15:00 UTC (permalink / raw)
To: Khem Raj; +Cc: openembedded-devel
[-- Attachment #1: Type: text/plain, Size: 25552 bytes --]
Sorry, should have read better. Missed that this is a 32bit issue and
was able to reproduce it
On Mon, Apr 1 2024 at 03:38:01 PM +02:00:00, Markus Volk
<f_l_k@t-online.de> wrote:
> Hi Khem,
>
> I was unable to reproduce the issue for clang + qemux86 but got the
> error for qemuriscv64
>
> Have sent a v3 with a fix for it
>
> On Mon, Apr 1 2024 at 12:50:06 AM -07:00:00, Khem Raj
> <raj.khem@gmail.com> wrote:
>> fails to build with clang on riscv64 and x86
>>
>> <https://errors.yoctoproject.org/Errors/Details/761343/>
>> <https://errors.yoctoproject.org/Errors/Details/761342/>
>>
>> On Sun, Mar 31, 2024 at 10:08 AM Markus Volk <f_l_k@t-online.de
>> <mailto:f_l_k@t-online.de>> wrote:
>>>
>>> The webkitgtk3 variant already contains PACKAGECONFIG for gamepad.
>>> Remove the duplicate
>>>
>>> On Sun, Mar 31 2024 at 07:07:06 PM +02:00:00, Markus Volk
>>> <f_l_k@t-online.de <mailto:f_l_k@t-online.de>> wrote:
>>>
>>> - 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 - 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 - Explicitly disable gtk4 to
>>> avoid: | CMake Error at
>>> /home/flk/poky/build-hypr/tmp/work/corei7-64-poky-linux/webkitgtk3/2.44.0/recipe-sysroot-native/usr/shar>
>>> | Could NOT find GTK (missing: GTK_VERSION) (Required is at least
>>> version | "4.6.0") ================ 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 Signed-off-by: Markus Volk <f_l_k@t-online.de
>>> <mailto:f_l_k@t-online.de>> ---
>>> ...44e17d258106617b0e6d783d073b188a2548.patch | 312
>>> ------------------ ...kitgtk3_2.42.5.bb => webkitgtk3_2.44.0.bb} |
>>> 31 +- 2 files changed, 17 insertions(+), 326 deletions(-) delete
>>> mode 100644
>>> meta-oe/recipes-support/webkitgtk/webkitgtk3/0d3344e17d258106617b0e6d783d073b188a2548.patch
>>> rename meta-oe/recipes-support/webkitgtk/{webkitgtk3_2.42.5.bb =>
>>> webkitgtk3_2.44.0.bb} (89%) diff --git
>>> a/meta-oe/recipes-support/webkitgtk/webkitgtk3/0d3344e17d258106617b0e6d783d073b188a2548.patch
>>> b/meta-oe/recipes-support/webkitgtk/webkitgtk3/0d3344e17d258106617b0e6d783d073b188a2548.patch
>>> deleted file mode 100644 index d19d1e117..000000000 ---
>>> a/meta-oe/recipes-support/webkitgtk/webkitgtk3/0d3344e17d258106617b0e6d783d073b188a2548.patch
>>> +++ /dev/null @@ -1,312 +0,0 @@ -From
>>> e3c12b38037b4bb3053c440e4bd22c36c1dc576b Mon Sep 17 00:00:00 2001
>>> -From: Adrian Perez de Castro <aperez@igalia.com> -Date: Thu, 2 Jun
>>> 2022 11:19:06 +0300 -Subject: [PATCH] FELightningNEON.cpp fails to
>>> build, NEON fast path seems - - unused
>>> https://bugs.webkit.org/show_bug.cgi?id=241182 - -Reviewed by
>>> NOBODY (OOPS!). - -Move the NEON fast path for the SVG lighting
>>> filter effects into -FELightingSoftwareApplier, and arrange to
>>> actually use them by -forwarding calls to applyPlatformGeneric()
>>> into applyPlatformNeon(). - -Some changes were needed to adapt
>>> platformApplyNeon() to the current -state of filters after r286140.
>>> This was not detected because the code -bitrotted due to it being
>>> guarded with CPU(ARM_TRADITIONAL), which does -not get used much
>>> these days: CPU(ARM_THUMB2) is more common. It should -be possible
>>> to use the NEON fast paths also in Thumb mode, but that is -left
>>> for a follow-up fix. - -*
>>> Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp:
>>> -(WebCore::FELightingSoftwareApplier::platformApplyNeonWorker):
>>> -(WebCore::FELightingSoftwareApplier::getPowerCoefficients):
>>> -(WebCore::FELighting::platformApplyNeonWorker): Deleted.
>>> -(WebCore::FELighting::getPowerCoefficients): Deleted. -*
>>> Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h:
>>> -(WebCore::FELightingSoftwareApplier::applyPlatformNeon):
>>> -(WebCore::FELighting::platformApplyNeon): Deleted. -*
>>> Source/WebCore/platform/graphics/filters/DistantLightSource.h: -*
>>> Source/WebCore/platform/graphics/filters/FELighting.h: -*
>>> Source/WebCore/platform/graphics/filters/PointLightSource.h: -*
>>> Source/WebCore/platform/graphics/filters/SpotLightSource.h: -*
>>> Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h:
>>> - -Upstream-Status: Submitted
>>> [https://github.com/WebKit/WebKit/pull/1233] -Signed-off-by: Khem
>>> Raj <raj.khem@gmail.com> - ---- -
>>> .../cpu/arm/filters/FELightingNEON.cpp | 4 +- -
>>> .../graphics/cpu/arm/filters/FELightingNEON.h | 52
>>> +++++++++---------- - .../graphics/filters/DistantLightSource.h | 4
>>> ++ - .../platform/graphics/filters/FELighting.h | 7 --- -
>>> .../graphics/filters/PointLightSource.h | 4 ++ -
>>> .../graphics/filters/SpotLightSource.h | 4 ++ -
>>> .../software/FELightingSoftwareApplier.h | 16 ++++++ - 7 files
>>> changed, 56 insertions(+), 35 deletions(-) - -diff --git
>>> a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp
>>> b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp
>>> -index f6ff8c20..42a97ffc 100644 ----
>>> a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp
>>> -+++
>>> b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp
>>> -@@ -49,7 +49,7 @@ short* feLightingConstantsForNeon() - return
>>> s_FELightingConstantsForNeon; - } - --void
>>> FELighting::platformApplyNeonWorker(FELightingPaintingDataForNeon*
>>> parameters) -+void
>>> FELightingSoftwareApplier::platformApplyNeonWorker(FELightingPaintingDataForNeon*
>>> parameters) - { - neonDrawLighting(parameters); - } -@@ -464,7
>>> +464,7 @@ TOSTRING(neonDrawLighting) ":" NL - "b
>>> .lightStrengthCalculated" NL - ); // NOLINT - --int
>>> FELighting::getPowerCoefficients(float exponent) -+int
>>> FELightingSoftwareApplier::getPowerCoefficients(float exponent) - {
>>> - // Calling a powf function from the assembly code would require
>>> to save - // and reload a lot of NEON registers. Since the base is
>>> in range [0..1] -diff --git
>>> a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h
>>> b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h
>>> -index b17c603d..e4629cda 100644 ----
>>> a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h
>>> -+++
>>> b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h
>>> -@@ -24,14 +24,15 @@ - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE
>>> POSSIBILITY OF SUCH DAMAGE. - */ - --#ifndef FELightingNEON_h
>>> --#define FELightingNEON_h -+#pragma once - - #if CPU(ARM_NEON) &&
>>> CPU(ARM_TRADITIONAL) && COMPILER(GCC_COMPATIBLE) - --#include
>>> "FELighting.h" -+#include "FELightingSoftwareApplier.h" -+#include
>>> "ImageBuffer.h" - #include "PointLightSource.h" - #include
>>> "SpotLightSource.h" -+#include <wtf/ObjectIdentifier.h> - #include
>>> <wtf/ParallelJobs.h> - - namespace WebCore { -@@ -93,14 +94,14 @@
>>> extern "C" { - void
>>> neonDrawLighting(FELightingPaintingDataForNeon*); - } - --inline
>>> void FELighting::platformApplyNeon(const LightingData& data, const
>>> LightSource::PaintingData& paintingData) -+inline void
>>> FELightingSoftwareApplier::applyPlatformNeon(const
>>> FELightingSoftwareApplier::LightingData& data, const
>>> LightSource::PaintingData& paintingData) - { -- alignas(16)
>>> FELightingFloatArgumentsForNeon floatArguments; --
>>> FELightingPaintingDataForNeon neonData = { -+
>>> WebCore::FELightingFloatArgumentsForNeon alignas(16)
>>> floatArguments; -+ WebCore::FELightingPaintingDataForNeon neonData
>>> = { - data.pixels->data(), - 1, -- data.widthDecreasedByOne - 1, --
>>> data.heightDecreasedByOne - 1, -+ data.width - 2, -+ data.height -
>>> 2, - 0, - 0, - 0, -@@ -111,23 +112,23 @@ inline void
>>> FELighting::platformApplyNeon(const LightingData& data, const
>>> LightS - // Set light source arguments. - floatArguments.constOne =
>>> 1; - -- auto color =
>>> m_lightingColor.toColorTypeLossy<SRGBA<uint8_t>>().resolved(); -+
>>> auto color =
>>> data.lightingColor.toColorTypeLossy<SRGBA<uint8_t>>().resolved(); -
>>> - floatArguments.colorRed = color.red; - floatArguments.colorGreen
>>> = color.green; - floatArguments.colorBlue = color.blue; -
>>> floatArguments.padding4 = 0; - -- if (m_lightSource->type() ==
>>> LS_POINT) { -+ if (data.lightSource->type() == LS_POINT) { -
>>> neonData.flags |= FLAG_POINT_LIGHT; -- PointLightSource&
>>> pointLightSource =
>>> static_cast<PointLightSource&>(m_lightSource.get()); -+ const auto&
>>> pointLightSource = *static_cast<const
>>> PointLightSource*>(data.lightSource); - floatArguments.lightX =
>>> pointLightSource.position().x(); - floatArguments.lightY =
>>> pointLightSource.position().y(); - floatArguments.lightZ =
>>> pointLightSource.position().z(); - floatArguments.padding2 = 0; --
>>> } else if (m_lightSource->type() == LS_SPOT) { -+ } else if
>>> (data.lightSource->type() == LS_SPOT) { - neonData.flags |=
>>> FLAG_SPOT_LIGHT; -- SpotLightSource& spotLightSource =
>>> static_cast<SpotLightSource&>(m_lightSource.get()); -+ const auto&
>>> spotLightSource = *static_cast<const
>>> SpotLightSource*>(data.lightSource); - floatArguments.lightX =
>>> spotLightSource.position().x(); - floatArguments.lightY =
>>> spotLightSource.position().y(); - floatArguments.lightZ =
>>> spotLightSource.position().z(); -@@ -145,7 +146,7 @@ inline void
>>> FELighting::platformApplyNeon(const LightingData& data, const
>>> LightS - if (spotLightSource.specularExponent() == 1) -
>>> neonData.flags |= FLAG_CONE_EXPONENT_IS_1; - } else { --
>>> ASSERT(m_lightSource->type() == LS_DISTANT); -+
>>> ASSERT(data.lightSource->type() == LS_DISTANT); -
>>> floatArguments.lightX =
>>> paintingData.initialLightingData.lightVector.x(); -
>>> floatArguments.lightY =
>>> paintingData.initialLightingData.lightVector.y(); -
>>> floatArguments.lightZ =
>>> paintingData.initialLightingData.lightVector.z(); -@@ -155,38
>>> +156,39 @@ inline void FELighting::platformApplyNeon(const
>>> LightingData& data, const LightS - // Set lighting arguments. -
>>> floatArguments.surfaceScale = data.surfaceScale; -
>>> floatArguments.minusSurfaceScaleDividedByFour = -data.surfaceScale
>>> / 4; -- if (m_lightingType == FELighting::DiffuseLighting) --
>>> floatArguments.diffuseConstant = m_diffuseConstant; -+ if
>>> (data.filterType == FilterEffect::Type::FEDiffuseLighting) -+
>>> floatArguments.diffuseConstant = data.diffuseConstant; - else { -
>>> neonData.flags |= FLAG_SPECULAR_LIGHT; --
>>> floatArguments.diffuseConstant = m_specularConstant; --
>>> neonData.specularExponent =
>>> getPowerCoefficients(m_specularExponent); -- if (m_specularExponent
>>> == 1) -+ floatArguments.diffuseConstant = data.specularConstant; -+
>>> neonData.specularExponent =
>>> getPowerCoefficients(data.specularExponent); -+ if
>>> (data.specularExponent == 1) - neonData.flags |=
>>> FLAG_SPECULAR_EXPONENT_IS_1; - } - if
>>> (floatArguments.diffuseConstant == 1) - neonData.flags |=
>>> FLAG_DIFFUSE_CONST_IS_1; - -- int optimalThreadNumber =
>>> ((data.widthDecreasedByOne - 1) * (data.heightDecreasedByOne - 1))
>>> / s_minimalRectDimension; -+ static constexpr int
>>> minimalRectDimension = 100 * 100; // Empirical data limit for
>>> parallel jobs -+ int optimalThreadNumber = ((data.width - 2) *
>>> (data.height - 2)) / minimalRectDimension; - if
>>> (optimalThreadNumber > 1) { - // Initialize parallel jobs --
>>> ParallelJobs<FELightingPaintingDataForNeon>
>>> parallelJobs(&WebCore::FELighting::platformApplyNeonWorker,
>>> optimalThreadNumber); -+
>>> ParallelJobs<FELightingPaintingDataForNeon>
>>> parallelJobs(&FELightingSoftwareApplier::platformApplyNeonWorker,
>>> optimalThreadNumber); - - // Fill the parameter array - int job =
>>> parallelJobs.numberOfJobs(); - if (job > 1) { - int yStart = 1; --
>>> int yStep = (data.heightDecreasedByOne - 1) / job; -+ int yStep =
>>> (data.height - 2) / job; - for (--job; job >= 0; --job) { -
>>> FELightingPaintingDataForNeon& params =
>>> parallelJobs.parameter(job); - params = neonData; - params.yStart =
>>> yStart; -- params.pixels += (yStart - 1) *
>>> (data.widthDecreasedByOne + 1) * 4; -+ params.pixels += (yStart -
>>> 1) * data.width * 4; - if (job > 0) { - params.absoluteHeight =
>>> yStep; - yStart += yStep; - } else -- params.absoluteHeight =
>>> data.heightDecreasedByOne - yStart; -+ params.absoluteHeight =
>>> (data.height - 1) - yStart; - } - parallelJobs.execute(); - return;
>>> -@@ -199,5 +201,3 @@ inline void
>>> FELighting::platformApplyNeon(const LightingData& data, const
>>> LightS - } // namespace WebCore - - #endif // CPU(ARM_NEON) &&
>>> COMPILER(GCC_COMPATIBLE) -- --#endif // FELightingNEON_h -diff
>>> --git
>>> a/Source/WebCore/platform/graphics/filters/DistantLightSource.h
>>> b/Source/WebCore/platform/graphics/filters/DistantLightSource.h
>>> -index 70f583b3..7d5d27e5 100644 ----
>>> a/Source/WebCore/platform/graphics/filters/DistantLightSource.h
>>> -+++
>>> b/Source/WebCore/platform/graphics/filters/DistantLightSource.h -@@
>>> -26,6 +26,10 @@ - #include <wtf/ArgumentCoder.h> - #include
>>> <wtf/Ref.h> - -+namespace WTF { -+class TextStream; -+} //
>>> namespace WTF -+ - namespace WebCore { - - class DistantLightSource
>>> : public LightSource { -diff --git
>>> a/Source/WebCore/platform/graphics/filters/FELighting.h
>>> b/Source/WebCore/platform/graphics/filters/FELighting.h -index
>>> 179edf6d..694d712d 100644 ----
>>> a/Source/WebCore/platform/graphics/filters/FELighting.h -+++
>>> b/Source/WebCore/platform/graphics/filters/FELighting.h -@@ -35,8
>>> +35,6 @@ - - namespace WebCore { - --struct
>>> FELightingPaintingDataForNeon; -- - class FELighting : public
>>> FilterEffect { - public: - bool operator==(const FELighting&)
>>> const; -@@ -68,11 +66,6 @@ protected: - -
>>> std::unique_ptr<FilterEffectApplier> createSoftwareApplier() const
>>> override; - --#if CPU(ARM_NEON) && CPU(ARM_TRADITIONAL) &&
>>> COMPILER(GCC_COMPATIBLE) -- static int getPowerCoefficients(float
>>> exponent); -- inline void platformApplyNeon(const LightingData&,
>>> const LightSource::PaintingData&); --#endif -- - Color
>>> m_lightingColor; - float m_surfaceScale; - float m_diffuseConstant;
>>> -diff --git
>>> a/Source/WebCore/platform/graphics/filters/PointLightSource.h
>>> b/Source/WebCore/platform/graphics/filters/PointLightSource.h
>>> -index a8cfdab8..34f867bb 100644 ----
>>> a/Source/WebCore/platform/graphics/filters/PointLightSource.h -+++
>>> b/Source/WebCore/platform/graphics/filters/PointLightSource.h -@@
>>> -26,6 +26,10 @@ - #include "LightSource.h" - #include <wtf/Ref.h> -
>>> -+namespace WTF { -+class TextStream; -+} // namespace WTF -+ -
>>> namespace WebCore { - - class PointLightSource : public LightSource
>>> { -diff --git
>>> a/Source/WebCore/platform/graphics/filters/SpotLightSource.h
>>> b/Source/WebCore/platform/graphics/filters/SpotLightSource.h -index
>>> 6404467a..5cac38f2 100644 ----
>>> a/Source/WebCore/platform/graphics/filters/SpotLightSource.h -+++
>>> b/Source/WebCore/platform/graphics/filters/SpotLightSource.h -@@
>>> -26,6 +26,10 @@ - #include "LightSource.h" - #include <wtf/Ref.h> -
>>> -+namespace WTF { -+class TextStream; -+} // namespace WTF -+ -
>>> namespace WebCore { - - class SpotLightSource : public LightSource
>>> { -diff --git
>>> a/Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h
>>> b/Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h
>>> -index c974d921..e2896660 100644 ----
>>> a/Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h
>>> -+++
>>> b/Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h
>>> -@@ -36,6 +36,7 @@ - namespace WebCore { - - class FELighting;
>>> -+struct FELightingPaintingDataForNeon; - - class
>>> FELightingSoftwareApplier final : public
>>> FilterEffectConcreteApplier<FELighting> { -
>>> WTF_MAKE_FAST_ALLOCATED; -@@ -132,8 +133,23 @@ private: - - static
>>> void applyPlatformGenericPaint(const LightingData&, const
>>> LightSource::PaintingData&, int startY, int endY); - static void
>>> applyPlatformGenericWorker(ApplyParameters*); -+ -+#if
>>> CPU(ARM_NEON) && CPU(ARM_TRADITIONAL) && COMPILER(GCC_COMPATIBLE)
>>> -+ static int getPowerCoefficients(float exponent); -+ static void
>>> platformApplyNeonWorker(FELightingPaintingDataForNeon*); -+ inline
>>> static void applyPlatformNeon(const LightingData&, const
>>> LightSource::PaintingData&); -+ -+ inline static void
>>> applyPlatformGeneric(const LightingData& data, const
>>> LightSource::PaintingData& paintingData) -+ { -+
>>> applyPlatformNeon(data, paintingData); -+ } -+#else - static void
>>> applyPlatformGeneric(const LightingData&, const
>>> LightSource::PaintingData&); -+#endif -+ - static void
>>> applyPlatform(const LightingData&); - }; - - } // namespace WebCore
>>> -+ -+#include "FELightingNEON.h" diff --git
>>> a/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.42.5.bb
>>> b/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.44.0.bb similarity
>>> index 89% rename from
>>> meta-oe/recipes-support/webkitgtk/webkitgtk3_2.42.5.bb rename to
>>> meta-oe/recipes-support/webkitgtk/webkitgtk3_2.44.0.bb index
>>> 234ecfae0..e5d53329d 100644 ---
>>> a/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.42.5.bb +++
>>> b/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.44.0.bb @@ -12,11
>>> +12,10 @@ LIC_FILES_CHKSUM =
>>> "file://Source/JavaScriptCore/COPYING.LIB;md5=d0c6d6397a5d842
>>> SRC_URI =
>>> "https://www.webkitgtk.org/releases/webkitgtk-${PV}.tar.xz \
>>> file://0001-FindGObjectIntrospection.cmake-prefix-variables-obta.patch
>>> \ file://reproducibility.patch \ -
>>> file://0d3344e17d258106617b0e6d783d073b188a2548.patch \
>>> file://no-musttail-arm.patch \
>>> file://0001-LowLevelInterpreter.cpp-339-21-error-t6-was-not-decl.patch
>>> \ " -SRC_URI[sha256sum] =
>>> "b64278c1f20b8cfdbfb5ff573c37d871aba74a1db26d9b39f74e8953fe61e749"
>>> +SRC_URI[sha256sum] =
>>> "c66530e41ba59b1edba4ee89ef20b2188e273bed0497e95084729e3cfbe30c87"
>>> inherit cmake pkgconfig gobject-introspection perlnative
>>> features_check upstream-version-is-even gi-docgen @@ -47,14 +46,15
>>> @@ DEPENDS += " \ " PACKAGECONFIG_SOUP ?= "soup3" -PACKAGECONFIG
>>> ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd wayland x11',
>>> d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl',
>>> 'webgl opengl', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES',
>>> 'x11', '', 'webgl gles2', d)} \ -
>>> ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'opengl-or-es',
>>> '', d)} \ - enchant \ - libsecret \ - ${PACKAGECONFIG_SOUP} \ - "
>>> +PACKAGECONFIG ??= " \ + ${@bb.utils.filter('DISTRO_FEATURES',
>>> 'systemd wayland x11', d)} \ +
>>> ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'webgl
>>> opengl', '', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11',
>>> '', 'webgl gles2', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES',
>>> 'opengl', 'opengl-or-es', '', d)} \ + enchant \ + libsecret \ +
>>> ${PACKAGECONFIG_SOUP} \ + " PACKAGECONFIG[wayland] =
>>> "-DENABLE_WAYLAND_TARGET=ON,-DENABLE_WAYLAND_TARGET=OFF,wayland
>>> libwpe wpebackend-fdo wayland-native" PACKAGECONFIG[angle] =
>>> "-DUSE_ANGLE_WEBGL=ON,-DUSE_ANGLE_WEBGL=OFF" @@ -81,12 +81,15 @@
>>> PACKAGECONFIG[media-recorder] =
>>> "-DENABLE_MEDIA_RECORDER=ON,-DENABLE_MEDIA_RECOR
>>> PACKAGECONFIG[gamepad] =
>>> "-DENABLE_GAMEPAD=ON,-DENABLE_GAMEPAD=OFF,libmanette"
>>> PACKAGECONFIG[webrtc] = "-DENABLE_WEB_RTC=ON,-DENABLE_WEB_RTC=OFF"
>>> PACKAGECONFIG[bubblewrap] = "-DENABLE_BUBBLEWRAP_SANDBOX=ON
>>> -DBWRAP_EXECUTABLE=${bindir}/bwrap
>>> -DDBUS_PROXY_EXECUTABLE=${bindir}/xdg-dbus-proxy,-DENABLE_BUBBLEWRAP_SANDBOX=OFF,,bubblewrap
>>> xdg-dbus-proxy" +PACKAGECONFIG[backtrace] =
>>> "-DUSE_LIBBACKTRACE=ON,-DUSE_LIBBACKTRACE=OFF,libbacktrace"
>>> EXTRA_OECMAKE = " \ - -DPORT=GTK \ -
>>> ${@bb.utils.contains('GI_DATA_ENABLED', 'True',
>>> '-DENABLE_INTROSPECTION=ON', '-DENABLE_INTROSPECTION=OFF', d)} \ -
>>> ${@bb.utils.contains('GIDOCGEN_ENABLED', 'True',
>>> '-DENABLE_DOCUMENTATION=ON', '-DENABLE_DOCUMENTATION=OFF', d)} \ -
>>> -DENABLE_MINIBROWSER=ON \ + -DPORT=GTK \ + -DUSE_GTK4=OFF \ +
>>> ${@bb.utils.contains('GI_DATA_ENABLED', 'True',
>>> '-DENABLE_INTROSPECTION=ON', '-DENABLE_INTROSPECTION=OFF', d)} \ +
>>> ${@bb.utils.contains('GIDOCGEN_ENABLED', 'True',
>>> '-DENABLE_DOCUMENTATION=ON', '-DENABLE_DOCUMENTATION=OFF', d)} \ +
>>> -DENABLE_MINIBROWSER=ON \ + -DCMAKE_EXPORT_COMPILE_COMMANDS=OFF \ "
>>> # Unless DEBUG_BUILD is enabled, pass -g1 to massively reduce the
>>> size of the # debug symbols (4.3GB to 700M at time of writing)
>>> --
>>> 2.44.0
>>>
>>
>>
>>
[-- Attachment #2: Type: text/html, Size: 24217 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [oe] [meta-oe][PATCHv2] webkitgtk3: update 2.42.5 -> 2.44.0
2024-04-01 15:00 ` Markus Volk
@ 2024-04-02 18:09 ` Martin Jansa
0 siblings, 0 replies; 5+ messages in thread
From: Martin Jansa @ 2024-04-02 18:09 UTC (permalink / raw)
To: Markus Volk; +Cc: Khem Raj, openembedded-devel
openembedded-core/scripts/contrib/patchreview.py shows:
Malformed Upstream-Status 'Malformed Upstream-Status in patch
Upstream-Status:
Backport[https://github.com/WebKit/WebKit/commit/2922af379dc70b4b1a63b01d67179eb431f03ac4]'
(/OE/layers/meta-openembedded/meta-oe/recipes-support/webkitgtk/webkitgtk3/2922af379dc70b4b1a63b01d67179eb431f03ac4.patch)
Please add the space.
On Mon, Apr 1, 2024 at 5:01 PM Markus Volk <f_l_k@t-online.de> wrote:
>
> Sorry, should have read better. Missed that this is a 32bit issue and was able to reproduce it
>
> On Mon, Apr 1 2024 at 03:38:01 PM +02:00:00, Markus Volk <f_l_k@t-online.de> wrote:
>
> Hi Khem,
>
> I was unable to reproduce the issue for clang + qemux86 but got the error for qemuriscv64
>
> Have sent a v3 with a fix for it
>
> On Mon, Apr 1 2024 at 12:50:06 AM -07:00:00, Khem Raj <raj.khem@gmail.com> wrote:
>
> fails to build with clang on riscv64 and x86 https://errors.yoctoproject.org/Errors/Details/761343/ https://errors.yoctoproject.org/Errors/Details/761342/ On Sun, Mar 31, 2024 at 10:08 AM Markus Volk <f_l_k@t-online.de> wrote:
>
> The webkitgtk3 variant already contains PACKAGECONFIG for gamepad. Remove the duplicate On Sun, Mar 31 2024 at 07:07:06 PM +02:00:00, Markus Volk <f_l_k@t-online.de> wrote: - 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 - 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 - Explicitly disable gtk4 to avoid: | CMake Error at /home/flk/poky/build-hypr/tmp/work/corei7-64-poky-linux/webkitgtk3/2.44.0/recipe-sysroot-native/usr/shar> | Could NOT find GTK (missing: GTK_VERSION) (Required is at least version | "4.6.0") ================ 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 Signed-off-by: Markus Volk <f_l_k@t-online.de> --- ...44e17d258106617b0e6d783d073b188a2548.patch | 312 ------------------ ...kitgtk3_2.42.5.bb => webkitgtk3_2.44.0.bb} | 31 +- 2 files changed, 17 insertions(+), 326 deletions(-) delete mode 100644 meta-oe/recipes-support/webkitgtk/webkitgtk3/0d3344e17d258106617b0e6d783d073b188a2548.patch rename meta-oe/recipes-support/webkitgtk/{webkitgtk3_2.42.5.bb => webkitgtk3_2.44.0.bb} (89%) diff --git a/meta-oe/recipes-support/webkitgtk/webkitgtk3/0d3344e17d258106617b0e6d783d073b188a2548.patch b/meta-oe/recipes-support/webkitgtk/webkitgtk3/0d3344e17d258106617b0e6d783d073b188a2548.patch deleted file mode 100644 index d19d1e117..000000000 --- a/meta-oe/recipes-support/webkitgtk/webkitgtk3/0d3344e17d258106617b0e6d783d073b188a2548.patch +++ /dev/null @@ -1,312 +0,0 @@ -From e3c12b38037b4bb3053c440e4bd22c36c1dc576b Mon Sep 17 00:00:00 2001 -From: Adrian Perez de Castro <aperez@igalia.com> -Date: Thu, 2 Jun 2022 11:19:06 +0300 -Subject: [PATCH] FELightningNEON.cpp fails to build, NEON fast path seems - - unused https://bugs.webkit.org/show_bug.cgi?id=241182 - -Reviewed by NOBODY (OOPS!). - -Move the NEON fast path for the SVG lighting filter effects into -FELightingSoftwareApplier, and arrange to actually use them by -forwarding calls to applyPlatformGeneric() into applyPlatformNeon(). - -Some changes were needed to adapt platformApplyNeon() to the current -state of filters after r286140. This was not detected because the code -bitrotted due to it being guarded with CPU(ARM_TRADITIONAL), which does -not get used much these days: CPU(ARM_THUMB2) is more common. It should -be possible to use the NEON fast paths also in Thumb mode, but that is -left for a follow-up fix. - -* Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp: -(WebCore::FELightingSoftwareApplier::platformApplyNeonWorker): -(WebCore::FELightingSoftwareApplier::getPowerCoefficients): -(WebCore::FELighting::platformApplyNeonWorker): Deleted. -(WebCore::FELighting::getPowerCoefficients): Deleted. -* Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h: -(WebCore::FELightingSoftwareApplier::applyPlatformNeon): -(WebCore::FELighting::platformApplyNeon): Deleted. -* Source/WebCore/platform/graphics/filters/DistantLightSource.h: -* Source/WebCore/platform/graphics/filters/FELighting.h: -* Source/WebCore/platform/graphics/filters/PointLightSource.h: -* Source/WebCore/platform/graphics/filters/SpotLightSource.h: -* Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h: - -Upstream-Status: Submitted [https://github.com/WebKit/WebKit/pull/1233] -Signed-off-by: Khem Raj <raj.khem@gmail.com> - ---- - .../cpu/arm/filters/FELightingNEON.cpp | 4 +- - .../graphics/cpu/arm/filters/FELightingNEON.h | 52 +++++++++---------- - .../graphics/filters/DistantLightSource.h | 4 ++ - .../platform/graphics/filters/FELighting.h | 7 --- - .../graphics/filters/PointLightSource.h | 4 ++ - .../graphics/filters/SpotLightSource.h | 4 ++ - .../software/FELightingSoftwareApplier.h | 16 ++++++ - 7 files changed, 56 insertions(+), 35 deletions(-) - -diff --git a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp -index f6ff8c20..42a97ffc 100644 ---- a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp -+++ b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp -@@ -49,7 +49,7 @@ short* feLightingConstantsForNeon() - return s_FELightingConstantsForNeon; - } - --void FELighting::platformApplyNeonWorker(FELightingPaintingDataForNeon* parameters) -+void FELightingSoftwareApplier::platformApplyNeonWorker(FELightingPaintingDataForNeon* parameters) - { - neonDrawLighting(parameters); - } -@@ -464,7 +464,7 @@ TOSTRING(neonDrawLighting) ":" NL - "b .lightStrengthCalculated" NL - ); // NOLINT - --int FELighting::getPowerCoefficients(float exponent) -+int FELightingSoftwareApplier::getPowerCoefficients(float exponent) - { - // Calling a powf function from the assembly code would require to save - // and reload a lot of NEON registers. Since the base is in range [0..1] -diff --git a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h -index b17c603d..e4629cda 100644 ---- a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h -+++ b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.h -@@ -24,14 +24,15 @@ - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - --#ifndef FELightingNEON_h --#define FELightingNEON_h -+#pragma once - - #if CPU(ARM_NEON) && CPU(ARM_TRADITIONAL) && COMPILER(GCC_COMPATIBLE) - --#include "FELighting.h" -+#include "FELightingSoftwareApplier.h" -+#include "ImageBuffer.h" - #include "PointLightSource.h" - #include "SpotLightSource.h" -+#include <wtf/ObjectIdentifier.h> - #include <wtf/ParallelJobs.h> - - namespace WebCore { -@@ -93,14 +94,14 @@ extern "C" { - void neonDrawLighting(FELightingPaintingDataForNeon*); - } - --inline void FELighting::platformApplyNeon(const LightingData& data, const LightSource::PaintingData& paintingData) -+inline void FELightingSoftwareApplier::applyPlatformNeon(const FELightingSoftwareApplier::LightingData& data, const LightSource::PaintingData& paintingData) - { -- alignas(16) FELightingFloatArgumentsForNeon floatArguments; -- FELightingPaintingDataForNeon neonData = { -+ WebCore::FELightingFloatArgumentsForNeon alignas(16) floatArguments; -+ WebCore::FELightingPaintingDataForNeon neonData = { - data.pixels->data(), - 1, -- data.widthDecreasedByOne - 1, -- data.heightDecreasedByOne - 1, -+ data.width - 2, -+ data.height - 2, - 0, - 0, - 0, -@@ -111,23 +112,23 @@ inline void FELighting::platformApplyNeon(const LightingData& data, const LightS - // Set light source arguments. - floatArguments.constOne = 1; - -- auto color = m_lightingColor.toColorTypeLossy<SRGBA<uint8_t>>().resolved(); -+ auto color = data.lightingColor.toColorTypeLossy<SRGBA<uint8_t>>().resolved(); - - floatArguments.colorRed = color.red; - floatArguments.colorGreen = color.green; - floatArguments.colorBlue = color.blue; - floatArguments.padding4 = 0; - -- if (m_lightSource->type() == LS_POINT) { -+ if (data.lightSource->type() == LS_POINT) { - neonData.flags |= FLAG_POINT_LIGHT; -- PointLightSource& pointLightSource = static_cast<PointLightSource&>(m_lightSource.get()); -+ const auto& pointLightSource = *static_cast<const PointLightSource*>(data.lightSource); - floatArguments.lightX = pointLightSource.position().x(); - floatArguments.lightY = pointLightSource.position().y(); - floatArguments.lightZ = pointLightSource.position().z(); - floatArguments.padding2 = 0; -- } else if (m_lightSource->type() == LS_SPOT) { -+ } else if (data.lightSource->type() == LS_SPOT) { - neonData.flags |= FLAG_SPOT_LIGHT; -- SpotLightSource& spotLightSource = static_cast<SpotLightSource&>(m_lightSource.get()); -+ const auto& spotLightSource = *static_cast<const SpotLightSource*>(data.lightSource); - floatArguments.lightX = spotLightSource.position().x(); - floatArguments.lightY = spotLightSource.position().y(); - floatArguments.lightZ = spotLightSource.position().z(); -@@ -145,7 +146,7 @@ inline void FELighting::platformApplyNeon(const LightingData& data, const LightS - if (spotLightSource.specularExponent() == 1) - neonData.flags |= FLAG_CONE_EXPONENT_IS_1; - } else { -- ASSERT(m_lightSource->type() == LS_DISTANT); -+ ASSERT(data.lightSource->type() == LS_DISTANT); - floatArguments.lightX = paintingData.initialLightingData.lightVector.x(); - floatArguments.lightY = paintingData.initialLightingData.lightVector.y(); - floatArguments.lightZ = paintingData.initialLightingData.lightVector.z(); -@@ -155,38 +156,39 @@ inline void FELighting::platformApplyNeon(const LightingData& data, const LightS - // Set lighting arguments. - floatArguments.surfaceScale = data.surfaceScale; - floatArguments.minusSurfaceScaleDividedByFour = -data.surfaceScale / 4; -- if (m_lightingType == FELighting::DiffuseLighting) -- floatArguments.diffuseConstant = m_diffuseConstant; -+ if (data.filterType == FilterEffect::Type::FEDiffuseLighting) -+ floatArguments.diffuseConstant = data.diffuseConstant; - else { - neonData.flags |= FLAG_SPECULAR_LIGHT; -- floatArguments.diffuseConstant = m_specularConstant; -- neonData.specularExponent = getPowerCoefficients(m_specularExponent); -- if (m_specularExponent == 1) -+ floatArguments.diffuseConstant = data.specularConstant; -+ neonData.specularExponent = getPowerCoefficients(data.specularExponent); -+ if (data.specularExponent == 1) - neonData.flags |= FLAG_SPECULAR_EXPONENT_IS_1; - } - if (floatArguments.diffuseConstant == 1) - neonData.flags |= FLAG_DIFFUSE_CONST_IS_1; - -- int optimalThreadNumber = ((data.widthDecreasedByOne - 1) * (data.heightDecreasedByOne - 1)) / s_minimalRectDimension; -+ static constexpr int minimalRectDimension = 100 * 100; // Empirical data limit for parallel jobs -+ int optimalThreadNumber = ((data.width - 2) * (data.height - 2)) / minimalRectDimension; - if (optimalThreadNumber > 1) { - // Initialize parallel jobs -- ParallelJobs<FELightingPaintingDataForNeon> parallelJobs(&WebCore::FELighting::platformApplyNeonWorker, optimalThreadNumber); -+ ParallelJobs<FELightingPaintingDataForNeon> parallelJobs(&FELightingSoftwareApplier::platformApplyNeonWorker, optimalThreadNumber); - - // Fill the parameter array - int job = parallelJobs.numberOfJobs(); - if (job > 1) { - int yStart = 1; -- int yStep = (data.heightDecreasedByOne - 1) / job; -+ int yStep = (data.height - 2) / job; - for (--job; job >= 0; --job) { - FELightingPaintingDataForNeon& params = parallelJobs.parameter(job); - params = neonData; - params.yStart = yStart; -- params.pixels += (yStart - 1) * (data.widthDecreasedByOne + 1) * 4; -+ params.pixels += (yStart - 1) * data.width * 4; - if (job > 0) { - params.absoluteHeight = yStep; - yStart += yStep; - } else -- params.absoluteHeight = data.heightDecreasedByOne - yStart; -+ params.absoluteHeight = (data.height - 1) - yStart; - } - parallelJobs.execute(); - return; -@@ -199,5 +201,3 @@ inline void FELighting::platformApplyNeon(const LightingData& data, const LightS - } // namespace WebCore - - #endif // CPU(ARM_NEON) && COMPILER(GCC_COMPATIBLE) -- --#endif // FELightingNEON_h -diff --git a/Source/WebCore/platform/graphics/filters/DistantLightSource.h b/Source/WebCore/platform/graphics/filters/DistantLightSource.h -index 70f583b3..7d5d27e5 100644 ---- a/Source/WebCore/platform/graphics/filters/DistantLightSource.h -+++ b/Source/WebCore/platform/graphics/filters/DistantLightSource.h -@@ -26,6 +26,10 @@ - #include <wtf/ArgumentCoder.h> - #include <wtf/Ref.h> - -+namespace WTF { -+class TextStream; -+} // namespace WTF -+ - namespace WebCore { - - class DistantLightSource : public LightSource { -diff --git a/Source/WebCore/platform/graphics/filters/FELighting.h b/Source/WebCore/platform/graphics/filters/FELighting.h -index 179edf6d..694d712d 100644 ---- a/Source/WebCore/platform/graphics/filters/FELighting.h -+++ b/Source/WebCore/platform/graphics/filters/FELighting.h -@@ -35,8 +35,6 @@ - - namespace WebCore { - --struct FELightingPaintingDataForNeon; -- - class FELighting : public FilterEffect { - public: - bool operator==(const FELighting&) const; -@@ -68,11 +66,6 @@ protected: - - std::unique_ptr<FilterEffectApplier> createSoftwareApplier() const override; - --#if CPU(ARM_NEON) && CPU(ARM_TRADITIONAL) && COMPILER(GCC_COMPATIBLE) -- static int getPowerCoefficients(float exponent); -- inline void platformApplyNeon(const LightingData&, const LightSource::PaintingData&); --#endif -- - Color m_lightingColor; - float m_surfaceScale; - float m_diffuseConstant; -diff --git a/Source/WebCore/platform/graphics/filters/PointLightSource.h b/Source/WebCore/platform/graphics/filters/PointLightSource.h -index a8cfdab8..34f867bb 100644 ---- a/Source/WebCore/platform/graphics/filters/PointLightSource.h -+++ b/Source/WebCore/platform/graphics/filters/PointLightSource.h -@@ -26,6 +26,10 @@ - #include "LightSource.h" - #include <wtf/Ref.h> - -+namespace WTF { -+class TextStream; -+} // namespace WTF -+ - namespace WebCore { - - class PointLightSource : public LightSource { -diff --git a/Source/WebCore/platform/graphics/filters/SpotLightSource.h b/Source/WebCore/platform/graphics/filters/SpotLightSource.h -index 6404467a..5cac38f2 100644 ---- a/Source/WebCore/platform/graphics/filters/SpotLightSource.h -+++ b/Source/WebCore/platform/graphics/filters/SpotLightSource.h -@@ -26,6 +26,10 @@ - #include "LightSource.h" - #include <wtf/Ref.h> - -+namespace WTF { -+class TextStream; -+} // namespace WTF -+ - namespace WebCore { - - class SpotLightSource : public LightSource { -diff --git a/Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h b/Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h -index c974d921..e2896660 100644 ---- a/Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h -+++ b/Source/WebCore/platform/graphics/filters/software/FELightingSoftwareApplier.h -@@ -36,6 +36,7 @@ - namespace WebCore { - - class FELighting; -+struct FELightingPaintingDataForNeon; - - class FELightingSoftwareApplier final : public FilterEffectConcreteApplier<FELighting> { - WTF_MAKE_FAST_ALLOCATED; -@@ -132,8 +133,23 @@ private: - - static void applyPlatformGenericPaint(const LightingData&, const LightSource::PaintingData&, int startY, int endY); - static void applyPlatformGenericWorker(ApplyParameters*); -+ -+#if CPU(ARM_NEON) && CPU(ARM_TRADITIONAL) && COMPILER(GCC_COMPATIBLE) -+ static int getPowerCoefficients(float exponent); -+ static void platformApplyNeonWorker(FELightingPaintingDataForNeon*); -+ inline static void applyPlatformNeon(const LightingData&, const LightSource::PaintingData&); -+ -+ inline static void applyPlatformGeneric(const LightingData& data, const LightSource::PaintingData& paintingData) -+ { -+ applyPlatformNeon(data, paintingData); -+ } -+#else - static void applyPlatformGeneric(const LightingData&, const LightSource::PaintingData&); -+#endif -+ - static void applyPlatform(const LightingData&); - }; - - } // namespace WebCore -+ -+#include "FELightingNEON.h" diff --git a/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.42.5.bb b/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.44.0.bb similarity index 89% rename from meta-oe/recipes-support/webkitgtk/webkitgtk3_2.42.5.bb rename to meta-oe/recipes-support/webkitgtk/webkitgtk3_2.44.0.bb index 234ecfae0..e5d53329d 100644 --- a/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.42.5.bb +++ b/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.44.0.bb @@ -12,11 +12,10 @@ LIC_FILES_CHKSUM = "file://Source/JavaScriptCore/COPYING.LIB;md5=d0c6d6397a5d842 SRC_URI = "https://www.webkitgtk.org/releases/webkitgtk-${PV}.tar.xz \ file://0001-FindGObjectIntrospection.cmake-prefix-variables-obta.patch \ file://reproducibility.patch \ - file://0d3344e17d258106617b0e6d783d073b188a2548.patch \ file://no-musttail-arm.patch \ file://0001-LowLevelInterpreter.cpp-339-21-error-t6-was-not-decl.patch \ " -SRC_URI[sha256sum] = "b64278c1f20b8cfdbfb5ff573c37d871aba74a1db26d9b39f74e8953fe61e749" +SRC_URI[sha256sum] = "c66530e41ba59b1edba4ee89ef20b2188e273bed0497e95084729e3cfbe30c87" inherit cmake pkgconfig gobject-introspection perlnative features_check upstream-version-is-even gi-docgen @@ -47,14 +46,15 @@ DEPENDS += " \ " PACKAGECONFIG_SOUP ?= "soup3" -PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd wayland x11', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'webgl opengl', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', 'webgl gles2', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'opengl-or-es', '', d)} \ - enchant \ - libsecret \ - ${PACKAGECONFIG_SOUP} \ - " +PACKAGECONFIG ??= " \ + ${@bb.utils.filter('DISTRO_FEATURES', 'systemd wayland x11', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'webgl opengl', '', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', 'webgl gles2', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'opengl-or-es', '', d)} \ + enchant \ + libsecret \ + ${PACKAGECONFIG_SOUP} \ + " PACKAGECONFIG[wayland] = "-DENABLE_WAYLAND_TARGET=ON,-DENABLE_WAYLAND_TARGET=OFF,wayland libwpe wpebackend-fdo wayland-native" PACKAGECONFIG[angle] = "-DUSE_ANGLE_WEBGL=ON,-DUSE_ANGLE_WEBGL=OFF" @@ -81,12 +81,15 @@ PACKAGECONFIG[media-recorder] = "-DENABLE_MEDIA_RECORDER=ON,-DENABLE_MEDIA_RECOR PACKAGECONFIG[gamepad] = "-DENABLE_GAMEPAD=ON,-DENABLE_GAMEPAD=OFF,libmanette" PACKAGECONFIG[webrtc] = "-DENABLE_WEB_RTC=ON,-DENABLE_WEB_RTC=OFF" PACKAGECONFIG[bubblewrap] = "-DENABLE_BUBBLEWRAP_SANDBOX=ON -DBWRAP_EXECUTABLE=${bindir}/bwrap -DDBUS_PROXY_EXECUTABLE=${bindir}/xdg-dbus-proxy,-DENABLE_BUBBLEWRAP_SANDBOX=OFF,,bubblewrap xdg-dbus-proxy" +PACKAGECONFIG[backtrace] = "-DUSE_LIBBACKTRACE=ON,-DUSE_LIBBACKTRACE=OFF,libbacktrace" EXTRA_OECMAKE = " \ - -DPORT=GTK \ - ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-DENABLE_INTROSPECTION=ON', '-DENABLE_INTROSPECTION=OFF', d)} \ - ${@bb.utils.contains('GIDOCGEN_ENABLED', 'True', '-DENABLE_DOCUMENTATION=ON', '-DENABLE_DOCUMENTATION=OFF', d)} \ - -DENABLE_MINIBROWSER=ON \ + -DPORT=GTK \ + -DUSE_GTK4=OFF \ + ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-DENABLE_INTROSPECTION=ON', '-DENABLE_INTROSPECTION=OFF', d)} \ + ${@bb.utils.contains('GIDOCGEN_ENABLED', 'True', '-DENABLE_DOCUMENTATION=ON', '-DENABLE_DOCUMENTATION=OFF', d)} \ + -DENABLE_MINIBROWSER=ON \ + -DCMAKE_EXPORT_COMPILE_COMMANDS=OFF \ " # Unless DEBUG_BUILD is enabled, pass -g1 to massively reduce the size of the # debug symbols (4.3GB to 700M at time of writing) -- 2.44.0
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#109766): https://lists.openembedded.org/g/openembedded-devel/message/109766
> Mute This Topic: https://lists.openembedded.org/mt/105250406/3617156
> Group Owner: openembedded-devel+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [martin.jansa@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2024-04-02 18:09 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <17C1E85F8DD9714E.22094@lists.openembedded.org>
2024-03-31 17:08 ` [oe] [meta-oe][PATCHv2] webkitgtk3: update 2.42.5 -> 2.44.0 Markus Volk
2024-04-01 7:50 ` Khem Raj
2024-04-01 13:38 ` Markus Volk
[not found] ` <17C22B88C498BBBF.16687@lists.openembedded.org>
2024-04-01 15:00 ` Markus Volk
2024-04-02 18:09 ` Martin Jansa
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.