![James Hilliard](/assets/img/avatar_default.png)
Stock weston has been migrated to meson, now the only buildsystem starting with version 8, but the IMX fork is still stuck With the older version 6, which only has the autotools buildsystem. As a consequence, either we make weston a hybrid package that calls to the appropriate package macro infra, or we split the IMX fork off to its own package. meson and autotools have two different ways to express passing options, so we can't factorise the code paths to support both buildsystems: we'd need to duplicate those depending on the variant used. So, it's much more sensible to spin he IMX variant away. Besides, that will make it easier to drop it, should it eventually gets merged upstream (or the fork just dies off). We ensure that the two variants, vanilla and IMX, can't get selected at the same time, by making weston-imx depend on !weston, and hiding it behind IMX conditionals. Signed-off-by: James Hilliard <james.hilliard1@gmail.com> [yann.morin.1998@free.fr: - drop !BR2_PACKAGE_IMX_GPU_VIV_OUTPUT_WL dependency from stock weston - make weston-imx depends on !weston - rework commit log ] Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
145 lines
3.9 KiB
Makefile
145 lines
3.9 KiB
Makefile
################################################################################
|
|
#
|
|
# weston-imx
|
|
#
|
|
################################################################################
|
|
|
|
WESTON_IMX_VERSION = rel_imx_4.9.51_8mq_ga
|
|
WESTON_IMX_SITE = https://source.codeaurora.org/external/imx/weston-imx
|
|
WESTON_IMX_SITE_METHOD = git
|
|
WESTON_IMX_AUTORECONF = YES
|
|
WESTON_IMX_LICENSE = MIT
|
|
WESTON_IMX_LICENSE_FILES = COPYING
|
|
|
|
WESTON_IMX_DEPENDENCIES = host-pkgconf wayland wayland-protocols \
|
|
libxkbcommon pixman libpng jpeg udev cairo libinput libdrm \
|
|
$(if $(BR2_PACKAGE_WEBP),webp)
|
|
|
|
WESTON_IMX_CONF_OPTS = \
|
|
--with-dtddir=$(STAGING_DIR)/usr/share/wayland \
|
|
--disable-headless-compositor \
|
|
--disable-colord \
|
|
--disable-devdocs \
|
|
--disable-setuid-install
|
|
|
|
WESTON_IMX_MAKE_OPTS = \
|
|
WAYLAND_PROTOCOLS_DATADIR=$(STAGING_DIR)/usr/share/wayland-protocols
|
|
|
|
# Uses VIDIOC_EXPBUF, only available from 3.8+
|
|
ifeq ($(BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_8),)
|
|
WESTON_IMX_CONF_OPTS += --disable-simple-dmabuf-v4l-client
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_DBUS),y)
|
|
WESTON_IMX_CONF_OPTS += --enable-dbus
|
|
WESTON_IMX_DEPENDENCIES += dbus
|
|
else
|
|
WESTON_IMX_CONF_OPTS += --disable-dbus
|
|
endif
|
|
|
|
# weston-launch must be u+s root in order to work properly
|
|
ifeq ($(BR2_PACKAGE_LINUX_PAM),y)
|
|
define WESTON_IMX_PERMISSIONS
|
|
/usr/bin/weston-launch f 4755 0 0 - - - - -
|
|
endef
|
|
define WESTON_IMX_USERS
|
|
- - weston-launch -1 - - - - Weston launcher group
|
|
endef
|
|
WESTON_IMX_CONF_OPTS += --enable-weston-launch
|
|
WESTON_IMX_DEPENDENCIES += linux-pam
|
|
else
|
|
WESTON_IMX_CONF_OPTS += --disable-weston-launch
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_IMX_GPU_G2D),y)
|
|
WESTON_IMX_DEPENDENCIES += imx-gpu-g2d
|
|
# --enable-imxg2d actually disables it, so no CONF_OPTS
|
|
else
|
|
WESTON_IMX_CONF_OPTS += --disable-imxg2d
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_HAS_LIBEGL_WAYLAND)$(BR2_PACKAGE_HAS_LIBGLES),yy)
|
|
WESTON_IMX_CONF_OPTS += --enable-egl
|
|
WESTON_IMX_DEPENDENCIES += libegl libgles
|
|
else
|
|
WESTON_IMX_CONF_OPTS += \
|
|
--disable-egl \
|
|
--disable-simple-dmabuf-drm-client \
|
|
--disable-simple-egl-clients
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_WESTON_IMX_RDP),y)
|
|
WESTON_IMX_DEPENDENCIES += freerdp
|
|
WESTON_IMX_CONF_OPTS += --enable-rdp-compositor
|
|
else
|
|
WESTON_IMX_CONF_OPTS += --disable-rdp-compositor
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_WESTON_IMX_FBDEV),y)
|
|
WESTON_IMX_CONF_OPTS += \
|
|
--enable-fbdev-compositor \
|
|
WESTON_IMX_NATIVE_BACKEND=fbdev-backend.so
|
|
else
|
|
WESTON_IMX_CONF_OPTS += --disable-fbdev-compositor
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_WESTON_IMX_DRM),y)
|
|
WESTON_IMX_CONF_OPTS += \
|
|
--enable-drm-compositor \
|
|
WESTON_IMX_NATIVE_BACKEND=drm-backend.so
|
|
else
|
|
WESTON_IMX_CONF_OPTS += --disable-drm-compositor
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_WESTON_IMX_X11),y)
|
|
WESTON_IMX_CONF_OPTS += \
|
|
--enable-x11-compositor \
|
|
WESTON_IMX_NATIVE_BACKEND=x11-backend.so
|
|
WESTON_IMX_DEPENDENCIES += libxcb xlib_libX11
|
|
else
|
|
WESTON_IMX_CONF_OPTS += --disable-x11-compositor
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_WESTON_IMX_XWAYLAND),y)
|
|
WESTON_IMX_CONF_OPTS += --enable-xwayland
|
|
WESTON_IMX_DEPENDENCIES += cairo libepoxy libxcb xlib_libX11 xlib_libXcursor
|
|
else
|
|
WESTON_IMX_CONF_OPTS += --disable-xwayland
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_LIBVA),y)
|
|
WESTON_IMX_CONF_OPTS += --enable-vaapi-recorder
|
|
WESTON_IMX_DEPENDENCIES += libva
|
|
else
|
|
WESTON_IMX_CONF_OPTS += --disable-vaapi-recorder
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_LCMS2),y)
|
|
WESTON_IMX_CONF_OPTS += --enable-lcms
|
|
WESTON_IMX_DEPENDENCIES += lcms2
|
|
else
|
|
WESTON_IMX_CONF_OPTS += --disable-lcms
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_SYSTEMD),y)
|
|
WESTON_IMX_CONF_OPTS += --enable-systemd-login --enable-systemd-notify
|
|
WESTON_IMX_DEPENDENCIES += systemd
|
|
else
|
|
WESTON_IMX_CONF_OPTS += --disable-systemd-login --disable-systemd-notify
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_LIBXML2),y)
|
|
WESTON_IMX_CONF_OPTS += --enable-junit-xml
|
|
WESTON_IMX_DEPENDENCIES += libxml2
|
|
else
|
|
WESTON_IMX_CONF_OPTS += --disable-junit-xml
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_WESTON_IMX_DEMO_CLIENTS),y)
|
|
WESTON_IMX_CONF_OPTS += --enable-demo-clients-install
|
|
else
|
|
WESTON_IMX_CONF_OPTS += --disable-demo-clients-install
|
|
endif
|
|
|
|
$(eval $(autotools-package))
|