aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Beich <jbeich@FreeBSD.org>2024-02-21 23:41:06 +0000
committerJan Beich <jbeich@FreeBSD.org>2024-03-01 05:50:57 +0000
commitf2b52f539320227a80a82109fb1ed640369d7bfe (patch)
tree96b61211a1d9de94a9fe99595c796d7370eaa552
parent9d9cd1936eb2bc89b14497b3560e808eb2cfff27 (diff)
downloadports-f2b52f539320227a80a82109fb1ed640369d7bfe.tar.gz
ports-f2b52f539320227a80a82109fb1ed640369d7bfe.zip
x11-toolkits/wlroots-devel: restore port
This reverts commit 630cee9f763c95e18c14d318dd3b8ef9be15e551.
-rw-r--r--MOVED1
-rw-r--r--x11-toolkits/Makefile1
-rw-r--r--x11-toolkits/wlroots-devel/Makefile86
-rw-r--r--x11-toolkits/wlroots-devel/distinfo7
-rw-r--r--x11-toolkits/wlroots-devel/override.mk8
-rw-r--r--x11-toolkits/wlroots-devel/pkg-descr28
-rw-r--r--x11-toolkits/wlroots-devel/pkg-plist112
7 files changed, 242 insertions, 1 deletions
diff --git a/MOVED b/MOVED
index b00c7ce89154..9f126b84109e 100644
--- a/MOVED
+++ b/MOVED
@@ -2637,7 +2637,6 @@ devel/mingw32-bin-msvcrt||2023-11-21|Has expired: Last upstream release was in 2
devel/mingw32-zlib||2023-11-21|Has expired: Last upstream release was in 2014 and project mingw32 is defunct
devel/mingw32-gcc||2023-11-21|Has expired: Upstream release was in 2015 and mingw32 project is defunct
www/guile-www||2023-11-21|Has expired: Last upstream release was in 2002 and no longer relevant nowadays
-x11-toolkits/wlroots-devel|x11-toolkits/wlroots|2023-11-21|Out of date: use x11-toolkits/wlroots for now
games/suyimazu|games/mizuma|2023-11-22|Project was renamed upstream
www/dfileserver||2023-11-22|Has expired: Obsolete, consider using www/darkhttpd
devel/sdts++||2023-11-22|Has expired: Last upstream release was in 2003 and both MASTER_SITES and WWW are unreachable
diff --git a/x11-toolkits/Makefile b/x11-toolkits/Makefile
index e11631979841..f8f53de0f11c 100644
--- a/x11-toolkits/Makefile
+++ b/x11-toolkits/Makefile
@@ -240,6 +240,7 @@
SUBDIR += vte
SUBDIR += vte3
SUBDIR += wlroots
+ SUBDIR += wlroots-devel
SUBDIR += wlroots015
SUBDIR += wlroots016
SUBDIR += wmapp
diff --git a/x11-toolkits/wlroots-devel/Makefile b/x11-toolkits/wlroots-devel/Makefile
new file mode 100644
index 000000000000..79342dff7851
--- /dev/null
+++ b/x11-toolkits/wlroots-devel/Makefile
@@ -0,0 +1,86 @@
+PORTNAME= wlroots
+DISTVERSION= 0.17.0-210
+DISTVERSIONSUFFIX= -g0cb091f1a2
+CATEGORIES= x11-toolkits
+PKGNAMESUFFIX= -devel
+
+PATCH_SITES+= https://github.com/swaywm/${GL_PROJECT}/commit/:github
+PATCHFILES+= 10f80a8f1bb2.patch:-p1:github # https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/2064
+PATCHFILES+= 3196c73d487f.patch:-p1:github # https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/2064
+PATCH_SITES+= ${GL_SITE}/${GL_ACCOUNT}/${GL_PROJECT}/-/commit/
+
+MAINTAINER= jbeich@FreeBSD.org
+COMMENT= Modular Wayland compositor library (development snapshot)
+WWW= https://gitlab.freedesktop.org/wlroots/wlroots
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+BUILD_DEPENDS= wayland-protocols>=1.33:graphics/wayland-protocols
+LIB_DEPENDS= libdrm.so:graphics/libdrm \
+ libwayland-server.so:graphics/wayland \
+ libxkbcommon.so:x11/libxkbcommon
+
+USES= compiler:c11 gl meson pkgconfig xorg
+USE_GITLAB= yes
+USE_GL= gbm
+USE_XORG= pixman
+USE_LDCONFIG= yes
+GL_SITE= https://gitlab.freedesktop.org
+MESON_ARGS= -Dexamples=false -Dbackends=${BACKENDS:ts,} -Drenderers=${RENDERERS:ts,}
+
+.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
+OPTIONS_SUB= yes
+
+DRM_DESC= KMS console support
+DRM_BUILD_DEPENDS= hwdata>0:misc/hwdata
+DRM_LIB_DEPENDS= libudev.so:devel/libudev-devd \
+ libliftoff.so:graphics/libliftoff \
+ libdisplay-info.so:sysutils/libdisplay-info \
+ libseat.so:sysutils/seatd \
+ libinput.so:x11/libinput
+DRM_MESON_ENABLED= session
+DRM_VARS= BACKENDS+="drm libinput"
+
+OPENGL_RUN_DEPENDS= mesa-dri>0:graphics/mesa-dri
+OPENGL_USE= GL=egl,glesv2
+OPENGL_VARS= RENDERERS+=gles2
+
+VULKAN_DESC= Vulkan renderer
+VULKAN_BUILD_DEPENDS= glslangValidator:graphics/glslang \
+ vulkan-headers>0:graphics/vulkan-headers
+VULKAN_LIB_DEPENDS= libvulkan.so:graphics/vulkan-loader
+VULKAN_RUN_DEPENDS= mesa-dri>0:graphics/mesa-dri
+VULKAN_VARS= RENDERERS+=vulkan
+
+X11_LIB_DEPENDS= libxcb-errors.so:x11/xcb-util-errors \
+ libxcb-render-util.so:x11/xcb-util-renderutil \
+ libxcb-icccm.so:x11/xcb-util-wm
+X11_BUILD_DEPENDS= evdev-proto>0:devel/evdev-proto \
+ xwayland-devel>0:x11-servers/xwayland-devel
+X11_RUN_DEPENDS= xwayland-devel>0:x11-servers/xwayland-devel
+X11_USE= XORG=xcb
+X11_MESON_ENABLED= xwayland
+X11_VARS= BACKENDS+=x11
+
+post-patch:
+# Extract (snapshot) version from the port instead of meson.build
+ @${REINPLACE_CMD} "/STR/s/meson.project_version()/'${DISTVERSIONFULL}'/" \
+ ${WRKSRC}/include/wlr/meson.build
+# XXX Drop after FreeBSD 12.4 EOL around 2023-12-31
+# https://cgit.freebsd.org/src/commit/?id=d7535fb3e3cb
+ @if [ ${OPSYS} = FreeBSD -a ${OSVERSION} -lt 1300515 ]; then \
+ ${REINPLACE_CMD} -e '/POSIX/s/199309/200112/' \
+ ${WRKSRC}/render/gles2/pass.c \
+ ${WRKSRC}/render/gles2/renderer.c \
+ ${WRKSRC}/types/wlr_presentation_time.c; \
+ fi
+
+.include <bsd.port.mk>
diff --git a/x11-toolkits/wlroots-devel/distinfo b/x11-toolkits/wlroots-devel/distinfo
new file mode 100644
index 000000000000..9455757bf947
--- /dev/null
+++ b/x11-toolkits/wlroots-devel/distinfo
@@ -0,0 +1,7 @@
+TIMESTAMP = 1708558866
+SHA256 (wlroots-0.17.0-210-g0cb091f1a2.tar.bz2) = a775146e022358b3f2883b2ad7566a9c7f91c3049d3b38d14f8edd7730b20fd8
+SIZE (wlroots-0.17.0-210-g0cb091f1a2.tar.bz2) = 453874
+SHA256 (10f80a8f1bb2.patch) = ca65f8eecf32e7364d5ba43cd9ee91060710a6fb8392892c86ad71e4f2a4c0b5
+SIZE (10f80a8f1bb2.patch) = 6097
+SHA256 (3196c73d487f.patch) = 69c6bc4658852bb45a24b129f625a7faaed8035dab0d79c388ae74d650beacdc
+SIZE (3196c73d487f.patch) = 4243
diff --git a/x11-toolkits/wlroots-devel/override.mk b/x11-toolkits/wlroots-devel/override.mk
new file mode 100644
index 000000000000..45bd059006f2
--- /dev/null
+++ b/x11-toolkits/wlroots-devel/override.mk
@@ -0,0 +1,8 @@
+WLR_SUFFIX= -devel
+
+BUILD_DEPENDS:= ${BUILD_DEPENDS:S/wlroots/&${WLR_SUFFIX}/g}
+LIB_DEPENDS:= ${LIB_DEPENDS: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-descr b/x11-toolkits/wlroots-devel/pkg-descr
new file mode 100644
index 000000000000..6daf6a788b68
--- /dev/null
+++ b/x11-toolkits/wlroots-devel/pkg-descr
@@ -0,0 +1,28 @@
+Pluggable, composable, unopinionated modules for building a Wayland
+compositor; or about 60,000 lines of code you were going to write anyway.
+
+- wlroots provides backends that abstract the underlying display and input
+ hardware, including KMS/DRM, libinput, Wayland, X11, and headless backends,
+ plus any custom backends you choose to write, which can all be created or
+ destroyed at runtime and used in concert with each other.
+- wlroots provides unopinionated, mostly standalone implementations of many
+ Wayland interfaces, both from wayland.xml and various protocol extensions.
+ We also promote the standardization of portable extensions across
+ many compositors.
+- wlroots provides several powerful, standalone, and optional tools that
+ implement components common to many compositors, such as the arrangement of
+ outputs in physical space.
+- wlroots provides an Xwayland abstraction that allows you to have excellent
+ Xwayland support without worrying about writing your own X11 window manager
+ on top of writing your compositor.
+- wlroots provides a renderer abstraction that simple compositors can use to
+ avoid writing GL code directly, but which steps out of the way when your
+ needs demand custom rendering code.
+
+wlroots implements a huge variety of Wayland compositor features and implements
+them *right*, so you can focus on the features that make your compositor
+unique. By using wlroots, you get high performance, excellent hardware
+compatibility, broad support for many wayland interfaces, and comfortable
+development tools - or any subset of these features you like, because all of
+them work independently of one another and freely compose with anything you want
+to implement yourself.
diff --git a/x11-toolkits/wlroots-devel/pkg-plist b/x11-toolkits/wlroots-devel/pkg-plist
new file mode 100644
index 000000000000..d20d7b609e7b
--- /dev/null
+++ b/x11-toolkits/wlroots-devel/pkg-plist
@@ -0,0 +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_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