Index | Thread | Search

From:
Matthieu Herrb <matthieu@openbsd.org>
Subject:
Re: wayland/wlroots : introduce mod_wlroots
To:
ports@openbsd.org
Date:
Tue, 5 Aug 2025 13:53:11 +0200

Download raw body.

Thread
On Tue, Aug 05, 2025 at 12:47:32PM +0200, Landry Breuil wrote:
> Le Tue, Aug 05, 2025 at 12:33:33PM +0200, Matthieu Herrb a écrit :
> > On Tue, Aug 05, 2025 at 08:47:52AM +0200, Antoine Jacoutot wrote:
> > > On Tue, Aug 05, 2025 at 08:36:09AM +0200, Landry Breuil wrote:
> > Next iteration, with the variables names matching the module, and a
> > way to disable auto LIB_DEPENDS and WANTLIB to build the wlroot port
> > itself.
> 
> ok with the nit from sthen adressed (eg provide an intermediate var for
> potential subpackages needing MODWLROOTS_{WANTLIB,LIB_DEPENDS})
> 

Hopefully final version. I've not included diffs for depends ports
since they don't change.

ok?

Index: wlroots/Makefile
===================================================================
RCS file: /local/cvs/ports/wayland/wlroots/Makefile,v
diff -u -p -u -r1.11 Makefile
--- wlroots/Makefile	16 Dec 2024 18:25:23 -0000	1.11
+++ wlroots/Makefile	5 Aug 2025 11:45:01 -0000
@@ -1,6 +1,7 @@
 COMMENT =	modular Wayland compositor library
 
-V =		0.18.2
+V =		${MODWLROOTS_VERSION}.2
+REVISION =	0
 EPOCH =		0
 DISTNAME =	wlroots-${V}
 CATEGORIES =	wayland
@@ -14,7 +15,9 @@ PERMIT_PACKAGE = Yes
 
 SHARED_LIBS +=  wlroots-0.18 0.0 # 0.0
 
-MODULES =	devel/meson
+MODULES =	devel/meson wayland/wlroots
+
+MODWLROOTS_LIBDEP =	No
 
 WANTLIB +=	EGL GLESv2 drm gbm m pixman-1
 WANTLIB +=	display-info lcms2 liftoff udev
Index: wlroots/wlroots.port.mk
===================================================================
RCS file: wlroots/wlroots.port.mk
diff -N wlroots/wlroots.port.mk
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ wlroots/wlroots.port.mk	5 Aug 2025 11:45:01 -0000
@@ -0,0 +1,13 @@
+MODWLROOTS_VERSION =		0.18
+
+MODWLROOT_WANTLIB =		wlroots-${MODWLROOT_VERSION}
+MODWLROOT_LIB_DEPENDS =    	wayland/wlroots-${MODWLROOT_VERSION}
+
+MODWLROOTS_LIBDEP?=		Yes
+
+.if ${MODWLROOTS_LIBDEP:L} == "yes"
+LIB_DEPENDS +=			${MODWLROOTS_LIB_DEPENDS}
+WANTLIB +=              	${MODWLROOTS_WANTLIB}
+.endif
+
+SUBST_VARS += 			MODWLROOTS_VERSION
Index: wlroots/pkg/PLIST
===================================================================
RCS file: /local/cvs/ports/wayland/wlroots/pkg/PLIST,v
diff -u -p -u -r1.4 PLIST
--- wlroots/pkg/PLIST	7 Nov 2024 09:44:27 -0000	1.4
+++ wlroots/pkg/PLIST	5 Aug 2025 11:45:01 -0000
@@ -1,124 +1,124 @@
-include/wlroots-0.18/
-include/wlroots-0.18/wlr/
-include/wlroots-0.18/wlr/backend/
-include/wlroots-0.18/wlr/backend.h
-include/wlroots-0.18/wlr/backend/drm.h
-include/wlroots-0.18/wlr/backend/headless.h
-include/wlroots-0.18/wlr/backend/interface.h
-include/wlroots-0.18/wlr/backend/libinput.h
-include/wlroots-0.18/wlr/backend/multi.h
-include/wlroots-0.18/wlr/backend/session.h
-include/wlroots-0.18/wlr/backend/wayland.h
-include/wlroots-0.18/wlr/backend/x11.h
-include/wlroots-0.18/wlr/config.h
-include/wlroots-0.18/wlr/interfaces/
-include/wlroots-0.18/wlr/interfaces/wlr_buffer.h
-include/wlroots-0.18/wlr/interfaces/wlr_keyboard.h
-include/wlroots-0.18/wlr/interfaces/wlr_output.h
-include/wlroots-0.18/wlr/interfaces/wlr_pointer.h
-include/wlroots-0.18/wlr/interfaces/wlr_switch.h
-include/wlroots-0.18/wlr/interfaces/wlr_tablet_pad.h
-include/wlroots-0.18/wlr/interfaces/wlr_tablet_tool.h
-include/wlroots-0.18/wlr/interfaces/wlr_touch.h
-include/wlroots-0.18/wlr/render/
-include/wlroots-0.18/wlr/render/allocator.h
-include/wlroots-0.18/wlr/render/color.h
-include/wlroots-0.18/wlr/render/dmabuf.h
-include/wlroots-0.18/wlr/render/drm_format_set.h
-include/wlroots-0.18/wlr/render/drm_syncobj.h
-include/wlroots-0.18/wlr/render/egl.h
-include/wlroots-0.18/wlr/render/gles2.h
-include/wlroots-0.18/wlr/render/interface.h
-include/wlroots-0.18/wlr/render/pass.h
-include/wlroots-0.18/wlr/render/pixman.h
-include/wlroots-0.18/wlr/render/swapchain.h
-include/wlroots-0.18/wlr/render/vulkan.h
-include/wlroots-0.18/wlr/render/wlr_renderer.h
-include/wlroots-0.18/wlr/render/wlr_texture.h
-include/wlroots-0.18/wlr/types/
-include/wlroots-0.18/wlr/types/wlr_alpha_modifier_v1.h
-include/wlroots-0.18/wlr/types/wlr_buffer.h
-include/wlroots-0.18/wlr/types/wlr_compositor.h
-include/wlroots-0.18/wlr/types/wlr_content_type_v1.h
-include/wlroots-0.18/wlr/types/wlr_cursor.h
-include/wlroots-0.18/wlr/types/wlr_cursor_shape_v1.h
-include/wlroots-0.18/wlr/types/wlr_damage_ring.h
-include/wlroots-0.18/wlr/types/wlr_data_control_v1.h
-include/wlroots-0.18/wlr/types/wlr_data_device.h
-include/wlroots-0.18/wlr/types/wlr_drm.h
-include/wlroots-0.18/wlr/types/wlr_drm_lease_v1.h
-include/wlroots-0.18/wlr/types/wlr_export_dmabuf_v1.h
-include/wlroots-0.18/wlr/types/wlr_ext_foreign_toplevel_list_v1.h
-include/wlroots-0.18/wlr/types/wlr_foreign_toplevel_management_v1.h
-include/wlroots-0.18/wlr/types/wlr_fractional_scale_v1.h
-include/wlroots-0.18/wlr/types/wlr_fullscreen_shell_v1.h
-include/wlroots-0.18/wlr/types/wlr_gamma_control_v1.h
-include/wlroots-0.18/wlr/types/wlr_idle_inhibit_v1.h
-include/wlroots-0.18/wlr/types/wlr_idle_notify_v1.h
-include/wlroots-0.18/wlr/types/wlr_input_device.h
-include/wlroots-0.18/wlr/types/wlr_input_method_v2.h
-include/wlroots-0.18/wlr/types/wlr_keyboard.h
-include/wlroots-0.18/wlr/types/wlr_keyboard_group.h
-include/wlroots-0.18/wlr/types/wlr_keyboard_shortcuts_inhibit_v1.h
-include/wlroots-0.18/wlr/types/wlr_layer_shell_v1.h
-include/wlroots-0.18/wlr/types/wlr_linux_dmabuf_v1.h
-include/wlroots-0.18/wlr/types/wlr_linux_drm_syncobj_v1.h
-include/wlroots-0.18/wlr/types/wlr_matrix.h
-include/wlroots-0.18/wlr/types/wlr_output.h
-include/wlroots-0.18/wlr/types/wlr_output_layer.h
-include/wlroots-0.18/wlr/types/wlr_output_layout.h
-include/wlroots-0.18/wlr/types/wlr_output_management_v1.h
-include/wlroots-0.18/wlr/types/wlr_output_power_management_v1.h
-include/wlroots-0.18/wlr/types/wlr_output_swapchain_manager.h
-include/wlroots-0.18/wlr/types/wlr_pointer.h
-include/wlroots-0.18/wlr/types/wlr_pointer_constraints_v1.h
-include/wlroots-0.18/wlr/types/wlr_pointer_gestures_v1.h
-include/wlroots-0.18/wlr/types/wlr_presentation_time.h
-include/wlroots-0.18/wlr/types/wlr_primary_selection.h
-include/wlroots-0.18/wlr/types/wlr_primary_selection_v1.h
-include/wlroots-0.18/wlr/types/wlr_region.h
-include/wlroots-0.18/wlr/types/wlr_relative_pointer_v1.h
-include/wlroots-0.18/wlr/types/wlr_scene.h
-include/wlroots-0.18/wlr/types/wlr_screencopy_v1.h
-include/wlroots-0.18/wlr/types/wlr_seat.h
-include/wlroots-0.18/wlr/types/wlr_security_context_v1.h
-include/wlroots-0.18/wlr/types/wlr_server_decoration.h
-include/wlroots-0.18/wlr/types/wlr_session_lock_v1.h
-include/wlroots-0.18/wlr/types/wlr_shm.h
-include/wlroots-0.18/wlr/types/wlr_single_pixel_buffer_v1.h
-include/wlroots-0.18/wlr/types/wlr_subcompositor.h
-include/wlroots-0.18/wlr/types/wlr_switch.h
-include/wlroots-0.18/wlr/types/wlr_tablet_pad.h
-include/wlroots-0.18/wlr/types/wlr_tablet_tool.h
-include/wlroots-0.18/wlr/types/wlr_tablet_v2.h
-include/wlroots-0.18/wlr/types/wlr_tearing_control_v1.h
-include/wlroots-0.18/wlr/types/wlr_text_input_v3.h
-include/wlroots-0.18/wlr/types/wlr_touch.h
-include/wlroots-0.18/wlr/types/wlr_transient_seat_v1.h
-include/wlroots-0.18/wlr/types/wlr_viewporter.h
-include/wlroots-0.18/wlr/types/wlr_virtual_keyboard_v1.h
-include/wlroots-0.18/wlr/types/wlr_virtual_pointer_v1.h
-include/wlroots-0.18/wlr/types/wlr_xcursor_manager.h
-include/wlroots-0.18/wlr/types/wlr_xdg_activation_v1.h
-include/wlroots-0.18/wlr/types/wlr_xdg_decoration_v1.h
-include/wlroots-0.18/wlr/types/wlr_xdg_foreign_registry.h
-include/wlroots-0.18/wlr/types/wlr_xdg_foreign_v1.h
-include/wlroots-0.18/wlr/types/wlr_xdg_foreign_v2.h
-include/wlroots-0.18/wlr/types/wlr_xdg_output_v1.h
-include/wlroots-0.18/wlr/types/wlr_xdg_shell.h
-include/wlroots-0.18/wlr/util/
-include/wlroots-0.18/wlr/util/addon.h
-include/wlroots-0.18/wlr/util/box.h
-include/wlroots-0.18/wlr/util/edges.h
-include/wlroots-0.18/wlr/util/log.h
-include/wlroots-0.18/wlr/util/region.h
-include/wlroots-0.18/wlr/util/transform.h
-include/wlroots-0.18/wlr/version.h
-include/wlroots-0.18/wlr/xcursor.h
-include/wlroots-0.18/wlr/xwayland/
-include/wlroots-0.18/wlr/xwayland.h
-include/wlroots-0.18/wlr/xwayland/server.h
-include/wlroots-0.18/wlr/xwayland/shell.h
-include/wlroots-0.18/wlr/xwayland/xwayland.h
-@lib lib/libwlroots-0.18.so.${LIBwlroots-0.18_VERSION}
-lib/pkgconfig/wlroots-0.18.pc
+include/wlroots-${MODWLROOTS_VERSION}/
+include/wlroots-${MODWLROOTS_VERSION}/wlr/
+include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/
+include/wlroots-${MODWLROOTS_VERSION}/wlr/backend.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/drm.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/headless.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/interface.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/libinput.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/multi.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/session.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/wayland.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/x11.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/config.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/
+include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_buffer.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_keyboard.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_output.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_pointer.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_switch.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_tablet_pad.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_tablet_tool.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_touch.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/allocator.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/color.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/dmabuf.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/drm_format_set.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/drm_syncobj.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/egl.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/gles2.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/interface.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/pass.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/pixman.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/swapchain.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/vulkan.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/wlr_renderer.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/wlr_texture.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_alpha_modifier_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_buffer.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_compositor.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_content_type_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_cursor.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_cursor_shape_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_damage_ring.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_data_control_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_data_device.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_drm.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_drm_lease_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_export_dmabuf_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_ext_foreign_toplevel_list_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_foreign_toplevel_management_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_fractional_scale_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_fullscreen_shell_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_gamma_control_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_idle_inhibit_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_idle_notify_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_input_device.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_input_method_v2.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_keyboard.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_keyboard_group.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_keyboard_shortcuts_inhibit_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_layer_shell_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_linux_dmabuf_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_linux_drm_syncobj_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_matrix.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_output.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_output_layer.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_output_layout.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_output_management_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_output_power_management_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_output_swapchain_manager.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_pointer.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_pointer_constraints_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_pointer_gestures_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_presentation_time.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_primary_selection.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_primary_selection_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_region.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_relative_pointer_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_scene.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_screencopy_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_seat.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_security_context_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_server_decoration.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_session_lock_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_shm.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_single_pixel_buffer_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_subcompositor.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_switch.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_tablet_pad.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_tablet_tool.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_tablet_v2.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_tearing_control_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_text_input_v3.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_touch.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_transient_seat_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_viewporter.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_virtual_keyboard_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_virtual_pointer_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xcursor_manager.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_activation_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_decoration_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_foreign_registry.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_foreign_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_foreign_v2.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_output_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_shell.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/util/
+include/wlroots-${MODWLROOTS_VERSION}/wlr/util/addon.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/util/box.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/util/edges.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/util/log.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/util/region.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/util/transform.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/version.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/xcursor.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/xwayland/
+include/wlroots-${MODWLROOTS_VERSION}/wlr/xwayland.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/xwayland/server.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/xwayland/shell.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/xwayland/xwayland.h
+@lib lib/libwlroots-${MODWLROOTS_VERSION}.so.${LIBwlroots-${MODWLROOTS_VERSION}_VERSION}
+lib/pkgconfig/wlroots-${MODWLROOTS_VERSION}.pc

-- 
Matthieu Herrb