From patchwork Fri Jul 12 06:04:32 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Changqing Li X-Patchwork-Id: 46230 X-Patchwork-Delegate: steve@sakoman.com Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 45CF7C41513 for ; Fri, 12 Jul 2024 06:04:40 +0000 (UTC) Received: from mx0b-0064b401.pphosted.com (mx0b-0064b401.pphosted.com [205.220.178.238]) by mx.groups.io with SMTP id smtpd.web11.1592.1720764276959972024 for ; Thu, 11 Jul 2024 23:04:37 -0700 Authentication-Results: mx.groups.io; dkim=none (message not signed); spf=permerror, err=parse error for token &{10 18 %{ir}.%{v}.%{d}.spf.has.pphosted.com}: invalid domain name (domain: windriver.com, ip: 205.220.178.238, mailfrom: prvs=7923e07da7=changqing.li@windriver.com) Received: from pps.filterd (m0250811.ppops.net [127.0.0.1]) by mx0a-0064b401.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 46C4iJjE018203 for ; Fri, 12 Jul 2024 06:04:36 GMT Received: from ala-exchng02.corp.ad.wrs.com (ala-exchng02.wrs.com [147.11.82.254]) by mx0a-0064b401.pphosted.com (PPS) with ESMTPS id 406u4x5p5y-7 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT) for ; Fri, 12 Jul 2024 06:04:36 +0000 (GMT) Received: from ala-exchng01.corp.ad.wrs.com (147.11.82.252) by ALA-EXCHNG02.corp.ad.wrs.com (147.11.82.254) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Thu, 11 Jul 2024 23:04:35 -0700 Received: from pek-lpg-core2.wrs.com (128.224.153.41) by ala-exchng01.corp.ad.wrs.com (147.11.82.252) with Microsoft SMTP Server id 15.1.2507.39 via Frontend Transport; Thu, 11 Jul 2024 23:04:34 -0700 From: To: Subject: [scarthgap][PATCH V2 1/2] webkitgtk: fix do_configure error on beaglebone-yocto Date: Fri, 12 Jul 2024 14:04:32 +0800 Message-ID: <20240712060433.4022435-1-changqing.li@windriver.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 X-Proofpoint-ORIG-GUID: 4OHx9SujrKMSgVPYrpzhpbTMIBrLjM07 X-Proofpoint-GUID: 4OHx9SujrKMSgVPYrpzhpbTMIBrLjM07 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.680,FMLib:17.12.28.16 definitions=2024-07-12_03,2024-07-11_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 mlxscore=0 adultscore=0 malwarescore=0 bulkscore=0 clxscore=1015 spamscore=0 mlxlogscore=999 priorityscore=1501 lowpriorityscore=0 suspectscore=0 phishscore=0 impostorscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.21.0-2406140001 definitions=main-2407120040 List-Id: X-Webhook-Received: from li982-79.members.linode.com [45.33.32.79] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Fri, 12 Jul 2024 06:04:40 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/201802 From: Changqing Li * According to latest comment [1] and the mentioned pull request [2], build an ENABLE(WEBASSEMBLY) && !ENABLE(JIT) configuration is supported, so original issue already fixed in current version, the EXTRA_OECMAKE setting is not needed anymore. * This EXTRA_OECMAKE setting causes following configure error on beaglebone-yocto, remove the setting to let the configure process decide the configuration: CMake Error at Source/cmake/WebKitFeatures.cmake:312 (message): ENABLE_JIT conflicts with ENABLE_C_LOOP. You must disable one or the other. [YOCTO #15254] [1] https://github.com/WebKit/WebKit/pull/17447 [2] https://github.com/WebKit/WebKit/pull/17688 Signed-off-by: Changqing Li --- meta/recipes-sato/webkit/webkitgtk_2.44.1.bb | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/meta/recipes-sato/webkit/webkitgtk_2.44.1.bb b/meta/recipes-sato/webkit/webkitgtk_2.44.1.bb index 29e12bb8c5..14f7531549 100644 --- a/meta/recipes-sato/webkit/webkitgtk_2.44.1.bb +++ b/meta/recipes-sato/webkit/webkitgtk_2.44.1.bb @@ -114,18 +114,6 @@ EXTRA_OECMAKE:append:armv4 = " -DENABLE_JIT=OFF " EXTRA_OECMAKE:append:armv5 = " -DENABLE_JIT=OFF " EXTRA_OECMAKE:append:armv6 = " -DENABLE_JIT=OFF " -# And for armv7* don't enable it for softfp, because after: -# https://github.com/WebKit/WebKit/commit/a2ec4ef1997d6fafa6ffc607bffb54e76168a918 -# https://bugs.webkit.org/show_bug.cgi?id=242172 -# softfp armv7* fails because WEBASSEMBLY is left enabled by default and JIT gets -# explicitly disabled causing: -# http://errors.yoctoproject.org/Errors/Details/734587/ -# PR was sent upstream, but the end result is the same both JIT and WEBASSEMBLY disabled -# https://github.com/WebKit/WebKit/pull/17447 -EXTRA_OECMAKE:append:armv7a = " -DENABLE_JIT=${@bb.utils.contains('TUNE_FEATURES', 'callconvention-hard', 'ON', 'OFF', d)}" -EXTRA_OECMAKE:append:armv7r = " -DENABLE_JIT=${@bb.utils.contains('TUNE_FEATURES', 'callconvention-hard', 'ON', 'OFF', d)}" -EXTRA_OECMAKE:append:armv7ve = " -DENABLE_JIT=${@bb.utils.contains('TUNE_FEATURES', 'callconvention-hard', 'ON', 'OFF', d)}" - EXTRA_OECMAKE:append:mipsarch = " -DUSE_LD_GOLD=OFF " EXTRA_OECMAKE:append:powerpc = " -DUSE_LD_GOLD=OFF " From patchwork Fri Jul 12 06:04:33 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Changqing Li X-Patchwork-Id: 46231 X-Patchwork-Delegate: steve@sakoman.com Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 44CA1C3DA45 for ; Fri, 12 Jul 2024 06:04:40 +0000 (UTC) Received: from mx0b-0064b401.pphosted.com (mx0b-0064b401.pphosted.com [205.220.178.238]) by mx.groups.io with SMTP id smtpd.web10.1621.1720764278141380216 for ; Thu, 11 Jul 2024 23:04:38 -0700 Authentication-Results: mx.groups.io; dkim=none (message not signed); spf=permerror, err=parse error for token &{10 18 %{ir}.%{v}.%{d}.spf.has.pphosted.com}: invalid domain name (domain: windriver.com, ip: 205.220.178.238, mailfrom: prvs=7923e07da7=changqing.li@windriver.com) Received: from pps.filterd (m0250811.ppops.net [127.0.0.1]) by mx0a-0064b401.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 46C4iJjG018203 for ; Fri, 12 Jul 2024 06:04:37 GMT Received: from ala-exchng02.corp.ad.wrs.com (ala-exchng02.wrs.com [147.11.82.254]) by mx0a-0064b401.pphosted.com (PPS) with ESMTPS id 406u4x5p5y-9 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT) for ; Fri, 12 Jul 2024 06:04:37 +0000 (GMT) Received: from ala-exchng01.corp.ad.wrs.com (147.11.82.252) by ALA-EXCHNG02.corp.ad.wrs.com (147.11.82.254) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Thu, 11 Jul 2024 23:04:36 -0700 Received: from pek-lpg-core2.wrs.com (128.224.153.41) by ala-exchng01.corp.ad.wrs.com (147.11.82.252) with Microsoft SMTP Server id 15.1.2507.39 via Frontend Transport; Thu, 11 Jul 2024 23:04:35 -0700 From: To: Subject: [scarthgap][PATCH V2 2/2] webkitgtk: fix do_compile errors on beaglebone-yocto Date: Fri, 12 Jul 2024 14:04:33 +0800 Message-ID: <20240712060433.4022435-2-changqing.li@windriver.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20240712060433.4022435-1-changqing.li@windriver.com> References: <20240712060433.4022435-1-changqing.li@windriver.com> MIME-Version: 1.0 X-Proofpoint-ORIG-GUID: fiWGW6zBHTzFOfPtOD6gsr6nLLOhCb0j X-Proofpoint-GUID: fiWGW6zBHTzFOfPtOD6gsr6nLLOhCb0j X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.680,FMLib:17.12.28.16 definitions=2024-07-12_03,2024-07-11_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 mlxscore=0 adultscore=0 malwarescore=0 bulkscore=0 clxscore=1015 spamscore=0 mlxlogscore=999 priorityscore=1501 lowpriorityscore=0 suspectscore=0 phishscore=0 impostorscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.21.0-2406140001 definitions=main-2407120040 List-Id: X-Webhook-Received: from li982-79.members.linode.com [45.33.32.79] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Fri, 12 Jul 2024 06:04:40 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/201803 From: Changqing Li 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 --- ...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 +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 +--- + 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 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 +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 +--- + .../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(*data.lightSource)) { + neonData.flags |= FLAG_POINT_LIGHT; +- auto& pointLightSource = downcast(*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(*data.lightSource)) { + neonData.flags |= FLAG_SPOT_LIGHT; +- auto& spotLightSource = downcast(*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"