From: Changqing Li <[email protected]> Backport 2 patches to fix following compile errors: webkitgtk-2.44.1/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNeonParallelApplier.cpp:545:37: error: 'LS_POINT' was not declared in this scope; did you mean 'WebCore::LightType::LS_POINT'? 545 | if (data.lightSource->type() == LS_POINT) { | ^~~~~~~~ | WebCore::LightType::LS_POINT
webkitgtk-2.44.1/Source/WebCore/platform/graphics/filters/FELighting.h:73:41: error: 'LightingData' does not name a type 73 | inline void platformApplyNeon(const LightingData&, const LightSource::PaintingData&); Signed-off-by: Changqing Li <[email protected]> Signed-off-by: Steve Sakoman <[email protected]> --- ...fic-declarations-in-FELighting.h-unn.patch | 44 +++++++++++++ ...icDowncast-adoption-in-platform-code.patch | 65 +++++++++++++++++++ meta/recipes-sato/webkit/webkitgtk_2.44.1.bb | 2 + 3 files changed, 111 insertions(+) create mode 100644 meta/recipes-sato/webkit/webkitgtk/0001-Remove-ARM-specific-declarations-in-FELighting.h-unn.patch create mode 100644 meta/recipes-sato/webkit/webkitgtk/0002-More-dynamicDowncast-adoption-in-platform-code.patch diff --git a/meta/recipes-sato/webkit/webkitgtk/0001-Remove-ARM-specific-declarations-in-FELighting.h-unn.patch b/meta/recipes-sato/webkit/webkitgtk/0001-Remove-ARM-specific-declarations-in-FELighting.h-unn.patch new file mode 100644 index 0000000000..6ffe0a9454 --- /dev/null +++ b/meta/recipes-sato/webkit/webkitgtk/0001-Remove-ARM-specific-declarations-in-FELighting.h-unn.patch @@ -0,0 +1,44 @@ +From dbd1a59b239b3902e717fdeb063883dbb0b06ee9 Mon Sep 17 00:00:00 2001 +From: Adrian Perez de Castro <[email protected]> +Date: Sun, 26 May 2024 14:24:35 -0700 +Subject: [PATCH 1/2] Remove ARM-specific declarations in FELighting.h unneeded + after 272873@main + +Unreviewed build fix. + +* Source/WebCore/platform/graphics/filters/FELighting.h: Remove unneeded + declarations for the getPowerCoefficients() and platformApplyNeon() + functions, which are now defined elsewhere; and were causing a build + failure due to usage of the protected LightingData type. + +Canonical link: https://commits.webkit.org/279334@main + +Backport this patch for fixing following compile error: +webkitgtk-2.44.1/Source/WebCore/platform/graphics/filters/FELighting.h:73:41: error: 'LightingData' does not name a type + 73 | inline void platformApplyNeon(const LightingData&, const LightSource::PaintingData&); + +Upstream-Status: Backport [https://github.com/WebKit/WebKit/commit/36d1b5d7c0ef9a733ee8055b1f35b1d24435d538] +Signed-off-by: Changqing Li <[email protected]> +--- + Source/WebCore/platform/graphics/filters/FELighting.h | 5 ----- + 1 file changed, 5 deletions(-) + +diff --git a/Source/WebCore/platform/graphics/filters/FELighting.h b/Source/WebCore/platform/graphics/filters/FELighting.h +index 4efab920..dcd80b6f 100644 +--- a/Source/WebCore/platform/graphics/filters/FELighting.h ++++ b/Source/WebCore/platform/graphics/filters/FELighting.h +@@ -68,11 +68,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; +-- +2.25.1 + diff --git a/meta/recipes-sato/webkit/webkitgtk/0002-More-dynamicDowncast-adoption-in-platform-code.patch b/meta/recipes-sato/webkit/webkitgtk/0002-More-dynamicDowncast-adoption-in-platform-code.patch new file mode 100644 index 0000000000..a0c7b6bd57 --- /dev/null +++ b/meta/recipes-sato/webkit/webkitgtk/0002-More-dynamicDowncast-adoption-in-platform-code.patch @@ -0,0 +1,65 @@ +From 88fa4b49a10ecfb74c36c678c1e2b76136357153 Mon Sep 17 00:00:00 2001 +From: Changqing Li <[email protected]> +Date: Fri, 12 Jul 2024 10:16:05 +0800 +Subject: [PATCH 2/2] More dynamicDowncast<> adoption in platform code + +Backport part of commit [90d13e7 More dynamicDowncast<> adoption in +platform code] to fix following compile error for ARM_NEON: +webkitgtk-2.44.1/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNeonParallelApplier.cpp:545:37: error: 'LS_POINT' was not declared in this scope; did you mean 'WebCore::LightType::LS_POINT'? + 545 | if (data.lightSource->type() == LS_POINT) { + | ^~~~~~~~ + | WebCore::LightType::LS_POINT + +Upstream-Status: Backport [https://github.com/WebKit/WebKit/commit/90d13e77ab2192b7efa8e763eeb8b08dbbb6d5c3] + +Signed-off-by: Changqing Li <[email protected]> +--- + .../filters/FELightingNeonParallelApplier.cpp | 22 +++++++++---------- + 1 file changed, 10 insertions(+), 12 deletions(-) + +diff --git a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNeonParallelApplier.cpp b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNeonParallelApplier.cpp +index 04d855fa..dccc003d 100644 +--- a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNeonParallelApplier.cpp ++++ b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNeonParallelApplier.cpp +@@ -542,19 +542,17 @@ void FELightingNeonParallelApplier::applyPlatformParallel(const LightingData& da + floatArguments.colorBlue = color.blue; + floatArguments.padding4 = 0; + +- if (data.lightSource->type() == LS_POINT) { ++ if (auto* pointLightSource = dynamicDowncast<PointLightSource>(*data.lightSource)) { + neonData.flags |= FLAG_POINT_LIGHT; +- auto& pointLightSource = downcast<PointLightSource>(*data.lightSource); +- floatArguments.lightX = pointLightSource.position().x(); +- floatArguments.lightY = pointLightSource.position().y(); +- floatArguments.lightZ = pointLightSource.position().z(); ++ floatArguments.lightX = pointLightSource->position().x(); ++ floatArguments.lightY = pointLightSource->position().y(); ++ floatArguments.lightZ = pointLightSource->position().z(); + floatArguments.padding2 = 0; +- } else if (data.lightSource->type() == LS_SPOT) { ++ } else if (auto* spotLightSource = dynamicDowncast<SpotLightSource>(*data.lightSource)) { + neonData.flags |= FLAG_SPOT_LIGHT; +- auto& spotLightSource = downcast<SpotLightSource>(*data.lightSource); +- floatArguments.lightX = spotLightSource.position().x(); +- floatArguments.lightY = spotLightSource.position().y(); +- floatArguments.lightZ = spotLightSource.position().z(); ++ floatArguments.lightX = spotLightSource->position().x(); ++ floatArguments.lightY = spotLightSource->position().y(); ++ floatArguments.lightZ = spotLightSource->position().z(); + floatArguments.padding2 = 0; + + floatArguments.directionX = paintingData.directionVector.x(); +@@ -565,8 +563,8 @@ void FELightingNeonParallelApplier::applyPlatformParallel(const LightingData& da + floatArguments.coneCutOffLimit = paintingData.coneCutOffLimit; + floatArguments.coneFullLight = paintingData.coneFullLight; + floatArguments.coneCutOffRange = paintingData.coneCutOffLimit - paintingData.coneFullLight; +- neonData.coneExponent = getPowerCoefficients(spotLightSource.specularExponent()); +- if (spotLightSource.specularExponent() == 1) ++ neonData.coneExponent = getPowerCoefficients(spotLightSource->specularExponent()); ++ if (spotLightSource->specularExponent() == 1) + neonData.flags |= FLAG_CONE_EXPONENT_IS_1; + } else { + ASSERT(data.lightSource->type() == LS_DISTANT); +-- +2.25.1 + diff --git a/meta/recipes-sato/webkit/webkitgtk_2.44.1.bb b/meta/recipes-sato/webkit/webkitgtk_2.44.1.bb index 14f7531549..c4a3c464c1 100644 --- a/meta/recipes-sato/webkit/webkitgtk_2.44.1.bb +++ b/meta/recipes-sato/webkit/webkitgtk_2.44.1.bb @@ -16,6 +16,8 @@ SRC_URI = "https://www.webkitgtk.org/releases/${BPN}-${PV}.tar.xz \ file://no-musttail-arm.patch \ file://t6-not-declared.patch \ file://30e1d5e22213fdaca2a29ec3400c927d710a37a8.patch \ + file://0001-Remove-ARM-specific-declarations-in-FELighting.h-unn.patch \ + file://0002-More-dynamicDowncast-adoption-in-platform-code.patch \ " SRC_URI[sha256sum] = "425b1459b0f04d0600c78d1abb5e7edfa3c060a420f8b231e9a6a2d5d29c5561" -- 2.34.1
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#201886): https://lists.openembedded.org/g/openembedded-core/message/201886 Mute This Topic: https://lists.openembedded.org/mt/107213115/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
