comment "weston needs udev and a toolchain w/ threads, dynamic library, headers >= 3.0"
	depends on BR2_ARCH_HAS_ATOMICS
	depends on !BR2_PACKAGE_HAS_UDEV || !BR2_TOOLCHAIN_HAS_THREADS || \
		!BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 || BR2_STATIC_LIBS

config BR2_PACKAGE_WESTON
	bool "weston"
	select BR2_PACKAGE_WAYLAND
	select BR2_PACKAGE_LIBXKBCOMMON
	select BR2_PACKAGE_CAIRO
	select BR2_PACKAGE_CAIRO_PNG
	select BR2_PACKAGE_LIBPNG
	select BR2_PACKAGE_JPEG
	select BR2_PACKAGE_MTDEV
	select BR2_PACKAGE_LIBINPUT
	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
	depends on BR2_ARCH_HAS_ATOMICS # cairo
	# Runtime dependency
	select BR2_PACKAGE_XKEYBOARD_CONFIG
	# Make sure at least one compositor is selected.
	select BR2_PACKAGE_WESTON_FBDEV if !BR2_PACKAGE_WESTON_HAS_COMPOSITOR
	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

# Helper to make sure at least one compositor is selected.
config BR2_PACKAGE_WESTON_HAS_COMPOSITOR
	bool

config BR2_PACKAGE_WESTON_FBDEV
	bool "fbdev compositor"

config BR2_PACKAGE_WESTON_RDP
	bool "RDP compositor"
	depends on BR2_USE_WCHAR # freerdp
	select BR2_PACKAGE_FREERDP
	select BR2_PACKAGE_WESTON_HAS_COMPOSITOR
	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"
	depends on !BR2_USE_WCHAR

# rpi-userland is an EGL/GLES provider, so we can't select it
config BR2_PACKAGE_WESTON_RPI
	bool "RPi compositor"
	depends on BR2_PACKAGE_RPI_USERLAND
	select BR2_PACKAGE_WESTON_HAS_COMPOSITOR

endif
