--- a/components/gnome/at-spi2-core/Makefile Thu Aug 11 15:38:58 2016 -0700
+++ b/components/gnome/at-spi2-core/Makefile Wed Aug 10 13:41:29 2016 -0700
@@ -60,6 +60,7 @@
CONFIGURE_OPTIONS += --with-dbus-daemondir=$(USRLIBDIR)
REQUIRED_PACKAGES += developer/documentation-tool/gtk-doc
+REQUIRED_PACKAGES += gnome/gsettings-desktop-schemas
REQUIRED_PACKAGES += library/desktop/gobject/gobject-introspection
REQUIRED_PACKAGES += library/glib2
REQUIRED_PACKAGES += library/libxml2
--- a/components/gnome/at-spi2-core/at-spi2-core.p5m Thu Aug 11 15:38:58 2016 -0700
+++ b/components/gnome/at-spi2-core/at-spi2-core.p5m Wed Aug 10 13:41:29 2016 -0700
@@ -158,3 +158,5 @@
file path=usr/share/locale/zh_HK/LC_MESSAGES/at-spi2-core.mo
file path=usr/share/locale/zh_TW/LC_MESSAGES/at-spi2-core.mo
license COPYING license=LGPLv2
+depend type=require fmri=__TBD \
+ pkg.tmp.gsettings-schema=org.gnome.desktop.a11y.applications
--- a/components/gnome/eog/Makefile Thu Aug 11 15:38:58 2016 -0700
+++ b/components/gnome/eog/Makefile Wed Aug 10 13:41:29 2016 -0700
@@ -68,6 +68,7 @@
REQUIRED_PACKAGES += image/library/libexif
REQUIRED_PACKAGES += image/library/libjpeg
REQUIRED_PACKAGES += image/library/librsvg
+REQUIRED_PACKAGES += gnome/gsettings-desktop-schemas
REQUIRED_PACKAGES += library/desktop/atk
REQUIRED_PACKAGES += library/desktop/cairo
REQUIRED_PACKAGES += library/desktop/gdk-pixbuf
--- a/components/gnome/eog/eog.p5m Thu Aug 11 15:38:58 2016 -0700
+++ b/components/gnome/eog/eog.p5m Wed Aug 10 13:41:29 2016 -0700
@@ -1888,5 +1888,11 @@
file path=usr/share/locale/zh_TW/LC_MESSAGES/eog.mo
file path=usr/share/locale/zu/LC_MESSAGES/eog.mo
license COPYING license=GPLv2
-depend type=require fmri=gnome/gsettings-desktop-schemas
-depend type=require fmri=gnome/theme/adwaita-icon-theme
+
+# gsettings schemas referenced in source code files
+depend type=require fmri=__TBD pkg.debug.depend.reason=src/eog-config-keys.h \
+ pkg.tmp.gsettings-schema=org.gnome.desktop.background
+depend type=require fmri=__TBD pkg.debug.depend.reason=src/eog-config-keys.h \
+ pkg.tmp.gsettings-schema=org.gnome.desktop.lockdown
+depend type=require fmri=__TBD pkg.debug.depend.reason=src/eog-config-keys.h \
+ pkg.tmp.gsettings-schema=org.gnome.eog
--- a/components/gnome/evince/Makefile Thu Aug 11 15:38:58 2016 -0700
+++ b/components/gnome/evince/Makefile Wed Aug 10 13:41:29 2016 -0700
@@ -103,6 +103,7 @@
REQUIRED_PACKAGES += archiver/unrar
REQUIRED_PACKAGES += desktop/pdf-viewer/poppler
REQUIRED_PACKAGES += gnome/file-manager/nautilus
+REQUIRED_PACKAGES += gnome/gsettings-desktop-schemas
REQUIRED_PACKAGES += image/library/libtiff
REQUIRED_PACKAGES += library/desktop/atk
REQUIRED_PACKAGES += library/desktop/cairo
--- a/components/gnome/evince/evince.p5m Thu Aug 11 15:38:58 2016 -0700
+++ b/components/gnome/evince/evince.p5m Wed Aug 10 13:41:29 2016 -0700
@@ -3323,5 +3323,7 @@
file files/gpdf.1 path=usr/share/man/man1/gpdf.1
file path=usr/share/thumbnailers/evince.thumbnailer
license evince.license license=GPLv2
-depend type=require fmri=gnome/gsettings-desktop-schemas
-depend type=require fmri=gnome/theme/adwaita-icon-theme
+depend type=require fmri=__TBD pkg.debug.depend.reason=shell/ev-window.c \
+ pkg.tmp.gsettings-schema=org.gnome.Evince
+depend type=require fmri=__TBD pkg.debug.depend.reason=shell/ev-window.c \
+ pkg.tmp.gsettings-schema=org.gnome.desktop.lockdown
--- a/components/gnome/glib-networking/Makefile Thu Aug 11 15:38:58 2016 -0700
+++ b/components/gnome/glib-networking/Makefile Wed Aug 10 13:41:29 2016 -0700
@@ -56,19 +56,6 @@
# Assumes GNU xgettext in PATH
CONFIGURE_ENV += PATH=$(GNUBIN):$(PATH)
-# Delete this when build servers are installed with gsettings-desktop-schemas
-SCHEMAS_ROOT = $(WS_COMPONENTS)/gnome/gsettings-desktop-schemas/build/prototype/$(MACH)
-PKG_CONFIG_PATHS += $(SCHEMAS_ROOT)/usr/share/pkgconfig/
-CONFIGURE_ENV += GSETTINGS_DESKTOP_SCHEMAS_CFLAGS="-I$(SCHEMAS_ROOT)/usr/include/gsettings-desktop-schemas"
-
-# special targets due to dependency on gsettings-desktop-schemas
-../gsettings-desktop-schemas/build/%/.installed:
- (cd ../gsettings-desktop-schemas && $(GMAKE) install)
-
-$(CONFIGURE_32): ../gsettings-desktop-schemas/build/$(MACH32)/.installed
-$(CONFIGURE_64): ../gsettings-desktop-schemas/build/$(MACH64)/.installed
-# end of Delete
-
CONFIGURE_OPTIONS += --with-ca-certificates=/etc/certs/ca-certificates.crt
CONFIGURE_OPTIONS += --with-pkcs11=no
CONFIGURE_OPTIONS += --libexecdir=$(CONFIGURE_LIBDIR.$(BITS))
@@ -85,6 +72,7 @@
'-e "/FAIL:/p" ' \
'-e "/ERROR:/p" '
+REQUIRED_PACKAGES += gnome/gsettings-desktop-schemas
REQUIRED_PACKAGES += developer/documentation-tool/gtk-doc
REQUIRED_PACKAGES += developer/gnome/gettext
REQUIRED_PACKAGES += library/glib2
--- a/components/gnome/glib-networking/glib-networking.p5m Thu Aug 11 15:38:58 2016 -0700
+++ b/components/gnome/glib-networking/glib-networking.p5m Wed Aug 10 13:41:29 2016 -0700
@@ -110,3 +110,6 @@
file path=usr/share/locale/zh_HK/LC_MESSAGES/glib-networking.mo
file path=usr/share/locale/zh_TW/LC_MESSAGES/glib-networking.mo
license COPYING license=LGPLv2
+depend type=require fmri=__TBD \
+ pkg.debug.depend.reason=proxy/gnome/gproxyresolvergnome.c \
+ pkg.tmp.gsettings-schema=org.gnome.system.proxy
--- a/components/gnome/gnome-desktop/gnome-desktop.p5m Thu Aug 11 15:38:58 2016 -0700
+++ b/components/gnome/gnome-desktop/gnome-desktop.p5m Wed Aug 10 13:41:29 2016 -0700
@@ -244,3 +244,14 @@
license COPYING-DOCS license=FDLv1.1
license COPYING license=GPLv2
license COPYING.LIB license=LGPLv2
+
+# gsettings schemas referenced in gnome-desktop code files
+depend type=require fmri=__TBD \
+ pkg.debug.depend.reason=libgnome-desktop/gnome-desktop-thumbnail.c \
+ pkg.tmp.gsettings-schema=org.gnome.desktop.thumbnailers
+depend type=require fmri=__TBD \
+ pkg.debug.depend.reason=libgnome-desktop/gnome-wall-clock.c \
+ pkg.tmp.gsettings-schema=org.gnome.desktop.interface
+depend type=require fmri=__TBD \
+ pkg.debug.depend.reason=libgnome-desktop/gnome-xkb-info.c \
+ pkg.tmp.gsettings-schema=org.gnome.desktop.input-sources
--- a/components/gnome/gnome-system-monitor/Makefile Thu Aug 11 15:38:58 2016 -0700
+++ b/components/gnome/gnome-system-monitor/Makefile Wed Aug 10 13:41:29 2016 -0700
@@ -65,6 +65,7 @@
COMPONENT_BUILD_ENV += PATH="$(GNUBIN):$(PATH)"
REQUIRED_PACKAGES += image/library/librsvg
+REQUIRED_PACKAGES += gnome/gsettings-desktop-schemas
REQUIRED_PACKAGES += library/c++/glibmm
REQUIRED_PACKAGES += library/c++/sigcpp
REQUIRED_PACKAGES += library/desktop/c++/atkmm
--- a/components/gnome/gnome-system-monitor/gnome-system-monitor.p5m Thu Aug 11 15:38:58 2016 -0700
+++ b/components/gnome/gnome-system-monitor/gnome-system-monitor.p5m Wed Aug 10 13:41:29 2016 -0700
@@ -335,5 +335,7 @@
file path=usr/share/locale/zh_TW/LC_MESSAGES/gnome-system-monitor.mo
file path=usr/share/polkit-1/actions/org.gnome.gnome-system-monitor.policy
license COPYING license=GPLv2
-depend type=require fmri=gnome/gsettings-desktop-schemas
-depend type=require fmri=gnome/theme/adwaita-icon-theme
+
+# gsettings schemas referenced in source code files
+depend type=require fmri=__TBD pkg.debug.depend.reason=src/util.cpp \
+ pkg.tmp.gsettings-schema=org.gnome.desktop.interface
--- a/components/gnome/gsettings-desktop-schemas/gsettings-desktop-schemas.p5m Thu Aug 11 15:38:58 2016 -0700
+++ b/components/gnome/gsettings-desktop-schemas/gsettings-desktop-schemas.p5m Wed Aug 10 13:41:29 2016 -0700
@@ -117,3 +117,13 @@
file path=usr/share/locale/zh_TW/LC_MESSAGES/gsettings-desktop-schemas.mo
file path=usr/share/pkgconfig/gsettings-desktop-schemas.pc
license COPYING license=LGPLv2.1
+#
+# The provided default settings in org.gnome.desktop.interface.gschema.xml
+# currently require these fonts & themes. These use group dependencies so
+# if someone overrides the defaults to use other themes or fonts, they can
+# remove these packages. Until pkgdepend can autodetect them (ER 24416519)
+# we list them manually.
+#
+depend type=group fmri=gnome/theme/adwaita-icon-theme
+depend type=group fmri=system/font/truetype/cantarell
+depend type=group fmri=system/font/truetype/dejavu
--- a/make-rules/ips.mk Thu Aug 11 15:38:58 2016 -0700
+++ b/make-rules/ips.mk Wed Aug 10 13:41:29 2016 -0700
@@ -74,6 +74,7 @@
PUBLISH_TRANSFORMS += $(WS_TOP)/transforms/autopyc
PUBLISH_TRANSFORMS += $(WS_TOP)/transforms/defaults
PUBLISH_TRANSFORMS += $(WS_TOP)/transforms/actuators
+PUBLISH_TRANSFORMS += $(WS_TOP)/transforms/depends
PUBLISH_TRANSFORMS += $(WS_TOP)/transforms/devel
PUBLISH_TRANSFORMS += $(WS_TOP)/transforms/docs
PUBLISH_TRANSFORMS += $(WS_TOP)/transforms/locale
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/transforms/depends Wed Aug 10 13:41:29 2016 -0700
@@ -0,0 +1,47 @@
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+
+#
+# Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+#
+
+#
+# Dependency helpers for things pkgdepend(1) doesn't or can't handle
+#
+
+#
+# gsettings schema files
+#
+# Finding these requires looking in source code for calls such as:
+# g_settings_new ("org.gnome.desktop.interface");
+# When found, add an entry such as:
+# depend type=require fmri=__TBD \
+# pkg.tmp.gsettings-schema=org.gnome.desktop.interface
+# You may also include pkg.debug.depend.reason=source-file.c as a reference
+# for future updates to record what source file you found the call in.
+#
+
+<transform depend fmri=__TBD pkg.tmp.gsettings-schema=(.*) -> \
+ default pkg.debug.depend.file %<1>.gschema.xml>
+<transform depend fmri=__TBD pkg.debug.depend.file=.*\.gschema\.xml$ -> \
+ delete pkg.tmp.gsettings-schema .*>
+<transform depend fmri=__TBD pkg.debug.depend.file=.*\.gschema\.xml$ -> \
+ add pkg.debug.depend.path usr/share/glib-2.0/schemas>