* [Buildroot] [PATCH v9 1/3] package/weston-imx: Split weston-imx off from weston
@ 2020-02-02 7:16 James Hilliard
2020-02-02 7:16 ` [Buildroot] [PATCH v9 2/3] package/wayland-protocols: bump to version 1.18 James Hilliard
` (3 more replies)
0 siblings, 4 replies; 9+ messages in thread
From: James Hilliard @ 2020-02-02 7:16 UTC (permalink / raw)
To: 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 <james.hilliard1@gmail.com>
---
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 c8f23c2712..d1b31d63fb 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -342,6 +342,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..e803fa3ee2
--- /dev/null
+++ b/package/weston-imx/weston-imx.mk
@@ -0,0 +1,144 @@
+################################################################################
+#
+# 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))
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
--
2.20.1
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH v9 2/3] package/wayland-protocols: bump to version 1.18
2020-02-02 7:16 [Buildroot] [PATCH v9 1/3] package/weston-imx: Split weston-imx off from weston James Hilliard
@ 2020-02-02 7:16 ` James Hilliard
2020-02-02 7:16 ` [Buildroot] [PATCH v9 3/3] package/weston: bump to version 8.0.0 James Hilliard
` (2 subsequent siblings)
3 siblings, 0 replies; 9+ messages in thread
From: James Hilliard @ 2020-02-02 7:16 UTC (permalink / raw)
To: buildroot
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
Tested-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
package/wayland-protocols/wayland-protocols.hash | 8 ++++----
package/wayland-protocols/wayland-protocols.mk | 2 +-
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/package/wayland-protocols/wayland-protocols.hash b/package/wayland-protocols/wayland-protocols.hash
index d62a433dfd..a27ff9e52c 100644
--- a/package/wayland-protocols/wayland-protocols.hash
+++ b/package/wayland-protocols/wayland-protocols.hash
@@ -1,5 +1,5 @@
-# From https://lists.freedesktop.org/archives/wayland-devel/2018-November/039662.html
-md5 55ddd5fdb02b73b9de9559aaec267315 wayland-protocols-1.17.tar.xz
-sha1 7d2569c838c776545e3eb1b1049b9c37178aae24 wayland-protocols-1.17.tar.xz
-sha256 df1319cf9705643aea9fd16f9056f4e5b2471bd10c0cc3713d4a4cdc23d6812f wayland-protocols-1.17.tar.xz
+# From https://lists.freedesktop.org/archives/wayland-devel/2019-July/040756.html
+md5 af38f22d8e233c2f2e00ddc8dcc94694 wayland-protocols-1.18.tar.xz
+sha1 aa2f132c082f3c790bd046283b3ef7ce3fb11370 wayland-protocols-1.18.tar.xz
+sha256 3d73b7e7661763dc09d7d9107678400101ecff2b5b1e531674abfa81e04874b3 wayland-protocols-1.18.tar.xz
sha256 f1a2b233e8a9a71c40f4aa885be08a0842ac85bb8588703c1dd7e6e6502e3124 COPYING
diff --git a/package/wayland-protocols/wayland-protocols.mk b/package/wayland-protocols/wayland-protocols.mk
index 5ed4c3bc90..fbfa99558d 100644
--- a/package/wayland-protocols/wayland-protocols.mk
+++ b/package/wayland-protocols/wayland-protocols.mk
@@ -4,7 +4,7 @@
#
################################################################################
-WAYLAND_PROTOCOLS_VERSION = 1.17
+WAYLAND_PROTOCOLS_VERSION = 1.18
WAYLAND_PROTOCOLS_SITE = http://wayland.freedesktop.org/releases
WAYLAND_PROTOCOLS_SOURCE = wayland-protocols-$(WAYLAND_PROTOCOLS_VERSION).tar.xz
WAYLAND_PROTOCOLS_LICENSE = MIT
--
2.20.1
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH v9 3/3] package/weston: bump to version 8.0.0
2020-02-02 7:16 [Buildroot] [PATCH v9 1/3] package/weston-imx: Split weston-imx off from weston James Hilliard
2020-02-02 7:16 ` [Buildroot] [PATCH v9 2/3] package/wayland-protocols: bump to version 1.18 James Hilliard
@ 2020-02-02 7:16 ` James Hilliard
2020-02-02 10:52 ` Yann E. MORIN
2020-02-02 10:13 ` [Buildroot] [PATCH v9 1/3] package/weston-imx: Split weston-imx off from weston Yann E. MORIN
2020-02-02 16:42 ` Michael Walle
3 siblings, 1 reply; 9+ messages in thread
From: James Hilliard @ 2020-02-02 7:16 UTC (permalink / raw)
To: buildroot
The autotools build system is 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.
Added optional pipewire dependency.
Added patch fixing missing include in os-compatibility.c.
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
Tested-by: Bernd Kuhls <bernd.kuhls@t-online.de>
---
Changes v8 -> v9:
- add patch fixing missing defines on pre-v3.17 kernels
Changes v7 -> v8:
- add patch fixing missing sys/mman.h includes
Changes v6 -> v7:
- bump weston from 7.0.0 to 8.0.0
Changes v5 -> v6:
- add pipewire support
Changes v4 -> v5:
- fix up demo clients dependencies
Changes v3 -> v4:
- bump weston from 6.0.1 to 7.0.0
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
---
...include-sys-mman.h-in-os-compatibili.patch | 38 ++++++
...issing-defines-for-pre-v3.17-kernels.patch | 42 +++++++
package/weston/Config.in | 35 ++++++
package/weston/weston.hash | 10 +-
package/weston/weston.mk | 118 ++++++++++--------
5 files changed, 185 insertions(+), 58 deletions(-)
create mode 100644 package/weston/0001-unconditionally-include-sys-mman.h-in-os-compatibili.patch
create mode 100644 package/weston/0002-add-missing-defines-for-pre-v3.17-kernels.patch
diff --git a/package/weston/0001-unconditionally-include-sys-mman.h-in-os-compatibili.patch b/package/weston/0001-unconditionally-include-sys-mman.h-in-os-compatibili.patch
new file mode 100644
index 0000000000..0c632fbf35
--- /dev/null
+++ b/package/weston/0001-unconditionally-include-sys-mman.h-in-os-compatibili.patch
@@ -0,0 +1,38 @@
+From 888dd1ae6a0261230b2bc47079d7b20df8c05e68 Mon Sep 17 00:00:00 2001
+From: James Hilliard <james.hilliard1@gmail.com>
+Date: Sat, 1 Feb 2020 20:02:29 -0700
+Subject: [PATCH] unconditionally include sys/mman.h in os-compatibility.c
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Fixes:
+../shared/os-compatibility.c:273:25: error: ?PROT_READ? undeclared (first use in this function); did you mean ?LOCK_READ??
+ map = mmap(NULL, size, PROT_READ | PROT_WRITE, MAP_SHARED, file->fd, 0);
+ ^~~~~~~~~
+ LOCK_READ
+
+Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
+[Upstream status:
+https://gitlab.freedesktop.org/wayland/weston/merge_requests/368]
+---
+ shared/os-compatibility.c | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/shared/os-compatibility.c b/shared/os-compatibility.c
+index 5e1ce479..ddc37807 100644
+--- a/shared/os-compatibility.c
++++ b/shared/os-compatibility.c
+@@ -35,9 +35,7 @@
+ #include <stdlib.h>
+ #include <libweston/zalloc.h>
+
+-#ifdef HAVE_MEMFD_CREATE
+ #include <sys/mman.h>
+-#endif
+
+ #include "os-compatibility.h"
+
+--
+2.20.1
+
diff --git a/package/weston/0002-add-missing-defines-for-pre-v3.17-kernels.patch b/package/weston/0002-add-missing-defines-for-pre-v3.17-kernels.patch
new file mode 100644
index 0000000000..39360f4fd2
--- /dev/null
+++ b/package/weston/0002-add-missing-defines-for-pre-v3.17-kernels.patch
@@ -0,0 +1,42 @@
+From f43c98b23e0d7731cd8d7a9b4510c359f3df7930 Mon Sep 17 00:00:00 2001
+From: James Hilliard <james.hilliard1@gmail.com>
+Date: Sat, 1 Feb 2020 23:32:29 -0700
+Subject: [PATCH] add missing defines for pre-v3.17 kernels
+
+Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
+[Upstream status:
+https://gitlab.freedesktop.org/wayland/weston/merge_requests/369]
+---
+ shared/os-compatibility.c | 16 ++++++++++++++++
+ 1 file changed, 16 insertions(+)
+
+diff --git a/shared/os-compatibility.c b/shared/os-compatibility.c
+index ddc37807..26c39e67 100644
+--- a/shared/os-compatibility.c
++++ b/shared/os-compatibility.c
+@@ -39,6 +39,22 @@
+
+ #include "os-compatibility.h"
+
++#ifndef F_GET_SEALS
++#define F_GET_SEALS (1034)
++#endif
++
++#ifndef F_SEAL_SHRINK
++#define F_SEAL_SHRINK 0x0002
++#endif
++
++#ifndef F_SEAL_GROW
++#define F_SEAL_GROW 0x0004
++#endif
++
++#ifndef F_SEAL_WRITE
++#define F_SEAL_WRITE 0x0008
++#endif
++
+ #define READONLY_SEALS (F_SEAL_SHRINK | F_SEAL_GROW | F_SEAL_WRITE)
+
+ int
+--
+2.20.1
+
diff --git a/package/weston/Config.in b/package/weston/Config.in
index 5a5e288540..a707b64d00 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,22 @@ comment "XWayland support needs libepoxy and X.org enabled"
config BR2_PACKAGE_WESTON_DEMO_CLIENTS
bool "demo clients"
+ depends on BR2_PACKAGE_HAS_LIBGLES
+ depends on BR2_PACKAGE_HAS_LIBEGL_WAYLAND
+ 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 an OpenGL ES provider, an OpenEGL-capable Wayland backend 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_HAS_LIBGLES || \
+ !BR2_PACKAGE_HAS_LIBEGL_WAYLAND
+
endif
diff --git a/package/weston/weston.hash b/package/weston/weston.hash
index c9b2d4b1ce..0be1855a86 100644
--- a/package/weston/weston.hash
+++ b/package/weston/weston.hash
@@ -1,5 +1,5 @@
-# From https://lists.freedesktop.org/archives/wayland-devel/2019-June/040661.html
-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
+# From https://lists.freedesktop.org/archives/wayland-devel/2020-January/041147.html
+md5 53e4810d852df0601d01fd986a5b22b3 weston-8.0.0.tar.xz
+sha1 80200a9c677d34c2de52230be444bd03ecd84229 weston-8.0.0.tar.xz
+sha256 7518b49b2eaa1c3091f24671bdcc124fd49fc8f1af51161927afa4329c027848 weston-8.0.0.tar.xz
+sha512 74853b0c9cabbabe942a2d057b65e4e97b48dc5f4df6d7b9ffc10ec52bc787009b12b900be6b426551902b920b7308baa967b7489761641dc9c31cf90440950c weston-8.0.0.tar.xz
diff --git a/package/weston/weston.mk b/package/weston/weston.mk
index 154ae38b83..ad15591e87 100644
--- a/package/weston/weston.mk
+++ b/package/weston/weston.mk
@@ -4,37 +4,33 @@
#
################################################################################
-WESTON_VERSION = 6.0.1
+WESTON_VERSION = 8.0.0
WESTON_SITE = http://wayland.freedesktop.org/releases
WESTON_SOURCE = weston-$(WESTON_VERSION).tar.xz
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
+
+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 +41,109 @@ 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_PIPEWIRE)$(BR2_PACKAGE_WESTON_DRM),yy)
+WESTON_CONF_OPTS += -Dpipewire=true
+WESTON_DEPENDENCIES += pipewire
+else
+WESTON_CONF_OPTS += -Dpipewire=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))
--
2.20.1
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH v9 1/3] package/weston-imx: Split weston-imx off from weston
2020-02-02 7:16 [Buildroot] [PATCH v9 1/3] package/weston-imx: Split weston-imx off from weston James Hilliard
2020-02-02 7:16 ` [Buildroot] [PATCH v9 2/3] package/wayland-protocols: bump to version 1.18 James Hilliard
2020-02-02 7:16 ` [Buildroot] [PATCH v9 3/3] package/weston: bump to version 8.0.0 James Hilliard
@ 2020-02-02 10:13 ` Yann E. MORIN
2020-02-02 10:35 ` ratbert90
2020-02-02 16:42 ` Michael Walle
3 siblings, 1 reply; 9+ messages in thread
From: Yann E. MORIN @ 2020-02-02 10:13 UTC (permalink / raw)
To: buildroot
James, All,
On 2020-02-02 00:16 -0700, James Hilliard spake thusly:
> 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 <james.hilliard1@gmail.com>
Applied to master after a few fixes; please review the new commit log
for the details.
Thanks for staying on board all this time! :-)
Regards,
Yann E. MORIN.
> ---
> 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 c8f23c2712..d1b31d63fb 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -342,6 +342,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..e803fa3ee2
> --- /dev/null
> +++ b/package/weston-imx/weston-imx.mk
> @@ -0,0 +1,144 @@
> +################################################################################
> +#
> +# 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))
> 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
> --
> 2.20.1
>
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 561 099 427 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH v9 1/3] package/weston-imx: Split weston-imx off from weston
2020-02-02 10:13 ` [Buildroot] [PATCH v9 1/3] package/weston-imx: Split weston-imx off from weston Yann E. MORIN
@ 2020-02-02 10:35 ` ratbert90
0 siblings, 0 replies; 9+ messages in thread
From: ratbert90 @ 2020-02-02 10:35 UTC (permalink / raw)
To: buildroot
Congratulations!
________________________________
From: buildroot <buildroot-bounces@busybox.net> on behalf of Yann E. MORIN <yann.morin.1998@free.fr>
Sent: Sunday, February 2, 2020 11:13:47 AM
To: James Hilliard <james.hilliard1@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>; buildroot at buildroot.org <buildroot@buildroot.org>
Subject: Re: [Buildroot] [PATCH v9 1/3] package/weston-imx: Split weston-imx off from weston
James, All,
On 2020-02-02 00:16 -0700, James Hilliard spake thusly:
> 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 <james.hilliard1@gmail.com>
Applied to master after a few fixes; please review the new commit log
for the details.
Thanks for staying on board all this time! :-)
Regards,
Yann E. MORIN.
> ---
> 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 c8f23c2712..d1b31d63fb 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -342,6 +342,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..e803fa3ee2
> --- /dev/null
> +++ b/package/weston-imx/weston-imx.mk
> @@ -0,0 +1,144 @@
> +################################################################################
> +#
> +# 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))
> 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
> --
> 2.20.1
>
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 561 099 427 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
_______________________________________________
buildroot mailing list
buildroot at busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20200202/194f00ef/attachment.html>
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH v9 3/3] package/weston: bump to version 8.0.0
2020-02-02 7:16 ` [Buildroot] [PATCH v9 3/3] package/weston: bump to version 8.0.0 James Hilliard
@ 2020-02-02 10:52 ` Yann E. MORIN
2020-02-02 11:43 ` James Hilliard
0 siblings, 1 reply; 9+ messages in thread
From: Yann E. MORIN @ 2020-02-02 10:52 UTC (permalink / raw)
To: buildroot
James, All,
On 2020-02-02 00:16 -0700, James Hilliard spake thusly:
> The autotools build system is 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.
... "which is only ever used with systemd, so add it to the condition."
> We need to explicitly set the image-webp option to avoid failures when
> building without webp.
There's no need for this kind of detail in the commit log.
> Replaced WESTON_NATIVE_BACKEND with backend-default in meson.
This should be a preparatory patch, because it also makes sense with the
current situation.
However, if only the RDP backend isenabled, there is then no default.
That's not good.
Furthermore, the choise of a default is before the actual selection, so
it means the user as to back and forth to change the default.
I would alternatively suggest that the choice indeed stays first, but
that dthe dependency is incerted: the choice seelcts the defautl
backend:
choice
bool "default compositor"
config BR2_PKG_WESON_DEFAULT_FB
bool "fb"
select BR2_PKG_WESTON_FB
config BR2_PKG_WESTON_DEFAULT_DRM
bool "drm"
depends on BR2_PACKAGE_MESA3D_OPENGL_EGL
select BR2_PKG_WESTON_DRM
comment ""drm backend needs mesa3d w/ EGL driver"
depends on !BR2_PACKAGE_MESA3D_OPENGL_EGL
[...x11, rdp...]
endchoice
config BR2_PKG_WESTON_DEFAULT_COMPOSITOR
string
default "fbdev" if BR2_PKG_WESON_DEFAULT_FB
default "drm" if BR2_PKG_WESON_DEFAULT_DRM
[...]
config BR2_PKG_WESTON_FB
bool "fb compositor"
config BR2_PKG_WESTON_DRM
bool "drm compositor"
depends on BR2_PACKAGE_MESA3D_OPENGL_EGL
[...]
> Added optional pipewire dependency.
This should be done in a follow up patch.
> Added patch fixing missing include in os-compatibility.c.
Such details are not needed in the commit log, as long as the patch
description is good enough (which it should be). Otherwise, you'd also
have to explain the second patch too...
> Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
> Tested-by: Bernd Kuhls <bernd.kuhls@t-online.de>
[--SNIP--]
> @@ -102,7 +122,22 @@ comment "XWayland support needs libepoxy and X.org enabled"
>
> config BR2_PACKAGE_WESTON_DEMO_CLIENTS
> bool "demo clients"
> + depends on BR2_PACKAGE_HAS_LIBGLES
> + depends on BR2_PACKAGE_HAS_LIBEGL_WAYLAND
> + 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
Please keep the dependency in the order described in the manual:
- qrchitecture dependencies, e.g. MMU...
- toolchain dependencies, e.g. sync-4, stdc++ threads, wchar...
- system depependencies, e.g. init system...
- negative package dependencies, e.g. !foo, !bar_opt
- positive package dependencies, e.g. foo, bar_opt
[--SNIP--]
> -# 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
You're moving conditions around (the vidioc one was later), so it makes
reviewing even more complicated...
> +ifeq ($(BR2_PACKAGE_DBUS)$(BR2_PACKAGE_SYSTEMD),yy)
This new systemd dependency should be explained in the commit log (see
my proposal blurb above).
> 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
This (and the following cases) should be replaced by a single line,
outside of any condition:
WESTON_CONF_OPTS += -Dbackend-default=$(call qstrip,$(BR2_PKG_WESTON_DEFAULT_COMPOSITOR))
Care to fix and respin, please?
Regards,
Yann E. MORIN.
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 561 099 427 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH v9 3/3] package/weston: bump to version 8.0.0
2020-02-02 10:52 ` Yann E. MORIN
@ 2020-02-02 11:43 ` James Hilliard
0 siblings, 0 replies; 9+ messages in thread
From: James Hilliard @ 2020-02-02 11:43 UTC (permalink / raw)
To: buildroot
On Sun, Feb 2, 2020 at 3:52 AM Yann E. MORIN <yann.morin.1998@free.fr> wrote:
>
> James, All,
>
> On 2020-02-02 00:16 -0700, James Hilliard spake thusly:
> > The autotools build system is 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.
>
> ... "which is only ever used with systemd, so add it to the condition."
>
> > We need to explicitly set the image-webp option to avoid failures when
> > building without webp.
>
> There's no need for this kind of detail in the commit log.
>
> > Replaced WESTON_NATIVE_BACKEND with backend-default in meson.
>
> This should be a preparatory patch, because it also makes sense with the
> current situation.
The behavior of WESTON_NATIVE_BACKEND appears to be a bit different
from backend-default, see:
https://github.com/wayland-project/weston/blob/6.0.1/configure.ac#L102-L103
>
> However, if only the RDP backend isenabled, there is then no default.
> That's not good.
>
> Furthermore, the choise of a default is before the actual selection, so
> it means the user as to back and forth to change the default.
>
> I would alternatively suggest that the choice indeed stays first, but
> that dthe dependency is incerted: the choice seelcts the defautl
> backend:
>
> choice
> bool "default compositor"
>
> config BR2_PKG_WESON_DEFAULT_FB
> bool "fb"
> select BR2_PKG_WESTON_FB
>
> config BR2_PKG_WESTON_DEFAULT_DRM
> bool "drm"
> depends on BR2_PACKAGE_MESA3D_OPENGL_EGL
> select BR2_PKG_WESTON_DRM
>
> comment ""drm backend needs mesa3d w/ EGL driver"
> depends on !BR2_PACKAGE_MESA3D_OPENGL_EGL
>
> [...x11, rdp...]
>
> endchoice
>
> config BR2_PKG_WESTON_DEFAULT_COMPOSITOR
> string
> default "fbdev" if BR2_PKG_WESON_DEFAULT_FB
> default "drm" if BR2_PKG_WESON_DEFAULT_DRM
> [...]
>
> config BR2_PKG_WESTON_FB
> bool "fb compositor"
>
> config BR2_PKG_WESTON_DRM
> bool "drm compositor"
> depends on BR2_PACKAGE_MESA3D_OPENGL_EGL
>
> [...]
>
> > Added optional pipewire dependency.
>
> This should be done in a follow up patch.
>
> > Added patch fixing missing include in os-compatibility.c.
>
> Such details are not needed in the commit log, as long as the patch
> description is good enough (which it should be). Otherwise, you'd also
> have to explain the second patch too...
>
> > Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
> > Tested-by: Bernd Kuhls <bernd.kuhls@t-online.de>
> [--SNIP--]
> > @@ -102,7 +122,22 @@ comment "XWayland support needs libepoxy and X.org enabled"
> >
> > config BR2_PACKAGE_WESTON_DEMO_CLIENTS
> > bool "demo clients"
> > + depends on BR2_PACKAGE_HAS_LIBGLES
> > + depends on BR2_PACKAGE_HAS_LIBEGL_WAYLAND
> > + 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
>
> Please keep the dependency in the order described in the manual:
> - qrchitecture dependencies, e.g. MMU...
> - toolchain dependencies, e.g. sync-4, stdc++ threads, wchar...
> - system depependencies, e.g. init system...
> - negative package dependencies, e.g. !foo, !bar_opt
> - positive package dependencies, e.g. foo, bar_opt
>
> [--SNIP--]
> > -# 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
>
> You're moving conditions around (the vidioc one was later), so it makes
> reviewing even more complicated...
>
> > +ifeq ($(BR2_PACKAGE_DBUS)$(BR2_PACKAGE_SYSTEMD),yy)
>
> This new systemd dependency should be explained in the commit log (see
> my proposal blurb above).
>
> > 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
>
> This (and the following cases) should be replaced by a single line,
> outside of any condition:
>
> WESTON_CONF_OPTS += -Dbackend-default=$(call qstrip,$(BR2_PKG_WESTON_DEFAULT_COMPOSITOR))
>
> Care to fix and respin, please?
>
> Regards,
> Yann E. MORIN.
>
> --
> .-----------------.--------------------.------------------.--------------------.
> | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
> | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
> | +33 561 099 427 `------------.-------: X AGAINST | \e/ There is no |
> | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
> '------------------------------^-------^------------------^--------------------'
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH v9 1/3] package/weston-imx: Split weston-imx off from weston
2020-02-02 7:16 [Buildroot] [PATCH v9 1/3] package/weston-imx: Split weston-imx off from weston James Hilliard
` (2 preceding siblings ...)
2020-02-02 10:13 ` [Buildroot] [PATCH v9 1/3] package/weston-imx: Split weston-imx off from weston Yann E. MORIN
@ 2020-02-02 16:42 ` Michael Walle
2020-02-02 19:02 ` Yann E. MORIN
3 siblings, 1 reply; 9+ messages in thread
From: Michael Walle @ 2020-02-02 16:42 UTC (permalink / raw)
To: buildroot
Hi,
Am 2. Februar 2020 08:16:44 MEZ schrieb James Hilliard <james.hilliard1@gmail.com>:
>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 <james.hilliard1@gmail.com>
>---
> package/Config.in | 1 +
> package/weston-imx/Config.in | 108 ++++++++++++++++++++++
> package/weston-imx/weston-imx.hash | 2 +
> package/weston-imx/weston-imx.mk | 144 +++++++++++++++++++++++++++++
I'm too late to this since this is already merged.. but now that weston-imx is a separate package shouldn't it go into packages/freescale-imx/?
-michael
> 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 c8f23c2712..d1b31d63fb 100644
>--- a/package/Config.in
>+++ b/package/Config.in
>@@ -342,6 +342,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..e803fa3ee2
>--- /dev/null
>+++ b/package/weston-imx/weston-imx.mk
>@@ -0,0 +1,144 @@
>+################################################################################
>+#
>+# 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))
>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
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH v9 1/3] package/weston-imx: Split weston-imx off from weston
2020-02-02 16:42 ` Michael Walle
@ 2020-02-02 19:02 ` Yann E. MORIN
0 siblings, 0 replies; 9+ messages in thread
From: Yann E. MORIN @ 2020-02-02 19:02 UTC (permalink / raw)
To: buildroot
Michael, All,
On 2020-02-02 17:42 +0100, Michael Walle spake thusly:
> Am 2. Februar 2020 08:16:44 MEZ schrieb James Hilliard <james.hilliard1@gmail.com>:
> >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 <james.hilliard1@gmail.com>
> >---
> > package/Config.in | 1 +
> > package/weston-imx/Config.in | 108 ++++++++++++++++++++++
> > package/weston-imx/weston-imx.hash | 2 +
> > package/weston-imx/weston-imx.mk | 144 +++++++++++++++++++++++++++++
>
> I'm too late to this since this is already merged.. but now that
> weston-imx is a separate package shouldn't it go into
> packages/freescale-imx/?
I also considered it, but decided against eventually, with the reasoning
that I prefer to have it next to weston so it bugs me every time I try
to auto-complete /package/west<TAB>, enough so that one day I get enough
and kill it with fire and rage.
Seriously, though, yes, I prefer to have it next to the vanilla one, but
that was just personal preference. Had the patch moved it to the IMX sub
directory, I might have left it there.
Anyway, too late now! ;-)
Regards,
Yann E. MORIN.
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 561 099 427 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2020-02-02 19:02 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-02-02 7:16 [Buildroot] [PATCH v9 1/3] package/weston-imx: Split weston-imx off from weston James Hilliard
2020-02-02 7:16 ` [Buildroot] [PATCH v9 2/3] package/wayland-protocols: bump to version 1.18 James Hilliard
2020-02-02 7:16 ` [Buildroot] [PATCH v9 3/3] package/weston: bump to version 8.0.0 James Hilliard
2020-02-02 10:52 ` Yann E. MORIN
2020-02-02 11:43 ` James Hilliard
2020-02-02 10:13 ` [Buildroot] [PATCH v9 1/3] package/weston-imx: Split weston-imx off from weston Yann E. MORIN
2020-02-02 10:35 ` ratbert90
2020-02-02 16:42 ` Michael Walle
2020-02-02 19:02 ` Yann E. MORIN
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.