From d9cbda103728bb672de84ca1f60b207e9bb19198 Mon Sep 17 00:00:00 2001 From: Jan Beich Date: Mon, 8 Jun 2020 19:49:22 +0000 Subject: [PATCH] x11-toolkits/gtk30: make X11 optional Reduce bloat on embedded systems and facilitate debugging in case X11 isn't supported/desired at runtime. PR: 247091 Approved by: ? --- x11-toolkits/gtk30/Makefile | 21 ++++++++------ x11-toolkits/gtk30/pkg-plist | 54 ++++++++++++++++++------------------ 2 files changed, 39 insertions(+), 36 deletions(-) diff --git a/x11-toolkits/gtk30/Makefile b/x11-toolkits/gtk30/Makefile index 1dd4a8799496..5b2c8518c79c 100644 --- a/x11-toolkits/gtk30/Makefile +++ b/x11-toolkits/gtk30/Makefile @@ -32,11 +32,8 @@ USE_LDCONFIG= yes GNU_CONFIGURE= yes USE_GNOME= atk cairo gdkpixbuf2 introspection:build pango USES= compiler:c11 gettext gmake gnome libtool localbase \ - pathfix perl5 pkgconfig tar:xz xorg -USE_XORG= xext xrender x11 xinerama xi xrandr xcursor xfixes xdamage \ - xcomposite -CONFIGURE_ARGS= --enable-x11-backend \ - --enable-introspection + pathfix perl5 pkgconfig tar:xz +CONFIGURE_ARGS= --enable-introspection CPPFLAGS+= -fno-omit-frame-pointer INSTALLS_ICONS= yes INSTALL_TARGET= install-strip @@ -50,13 +47,14 @@ GLIB_SCHEMAS= org.gtk.Demo.gschema.xml \ org.gtk.Settings.EmojiChooser.gschema.xml \ org.gtk.Settings.FileChooser.gschema.xml -OPTIONS_DEFINE= ATK_BRIDGE CUPS CLOUDPRINT COLORD DEBUG BROADWAY WAYLAND -OPTIONS_DEFAULT=ATK_BRIDGE CUPS COLORD BROADWAY WAYLAND +OPTIONS_DEFINE= ATK_BRIDGE CUPS CLOUDPRINT COLORD DEBUG BROADWAY WAYLAND X11 +OPTIONS_DEFAULT=ATK_BRIDGE CUPS COLORD BROADWAY WAYLAND X11 OPTIONS_SUB= yes -ATK_BRIDGE_DESC=AT-SPI ATK bridge support +ATK_BRIDGE_DESC=AT-SPI ATK bridge support (requires X11) ATK_BRIDGE_CONFIGURE_WITH= atk-bridge ATK_BRIDGE_LIB_DEPENDS= libatk-bridge-2.0.so:accessibility/at-spi2-atk +ATK_BRIDGE_IMPLIES= X11 BROADWAY_DESC= Enable GDK Broadway backend for showing GTK+ in the webbrowser using HTML5 and web sockets. BROADWAY_CONFIGURE_ENABLE= broadway-backend @@ -88,11 +86,16 @@ WAYLAND_RUN_DEPENDS= wayland-protocols>=0:graphics/wayland-protocols WAYLAND_USES= gl WAYLAND_USE= GL=egl +X11_DESC= GDK X11 backend +X11_CONFIGURE_ENABLE= x11-backend +X11_USES= xorg +X11_USE= XORG=x11,xcomposite,xcursor,xdamage,xext,xfixes,xi,xinerama,xrandr,xrender + post-patch: @${REINPLACE_CMD} -e 's|[{]libdir[}]/locale|{datadir}/locale|g' \ ${WRKSRC}/configure -pre-configure: +pre-configure-X11-on: # .if !exists() evaluates too early before cairo has a chance to be installed @if ! pkg-config --exists cairo-xlib; then \ ${ECHO_MSG} "${PKGNAME}: Needs cairo with X11 support enabled."; \ diff --git a/x11-toolkits/gtk30/pkg-plist b/x11-toolkits/gtk30/pkg-plist index 81b46d692ed1..005661399ff7 100644 --- a/x11-toolkits/gtk30/pkg-plist +++ b/x11-toolkits/gtk30/pkg-plist @@ -60,34 +60,34 @@ include/gtk-3.0/gdk/gdkversionmacros.h include/gtk-3.0/gdk/gdkvisual.h %%WAYLAND%%include/gtk-3.0/gdk/gdkwayland.h include/gtk-3.0/gdk/gdkwindow.h -include/gtk-3.0/gdk/gdkx.h +%%X11%%include/gtk-3.0/gdk/gdkx.h %%WAYLAND%%include/gtk-3.0/gdk/wayland/gdkwaylanddevice.h %%WAYLAND%%include/gtk-3.0/gdk/wayland/gdkwaylanddisplay.h %%WAYLAND%%include/gtk-3.0/gdk/wayland/gdkwaylandglcontext.h %%WAYLAND%%include/gtk-3.0/gdk/wayland/gdkwaylandmonitor.h %%WAYLAND%%include/gtk-3.0/gdk/wayland/gdkwaylandselection.h %%WAYLAND%%include/gtk-3.0/gdk/wayland/gdkwaylandwindow.h -include/gtk-3.0/gdk/x11/gdkx-autocleanups.h -include/gtk-3.0/gdk/x11/gdkx11applaunchcontext.h -include/gtk-3.0/gdk/x11/gdkx11cursor.h -include/gtk-3.0/gdk/x11/gdkx11device-core.h -include/gtk-3.0/gdk/x11/gdkx11device-xi2.h -include/gtk-3.0/gdk/x11/gdkx11device.h -include/gtk-3.0/gdk/x11/gdkx11devicemanager-core.h -include/gtk-3.0/gdk/x11/gdkx11devicemanager-xi2.h -include/gtk-3.0/gdk/x11/gdkx11devicemanager.h -include/gtk-3.0/gdk/x11/gdkx11display.h -include/gtk-3.0/gdk/x11/gdkx11displaymanager.h -include/gtk-3.0/gdk/x11/gdkx11dnd.h -include/gtk-3.0/gdk/x11/gdkx11glcontext.h -include/gtk-3.0/gdk/x11/gdkx11keys.h -include/gtk-3.0/gdk/x11/gdkx11monitor.h -include/gtk-3.0/gdk/x11/gdkx11property.h -include/gtk-3.0/gdk/x11/gdkx11screen.h -include/gtk-3.0/gdk/x11/gdkx11selection.h -include/gtk-3.0/gdk/x11/gdkx11utils.h -include/gtk-3.0/gdk/x11/gdkx11visual.h -include/gtk-3.0/gdk/x11/gdkx11window.h +%%X11%%include/gtk-3.0/gdk/x11/gdkx-autocleanups.h +%%X11%%include/gtk-3.0/gdk/x11/gdkx11applaunchcontext.h +%%X11%%include/gtk-3.0/gdk/x11/gdkx11cursor.h +%%X11%%include/gtk-3.0/gdk/x11/gdkx11device-core.h +%%X11%%include/gtk-3.0/gdk/x11/gdkx11device-xi2.h +%%X11%%include/gtk-3.0/gdk/x11/gdkx11device.h +%%X11%%include/gtk-3.0/gdk/x11/gdkx11devicemanager-core.h +%%X11%%include/gtk-3.0/gdk/x11/gdkx11devicemanager-xi2.h +%%X11%%include/gtk-3.0/gdk/x11/gdkx11devicemanager.h +%%X11%%include/gtk-3.0/gdk/x11/gdkx11display.h +%%X11%%include/gtk-3.0/gdk/x11/gdkx11displaymanager.h +%%X11%%include/gtk-3.0/gdk/x11/gdkx11dnd.h +%%X11%%include/gtk-3.0/gdk/x11/gdkx11glcontext.h +%%X11%%include/gtk-3.0/gdk/x11/gdkx11keys.h +%%X11%%include/gtk-3.0/gdk/x11/gdkx11monitor.h +%%X11%%include/gtk-3.0/gdk/x11/gdkx11property.h +%%X11%%include/gtk-3.0/gdk/x11/gdkx11screen.h +%%X11%%include/gtk-3.0/gdk/x11/gdkx11selection.h +%%X11%%include/gtk-3.0/gdk/x11/gdkx11utils.h +%%X11%%include/gtk-3.0/gdk/x11/gdkx11visual.h +%%X11%%include/gtk-3.0/gdk/x11/gdkx11window.h include/gtk-3.0/gtk/a11y/gtk-a11y-autocleanups.h include/gtk-3.0/gtk/a11y/gtkarrowaccessible.h include/gtk-3.0/gtk/a11y/gtkbooleancellaccessible.h @@ -416,7 +416,7 @@ include/gtk-3.0/unix-print/gtk/gtkprintunixdialog.h include/gtk-3.0/unix-print/gtk/gtkunixprint-autocleanups.h include/gtk-3.0/unix-print/gtk/gtkunixprint.h lib/girepository-1.0/Gdk-3.0.typelib -lib/girepository-1.0/GdkX11-3.0.typelib +%%X11%%lib/girepository-1.0/GdkX11-3.0.typelib lib/girepository-1.0/Gtk-3.0.typelib lib/gtk-3.0/%%GTK3_VERSION%%/immodules/im-am-et.so %%BROADWAY%%lib/gtk-3.0/%%GTK3_VERSION%%/immodules/im-broadway.so @@ -431,7 +431,7 @@ lib/gtk-3.0/%%GTK3_VERSION%%/immodules/im-ti-et.so lib/gtk-3.0/%%GTK3_VERSION%%/immodules/im-viqr.so %%WAYLAND%%lib/gtk-3.0/%%GTK3_VERSION%%/immodules/im-wayland.so %%WAYLAND%%lib/gtk-3.0/%%GTK3_VERSION%%/immodules/im-waylandgtk.so -lib/gtk-3.0/%%GTK3_VERSION%%/immodules/im-xim.so +%%X11%%lib/gtk-3.0/%%GTK3_VERSION%%/immodules/im-xim.so %%CLOUDPRINT%%lib/gtk-3.0/%%GTK3_VERSION%%/printbackends/libprintbackend-cloudprint.so %%CUPS%%lib/gtk-3.0/%%GTK3_VERSION%%/printbackends/libprintbackend-cups.so lib/gtk-3.0/%%GTK3_VERSION%%/printbackends/libprintbackend-file.so @@ -449,12 +449,12 @@ libdata/pkgconfig/gail-3.0.pc libdata/pkgconfig/gdk-3.0.pc %%BROADWAY%%libdata/pkgconfig/gdk-broadway-3.0.pc %%WAYLAND%%libdata/pkgconfig/gdk-wayland-3.0.pc -libdata/pkgconfig/gdk-x11-3.0.pc +%%X11%%libdata/pkgconfig/gdk-x11-3.0.pc libdata/pkgconfig/gtk+-3.0.pc %%BROADWAY%%libdata/pkgconfig/gtk+-broadway-3.0.pc libdata/pkgconfig/gtk+-unix-print-3.0.pc %%WAYLAND%%libdata/pkgconfig/gtk+-wayland-3.0.pc -libdata/pkgconfig/gtk+-x11-3.0.pc +%%X11%%libdata/pkgconfig/gtk+-x11-3.0.pc %%BROADWAY%%man/man1/broadwayd.1.gz man/man1/gtk-builder-tool.1.gz man/man1/gtk-encode-symbolic-svg.1.gz @@ -472,7 +472,7 @@ share/applications/gtk3-widget-factory.desktop share/gettext/its/gtkbuilder.its share/gettext/its/gtkbuilder.loc share/gir-1.0/Gdk-3.0.gir -share/gir-1.0/GdkX11-3.0.gir +%%X11%%share/gir-1.0/GdkX11-3.0.gir share/gir-1.0/Gtk-3.0.gir %%DATADIR%%-3.0/gtkbuilder.rng %%DATADIR%%-3.0/valgrind/gtk.supp