summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGyorgy Sarvari <skandigraun@gmail.com>2026-02-16 13:06:42 +0100
committerKhem Raj <raj.khem@gmail.com>2026-02-16 10:25:50 -0800
commit27edae565fecfa137b64e8d783c80e93915bb6a4 (patch)
tree45adad00921543ac53d7efd2553da94cc31d7320
parent5b830f4539e4b0d446ae5dfb523eda17d29e4223 (diff)
downloadmeta-openembedded-27edae565fecfa137b64e8d783c80e93915bb6a4.tar.gz
webkitgtk3: upgrade 2.48.7 -> 2.50.5
Includes fixes for CVE-2025-13502, CVE-2025-13947, CVE-2025-43421, CVE-2025-43458 and CVE-2025-66287. Drop libsoup2 support. Even though this particular version still supports it, this is the last major version that is not libsoup3-only. Starting with version 2.52 (which is only 3-4 weeks away at the time of writing this message) upstream is dropping libsoup2 support completely[1]. This is a proactive removal of this feature, the sooner users start the migration, the better. Made opengl a mandatory DISTRO_FEATURE: libepoxy requires it, which is both a direct dependency, and an indirect one from gtk+3. Changelogs: https://webkitgtk.org/2026/02/09/webkitgtk2.50.5-released.html https://webkitgtk.org/2025/12/16/webkitgtk2.50.4-released.html https://webkitgtk.org/2025/12/04/webkitgtk2.50.3-released.html https://webkitgtk.org/2025/11/19/webkitgtk2.50.2-released.html https://webkitgtk.org/2025/10/10/webkitgtk2.50.1-released.html https://webkitgtk.org/2025/09/17/webkitgtk2.50.0-released.html [1]: https://webkitgtk.org/2025/10/07/webkitgtk-soup2-deprecation.html Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
-rw-r--r--meta-oe/recipes-support/webkitgtk/webkitgtk3/no-musttail-arm.patch12
-rw-r--r--meta-oe/recipes-support/webkitgtk/webkitgtk3_2.50.5.bb (renamed from meta-oe/recipes-support/webkitgtk/webkitgtk3_2.48.7.bb)17
2 files changed, 15 insertions, 14 deletions
diff --git a/meta-oe/recipes-support/webkitgtk/webkitgtk3/no-musttail-arm.patch b/meta-oe/recipes-support/webkitgtk/webkitgtk3/no-musttail-arm.patch
index 367e6b8342..411164433a 100644
--- a/meta-oe/recipes-support/webkitgtk/webkitgtk3/no-musttail-arm.patch
+++ b/meta-oe/recipes-support/webkitgtk/webkitgtk3/no-musttail-arm.patch
@@ -23,12 +23,12 @@ diff --git a/Source/WTF/wtf/Compiler.h b/Source/WTF/wtf/Compiler.h
23index 16e416d..68dd9a0 100644 23index 16e416d..68dd9a0 100644
24--- a/Source/WTF/wtf/Compiler.h 24--- a/Source/WTF/wtf/Compiler.h
25+++ b/Source/WTF/wtf/Compiler.h 25+++ b/Source/WTF/wtf/Compiler.h
26@@ -293,7 +293,7 @@ 26@@ -290,7 +290,7 @@
27 #if COMPILER(CLANG) 27 // written for 64-bit may fail to tail call on 32-bit.
28 #if __SIZEOF_POINTER__ == 8 28 // It also doesn't work on ppc64le: https://github.com/llvm/llvm-project/issues/98859
29 #if !defined(MUST_TAIL_CALL) && defined(__cplusplus) && defined(__has_cpp_attribute) 29 // and on Windows: https://github.com/llvm/llvm-project/issues/116568
30-#if __has_cpp_attribute(clang::musttail) && !defined(__powerpc__) && !defined(_WIN32) 30-#if !defined(MUST_TAIL_CALL) && COMPILER(CLANG) && __SIZEOF_POINTER__ == 8 && defined(__cplusplus) && COMPILER_HAS_CPP_ATTRIBUTE(clang::musttail) && !defined(__powerpc__) && !defined(_WIN32)
31+#if __has_cpp_attribute(clang::musttail) && !defined(__powerpc__) && !defined(_WIN32) && !defined(__arm__) 31+#if !defined(MUST_TAIL_CALL) && COMPILER(CLANG) && __SIZEOF_POINTER__ == 8 && defined(__cplusplus) && COMPILER_HAS_CPP_ATTRIBUTE(clang::musttail) && !defined(__powerpc__) && !defined(_WIN32) && !defined(__arm__)
32 #define MUST_TAIL_CALL [[clang::musttail]] 32 #define MUST_TAIL_CALL [[clang::musttail]]
33 #define HAVE_MUST_TAIL_CALL 1 33 #define HAVE_MUST_TAIL_CALL 1
34 #endif 34 #endif
diff --git a/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.48.7.bb b/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.50.5.bb
index 118592d42b..9be30506d6 100644
--- a/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.48.7.bb
+++ b/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.50.5.bb
@@ -23,14 +23,14 @@ SRC_URI = "https://www.webkitgtk.org/releases/webkitgtk-${PV}.tar.xz \
23 file://0001-CMake-Add-a-variable-to-control-macro-__PAS_ALWAYS_I.patch \ 23 file://0001-CMake-Add-a-variable-to-control-macro-__PAS_ALWAYS_I.patch \
24 file://0001-Fix-32bit-arm.patch \ 24 file://0001-Fix-32bit-arm.patch \
25 " 25 "
26SRC_URI[sha256sum] = "2c62aebb608e09f930a539f3623a5cc8023b5068029f42a208f45f9124da6e30" 26SRC_URI[sha256sum] = "8737631bac3e9c7ad3e5208f9370e076c09d9c45b39980021ce54edadcc6f94f"
27 27
28inherit cmake pkgconfig gobject-introspection perlnative features_check upstream-version-is-even gi-docgen 28inherit cmake pkgconfig gobject-introspection perlnative features_check upstream-version-is-even gi-docgen
29 29
30S = "${UNPACKDIR}/webkitgtk-${PV}" 30S = "${UNPACKDIR}/webkitgtk-${PV}"
31 31
32ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" 32ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
33REQUIRED_DISTRO_FEATURES = "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'opengl', '', d)}" 33REQUIRED_DISTRO_FEATURES = "opengl"
34 34
35CVE_PRODUCT = "webkitgtk webkitgtk\+" 35CVE_PRODUCT = "webkitgtk webkitgtk\+"
36 36
@@ -51,11 +51,10 @@ DEPENDS += " \
51 gstreamer1.0-plugins-base \ 51 gstreamer1.0-plugins-base \
52 glib-2.0-native \ 52 glib-2.0-native \
53 gettext-native \ 53 gettext-native \
54 libsoup \
55 libepoxy \
54 " 56 "
55 57
56# using soup2 builds (JavaScript) API version 4.0
57# using soup3 builds (JavaScript) API version 4.1
58PACKAGECONFIG_SOUP ?= "soup3"
59PACKAGECONFIG ??= " \ 58PACKAGECONFIG ??= " \
60 ${@bb.utils.filter('DISTRO_FEATURES', 'systemd wayland x11', d)} \ 59 ${@bb.utils.filter('DISTRO_FEATURES', 'systemd wayland x11', d)} \
61 ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'webgl opengl', '', d)} \ 60 ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'webgl opengl', '', d)} \
@@ -63,7 +62,6 @@ PACKAGECONFIG ??= " \
63 ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'opengl-or-es', '', d)} \ 62 ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'opengl-or-es', '', d)} \
64 enchant \ 63 enchant \
65 libsecret \ 64 libsecret \
66 ${PACKAGECONFIG_SOUP} \
67 " 65 "
68 66
69PACKAGECONFIG[wayland] = "-DENABLE_WAYLAND_TARGET=ON,-DENABLE_WAYLAND_TARGET=OFF,wayland libwpe wpebackend-fdo wayland-native" 67PACKAGECONFIG[wayland] = "-DENABLE_WAYLAND_TARGET=ON,-DENABLE_WAYLAND_TARGET=OFF,wayland libwpe wpebackend-fdo wayland-native"
@@ -83,8 +81,6 @@ PACKAGECONFIG[openjpeg] = "-DUSE_OPENJPEG=ON,-DUSE_OPENJPEG=OFF,openjpeg"
83PACKAGECONFIG[systemd] = "-DUSE_SYSTEMD=ON,-DUSE_SYSTEMD=off,systemd" 81PACKAGECONFIG[systemd] = "-DUSE_SYSTEMD=ON,-DUSE_SYSTEMD=off,systemd"
84PACKAGECONFIG[reduce-size] = "-DCMAKE_BUILD_TYPE=MinSizeRel,-DCMAKE_BUILD_TYPE=Release,," 82PACKAGECONFIG[reduce-size] = "-DCMAKE_BUILD_TYPE=MinSizeRel,-DCMAKE_BUILD_TYPE=Release,,"
85PACKAGECONFIG[lcms] = "-DUSE_LCMS=ON,-DUSE_LCMS=OFF,lcms" 83PACKAGECONFIG[lcms] = "-DUSE_LCMS=ON,-DUSE_LCMS=OFF,lcms"
86PACKAGECONFIG[soup2] = "-DUSE_SOUP2=ON,-DUSE_SOUP2=OFF,libsoup-2.4,,,soup3"
87PACKAGECONFIG[soup3] = ",,libsoup,,,soup2"
88PACKAGECONFIG[journald] = "-DENABLE_JOURNALD_LOG=ON,-DENABLE_JOURNALD_LOG=OFF,systemd" 84PACKAGECONFIG[journald] = "-DENABLE_JOURNALD_LOG=ON,-DENABLE_JOURNALD_LOG=OFF,systemd"
89PACKAGECONFIG[avif] = "-DUSE_AVIF_LOG=ON,-DUSE_AVIF=OFF,libavif" 85PACKAGECONFIG[avif] = "-DUSE_AVIF_LOG=ON,-DUSE_AVIF=OFF,libavif"
90PACKAGECONFIG[media-recorder] = "-DENABLE_MEDIA_RECORDER=ON,-DENABLE_MEDIA_RECORDER=OFF,gstreamer1.0-plugins-bad" 86PACKAGECONFIG[media-recorder] = "-DENABLE_MEDIA_RECORDER=ON,-DENABLE_MEDIA_RECORDER=OFF,gstreamer1.0-plugins-bad"
@@ -103,6 +99,7 @@ EXTRA_OECMAKE = " \
103 ${@oe.utils.vartrue('DEBUG_BUILD', '-DWEBKIT_NO_INLINE_HINTS=ON', '-DWEBKIT_NO_INLINE_HINTS=OFF', d)} \ 99 ${@oe.utils.vartrue('DEBUG_BUILD', '-DWEBKIT_NO_INLINE_HINTS=ON', '-DWEBKIT_NO_INLINE_HINTS=OFF', d)} \
104 -DENABLE_MINIBROWSER=ON \ 100 -DENABLE_MINIBROWSER=ON \
105 -DCMAKE_EXPORT_COMPILE_COMMANDS=OFF \ 101 -DCMAKE_EXPORT_COMPILE_COMMANDS=OFF \
102 -DUSE_SOUP2=OFF \
106 " 103 "
107# pass -g1 to massively reduce the size of the debug symbols (4.3GB to 700M at time of writing) 104# pass -g1 to massively reduce the size of the debug symbols (4.3GB to 700M at time of writing)
108DEBUG_LEVELFLAG = "-g1" 105DEBUG_LEVELFLAG = "-g1"
@@ -181,3 +178,7 @@ src_package_preprocess () {
181 ${B}/WebKitGTK/DerivedSources/webkit/*.cpp 178 ${B}/WebKitGTK/DerivedSources/webkit/*.cpp
182} 179}
183 180
181
182# complation fails with Clang-21 issue - https://github.com/llvm/llvm-project/issues/132322
183# Can be removed when clang is updated to v22
184TOOLCHAIN:arm = "gcc"