+++ /dev/null
-diff --git a/configure.ac b/configure.ac
-index fcf02d6..c38061f 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -102,19 +102,173 @@ if test "x$enable_sendto" = "xyes"; then
- GUPNP_REQUIRED=0.13
- PKG_CHECK_MODULES(SENDTO,
- glib-2.0 >= $GLIB_REQUIRED
-- gio-2.0 >= $GLIB_REQUIRED
- gthread-2.0 >= $GTHREAD_REQUIRED
- gmodule-2.0 >= $GLIB_REQUIRED
- gobject-2.0 >= $GLIB_REQUIRED
-- gtk+-$GTK_API_VERSION >= $GTK_REQUIRED
-- dbus-1 >= $DBUS_REQUIRED
-- dbus-glib-1 >= $DBUS_GLIB_REQUIRED
-- gupnp-1.0 >= $GUPNP_REQUIRED)
-+ gtk+-$GTK_API_VERSION >= $GTK_REQUIRED)
- AC_SUBST(SENDTO_CFLAGS)
- AC_SUBST(SENDTO_LIBS)
-- AC_DEFINE_UNQUOTED(GAJIM_SHARE_DIR, "$prefix/share/gajim", [path to gajim share dir])
--fi
-
-+ # The full list of plugins
-+ allowed_sendto_plugins="emailclient gajim caja-burn pidgin removable-devices upnp"
-+
-+ sendto_plugin_error_or_ignore()
-+ {
-+ if test "${error_on_bad_sendto_plugin}" = "1" ; then
-+ AC_MSG_ERROR([$1])
-+ else
-+ AC_MSG_WARN([$1 (disabling sendto plugin)])
-+ fi
-+ }
-+
-+ AC_ARG_WITH([sendto-plugins],
-+ [AS_HELP_STRING([--with-sendto-plugins],[Which caja-sendto plugins to compile (default: auto; "all", "autodetect" are valid)])],
-+ [], [with_sendto_plugins=autodetect])
-+
-+ used_sendto_plugins=""
-+ used_sendto_plugins2=""
-+
-+ if test "x${with_sendto_plugins}" = "xautodetect" ; then
-+ # Default to all plugins and just ignore them if they won't compile
-+ with_sendto_plugins="all"
-+ error_on_bad_sendto_plugin="0"
-+ else
-+ # Clean up the plugin list and error if a plugin won't compile
-+ with_sendto_plugins=`echo ,"${with_sendto_plugins}", | sed -e 's/[[ ,]][[ ,]]*/ /g' -e 's/,$//'`
-+ error_on_bad_sendto_plugin="1"
-+ fi
-+
-+ # Iterate through the wanted plugins and weed out bad ones (or error)
-+ for wanted_sendto_plugin in ${with_sendto_plugins}; do
-+ for allowed_sendto_plugin in ${allowed_sendto_plugins}; do
-+ case ${wanted_sendto_plugin} in
-+ all)
-+ # List all plugins as being used
-+ used_sendto_plugins=${allowed_sendto_plugins}
-+ ;;
-+ autodetect)
-+ # List all plugins as being used
-+ used_sendto_plugins=${allowed_sendto_plugins}
-+ ;;
-+ ${allowed_sendto_plugin}) used_sendto_plugins="${used_sendto_plugins} ${wanted_sendto_plugin}";; # List the plugin
-+ *) ;;
-+ esac
-+ done
-+ done
-+
-+ # Check for plugin-specific requirements and error if necessary
-+ for sendto_plugin in ${used_sendto_plugins}; do
-+ add_sendto_plugin="1"
-+
-+ case ${sendto_plugin} in
-+ emailclient)
-+ PKG_CHECK_MODULES(EMAILCLIENT, gio-2.0,
-+ enable_emailclient=yes, enable_emailclient=no)
-+ if test "${enable_emailclient}" != "yes" ; then
-+ sendto_plugin_error_or_ignore "you need gio-2.0 to build the emailclient plugin"
-+ add_sendto_plugin="0"
-+ fi
-+ ;;
-+ gajim)
-+ AC_ARG_WITH(sendto_gajim,
-+ [AS_HELP_STRING(--with-sendto-gajim,[Path to Gajim install prefix])],
-+ [GAJIM_PATH="$withval"],[GAJIM_PATH="$prefix"])
-+
-+ GAJIM_SHARE_DIR="$GAJIM_PATH"/share/gajim
-+
-+ PKG_CHECK_MODULES(DBUS, dbus-1 >= $DBUS_REQUIRED dbus-glib-1 >= $DBUS_GLIB_REQUIRED,
-+ [AC_SUBST(DBUS_CFLAGS)
-+ AC_SUBST(DBUS_LIBS)
-+ enable_sendto_gajim=yes
-+ AC_DEFINE_UNQUOTED(GAJIM_SHARE_DIR, "$GAJIM_SHARE_DIR", [path to gajim share dir])],
-+ [enable_gajim=no])
-+
-+ if test "${enable_gajim}" != "yes" ; then
-+ sendto_plugin_error_or_ignore "you need gajim and dbus-glib installed for the gajim plugin"
-+ add_sendto_plugin="0"
-+ fi
-+ ;;
-+ caja-burn)
-+ PKG_CHECK_MODULES(GIO, gio-2.0,
-+ enable_burn=yes, enable_burn=no)
-+ if test "${enable_burn}" != "yes" ; then
-+ sendto_plugin_error_or_ignore "you need gio installed for the caja-burn plugin"
-+ add_sendto_plugin="0"
-+ fi
-+ ;;
-+ pidgin)
-+ PKG_CHECK_MODULES(PIDGIN, dbus-glib-1 >= $DBUS_GLIB_REQUIRED,
-+ enable_pidgin=yes, enable_pidgin=no)
-+ if test "${enable_pidgin}" != "yes" ; then
-+ sendto_plugin_error_or_ignore "you need dbus-glib to build the pidgin plugin"
-+ add_sendto_plugin="0"
-+ fi
-+ ;;
-+ removable-devices)
-+ PKG_CHECK_MODULES(GIO, gio-2.0,
-+ enable_removable=yes, enable_removable=no)
-+ if test "${enable_removable}" != "yes" ; then
-+ sendto_plugin_error_or_ignore "you need gio-2.0 to build the removable-devices plugin"
-+ add_sendto_plugin="0"
-+ fi
-+ ;;
-+ upnp)
-+ PKG_CHECK_MODULES(UPNP, gupnp-1.0 >= $GUPNP_REQUIRED,
-+ enable_upnp=yes, enable_upnp=no)
-+ if test "${enable_upnp}" != "yes" ; then
-+ sendto_plugin_error_or_ignore "you need gupnp installed for the upnp plugin"
-+ add_sendto_plugin="0"
-+ fi
-+ ;;
-+ esac
-+
-+ # Add the specified plugin
-+ if test "${add_sendto_plugin}" = "1" ; then
-+ used_sendto_plugins2="${used_sendto_plugins2} ${sendto_plugin}"
-+ fi
-+ done
-+
-+ ALL_SENDTO_PLUGINS=$allowed_sendto_plugins
-+ SENDTO_PLUGINS=$used_sendto_plugins2
-+
-+ dnl Error out if no plugins will be built
-+ if test -z "${SENDTO_PLUGINS}" ; then
-+ AC_MSG_ERROR([No sendto plugins will be built, and caja-sendto requires at least one])
-+ fi
-+
-+ AC_MSG_CHECKING([which sendto plugins to compile])
-+ AC_MSG_RESULT([$SENDTO_PLUGINS])
-+
-+ AC_SUBST([ALL_SENDTO_PLUGINS])
-+ AC_SUBST([SENDTO_PLUGINS])
-+
-+ dnl For the pidgin sendto plugin
-+ AM_CONDITIONAL(HAVE_SENDTO_PIDGIN, test "x$enable_pidgin" = "xyes")
-+
-+ dnl For the GIO based plugins
-+ enable_nst_common=no
-+ if test "x$enable_burn" = "xyes" -o "x$enable_removable" = "xyes"; then
-+ enable_nst_common=yes
-+ fi
-+ AM_CONDITIONAL(HAVE_GIO, test "x$enable_nst_common" = "xyes")
-+
-+ if test "x${SENDTO_PLUGINS}" != "x" ; then
-+ for allowed_sendto_plugin in ${ALL_SENDTO_PLUGINS}; do
-+ for sendto_plugin in ${SENDTO_PLUGINS}; do
-+ case ${allowed_sendto_plugin} in
-+ ${sendto_plugin})
-+ AC_MSG_NOTICE([** ${allowed_sendto_plugin} sendto plugin enabled])
-+ continue 2
-+ ;;
-+ *);;
-+ esac
-+ done
-+ AC_MSG_NOTICE([ ${allowed_sendto_plugin} sendto plugin disabled])
-+ done
-+ else
-+ AC_MSG_NOTICE([ No caja-sendto plugins enabled])
-+ fi
-+fi
- AM_CONDITIONAL(ENABLE_SENDTO, test x"$enable_sendto" = "xyes")
-
- # share extension
-diff --git a/sendto/plugins/Makefile.am b/sendto/plugins/Makefile.am
-index 10097e8..6d17c98 100644
---- a/sendto/plugins/Makefile.am
-+++ b/sendto/plugins/Makefile.am
-@@ -1,16 +1,13 @@
--SUBDIRS = . \
-- caja-burn \
-- emailclient \
-- gajim \
-- pidgin \
-- removable-devices \
-- upnp
-+SUBDIRS = . $(SENDTO_PLUGINS)
-+DIST_SUBDIRS = $(ALL_SENDTO_PLUGINS)
-
- NST_COMMON_SOURCES = nst-common.c nst-common.h
-
-+if HAVE_GIO
- noinst_LTLIBRARIES = libnstcommon.la
- libnstcommon_la_SOURCES = $(NST_COMMON_SOURCES)
- libnstcommon_la_CFLAGS = $(SENDTO_CFLAGS)
- libnstcommon_la_LIBADD = $(SENDTO_LIBS)
-+endif
-
- EXTRA_DIST = $(NST_COMMON_SOURCES)
-diff --git a/sendto/plugins/caja-burn/Makefile.am b/sendto/plugins/caja-burn/Makefile.am
-index 50c309b..00f95c2 100644
---- a/sendto/plugins/caja-burn/Makefile.am
-+++ b/sendto/plugins/caja-burn/Makefile.am
-@@ -9,11 +9,12 @@ AM_CPPFLAGS = \
- -I$(srcdir)/../ \
- $(SENDTO_CFLAGS) \
- $(WARN_CFLAGS) \
-- $(DISABLE_DEPRECATED)
-+ $(DISABLE_DEPRECATED) \
-+ $(GIO_CFLAGS)
-
- plugin_LTLIBRARIES = libnstburn.la
-
- libnstburn_la_SOURCES = caja-burn.c
- libnstburn_la_LDFLAGS = -module -avoid-version
--libnstburn_la_LIBADD = $(SENDTO_LIBS) $(builddir)/../libnstcommon.la
-+libnstburn_la_LIBADD = $(GIO_LIBS) $(SENDTO_LIBS) $(builddir)/../libnstcommon.la
-
-diff --git a/sendto/plugins/emailclient/Makefile.am b/sendto/plugins/emailclient/Makefile.am
-index 31ba40e..c4af752 100644
---- a/sendto/plugins/emailclient/Makefile.am
-+++ b/sendto/plugins/emailclient/Makefile.am
-@@ -7,6 +7,7 @@ AM_CPPFLAGS = \
- -I$(top_srcdir)/sendto \
- -I$(top_builddir) \
- $(SENDTO_CFLAGS) \
-+ $(EMAILCLIENT_CFLAGS) \
- $(DISABLE_DEPRECATED) \
- $(WARN_CFLAGS)
-
-@@ -14,4 +15,4 @@ plugin_LTLIBRARIES = libnstemailclient.la
-
- libnstemailclient_la_SOURCES = emailclient.c
- libnstemailclient_la_LDFLAGS = -module -avoid-version
--libnstemailclient_la_LIBADD = $(SENDTO_LIBS)
-+libnstemailclient_la_LIBADD = $(SENDTO_LIBS) $(EMAILCLIENT_LIBS)
-diff --git a/sendto/plugins/gajim/Makefile.am b/sendto/plugins/gajim/Makefile.am
-index 5acd5b0..c39a3c0 100644
---- a/sendto/plugins/gajim/Makefile.am
-+++ b/sendto/plugins/gajim/Makefile.am
-@@ -7,6 +7,7 @@ AM_CPPFLAGS = \
- -I$(top_srcdir)/sendto \
- -I$(top_builddir) \
- $(SENDTO_CFLAGS) \
-+ $(DBUS_CFLAGS) \
- $(DISABLE_DEPRECATED) \
- $(WARN_CFLAGS)
-
-@@ -14,5 +15,5 @@ plugin_LTLIBRARIES = libnstgajim.la
-
- libnstgajim_la_SOURCES = gajim.c
- libnstgajim_la_LDFLAGS = -module -avoid-version
--libnstgajim_la_LIBADD = $(SENDTO_LIBS)
-+libnstgajim_la_LIBADD = $(DBUS_LIBS) $(SENDTO_LIBS)
-
-diff --git a/sendto/plugins/pidgin/Makefile.am b/sendto/plugins/pidgin/Makefile.am
-index b7f650a..bcfe1d3 100644
---- a/sendto/plugins/pidgin/Makefile.am
-+++ b/sendto/plugins/pidgin/Makefile.am
-@@ -7,6 +7,8 @@ AM_CPPFLAGS = \
- -I$(top_srcdir)/sendto \
- -I$(top_builddir) \
- $(SENDTO_CFLAGS) \
-+ $(NST_EBOOK_CFLAGS) \
-+ $(PIDGIN_CFLAGS) \
- $(DISABLE_DEPRECATED) \
- $(WARN_CFLAGS)
-
-@@ -14,5 +16,5 @@ plugin_LTLIBRARIES = libnstpidgin.la
-
- libnstpidgin_la_SOURCES = pidgin.c
- libnstpidgin_la_LDFLAGS = -module -avoid-version
--libnstpidgin_la_LIBADD = $(SENDTO_LIBS)
-+libnstpidgin_la_LIBADD = $(PIDGIN_LIBS) $(SENDTO_LIBS)
-
-diff --git a/sendto/plugins/removable-devices/Makefile.am b/sendto/plugins/removable-devices/Makefile.am
-index 294ca90..797353b 100644
---- a/sendto/plugins/removable-devices/Makefile.am
-+++ b/sendto/plugins/removable-devices/Makefile.am
-@@ -15,5 +15,5 @@ plugin_LTLIBRARIES = libnstremovable_devices.la
-
- libnstremovable_devices_la_SOURCES = removable-devices.c
- libnstremovable_devices_la_LDFLAGS = -module -avoid-version
--libnstremovable_devices_la_LIBADD = $(SENDTO_LIBS) $(builddir)/../libnstcommon.la
-+libnstremovable_devices_la_LIBADD = $(GIO_LIBS) $(SENDTO_LIBS) $(builddir)/../libnstcommon.la
-
-diff --git a/sendto/plugins/upnp/Makefile.am b/sendto/plugins/upnp/Makefile.am
-index 4127abd..31a8bd6 100644
---- a/sendto/plugins/upnp/Makefile.am
-+++ b/sendto/plugins/upnp/Makefile.am
-@@ -7,6 +7,7 @@ AM_CPPFLAGS = \
- -I$(top_srcdir)/sendto \
- -I$(top_builddir) \
- $(SENDTO_CFLAGS) \
-+ $(UPNP_CFLAGS) \
- $(DISABLE_DEPRECATED) \
- $(WARN_CFLAGS)
-
-@@ -14,5 +15,5 @@ plugin_LTLIBRARIES = libnstupnp.la
-
- libnstupnp_la_SOURCES = upnp.c
- libnstupnp_la_LDFLAGS = -module -avoid-version
--libnstupnp_la_LIBADD = $(SENDTO_LIBS)
-+libnstupnp_la_LIBADD = $(UPNP_LIBS) $(SENDTO_LIBS)
-