blob: d07eba4c9dce17ca7bee785b7fa47efd86700bbd [file] [log] [blame]
comment "weston needs udev and a toolchain w/ locale, threads, dynamic library, headers >= 3.0"
depends on !BR2_PACKAGE_HAS_UDEV || !BR2_TOOLCHAIN_HAS_THREADS || \
!BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 || BR2_STATIC_LIBS || \
!BR2_ENABLE_LOCALE
config BR2_PACKAGE_WESTON
bool "weston"
depends on BR2_PACKAGE_HAS_UDEV
depends on !BR2_STATIC_LIBS # wayland
depends on BR2_TOOLCHAIN_HAS_THREADS # wayland
depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0
select BR2_PACKAGE_WAYLAND
select BR2_PACKAGE_WAYLAND_PROTOCOLS
select BR2_PACKAGE_LIBXKBCOMMON
select BR2_PACKAGE_CAIRO
select BR2_PACKAGE_CAIRO_PNG
select BR2_PACKAGE_LIBPNG
select BR2_PACKAGE_JPEG
select BR2_PACKAGE_LIBINPUT
select BR2_PACKAGE_LIBDRM
# Runtime dependency
select BR2_PACKAGE_XKEYBOARD_CONFIG
help
Weston is the reference implementation of a Wayland
compositor, and a useful compositor in its own right.
Weston has various backends that lets it run on Linux kernel
modesetting and evdev input as well as under X11.
http://wayland.freedesktop.org/
if BR2_PACKAGE_WESTON
choice
prompt "default compositor"
config BR2_PACKAGE_WESTON_DEFAULT_FBDEV
bool "fbdev"
select BR2_PACKAGE_WESTON_FBDEV
config BR2_PACKAGE_WESTON_DEFAULT_DRM
bool "drm"
depends on BR2_PACKAGE_MESA3D_OPENGL_EGL || BR2_PACKAGE_IMX_GPU_VIV_OUTPUT_WL
select BR2_PACKAGE_WESTON_DRM
comment "drm backend needs mesa3d w/ EGL driver"
depends on !BR2_PACKAGE_MESA3D_OPENGL_EGL && !BR2_PACKAGE_IMX_GPU_VIV_OUTPUT_WL
config BR2_PACKAGE_WESTON_DEFAULT_X11
bool "X11"
depends on BR2_PACKAGE_XORG7
select BR2_PACKAGE_WESTON_X11
comment "X11 backend needs X.org"
depends on !BR2_PACKAGE_XORG7
endchoice
config BR2_PACKAGE_WESTON_DEFAULT_COMPOSITOR
string
default "fbdev" if BR2_PACKAGE_WESTON_DEFAULT_FBDEV
default "drm" if BR2_PACKAGE_WESTON_DEFAULT_DRM
default "x11" if BR2_PACKAGE_WESTON_DEFAULT_X11
config BR2_PACKAGE_WESTON_DRM
bool "DRM compositor"
depends on BR2_PACKAGE_MESA3D_OPENGL_EGL || BR2_PACKAGE_IMX_GPU_VIV_OUTPUT_WL
# Uses libgbm from mesa3d
comment "DRM compositor needs an OpenGL EGL backend provided by mesa3d"
depends on !BR2_PACKAGE_MESA3D_OPENGL_EGL && !BR2_PACKAGE_IMX_GPU_VIV_OUTPUT_WL
config BR2_PACKAGE_WESTON_FBDEV
bool "fbdev compositor"
# FreeRDP needs threads and !static, already the case for weston
config BR2_PACKAGE_WESTON_RDP
bool "RDP compositor"
depends on BR2_USE_MMU # freerdp, libglib2
depends on BR2_TOOLCHAIN_HAS_SYNC_4
depends on BR2_USE_WCHAR # freerdp
depends on BR2_INSTALL_LIBSTDCPP # freerdp
select BR2_PACKAGE_FREERDP
help
This enables the RDP backend, which allows accessing weston
through the network with any RDP-compliant client.
Please note that one must pass those options to weston for RDP
to be functional:
--rdp-tls-cert=/path/to/server.crt
--rdp-tls-key=/path/to/server.key
By default, Buildroot installs such files in
/etc/freerdp/server/ so you may want to change them in a
post-build script or a rootfs overlay.
comment "RDP compositor needs a toolchain w/ wchar, C++"
depends on BR2_USE_MMU
depends on BR2_TOOLCHAIN_HAS_SYNC_4
depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP
config BR2_PACKAGE_WESTON_X11
bool "X11 compositor"
depends on BR2_PACKAGE_XORG7
select BR2_PACKAGE_LIBXCB
select BR2_PACKAGE_XLIB_LIBX11
comment "X11 compositor needs X.org enabled"
depends on !BR2_PACKAGE_XORG7
config BR2_PACKAGE_WESTON_XWAYLAND
bool "XWayland support"
depends on BR2_PACKAGE_XORG7
depends on BR2_PACKAGE_LIBEPOXY
select BR2_PACKAGE_CAIRO
select BR2_PACKAGE_LIBXCB
select BR2_PACKAGE_XLIB_LIBX11
select BR2_PACKAGE_XLIB_LIBXCURSOR
comment "XWayland support needs libepoxy and X.org enabled"
depends on !BR2_PACKAGE_XORG7 || !BR2_PACKAGE_LIBEPOXY
config BR2_PACKAGE_WESTON_DEMO_CLIENTS
bool "demo clients"
depends on BR2_USE_MMU # pango
depends on BR2_TOOLCHAIN_HAS_SYNC_4 # pango
depends on BR2_INSTALL_LIBSTDCPP # pango
depends on BR2_TOOLCHAIN_HAS_THREADS # pango
depends on BR2_USE_WCHAR # pango
depends on BR2_PACKAGE_HAS_LIBGLES
depends on BR2_PACKAGE_HAS_LIBEGL_WAYLAND
select BR2_PACKAGE_PANGO
help
This enables the installation of Weston's demo clients.
comment "demo clients needs an OpenGL ES provider, an OpenEGL-capable Wayland backend and a toolchain w/ wchar, threads, C++"
depends on BR2_USE_MMU
depends on BR2_TOOLCHAIN_HAS_SYNC_4
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \
!BR2_USE_WCHAR || !BR2_PACKAGE_HAS_LIBGLES || \
!BR2_PACKAGE_HAS_LIBEGL_WAYLAND
endif