1comment "weston needs udev and a toolchain w/ locale, threads, dynamic library, headers >= 3.0" 2 depends on !BR2_PACKAGE_HAS_UDEV || !BR2_TOOLCHAIN_HAS_THREADS || \ 3 !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 || BR2_STATIC_LIBS || \ 4 !BR2_ENABLE_LOCALE 5 6config BR2_PACKAGE_WESTON 7 bool "weston" 8 depends on BR2_PACKAGE_HAS_UDEV 9 depends on !BR2_STATIC_LIBS # wayland 10 depends on BR2_TOOLCHAIN_HAS_THREADS # wayland 11 depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 12 select BR2_PACKAGE_WAYLAND 13 select BR2_PACKAGE_WAYLAND_PROTOCOLS 14 select BR2_PACKAGE_LIBXKBCOMMON 15 select BR2_PACKAGE_CAIRO 16 select BR2_PACKAGE_CAIRO_PNG 17 select BR2_PACKAGE_LIBPNG 18 select BR2_PACKAGE_JPEG 19 select BR2_PACKAGE_LIBINPUT 20 select BR2_PACKAGE_LIBDRM 21 # Runtime dependency 22 select BR2_PACKAGE_XKEYBOARD_CONFIG 23 select BR2_PACKAGE_WESTON_SHELL_DESKTOP if !BR2_PACKAGE_WESTON_HAS_SHELL 24 select BR2_PACKAGE_SEATD if !BR2_PACKAGE_DBUS || !BR2_PACKAGE_SYSTEMD 25 help 26 Weston is the reference implementation of a Wayland 27 compositor, and a useful compositor in its own right. 28 Weston has various backends that lets it run on Linux kernel 29 modesetting and evdev input as well as under X11. 30 31 http://wayland.freedesktop.org/ 32 33if BR2_PACKAGE_WESTON 34 35choice 36 prompt "default compositor" 37 38config BR2_PACKAGE_WESTON_DEFAULT_DRM 39 bool "drm" 40 select BR2_PACKAGE_WESTON_DRM 41 42config BR2_PACKAGE_WESTON_DEFAULT_HEADLESS 43 bool "headless" 44 select BR2_PACKAGE_WESTON_HEADLESS 45 46config BR2_PACKAGE_WESTON_DEFAULT_WAYLAND 47 bool "wayland (nested)" 48 select BR2_PACKAGE_WESTON_WAYLAND 49 50config BR2_PACKAGE_WESTON_DEFAULT_X11 51 bool "X11 (nested)" 52 depends on BR2_PACKAGE_XORG7 53 select BR2_PACKAGE_WESTON_X11 54 55comment "X11 (nested) backend needs X.org" 56 depends on !BR2_PACKAGE_XORG7 57 58endchoice 59 60config BR2_PACKAGE_WESTON_DEFAULT_COMPOSITOR 61 string 62 default "drm" if BR2_PACKAGE_WESTON_DEFAULT_DRM 63 default "headless" if BR2_PACKAGE_WESTON_DEFAULT_HEADLESS 64 default "wayland" if BR2_PACKAGE_WESTON_DEFAULT_WAYLAND 65 default "x11" if BR2_PACKAGE_WESTON_DEFAULT_X11 66 67config BR2_PACKAGE_WESTON_DRM 68 bool "DRM compositor" 69 70config BR2_PACKAGE_WESTON_VNC 71 bool "VNC compositor" 72 select BR2_PACKAGE_NEATVNC 73 74# FreeRDP needs threads and !static, already the case for weston 75config BR2_PACKAGE_WESTON_RDP 76 bool "RDP compositor" 77 depends on BR2_USE_MMU # freerdp, libglib2 78 depends on BR2_TOOLCHAIN_HAS_SYNC_4 79 depends on BR2_USE_WCHAR # freerdp 80 depends on BR2_INSTALL_LIBSTDCPP # freerdp 81 select BR2_PACKAGE_FREERDP 82 help 83 This enables the RDP backend, which allows accessing weston 84 through the network with any RDP-compliant client. 85 86 Please note that one must pass those options to weston for RDP 87 to be functional: 88 --rdp-tls-cert=/path/to/server.crt 89 --rdp-tls-key=/path/to/server.key 90 91 By default, Buildroot installs such files in 92 /etc/freerdp/server/ so you may want to change them in a 93 post-build script or a rootfs overlay. 94 95comment "RDP compositor needs a toolchain w/ wchar, C++" 96 depends on BR2_USE_MMU 97 depends on BR2_TOOLCHAIN_HAS_SYNC_4 98 depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP 99 100config BR2_PACKAGE_WESTON_HEADLESS 101 bool "headless (testing) compositor" 102 103config BR2_PACKAGE_WESTON_WAYLAND 104 bool "Wayland (nested) compositor" 105 106config BR2_PACKAGE_WESTON_X11 107 bool "X11 (nested) compositor" 108 depends on BR2_PACKAGE_XORG7 109 select BR2_PACKAGE_LIBXCB 110 select BR2_PACKAGE_XLIB_LIBX11 111 112comment "X11 (nested) compositor needs X.org enabled" 113 depends on !BR2_PACKAGE_XORG7 114 115config BR2_PACKAGE_WESTON_XWAYLAND 116 bool "XWayland support" 117 depends on BR2_PACKAGE_LIBEPOXY 118 depends on BR2_PACKAGE_XORG7 # xwayland 119 depends on BR2_USE_MMU # xwayland 120 depends on !BR2_STATIC_LIBS # xwayland 121 depends on BR2_TOOLCHAIN_HAS_THREADS # xwayland 122 depends on !BR2_RISCV_32 # xwayland -> xlib_libxshmfence 123 depends on BR2_TOOLCHAIN_HAS_SYNC_4 # xwayland -> xlib_libxshmfence 124 select BR2_PACKAGE_CAIRO 125 select BR2_PACKAGE_LIBXCB 126 select BR2_PACKAGE_XLIB_LIBX11 127 select BR2_PACKAGE_XLIB_LIBXCURSOR 128 select BR2_PACKAGE_XWAYLAND 129 130comment "XWayland support needs libepoxy and X.org enabled" 131 depends on !BR2_PACKAGE_XORG7 || !BR2_PACKAGE_LIBEPOXY 132 133comment "XWayland support needs a toolchain w/ threads, dynamic library" 134 depends on BR2_USE_MMU 135 depends on !BR2_RISCV_32 136 depends on BR2_TOOLCHAIN_HAS_SYNC_4 137 depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS 138 139# Weston needs at least one shell; this can be one of the bundled ones, 140# below, of from a third-party package, which should then select this. 141config BR2_PACKAGE_WESTON_HAS_SHELL 142 bool 143 144config BR2_PACKAGE_WESTON_SHELL_DESKTOP 145 bool "desktop shell" 146 default y 147 148config BR2_PACKAGE_WESTON_SHELL_FULLSCREEN 149 bool "fullscreen shell" 150 default y 151 select BR2_PACKAGE_WESTON_HAS_SHELL 152 153config BR2_PACKAGE_WESTON_SHELL_IVI 154 bool "ivi shell" 155 default y 156 select BR2_PACKAGE_WESTON_HAS_SHELL 157 158config BR2_PACKAGE_WESTON_SHELL_KIOSK 159 bool "kiosk shell" 160 default y 161 select BR2_PACKAGE_WESTON_HAS_SHELL 162 163config BR2_PACKAGE_WESTON_DEMO_CLIENTS 164 bool "demo clients" 165 depends on BR2_USE_MMU # pango 166 depends on BR2_TOOLCHAIN_HAS_SYNC_4 # pango 167 depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # pango 168 depends on BR2_INSTALL_LIBSTDCPP # pango 169 depends on BR2_TOOLCHAIN_HAS_THREADS # pango 170 depends on BR2_USE_WCHAR # pango 171 depends on BR2_PACKAGE_HAS_LIBGLES 172 depends on BR2_PACKAGE_HAS_LIBEGL_WAYLAND 173 select BR2_PACKAGE_PANGO 174 help 175 This enables the installation of Weston's demo clients. 176 177comment "demo clients needs an OpenGL ES provider, an OpenEGL-capable Wayland backend and a toolchain w/ wchar, threads, C++, gcc >= 4.9" 178 depends on BR2_USE_MMU 179 depends on BR2_TOOLCHAIN_HAS_SYNC_4 180 depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \ 181 !BR2_USE_WCHAR || !BR2_PACKAGE_HAS_LIBGLES || \ 182 !BR2_PACKAGE_HAS_LIBEGL_WAYLAND || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 183 184config BR2_PACKAGE_WESTON_DEFAULT_PIXMAN 185 bool "Use pixman-renderer by default" 186 default y if BR2_PACKAGE_MESA3D_OPENGL_EGL || !BR2_PACKAGE_HAS_LIBEGL 187 188endif 189