diff --git a/x11-toolkits/Makefile b/x11-toolkits/Makefile index 0126de4b9cfc..52bf0bcd08cf 100644 --- a/x11-toolkits/Makefile +++ b/x11-toolkits/Makefile @@ -1,242 +1,243 @@ COMMENT = X11 toolkits SUBDIR += SoXt SUBDIR += Xaw3d SUBDIR += Xmt SUBDIR += amtk SUBDIR += blt SUBDIR += bwidget SUBDIR += color-widgets-qt5 SUBDIR += copperspice SUBDIR += ctk SUBDIR += fltk SUBDIR += fox16 SUBDIR += fox17 SUBDIR += fxscintilla SUBDIR += gdl SUBDIR += girara SUBDIR += gnome-pty-helper SUBDIR += gnustep-back SUBDIR += gnustep-gui SUBDIR += granite SUBDIR += granite7 SUBDIR += gstreamer1-plugins-gtk SUBDIR += gstreamer1-plugins-pango SUBDIR += gtk-layer-shell SUBDIR += gtk-sharp-beans SUBDIR += gtk-sharp20 SUBDIR += gtk-sharp30 SUBDIR += gtk20 SUBDIR += gtk30 SUBDIR += gtk4-layer-shell SUBDIR += gtk40 SUBDIR += gtkd SUBDIR += gtkdatabox SUBDIR += gtkextra SUBDIR += gtkglarea2 SUBDIR += gtkglext SUBDIR += gtkglextmm SUBDIR += gtkimageview SUBDIR += gtkmm24 SUBDIR += gtkmm30 SUBDIR += gtksourceview2 SUBDIR += gtksourceview3 SUBDIR += gtksourceview4 SUBDIR += gtksourceview5 SUBDIR += gtksourceviewmm3 SUBDIR += guile-gnome-platform SUBDIR += imgui SUBDIR += irrlicht SUBDIR += itk SUBDIR += iwidgets SUBDIR += kddockwidgets SUBDIR += kf5-attica SUBDIR += kf5-kcompletion SUBDIR += kf5-kconfigwidgets SUBDIR += kf5-kdesignerplugin SUBDIR += kf5-kguiaddons SUBDIR += kf5-kirigami2 SUBDIR += kf5-kitemviews SUBDIR += kf5-kjobwidgets SUBDIR += kf5-ktextwidgets SUBDIR += kf5-kwidgetsaddons SUBDIR += kf5-kxmlgui SUBDIR += kirigami-addons SUBDIR += kproperty SUBDIR += lesstif SUBDIR += libXaw SUBDIR += libXmu SUBDIR += libXt SUBDIR += libadwaita SUBDIR += libdazzle SUBDIR += libdecor SUBDIR += libgdiplus SUBDIR += libhandy SUBDIR += libhandy0 SUBDIR += libshumate SUBDIR += libunique3 SUBDIR += libwnck SUBDIR += libwnck3 SUBDIR += libxaw3dxft SUBDIR += linux-c7-gtk2 SUBDIR += linux-c7-gtk3 SUBDIR += linux-c7-openmotif SUBDIR += linux-c7-pango SUBDIR += linux-c7-qt-x11 SUBDIR += linux-c7-tk85 SUBDIR += movingmotif SUBDIR += mowitz SUBDIR += mygui SUBDIR += mygui-dummy SUBDIR += mygui-ogre SUBDIR += mygui-opengl SUBDIR += nanogui SUBDIR += neXtaw SUBDIR += ntk SUBDIR += nuklear SUBDIR += ocaml-lablgtk2 SUBDIR += ocaml-lablgtk3 SUBDIR += ocaml-labltk SUBDIR += open-motif SUBDIR += open-motif-devel SUBDIR += osm-gps-map SUBDIR += otk SUBDIR += p5-Alien-wxWidgets SUBDIR += p5-Glade2 SUBDIR += p5-Gtk2 SUBDIR += p5-Gtk2-Chmod SUBDIR += p5-Gtk2-Ex-Dialogs SUBDIR += p5-Gtk2-Ex-FormFactory SUBDIR += p5-Gtk2-Ex-PodViewer SUBDIR += p5-Gtk2-Ex-Simple-List SUBDIR += p5-Gtk2-Ex-Utils SUBDIR += p5-Gtk2-GladeXML SUBDIR += p5-Gtk2-ImageView SUBDIR += p5-Gtk2-PathButtonBar SUBDIR += p5-Gtk2-TrayIcon SUBDIR += p5-Gtk3 SUBDIR += p5-Gtk3-ImageView SUBDIR += p5-Gtk3-SimpleList SUBDIR += p5-Pango SUBDIR += p5-Prima SUBDIR += p5-Test-Tk SUBDIR += p5-Tk SUBDIR += p5-Tk-Action SUBDIR += p5-Tk-Autoscroll SUBDIR += p5-Tk-ColourChooser SUBDIR += p5-Tk-Contrib SUBDIR += p5-Tk-CursorControl SUBDIR += p5-Tk-DKW SUBDIR += p5-Tk-Date SUBDIR += p5-Tk-DynaTabFrame SUBDIR += p5-Tk-Enscript SUBDIR += p5-Tk-FileDialog SUBDIR += p5-Tk-FontDialog SUBDIR += p5-Tk-GBARR SUBDIR += p5-Tk-Getopt SUBDIR += p5-Tk-HistEntry SUBDIR += p5-Tk-JComboBox SUBDIR += p5-Tk-ResizeButton SUBDIR += p5-Tk-Role-Dialog SUBDIR += p5-Tk-Role-HasWidgets SUBDIR += p5-Tk-Splashscreen SUBDIR += p5-Tk-Sugar SUBDIR += p5-Tk-TableMatrix SUBDIR += p5-Tk-ToolBar SUBDIR += p5-Tk-WaitBox SUBDIR += pango SUBDIR += pangolin SUBDIR += pangomm SUBDIR += pangox-compat SUBDIR += plasma5-kdeplasma-addons SUBDIR += plib SUBDIR += py-AnyQt SUBDIR += py-Pmw SUBDIR += py-awesometkinter SUBDIR += py-easygui SUBDIR += py-fltk SUBDIR += py-guietta SUBDIR += py-python-xlib SUBDIR += py-qt5-chart SUBDIR += py-qt6-chart SUBDIR += py-qt6-datavis3d SUBDIR += py-tkinter SUBDIR += py-tktreectrl SUBDIR += py-wxPython4 SUBDIR += pythonqt SUBDIR += qml-box2d SUBDIR += qt5-charts SUBDIR += qt5-datavis3d SUBDIR += qt5-declarative SUBDIR += qt5-declarative-test SUBDIR += qt5-gamepad SUBDIR += qt5-gui SUBDIR += qt5-quick3d SUBDIR += qt5-quickcontrols SUBDIR += qt5-quickcontrols2 SUBDIR += qt5-quicktimeline SUBDIR += qt5-uiplugin SUBDIR += qt5-virtualkeyboard SUBDIR += qt5-widgets SUBDIR += qt5pas SUBDIR += qt6-charts SUBDIR += qt6-datavis3d SUBDIR += qt6-declarative SUBDIR += qt6-quick3d SUBDIR += qt6-quicktimeline SUBDIR += qt6-shadertools SUBDIR += qt6-virtualkeyboard SUBDIR += qt6pas SUBDIR += qtermwidget SUBDIR += qwt5-qt5 SUBDIR += qwt6 SUBDIR += redkite SUBDIR += rep-gtk2 SUBDIR += rubygem-gdk3 SUBDIR += rubygem-gdk4 SUBDIR += rubygem-gtk2 SUBDIR += rubygem-gtk3 SUBDIR += rubygem-gtk4 SUBDIR += rubygem-gtksourceview3 SUBDIR += rubygem-gtksourceview4 SUBDIR += rubygem-pango SUBDIR += rubygem-poppler SUBDIR += rubygem-tk SUBDIR += rubygem-uh SUBDIR += rubygem-vte3 SUBDIR += rubygem-vte4 SUBDIR += scintilla SUBDIR += sdl_pango SUBDIR += shared-desktop-ontologies SUBDIR += skinlf SUBDIR += soqt SUBDIR += swt SUBDIR += tepl6 SUBDIR += termit SUBDIR += tix SUBDIR += tk-wrapper SUBDIR += tk85 SUBDIR += tk86 SUBDIR += tk87 SUBDIR += tkdnd SUBDIR += tkshape SUBDIR += tktable SUBDIR += tktray SUBDIR += tktreectrl SUBDIR += unique SUBDIR += viewklass SUBDIR += vte SUBDIR += vte3 SUBDIR += wlroots SUBDIR += wlroots-devel SUBDIR += wlroots015 + SUBDIR += wlroots016 SUBDIR += wmapp SUBDIR += wxgtk30 SUBDIR += wxgtk32 SUBDIR += xbae SUBDIR += xforms SUBDIR += xmhtml SUBDIR += xwallpaper SUBDIR += ztoolkit .include diff --git a/x11-toolkits/wlroots016/Makefile b/x11-toolkits/wlroots016/Makefile new file mode 100644 index 000000000000..6fea3a011a08 --- /dev/null +++ b/x11-toolkits/wlroots016/Makefile @@ -0,0 +1,75 @@ +PORTNAME= wlroots +DISTVERSION= 0.16.2 +CATEGORIES= x11-toolkits +PKGNAMESUFFIX= 016 + +PATCH_SITES+= https://github.com/swaywm/${GL_PROJECT}/commit/:github +PATCHFILES+= fc0854d5f256.patch:-p1:github # https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/2064 +PATCHFILES+= 29cb694655db.patch:-p1:github # https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/2064 +PATCH_SITES+= ${GL_SITE}/${GL_ACCOUNT}/${GL_PROJECT}/-/commit/ +PATCHFILES+= f3ba14e49133.patch:-p1 # https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3850 + +MAINTAINER= jbeich@FreeBSD.org +COMMENT= Modular Wayland compositor library (deprecated 0.16.* series) +WWW= https://gitlab.freedesktop.org/wlroots/wlroots + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE + +BUILD_DEPENDS= wayland-protocols>=1.27:graphics/wayland-protocols +LIB_DEPENDS= libudev.so:devel/libudev-devd \ + libdrm.so:graphics/libdrm \ + libwayland-server.so:graphics/wayland \ + libseat.so:sysutils/seatd \ + 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= limit:^0\.16\. +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= libinput.so:x11/libinput +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 + +.include diff --git a/x11-toolkits/wlroots016/distinfo b/x11-toolkits/wlroots016/distinfo new file mode 100644 index 000000000000..5918d9a27d2e --- /dev/null +++ b/x11-toolkits/wlroots016/distinfo @@ -0,0 +1,9 @@ +TIMESTAMP = 1676068199 +SHA256 (wlroots-0.16.2.tar.bz2) = afea2cc740344c4e86749cf4908e07692e183cb14a3db854d24dec454c664b88 +SIZE (wlroots-0.16.2.tar.bz2) = 437628 +SHA256 (fc0854d5f256.patch) = ceaa947fd7f64b773c61d7a5a4bdcfe85a083a686d4356ff58d3666aa182e2a9 +SIZE (fc0854d5f256.patch) = 6013 +SHA256 (29cb694655db.patch) = ef36e6b7a0bea0b82469c395feac303f50bf940ae651d91370ef052f5d97938c +SIZE (29cb694655db.patch) = 4233 +SHA256 (f3ba14e49133.patch) = fb61329725f9482eae15100ae46c59159f39abc3324937e92fdf5065155944a9 +SIZE (f3ba14e49133.patch) = 1976 diff --git a/x11-toolkits/wlroots016/override.mk b/x11-toolkits/wlroots016/override.mk new file mode 100644 index 000000000000..443008a3c69d --- /dev/null +++ b/x11-toolkits/wlroots016/override.mk @@ -0,0 +1,8 @@ +WLR_SUFFIX= 016 + +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/wlroots016/pkg-descr b/x11-toolkits/wlroots016/pkg-descr new file mode 100644 index 000000000000..6daf6a788b68 --- /dev/null +++ b/x11-toolkits/wlroots016/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/wlroots016/pkg-plist b/x11-toolkits/wlroots016/pkg-plist new file mode 100644 index 000000000000..0698d8a43fcb --- /dev/null +++ b/x11-toolkits/wlroots016/pkg-plist @@ -0,0 +1,103 @@ +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 +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/pixman.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_cursor.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_foreign_toplevel_management_v1.h +include/wlr/types/wlr_fullscreen_shell_v1.h +include/wlr/types/wlr_gamma_control_v1.h +include/wlr/types/wlr_idle.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_inhibitor.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_damage.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_server_decoration.h +include/wlr/types/wlr_session_lock_v1.h +include/wlr/types/wlr_single_pixel_buffer_v1.h +include/wlr/types/wlr_subcompositor.h +include/wlr/types/wlr_surface.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_text_input_v3.h +include/wlr/types/wlr_touch.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/version.h +include/wlr/xcursor.h +%%X11%%include/wlr/xwayland.h +%%X11%%include/wlr/xwayland/server.h +%%X11%%include/wlr/xwayland/xwayland.h +lib/libwlroots.so +lib/libwlroots.so.11 +libdata/pkgconfig/wlroots.pc