git: 9e6c1b9b54af - main - x11/kitty: fix build

From: Dmitry Marakasov <amdmi3_at_FreeBSD.org>
Date: Wed, 28 May 2025 00:50:51 UTC
The branch main has been updated by amdmi3:

URL: https://cgit.FreeBSD.org/ports/commit/?id=9e6c1b9b54af6e0921c417b22286e4dad88fabaa

commit 9e6c1b9b54af6e0921c417b22286e4dad88fabaa
Author:     Dmitry Marakasov <amdmi3@FreeBSD.org>
AuthorDate: 2025-05-28 00:41:32 +0000
Commit:     Dmitry Marakasov <amdmi3@FreeBSD.org>
CommitDate: 2025-05-28 00:45:54 +0000

    x11/kitty: fix build
    
    - Unoptionize internal docs building, it affects manpage and breaks
      the port WITHOUT_DOCS
    - Backport upstream commit 49092f5 "Add new wayland top level state
      enum values", also unbreaking the build
    
    PR:             285916
    Approved by:    maintainer timeout (nivit, almost 2 months)
---
 x11/kitty/Makefile                        |  9 ++++-----
 x11/kitty/files/patch-glfw_wl__platform.h | 13 +++++++++++++
 x11/kitty/files/patch-glfw_wl__window.c   | 15 +++++++++++++++
 3 files changed, 32 insertions(+), 5 deletions(-)

diff --git a/x11/kitty/Makefile b/x11/kitty/Makefile
index acd57826d0d8..d4c397c5d4b0 100644
--- a/x11/kitty/Makefile
+++ b/x11/kitty/Makefile
@@ -20,7 +20,8 @@ BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}furo>0:textproc/py-furo@${PY_FLAVOR} \
 		simde>=0.7.6:devel/simde \
 		sphinx-build:textproc/py-sphinx@${PY_FLAVOR} \
 		urw-base35-fonts>=20200910:x11-fonts/urw-base35-fonts \
-		wayland-protocols>=0:graphics/wayland-protocols
+		wayland-protocols>=0:graphics/wayland-protocols \
+		roboto-fonts-ttf>=2.134:x11-fonts/roboto-fonts-ttf
 LIB_DEPENDS=	libcanberra.so:audio/libcanberra \
 		libdbus-1.so:devel/dbus \
 		libepoll-shim-interpose.so:devel/libepoll-shim \
@@ -49,7 +50,7 @@ SHEBANG_GLOB=	*.py
 
 GO_MODULE=	github.com/kovidgoyal/kitty
 
-MAKE_ENV=	PYTHONDONTWRITEBYTECODE=1
+MAKE_ENV=	PYTHONDONTWRITEBYTECODE=1 BUILD_DOCS=yes
 TEST_ENV=	PATH="${STAGEDIR}${PREFIX}/bin:${PATH}"
 TEST_TARGET=	test
 
@@ -69,9 +70,7 @@ _STRIP_TARGETS=	kitty/fast_data_types.so kitty/glfw-x11.so \
 
 _EMPTY_DIRS=	kittens/choose kittens/diff kittens/unicode_input kittens kitty
 
-OPTIONS_DEFINE=		DOCS
-DOCS_BUILD_DEPENDS=	roboto-fonts-ttf>=2.134:x11-fonts/roboto-fonts-ttf
-DOCS_MAKE_ENV=		BUILD_DOCS=yes
+OPTIONS_DEFINE=	DOCS
 
 .include <bsd.port.options.mk>
 
diff --git a/x11/kitty/files/patch-glfw_wl__platform.h b/x11/kitty/files/patch-glfw_wl__platform.h
new file mode 100644
index 000000000000..20b93b4ec22e
--- /dev/null
+++ b/x11/kitty/files/patch-glfw_wl__platform.h
@@ -0,0 +1,13 @@
+--- glfw/wl_platform.h.orig	1979-11-29 21:00:00 UTC
++++ glfw/wl_platform.h
+@@ -130,6 +130,10 @@ typedef enum WaylandWindowState {
+     TOPLEVEL_STATE_TILED_TOP = 64,
+     TOPLEVEL_STATE_TILED_BOTTOM = 128,
+     TOPLEVEL_STATE_SUSPENDED = 256,
++    TOPLEVEL_STATE_CONSTRAINED_LEFT = 512,
++    TOPLEVEL_STATE_CONSTRAINED_RIGHT = 1024,
++    TOPLEVEL_STATE_CONSTRAINED_TOP = 2048,
++    TOPLEVEL_STATE_CONSTRAINED_BOTTOM = 4096,
+ } WaylandWindowState;
+ 
+ typedef struct glfw_wl_xdg_activation_request {
diff --git a/x11/kitty/files/patch-glfw_wl__window.c b/x11/kitty/files/patch-glfw_wl__window.c
new file mode 100644
index 000000000000..a3da370467c2
--- /dev/null
+++ b/x11/kitty/files/patch-glfw_wl__window.c
@@ -0,0 +1,15 @@
+--- glfw/wl_window.c.orig	1979-11-29 21:00:00 UTC
++++ glfw/wl_window.c
+@@ -679,6 +679,12 @@ xdgToplevelHandleConfigure(void* data,
+ #ifdef XDG_TOPLEVEL_STATE_SUSPENDED_SINCE_VERSION
+             C(TOPLEVEL_STATE_SUSPENDED);
+ #endif
++#ifdef XDG_TOPLEVEL_STATE_CONSTRAINED_LEFT_SINCE_VERSION
++            C(TOPLEVEL_STATE_CONSTRAINED_LEFT);
++            C(TOPLEVEL_STATE_CONSTRAINED_RIGHT);
++            C(TOPLEVEL_STATE_CONSTRAINED_TOP);
++            C(TOPLEVEL_STATE_CONSTRAINED_BOTTOM);
++#endif
+ #undef C
+         }
+     }