diff options
| author | Changqing Li <changqing.li@windriver.com> | 2024-07-12 14:04:33 +0800 |
|---|---|---|
| committer | Steve Sakoman <steve@sakoman.com> | 2024-07-17 05:36:14 -0700 |
| commit | a099b484c5b245a335a5ec9b293638e1362383ae (patch) | |
| tree | 8002c1d45ec4ac3a5c823d7f8485cea32141be97 /meta/recipes-sato | |
| parent | f6f743c0c7903fbfecbe921d22411dc9bd178192 (diff) | |
| download | poky-a099b484c5b245a335a5ec9b293638e1362383ae.tar.gz | |
webkitgtk: fix do_compile errors on beaglebone-yocto
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&);
(From OE-Core rev: bf3fe8c01c5cc00ada22049f4f0abb485e2a626f)
Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Diffstat (limited to 'meta/recipes-sato')
3 files changed, 111 insertions, 0 deletions
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 @@ | |||
| 1 | From dbd1a59b239b3902e717fdeb063883dbb0b06ee9 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Adrian Perez de Castro <aperez@igalia.com> | ||
| 3 | Date: Sun, 26 May 2024 14:24:35 -0700 | ||
| 4 | Subject: [PATCH 1/2] Remove ARM-specific declarations in FELighting.h unneeded | ||
| 5 | after 272873@main | ||
| 6 | |||
| 7 | Unreviewed build fix. | ||
| 8 | |||
| 9 | * Source/WebCore/platform/graphics/filters/FELighting.h: Remove unneeded | ||
| 10 | declarations for the getPowerCoefficients() and platformApplyNeon() | ||
| 11 | functions, which are now defined elsewhere; and were causing a build | ||
| 12 | failure due to usage of the protected LightingData type. | ||
| 13 | |||
| 14 | Canonical link: https://commits.webkit.org/279334@main | ||
| 15 | |||
| 16 | Backport this patch for fixing following compile error: | ||
| 17 | webkitgtk-2.44.1/Source/WebCore/platform/graphics/filters/FELighting.h:73:41: error: 'LightingData' does not name a type | ||
| 18 | 73 | inline void platformApplyNeon(const LightingData&, const LightSource::PaintingData&); | ||
| 19 | |||
| 20 | Upstream-Status: Backport [https://github.com/WebKit/WebKit/commit/36d1b5d7c0ef9a733ee8055b1f35b1d24435d538] | ||
| 21 | Signed-off-by: Changqing Li <changqing.li@windriver.com> | ||
| 22 | --- | ||
| 23 | Source/WebCore/platform/graphics/filters/FELighting.h | 5 ----- | ||
| 24 | 1 file changed, 5 deletions(-) | ||
| 25 | |||
| 26 | diff --git a/Source/WebCore/platform/graphics/filters/FELighting.h b/Source/WebCore/platform/graphics/filters/FELighting.h | ||
| 27 | index 4efab920..dcd80b6f 100644 | ||
| 28 | --- a/Source/WebCore/platform/graphics/filters/FELighting.h | ||
| 29 | +++ b/Source/WebCore/platform/graphics/filters/FELighting.h | ||
| 30 | @@ -68,11 +68,6 @@ protected: | ||
| 31 | |||
| 32 | std::unique_ptr<FilterEffectApplier> createSoftwareApplier() const override; | ||
| 33 | |||
| 34 | -#if CPU(ARM_NEON) && CPU(ARM_TRADITIONAL) && COMPILER(GCC_COMPATIBLE) | ||
| 35 | - static int getPowerCoefficients(float exponent); | ||
| 36 | - inline void platformApplyNeon(const LightingData&, const LightSource::PaintingData&); | ||
| 37 | -#endif | ||
| 38 | - | ||
| 39 | Color m_lightingColor; | ||
| 40 | float m_surfaceScale; | ||
| 41 | float m_diffuseConstant; | ||
| 42 | -- | ||
| 43 | 2.25.1 | ||
| 44 | |||
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 @@ | |||
| 1 | From 88fa4b49a10ecfb74c36c678c1e2b76136357153 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Changqing Li <changqing.li@windriver.com> | ||
| 3 | Date: Fri, 12 Jul 2024 10:16:05 +0800 | ||
| 4 | Subject: [PATCH 2/2] More dynamicDowncast<> adoption in platform code | ||
| 5 | |||
| 6 | Backport part of commit [90d13e7 More dynamicDowncast<> adoption in | ||
| 7 | platform code] to fix following compile error for ARM_NEON: | ||
| 8 | 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'? | ||
| 9 | 545 | if (data.lightSource->type() == LS_POINT) { | ||
| 10 | | ^~~~~~~~ | ||
| 11 | | WebCore::LightType::LS_POINT | ||
| 12 | |||
| 13 | Upstream-Status: Backport [https://github.com/WebKit/WebKit/commit/90d13e77ab2192b7efa8e763eeb8b08dbbb6d5c3] | ||
| 14 | |||
| 15 | Signed-off-by: Changqing Li <changqing.li@windriver.com> | ||
| 16 | --- | ||
| 17 | .../filters/FELightingNeonParallelApplier.cpp | 22 +++++++++---------- | ||
| 18 | 1 file changed, 10 insertions(+), 12 deletions(-) | ||
| 19 | |||
| 20 | diff --git a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNeonParallelApplier.cpp b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNeonParallelApplier.cpp | ||
| 21 | index 04d855fa..dccc003d 100644 | ||
| 22 | --- a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNeonParallelApplier.cpp | ||
| 23 | +++ b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNeonParallelApplier.cpp | ||
| 24 | @@ -542,19 +542,17 @@ void FELightingNeonParallelApplier::applyPlatformParallel(const LightingData& da | ||
| 25 | floatArguments.colorBlue = color.blue; | ||
| 26 | floatArguments.padding4 = 0; | ||
| 27 | |||
| 28 | - if (data.lightSource->type() == LS_POINT) { | ||
| 29 | + if (auto* pointLightSource = dynamicDowncast<PointLightSource>(*data.lightSource)) { | ||
| 30 | neonData.flags |= FLAG_POINT_LIGHT; | ||
| 31 | - auto& pointLightSource = downcast<PointLightSource>(*data.lightSource); | ||
| 32 | - floatArguments.lightX = pointLightSource.position().x(); | ||
| 33 | - floatArguments.lightY = pointLightSource.position().y(); | ||
| 34 | - floatArguments.lightZ = pointLightSource.position().z(); | ||
| 35 | + floatArguments.lightX = pointLightSource->position().x(); | ||
| 36 | + floatArguments.lightY = pointLightSource->position().y(); | ||
| 37 | + floatArguments.lightZ = pointLightSource->position().z(); | ||
| 38 | floatArguments.padding2 = 0; | ||
| 39 | - } else if (data.lightSource->type() == LS_SPOT) { | ||
| 40 | + } else if (auto* spotLightSource = dynamicDowncast<SpotLightSource>(*data.lightSource)) { | ||
| 41 | neonData.flags |= FLAG_SPOT_LIGHT; | ||
| 42 | - auto& spotLightSource = downcast<SpotLightSource>(*data.lightSource); | ||
| 43 | - floatArguments.lightX = spotLightSource.position().x(); | ||
| 44 | - floatArguments.lightY = spotLightSource.position().y(); | ||
| 45 | - floatArguments.lightZ = spotLightSource.position().z(); | ||
| 46 | + floatArguments.lightX = spotLightSource->position().x(); | ||
| 47 | + floatArguments.lightY = spotLightSource->position().y(); | ||
| 48 | + floatArguments.lightZ = spotLightSource->position().z(); | ||
| 49 | floatArguments.padding2 = 0; | ||
| 50 | |||
| 51 | floatArguments.directionX = paintingData.directionVector.x(); | ||
| 52 | @@ -565,8 +563,8 @@ void FELightingNeonParallelApplier::applyPlatformParallel(const LightingData& da | ||
| 53 | floatArguments.coneCutOffLimit = paintingData.coneCutOffLimit; | ||
| 54 | floatArguments.coneFullLight = paintingData.coneFullLight; | ||
| 55 | floatArguments.coneCutOffRange = paintingData.coneCutOffLimit - paintingData.coneFullLight; | ||
| 56 | - neonData.coneExponent = getPowerCoefficients(spotLightSource.specularExponent()); | ||
| 57 | - if (spotLightSource.specularExponent() == 1) | ||
| 58 | + neonData.coneExponent = getPowerCoefficients(spotLightSource->specularExponent()); | ||
| 59 | + if (spotLightSource->specularExponent() == 1) | ||
| 60 | neonData.flags |= FLAG_CONE_EXPONENT_IS_1; | ||
| 61 | } else { | ||
| 62 | ASSERT(data.lightSource->type() == LS_DISTANT); | ||
| 63 | -- | ||
| 64 | 2.25.1 | ||
| 65 | |||
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 \ | |||
| 16 | file://no-musttail-arm.patch \ | 16 | file://no-musttail-arm.patch \ |
| 17 | file://t6-not-declared.patch \ | 17 | file://t6-not-declared.patch \ |
| 18 | file://30e1d5e22213fdaca2a29ec3400c927d710a37a8.patch \ | 18 | file://30e1d5e22213fdaca2a29ec3400c927d710a37a8.patch \ |
| 19 | file://0001-Remove-ARM-specific-declarations-in-FELighting.h-unn.patch \ | ||
| 20 | file://0002-More-dynamicDowncast-adoption-in-platform-code.patch \ | ||
| 19 | " | 21 | " |
| 20 | SRC_URI[sha256sum] = "425b1459b0f04d0600c78d1abb5e7edfa3c060a420f8b231e9a6a2d5d29c5561" | 22 | SRC_URI[sha256sum] = "425b1459b0f04d0600c78d1abb5e7edfa3c060a420f8b231e9a6a2d5d29c5561" |
| 21 | 23 | ||
