From patchwork Sun Aug 11 20:26:59 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Hilliard X-Patchwork-Id: 1145379 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=busybox.net (client-ip=140.211.166.138; helo=whitealder.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="AgdWQ7hR"; dkim-atps=neutral Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4669WP0lybz9sDQ for ; Mon, 12 Aug 2019 06:27:13 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 3CB79865B0; Sun, 11 Aug 2019 20:27:10 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id NCw2+nxq6N-G; Sun, 11 Aug 2019 20:27:07 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by whitealder.osuosl.org (Postfix) with ESMTP id 3CB77864A0; Sun, 11 Aug 2019 20:27:07 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137]) by ash.osuosl.org (Postfix) with ESMTP id 7757C1BF322 for ; Sun, 11 Aug 2019 20:27:06 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by fraxinus.osuosl.org (Postfix) with ESMTP id 7468385DC7 for ; Sun, 11 Aug 2019 20:27:06 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from fraxinus.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id TiXafF31gBI4 for ; Sun, 11 Aug 2019 20:27:05 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-ot1-f68.google.com (mail-ot1-f68.google.com [209.85.210.68]) by fraxinus.osuosl.org (Postfix) with ESMTPS id 4FE4B85D55 for ; Sun, 11 Aug 2019 20:27:05 +0000 (UTC) Received: by mail-ot1-f68.google.com with SMTP id m97so18551392otm.12 for ; Sun, 11 Aug 2019 13:27:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=Me71uM2TJCTyfXCtPTse8ibx2MwzfSEwlBoSvdnhU94=; b=AgdWQ7hRLWQql8b7Z9nV7ckyEwIZ2QQZJeLUKl2z5JhG++yiocM8BnKszuZfkBDjF9 96bEjBYP9+U4TJ3Mjlh7NO815eUfF4qdCIuHXV0u4js/VR4ZgZ3ZNW9gXMF/uCaKGpFZ +IQHCIrILPS/XRJ0E7iPiZjbK9y+9082SL1bDsiOEvn8ySmnXnuh4UBo9kIUsnTtGkqR zrvvyzwqlHpc1kxIQwBpVPdYX8qwObfAywzGarhOjutyZPfwXh38BsP5nk/H7Ya2nn/8 N2QgNyBhcsMow9Aw54CeskmCTw+Z1JZouEFTCP0/DvsOPQv7dFMhqCsNi1m5Gkh7Ppf1 XG4g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=Me71uM2TJCTyfXCtPTse8ibx2MwzfSEwlBoSvdnhU94=; b=nM6M+7IHKtqq2aZG+hO+7/SkexXjRfpp6opyv3qkDJvUWO/MIloclC3nGASaPI4pMU bPWlpBQFouUO/cFGPJVIeWq7Gw7a0FKqPX2/yd3ZU9d480y1SStCHilBvpE3jRLKawAU qdkcCfIj738NsoG82dFLHRbhYrhn4XHdUsmlHwYb8rVSFFLdSfrqbbs7T0HcGfAfH54o +SE10HOZpGVZQl/NBJjZGdCAhSLhuBa81ELr3vf+LGsnwK2egUgWsHDP0yiuFyuol+tv Idz3xfs28t121Z91kNK6E2lBZ7KUroZiI2HPpupq2/UG82ZG8k3zMq0Ve/xeZ6Sx6CVf i3Og== X-Gm-Message-State: APjAAAXvcgMqfKRf2qroND0l5YAJ6tPA1JrmP3n9ICv6lYmOXHHdJYHp ZhbJ425ytzI23RT36ew1wsrzVEXsFNI= X-Google-Smtp-Source: APXvYqxYKlLRKsn6Z/l/JYwA18Xu+QJ4ZqPzNzNetQuT4NDGifoZAtps4soGNCnFwZVa2RWTxkAVWA== X-Received: by 2002:a5d:9703:: with SMTP id h3mr13701771iol.152.1565555223931; Sun, 11 Aug 2019 13:27:03 -0700 (PDT) Received: from localhost.localdomain (71-218-127-194.hlrn.qwest.net. [71.218.127.194]) by smtp.gmail.com with ESMTPSA id f9sm9559931ioc.47.2019.08.11.13.27.02 (version=TLS1_3 cipher=AEAD-AES256-GCM-SHA384 bits=256/256); Sun, 11 Aug 2019 13:27:03 -0700 (PDT) From: James Hilliard To: buildroot@buildroot.org Date: Sun, 11 Aug 2019 14:26:59 -0600 Message-Id: <20190811202700.51610-1-james.hilliard1@gmail.com> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Subject: [Buildroot] [PATCH v3 1/2] package/weston-imx: Split weston-imx off from weston X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: James Hilliard , "Yann E . MORIN" , Thomas Petazzoni Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" This is in preparation for migration of weston to the meson build system. Since weston-imx is based off of a much older version of weston it is difficult to maintain as part of the weston package. Signed-off-by: James Hilliard --- package/Config.in | 1 + package/weston-imx/Config.in | 108 ++++++++++++++++++++++ package/weston-imx/weston-imx.hash | 2 + package/weston-imx/weston-imx.mk | 144 +++++++++++++++++++++++++++++ package/weston/Config.in | 2 + package/weston/weston.hash | 2 - package/weston/weston.mk | 16 ---- 7 files changed, 257 insertions(+), 18 deletions(-) create mode 100644 package/weston-imx/Config.in create mode 100644 package/weston-imx/weston-imx.hash create mode 100644 package/weston-imx/weston-imx.mk diff --git a/package/Config.in b/package/Config.in index 710ed12be0..626d2f37e4 100644 --- a/package/Config.in +++ b/package/Config.in @@ -335,6 +335,7 @@ comment "QT libraries and helper libraries" endif source "package/tekui/Config.in" source "package/weston/Config.in" + source "package/weston-imx/Config.in" source "package/x11r7/Config.in" comment "X applications" diff --git a/package/weston-imx/Config.in b/package/weston-imx/Config.in new file mode 100644 index 0000000000..a82cb947a0 --- /dev/null +++ b/package/weston-imx/Config.in @@ -0,0 +1,108 @@ +comment "weston-imx needs udev and a toolchain w/ locale, threads, dynamic library, headers >= 3.0" + depends on BR2_PACKAGE_IMX_GPU_VIV_OUTPUT_WL + 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_IMX + bool "weston-imx" + depends on BR2_PACKAGE_IMX_GPU_VIV_OUTPUT_WL + depends on BR2_ENABLE_LOCALE # 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 + 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 + # Make sure at least one compositor is selected. + select BR2_PACKAGE_WESTON_IMX_FBDEV if !BR2_PACKAGE_WESTON_IMX_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_IMX + +# Helper to make sure at least one compositor is selected. +config BR2_PACKAGE_WESTON_IMX_HAS_COMPOSITOR + bool + +config BR2_PACKAGE_WESTON_IMX_DRM + bool "DRM compositor" + depends on BR2_PACKAGE_MESA3D_OPENGL_EGL + select BR2_PACKAGE_WESTON_IMX_HAS_COMPOSITOR + +# 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_IMX_FBDEV + bool "fbdev compositor" + +# FreeRDP needs threads and !static, already the case for weston +config BR2_PACKAGE_WESTON_IMX_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 + select BR2_PACKAGE_WESTON_IMX_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, 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_IMX_X11 + bool "X11 compositor" + depends on BR2_PACKAGE_XORG7 + select BR2_PACKAGE_LIBXCB + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_WESTON_IMX_HAS_COMPOSITOR + +comment "X11 compositor needs X.org enabled" + depends on !BR2_PACKAGE_XORG7 + +config BR2_PACKAGE_WESTON_IMX_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_IMX_DEMO_CLIENTS + bool "demo clients" + help + This enables the installation of Weston's demo clients. + +endif diff --git a/package/weston-imx/weston-imx.hash b/package/weston-imx/weston-imx.hash new file mode 100644 index 0000000000..759a9b6554 --- /dev/null +++ b/package/weston-imx/weston-imx.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 f39f7a24a01b023aa204ad47977a6476c17a307769f29d408621a05b5cbbcfc7 weston-imx-rel_imx_4.9.51_8mq_ga.tar.gz diff --git a/package/weston-imx/weston-imx.mk b/package/weston-imx/weston-imx.mk new file mode 100644 index 0000000000..9dd2088502 --- /dev/null +++ b/package/weston-imx/weston-imx.mk @@ -0,0 +1,144 @@ +################################################################################ +# +# weston +# +################################################################################ + +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)) diff --git a/package/weston/Config.in b/package/weston/Config.in index f874b0cc6a..5a5e288540 100644 --- a/package/weston/Config.in +++ b/package/weston/Config.in @@ -1,10 +1,12 @@ comment "weston needs udev and a toolchain w/ locale, threads, dynamic library, headers >= 3.0" + depends on !BR2_PACKAGE_IMX_GPU_VIV_OUTPUT_WL 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_IMX_GPU_VIV_OUTPUT_WL depends on BR2_ENABLE_LOCALE # libinput depends on BR2_PACKAGE_HAS_UDEV depends on !BR2_STATIC_LIBS # wayland diff --git a/package/weston/weston.hash b/package/weston/weston.hash index a2dddf7a5b..c9b2d4b1ce 100644 --- a/package/weston/weston.hash +++ b/package/weston/weston.hash @@ -3,5 +3,3 @@ md5 e7b10710ef1eac82258f97bfd41fe534 weston-6.0.1.tar.xz sha1 3b39e454b3dc8dc32598790cfcc65728b448378b weston-6.0.1.tar.xz sha256 bf2f6d5aae2e11cabb6bd69a76bcf9edb084f8c3e14ca769bea7234a513155b4 weston-6.0.1.tar.xz sha512 3da04ff9b884480ce0824950347185e55584e3938021fe62014423d3d51577eafdda8de650a5de6eb37a842130c9cb14c7a952a560f6be93ff973164363af3d9 weston-6.0.1.tar.xz -# locally computed -sha256 0f0de7b7b1f65870139c95dde7abc19ed305631ae7c5d37c386db40cde108632 weston-rel_imx_4.9.51_8mq_ga.tar.gz diff --git a/package/weston/weston.mk b/package/weston/weston.mk index ee3d3be87e..154ae38b83 100644 --- a/package/weston/weston.mk +++ b/package/weston/weston.mk @@ -4,16 +4,9 @@ # ################################################################################ -ifeq ($(BR2_PACKAGE_IMX_GPU_VIV_OUTPUT_WL),y) -WESTON_VERSION = rel_imx_4.9.51_8mq_ga -WESTON_SITE = https://source.codeaurora.org/external/imx/weston-imx -WESTON_SITE_METHOD = git -WESTON_AUTORECONF = YES -else WESTON_VERSION = 6.0.1 WESTON_SITE = http://wayland.freedesktop.org/releases WESTON_SOURCE = weston-$(WESTON_VERSION).tar.xz -endif WESTON_LICENSE = MIT WESTON_LICENSE_FILES = COPYING @@ -58,15 +51,6 @@ else WESTON_CONF_OPTS += --disable-weston-launch endif -ifeq ($(BR2_PACKAGE_IMX_GPU_VIV_OUTPUT_WL),y) -ifeq ($(BR2_PACKAGE_IMX_GPU_G2D),y) -WESTON_DEPENDENCIES += imx-gpu-g2d -# --enable-imxg2d actually disables it, so no CONF_OPTS -else -WESTON_CONF_OPTS += --disable-imxg2d -endif -endif - ifeq ($(BR2_PACKAGE_HAS_LIBEGL_WAYLAND)$(BR2_PACKAGE_HAS_LIBGLES),yy) WESTON_CONF_OPTS += --enable-egl WESTON_DEPENDENCIES += libegl libgles From patchwork Sun Aug 11 20:27:00 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Hilliard X-Patchwork-Id: 1145380 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=busybox.net (client-ip=140.211.166.138; helo=whitealder.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="eJXoCFDn"; dkim-atps=neutral Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4669WW51w2z9sDQ for ; Mon, 12 Aug 2019 06:27:19 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id E78D585022; Sun, 11 Aug 2019 20:27:17 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id O6cz622CmA30; Sun, 11 Aug 2019 20:27:11 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by whitealder.osuosl.org (Postfix) with ESMTP id 1F8BB86554; Sun, 11 Aug 2019 20:27:10 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137]) by ash.osuosl.org (Postfix) with ESMTP id 9AA8C1BF322 for ; Sun, 11 Aug 2019 20:27:08 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by fraxinus.osuosl.org (Postfix) with ESMTP id 978E585DC7 for ; Sun, 11 Aug 2019 20:27:08 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from fraxinus.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id cV8LE2BCOPeV for ; Sun, 11 Aug 2019 20:27:07 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-ot1-f67.google.com (mail-ot1-f67.google.com [209.85.210.67]) by fraxinus.osuosl.org (Postfix) with ESMTPS id 7F65E85D55 for ; Sun, 11 Aug 2019 20:27:07 +0000 (UTC) Received: by mail-ot1-f67.google.com with SMTP id r20so2134642ota.5 for ; Sun, 11 Aug 2019 13:27:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=RRGD7OUqDNiWFI9JOtrxOpWS3GQJ7jnWK+gaiZQbPC8=; b=eJXoCFDnwYGj1dRz7Kiky3t1UP4buhPAJSJncFqohMOAf7IkvHih1HPaDCZjXkobeh JtkHyPDMxuJNgB30MOupfrqnz9bwrr1RTGtXFxOWKrs4P2eluHV2MAQwr3kDRiAMiQqt axGziUWTQOYne5S0y45PeXvqZxtftawa3oijcRnmEul0nGcsp3wKOPaCrvk7GMQlGWZn PXx9+hCYg5xecXTMaX1I7vMM82T+6PyyJ0G2ebx0hMchxtqs1pghTgkCOFMD6MpTKRF/ 5zQTEjwoQJg2fUdHnv+R5TxZkiB5Ko91InKL+em+t8dgzZae3NmzaJjllz7Yowsiq8D3 sJUQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=RRGD7OUqDNiWFI9JOtrxOpWS3GQJ7jnWK+gaiZQbPC8=; b=rtPBIYTUZIZIWF1mJyIBco1fxbpQNLqJZ5JFa5KNrgqL3himLJ8OK2VieBhMr7Vauf UJ4Etaj+UTcS6uwucmUs1V1r1/R+H1d6hrioj4ptxPKTEULwDfeIlzIM5Yc4d2qRBtWF qg7/7QAfYDlYT5Ajf16DRkkTGwGmqyJrgeADLfSRNZrLGdEsO2DaLlwH/fF0KESY7CIg +YpvQQop5UfsXd+XA4BOHPPbZnZ8dLpboMq4pCmHdYm2Mlnn2XRWavaTjUJ4Ls+2zB+f 4OLYRsWfL106vl6GiOcq6EuFUNvR+5GgSa/uPWGzMH750zEeMYrV9CXTAkux7ykBQmr0 DWQQ== X-Gm-Message-State: APjAAAX/Ot1J9j41+0ezX9IEXdhDSH3rYJ63UDIsw0Mcixs/dt5ANusi RpXzE4JvtdXT/YiINsIRJFd/XU5Yko8= X-Google-Smtp-Source: APXvYqx8AjA6942yx7Kwb/+zBXxPy76+3DKMmPn1TDSG5NHk5husp7NJ0zycwmWBbSoPHQYH/oCrUA== X-Received: by 2002:a02:3b2c:: with SMTP id c44mr12902398jaa.57.1565555226377; Sun, 11 Aug 2019 13:27:06 -0700 (PDT) Received: from localhost.localdomain (71-218-127-194.hlrn.qwest.net. [71.218.127.194]) by smtp.gmail.com with ESMTPSA id f9sm9559931ioc.47.2019.08.11.13.27.05 (version=TLS1_3 cipher=AEAD-AES256-GCM-SHA384 bits=256/256); Sun, 11 Aug 2019 13:27:05 -0700 (PDT) From: James Hilliard To: buildroot@buildroot.org Date: Sun, 11 Aug 2019 14:27:00 -0600 Message-Id: <20190811202700.51610-2-james.hilliard1@gmail.com> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190811202700.51610-1-james.hilliard1@gmail.com> References: <20190811202700.51610-1-james.hilliard1@gmail.com> MIME-Version: 1.0 Subject: [Buildroot] [PATCH v3 2/2] package/weston: replace autotools with meson X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: James Hilliard , "Yann E . MORIN" , Thomas Petazzoni Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" The autotools build system is in the process of being deprecated and replaced with meson for weston. We need to enable pango when building demo clients since it is required by meson. The dbus option in autotools is replaced with launcher-logind in meson. We need to explicitly set the image-webp option to avoid failures when building without webp. Replaced WESTON_NATIVE_BACKEND with backend-default in meson. Signed-off-by: James Hilliard --- Changes v2 -> v3: - fix dmabuf-v4l headers check - add choice menu to select default weston backend Changes v1 -> v2: - Require both systemd and dbus for launcher-logind - Move dmabuf-v4l out of egl/gl block - Update imx-gpu-g2d requirement block --- package/weston/Config.in | 33 ++++++++++++ package/weston/weston.mk | 110 +++++++++++++++++++++------------------ 2 files changed, 91 insertions(+), 52 deletions(-) diff --git a/package/weston/Config.in b/package/weston/Config.in index 5a5e288540..a0b66c6db1 100644 --- a/package/weston/Config.in +++ b/package/weston/Config.in @@ -35,6 +35,26 @@ config BR2_PACKAGE_WESTON if BR2_PACKAGE_WESTON +choice + prompt "Backend default" + depends on BR2_PACKAGE_WESTON_FBDEV || \ + BR2_PACKAGE_WESTON_DRM || \ + BR2_PACKAGE_WESTON_X11 + +config BR2_PACKAGE_WESTON_DEFAULT_BACKEND_FBDEV + bool "fbdev" + depends on BR2_PACKAGE_WESTON_FBDEV + +config BR2_PACKAGE_WESTON_DEFAULT_BACKEND_DRM + bool "drm" + depends on BR2_PACKAGE_WESTON_DRM + +config BR2_PACKAGE_WESTON_DEFAULT_BACKEND_X11 + bool "X11" + depends on BR2_PACKAGE_WESTON_X11 + +endchoice + # Helper to make sure at least one compositor is selected. config BR2_PACKAGE_WESTON_HAS_COMPOSITOR bool @@ -102,7 +122,20 @@ comment "XWayland support needs libepoxy and X.org enabled" config BR2_PACKAGE_WESTON_DEMO_CLIENTS bool "demo clients" + depends on BR2_PACKAGE_MESA3D_OPENGL_EGL + depends on BR2_USE_WCHAR # pango + depends on BR2_TOOLCHAIN_HAS_THREADS # pango + depends on BR2_USE_MMU # pango + depends on BR2_INSTALL_LIBSTDCPP # pango + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # pango + select BR2_PACKAGE_PANGO help This enables the installation of Weston's demo clients. +comment "demo clients needs OpenGL EGL and a toolchain w/ wchar, threads, C++" + depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \ + !BR2_INSTALL_LIBSTDCPP || !BR2_PACKAGE_MESA3D_OPENGL_EGL + endif diff --git a/package/weston/weston.mk b/package/weston/weston.mk index 154ae38b83..1fb5c39b1b 100644 --- a/package/weston/weston.mk +++ b/package/weston/weston.mk @@ -11,30 +11,27 @@ WESTON_LICENSE = MIT WESTON_LICENSE_FILES = COPYING WESTON_DEPENDENCIES = host-pkgconf wayland wayland-protocols \ - libxkbcommon pixman libpng jpeg udev cairo libinput libdrm \ - $(if $(BR2_PACKAGE_WEBP),webp) + libxkbcommon pixman libpng jpeg udev cairo libinput libdrm WESTON_CONF_OPTS = \ - --with-dtddir=$(STAGING_DIR)/usr/share/wayland \ - --disable-headless-compositor \ - --disable-colord \ - --disable-devdocs \ - --disable-setuid-install \ - --enable-autotools - -WESTON_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_CONF_OPTS += --disable-simple-dmabuf-v4l-client + -Dbuild.pkg_config_path=$(HOST_DIR)/lib/pkgconfig \ + -Dremoting=false \ + -Dbackend-headless=false \ + -Dcolor-management-colord=false \ + -Dsimple-dmabuf-drm=auto + +ifeq ($(BR2_PACKAGE_DBUS)$(BR2_PACKAGE_SYSTEMD),yy) +WESTON_CONF_OPTS += -Dlauncher-logind=true +WESTON_DEPENDENCIES += dbus systemd +else +WESTON_CONF_OPTS += -Dlauncher-logind=false endif -ifeq ($(BR2_PACKAGE_DBUS),y) -WESTON_CONF_OPTS += --enable-dbus -WESTON_DEPENDENCIES += dbus +ifeq ($(BR2_PACKAGE_WEBP),y) +WESTON_CONF_OPTS += -Dimage-webp=true +WESTON_DEPENDENCIES += webp else -WESTON_CONF_OPTS += --disable-dbus +WESTON_CONF_OPTS += -Dimage-webp=false endif # weston-launch must be u+s root in order to work properly @@ -45,93 +42,102 @@ endef define WESTON_USERS - - weston-launch -1 - - - - Weston launcher group endef -WESTON_CONF_OPTS += --enable-weston-launch +WESTON_CONF_OPTS += -Dweston-launch=true WESTON_DEPENDENCIES += linux-pam else -WESTON_CONF_OPTS += --disable-weston-launch +WESTON_CONF_OPTS += -Dweston-launch=false +endif + +# Uses VIDIOC_EXPBUF, only available from 3.8+ +ifeq ($(BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_8),y) +WESTON_CONF_OPTS += -Dsimple-clients=dmabuf-v4l +else +WESTON_CONF_OPTS += -Dsimple-clients= endif ifeq ($(BR2_PACKAGE_HAS_LIBEGL_WAYLAND)$(BR2_PACKAGE_HAS_LIBGLES),yy) -WESTON_CONF_OPTS += --enable-egl +WESTON_CONF_OPTS += -Drenderer-gl=true WESTON_DEPENDENCIES += libegl libgles else WESTON_CONF_OPTS += \ - --disable-egl \ - --disable-simple-dmabuf-drm-client \ - --disable-simple-egl-clients + -Drenderer-gl=false endif ifeq ($(BR2_PACKAGE_WESTON_RDP),y) WESTON_DEPENDENCIES += freerdp -WESTON_CONF_OPTS += --enable-rdp-compositor +WESTON_CONF_OPTS += -Dbackend-rdp=true else -WESTON_CONF_OPTS += --disable-rdp-compositor +WESTON_CONF_OPTS += -Dbackend-rdp=false endif ifeq ($(BR2_PACKAGE_WESTON_FBDEV),y) -WESTON_CONF_OPTS += \ - --enable-fbdev-compositor \ - WESTON_NATIVE_BACKEND=fbdev-backend.so +WESTON_CONF_OPTS += -Dbackend-fbdev=true +ifeq ($(BR2_PACKAGE_WESTON_DEFAULT_BACKEND_FBDEV),y) +WESTON_CONF_OPTS += -Dbackend-default=fbdev +endif else -WESTON_CONF_OPTS += --disable-fbdev-compositor +WESTON_CONF_OPTS += -Dbackend-fbdev=false endif ifeq ($(BR2_PACKAGE_WESTON_DRM),y) -WESTON_CONF_OPTS += \ - --enable-drm-compositor \ - WESTON_NATIVE_BACKEND=drm-backend.so +WESTON_CONF_OPTS += -Dbackend-drm=true +ifeq ($(BR2_PACKAGE_WESTON_DEFAULT_BACKEND_DRM),y) +WESTON_CONF_OPTS += -Dbackend-default=drm +endif else -WESTON_CONF_OPTS += --disable-drm-compositor +WESTON_CONF_OPTS += -Dbackend-drm=false endif ifeq ($(BR2_PACKAGE_WESTON_X11),y) -WESTON_CONF_OPTS += \ - --enable-x11-compositor \ - WESTON_NATIVE_BACKEND=x11-backend.so +WESTON_CONF_OPTS += -Dbackend-x11=true +ifeq ($(BR2_PACKAGE_WESTON_DEFAULT_BACKEND_X11),y) +WESTON_CONF_OPTS += -Dbackend-default=x11 +endif WESTON_DEPENDENCIES += libxcb xlib_libX11 else -WESTON_CONF_OPTS += --disable-x11-compositor +WESTON_CONF_OPTS += -Dbackend-x11=false endif ifeq ($(BR2_PACKAGE_WESTON_XWAYLAND),y) -WESTON_CONF_OPTS += --enable-xwayland +WESTON_CONF_OPTS += -Dxwayland=true WESTON_DEPENDENCIES += cairo libepoxy libxcb xlib_libX11 xlib_libXcursor else -WESTON_CONF_OPTS += --disable-xwayland +WESTON_CONF_OPTS += -Dxwayland=false endif ifeq ($(BR2_PACKAGE_LIBVA),y) -WESTON_CONF_OPTS += --enable-vaapi-recorder +WESTON_CONF_OPTS += -Dbackend-drm-screencast-vaapi=true WESTON_DEPENDENCIES += libva else -WESTON_CONF_OPTS += --disable-vaapi-recorder +WESTON_CONF_OPTS += -Dbackend-drm-screencast-vaapi=false endif ifeq ($(BR2_PACKAGE_LCMS2),y) -WESTON_CONF_OPTS += --enable-lcms +WESTON_CONF_OPTS += -Dcolor-management-lcms=true WESTON_DEPENDENCIES += lcms2 else -WESTON_CONF_OPTS += --disable-lcms +WESTON_CONF_OPTS += -Dcolor-management-lcms=false endif ifeq ($(BR2_PACKAGE_SYSTEMD),y) -WESTON_CONF_OPTS += --enable-systemd-login --enable-systemd-notify +WESTON_CONF_OPTS += -Dsystemd=true WESTON_DEPENDENCIES += systemd else -WESTON_CONF_OPTS += --disable-systemd-login --disable-systemd-notify +WESTON_CONF_OPTS += -Dsystemd=false endif ifeq ($(BR2_PACKAGE_LIBXML2),y) -WESTON_CONF_OPTS += --enable-junit-xml +WESTON_CONF_OPTS += -Dtest-junit-xml=true WESTON_DEPENDENCIES += libxml2 else -WESTON_CONF_OPTS += --disable-junit-xml +WESTON_CONF_OPTS += -Dtest-junit-xml=false endif ifeq ($(BR2_PACKAGE_WESTON_DEMO_CLIENTS),y) -WESTON_CONF_OPTS += --enable-demo-clients-install +WESTON_CONF_OPTS += -Ddemo-clients=true +WESTON_DEPENDENCIES += pango else -WESTON_CONF_OPTS += --disable-demo-clients-install +WESTON_CONF_OPTS += -Ddemo-clients=false endif -$(eval $(autotools-package)) +$(eval $(meson-package))