Currently gconf support is only compiled in mozgnome component if gnome-vfs is also available. Because gconf could be used outside of Gnome (for example hildon) it should be possible to build the component without gnome-vfs and also in an optional way outside of the Gtk backend.
Created attachment 410203 [details] [diff] [review] patch This patch seperates the gnome-vfs/gio stuff from gconf. So if any of the possible mozgnome components is selected to compile it creates mozgnome. gconf and gnome-vfs are still built by default in the gtk platform while gconf can be selected by --enable-gconf independent from the used toolkit now. I also rearranged the sections in configure.in a bit to make more sense by grouping the mozgnome components.
Comment on attachment 410203 [details] [diff] [review] patch >diff --git a/configure.in b/configure.in >--- a/configure.in >+++ b/configure.in >+ dnl ======================================================== >+ dnl = GConf support module >+ dnl ======================================================== >+ # if not set already in GTK2 environment we want to have it >+ # available as an option nevertheless >+ MOZ_ARG_ENABLE_BOOL(gconf, >+ [ --enable-gconf Enable gconf support (default for Gtk2 builds)], >+ MOZ_ENABLE_GCONF=force, >+ ) Do you expect that anyone would really want to --enable-gconf in a build where it doesn't already happen automatically? If you only want to be able to flip this per-app or per-platform, then you don't need the actual configure argument, just the variable and the logic that controls the setting based on the variable. I'd like to reduce the number of configure arguments, not increase them. >diff --git a/toolkit/system/gnome/Makefile.in b/toolkit/system/gnome/Makefile.in >--- a/toolkit/system/gnome/Makefile.in >+++ b/toolkit/system/gnome/Makefile.in >@@ -44,20 +44,24 @@ include $(DEPTH)/config/autoconf.mk > > MODULE = mozgnome > LIBRARY_NAME = mozgnome > FORCE_SHARED_LIB = 1 > IS_COMPONENT = 1 > > > CPPSRCS = \ >- nsGConfService.cpp \ > nsGnomeModule.cpp \ > $(NULL) You could just move this assignment to be a single line now. > >+ifdef MOZ_ENABLE_GCONF >+CPPSRCS += \ >+ nsGConfService.cpp \ >+ $(NULL) >+endif Two-space indent on the continued lines. Don't use tabs for anything but rule commands in Makefiles, please. r=me with those changes.
Also, sorry for the delayed review!
Checked in w/o a configure option as discussed in IRC and above style fixes. (for indentation I followed the rest of the file before though) http://hg.mozilla.org/mozilla-central/rev/0c9a366b7e5d
This caused bug 536745.