* [Buildroot] [PATCH v1] package/webkitgtk: add libgtk4 support
@ 2024-08-31 11:36 Thomas Devoogdt
2024-08-31 11:36 ` [Buildroot] [PATCH v1] package/libgtk4: fix execinfo compile error Thomas Devoogdt
` (2 more replies)
0 siblings, 3 replies; 8+ messages in thread
From: Thomas Devoogdt @ 2024-08-31 11:36 UTC (permalink / raw)
To: buildroot; +Cc: Adrian Perez de Castro, Thomas Devoogdt
WebKitGTK defaults on GTK4 since version 2.44 [1],
and the libgtk4 package was added in commit faf2a1d,
so start using it.
[1] https://webkitgtk.org/2024/03/27/webkigit-2.44.html
Signed-off-by: Thomas Devoogdt <thomas@devoogdt.com>
---
package/webkitgtk/Config.in | 33 +++++++++++++++++++++++++--------
package/webkitgtk/webkitgtk.mk | 15 +++++++++++----
2 files changed, 36 insertions(+), 12 deletions(-)
diff --git a/package/webkitgtk/Config.in b/package/webkitgtk/Config.in
index 8ee90dda1c..a556fec194 100644
--- a/package/webkitgtk/Config.in
+++ b/package/webkitgtk/Config.in
@@ -16,11 +16,12 @@ config BR2_PACKAGE_WEBKITGTK_ARCH_SUPPORTS
depends on BR2_TOOLCHAIN_HAS_SYNC_4
depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgcrypt
-comment "webkitgtk needs libgtk3 and a toolchain w/ C++, wchar, threads, dynamic library, gcc >= 10, host gcc >= 4.9"
+comment "webkitgtk needs libgtk3 or libgtk4 and a toolchain w/ C++, wchar, threads, dynamic library, gcc >= 10, host gcc >= 4.9"
depends on BR2_PACKAGE_WEBKITGTK_ARCH_SUPPORTS
depends on !BR2_BINFMT_FLAT
- depends on !BR2_PACKAGE_LIBGTK3 || !BR2_INSTALL_LIBSTDCPP || \
- !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || \
+ depends on (!BR2_PACKAGE_LIBGTK3 && !BR2_PACKAGE_LIBGTK4) || \
+ !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \
+ !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || \
!BR2_TOOLCHAIN_GCC_AT_LEAST_10 || \
!BR2_HOST_GCC_AT_LEAST_4_9
depends on BR2_USE_MMU
@@ -35,7 +36,7 @@ config BR2_PACKAGE_WEBKITGTK
depends on BR2_TOOLCHAIN_HAS_THREADS # wayland, icu, libsoup3
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_10
depends on BR2_USE_WCHAR # icu, libsoup3
- depends on BR2_PACKAGE_LIBGTK3
+ depends on BR2_PACKAGE_LIBGTK3 || BR2_PACKAGE_LIBGTK4
depends on BR2_PACKAGE_WEBKITGTK_ARCH_SUPPORTS
select BR2_PACKAGE_CAIRO
select BR2_PACKAGE_CAIRO_PNG
@@ -54,10 +55,10 @@ config BR2_PACKAGE_WEBKITGTK
select BR2_PACKAGE_WEBP
select BR2_PACKAGE_WEBP_DEMUX
select BR2_PACKAGE_WOFF2
- select BR2_PACKAGE_XLIB_LIBXCOMPOSITE if BR2_PACKAGE_LIBGTK3_X11
- select BR2_PACKAGE_XLIB_LIBXDAMAGE if BR2_PACKAGE_LIBGTK3_X11
- select BR2_PACKAGE_XLIB_LIBXRENDER if BR2_PACKAGE_LIBGTK3_X11
- select BR2_PACKAGE_XLIB_LIBXT if BR2_PACKAGE_LIBGTK3_X11
+ select BR2_PACKAGE_XLIB_LIBXCOMPOSITE if BR2_PACKAGE_WEBKITGTK_X11
+ select BR2_PACKAGE_XLIB_LIBXDAMAGE if BR2_PACKAGE_WEBKITGTK_X11
+ select BR2_PACKAGE_XLIB_LIBXRENDER if BR2_PACKAGE_WEBKITGTK_X11
+ select BR2_PACKAGE_XLIB_LIBXT if BR2_PACKAGE_WEBKITGTK_X11
help
WebKit is an open source, standards compliant web browser
engine.
@@ -66,6 +67,22 @@ config BR2_PACKAGE_WEBKITGTK
if BR2_PACKAGE_WEBKITGTK
+comment "webkitgtk X11 target needs the X11 GDK backend"
+ depends on !BR2_PACKAGE_LIBGTK3_X11 && !BR2_PACKAGE_LIBGTK4_X11
+
+config BR2_PACKAGE_WEBKITGTK_X11
+ bool "enable x11 target"
+ default y
+ depends on BR2_PACKAGE_LIBGTK3_X11 || BR2_PACKAGE_LIBGTK4_X11
+
+comment "webkitgtk Wayland target needs the Wayland GDK backend"
+ depends on !BR2_PACKAGE_LIBGTK3_WAYLAND && !BR2_PACKAGE_LIBGTK4_WAYLAND
+
+config BR2_PACKAGE_WEBKITGTK_WAYLAND
+ bool "enable wayland target"
+ default y
+ depends on BR2_PACKAGE_LIBGTK3_WAYLAND || BR2_PACKAGE_LIBGTK4_WAYLAND
+
config BR2_PACKAGE_WEBKITGTK_SANDBOX
bool "sandboxing support"
depends on BR2_PACKAGE_LIBSECCOMP_ARCH_SUPPORTS # libseccomp
diff --git a/package/webkitgtk/webkitgtk.mk b/package/webkitgtk/webkitgtk.mk
index 468fefab0e..5115f3eec5 100644
--- a/package/webkitgtk/webkitgtk.mk
+++ b/package/webkitgtk/webkitgtk.mk
@@ -14,7 +14,7 @@ WEBKITGTK_LICENSE_FILES = \
Source/WebCore/LICENSE-LGPL-2.1
WEBKITGTK_CPE_ID_VENDOR = webkitgtk
WEBKITGTK_DEPENDENCIES = host-ruby host-python3 host-gperf host-unifdef \
- enchant harfbuzz icu jpeg libegl libepoxy libgcrypt libgtk3 libsecret \
+ enchant harfbuzz icu jpeg libegl libepoxy libgcrypt libsecret \
libsoup3 libtasn1 libxml2 libxslt sqlite webp woff2
WEBKITGTK_CMAKE_BACKEND = ninja
@@ -28,10 +28,17 @@ WEBKITGTK_CONF_OPTS = \
-DENABLE_WEB_RTC=OFF \
-DPORT=GTK \
-DUSE_AVIF=OFF \
- -DUSE_GTK4=OFF \
-DUSE_LIBHYPHEN=OFF \
-DUSE_WOFF2=ON
+ifeq ($(BR2_PACKAGE_LIBGTK4),y)
+WEBKITGTK_CONF_OPTS += -DUSE_GTK4=ON
+WEBKITGTK_DEPENDENCIES += libgtk4
+else
+WEBKITGTK_CONF_OPTS += -DUSE_GTK4=OFF
+WEBKITGTK_DEPENDENCIES += libgtk3
+endif
+
ifeq ($(BR2_PACKAGE_WEBKITGTK_SANDBOX),y)
WEBKITGTK_CONF_OPTS += \
-DENABLE_BUBBLEWRAP_SANDBOX=ON \
@@ -103,7 +110,7 @@ else
WEBKITGTK_CONF_OPTS += -DUSE_GBM=OFF
endif
-ifeq ($(BR2_PACKAGE_LIBGTK3_X11),y)
+ifeq ($(BR2_PACKAGE_WEBKITGTK_X11),y)
WEBKITGTK_CONF_OPTS += -DENABLE_X11_TARGET=ON
WEBKITGTK_DEPENDENCIES += libgl \
xlib_libXcomposite xlib_libXdamage xlib_libXrender xlib_libXt
@@ -111,7 +118,7 @@ else
WEBKITGTK_CONF_OPTS += -DENABLE_X11_TARGET=OFF
endif
-ifeq ($(BR2_PACKAGE_LIBGTK3_WAYLAND),y)
+ifeq ($(BR2_PACKAGE_WEBKITGTK_WAYLAND),y)
WEBKITGTK_CONF_OPTS += -DENABLE_WAYLAND_TARGET=ON
else
WEBKITGTK_CONF_OPTS += -DENABLE_WAYLAND_TARGET=OFF
--
2.43.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [Buildroot] [PATCH v1] package/libgtk4: fix execinfo compile error
2024-08-31 11:36 [Buildroot] [PATCH v1] package/webkitgtk: add libgtk4 support Thomas Devoogdt
@ 2024-08-31 11:36 ` Thomas Devoogdt
2024-09-05 20:45 ` Thomas Petazzoni via buildroot
2024-09-17 20:32 ` [Buildroot] [PATCH v2] package/webkitgtk: add libgtk4 support Thomas Devoogdt
2025-05-31 16:38 ` [Buildroot] [PATCH v1] " Arnout Vandecappelle via buildroot
2 siblings, 1 reply; 8+ messages in thread
From: Thomas Devoogdt @ 2024-08-31 11:36 UTC (permalink / raw)
To: buildroot; +Cc: Adrian Perez de Castro, Thomas Devoogdt
../testsuite/reftests/gtk-reftest.c:28:10: fatal error: execinfo.h: No such file or directory
We don't need the test suite, so disable it.
Signed-off-by: Thomas Devoogdt <thomas@devoogdt.com>
---
package/libgtk4/libgtk4.mk | 1 +
1 file changed, 1 insertion(+)
diff --git a/package/libgtk4/libgtk4.mk b/package/libgtk4/libgtk4.mk
index 8cb7fd0384..48bfc80c00 100644
--- a/package/libgtk4/libgtk4.mk
+++ b/package/libgtk4/libgtk4.mk
@@ -26,6 +26,7 @@ LIBGTK4_DEPENDENCIES = \
LIBGTK4_CONF_OPTS = \
-Dbuild-tests=false \
+ -Dbuild-testsuite=false \
-Dmedia-ffmpeg=disabled \
-Dprint-cpdb=disabled \
-Dvulkan=disabled \
--
2.43.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [Buildroot] [PATCH v1] package/libgtk4: fix execinfo compile error
2024-08-31 11:36 ` [Buildroot] [PATCH v1] package/libgtk4: fix execinfo compile error Thomas Devoogdt
@ 2024-09-05 20:45 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 8+ messages in thread
From: Thomas Petazzoni via buildroot @ 2024-09-05 20:45 UTC (permalink / raw)
To: Thomas Devoogdt; +Cc: Adrian Perez de Castro, buildroot
On Sat, 31 Aug 2024 13:36:26 +0200
Thomas Devoogdt <thomas@devoogdt.com> wrote:
> ../testsuite/reftests/gtk-reftest.c:28:10: fatal error: execinfo.h: No such file or directory
>
> We don't need the test suite, so disable it.
>
> Signed-off-by: Thomas Devoogdt <thomas@devoogdt.com>
> ---
> package/libgtk4/libgtk4.mk | 1 +
> 1 file changed, 1 insertion(+)
Applied to master, thanks.
Thomas
--
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Buildroot] [PATCH v2] package/webkitgtk: add libgtk4 support
2024-08-31 11:36 [Buildroot] [PATCH v1] package/webkitgtk: add libgtk4 support Thomas Devoogdt
2024-08-31 11:36 ` [Buildroot] [PATCH v1] package/libgtk4: fix execinfo compile error Thomas Devoogdt
@ 2024-09-17 20:32 ` Thomas Devoogdt
2024-12-16 18:10 ` [Buildroot] [PATCH v3] " Thomas Devoogdt
2025-05-31 16:38 ` [Buildroot] [PATCH v1] " Arnout Vandecappelle via buildroot
2 siblings, 1 reply; 8+ messages in thread
From: Thomas Devoogdt @ 2024-09-17 20:32 UTC (permalink / raw)
To: buildroot; +Cc: Adrian Perez de Castro, Thomas Devoogdt
WebKitGTK defaults on GTK4 since version 2.44 [1],
and the libgtk4 package was added in commit faf2a1d,
so start using it. Note that webkitgtk-6.0 is the new API
if compile with GTK4 [2].
[1] https://webkitgtk.org/2024/03/27/webkigit-2.44.html
[2] https://webkitgtk.org/reference/webkitgtk/stable/migrating-to-webkitgtk-6.0.html
Signed-off-by: Thomas Devoogdt <thomas@devoogdt.com>
---
v2: rebase to add support for the MiniBrowser
---
package/webkitgtk/Config.in | 33 +++++++++++++++++++++++++--------
package/webkitgtk/webkitgtk.mk | 21 +++++++++++++++++----
2 files changed, 42 insertions(+), 12 deletions(-)
diff --git a/package/webkitgtk/Config.in b/package/webkitgtk/Config.in
index e6ab405cd5..06d981aaff 100644
--- a/package/webkitgtk/Config.in
+++ b/package/webkitgtk/Config.in
@@ -16,11 +16,12 @@ config BR2_PACKAGE_WEBKITGTK_ARCH_SUPPORTS
depends on BR2_TOOLCHAIN_HAS_SYNC_4
depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgcrypt
-comment "webkitgtk needs libgtk3 and a toolchain w/ C++, wchar, threads, dynamic library, gcc >= 10, host gcc >= 4.9"
+comment "webkitgtk needs libgtk3 or libgtk4 and a toolchain w/ C++, wchar, threads, dynamic library, gcc >= 10, host gcc >= 4.9"
depends on BR2_PACKAGE_WEBKITGTK_ARCH_SUPPORTS
depends on !BR2_BINFMT_FLAT
- depends on !BR2_PACKAGE_LIBGTK3 || !BR2_INSTALL_LIBSTDCPP || \
- !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || \
+ depends on (!BR2_PACKAGE_LIBGTK3 && !BR2_PACKAGE_LIBGTK4) || \
+ !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \
+ !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || \
!BR2_TOOLCHAIN_GCC_AT_LEAST_10 || \
!BR2_HOST_GCC_AT_LEAST_4_9
depends on BR2_USE_MMU
@@ -35,7 +36,7 @@ config BR2_PACKAGE_WEBKITGTK
depends on BR2_TOOLCHAIN_HAS_THREADS # wayland, icu, libsoup3
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_10
depends on BR2_USE_WCHAR # icu, libsoup3
- depends on BR2_PACKAGE_LIBGTK3
+ depends on BR2_PACKAGE_LIBGTK3 || BR2_PACKAGE_LIBGTK4
depends on BR2_PACKAGE_WEBKITGTK_ARCH_SUPPORTS
select BR2_PACKAGE_CAIRO
select BR2_PACKAGE_CAIRO_PNG
@@ -54,10 +55,10 @@ config BR2_PACKAGE_WEBKITGTK
select BR2_PACKAGE_WEBP
select BR2_PACKAGE_WEBP_DEMUX
select BR2_PACKAGE_WOFF2
- select BR2_PACKAGE_XLIB_LIBXCOMPOSITE if BR2_PACKAGE_LIBGTK3_X11
- select BR2_PACKAGE_XLIB_LIBXDAMAGE if BR2_PACKAGE_LIBGTK3_X11
- select BR2_PACKAGE_XLIB_LIBXRENDER if BR2_PACKAGE_LIBGTK3_X11
- select BR2_PACKAGE_XLIB_LIBXT if BR2_PACKAGE_LIBGTK3_X11
+ select BR2_PACKAGE_XLIB_LIBXCOMPOSITE if BR2_PACKAGE_WEBKITGTK_X11
+ select BR2_PACKAGE_XLIB_LIBXDAMAGE if BR2_PACKAGE_WEBKITGTK_X11
+ select BR2_PACKAGE_XLIB_LIBXRENDER if BR2_PACKAGE_WEBKITGTK_X11
+ select BR2_PACKAGE_XLIB_LIBXT if BR2_PACKAGE_WEBKITGTK_X11
help
WebKit is an open source, standards compliant web browser
engine.
@@ -66,6 +67,22 @@ config BR2_PACKAGE_WEBKITGTK
if BR2_PACKAGE_WEBKITGTK
+comment "webkitgtk X11 target needs the X11 GDK backend"
+ depends on !BR2_PACKAGE_LIBGTK3_X11 && !BR2_PACKAGE_LIBGTK4_X11
+
+config BR2_PACKAGE_WEBKITGTK_X11
+ bool "enable x11 target"
+ default y
+ depends on BR2_PACKAGE_LIBGTK3_X11 || BR2_PACKAGE_LIBGTK4_X11
+
+comment "webkitgtk Wayland target needs the Wayland GDK backend"
+ depends on !BR2_PACKAGE_LIBGTK3_WAYLAND && !BR2_PACKAGE_LIBGTK4_WAYLAND
+
+config BR2_PACKAGE_WEBKITGTK_WAYLAND
+ bool "enable wayland target"
+ default y
+ depends on BR2_PACKAGE_LIBGTK3_WAYLAND || BR2_PACKAGE_LIBGTK4_WAYLAND
+
config BR2_PACKAGE_WEBKITGTK_SANDBOX
bool "sandboxing support"
depends on BR2_PACKAGE_LIBSECCOMP_ARCH_SUPPORTS # libseccomp
diff --git a/package/webkitgtk/webkitgtk.mk b/package/webkitgtk/webkitgtk.mk
index 19740b3b4e..5ecc1d1d09 100644
--- a/package/webkitgtk/webkitgtk.mk
+++ b/package/webkitgtk/webkitgtk.mk
@@ -14,7 +14,7 @@ WEBKITGTK_LICENSE_FILES = \
Source/WebCore/LICENSE-LGPL-2.1
WEBKITGTK_CPE_ID_VENDOR = webkitgtk
WEBKITGTK_DEPENDENCIES = host-ruby host-python3 host-gperf host-unifdef \
- enchant harfbuzz icu jpeg libegl libepoxy libgcrypt libgtk3 libsecret \
+ enchant harfbuzz icu jpeg libegl libepoxy libgcrypt libsecret \
libsoup3 libtasn1 libxml2 libxslt sqlite webp woff2
WEBKITGTK_CMAKE_BACKEND = ninja
@@ -28,10 +28,17 @@ WEBKITGTK_CONF_OPTS = \
-DENABLE_WEB_RTC=OFF \
-DPORT=GTK \
-DUSE_AVIF=OFF \
- -DUSE_GTK4=OFF \
-DUSE_LIBHYPHEN=OFF \
-DUSE_WOFF2=ON
+ifeq ($(BR2_PACKAGE_LIBGTK4),y)
+WEBKITGTK_CONF_OPTS += -DUSE_GTK4=ON
+WEBKITGTK_DEPENDENCIES += libgtk4
+else
+WEBKITGTK_CONF_OPTS += -DUSE_GTK4=OFF
+WEBKITGTK_DEPENDENCIES += libgtk3
+endif
+
ifeq ($(BR2_PACKAGE_WEBKITGTK_SANDBOX),y)
WEBKITGTK_CONF_OPTS += \
-DENABLE_BUBBLEWRAP_SANDBOX=ON \
@@ -62,9 +69,15 @@ WEBKITGTK_CONF_OPTS += -DENABLE_WEBDRIVER=OFF
endif
ifeq ($(BR2_PACKAGE_WEBKITGTK_MINIBROWSER),y)
+ifeq ($(BR2_PACKAGE_LIBGTK4),y)
+define WEBKITGTK_INSTALL_MINIBROWSER_SYMLINK
+ ln -sf ../libexec/webkitgtk-6.0/MiniBrowser $(TARGET_DIR)/usr/bin/MiniBrowser
+endef
+else
define WEBKITGTK_INSTALL_MINIBROWSER_SYMLINK
ln -sf ../libexec/webkit2gtk-4.1/MiniBrowser $(TARGET_DIR)/usr/bin/MiniBrowser
endef
+endif
WEBKITGTK_POST_INSTALL_TARGET_HOOKS += WEBKITGTK_INSTALL_MINIBROWSER_SYMLINK
WEBKITGTK_CONF_OPTS += -DENABLE_MINIBROWSER=ON
else
@@ -113,7 +126,7 @@ else
WEBKITGTK_CONF_OPTS += -DUSE_GBM=OFF
endif
-ifeq ($(BR2_PACKAGE_LIBGTK3_X11),y)
+ifeq ($(BR2_PACKAGE_WEBKITGTK_X11),y)
WEBKITGTK_CONF_OPTS += -DENABLE_X11_TARGET=ON
WEBKITGTK_DEPENDENCIES += libgl \
xlib_libXcomposite xlib_libXdamage xlib_libXrender xlib_libXt
@@ -121,7 +134,7 @@ else
WEBKITGTK_CONF_OPTS += -DENABLE_X11_TARGET=OFF
endif
-ifeq ($(BR2_PACKAGE_LIBGTK3_WAYLAND),y)
+ifeq ($(BR2_PACKAGE_WEBKITGTK_WAYLAND),y)
WEBKITGTK_CONF_OPTS += -DENABLE_WAYLAND_TARGET=ON
else
WEBKITGTK_CONF_OPTS += -DENABLE_WAYLAND_TARGET=OFF
--
2.43.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [Buildroot] [PATCH v3] package/webkitgtk: add libgtk4 support
2024-09-17 20:32 ` [Buildroot] [PATCH v2] package/webkitgtk: add libgtk4 support Thomas Devoogdt
@ 2024-12-16 18:10 ` Thomas Devoogdt
2025-04-20 7:36 ` [Buildroot] [PATCH v4] " Thomas Devoogdt
0 siblings, 1 reply; 8+ messages in thread
From: Thomas Devoogdt @ 2024-12-16 18:10 UTC (permalink / raw)
To: buildroot; +Cc: Adrian Perez de Castro, Thomas Devoogdt
WebKitGTK defaults on GTK4 since version 2.44 [1],
and the libgtk4 package was added in commit faf2a1d,
so start using it. Note that webkitgtk-6.0 is the new API
if compile with GTK4 [2].
[1] https://webkitgtk.org/2024/03/27/webkigit-2.44.html
[2] https://webkitgtk.org/reference/webkitgtk/stable/migrating-to-webkitgtk-6.0.html
Signed-off-by: Thomas Devoogdt <thomas@devoogdt.com>
---
v2: rebase to add support for the MiniBrowser
v3: rebase to fix merge conflicts
---
package/webkitgtk/Config.in | 33 +++++++++++++++++++++++++--------
package/webkitgtk/webkitgtk.mk | 21 +++++++++++++++++----
2 files changed, 42 insertions(+), 12 deletions(-)
diff --git a/package/webkitgtk/Config.in b/package/webkitgtk/Config.in
index dca62cf0f8..2f7fbf523a 100644
--- a/package/webkitgtk/Config.in
+++ b/package/webkitgtk/Config.in
@@ -16,11 +16,12 @@ config BR2_PACKAGE_WEBKITGTK_ARCH_SUPPORTS
depends on BR2_TOOLCHAIN_HAS_SYNC_4
depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgcrypt
-comment "webkitgtk needs libgtk3 and a toolchain w/ C++, wchar, NPTL, dynamic library, gcc >= 10, host gcc >= 4.9"
+comment "webkitgtk needs libgtk3 or libgtk4 and a toolchain w/ C++, wchar, NPTL, dynamic library, gcc >= 10, host gcc >= 4.9"
depends on BR2_PACKAGE_WEBKITGTK_ARCH_SUPPORTS
depends on !BR2_BINFMT_FLAT
- depends on !BR2_PACKAGE_LIBGTK3 || !BR2_INSTALL_LIBSTDCPP || \
- !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS || \
+ depends on (!BR2_PACKAGE_LIBGTK3 && !BR2_PACKAGE_LIBGTK4) || \
+ !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \
+ !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS || \
!BR2_TOOLCHAIN_GCC_AT_LEAST_10 || \
!BR2_HOST_GCC_AT_LEAST_4_9
depends on BR2_USE_MMU
@@ -35,7 +36,7 @@ config BR2_PACKAGE_WEBKITGTK
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_10
depends on BR2_USE_WCHAR # icu, libsoup3
- depends on BR2_PACKAGE_LIBGTK3
+ depends on BR2_PACKAGE_LIBGTK3 || BR2_PACKAGE_LIBGTK4
depends on BR2_PACKAGE_WEBKITGTK_ARCH_SUPPORTS
select BR2_PACKAGE_CAIRO
select BR2_PACKAGE_CAIRO_PNG
@@ -54,10 +55,10 @@ config BR2_PACKAGE_WEBKITGTK
select BR2_PACKAGE_WEBP
select BR2_PACKAGE_WEBP_DEMUX
select BR2_PACKAGE_WOFF2
- select BR2_PACKAGE_XLIB_LIBXCOMPOSITE if BR2_PACKAGE_LIBGTK3_X11
- select BR2_PACKAGE_XLIB_LIBXDAMAGE if BR2_PACKAGE_LIBGTK3_X11
- select BR2_PACKAGE_XLIB_LIBXRENDER if BR2_PACKAGE_LIBGTK3_X11
- select BR2_PACKAGE_XLIB_LIBXT if BR2_PACKAGE_LIBGTK3_X11
+ select BR2_PACKAGE_XLIB_LIBXCOMPOSITE if BR2_PACKAGE_WEBKITGTK_X11
+ select BR2_PACKAGE_XLIB_LIBXDAMAGE if BR2_PACKAGE_WEBKITGTK_X11
+ select BR2_PACKAGE_XLIB_LIBXRENDER if BR2_PACKAGE_WEBKITGTK_X11
+ select BR2_PACKAGE_XLIB_LIBXT if BR2_PACKAGE_WEBKITGTK_X11
help
WebKit is an open source, standards compliant web browser
engine.
@@ -66,6 +67,22 @@ config BR2_PACKAGE_WEBKITGTK
if BR2_PACKAGE_WEBKITGTK
+comment "webkitgtk X11 target needs the X11 GDK backend"
+ depends on !BR2_PACKAGE_LIBGTK3_X11 && !BR2_PACKAGE_LIBGTK4_X11
+
+config BR2_PACKAGE_WEBKITGTK_X11
+ bool "enable x11 target"
+ default y
+ depends on BR2_PACKAGE_LIBGTK3_X11 || BR2_PACKAGE_LIBGTK4_X11
+
+comment "webkitgtk Wayland target needs the Wayland GDK backend"
+ depends on !BR2_PACKAGE_LIBGTK3_WAYLAND && !BR2_PACKAGE_LIBGTK4_WAYLAND
+
+config BR2_PACKAGE_WEBKITGTK_WAYLAND
+ bool "enable wayland target"
+ default y
+ depends on BR2_PACKAGE_LIBGTK3_WAYLAND || BR2_PACKAGE_LIBGTK4_WAYLAND
+
config BR2_PACKAGE_WEBKITGTK_SANDBOX
bool "sandboxing support"
depends on BR2_PACKAGE_LIBSECCOMP_ARCH_SUPPORTS # libseccomp
diff --git a/package/webkitgtk/webkitgtk.mk b/package/webkitgtk/webkitgtk.mk
index ecdb3c788c..e326bb9512 100644
--- a/package/webkitgtk/webkitgtk.mk
+++ b/package/webkitgtk/webkitgtk.mk
@@ -14,7 +14,7 @@ WEBKITGTK_LICENSE_FILES = \
Source/WebCore/LICENSE-LGPL-2.1
WEBKITGTK_CPE_ID_VENDOR = webkitgtk
WEBKITGTK_DEPENDENCIES = host-ruby host-python3 host-gperf host-unifdef \
- enchant harfbuzz icu jpeg libegl libepoxy libgcrypt libgtk3 libsecret \
+ enchant harfbuzz icu jpeg libegl libepoxy libgcrypt libsecret \
libsoup3 libtasn1 libxml2 libxslt sqlite webp woff2
WEBKITGTK_CMAKE_BACKEND = ninja
@@ -28,10 +28,17 @@ WEBKITGTK_CONF_OPTS = \
-DENABLE_WEB_RTC=OFF \
-DPORT=GTK \
-DUSE_AVIF=OFF \
- -DUSE_GTK4=OFF \
-DUSE_LIBHYPHEN=OFF \
-DUSE_WOFF2=ON
+ifeq ($(BR2_PACKAGE_LIBGTK4),y)
+WEBKITGTK_CONF_OPTS += -DUSE_GTK4=ON
+WEBKITGTK_DEPENDENCIES += libgtk4
+else
+WEBKITGTK_CONF_OPTS += -DUSE_GTK4=OFF
+WEBKITGTK_DEPENDENCIES += libgtk3
+endif
+
ifeq ($(BR2_PACKAGE_WEBKITGTK_SANDBOX),y)
WEBKITGTK_CONF_OPTS += \
-DENABLE_BUBBLEWRAP_SANDBOX=ON \
@@ -62,9 +69,15 @@ WEBKITGTK_CONF_OPTS += -DENABLE_WEBDRIVER=OFF
endif
ifeq ($(BR2_PACKAGE_WEBKITGTK_MINIBROWSER),y)
+ifeq ($(BR2_PACKAGE_LIBGTK4),y)
+define WEBKITGTK_INSTALL_MINIBROWSER_SYMLINK
+ ln -sf ../libexec/webkitgtk-6.0/MiniBrowser $(TARGET_DIR)/usr/bin/MiniBrowser
+endef
+else
define WEBKITGTK_INSTALL_MINIBROWSER_SYMLINK
ln -sf ../libexec/webkit2gtk-4.1/MiniBrowser $(TARGET_DIR)/usr/bin/MiniBrowser
endef
+endif
WEBKITGTK_POST_INSTALL_TARGET_HOOKS += WEBKITGTK_INSTALL_MINIBROWSER_SYMLINK
WEBKITGTK_CONF_OPTS += -DENABLE_MINIBROWSER=ON
else
@@ -120,7 +133,7 @@ else
WEBKITGTK_CONF_OPTS += -DUSE_GBM=OFF
endif
-ifeq ($(BR2_PACKAGE_LIBGTK3_X11),y)
+ifeq ($(BR2_PACKAGE_WEBKITGTK_X11),y)
WEBKITGTK_CONF_OPTS += -DENABLE_X11_TARGET=ON
WEBKITGTK_DEPENDENCIES += libgl \
xlib_libXcomposite xlib_libXdamage xlib_libXrender xlib_libXt
@@ -128,7 +141,7 @@ else
WEBKITGTK_CONF_OPTS += -DENABLE_X11_TARGET=OFF
endif
-ifeq ($(BR2_PACKAGE_LIBGTK3_WAYLAND),y)
+ifeq ($(BR2_PACKAGE_WEBKITGTK_WAYLAND),y)
WEBKITGTK_CONF_OPTS += -DENABLE_WAYLAND_TARGET=ON
else
WEBKITGTK_CONF_OPTS += -DENABLE_WAYLAND_TARGET=OFF
--
2.43.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [Buildroot] [PATCH v4] package/webkitgtk: add libgtk4 support
2024-12-16 18:10 ` [Buildroot] [PATCH v3] " Thomas Devoogdt
@ 2025-04-20 7:36 ` Thomas Devoogdt
2025-05-18 13:40 ` Thomas Petazzoni via buildroot
0 siblings, 1 reply; 8+ messages in thread
From: Thomas Devoogdt @ 2025-04-20 7:36 UTC (permalink / raw)
To: thomas; +Cc: aperez, buildroot
WebKitGTK defaults on GTK4 since version 2.44 [1],
and the libgtk4 package was added in commit faf2a1d,
so start using it. Note that webkitgtk-6.0 is the new API
if compile with GTK4 [2].
[1] https://webkitgtk.org/2024/03/27/webkigit-2.44.html
[2] https://webkitgtk.org/reference/webkitgtk/stable/migrating-to-webkitgtk-6.0.html
Signed-off-by: Thomas Devoogdt <thomas@devoogdt.com>
---
v2: rebase to add support for the MiniBrowser
v3: rebase to fix merge conflicts
v4: rebase to fix merge conflicts (Commit 6a47aa6 "package/webkitgtk: bump to 2.48.1")
---
package/webkitgtk/Config.in | 33 +++++++++++++++++++++++++--------
package/webkitgtk/webkitgtk.mk | 21 +++++++++++++++++----
2 files changed, 42 insertions(+), 12 deletions(-)
diff --git a/package/webkitgtk/Config.in b/package/webkitgtk/Config.in
index bcb4b12fa3..7827dc6218 100644
--- a/package/webkitgtk/Config.in
+++ b/package/webkitgtk/Config.in
@@ -16,11 +16,12 @@ config BR2_PACKAGE_WEBKITGTK_ARCH_SUPPORTS
depends on BR2_TOOLCHAIN_HAS_SYNC_4
depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgcrypt
-comment "webkitgtk needs libgtk3 and a toolchain w/ C++, wchar, NPTL, dynamic library, gcc >= 11, host gcc >= 4.9"
+comment "webkitgtk needs libgtk3 or libgtk4 and a toolchain w/ C++, wchar, NPTL, dynamic library, gcc >= 11, host gcc >= 4.9"
depends on BR2_PACKAGE_WEBKITGTK_ARCH_SUPPORTS
depends on !BR2_BINFMT_FLAT
- depends on !BR2_PACKAGE_LIBGTK3 || !BR2_INSTALL_LIBSTDCPP || \
- !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS || \
+ depends on (!BR2_PACKAGE_LIBGTK3 && !BR2_PACKAGE_LIBGTK4) || \
+ !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \
+ !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS || \
!BR2_TOOLCHAIN_GCC_AT_LEAST_11 || \
!BR2_HOST_GCC_AT_LEAST_4_9
depends on BR2_USE_MMU
@@ -35,7 +36,7 @@ config BR2_PACKAGE_WEBKITGTK
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_11
depends on BR2_USE_WCHAR # icu, libsoup3
- depends on BR2_PACKAGE_LIBGTK3
+ depends on BR2_PACKAGE_LIBGTK3 || BR2_PACKAGE_LIBGTK4
depends on BR2_PACKAGE_WEBKITGTK_ARCH_SUPPORTS
select BR2_PACKAGE_CAIRO
select BR2_PACKAGE_CAIRO_PNG
@@ -55,10 +56,10 @@ config BR2_PACKAGE_WEBKITGTK
select BR2_PACKAGE_WEBP_DEMUX
select BR2_PACKAGE_WEBP_MUX
select BR2_PACKAGE_WOFF2
- select BR2_PACKAGE_XLIB_LIBXCOMPOSITE if BR2_PACKAGE_LIBGTK3_X11
- select BR2_PACKAGE_XLIB_LIBXDAMAGE if BR2_PACKAGE_LIBGTK3_X11
- select BR2_PACKAGE_XLIB_LIBXRENDER if BR2_PACKAGE_LIBGTK3_X11
- select BR2_PACKAGE_XLIB_LIBXT if BR2_PACKAGE_LIBGTK3_X11
+ select BR2_PACKAGE_XLIB_LIBXCOMPOSITE if BR2_PACKAGE_WEBKITGTK_X11
+ select BR2_PACKAGE_XLIB_LIBXDAMAGE if BR2_PACKAGE_WEBKITGTK_X11
+ select BR2_PACKAGE_XLIB_LIBXRENDER if BR2_PACKAGE_WEBKITGTK_X11
+ select BR2_PACKAGE_XLIB_LIBXT if BR2_PACKAGE_WEBKITGTK_X11
help
WebKit is an open source, standards compliant web browser
engine.
@@ -67,6 +68,22 @@ config BR2_PACKAGE_WEBKITGTK
if BR2_PACKAGE_WEBKITGTK
+comment "webkitgtk X11 target needs the X11 GDK backend"
+ depends on !BR2_PACKAGE_LIBGTK3_X11 && !BR2_PACKAGE_LIBGTK4_X11
+
+config BR2_PACKAGE_WEBKITGTK_X11
+ bool "enable x11 target"
+ default y
+ depends on BR2_PACKAGE_LIBGTK3_X11 || BR2_PACKAGE_LIBGTK4_X11
+
+comment "webkitgtk Wayland target needs the Wayland GDK backend"
+ depends on !BR2_PACKAGE_LIBGTK3_WAYLAND && !BR2_PACKAGE_LIBGTK4_WAYLAND
+
+config BR2_PACKAGE_WEBKITGTK_WAYLAND
+ bool "enable wayland target"
+ default y
+ depends on BR2_PACKAGE_LIBGTK3_WAYLAND || BR2_PACKAGE_LIBGTK4_WAYLAND
+
config BR2_PACKAGE_WEBKITGTK_SANDBOX
bool "sandboxing support"
depends on BR2_PACKAGE_LIBSECCOMP_ARCH_SUPPORTS # libseccomp
diff --git a/package/webkitgtk/webkitgtk.mk b/package/webkitgtk/webkitgtk.mk
index 2c22bfb607..d139108126 100644
--- a/package/webkitgtk/webkitgtk.mk
+++ b/package/webkitgtk/webkitgtk.mk
@@ -14,7 +14,7 @@ WEBKITGTK_LICENSE_FILES = \
Source/WebCore/LICENSE-LGPL-2.1
WEBKITGTK_CPE_ID_VENDOR = webkitgtk
WEBKITGTK_DEPENDENCIES = host-ruby host-python3 host-gperf host-unifdef \
- enchant harfbuzz icu jpeg libegl libepoxy libgcrypt libgtk3 libsecret \
+ enchant harfbuzz icu jpeg libegl libepoxy libgcrypt libsecret \
libsoup3 libtasn1 libxml2 libxslt sqlite webp woff2
WEBKITGTK_CMAKE_BACKEND = ninja
@@ -28,12 +28,19 @@ WEBKITGTK_CONF_OPTS = \
-DENABLE_WEB_RTC=OFF \
-DPORT=GTK \
-DUSE_AVIF=OFF \
- -DUSE_GTK4=OFF \
-DUSE_LIBHYPHEN=OFF \
-DUSE_SKIA=OFF \
-DUSE_SYSTEM_SYSPROF_CAPTURE=OFF \
-DUSE_WOFF2=ON
+ifeq ($(BR2_PACKAGE_LIBGTK4),y)
+WEBKITGTK_CONF_OPTS += -DUSE_GTK4=ON
+WEBKITGTK_DEPENDENCIES += libgtk4
+else
+WEBKITGTK_CONF_OPTS += -DUSE_GTK4=OFF
+WEBKITGTK_DEPENDENCIES += libgtk3
+endif
+
ifeq ($(BR2_PACKAGE_WEBKITGTK_SANDBOX),y)
WEBKITGTK_CONF_OPTS += \
-DENABLE_BUBBLEWRAP_SANDBOX=ON \
@@ -64,9 +71,15 @@ WEBKITGTK_CONF_OPTS += -DENABLE_WEBDRIVER=OFF
endif
ifeq ($(BR2_PACKAGE_WEBKITGTK_MINIBROWSER),y)
+ifeq ($(BR2_PACKAGE_LIBGTK4),y)
+define WEBKITGTK_INSTALL_MINIBROWSER_SYMLINK
+ ln -sf ../libexec/webkitgtk-6.0/MiniBrowser $(TARGET_DIR)/usr/bin/MiniBrowser
+endef
+else
define WEBKITGTK_INSTALL_MINIBROWSER_SYMLINK
ln -sf ../libexec/webkit2gtk-4.1/MiniBrowser $(TARGET_DIR)/usr/bin/MiniBrowser
endef
+endif
WEBKITGTK_POST_INSTALL_TARGET_HOOKS += WEBKITGTK_INSTALL_MINIBROWSER_SYMLINK
WEBKITGTK_CONF_OPTS += -DENABLE_MINIBROWSER=ON
else
@@ -129,7 +142,7 @@ else
WEBKITGTK_CONF_OPTS += -DUSE_GBM=OFF
endif
-ifeq ($(BR2_PACKAGE_LIBGTK3_X11),y)
+ifeq ($(BR2_PACKAGE_WEBKITGTK_X11),y)
WEBKITGTK_CONF_OPTS += -DENABLE_X11_TARGET=ON
WEBKITGTK_DEPENDENCIES += libgl \
xlib_libXcomposite xlib_libXdamage xlib_libXrender xlib_libXt
@@ -137,7 +150,7 @@ else
WEBKITGTK_CONF_OPTS += -DENABLE_X11_TARGET=OFF
endif
-ifeq ($(BR2_PACKAGE_LIBGTK3_WAYLAND),y)
+ifeq ($(BR2_PACKAGE_WEBKITGTK_WAYLAND),y)
WEBKITGTK_CONF_OPTS += -DENABLE_WAYLAND_TARGET=ON
else
WEBKITGTK_CONF_OPTS += -DENABLE_WAYLAND_TARGET=OFF
--
2.43.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [Buildroot] [PATCH v4] package/webkitgtk: add libgtk4 support
2025-04-20 7:36 ` [Buildroot] [PATCH v4] " Thomas Devoogdt
@ 2025-05-18 13:40 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 8+ messages in thread
From: Thomas Petazzoni via buildroot @ 2025-05-18 13:40 UTC (permalink / raw)
To: Thomas Devoogdt; +Cc: aperez, buildroot
On Sun, 20 Apr 2025 09:36:08 +0200
Thomas Devoogdt <thomas@devoogdt.com> wrote:
> WebKitGTK defaults on GTK4 since version 2.44 [1],
> and the libgtk4 package was added in commit faf2a1d,
> so start using it. Note that webkitgtk-6.0 is the new API
> if compile with GTK4 [2].
>
> [1] https://webkitgtk.org/2024/03/27/webkigit-2.44.html
> [2] https://webkitgtk.org/reference/webkitgtk/stable/migrating-to-webkitgtk-6.0.html
>
> Signed-off-by: Thomas Devoogdt <thomas@devoogdt.com>
> ---
> v2: rebase to add support for the MiniBrowser
> v3: rebase to fix merge conflicts
> v4: rebase to fix merge conflicts (Commit 6a47aa6 "package/webkitgtk: bump to 2.48.1")
> ---
> package/webkitgtk/Config.in | 33 +++++++++++++++++++++++++--------
> package/webkitgtk/webkitgtk.mk | 21 +++++++++++++++++----
> 2 files changed, 42 insertions(+), 12 deletions(-)
Applied to master, thanks a lot!
Thomas
--
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Buildroot] [PATCH v1] package/webkitgtk: add libgtk4 support
2024-08-31 11:36 [Buildroot] [PATCH v1] package/webkitgtk: add libgtk4 support Thomas Devoogdt
2024-08-31 11:36 ` [Buildroot] [PATCH v1] package/libgtk4: fix execinfo compile error Thomas Devoogdt
2024-09-17 20:32 ` [Buildroot] [PATCH v2] package/webkitgtk: add libgtk4 support Thomas Devoogdt
@ 2025-05-31 16:38 ` Arnout Vandecappelle via buildroot
2 siblings, 0 replies; 8+ messages in thread
From: Arnout Vandecappelle via buildroot @ 2025-05-31 16:38 UTC (permalink / raw)
To: Thomas Devoogdt, buildroot; +Cc: Adrian Perez de Castro
On 31/08/2024 13:36, Thomas Devoogdt wrote:
> WebKitGTK defaults on GTK4 since version 2.44 [1],
> and the libgtk4 package was added in commit faf2a1d,
> so start using it.
>
> [1] https://webkitgtk.org/2024/03/27/webkigit-2.44.html
>
> Signed-off-by: Thomas Devoogdt <thomas@devoogdt.com>
Applied to 2025.02.x, thanks.
Just to make future cherry-picks of webkitgtk easier.
Regards,
Arnout
> ---
> package/webkitgtk/Config.in | 33 +++++++++++++++++++++++++--------
> package/webkitgtk/webkitgtk.mk | 15 +++++++++++----
> 2 files changed, 36 insertions(+), 12 deletions(-)
>
> diff --git a/package/webkitgtk/Config.in b/package/webkitgtk/Config.in
> index 8ee90dda1c..a556fec194 100644
> --- a/package/webkitgtk/Config.in
> +++ b/package/webkitgtk/Config.in
> @@ -16,11 +16,12 @@ config BR2_PACKAGE_WEBKITGTK_ARCH_SUPPORTS
> depends on BR2_TOOLCHAIN_HAS_SYNC_4
> depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgcrypt
>
> -comment "webkitgtk needs libgtk3 and a toolchain w/ C++, wchar, threads, dynamic library, gcc >= 10, host gcc >= 4.9"
> +comment "webkitgtk needs libgtk3 or libgtk4 and a toolchain w/ C++, wchar, threads, dynamic library, gcc >= 10, host gcc >= 4.9"
> depends on BR2_PACKAGE_WEBKITGTK_ARCH_SUPPORTS
> depends on !BR2_BINFMT_FLAT
> - depends on !BR2_PACKAGE_LIBGTK3 || !BR2_INSTALL_LIBSTDCPP || \
> - !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || \
> + depends on (!BR2_PACKAGE_LIBGTK3 && !BR2_PACKAGE_LIBGTK4) || \
> + !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \
> + !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || \
> !BR2_TOOLCHAIN_GCC_AT_LEAST_10 || \
> !BR2_HOST_GCC_AT_LEAST_4_9
> depends on BR2_USE_MMU
> @@ -35,7 +36,7 @@ config BR2_PACKAGE_WEBKITGTK
> depends on BR2_TOOLCHAIN_HAS_THREADS # wayland, icu, libsoup3
> depends on BR2_TOOLCHAIN_GCC_AT_LEAST_10
> depends on BR2_USE_WCHAR # icu, libsoup3
> - depends on BR2_PACKAGE_LIBGTK3
> + depends on BR2_PACKAGE_LIBGTK3 || BR2_PACKAGE_LIBGTK4
> depends on BR2_PACKAGE_WEBKITGTK_ARCH_SUPPORTS
> select BR2_PACKAGE_CAIRO
> select BR2_PACKAGE_CAIRO_PNG
> @@ -54,10 +55,10 @@ config BR2_PACKAGE_WEBKITGTK
> select BR2_PACKAGE_WEBP
> select BR2_PACKAGE_WEBP_DEMUX
> select BR2_PACKAGE_WOFF2
> - select BR2_PACKAGE_XLIB_LIBXCOMPOSITE if BR2_PACKAGE_LIBGTK3_X11
> - select BR2_PACKAGE_XLIB_LIBXDAMAGE if BR2_PACKAGE_LIBGTK3_X11
> - select BR2_PACKAGE_XLIB_LIBXRENDER if BR2_PACKAGE_LIBGTK3_X11
> - select BR2_PACKAGE_XLIB_LIBXT if BR2_PACKAGE_LIBGTK3_X11
> + select BR2_PACKAGE_XLIB_LIBXCOMPOSITE if BR2_PACKAGE_WEBKITGTK_X11
> + select BR2_PACKAGE_XLIB_LIBXDAMAGE if BR2_PACKAGE_WEBKITGTK_X11
> + select BR2_PACKAGE_XLIB_LIBXRENDER if BR2_PACKAGE_WEBKITGTK_X11
> + select BR2_PACKAGE_XLIB_LIBXT if BR2_PACKAGE_WEBKITGTK_X11
> help
> WebKit is an open source, standards compliant web browser
> engine.
> @@ -66,6 +67,22 @@ config BR2_PACKAGE_WEBKITGTK
>
> if BR2_PACKAGE_WEBKITGTK
>
> +comment "webkitgtk X11 target needs the X11 GDK backend"
> + depends on !BR2_PACKAGE_LIBGTK3_X11 && !BR2_PACKAGE_LIBGTK4_X11
> +
> +config BR2_PACKAGE_WEBKITGTK_X11
> + bool "enable x11 target"
> + default y
> + depends on BR2_PACKAGE_LIBGTK3_X11 || BR2_PACKAGE_LIBGTK4_X11
> +
> +comment "webkitgtk Wayland target needs the Wayland GDK backend"
> + depends on !BR2_PACKAGE_LIBGTK3_WAYLAND && !BR2_PACKAGE_LIBGTK4_WAYLAND
> +
> +config BR2_PACKAGE_WEBKITGTK_WAYLAND
> + bool "enable wayland target"
> + default y
> + depends on BR2_PACKAGE_LIBGTK3_WAYLAND || BR2_PACKAGE_LIBGTK4_WAYLAND
> +
> config BR2_PACKAGE_WEBKITGTK_SANDBOX
> bool "sandboxing support"
> depends on BR2_PACKAGE_LIBSECCOMP_ARCH_SUPPORTS # libseccomp
> diff --git a/package/webkitgtk/webkitgtk.mk b/package/webkitgtk/webkitgtk.mk
> index 468fefab0e..5115f3eec5 100644
> --- a/package/webkitgtk/webkitgtk.mk
> +++ b/package/webkitgtk/webkitgtk.mk
> @@ -14,7 +14,7 @@ WEBKITGTK_LICENSE_FILES = \
> Source/WebCore/LICENSE-LGPL-2.1
> WEBKITGTK_CPE_ID_VENDOR = webkitgtk
> WEBKITGTK_DEPENDENCIES = host-ruby host-python3 host-gperf host-unifdef \
> - enchant harfbuzz icu jpeg libegl libepoxy libgcrypt libgtk3 libsecret \
> + enchant harfbuzz icu jpeg libegl libepoxy libgcrypt libsecret \
> libsoup3 libtasn1 libxml2 libxslt sqlite webp woff2
>
> WEBKITGTK_CMAKE_BACKEND = ninja
> @@ -28,10 +28,17 @@ WEBKITGTK_CONF_OPTS = \
> -DENABLE_WEB_RTC=OFF \
> -DPORT=GTK \
> -DUSE_AVIF=OFF \
> - -DUSE_GTK4=OFF \
> -DUSE_LIBHYPHEN=OFF \
> -DUSE_WOFF2=ON
>
> +ifeq ($(BR2_PACKAGE_LIBGTK4),y)
> +WEBKITGTK_CONF_OPTS += -DUSE_GTK4=ON
> +WEBKITGTK_DEPENDENCIES += libgtk4
> +else
> +WEBKITGTK_CONF_OPTS += -DUSE_GTK4=OFF
> +WEBKITGTK_DEPENDENCIES += libgtk3
> +endif
> +
> ifeq ($(BR2_PACKAGE_WEBKITGTK_SANDBOX),y)
> WEBKITGTK_CONF_OPTS += \
> -DENABLE_BUBBLEWRAP_SANDBOX=ON \
> @@ -103,7 +110,7 @@ else
> WEBKITGTK_CONF_OPTS += -DUSE_GBM=OFF
> endif
>
> -ifeq ($(BR2_PACKAGE_LIBGTK3_X11),y)
> +ifeq ($(BR2_PACKAGE_WEBKITGTK_X11),y)
> WEBKITGTK_CONF_OPTS += -DENABLE_X11_TARGET=ON
> WEBKITGTK_DEPENDENCIES += libgl \
> xlib_libXcomposite xlib_libXdamage xlib_libXrender xlib_libXt
> @@ -111,7 +118,7 @@ else
> WEBKITGTK_CONF_OPTS += -DENABLE_X11_TARGET=OFF
> endif
>
> -ifeq ($(BR2_PACKAGE_LIBGTK3_WAYLAND),y)
> +ifeq ($(BR2_PACKAGE_WEBKITGTK_WAYLAND),y)
> WEBKITGTK_CONF_OPTS += -DENABLE_WAYLAND_TARGET=ON
> else
> WEBKITGTK_CONF_OPTS += -DENABLE_WAYLAND_TARGET=OFF
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2025-05-31 16:39 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-08-31 11:36 [Buildroot] [PATCH v1] package/webkitgtk: add libgtk4 support Thomas Devoogdt
2024-08-31 11:36 ` [Buildroot] [PATCH v1] package/libgtk4: fix execinfo compile error Thomas Devoogdt
2024-09-05 20:45 ` Thomas Petazzoni via buildroot
2024-09-17 20:32 ` [Buildroot] [PATCH v2] package/webkitgtk: add libgtk4 support Thomas Devoogdt
2024-12-16 18:10 ` [Buildroot] [PATCH v3] " Thomas Devoogdt
2025-04-20 7:36 ` [Buildroot] [PATCH v4] " Thomas Devoogdt
2025-05-18 13:40 ` Thomas Petazzoni via buildroot
2025-05-31 16:38 ` [Buildroot] [PATCH v1] " Arnout Vandecappelle via buildroot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox