| ################################################################################ |
| # |
| # weston |
| # |
| ################################################################################ |
| |
| WESTON_VERSION = 13.0.3 |
| WESTON_SITE = https://gitlab.freedesktop.org/wayland/weston/-/releases/$(WESTON_VERSION)/downloads |
| WESTON_SOURCE = weston-$(WESTON_VERSION).tar.xz |
| WESTON_LICENSE = MIT |
| WESTON_LICENSE_FILES = COPYING |
| WESTON_CPE_ID_VENDOR = wayland |
| WESTON_INSTALL_STAGING = YES |
| |
| WESTON_DEPENDENCIES = host-pkgconf wayland wayland-protocols \ |
| libxkbcommon pixman libpng udev cairo libinput libdrm seatd |
| |
| WESTON_CONF_OPTS = \ |
| -Ddoc=false \ |
| -Dremoting=false \ |
| -Dbackend-vnc=false \ |
| -Dtools=calibrator,debug,info,terminal,touch-calibrator |
| |
| ifeq ($(BR2_PACKAGE_WESTON_SIMPLE_CLIENTS),y) |
| # Note: some clients are conditional, see further for the others. |
| WESTON_SIMPLE_CLIENTS = \ |
| damage \ |
| im \ |
| shm \ |
| touch |
| |
| ifeq ($(BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_8),y) |
| # dmabuf-v4l uses VIDIOC_EXPBUF, only available from 3.8+ |
| WESTON_SIMPLE_CLIENTS += dmabuf-v4l |
| endif |
| endif # BR2_PACKAGE_WESTON_SIMPLE_CLIENTS |
| |
| ifeq ($(BR2_PACKAGE_JPEG),y) |
| WESTON_CONF_OPTS += -Dimage-jpeg=true |
| WESTON_DEPENDENCIES += jpeg |
| else |
| WESTON_CONF_OPTS += -Dimage-jpeg=false |
| endif |
| |
| ifeq ($(BR2_PACKAGE_WEBP),y) |
| WESTON_CONF_OPTS += -Dimage-webp=true |
| WESTON_DEPENDENCIES += webp |
| else |
| WESTON_CONF_OPTS += -Dimage-webp=false |
| endif |
| |
| ifeq ($(BR2_PACKAGE_HAS_LIBEGL)$(BR2_PACKAGE_HAS_LIBGBM)$(BR2_PACKAGE_HAS_LIBGLES),yyy) |
| WESTON_CONF_OPTS += -Drenderer-gl=true |
| WESTON_DEPENDENCIES += libegl libgbm libgles |
| ifeq ($(BR2_PACKAGE_WESTON_SIMPLE_CLIENTS),y) |
| WESTON_SIMPLE_CLIENTS += dmabuf-egl dmabuf-feedback egl |
| endif |
| ifeq ($(BR2_PACKAGE_PIPEWIRE)$(BR2_PACKAGE_WESTON_DRM),yy) |
| WESTON_CONF_OPTS += -Dpipewire=true -Dbackend-pipewire=true |
| WESTON_DEPENDENCIES += pipewire |
| else |
| WESTON_CONF_OPTS += -Dpipewire=false -Dbackend-pipewire=false |
| endif |
| else |
| WESTON_CONF_OPTS += \ |
| -Drenderer-gl=false \ |
| -Dpipewire=false \ |
| -Dbackend-pipewire=false |
| endif |
| |
| WESTON_CONF_OPTS += -Dsimple-clients=$(subst $(space),$(comma),$(strip $(WESTON_SIMPLE_CLIENTS))) |
| |
| ifeq ($(BR2_PACKAGE_WESTON_RDP),y) |
| WESTON_DEPENDENCIES += freerdp |
| WESTON_CONF_OPTS += -Dbackend-rdp=true |
| else |
| WESTON_CONF_OPTS += -Dbackend-rdp=false |
| endif |
| |
| ifeq ($(BR2_PACKAGE_WESTON_DRM),y) |
| WESTON_CONF_OPTS += -Dbackend-drm=true |
| else |
| WESTON_CONF_OPTS += -Dbackend-drm=false |
| endif |
| |
| ifeq ($(BR2_PACKAGE_WESTON_HEADLESS),y) |
| WESTON_CONF_OPTS += -Dbackend-headless=true |
| else |
| WESTON_CONF_OPTS += -Dbackend-headless=false |
| endif |
| |
| ifeq ($(BR2_PACKAGE_WESTON_WAYLAND),y) |
| WESTON_CONF_OPTS += -Dbackend-wayland=true |
| else |
| WESTON_CONF_OPTS += -Dbackend-wayland=false |
| endif |
| |
| ifeq ($(BR2_PACKAGE_WESTON_X11),y) |
| WESTON_CONF_OPTS += -Dbackend-x11=true |
| WESTON_DEPENDENCIES += libxcb xlib_libX11 |
| else |
| WESTON_CONF_OPTS += -Dbackend-x11=false |
| endif |
| |
| # We're guaranteed to have at least one backend |
| WESTON_CONF_OPTS += -Dbackend-default=$(call qstrip,$(BR2_PACKAGE_WESTON_DEFAULT_COMPOSITOR)) |
| |
| ifeq ($(BR2_PACKAGE_WESTON_XWAYLAND),y) |
| WESTON_CONF_OPTS += -Dxwayland=true |
| WESTON_DEPENDENCIES += cairo libepoxy libxcb xcb-util-cursor xlib_libX11 xlib_libXcursor xwayland |
| else |
| WESTON_CONF_OPTS += -Dxwayland=false |
| endif |
| |
| ifeq ($(BR2_PACKAGE_LIBVA),y) |
| WESTON_CONF_OPTS += -Dbackend-drm-screencast-vaapi=true |
| WESTON_DEPENDENCIES += libva |
| else |
| WESTON_CONF_OPTS += -Dbackend-drm-screencast-vaapi=false |
| endif |
| |
| ifeq ($(BR2_PACKAGE_LCMS2),y) |
| WESTON_CONF_OPTS += -Dcolor-management-lcms=true |
| WESTON_DEPENDENCIES += lcms2 |
| else |
| WESTON_CONF_OPTS += -Dcolor-management-lcms=false |
| endif |
| |
| ifeq ($(BR2_PACKAGE_SYSTEMD),y) |
| WESTON_CONF_OPTS += -Dsystemd=true |
| WESTON_DEPENDENCIES += systemd |
| else |
| WESTON_CONF_OPTS += -Dsystemd=false |
| endif |
| |
| ifeq ($(BR2_PACKAGE_LIBXML2),y) |
| WESTON_CONF_OPTS += -Dtest-junit-xml=true |
| WESTON_DEPENDENCIES += libxml2 |
| else |
| WESTON_CONF_OPTS += -Dtest-junit-xml=false |
| endif |
| |
| ifeq ($(BR2_PACKAGE_WESTON_SHELL_DESKTOP),y) |
| WESTON_CONF_OPTS += -Dshell-desktop=true |
| else |
| WESTON_CONF_OPTS += -Dshell-desktop=false |
| endif |
| |
| ifeq ($(BR2_PACKAGE_WESTON_SHELL_FULLSCREEN),y) |
| WESTON_CONF_OPTS += -Dshell-fullscreen=true |
| else |
| WESTON_CONF_OPTS += -Dshell-fullscreen=false |
| endif |
| |
| ifeq ($(BR2_PACKAGE_WESTON_SHELL_IVI),y) |
| WESTON_CONF_OPTS += -Dshell-ivi=true |
| else |
| WESTON_CONF_OPTS += -Dshell-ivi=false |
| endif |
| |
| ifeq ($(BR2_PACKAGE_WESTON_SHELL_KIOSK),y) |
| WESTON_CONF_OPTS += -Dshell-kiosk=true |
| else |
| WESTON_CONF_OPTS += -Dshell-kiosk=false |
| endif |
| |
| ifeq ($(BR2_PACKAGE_WESTON_SCREENSHARE),y) |
| WESTON_CONF_OPTS += -Dscreenshare=true |
| else |
| WESTON_CONF_OPTS += -Dscreenshare=false |
| endif |
| |
| ifeq ($(BR2_PACKAGE_WESTON_DEMO_CLIENTS),y) |
| WESTON_CONF_OPTS += -Ddemo-clients=true |
| WESTON_DEPENDENCIES += pango |
| else |
| WESTON_CONF_OPTS += -Ddemo-clients=false |
| endif |
| |
| $(eval $(meson-package)) |