aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Beich <jbeich@FreeBSD.org>2024-01-24 15:05:10 +0000
committerJan Beich <jbeich@FreeBSD.org>2024-01-29 11:03:58 +0000
commit1a1e43198c5a1b80cab83b342793db74c23dad78 (patch)
tree18a6a78632c149f0230279c8e6f5a5a4be625779
parent94a4803c442c16aa3a53ad2c03624dd19c62fbed (diff)
downloadports-1a1e43198c5a1b80cab83b342793db74c23dad78.tar.gz
ports-1a1e43198c5a1b80cab83b342793db74c23dad78.zip
x11-toolkits/libdecor: convert to subpackages
Reduce heavy dependencies for consumers e.g., cage -> wlroots -> xwayland-devel -> libdecor -> gtk3. Approved by: pizzamig (portmgr) Differential Revision: https://reviews.freebsd.org/D43576
-rw-r--r--x11-toolkits/libdecor/Makefile22
-rw-r--r--x11-toolkits/libdecor/pkg-descr.cairo5
-rw-r--r--x11-toolkits/libdecor/pkg-descr.gtk35
-rw-r--r--x11-toolkits/libdecor/pkg-message10
-rw-r--r--x11-toolkits/libdecor/pkg-plist4
5 files changed, 39 insertions, 7 deletions
diff --git a/x11-toolkits/libdecor/Makefile b/x11-toolkits/libdecor/Makefile
index b9e865b8e4bf..1cbbd8acc160 100644
--- a/x11-toolkits/libdecor/Makefile
+++ b/x11-toolkits/libdecor/Makefile
@@ -1,5 +1,6 @@
PORTNAME= libdecor
DISTVERSION= 0.2.2
+PORTREVISION= 1
CATEGORIES= x11-toolkits
MAINTAINER= jbeich@FreeBSD.org
@@ -22,17 +23,28 @@ OPTIONS_DEFINE= CAIRO DBUS GTK3
OPTIONS_DEFAULT=CAIRO DBUS GTK3
OPTIONS_SUB= yes
+CAIRO_SUBPACKAGES= cairo
CAIRO_BUILD_DEPENDS= evdev-proto>0:devel/evdev-proto
-CAIRO_USES= gnome
-CAIRO_USE= GNOME=cairo,pango
+#USES.cairo= gnome
+#USE_GNOME.cairo= cairo pango
+LIB_DEPENDS.cairo= libgobject-2.0.so:devel/glib20 \
+ libcairo.so:graphics/cairo \
+ libpango-1.0.so:x11-toolkits/pango
+SELF_DEPENDS.cairo= main
# Unused by the main library
-DBUS_LIB_DEPENDS= ${"${PORT_OPTIONS:NDBUS}":?libdbus-1.so\:devel/dbus:}
+LIB_DEPENDS.cairo+= libdbus-1.so:devel/dbus
+LIB_DEPENDS.gtk3+= libdbus-1.so:devel/dbus
DBUS_MESON_ENABLED= dbus
+GTK3_SUBPACKAGES= gtk3
GTK3_BUILD_DEPENDS= evdev-proto>0:devel/evdev-proto
-GTK3_USES= gnome
-GTK3_USE= GNOME=cairo,gtk30
+#USES.gtk3= gnome
+#USE_GNOME.gtk3= cairo gtk30
+LIB_DEPENDS.gtk3+= libglib-2.0.so:devel/glib20 \
+ libcairo.so:graphics/cairo \
+ libgtk-3.so:x11-toolkits/gtk30
+SELF_DEPENDS.gtk3= main
GTK3_MESON_ENABLED= gtk
post-patch-CAIRO-off:
diff --git a/x11-toolkits/libdecor/pkg-descr.cairo b/x11-toolkits/libdecor/pkg-descr.cairo
new file mode 100644
index 000000000000..75509dde1412
--- /dev/null
+++ b/x11-toolkits/libdecor/pkg-descr.cairo
@@ -0,0 +1,5 @@
+libdecor is a library that can help Wayland clients draw window
+decorations for them. It aims to provide multiple backends that
+implements the decoration drawing.
+
+This package provides Cairo-based decoration plugin.
diff --git a/x11-toolkits/libdecor/pkg-descr.gtk3 b/x11-toolkits/libdecor/pkg-descr.gtk3
new file mode 100644
index 000000000000..73bd9d44c5bc
--- /dev/null
+++ b/x11-toolkits/libdecor/pkg-descr.gtk3
@@ -0,0 +1,5 @@
+libdecor is a library that can help Wayland clients draw window
+decorations for them. It aims to provide multiple backends that
+implements the decoration drawing.
+
+This package provides GTK3-based decoration plugin.
diff --git a/x11-toolkits/libdecor/pkg-message b/x11-toolkits/libdecor/pkg-message
new file mode 100644
index 000000000000..06c1742a1bdb
--- /dev/null
+++ b/x11-toolkits/libdecor/pkg-message
@@ -0,0 +1,10 @@
+[
+{ type: upgrade
+ maximum_version: "0.2.2"
+ message: <<EOD
+Plugins with extra dependencies moved into subpackages:
+- libdecor-cairo
+- libdecor-gtk3
+EOD
+}
+]
diff --git a/x11-toolkits/libdecor/pkg-plist b/x11-toolkits/libdecor/pkg-plist
index fb2f6f8ec583..4851ff6605b2 100644
--- a/x11-toolkits/libdecor/pkg-plist
+++ b/x11-toolkits/libdecor/pkg-plist
@@ -2,6 +2,6 @@ include/libdecor-0/libdecor.h
lib/libdecor-0.so
lib/libdecor-0.so.0
lib/libdecor-0.so.0.200.2
-%%CAIRO%%lib/libdecor/plugins-1/libdecor-cairo.so
-%%GTK3%%lib/libdecor/plugins-1/libdecor-gtk.so
+%%CAIRO%%@@cairo@@lib/libdecor/plugins-1/libdecor-cairo.so
+%%GTK3%%@@gtk3@@lib/libdecor/plugins-1/libdecor-gtk.so
libdata/pkgconfig/libdecor-0.pc