mirror of
https://gitlab.com/buildroot.org/buildroot.git
synced 2026-08-24 00:01:07 -09:00
Since wayland 1.15 (upstream commit
549a5ea710f4da1a5749587176d39fef1ded4077), libwayland-egl.so is
provided by the wayland package, so there is no longer a question of
whether libwayland-egl.so is provided by the particular EGL
implementation. See the Wayland commit log:
wayland-egl: import libwayland-egl.so frontend library from Mesa
Currently the client-facing libwayland-egl API is defined by a header
file shipped by Wayland, but the implementation is left to each vendor.
This can cause collisions when multiple implementations are installed on
the same system. Importing the implementation into Wayland with a stable
and versioned driver-facing ABI allows multiple drivers to coexist on
the same system.
Pull the sample implementation from Mesa commit 677edff5cfd
("wayland-egl: rework and simplify wl_egl_window initialization")
It has been used by the Mesa open source drivers, NVIDIA and others[1].
v2: Reword commit message, rebase on top of newer Mesa.
[1] https://github.com/thayama/wayland-egl
Consequently, we remove the BR2_PACKAGE_HAS_LIBEGL_WAYLAND
option. Packages that rely on BR2_PACKAGE_HAS_LIBGLES and
BR2_PACKAGE_WAYLAND are guaranteed to have libwayland-egl.so.
Note that this doesn't solve the problem that libwayland-egl.so will be
provided both by wayland itself and by by the implementation
(rockchip-mali, sunxi-mali-utgard, ...). Still, there is a dependency
from the implementation on wayland so at least it is predictable which
one will end up on the target.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
[Arnout: remove remaining references in sway and sunxi-mali-utgard]
Signed-off-by: Arnout Vandecappelle <arnout@mind.be>
48 lines
1.8 KiB
Plaintext
48 lines
1.8 KiB
Plaintext
config BR2_PACKAGE_WAFFLE_SUPPORTS_GLX
|
|
bool
|
|
default y if BR2_PACKAGE_HAS_LIBGL && BR2_PACKAGE_XORG7
|
|
|
|
config BR2_PACKAGE_WAFFLE_SUPPORTS_WAYLAND
|
|
bool
|
|
default y if BR2_PACKAGE_WAYLAND && BR2_PACKAGE_HAS_LIBEGL
|
|
|
|
config BR2_PACKAGE_WAFFLE_SUPPORTS_X11_EGL
|
|
bool
|
|
default y if BR2_PACKAGE_HAS_LIBEGL && BR2_PACKAGE_XORG7
|
|
|
|
config BR2_PACKAGE_WAFFLE_SUPPORTS_GBM
|
|
bool
|
|
# mesa3d is for now the only GBM provider, and it is enabled
|
|
# together with its EGL support
|
|
default y if BR2_PACKAGE_HAS_LIBEGL && BR2_PACKAGE_MESA3D_OPENGL_EGL && BR2_PACKAGE_HAS_UDEV
|
|
|
|
config BR2_PACKAGE_WAFFLE
|
|
bool "waffle"
|
|
depends on BR2_PACKAGE_WAFFLE_SUPPORTS_GLX || \
|
|
BR2_PACKAGE_WAFFLE_SUPPORTS_WAYLAND || \
|
|
BR2_PACKAGE_WAFFLE_SUPPORTS_X11_EGL || \
|
|
BR2_PACKAGE_WAFFLE_SUPPORTS_GBM
|
|
select BR2_PACKAGE_XLIB_LIBX11 if BR2_PACKAGE_WAFFLE_SUPPORTS_GLX || BR2_PACKAGE_WAFFLE_SUPPORTS_X11_EGL
|
|
select BR2_PACKAGE_LIBXCB if BR2_PACKAGE_WAFFLE_SUPPORTS_GLX || BR2_PACKAGE_WAFFLE_SUPPORTS_X11_EGL
|
|
help
|
|
Waffle is a cross-platform library that allows one to defer
|
|
selection of an OpenGL API and of window system until
|
|
runtime. For example, on Linux, Waffle enables an application
|
|
to select X11/EGL with an OpenGL 3.3 core profile, Wayland
|
|
with OpenGL ES2, and other window system / API combinations.
|
|
|
|
Waffle's immediate goal is to enable Piglit [1] to test
|
|
multiple OpenGL flavors in a cross-platform way, and to allow
|
|
each Piglit test to choose its OpenGL API and window system
|
|
at runtime. A future goal is to enable the ability to record
|
|
(with another tool such APITrace [2]) an application's OpenGL
|
|
calls on one operating system or window system, and then
|
|
replay that trace on a different system.
|
|
|
|
For more information, visit to Waffle's website.
|
|
|
|
[1] http://piglit.freedesktop.org
|
|
[2] http://github.com/apitrace/apitrace#readme
|
|
|
|
http://www.waffle-gl.org
|