mirror of
https://gitlab.com/buildroot.org/buildroot.git
synced 2026-09-09 07:51:59 -09:00
package/webkitgtk: allow both X11 and Wayland
Allow enabling support for both the X11 and Wayland backends.
This in turn needs reorganizing how desktop GL or OpenGL ES is chosen,
as it no longer can depend on whether Wayland support is enabled: the
BR2_PACKAGE_HAS_LIBGL and BR2_PACKAGE_HAS_LIBGLES variables are both
checked, and ENABLE_GLES2 is set only if the package providing OpenGL
claims only GLES is supported; otherwise desktop GL is preferred. This
matches the existing logic.
The existing comment indicating that only one of both windowing systems
can be enabled was wrong: the same WebKitGTK build can target both
X11 and Wayland at the same time, as long as GTK itself has been built
accordingly. Enabling both is the approach taken by most Linux
distributions, and has been supported for years.
Signed-off-by: Adrian Perez de Castro <aperez@igalia.com>
Signed-off-by: Thomas Devoogdt <thomas.devoogdt@barco.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit a23251d3f7)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit is contained in:
committed by
Peter Korsgaard
parent
f94f04a957
commit
0617a0191a
@@ -78,32 +78,32 @@ else
|
||||
WEBKITGTK_CONF_OPTS += -DENABLE_GAMEPAD=OFF
|
||||
endif
|
||||
|
||||
# Only one target platform can be built, assume X11 > Wayland
|
||||
|
||||
# GTK3-X11 target gives OpenGL from newer libgtk3 versions
|
||||
# Consider this better than EGL + maybe GLESv2 since both can't be built
|
||||
# 2D CANVAS acceleration requires OpenGL proper with cairo-gl
|
||||
ifeq ($(BR2_PACKAGE_LIBGTK3_X11),y)
|
||||
WEBKITGTK_CONF_OPTS += \
|
||||
-DENABLE_GLES2=OFF \
|
||||
-DENABLE_X11_TARGET=ON
|
||||
WEBKITGTK_DEPENDENCIES += libgl \
|
||||
xlib_libXcomposite xlib_libXdamage xlib_libXrender xlib_libXt
|
||||
else # !X11
|
||||
# GTK3-BROADWAY/WAYLAND needs at least EGL
|
||||
WEBKITGTK_DEPENDENCIES += libegl
|
||||
# GLESv2 support is optional though
|
||||
ifeq ($(BR2_PACKAGE_HAS_LIBGLES),y)
|
||||
# Use GLES if available and desktop GL is not.
|
||||
ifeq ($(BR2_PACKAGE_HAS_LIBGL):$(BR2_PACKAGE_HAS_LIBGLES),:y)
|
||||
WEBKITGTK_CONF_OPTS += -DENABLE_GLES2=ON
|
||||
WEBKITGTK_DEPENDENCIES += libgles
|
||||
else
|
||||
# Disable general OpenGL (shading) if there's no GLESv2
|
||||
WEBKITGTK_CONF_OPTS += -DENABLE_GLES2=OFF
|
||||
endif
|
||||
# We must explicitly state the wayland target
|
||||
|
||||
ifeq ($(BR2_PACKAGE_LIBGTK3_X11),y)
|
||||
WEBKITGTK_CONF_OPTS += -DENABLE_X11_TARGET=ON
|
||||
WEBKITGTK_DEPENDENCIES += libgl \
|
||||
xlib_libXcomposite xlib_libXdamage xlib_libXrender xlib_libXt
|
||||
else
|
||||
WEBKITGTK_CONF_OPTS += -DENABLE_X11_TARGET=OFF
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_LIBGTK3_WAYLAND),y)
|
||||
WEBKITGTK_CONF_OPTS += -DENABLE_WAYLAND_TARGET=ON
|
||||
WEBKITGTK_DEPENDENCIES += libegl
|
||||
else
|
||||
WEBKITGTK_CONF_OPTS += -DENABLE_WAYLAND_TARGET=OFF
|
||||
endif
|
||||
|
||||
# If only the GTK Broadway backend is enabled, EGL is still needed.
|
||||
ifeq ($(BR2_PACKAGE_LIBGTK3_X11):$(BR2_PACKAGE_LIBGTK3_WAYLAND):$(BR2_PACKAGE_LIBGTK3_BROADWAY),::y)
|
||||
WEBKITGTK_DEPENDENCIES += libegl
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_WPEBACKEND_FDO),y)
|
||||
|
||||
Reference in New Issue
Block a user