diff options
author | jmmv <jmmv@pkgsrc.org> | 2003-12-14 19:44:38 +0000 |
---|---|---|
committer | jmmv <jmmv@pkgsrc.org> | 2003-12-14 19:44:38 +0000 |
commit | 1f59b2ab218ac238e618d9f3097139415267517e (patch) | |
tree | 2e87b8006bb2a51ada3713ee25a6a9574ddea9e9 /devel | |
parent | 39baefe344a857ec81a1aa8fe07087371fea3299 (diff) | |
download | pkgsrc-1f59b2ab218ac238e618d9f3097139415267517e.tar.gz |
Update to 2.4.0.1, from PR pkg/23697 by Min Sik Kim.
2.4.0
- print usage message when no options passed to gconftool
- API docs updates
- fix UTF-8 handling for command line output
- fix reliability of writing out XML
- ensure recursive unsets get synced
- fix flag value that was "0"
- fix recursive preloading
- fix a memleak
- fix some gconftool messages/segfaults
2.3.3
- new gconf_client_notify() API to fake a notification
- fixes to gconftool --dump feature
- implement schema uninstallation in gconftool so packages
can avoid leaving junk
- fix build issues with linc-free ORBit
- new gconf_client_recursive_unset API
- fix gcc 3.3 strict aliasing warnings
2.3.2
- fix build on Cygwin
- don't complain about missing saved_state in syslog
- improve gconf-sanity-check error text
- added --get-type, --get-list-size and --get-list-element
- exported gconf_entry_copy
- cleaned up headers for C++
- added missing GCONF_CLIENT_GET_CLASS
- hackaround fix for 2.3.1 lockfile breakage
Diffstat (limited to 'devel')
-rw-r--r-- | devel/GConf2/Makefile | 4 | ||||
-rw-r--r-- | devel/GConf2/Makefile.common | 8 | ||||
-rw-r--r-- | devel/GConf2/PLIST | 45 | ||||
-rw-r--r-- | devel/GConf2/buildlink2.mk | 15 | ||||
-rw-r--r-- | devel/GConf2/distinfo | 11 | ||||
-rw-r--r-- | devel/GConf2/files/deinstall.tmpl | 4 | ||||
-rw-r--r-- | devel/GConf2/patches/patch-aa | 16 | ||||
-rw-r--r-- | devel/GConf2/patches/patch-ac | 28 | ||||
-rw-r--r-- | devel/GConf2/patches/patch-ae | 306 |
9 files changed, 52 insertions, 385 deletions
diff --git a/devel/GConf2/Makefile b/devel/GConf2/Makefile index 976d282fc11..ac83beff388 100644 --- a/devel/GConf2/Makefile +++ b/devel/GConf2/Makefile @@ -1,10 +1,9 @@ -# $NetBSD: Makefile,v 1.18 2003/12/04 19:48:24 xtraeme Exp $ +# $NetBSD: Makefile,v 1.19 2003/12/14 19:44:38 jmmv Exp $ # .include "../../devel/GConf2/Makefile.common" PKGNAME= ${DISTNAME:S/GConf/GConf2/} -PKGREVISION= 4 USE_PKGINSTALL= YES @@ -27,7 +26,6 @@ post-install: .include "../../devel/glib2/buildlink2.mk" .include "../../devel/popt/buildlink2.mk" .include "../../net/ORBit2/buildlink2.mk" -.include "../../net/linc/buildlink2.mk" .include "../../textproc/libxml2/buildlink2.mk" .include "../../textproc/xmlcatmgr/buildlink2.mk" .include "../../mk/bsd.pkg.mk" diff --git a/devel/GConf2/Makefile.common b/devel/GConf2/Makefile.common index aac24a1f201..2096f892ad5 100644 --- a/devel/GConf2/Makefile.common +++ b/devel/GConf2/Makefile.common @@ -1,9 +1,9 @@ -# $NetBSD: Makefile.common,v 1.7 2003/12/09 00:54:29 reed Exp $ +# $NetBSD: Makefile.common,v 1.8 2003/12/14 19:44:38 jmmv Exp $ # -DISTNAME= GConf-2.2.0 +DISTNAME= GConf-2.4.0.1 CATEGORIES= devel gnome -MASTER_SITES= ${MASTER_SITE_GNOME:=sources/GConf/2.2/} +MASTER_SITES= ${MASTER_SITE_GNOME:=sources/GConf/2.4/} EXTRACT_SUFX= .tar.bz2 MAINTAINER= jmmv@NetBSD.org @@ -30,5 +30,5 @@ PKG_SYSCONFSUBDIR= gconf CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR} CONFIGURE_ARGS+= --with-html-dir=${PREFIX}/share/doc/html -CONFIGURE_ARGS+= --enable-gtk-doc=no +CONFIGURE_ARGS+= --disable-gtk-doc CONFIGURE_ARGS+= --enable-gconf-source=xml::${PKG_SYSCONFDIR}/gconf.xml.defaults diff --git a/devel/GConf2/PLIST b/devel/GConf2/PLIST index b3e46aebad5..2db66285667 100644 --- a/devel/GConf2/PLIST +++ b/devel/GConf2/PLIST @@ -1,4 +1,4 @@ -@comment $NetBSD: PLIST,v 1.10 2003/02/24 17:19:35 jmmv Exp $ +@comment $NetBSD: PLIST,v 1.11 2003/12/14 19:44:38 jmmv Exp $ bin/gconftool-2 include/gconf/2/gconf/gconf-changeset.h include/gconf/2/gconf/gconf-client.h @@ -20,57 +20,36 @@ lib/libgconf-2.so.5.0 lib/pkgconfig/gconf-2.0.pc libexec/gconfd-2 share/aclocal/gconf-2.m4 -share/doc/html/gconf/c120.html -share/doc/html/gconf/c21.html -share/doc/html/gconf/c381.html -share/doc/html/gconf/c490.html -share/doc/html/gconf/conventions.html -share/doc/html/gconf/gconf-client-reference.html -share/doc/html/gconf/gconf-client.html -share/doc/html/gconf/gconf-gconf-backend.html -share/doc/html/gconf/gconf-gconf-changeset.html -share/doc/html/gconf/gconf-gconf-engine.html -share/doc/html/gconf/gconf-gconf-error.html -share/doc/html/gconf/gconf-gconf-internals.html -share/doc/html/gconf/gconf-gconf-listeners.html -share/doc/html/gconf/gconf-gconf-locale.html -share/doc/html/gconf/gconf-gconf-schema.html -share/doc/html/gconf/gconf-gconf-sources.html -share/doc/html/gconf/gconf-gconf-value.html -share/doc/html/gconf/gconf-gconf.html -share/doc/html/gconf/gconf-internals-reference.html -share/doc/html/gconf/gconf-reference.html -share/doc/html/gconf/gconfclient.html -share/doc/html/gconf/gconftool.html -share/doc/html/gconf/index.html -share/doc/html/gconf/index.sgml -share/doc/html/gconf/x184.html -share/doc/html/gconf/x236.html -share/doc/html/gconf/x289.html -share/doc/html/gconf/x42.html -share/doc/html/gconf/x462.html -share/doc/html/gconf/x485.html share/examples/GConf2/path +${PKGLOCALEDIR}/locale/am/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/ar/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/az/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/be/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/bg/LC_MESSAGES/GConf2.mo +${PKGLOCALEDIR}/locale/bn/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/ca/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/cs/LC_MESSAGES/GConf2.mo +${PKGLOCALEDIR}/locale/cy/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/da/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/de/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/el/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/es/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/eu/LC_MESSAGES/GConf2.mo +${PKGLOCALEDIR}/locale/fa/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/fi/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/fr/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/ga/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/gl/LC_MESSAGES/GConf2.mo +${PKGLOCALEDIR}/locale/hi/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/hu/LC_MESSAGES/GConf2.mo +${PKGLOCALEDIR}/locale/id/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/it/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/ja/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/ko/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/lv/LC_MESSAGES/GConf2.mo +${PKGLOCALEDIR}/locale/mk/LC_MESSAGES/GConf2.mo +${PKGLOCALEDIR}/locale/ml/LC_MESSAGES/GConf2.mo +${PKGLOCALEDIR}/locale/mn/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/ms/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/nl/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/nn/LC_MESSAGES/GConf2.mo @@ -82,10 +61,14 @@ ${PKGLOCALEDIR}/locale/ro/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/ru/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/sk/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/sl/LC_MESSAGES/GConf2.mo +${PKGLOCALEDIR}/locale/sq/LC_MESSAGES/GConf2.mo +${PKGLOCALEDIR}/locale/sr/LC_MESSAGES/GConf2.mo +${PKGLOCALEDIR}/locale/sr@Latn/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/sv/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/tr/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/uk/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/vi/LC_MESSAGES/GConf2.mo +${PKGLOCALEDIR}/locale/yi/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/zh_CN/LC_MESSAGES/GConf2.mo ${PKGLOCALEDIR}/locale/zh_TW/LC_MESSAGES/GConf2.mo share/sgml/gconf/gconf-1.0.dtd diff --git a/devel/GConf2/buildlink2.mk b/devel/GConf2/buildlink2.mk index 537a2ad9e48..c809ec5bda1 100644 --- a/devel/GConf2/buildlink2.mk +++ b/devel/GConf2/buildlink2.mk @@ -1,4 +1,4 @@ -# $NetBSD: buildlink2.mk,v 1.18 2003/11/12 01:31:47 salo Exp $ +# $NetBSD: buildlink2.mk,v 1.19 2003/12/14 19:44:38 jmmv Exp $ # # This Makefile fragment is included by packages that use GConf2. # @@ -9,20 +9,12 @@ GCONF2_BUILDLINK2_MK= # defined BUILDLINK_PACKAGES+= GConf2 -BUILDLINK_DEPENDS.GConf2?= GConf2>=2.2.0nb3 +BUILDLINK_DEPENDS.GConf2?= GConf2>=2.4.0.1 BUILDLINK_PKGSRCDIR.GConf2?= ../../devel/GConf2 EVAL_PREFIX+= BUILDLINK_PREFIX.GConf2=GConf2 BUILDLINK_PREFIX.GConf2_DEFAULT= ${LOCALBASE} -BUILDLINK_FILES.GConf2+= include/gconf/2/gconf/gconf-changeset.h -BUILDLINK_FILES.GConf2+= include/gconf/2/gconf/gconf-client.h -BUILDLINK_FILES.GConf2+= include/gconf/2/gconf/gconf-engine.h -BUILDLINK_FILES.GConf2+= include/gconf/2/gconf/gconf-enum-types.h -BUILDLINK_FILES.GConf2+= include/gconf/2/gconf/gconf-error.h -BUILDLINK_FILES.GConf2+= include/gconf/2/gconf/gconf-listeners.h -BUILDLINK_FILES.GConf2+= include/gconf/2/gconf/gconf-schema.h -BUILDLINK_FILES.GConf2+= include/gconf/2/gconf/gconf-value.h -BUILDLINK_FILES.GConf2+= include/gconf/2/gconf/gconf.h +BUILDLINK_FILES.GConf2+= include/gconf/2/gconf/* BUILDLINK_FILES.GConf2+= lib/GConf/2/libgconfbackend-xml.* BUILDLINK_FILES.GConf2+= lib/libgconf-2.* @@ -30,7 +22,6 @@ BUILDLINK_FILES.GConf2+= lib/libgconf-2.* .include "../../devel/glib2/buildlink2.mk" .include "../../devel/popt/buildlink2.mk" .include "../../net/ORBit2/buildlink2.mk" -.include "../../net/linc/buildlink2.mk" .include "../../textproc/libxml2/buildlink2.mk" BUILDLINK_TARGETS+= GConf2-buildlink diff --git a/devel/GConf2/distinfo b/devel/GConf2/distinfo index 808ec5d66e0..efe3f0ec906 100644 --- a/devel/GConf2/distinfo +++ b/devel/GConf2/distinfo @@ -1,9 +1,8 @@ -$NetBSD: distinfo,v 1.6 2003/02/14 20:04:07 jmmv Exp $ +$NetBSD: distinfo,v 1.7 2003/12/14 19:44:38 jmmv Exp $ -SHA1 (GConf-2.2.0.tar.bz2) = 498cfd3d4d26b765fe4e54d7bacef01285a37b02 -Size (GConf-2.2.0.tar.bz2) = 1049910 bytes -SHA1 (patch-aa) = bbafe6158ed1dd45df5c38264a2a34e1536860da +SHA1 (GConf-2.4.0.1.tar.bz2) = 190ed06d34699976a9a425e9e14d4ccb26220ba8 +Size (GConf-2.4.0.1.tar.bz2) = 1288876 bytes +SHA1 (patch-aa) = 7bac8f0cc027a135b8bd1f55f5608a0691b13f51 SHA1 (patch-ab) = eb9ffa0ec87fe21b0f754aef019221d619b37b11 -SHA1 (patch-ac) = 32f8bc70f3f384c7c044104520fa412530b90846 +SHA1 (patch-ac) = de42b523072ff5eac020525c2ccb4ce93ed792c6 SHA1 (patch-ad) = 50b0d919768b179d0209c49aee25a7c64ca5b497 -SHA1 (patch-ae) = 158845de022ac4e6a33782658835c8834044e02f diff --git a/devel/GConf2/files/deinstall.tmpl b/devel/GConf2/files/deinstall.tmpl index 929f9200330..693cb277dec 100644 --- a/devel/GConf2/files/deinstall.tmpl +++ b/devel/GConf2/files/deinstall.tmpl @@ -1,4 +1,4 @@ -# $NetBSD: deinstall.tmpl,v 1.3 2003/06/20 10:49:18 jmmv Exp $ +# $NetBSD: deinstall.tmpl,v 1.4 2003/12/14 19:44:38 jmmv Exp $ # # Unregister GConf2 schema files from GConf2's database at install time. # @@ -12,7 +12,7 @@ case ${STAGE} in DEINSTALL) for f in ${GCONF2_SCHEMAS}; do GCONF_CONFIG_SOURCE="${GCONF2_CONFIG_SOURCE}" \ - ${GCONFTOOL2} --makefile-deinstall-rule \ + ${GCONFTOOL2} --makefile-uninstall-rule \ ${GCONF2_SCHEMAS_DIR}/$f >/dev/null done ;; diff --git a/devel/GConf2/patches/patch-aa b/devel/GConf2/patches/patch-aa index 84c95cb1e1e..c5409917f1f 100644 --- a/devel/GConf2/patches/patch-aa +++ b/devel/GConf2/patches/patch-aa @@ -1,11 +1,11 @@ -$NetBSD: patch-aa,v 1.3 2003/02/14 20:04:08 jmmv Exp $ +$NetBSD: patch-aa,v 1.4 2003/12/14 19:44:38 jmmv Exp $ Disable GTK2 support. This is a workaround until bug #102825 gets fixed. See http://bugzilla.gnome.org/show_bug.cgi?id=102825 for more details. - ---- configure.orig 2003-01-21 04:29:24.000000000 +0100 -+++ configure 2003-02-13 13:16:42.000000000 +0100 -@@ -8549,6 +8549,7 @@ + +--- configure.orig 2003-10-25 23:07:14.000000000 +0000 ++++ configure 2003-10-25 23:08:46.000000000 +0000 +@@ -18961,6 +18961,7 @@ fi @@ -13,7 +13,7 @@ See http://bugzilla.gnome.org/show_bug.cgi?id=102825 for more details. if test "$PKG_CONFIG" = "no" ; then echo "*** The pkg-config script could not be found. Make sure it is" echo "*** in your path, or set the PKG_CONFIG environment variable" -@@ -8592,6 +8593,7 @@ +@@ -19004,6 +19005,7 @@ echo "*** See http://www.freedesktop.org/software/pkgconfig" fi fi @@ -21,7 +21,7 @@ See http://bugzilla.gnome.org/show_bug.cgi?id=102825 for more details. if test $succeeded = yes; then HAVE_GTK=yes -@@ -8645,6 +8647,7 @@ +@@ -19057,6 +19059,7 @@ fi @@ -29,7 +29,7 @@ See http://bugzilla.gnome.org/show_bug.cgi?id=102825 for more details. if test "$PKG_CONFIG" = "no" ; then echo "*** The pkg-config script could not be found. Make sure it is" echo "*** in your path, or set the PKG_CONFIG environment variable" -@@ -8688,6 +8691,7 @@ +@@ -19100,6 +19103,7 @@ echo "*** See http://www.freedesktop.org/software/pkgconfig" fi fi diff --git a/devel/GConf2/patches/patch-ac b/devel/GConf2/patches/patch-ac index 8049617ba57..ab3ef8cadfc 100644 --- a/devel/GConf2/patches/patch-ac +++ b/devel/GConf2/patches/patch-ac @@ -1,17 +1,19 @@ -$NetBSD: patch-ac,v 1.1 2003/02/14 20:04:10 jmmv Exp $ +$NetBSD: patch-ac,v 1.2 2003/12/14 19:44:38 jmmv Exp $ ---- gconf/Makefile.in.orig 2003-01-21 04:30:18.000000000 +0100 -+++ gconf/Makefile.in -@@ -136,7 +136,7 @@ NULL = - - GCONFD_BINARY_NAME = gconfd-2 - --INCLUDES = -I$(top_srcdir) -I$(top_builddir) $(DEPENDENT_WITH_XML_AND_GTK_CFLAGS) -DG_LOG_DOMAIN=\"GConf\" -DGCONF_LOCALE_DIR=\""$(gconflocaledir)"\" -DGCONF_SRCDIR=\""$(absolute_top_srcdir)"\" -DGCONF_CONFDIR=\""$(sysconfdir)/gconf/$(MAJOR_VERSION)"\" -DGCONF_ETCDIR=\""$(sysconfdir)/gconf"\" -DGCONF_BINDIR=\""$(bindir)"\" -DGCONF_SERVERDIR=\""$(libexecdir)"\" -DGCONF_BUILDDIR=\""$(top_builddir)"\" -DGCONF_BACKEND_DIR=\""$(pkglibdir)/$(MAJOR_VERSION)"\" -DVERSION=\""$(VERSION)"\" -DGCONF_ENABLE_INTERNALS=1 -DGCONFD=\""$(GCONFD_BINARY_NAME)"\" $(NULL) -+INCLUDES = -I$(top_srcdir) -I$(top_builddir) $(DEPENDENT_WITH_XML_AND_GTK_CFLAGS) -DG_LOG_DOMAIN=\"GConf\" -DGCONF_LOCALE_DIR=\""$(gconflocaledir)"\" -DGCONF_SRCDIR=\""$(absolute_top_srcdir)"\" -DGCONF_CONFDIR=\""$(sysconfdir)/$(MAJOR_VERSION)"\" -DGCONF_ETCDIR=\""$(sysconfdir)"\" -DGCONF_BINDIR=\""$(bindir)"\" -DGCONF_SERVERDIR=\""$(libexecdir)"\" -DGCONF_BUILDDIR=\""$(top_builddir)"\" -DGCONF_BACKEND_DIR=\""$(pkglibdir)/$(MAJOR_VERSION)"\" -DVERSION=\""$(VERSION)"\" -DGCONF_ENABLE_INTERNALS=1 -DGCONFD=\""$(GCONFD_BINARY_NAME)"\" $(NULL) - - - EFENCE = -@@ -614,8 +614,8 @@ $(CORBA_SOURCECODE): $(srcdir)/GConfX.id +--- gconf/Makefile.in.orig 2003-10-25 23:27:25.000000000 +0000 ++++ gconf/Makefile.in 2003-10-25 23:29:40.000000000 +0000 +@@ -148,8 +148,8 @@ + -DG_LOG_DOMAIN=\"GConf\" \ + -DGCONF_LOCALE_DIR=\""$(gconflocaledir)"\" \ + -DGCONF_SRCDIR=\""$(absolute_top_srcdir)"\" \ +- -DGCONF_CONFDIR=\""$(sysconfdir)/gconf/$(MAJOR_VERSION)"\" \ +- -DGCONF_ETCDIR=\""$(sysconfdir)/gconf"\" \ ++ -DGCONF_CONFDIR=\""$(sysconfdir)/$(MAJOR_VERSION)"\" \ ++ -DGCONF_ETCDIR=\""$(sysconfdir)"\" \ + -DGCONF_BINDIR=\""$(bindir)"\" \ + -DGCONF_SERVERDIR=\""$(libexecdir)"\" \ + -DGCONF_BUILDDIR=\""$(top_builddir)"\" \ +@@ -606,8 +606,8 @@ $(ORBIT_IDL) $(srcdir)/GConfX.idl install-data-local: diff --git a/devel/GConf2/patches/patch-ae b/devel/GConf2/patches/patch-ae deleted file mode 100644 index fbbd0d191f6..00000000000 --- a/devel/GConf2/patches/patch-ae +++ /dev/null @@ -1,306 +0,0 @@ -$NetBSD: patch-ae,v 1.1 2003/02/14 20:04:10 jmmv Exp $ - -Implement a --makefile-deinstall-rule option. This is beeing tracked in -bug #104487. See http://bugzilla.gnome.org/show_bug.cgi?id=104487 - ---- gconf/gconftool.c.orig 19 Sep 2002 02:49:08 -0000 -+++ gconf/gconftool.c 26 Jan 2003 21:15:51 -0000 -@@ -52,6 +52,7 @@ - static const char* config_source = NULL; - static int use_local_source = FALSE; - static int makefile_install_mode = FALSE; -+static int makefile_deinstall_mode = FALSE; - static int break_key_mode = FALSE; - static int break_dir_mode = FALSE; - static int short_docs_mode = FALSE; -@@ -282,6 +283,15 @@ - NULL - }, - { -+ "makefile-deinstall-rule", -+ '\0', -+ POPT_ARG_NONE, -+ &makefile_deinstall_mode, -+ 0, -+ N_("Properly deinstalls schema files on the command line from the database. GCONF_CONFIG_SOURCE environment variable should be set to a non-default config source or set to the empty string to use the default."), -+ NULL -+ }, -+ { - "break-key", - '\0', - POPT_ARG_NONE, -@@ -376,6 +386,7 @@ - static int do_break_key(GConfEngine* conf, const gchar** args); - static int do_break_directory(GConfEngine* conf, const gchar** args); - static int do_makefile_install(GConfEngine* conf, const gchar** args); -+static int do_makefile_deinstall(GConfEngine* conf, const gchar** args); - static int do_recursive_list(GConfEngine* conf, const gchar** args); - static int do_all_pairs(GConfEngine* conf, const gchar** args); - static void list_pairs_in_dir(GConfEngine* conf, const gchar* dir, guint depth); -@@ -499,7 +510,8 @@ - - if (ping_gconfd && (shutdown_gconfd || set_mode || get_mode || unset_mode || - all_subdirs_mode || all_entries_mode || recursive_list || -- spawn_gconfd || dir_exists || schema_file || makefile_install_mode || -+ spawn_gconfd || dir_exists || schema_file || -+ makefile_install_mode || makefile_deinstall_mode || - break_key_mode || break_dir_mode || short_docs_mode || - long_docs_mode || schema_name_mode)) - { -@@ -510,7 +522,8 @@ - if (dir_exists && (shutdown_gconfd || set_mode || get_mode || unset_mode || - all_subdirs_mode || all_entries_mode || recursive_list || - spawn_gconfd || schema_file || makefile_install_mode || -- break_key_mode || break_dir_mode || short_docs_mode || -+ makefile_deinstall_mode || break_key_mode || -+ break_dir_mode || short_docs_mode || - long_docs_mode || schema_name_mode)) - { - fprintf(stderr, _("--dir-exists option must be used by itself.\n")); -@@ -520,7 +533,8 @@ - if (schema_file && (shutdown_gconfd || set_mode || get_mode || unset_mode || - all_subdirs_mode || all_entries_mode || recursive_list || - spawn_gconfd || dir_exists || makefile_install_mode || -- break_key_mode || break_dir_mode || short_docs_mode || -+ makefile_deinstall_mode || break_key_mode || -+ break_dir_mode || short_docs_mode || - long_docs_mode || schema_name_mode)) - { - fprintf(stderr, _("--install-schema-file must be used by itself.\n")); -@@ -530,6 +544,7 @@ - - if (makefile_install_mode && (shutdown_gconfd || set_mode || get_mode || unset_mode || - all_subdirs_mode || all_entries_mode || recursive_list || -+ makefile_deinstall_mode || - spawn_gconfd || dir_exists || schema_file || - break_key_mode || break_dir_mode || short_docs_mode || - long_docs_mode || schema_name_mode)) -@@ -539,10 +554,24 @@ - } - - -+ if (makefile_deinstall_mode && (shutdown_gconfd || set_mode || get_mode || -+ unset_mode || all_subdirs_mode || -+ all_entries_mode || recursive_list || -+ makefile_install_mode || -+ spawn_gconfd || dir_exists || schema_file || -+ break_key_mode || break_dir_mode || short_docs_mode || -+ long_docs_mode || schema_name_mode)) -+ { -+ fprintf(stderr, _("--makefile-deinstall-rule must be used by itself.\n")); -+ return 1; -+ } -+ -+ - if (break_key_mode && (shutdown_gconfd || set_mode || get_mode || unset_mode || - all_subdirs_mode || all_entries_mode || recursive_list || - spawn_gconfd || dir_exists || schema_file || -- makefile_install_mode || break_dir_mode || short_docs_mode || -+ makefile_install_mode || makefile_deinstall_mode || -+ break_dir_mode || short_docs_mode || - long_docs_mode || schema_name_mode)) - { - fprintf(stderr, _("--break-key must be used by itself.\n")); -@@ -553,7 +582,8 @@ - if (break_dir_mode && (shutdown_gconfd || set_mode || get_mode || unset_mode || - all_subdirs_mode || all_entries_mode || recursive_list || - spawn_gconfd || dir_exists || schema_file || -- break_key_mode || makefile_install_mode || short_docs_mode || -+ break_key_mode || makefile_install_mode || -+ makefile_deinstall_mode || short_docs_mode || - long_docs_mode || schema_name_mode)) - { - fprintf(stderr, _("--break-directory must be used by itself.\n")); -@@ -608,8 +638,15 @@ - g_print (_("GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL is set, not installing schemas\n")); - makefile_install_mode = FALSE; - } -- -- if (makefile_install_mode) -+ -+ if (makefile_deinstall_mode && -+ g_getenv ("GCONF_DISABLE_MAKEFILE_SCHEMA_DEINSTALL")) -+ { -+ g_print (_("GCONF_DISABLE_MAKEFILE_SCHEMA_DEINSTALL is set, not deinstalling schemas\n")); -+ makefile_deinstall_mode = FALSE; -+ } -+ -+ if (makefile_install_mode || makefile_deinstall_mode) - { - g_assert (config_source == NULL); - -@@ -701,6 +738,16 @@ - return retval; - } - -+ if (makefile_deinstall_mode) -+ { -+ const gchar** args = poptGetArgs(ctx); -+ gint retval = do_makefile_deinstall (conf, args); -+ -+ gconf_engine_unref (conf); -+ -+ return retval; -+ } -+ - if (break_key_mode) - { - const gchar** args = poptGetArgs(ctx); -@@ -2158,7 +2205,7 @@ - } - - static void --hash_foreach(gpointer key, gpointer value, gpointer user_data) -+hash_foreach_install(gpointer key, gpointer value, gpointer user_data) - { - SchemaInfo* info; - GConfSchema* schema; -@@ -2186,6 +2233,36 @@ - gconf_schema_free(schema); - } - -+static void -+hash_foreach_deinstall(gpointer key, gpointer value, gpointer user_data) -+{ -+ SchemaInfo* info; -+ GConfSchema* schema; -+ GError* error = NULL; -+ -+ info = user_data; -+ schema = value; -+ -+ //if (!gconf_engine_set_schema(info->conf, info->key, schema, &error)) -+ if (!gconf_engine_unset(info->conf, info->key, &error)) -+ { -+ g_assert(error != NULL); -+ -+ fprintf(stderr, _("WARNING: failed to deinstall schema `%s' locale `%s': %s\n"), -+ info->key, gconf_schema_get_locale(schema), error->message); -+ g_error_free(error); -+ error = NULL; -+ } -+ else -+ { -+ g_assert(error == NULL); -+ printf(_("Deinstalled schema `%s' from locale `%s'\n"), -+ info->key, gconf_schema_get_locale(schema)); -+ } -+ -+ gconf_schema_free(schema); -+} -+ - - static int - process_key_list(GConfEngine* conf, const gchar* schema_name, GSList* keylist) -@@ -2197,22 +2274,47 @@ - - while (tmp != NULL) - { -- if (!gconf_engine_associate_schema(conf, tmp->data, schema_name, &error)) -+ if (!makefile_deinstall_mode) - { -- g_assert(error != NULL); -- -- fprintf(stderr, _("WARNING: failed to associate schema `%s' with key `%s': %s\n"), -- schema_name, (gchar*)tmp->data, error->message); -- g_error_free(error); -- error = NULL; -+ if (!gconf_engine_associate_schema(conf, tmp->data, schema_name, -+ &error)) -+ { -+ g_assert(error != NULL); -+ -+ fprintf(stderr, _("WARNING: failed to associate schema `%s' " -+ "with key `%s': %s\n"), -+ schema_name, (gchar*)tmp->data, error->message); -+ g_error_free(error); -+ error = NULL; -+ } -+ else -+ { -+ g_assert(error == NULL); -+ printf(_("Attached schema `%s' to key `%s'\n"), -+ schema_name, (gchar*)tmp->data); -+ } - } - else - { -- g_assert(error == NULL); -- printf(_("Attached schema `%s' to key `%s'\n"), -- schema_name, (gchar*)tmp->data); -+ if (!gconf_engine_associate_schema(conf, tmp->data, NULL, -+ &error)) -+ { -+ g_assert(error != NULL); -+ -+ fprintf(stderr, _("WARNING: failed to deassociate schema `%s' " -+ "with key `%s': %s\n"), -+ schema_name, (gchar*)tmp->data, error->message); -+ g_error_free(error); -+ error = NULL; -+ } -+ else -+ { -+ g_assert(error == NULL); -+ printf(_("Deattached schema `%s' from key `%s'\n"), -+ schema_name, (gchar*)tmp->data); -+ } - } -- -+ - tmp = g_slist_next(tmp); - } - -@@ -2292,8 +2394,11 @@ - return 1; - } - -- /* Now install each schema in the hash into the GConfEngine */ -- g_hash_table_foreach(info.hash, hash_foreach, &info); -+ /* Now (de)install each schema in the hash into the GConfEngine */ -+ if (makefile_deinstall_mode) -+ g_hash_table_foreach(info.hash, hash_foreach_deinstall, &info); -+ else -+ g_hash_table_foreach(info.hash, hash_foreach_install, &info); - - g_hash_table_destroy(info.hash); - -@@ -2416,6 +2521,38 @@ - if (args == NULL) - { - fprintf(stderr, _("Must specify some schema files to install\n")); -+ return 1; -+ } -+ -+ while (*args) -+ { -+ if (do_load_schema_file(conf, *args) != 0) -+ return 1; -+ -+ ++args; -+ } -+ -+ gconf_engine_suggest_sync(conf, &err); -+ -+ if (err != NULL) -+ { -+ fprintf(stderr, _("Error syncing config data: %s"), -+ err->message); -+ g_error_free(err); -+ return 1; -+ } -+ -+ return 0; -+} -+ -+static int -+do_makefile_deinstall(GConfEngine* conf, const gchar** args) -+{ -+ GError* err = NULL; -+ -+ if (args == NULL) -+ { -+ fprintf(stderr, _("Must specify some schema files to deinstall\n")); - return 1; - } - |