mirror of
git://git.yoctoproject.org/poky.git
synced 2025-07-19 21:09:03 +02:00
webkitgtk: upgrade 2.48.0 -> 2.48.1
Includes fix for CVE-2024-54551, CVE-2025-24208,CVE-2025-24209, CVE-2025-24213, CVE-2025-24216, CVE-2025-24264 and CVE-2025-30427 Changelog: ========= - Limit the data stored in session state. - Remove the empty area below the title bar in Web Inspector when not docked. - Fix the build with GST_DISABLE_GST_DEBUG. - Fix the build with GStreamer < 1.20. - Fix the build with video disabled. - Fix the build with clang 20. Drop 0001-EnumTraits.h-error-no-matching-function-for-call-to-.patch and 0001-Cherry-pick-292304-main-7ffc29624258-.-https-bugs.we.patch which are part of upgrade. (From OE-Core rev: f03c7c572e3dcc1d1966e76b7a73df6e96ee0df1) Signed-off-by: Yogita Urade <yogita.urade@windriver.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
ff121ad52f
commit
f7d2280d04
|
@ -1,75 +0,0 @@
|
||||||
From 83093455d02d73a327cea502d974aac82b59ad17 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Adrian Perez de Castro <aperez@igalia.com>
|
|
||||||
Date: Tue, 18 Mar 2025 07:39:01 -0700
|
|
||||||
Subject: [PATCH] Cherry-pick 292304@main (7ffc29624258).
|
|
||||||
https://bugs.webkit.org/show_bug.cgi?id=289953
|
|
||||||
|
|
||||||
[GTK][WPE] Use _LIBCPP_HARDENING_MODE with newer libc++ versions
|
|
||||||
https://bugs.webkit.org/show_bug.cgi?id=289953
|
|
||||||
|
|
||||||
Reviewed by Alicia Boya Garcia.
|
|
||||||
|
|
||||||
* Source/cmake/OptionsCommon.cmake: Add a new check for the libc++
|
|
||||||
version, if it is 19 or newer, use the new _LIBCPP_HARDENING_MODE
|
|
||||||
macro, otherwise for older versions keep _LIBCPP_ENABLE_ASSERTIONS.
|
|
||||||
|
|
||||||
Canonical link: https://commits.webkit.org/292304@main
|
|
||||||
|
|
||||||
Upstream-Status: Backport [https://github.com/WebKit/WebKit/commit/2c105443d41e5ce3de3a4cac2ed8a07ebd134459]
|
|
||||||
|
|
||||||
Canonical link: https://commits.webkit.org/290945.71@webkitglib/2.48
|
|
||||||
|
|
||||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
||||||
---
|
|
||||||
Source/cmake/OptionsCommon.cmake | 24 +++++++++++++++++++-----
|
|
||||||
1 file changed, 19 insertions(+), 5 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/Source/cmake/OptionsCommon.cmake b/Source/cmake/OptionsCommon.cmake
|
|
||||||
index f6cf5ee..3178674 100644
|
|
||||||
--- a/Source/cmake/OptionsCommon.cmake
|
|
||||||
+++ b/Source/cmake/OptionsCommon.cmake
|
|
||||||
@@ -229,8 +229,22 @@ set(CXX_STDLIB_TEST_SOURCE "
|
|
||||||
")
|
|
||||||
check_cxx_source_compiles("${CXX_STDLIB_TEST_SOURCE}" CXX_STDLIB_IS_LIBCPP)
|
|
||||||
if (CXX_STDLIB_IS_LIBCPP)
|
|
||||||
- set(CXX_STDLIB_VARIANT "LIBCPP")
|
|
||||||
- set(CXX_STDLIB_ASSERTIONS_MACRO _LIBCPP_ENABLE_ASSERTIONS)
|
|
||||||
+ set(CXX_STDLIB_TEST_SOURCE "
|
|
||||||
+ #include <utility>
|
|
||||||
+ #if _LIBCPP_VERSION >= 190000
|
|
||||||
+ int main() { }
|
|
||||||
+ #else
|
|
||||||
+ #error libc++ is older than 19.x
|
|
||||||
+ #endif
|
|
||||||
+ ")
|
|
||||||
+ check_cxx_source_compiles("${CXX_STDLIB_TEST_SOURCE}" CXX_STDLIB_IS_LIBCPP_19_OR_NEWER)
|
|
||||||
+ if (CXX_STDLIB_IS_LIBCPP_19_OR_NEWER)
|
|
||||||
+ set(CXX_STDLIB_VARIANT "LIBCPP 19+")
|
|
||||||
+ set(CXX_STDLIB_ASSERTIONS_MACRO _LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_EXTENSIVE)
|
|
||||||
+ else ()
|
|
||||||
+ set(CXX_STDLIB_VARIANT "LIBCPP <19")
|
|
||||||
+ set(CXX_STDLIB_ASSERTIONS_MACRO _LIBCPP_ENABLE_ASSERTIONS=1)
|
|
||||||
+ endif ()
|
|
||||||
else ()
|
|
||||||
set(CXX_STDLIB_TEST_SOURCE "
|
|
||||||
#include <utility>
|
|
||||||
@@ -239,7 +253,7 @@ else ()
|
|
||||||
check_cxx_source_compiles("${CXX_STDLIB_TEST_SOURCE}" CXX_STDLIB_IS_GLIBCXX)
|
|
||||||
if (CXX_STDLIB_IS_GLIBCXX)
|
|
||||||
set(CXX_STDLIB_VARIANT "GLIBCXX")
|
|
||||||
- set(CXX_STDLIB_ASSERTIONS_MACRO _GLIBCXX_ASSERTIONS)
|
|
||||||
+ set(CXX_STDLIB_ASSERTIONS_MACRO _GLIBCXX_ASSERTIONS=1)
|
|
||||||
endif ()
|
|
||||||
endif ()
|
|
||||||
message(STATUS "C++ standard library in use: ${CXX_STDLIB_VARIANT}")
|
|
||||||
@@ -255,8 +269,8 @@ option(USE_CXX_STDLIB_ASSERTIONS
|
|
||||||
|
|
||||||
if (USE_CXX_STDLIB_ASSERTIONS)
|
|
||||||
if (CXX_STDLIB_ASSERTIONS_MACRO)
|
|
||||||
- message(STATUS " Assertions enabled, ${CXX_STDLIB_ASSERTIONS_MACRO}=1")
|
|
||||||
- add_compile_definitions("${CXX_STDLIB_ASSERTIONS_MACRO}=1")
|
|
||||||
+ message(STATUS " Assertions enabled, ${CXX_STDLIB_ASSERTIONS_MACRO}")
|
|
||||||
+ add_compile_definitions("${CXX_STDLIB_ASSERTIONS_MACRO}")
|
|
||||||
else ()
|
|
||||||
message(STATUS " Assertions disabled, CXX_STDLIB_ASSERTIONS_MACRO undefined")
|
|
||||||
endif ()
|
|
|
@ -1,77 +0,0 @@
|
||||||
From 7d159a631ae55c10a0b7a92cf031200a11629736 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Fujii Hironori <Hironori.Fujii@sony.com>
|
|
||||||
Date: Tue, 18 Mar 2025 10:25:47 +0900
|
|
||||||
Subject: [PATCH] EnumTraits.h: error: no matching function for call to
|
|
||||||
'enumName' with Clang 20 https://bugs.webkit.org/show_bug.cgi?id=289669
|
|
||||||
|
|
||||||
Reviewed by NOBODY (OOPS!).
|
|
||||||
|
|
||||||
Clang 20 couldn't compile EnumTraits.h.
|
|
||||||
|
|
||||||
> wtf/EnumTraits.h:212:33: note: candidate template ignored: invalid explicitly-specified argument for template parameter 'V'
|
|
||||||
|
|
||||||
An invalid enum value can't be specifed to the template parameter `V`.
|
|
||||||
|
|
||||||
> template<auto V> constexpr std::span<const char> enumName()
|
|
||||||
|
|
||||||
The upstream Magic Enum C++ has a template variable `is_enum_constexpr_static_cast_valid<E, V>` to check a enum value is valid.
|
|
||||||
<https://github.com/Neargye/magic_enum/blob/a413fcc9c46a020a746907136a384c227f3cd095/include/magic_enum/magic_enum.hpp#L624-L634>
|
|
||||||
|
|
||||||
Imported the template variable.
|
|
||||||
|
|
||||||
* Source/WTF/wtf/EnumTraits.h:
|
|
||||||
(WTF::enumName):
|
|
||||||
(WTF::makeEnumNames):
|
|
||||||
|
|
||||||
Upstream-Status: Submitted [https://github.com/WebKit/WebKit/pull/42597]
|
|
||||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
||||||
---
|
|
||||||
Source/WTF/wtf/EnumTraits.h | 21 ++++++++++++++++++++-
|
|
||||||
1 file changed, 20 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/Source/WTF/wtf/EnumTraits.h b/Source/WTF/wtf/EnumTraits.h
|
|
||||||
index 0d33e39a..95e6318b 100644
|
|
||||||
--- a/Source/WTF/wtf/EnumTraits.h
|
|
||||||
+++ b/Source/WTF/wtf/EnumTraits.h
|
|
||||||
@@ -152,6 +152,16 @@ constexpr bool isZeroBasedContiguousEnum()
|
|
||||||
#pragma clang diagnostic ignored "-Wenum-constexpr-conversion"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
+#if COMPILER(CLANG) && __clang_major__ >= 16
|
|
||||||
+template <typename E, auto V, typename = void>
|
|
||||||
+inline constexpr bool isEnumConstexprStaticCastValid = false;
|
|
||||||
+template <typename E, auto V>
|
|
||||||
+inline constexpr bool isEnumConstexprStaticCastValid<E, V, std::void_t<std::integral_constant<E, static_cast<E>(V)>>> = true;
|
|
||||||
+#else
|
|
||||||
+template <typename, auto>
|
|
||||||
+inline constexpr bool isEnumConstexprStaticCastValid = true;
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
template<typename E>
|
|
||||||
constexpr std::span<const char> enumTypeNameImpl()
|
|
||||||
{
|
|
||||||
@@ -215,6 +225,15 @@ constexpr std::span<const char> enumName()
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
+template<typename E, auto V>
|
|
||||||
+constexpr std::span<const char> enumName()
|
|
||||||
+{
|
|
||||||
+ if constexpr (isEnumConstexprStaticCastValid<E, V>)
|
|
||||||
+ return enumName<static_cast<E>(V)>();
|
|
||||||
+ else
|
|
||||||
+ return { };
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
template<typename E>
|
|
||||||
constexpr std::underlying_type_t<E> enumNamesMin()
|
|
||||||
{
|
|
||||||
@@ -264,7 +283,7 @@ constexpr auto makeEnumNames(std::index_sequence<Is...>)
|
|
||||||
{
|
|
||||||
constexpr auto min = enumNamesMin<E>();
|
|
||||||
return std::array<std::span<const char>, sizeof...(Is)> {
|
|
||||||
- enumName<static_cast<E>(static_cast<std::underlying_type_t<E>>(Is) + min)>()...
|
|
||||||
+ enumName<E, static_cast<std::underlying_type_t<E>>(Is) + min>()...
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
|
@ -16,12 +16,10 @@ SRC_URI = "https://www.webkitgtk.org/releases/${BPN}-${PV}.tar.xz \
|
||||||
file://no-musttail-arm.patch \
|
file://no-musttail-arm.patch \
|
||||||
file://t6-not-declared.patch \
|
file://t6-not-declared.patch \
|
||||||
file://sys_futex.patch \
|
file://sys_futex.patch \
|
||||||
file://0001-EnumTraits.h-error-no-matching-function-for-call-to-.patch \
|
|
||||||
file://0001-Cherry-pick-292304-main-7ffc29624258-.-https-bugs.we.patch \
|
|
||||||
file://0001-Fix-build-errors-on-RISCV-https-bugs.webkit.org-show.patch \
|
file://0001-Fix-build-errors-on-RISCV-https-bugs.webkit.org-show.patch \
|
||||||
file://fix-ftbfs-riscv64.patch \
|
file://fix-ftbfs-riscv64.patch \
|
||||||
"
|
"
|
||||||
SRC_URI[sha256sum] = "94904a55cf12d44a4e36ceadafff02d46da73d76be9b4769f34cbfdf0eebf88e"
|
SRC_URI[sha256sum] = "98efdf21c4cdca0fe0b73ab5a8cb52093b5aa52d9b1b016a93f71dbfa1eb258f"
|
||||||
|
|
||||||
inherit cmake pkgconfig gobject-introspection perlnative features_check upstream-version-is-even gi-docgen
|
inherit cmake pkgconfig gobject-introspection perlnative features_check upstream-version-is-even gi-docgen
|
||||||
|
|
Loading…
Reference in New Issue
Block a user