git: dffdb0825f01 - main - x11-toolkits/wlroots-devel: replace override.mk with upstream fix

From: Jan Beich <jbeich_at_FreeBSD.org>
Date: Tue, 04 Jun 2024 07:19:23 UTC
The branch main has been updated by jbeich:

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

commit dffdb0825f0118e96fbedac1be8ef3f65b641599
Author:     Jan Beich <jbeich@FreeBSD.org>
AuthorDate: 2024-06-03 13:48:48 +0000
Commit:     Jan Beich <jbeich@FreeBSD.org>
CommitDate: 2024-06-04 07:18:31 +0000

    x11-toolkits/wlroots-devel: replace override.mk with upstream fix
---
 x11-toolkits/wlroots-devel/Makefile        |   8 +-
 x11-toolkits/wlroots-devel/distinfo        |   2 +
 x11-toolkits/wlroots-devel/override.mk     |   8 -
 x11-toolkits/wlroots-devel/pkg-plist       | 225 ++++++++++++++---------------
 x11-wm/hyprland/Makefile                   |  10 +-
 x11-wm/hyprland/files/patch-system-wlroots |  19 ++-
 x11-wm/sway-devel/Makefile                 |   7 +-
 x11-wm/sway-devel/distinfo                 |   2 +
 8 files changed, 135 insertions(+), 146 deletions(-)

diff --git a/x11-toolkits/wlroots-devel/Makefile b/x11-toolkits/wlroots-devel/Makefile
index 1042b32fc9e5..f2e517350ff7 100644
--- a/x11-toolkits/wlroots-devel/Makefile
+++ b/x11-toolkits/wlroots-devel/Makefile
@@ -1,7 +1,7 @@
 PORTNAME=	wlroots
 DISTVERSION=	0.17.0-312
 DISTVERSIONSUFFIX=	-gb1b34cd665
-PORTREVISION=	2
+PORTREVISION=	3
 CATEGORIES=	x11-toolkits
 PKGNAMESUFFIX=	-devel
 
@@ -10,6 +10,7 @@ PATCHFILES+=	surface-nondivisible-by-scale.patch:-p1:hyprland
 PATCHFILES+=	nvidia-hardware-cursors.patch:-p1:hyprland
 PATCH_SITES+=	${GL_SITE}/${GL_ACCOUNT}/${GL_PROJECT}/-/commit/
 PATCHFILES+=	cc6a7a04418f.patch:-p1 # https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4697
+PATCHFILES+=	4b4f76cc1357.patch:-p1 # https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4614
 
 MAINTAINER=	jbeich@FreeBSD.org
 COMMENT=	Modular Wayland compositor library (development snapshot)
@@ -30,12 +31,9 @@ USE_XORG=	pixman
 USE_LDCONFIG=	yes
 GL_SITE=	https://gitlab.freedesktop.org
 MESON_ARGS=	-Dexamples=false -Dbackends=${BACKENDS:ts,} -Drenderers=${RENDERERS:ts,}
+PLIST_SUB=	SUFFIX=-0.18
 
-.ifdef PKGNAMESUFFIX
 PORTSCOUT=	ignore:1
-PREFIX=		${LOCALBASE}/${PKGBASE} # avoid conflict with the default
-MESON_ARGS+=	-Ddatadir="${LOCALBASE}/share"
-.endif
 
 OPTIONS_DEFINE=	DRM OPENGL VULKAN X11
 OPTIONS_DEFAULT=DRM OPENGL VULKAN X11
diff --git a/x11-toolkits/wlroots-devel/distinfo b/x11-toolkits/wlroots-devel/distinfo
index 05e622c6953c..979f0acc3056 100644
--- a/x11-toolkits/wlroots-devel/distinfo
+++ b/x11-toolkits/wlroots-devel/distinfo
@@ -7,3 +7,5 @@ SHA256 (nvidia-hardware-cursors.patch) = ed4720310d61068b24ebd4a30767556cb7590ac
 SIZE (nvidia-hardware-cursors.patch) = 12545
 SHA256 (cc6a7a04418f.patch) = eb2bf98b372b668f773dbb1e3108bff16fefcc51be148775e6517ea4c9d35d83
 SIZE (cc6a7a04418f.patch) = 1291
+SHA256 (4b4f76cc1357.patch) = 163500bf90d39365a6ce8a9d24d48b2e65135d2f548c9532d933ed19b1097d53
+SIZE (4b4f76cc1357.patch) = 2512
diff --git a/x11-toolkits/wlroots-devel/override.mk b/x11-toolkits/wlroots-devel/override.mk
deleted file mode 100644
index f5d221efd5ca..000000000000
--- a/x11-toolkits/wlroots-devel/override.mk
+++ /dev/null
@@ -1,8 +0,0 @@
-WLR_SUFFIX=	-devel
-WLR_SOVERSION=	13
-
-LIB_DEPENDS:=	${LIB_DEPENDS:S/wlroots.so/&.${WLR_SOVERSION}/:S/wlroots$/&${WLR_SUFFIX}/}
-
-USES+=		localbase # -isystem
-CONFIGURE_ENV+=	PKG_CONFIG_PATH="${LOCALBASE}/wlroots${WLR_SUFFIX}/libdata/pkgconfig"
-MAKE_ENV+=	PKG_CONFIG_PATH="${LOCALBASE}/wlroots${WLR_SUFFIX}/libdata/pkgconfig"
diff --git a/x11-toolkits/wlroots-devel/pkg-plist b/x11-toolkits/wlroots-devel/pkg-plist
index a2ac1a1b1ce2..9ce4c4bbb657 100644
--- a/x11-toolkits/wlroots-devel/pkg-plist
+++ b/x11-toolkits/wlroots-devel/pkg-plist
@@ -1,113 +1,112 @@
-include/wlr/backend.h
-%%DRM%%include/wlr/backend/drm.h
-include/wlr/backend/headless.h
-include/wlr/backend/interface.h
-%%DRM%%include/wlr/backend/libinput.h
-include/wlr/backend/multi.h
-%%DRM%%include/wlr/backend/session.h
-include/wlr/backend/wayland.h
-%%X11%%include/wlr/backend/x11.h
-include/wlr/config.h
-include/wlr/interfaces/wlr_buffer.h
-include/wlr/interfaces/wlr_keyboard.h
-include/wlr/interfaces/wlr_output.h
-include/wlr/interfaces/wlr_pointer.h
-include/wlr/interfaces/wlr_switch.h
-include/wlr/interfaces/wlr_tablet_pad.h
-include/wlr/interfaces/wlr_tablet_tool.h
-include/wlr/interfaces/wlr_touch.h
-include/wlr/render/allocator.h
-include/wlr/render/dmabuf.h
-include/wlr/render/drm_format_set.h
-%%OPENGL%%include/wlr/render/egl.h
-%%OPENGL%%include/wlr/render/gles2.h
-include/wlr/render/interface.h
-include/wlr/render/pass.h
-include/wlr/render/pixman.h
-include/wlr/render/swapchain.h
-%%VULKAN%%include/wlr/render/vulkan.h
-include/wlr/render/wlr_renderer.h
-include/wlr/render/wlr_texture.h
-include/wlr/types/wlr_buffer.h
-include/wlr/types/wlr_compositor.h
-include/wlr/types/wlr_content_type_v1.h
-include/wlr/types/wlr_cursor.h
-include/wlr/types/wlr_cursor_shape_v1.h
-include/wlr/types/wlr_damage_ring.h
-include/wlr/types/wlr_data_control_v1.h
-include/wlr/types/wlr_data_device.h
-include/wlr/types/wlr_drm.h
-%%DRM%%include/wlr/types/wlr_drm_lease_v1.h
-include/wlr/types/wlr_export_dmabuf_v1.h
-include/wlr/types/wlr_ext_foreign_toplevel_list_v1.h
-include/wlr/types/wlr_foreign_toplevel_management_v1.h
-include/wlr/types/wlr_fractional_scale_v1.h
-include/wlr/types/wlr_fullscreen_shell_v1.h
-include/wlr/types/wlr_gamma_control_v1.h
-include/wlr/types/wlr_idle_inhibit_v1.h
-include/wlr/types/wlr_idle_notify_v1.h
-include/wlr/types/wlr_input_device.h
-include/wlr/types/wlr_input_method_v2.h
-include/wlr/types/wlr_keyboard.h
-include/wlr/types/wlr_keyboard_group.h
-include/wlr/types/wlr_keyboard_shortcuts_inhibit_v1.h
-include/wlr/types/wlr_layer_shell_v1.h
-include/wlr/types/wlr_linux_dmabuf_v1.h
-include/wlr/types/wlr_matrix.h
-include/wlr/types/wlr_output.h
-include/wlr/types/wlr_output_layer.h
-include/wlr/types/wlr_output_layout.h
-include/wlr/types/wlr_output_management_v1.h
-include/wlr/types/wlr_output_power_management_v1.h
-include/wlr/types/wlr_output_swapchain_manager.h
-include/wlr/types/wlr_pointer.h
-include/wlr/types/wlr_pointer_constraints_v1.h
-include/wlr/types/wlr_pointer_gestures_v1.h
-include/wlr/types/wlr_presentation_time.h
-include/wlr/types/wlr_primary_selection.h
-include/wlr/types/wlr_primary_selection_v1.h
-include/wlr/types/wlr_region.h
-include/wlr/types/wlr_relative_pointer_v1.h
-include/wlr/types/wlr_scene.h
-include/wlr/types/wlr_screencopy_v1.h
-include/wlr/types/wlr_seat.h
-include/wlr/types/wlr_security_context_v1.h
-include/wlr/types/wlr_server_decoration.h
-include/wlr/types/wlr_session_lock_v1.h
-include/wlr/types/wlr_shm.h
-include/wlr/types/wlr_single_pixel_buffer_v1.h
-include/wlr/types/wlr_subcompositor.h
-include/wlr/types/wlr_switch.h
-include/wlr/types/wlr_tablet_pad.h
-include/wlr/types/wlr_tablet_tool.h
-include/wlr/types/wlr_tablet_v2.h
-include/wlr/types/wlr_tearing_control_v1.h
-include/wlr/types/wlr_text_input_v3.h
-include/wlr/types/wlr_touch.h
-include/wlr/types/wlr_transient_seat_v1.h
-include/wlr/types/wlr_viewporter.h
-include/wlr/types/wlr_virtual_keyboard_v1.h
-include/wlr/types/wlr_virtual_pointer_v1.h
-include/wlr/types/wlr_xcursor_manager.h
-include/wlr/types/wlr_xdg_activation_v1.h
-include/wlr/types/wlr_xdg_decoration_v1.h
-include/wlr/types/wlr_xdg_foreign_registry.h
-include/wlr/types/wlr_xdg_foreign_v1.h
-include/wlr/types/wlr_xdg_foreign_v2.h
-include/wlr/types/wlr_xdg_output_v1.h
-include/wlr/types/wlr_xdg_shell.h
-include/wlr/util/addon.h
-include/wlr/util/box.h
-include/wlr/util/edges.h
-include/wlr/util/log.h
-include/wlr/util/region.h
-include/wlr/util/transform.h
-include/wlr/version.h
-include/wlr/xcursor.h
-%%X11%%include/wlr/xwayland.h
-%%X11%%include/wlr/xwayland/server.h
-%%X11%%include/wlr/xwayland/shell.h
-%%X11%%include/wlr/xwayland/xwayland.h
-lib/libwlroots.so
-lib/libwlroots.so.13
-libdata/pkgconfig/wlroots.pc
+include/wlroots%%SUFFIX%%/wlr/backend.h
+%%DRM%%include/wlroots%%SUFFIX%%/wlr/backend/drm.h
+include/wlroots%%SUFFIX%%/wlr/backend/headless.h
+include/wlroots%%SUFFIX%%/wlr/backend/interface.h
+%%DRM%%include/wlroots%%SUFFIX%%/wlr/backend/libinput.h
+include/wlroots%%SUFFIX%%/wlr/backend/multi.h
+%%DRM%%include/wlroots%%SUFFIX%%/wlr/backend/session.h
+include/wlroots%%SUFFIX%%/wlr/backend/wayland.h
+%%X11%%include/wlroots%%SUFFIX%%/wlr/backend/x11.h
+include/wlroots%%SUFFIX%%/wlr/config.h
+include/wlroots%%SUFFIX%%/wlr/interfaces/wlr_buffer.h
+include/wlroots%%SUFFIX%%/wlr/interfaces/wlr_keyboard.h
+include/wlroots%%SUFFIX%%/wlr/interfaces/wlr_output.h
+include/wlroots%%SUFFIX%%/wlr/interfaces/wlr_pointer.h
+include/wlroots%%SUFFIX%%/wlr/interfaces/wlr_switch.h
+include/wlroots%%SUFFIX%%/wlr/interfaces/wlr_tablet_pad.h
+include/wlroots%%SUFFIX%%/wlr/interfaces/wlr_tablet_tool.h
+include/wlroots%%SUFFIX%%/wlr/interfaces/wlr_touch.h
+include/wlroots%%SUFFIX%%/wlr/render/allocator.h
+include/wlroots%%SUFFIX%%/wlr/render/dmabuf.h
+include/wlroots%%SUFFIX%%/wlr/render/drm_format_set.h
+%%OPENGL%%include/wlroots%%SUFFIX%%/wlr/render/egl.h
+%%OPENGL%%include/wlroots%%SUFFIX%%/wlr/render/gles2.h
+include/wlroots%%SUFFIX%%/wlr/render/interface.h
+include/wlroots%%SUFFIX%%/wlr/render/pass.h
+include/wlroots%%SUFFIX%%/wlr/render/pixman.h
+include/wlroots%%SUFFIX%%/wlr/render/swapchain.h
+%%VULKAN%%include/wlroots%%SUFFIX%%/wlr/render/vulkan.h
+include/wlroots%%SUFFIX%%/wlr/render/wlr_renderer.h
+include/wlroots%%SUFFIX%%/wlr/render/wlr_texture.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_buffer.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_compositor.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_content_type_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_cursor.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_cursor_shape_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_damage_ring.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_data_control_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_data_device.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_drm.h
+%%DRM%%include/wlroots%%SUFFIX%%/wlr/types/wlr_drm_lease_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_export_dmabuf_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_ext_foreign_toplevel_list_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_foreign_toplevel_management_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_fractional_scale_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_fullscreen_shell_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_gamma_control_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_idle_inhibit_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_idle_notify_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_input_device.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_input_method_v2.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_keyboard.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_keyboard_group.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_keyboard_shortcuts_inhibit_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_layer_shell_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_linux_dmabuf_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_matrix.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_output.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_output_layer.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_output_layout.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_output_management_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_output_power_management_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_output_swapchain_manager.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_pointer.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_pointer_constraints_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_pointer_gestures_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_presentation_time.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_primary_selection.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_primary_selection_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_region.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_relative_pointer_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_scene.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_screencopy_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_seat.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_security_context_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_server_decoration.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_session_lock_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_shm.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_single_pixel_buffer_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_subcompositor.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_switch.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_tablet_pad.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_tablet_tool.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_tablet_v2.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_tearing_control_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_text_input_v3.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_touch.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_transient_seat_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_viewporter.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_virtual_keyboard_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_virtual_pointer_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_xcursor_manager.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_xdg_activation_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_xdg_decoration_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_xdg_foreign_registry.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_xdg_foreign_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_xdg_foreign_v2.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_xdg_output_v1.h
+include/wlroots%%SUFFIX%%/wlr/types/wlr_xdg_shell.h
+include/wlroots%%SUFFIX%%/wlr/util/addon.h
+include/wlroots%%SUFFIX%%/wlr/util/box.h
+include/wlroots%%SUFFIX%%/wlr/util/edges.h
+include/wlroots%%SUFFIX%%/wlr/util/log.h
+include/wlroots%%SUFFIX%%/wlr/util/region.h
+include/wlroots%%SUFFIX%%/wlr/util/transform.h
+include/wlroots%%SUFFIX%%/wlr/version.h
+include/wlroots%%SUFFIX%%/wlr/xcursor.h
+%%X11%%include/wlroots%%SUFFIX%%/wlr/xwayland.h
+%%X11%%include/wlroots%%SUFFIX%%/wlr/xwayland/server.h
+%%X11%%include/wlroots%%SUFFIX%%/wlr/xwayland/shell.h
+%%X11%%include/wlroots%%SUFFIX%%/wlr/xwayland/xwayland.h
+lib/libwlroots%%SUFFIX%%.so
+libdata/pkgconfig/wlroots%%SUFFIX%%.pc
diff --git a/x11-wm/hyprland/Makefile b/x11-wm/hyprland/Makefile
index 27895402b023..164287608060 100644
--- a/x11-wm/hyprland/Makefile
+++ b/x11-wm/hyprland/Makefile
@@ -1,7 +1,7 @@
 PORTNAME=	hyprland
 DISTVERSIONPREFIX=	v
 DISTVERSION=	0.40.0
-PORTREVISION=	1
+PORTREVISION=	2
 CATEGORIES=	x11-wm wayland
 
 PATCH_SITES=	https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/
@@ -22,7 +22,7 @@ LIB_DEPENDS=	libhyprlang.so:devel/hyprlang \
 		libdrm.so:graphics/libdrm \
 		libwayland-server.so:graphics/wayland \
 		libuuid.so:misc/e2fsprogs-libuuid \
-		libwlroots.so:x11-toolkits/wlroots \
+		libwlroots-0.18.so:x11-toolkits/wlroots-devel \
 		libhyprcursor.so:x11/hyprcursor \
 		libinput.so:x11/libinput \
 		libxkbcommon.so:x11/libxkbcommon
@@ -125,12 +125,6 @@ bundled-libcxx:
 .endif
 .endif # exists(/usr/lib/libc++.so)
 
-.include "${.CURDIR:H:H}/x11-toolkits/wlroots-devel/override.mk"
-post-patch:	wlroots-devel-patch
-wlroots-devel-patch:
-# Prefer <wlr/*> headers (used by <hyprland/*>) from wlroots-devel
-	@${REINPLACE_CMD} -i .devel "/subdirs/s|''|'../wlroots-devel/include', &|" \
-		${WRKSRC}/meson.build
 .include <bsd.port.mk>
 
 # XXX Work around !target(makesum)
diff --git a/x11-wm/hyprland/files/patch-system-wlroots b/x11-wm/hyprland/files/patch-system-wlroots
index 113ad5a4ad85..425ce06a48f5 100644
--- a/x11-wm/hyprland/files/patch-system-wlroots
+++ b/x11-wm/hyprland/files/patch-system-wlroots
@@ -8,11 +8,19 @@ Allow system wlroots to reduce maintenance (wlroots has tons of options)
  
 -wlroots = subproject('wlroots-hyprland', default_options: ['examples=false', 'renderers=gles2'])
 -have_xwlr = wlroots.get_variable('features').get('xwayland')
-+wlroots = dependency('wlroots', version: ['>=0.18.0', '<0.19.0'], default_options: ['examples=false', 'renderers=gles2'])
++wlroots = dependency('wlroots-0.18', default_options: ['examples=false', 'renderers=gles2'])
 +have_xwlr = wlroots.get_variable(pkgconfig: 'have_xwayland', internal: 'have_xwayland') == 'true'
  xcb_dep = dependency('xcb', required: get_option('xwayland'))
  
  cmake = import('cmake')
+@@ -89,5 +89,6 @@ import('pkgconfig').generate(
+   url: 'https://github.com/hyprwm/Hyprland',
+   description: 'Hyprland header files',
+   install_dir: pkg_install_dir,
+-  subdirs: ['', 'hyprland/protocols', 'hyprland/wlroots'],
++  subdirs: ['', 'hyprland/protocols'],
++  requires_private: wlroots,
+ )
 --- src/meson.build.orig	2024-04-14 18:48:28 UTC
 +++ src/meson.build
 @@ -9,7 +9,7 @@ executable('Hyprland', src,
@@ -36,12 +44,3 @@ Allow system wlroots to reduce maintenance (wlroots has tons of options)
      // find headers commit
      std::string cmd     = std::format("PKG_CONFIG_PATH=\"{}/share/pkgconfig\" pkgconf --cflags --keep-system-cflags hyprland", DataState::getHeadersPath());
      auto        headers = execAndGet(cmd.c_str());
-@@ -338,7 +335,7 @@ eHeadersErrors CPluginManager::headersValid() {
-         else
-             headers = "";
- 
--        if (PATH.ends_with("protocols") || PATH.ends_with("wlroots-hyprland"))
-+        if (PATH.ends_with("protocols") || PATH.contains("wlroots"))
-             continue;
- 
-         verHeader = removeBeginEndSpacesTabs(PATH.substr(2)) + "/hyprland/src/version.h";
diff --git a/x11-wm/sway-devel/Makefile b/x11-wm/sway-devel/Makefile
index 6169294ffe01..13f21ce5ae1c 100644
--- a/x11-wm/sway-devel/Makefile
+++ b/x11-wm/sway-devel/Makefile
@@ -1,9 +1,13 @@
 PORTNAME=	sway
 DISTVERSION=	1.9-125 # git rev-list --count 1.9..
 DISTVERSIONSUFFIX=	-g087226d99
+PORTREVISION=	1
 CATEGORIES=	x11-wm wayland
 PKGNAMESUFFIX=	-devel
 
+PATCH_SITES=	https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/
+PATCHFILES+=	2e9139df664f.patch:-p1 # https://github.com/swaywm/sway/pull/8070
+
 MAINTAINER=	jbeich@FreeBSD.org
 COMMENT=	i3-compatible Wayland compositor (development snapshot)
 WWW=		https://swaywm.org/
@@ -19,7 +23,7 @@ LIB_DEPENDS=	libjson-c.so:devel/json-c \
 		libpcre2-8.so:devel/pcre2 \
 		libdrm.so:graphics/libdrm \
 		libwayland-egl.so:graphics/wayland \
-		libwlroots.so:x11-toolkits/wlroots \
+		libwlroots-0.18.so:x11-toolkits/wlroots-devel \
 		libinput.so:x11/libinput \
 		libxkbcommon.so:x11/libxkbcommon
 
@@ -62,5 +66,4 @@ post-patch:
 		-e '/project_version/s/@0@/${DISTVERSIONFULL}/' \
 		${WRKSRC}/meson.build
 
-.include "${.CURDIR:H:H}/x11-toolkits/wlroots-devel/override.mk"
 .include <bsd.port.mk>
diff --git a/x11-wm/sway-devel/distinfo b/x11-wm/sway-devel/distinfo
index ed9b0e9c6b36..b92d6ac1b83a 100644
--- a/x11-wm/sway-devel/distinfo
+++ b/x11-wm/sway-devel/distinfo
@@ -1,3 +1,5 @@
 TIMESTAMP = 1712962528
 SHA256 (swaywm-sway-1.9-125-g087226d99_GH0.tar.gz) = fd80256b3d104bfcb21bbae0a717976a1370663375d5033a263f9f8fe604e72a
 SIZE (swaywm-sway-1.9-125-g087226d99_GH0.tar.gz) = 5574929
+SHA256 (2e9139df664f.patch) = f670dd884914c28c0d7de302cbc70cd081ad5c5df94ce4aca5a7c67ba5d762bb
+SIZE (2e9139df664f.patch) = 769