kumquat-buildroot/package/weston/Config.in
James Hilliard 9670514b0c package/weston: add selection menu for default backend
With the upcoming bump to weston 8, the meaning for the "native backend"
has been removed, and replaced by a new option to set the "default
backend". However, the way we handle the "native backend" option
nowadays is very semantically similar to the upcoming "default backend"
option.

However, as of today, when more than one backend are enabled, the last
one defined in the .mk wins, which is not obvious when looking at the
menuconfig order...

So, we introduce a choice to select the default backend. That enforces
the backend is enabed, leaving the others as additional backends.

It is to be noted that the RDP backend can't be selected as the native
(soon default) backend, so it does not get an entry in the choice.

Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
[yann.morin.1998@free.fr:
  - write a commit log
  - merge short lines
  - rename optons (no _BACKEND)
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-02-03 11:05:54 +01:00

128 lines
3.7 KiB
Plaintext

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
select BR2_PACKAGE_WESTON_DRM
comment "drm backend needs mesa3d w/ EGL driver"
depends on !BR2_PACKAGE_MESA3D_OPENGL_EGL
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
# Uses libgbm from mesa3d
comment "DRM compositor needs an OpenGL EGL backend provided by mesa3d"
depends on !BR2_PACKAGE_MESA3D_OPENGL_EGL
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"
help
This enables the installation of Weston's demo clients.
endif