esac],
[USE_PROFILING=no]) dnl Default value
-dnl default to building registry in the source tree if we are enabling plugin build dir
-if test "x$PLUGINS_USE_BUILDDIR" = "xyes"; then
- GST_CONFIG_DIR=`pwd`
-else
- GST_CONFIG_DIR=${sysconfdir}/gstreamer
-fi
+dnl set up a configuration dir
+GST_CONFIG_DIR=${sysconfdir}/gstreamer
AC_ARG_WITH(configdir,
-AC_HELP_STRING([--with-configdir],[specify path to use for plugin and command completion registries]),
+AC_HELP_STRING([--with-configdir],[specify path to use for configuration files]),
[case "${withval}" in
yes) AC_MSG_ERROR(bad value ${withval} for --with-configdir) ;;
no) AC_MSG_ERROR(bad value ${withval} for --with-configdir) ;;
AC_MSG_NOTICE(Using $GST_CONFIG_DIR as configuration dir)
+dnl use a cache dir for storing element registry info.
+dnl default to building registry in the source tree if we are enabling plugin build dir
+if test "x$PLUGINS_USE_BUILDDIR" = "xyes"; then
+ GST_CACHE_DIR=`pwd`
+else
+ dnl ${localstatedir} points to PREFIX/var
+ GST_CACHE_DIR=${localstatedir}/cache/gstreamer
+fi
+AC_ARG_WITH(cachedir,
+AC_HELP_STRING([--with-cachedir],[specify path to use for plugin and command completion registries]),
+[case "${withval}" in
+ yes) AC_MSG_ERROR(bad value ${withval} for --with-cachedir) ;;
+ no) AC_MSG_ERROR(bad value ${withval} for --with-cachedir) ;;
+ *) GST_CACHE_DIR="${withval}" ;;
+esac],
+[:]) dnl Default value
+
+AS_AC_EXPAND(GST_CACHE_DIR, $GST_CACHE_DIR)
+AC_MSG_NOTICE(Using $GST_CACHE_DIR as registry cache dir)
+
+
dnl building of tests
AC_ARG_ENABLE(tests,
AC_HELP_STRING([--disable-tests],[disable building test apps]),
AC_DEFINE_UNQUOTED(GST_CONFIG_DIR, "$GST_CONFIG_DIR", [Define the configuration directory])
AC_SUBST(GST_CONFIG_DIR)
+dnl Set location of registry dir.
+AC_DEFINE_UNQUOTED(GST_CACHE_DIR, "$GST_CACHE_DIR", [Define the registry directory])
+AC_SUBST(GST_CACHE_DIR)
+
dnl Set location of plugin directory
if test "x${prefix}" = "xNONE"; then
PLUGINS_DIR=${ac_default_prefix}/lib/gst
* @data: a #GstData to unreference
*
* Decrements the refcount of this data. If the refcount is
- * zero, the data will be freeed.
+ * zero, the data will be freed.
+ *
+ * When you add data to a pipeline, the pipeline takes ownership of the
+ * data. When the data has been used by some plugin, it must unref()s it.
+ * Applications usually don't need to unref() anything.
*/
void
gst_data_unref (GstData *data)