From mboxrd@z Thu Jan 1 00:00:00 1970 Delivery-date: Fri, 11 Jul 2025 10:12:08 +0200 Received: from metis.whiteo.stw.pengutronix.de ([2a0a:edc0:2:b01:1d::104]) by lore.white.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1ua8rY-00GKaJ-2c for lore@lore.pengutronix.de; Fri, 11 Jul 2025 10:12:08 +0200 Received: from localhost ([127.0.0.1] helo=metis.whiteo.stw.pengutronix.de) by metis.whiteo.stw.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1ua8rY-0007mN-4A; Fri, 11 Jul 2025 10:12:08 +0200 Received: from dude05.red.stw.pengutronix.de ([2a0a:edc0:0:1101:1d::54]) by metis.whiteo.stw.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1ua8r6-0007FI-LT; Fri, 11 Jul 2025 10:11:40 +0200 From: Michael Tretter To: ptxdist@pengutronix.de Date: Fri, 11 Jul 2025 10:11:39 +0200 Message-Id: <20250711081140.4128890-4-m.tretter@pengutronix.de> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250711081140.4128890-1-m.tretter@pengutronix.de> References: <20250711081140.4128890-1-m.tretter@pengutronix.de> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [ptxdist] [PATCH 4/5] wpewebkit: version bump 2.42.5 -> 2.49.3 X-BeenThere: ptxdist@pengutronix.de X-Mailman-Version: 2.1.29 Precedence: list List-Id: PTXdist Development Mailing List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: ptxdist@pengutronix.de Cc: Michael Tretter Sender: "ptxdist" X-SA-Exim-Connect-IP: 127.0.0.1 X-SA-Exim-Mail-From: ptxdist-bounces@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false Building wpewebkit with ENABLE_VIDEO=OFF is broken. There are several locations that unconditionally use classes that are hidden behind `if ENABLE(VIDEO)` and the build exposes various missing definitions. As a workaround prevent the build with ENABLE_VIDEO=OFF. Disable ENABLE_WPE_PLATFORM_DRM, ENABLE_WPE_PLATFORM_HEADLESS, and ENABLE_WPE_PLATFORM_WAYLAND since they only have an effect if ENABLE_WPE_PLATFORM is ON, which is disabled as an experimental feature. The WPE Platform API is an alternative to libwpe and the WPE backends. Add libdrm as dependency and enable USE_LIBDRM, since USE_GBM has been split in USE_GBM and USE_LIBDRM to better handle code that requires DRM but not GBM. Signed-off-by: Michael Tretter --- ...uild-fix.-Remove-when-fixed-upstream.patch | 20 +++++++++ ...-Add-missing-header-PageIdentifier.h.patch | 28 +++++++++++++ patches/wpewebkit-2.49.3/series | 5 +++ rules/wpewebkit.in | 3 ++ rules/wpewebkit.make | 42 +++++++++++-------- 5 files changed, 81 insertions(+), 17 deletions(-) create mode 100644 patches/wpewebkit-2.49.3/0001-Unified-build-fix.-Remove-when-fixed-upstream.patch create mode 100644 patches/wpewebkit-2.49.3/0002-Add-missing-header-PageIdentifier.h.patch create mode 100644 patches/wpewebkit-2.49.3/series diff --git a/patches/wpewebkit-2.49.3/0001-Unified-build-fix.-Remove-when-fixed-upstream.patch b/patches/wpewebkit-2.49.3/0001-Unified-build-fix.-Remove-when-fixed-upstream.patch new file mode 100644 index 000000000000..70598993a889 --- /dev/null +++ b/patches/wpewebkit-2.49.3/0001-Unified-build-fix.-Remove-when-fixed-upstream.patch @@ -0,0 +1,20 @@ +From: Miguel Gomez +Date: Thu, 19 Jun 2025 12:45:39 +0200 +Subject: [PATCH] Unified build fix. Remove when fixed upstream + +--- + Source/WebKit/UIProcess/ProvisionalPageProxy.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/Source/WebKit/UIProcess/ProvisionalPageProxy.h b/Source/WebKit/UIProcess/ProvisionalPageProxy.h +index a1d831a61655..a0486033a6e0 100644 +--- a/Source/WebKit/UIProcess/ProvisionalPageProxy.h ++++ b/Source/WebKit/UIProcess/ProvisionalPageProxy.h +@@ -34,6 +34,7 @@ + #include "WebFramePolicyListenerProxy.h" + #include "WebPageProxyIdentifier.h" + #include "WebPageProxyMessageReceiverRegistration.h" ++#include "WebsiteDataStore.h" + #include + #include + #include diff --git a/patches/wpewebkit-2.49.3/0002-Add-missing-header-PageIdentifier.h.patch b/patches/wpewebkit-2.49.3/0002-Add-missing-header-PageIdentifier.h.patch new file mode 100644 index 000000000000..dc8d3695a9e6 --- /dev/null +++ b/patches/wpewebkit-2.49.3/0002-Add-missing-header-PageIdentifier.h.patch @@ -0,0 +1,28 @@ +From: Michael Tretter +Date: Wed, 9 Jul 2025 15:04:10 +0200 +Subject: [PATCH] Add missing header PageIdentifier.h + +Otherwise the build fails with the following error message: + + Source/WebKit/WebProcess/Storage/RemoteWorkerFrameLoaderClient.h:42:82: error: 'WebCore::PageIdentifier' has not been declared + Source/WebKit/WebProcess/Storage/RemoteWorkerFrameLoaderClient.cpp:34:1: error: no declaration matches 'WebKit::RemoteWorkerFrameLoaderClient::RemoteWorkerFrameLoaderClient(WebCore::FrameLoader&, WebKit::WebPageProxyIdentifier, WebCore::PageIdentifier, const WTF::String&)' + Source/WebKit/WebProcess/Storage/RemoteWorkerFrameLoaderClient.h:40:7: note: candidates are: 'WebKit::RemoteWorkerFrameLoaderClient::RemoteWorkerFrameLoaderClient(WebKit::RemoteWorkerFrameLoaderClient&&)' + Source/WebKit/WebProcess/Storage/RemoteWorkerFrameLoaderClient.h:40:7: note: 'WebKit::RemoteWorkerFrameLoaderClient::RemoteWorkerFrameLoaderClient(const WebKit::RemoteWorkerFrameLoaderClient&)' + Source/WebKit/WebProcess/Storage/RemoteWorkerFrameLoaderClient.h:42:5: note: 'WebKit::RemoteWorkerFrameLoaderClient::RemoteWorkerFrameLoaderClient(WebCore::FrameLoader&, WebKit::WebPageProxyIdentifier, int, const WTF::String&)' + Source/WebKit/WebProcess/Storage/RemoteWorkerFrameLoaderClient.h:40:7: note: 'class WebKit::RemoteWorkerFrameLoaderClient' defined here +--- + Source/WebKit/WebProcess/Storage/RemoteWorkerFrameLoaderClient.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/Source/WebKit/WebProcess/Storage/RemoteWorkerFrameLoaderClient.h b/Source/WebKit/WebProcess/Storage/RemoteWorkerFrameLoaderClient.h +index ca2598c047ae..08923aec5944 100644 +--- a/Source/WebKit/WebProcess/Storage/RemoteWorkerFrameLoaderClient.h ++++ b/Source/WebKit/WebProcess/Storage/RemoteWorkerFrameLoaderClient.h +@@ -26,6 +26,7 @@ + #pragma once + + #include "WebPageProxyIdentifier.h" ++#include + #include + #include + diff --git a/patches/wpewebkit-2.49.3/series b/patches/wpewebkit-2.49.3/series new file mode 100644 index 000000000000..69617ed41c5d --- /dev/null +++ b/patches/wpewebkit-2.49.3/series @@ -0,0 +1,5 @@ +# generated by git-ptx-patches +#tag:base --start-number 1 +0001-Unified-build-fix.-Remove-when-fixed-upstream.patch +0002-Add-missing-header-PageIdentifier.h.patch +# 97f2dbe9b3674b5a71d154ce895a1a6b - git-ptx-patches magic diff --git a/rules/wpewebkit.in b/rules/wpewebkit.in index 4b5de8822029..a4d29af7d1d9 100644 --- a/rules/wpewebkit.in +++ b/rules/wpewebkit.in @@ -24,9 +24,11 @@ menuconfig WPEWEBKIT select HARFBUZZ select HARFBUZZ_ICU select GLIB_NETWORKING if RUNTIME + select LIBDRM select LIBJPEG select LIBWEBP select LIBWEBP_DEMUX + select LIBWEBP_MUX select SQLITE select ZLIB select LIBPNG @@ -40,6 +42,7 @@ menuconfig WPEWEBKIT select LIBEPOXY select LIBGCRYPT select LIBTASN1 + select WPEWEBKIT_VIDEO # Build with ENABLE_VIDEO=0 is broken select OPENSSL if WPEWEBKIT_WEBRTC select GSTREAMER1 if WPEWEBKIT_VIDEO || WPEWEBKIT_AUDIO select GST_PLUGINS_BASE1 if WPEWEBKIT_VIDEO || WPEWEBKIT_AUDIO diff --git a/rules/wpewebkit.make b/rules/wpewebkit.make index 3766efa2f9f3..5ee3057ac88d 100644 --- a/rules/wpewebkit.make +++ b/rules/wpewebkit.make @@ -14,8 +14,8 @@ PACKAGES-$(PTXCONF_WPEWEBKIT) += wpewebkit # # Paths and names # -WPEWEBKIT_VERSION := 2.42.5 -WPEWEBKIT_MD5 := d4bfd427199ded5a6fd91d7080290751 +WPEWEBKIT_VERSION := 2.49.3 +WPEWEBKIT_MD5 := 3a254344411ca8ea36fbb03d6c478e91 WPEWEBKIT := wpewebkit-$(WPEWEBKIT_VERSION) WPEWEBKIT_SUFFIX := tar.xz WPEWEBKIT_URL := https://wpewebkit.org/releases/$(WPEWEBKIT).$(WPEWEBKIT_SUFFIX) @@ -37,47 +37,51 @@ WPEWEBKIT_CONF_OPT := \ -DCMAKE_BUILD_TYPE=Release \ -DANALYZERS=OFF \ -DDEBUG_FISSION=OFF \ - -DENABLE_ACCESSIBILITY=OFF \ + -DDEVELOPER_MODE_FATAL_WARNINGS=OFF \ + -DENABLE_ASSERTS=OFF \ -DENABLE_BUBBLEWRAP_SANDBOX=OFF \ -DENABLE_DOCUMENTATION=OFF \ -DENABLE_ENCRYPTED_MEDIA=OFF \ - -DENABLE_GAMEPAD=OFF \ -DENABLE_INTROSPECTION=OFF \ -DENABLE_JAVASCRIPTCORE=ON \ -DENABLE_JOURNALD_LOG=$(call ptx/onoff,PTXCONF_WPEWEBKIT_JOURNALD) \ -DENABLE_PDFJS=ON \ + -DENABLE_SPEECH_SYNTHESIS=OFF \ -DENABLE_VIDEO=$(call ptx/onoff,PTXCONF_WPEWEBKIT_VIDEO) \ -DENABLE_WEBCORE=ON \ -DENABLE_WEBDRIVER=$(call ptx/onoff,PTXCONF_WPEWEBKIT_WEBDRIVER) \ -DENABLE_WEBKIT=ON \ -DENABLE_WEB_AUDIO=$(call ptx/onoff,PTXCONF_WPEWEBKIT_AUDIO) \ - -DENABLE_WEB_CRYPTO=ON \ -DENABLE_WPE_1_1_API=OFF \ + -DENABLE_WPE_PLATFORM=OFF \ + -DENABLE_WPE_PLATFORM_DRM=OFF \ + -DENABLE_WPE_PLATFORM_HEADLESS=OFF \ + -DENABLE_WPE_PLATFORM_WAYLAND=OFF \ -DENABLE_WPE_QT_API=$(call ptx/onoff,PTXCONF_WPEWEBKIT_QT) \ -DENABLE_XSLT=ON \ -DGCC_OFFLINEASM_SOURCE_MAP=OFF \ -DPORT=WPE \ -DPYTHON_EXECUTABLE=$(PTXDIST_SYSROOT_HOST)/usr/lib/wrapper/$(SYSTEMPYTHON3) \ -DSHOULD_INSTALL_JS_SHELL=OFF \ - -DSHOW_BINDINGS_GENERATION_PROGRESS=ON \ + -DSHOW_BINDINGS_GENERATION_PROGRESS=OFF \ + -DUSER_AGENT_BRANDING= \ -DUSE_64KB_PAGE_BLOCK=OFF \ -DUSE_APPLE_ICU=OFF \ + -DUSE_ATK=OFF \ -DUSE_AVIF=OFF \ + -DUSE_CXX_STDLIB_ASSERTIONS=OFF \ + -DUSE_FLITE=OFF \ -DUSE_GBM=ON \ -DUSE_GSTREAMER_TRANSCODER=OFF \ -DUSE_GSTREAMER_WEBRTC=$(call ptx/onoff,PTXCONF_WPEWEBKIT_WEBRTC) \ -DUSE_JPEGXL=OFF \ -DUSE_LCMS=OFF \ - -DUSE_OPENJPEG=OFF \ - -DUSE_SOUP2=OFF \ + -DUSE_LIBBACKTRACE=OFF \ + -DUSE_LIBDRM=ON \ + -DUSE_QT6=OFF \ + -DUSE_SKIA_OPENTYPE_SVG=OFF \ -DUSE_THIN_ARCHIVES=ON \ - -DUSE_WESTEROS_SINK=OFF \ - -DUSE_WOFF2=OFF \ - -DUSE_WPEWEBKIT_PLATFORM_AMLOGIC=OFF \ - -DUSE_WPEWEBKIT_PLATFORM_BCM_NEXUS=OFF \ - -DUSE_WPEWEBKIT_PLATFORM_BROADCOM=OFF \ - -DUSE_WPEWEBKIT_PLATFORM_RPI=OFF \ - -DUSE_WPEWEBKIT_PLATFORM_WESTEROS=OFF + -DUSE_WOFF2=OFF WPEWEBKIT_SYSTEM_MALLOC := OFF ifdef PTXCONF_WPEWEBKIT_QT @@ -95,10 +99,14 @@ WPEWEBKIT_CONF_OPT += \ -DENABLE_MEDIA_SOURCE=ON \ -DENABLE_MEDIA_STREAM=$(call ptx/onoff,PTXCONF_WPEWEBKIT_WEBRTC) \ -DENABLE_REMOTE_INSPECTOR=ON \ + -DENABLE_SMOOTH_SCROLLING=OFF \ -DENABLE_WEBXR=OFF \ + -DENABLE_WEB_CODECS=OFF \ -DENABLE_WEB_RTC=$(call ptx/onoff,PTXCONF_WPEWEBKIT_WEBRTC) \ - -DUSE_GSTREAMER_GL=$(call ptx/onoff,PTXCONF_WPEWEBKIT_VIDEO) \ - -DUSE_SYSTEM_MALLOC=$(WPEWEBKIT_SYSTEM_MALLOC) + -DUSE_GSTREAMER_GL=OFF \ + -DUSE_SYSPROF_CAPTURE=OFF \ + -DUSE_SYSTEM_MALLOC=$(WPEWEBKIT_SYSTEM_MALLOC) \ + -DUSE_SYSTEM_SYSPROF_CAPTURE=OFF ifdef PTXCONF_WPEWEBKIT_ENABLE_LOGGING WPEWEBKIT_CXXFLAGS := -DLOG_DISABLED=0 -DENABLE_TREE_DEBUGGING=1 -- 2.39.5