git: 6d11475fd07b - 2024Q2 - x11-servers/xwayland: Sync options with xwayland-devel

From: Emmanuel Vadot <manu_at_FreeBSD.org>
Date: Tue, 09 Apr 2024 16:00:39 UTC
The branch 2024Q2 has been updated by manu:

URL: https://cgit.FreeBSD.org/ports/commit/?id=6d11475fd07bbc0ffd7faeaf5295e0b5a3107dc1

commit 6d11475fd07bbc0ffd7faeaf5295e0b5a3107dc1
Author:     Emmanuel Vadot <manu@FreeBSD.org>
AuthorDate: 2024-04-05 13:41:44 +0000
Commit:     Emmanuel Vadot <manu@FreeBSD.org>
CommitDate: 2024-04-09 16:00:23 +0000

    x11-servers/xwayland: Sync options with xwayland-devel
    
    - Provide the option to compile with libdecor for client-side
      decoration and enable it by default.
    - Provide the option to compile with libei for emulated input
      and enable it by default.
    - Enable xdmcp
    - Enable xcsecurity needed for X11 forwarding.
    - Use some meson default (dri3, ipv6, glamor, sha1 and xkb_dir)
    - Remove unneeded USES egl
    
    Differential Revision:  https://reviews.freebsd.org/D44644
    Reviewed by:    bapt, jbeich
    Sponsored by:   Beckhoff Automation GmbH & Co. KG
    
    (cherry picked from commit a26e05c85c306c92623254d13deef91e89e000a6)
---
 x11-servers/xwayland/Makefile  | 29 ++++++++++++++++-------------
 x11-servers/xwayland/pkg-descr | 10 ++++++++--
 2 files changed, 24 insertions(+), 15 deletions(-)

diff --git a/x11-servers/xwayland/Makefile b/x11-servers/xwayland/Makefile
index 084043c848c2..0850e7cf3476 100644
--- a/x11-servers/xwayland/Makefile
+++ b/x11-servers/xwayland/Makefile
@@ -1,6 +1,6 @@
 PORTNAME=	xwayland
 PORTVERSION=	23.2.5
-PORTREVISION=	1
+PORTREVISION=	2
 PORTEPOCH=	1
 CATEGORIES=	x11-servers
 MASTER_SITES=	XORG/individual/xserver
@@ -11,7 +11,7 @@ PATCHFILES+=	707c37b7ab9e.patch:-p1 # https://gitlab.freedesktop.org/xorg/xserve
 PATCHFILES+=	3b0d1a3a2296.patch:-p1 # https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/432
 
 MAINTAINER=	x11@FreeBSD.org
-COMMENT=	X11 server as Wayland Client
+COMMENT=	X11 server as Wayland client
 WWW=		https://wayland.freedesktop.org/xserver.html
 
 LICENSE=	MIT
@@ -19,7 +19,7 @@ LICENSE_FILE=	${WRKSRC}/COPYING
 
 BUILD_DEPENDS=	evdev-proto>0:devel/evdev-proto \
 		${LOCALBASE}/include/GL/internal/dri_interface.h:graphics/mesa-dri \
-		wayland-protocols>=1.18:graphics/wayland-protocols
+		wayland-protocols>=1.30:graphics/wayland-protocols
 LIB_DEPENDS=	libdrm.so:graphics/libdrm \
 		libepoxy.so:graphics/libepoxy \
 		libwayland-client.so:graphics/wayland \
@@ -30,17 +30,11 @@ RUN_DEPENDS=	xkbcomp:x11/xkbcomp \
 CONFLICTS_INSTALL=	${PORTNAME}-devel
 
 USES=		compiler:c11 gl meson pkgconfig xorg tar:xz
-USE_GL=		egl gbm gl
-USE_XORG=	pixman xau xfont2 xkbfile xshmfence xtrans
+USE_GL=		gbm gl
+USE_XORG=	pixman xau xdmcp xfont2 xkbfile xshmfence xtrans
 
 MESON_ARGS=	-Dxvfb=false \
-		-Dxdmcp=false \
-		-Dxcsecurity=false \
-		-Ddri3=true \
-		-Dglamor=true \
-		-Dsha1=libmd \
-		-Dipv6=true \
-		-Dxkb_dir=${LOCALBASE}/share/X11/xkb \
+		-Dxcsecurity=true \
 		-Dxkb_output_dir=/var/lib/xkb \
 		-Ddefault_font_path="${DEFAULT_FONTPATH_LIST:ts,}"
 
@@ -56,7 +50,16 @@ DEFAULT_FONTPATH_LIST= \
 	${FONTPATH_ROOT}/75dpi/ \
 	catalogue:${FONTPATHD}
 
-OPTIONS_DEFINE=	NVIDIA
+OPTIONS_DEFINE=		CSD EI NVIDIA
+OPTIONS_DEFAULT=	CSD EI
+
+CSD_DESC=		Client-side decorations via libdecor
+CSD_LIB_DEPENDS=	libdecor-0.so:x11-toolkits/libdecor
+CSD_MESON_TRUE=		libdecor
+
+EI_DESC=		Emulated input via libei
+EI_LIB_DEPENDS=		libei.so:x11/libei
+EI_MESON_OFF=		-Dxwayland_ei=false
 
 NVIDIA_DESC=		EGLStream support for glamor on Xwayland
 NVIDIA_BUILD_DEPENDS=	egl-wayland>0:graphics/egl-wayland
diff --git a/x11-servers/xwayland/pkg-descr b/x11-servers/xwayland/pkg-descr
index b7f97edf89c3..82de643f878d 100644
--- a/x11-servers/xwayland/pkg-descr
+++ b/x11-servers/xwayland/pkg-descr
@@ -1,2 +1,8 @@
-XWayland is an X Server running as a Wayland client, thus capable of displaying
-native X11 client applications in a Wayland compositor environment.
+Wayland is a complete window system in itself, but even so, if we're
+migrating away from X, it makes sense to have a good backwards
+compatibility story. With a few changes, the Xorg server can be
+modified to use wayland input devices for input and forward either the
+root window or individual top-level windows as wayland surfaces. The
+server still runs the same 2D driver with the same acceleration code
+as it does when it runs natively. The main difference is that wayland
+handles presentation of the windows instead of KMS.