+2008-04-11 Julien Moutte <julien@fluendo.com>
+
+ Mac OS X love...
+ * configure.ac: Merge platform specific defines, introduce a new
+ define on OS X to remember that forking when updating registry is
+ unsafe.
+ * docs/faq/gst-uninstalled: Updated to include gst-libs in the bad
+ module.
+ * gst/gst.c: Don't fork when updating registry if GST_HAVE_UNSAFE_FORK
+ is defined.
+ * gst/gstregistry.c: (gst_registry_scan_path_level): Fixed a bogus
+ condition that leads to absolutely no plugins being registered on
+ OS X.
+
2008-04-10 Tim-Philipp Müller <tim at centricular dot net>
Based on patch by: José Alburquerque <jaalburqu at svn dot gnome dot org>
fi
AC_SUBST(GST_HAVE_UNALIGNED_ACCESS_DEFINE)
-dnl check for extra platform specific plugin suffixes
+dnl check for platform specific settings
case $host_os in
- darwin* | rhapsody*)
+ rhapsody*)
AC_DEFINE_UNQUOTED(GST_EXTRA_MODULE_SUFFIX, [".dylib"], [Extra platform specific plugin suffix])
+ ;;
+ darwin*)
+ AC_DEFINE_UNQUOTED(GST_EXTRA_MODULE_SUFFIX, [".dylib"], [Extra platform specific plugin suffix])
+ AC_DEFINE_UNQUOTED(GST_HAVE_UNSAFE_FORK, 1, [Defined when registry scanning through fork is unsafe])
;;
+ cygwin* | mingw* | msvc* | mks*)
+ dnl HAVE_WIN32 currently means "disable POSIXisms".
+ AC_DEFINE_UNQUOTED(HAVE_WIN32, 1, [Defined if compiling for Windows])
+ ;;
*)
;;
esac
dnl affected plugins must include config.h
AC_SYS_LARGEFILE
-dnl HAVE_WIN32 currently means "disable POSIXisms".
-case "$host" in
- *-*-mingw*)
- AC_DEFINE_UNQUOTED(HAVE_WIN32, 1, [Defined if compiling for Windows])
- ;;
- *)
- ;;
-esac
-
dnl *** checks for programs ***
dnl find a compiler
LD_LIBRARY_PATH=$GST/prefix/lib${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
DYLD_LIBRARY_PATH=$GST/prefix/lib${DYLD_LIBRARY_PATH:+:$DYLD_LIBRARY_PATH}
+# GStreamer plugins bad libraries
+for path in app
+do
+ LD_LIBRARY_PATH=$GST/gst-plugins-bad/gst-libs/gst/$path/.libs:$LD_LIBRARY_PATH
+ DYLD_LIBRARY_PATH=$GST/gst-plugins-bad/gst-libs/gst/$path/.libs:$DYLD_LIBRARY_PATH
+done
+
+# GStreamer plugins base libraries
for path in audio cdda fft interfaces pbutils netbuffer riff rtp rtsp sdp tag utils video
do
LD_LIBRARY_PATH=$GST/gst-plugins-base/gst-libs/gst/$path/.libs:$LD_LIBRARY_PATH
DYLD_LIBRARY_PATH=$GST/gst-plugins-base/gst-libs/gst/$path/.libs:$DYLD_LIBRARY_PATH
done
+
+# GStreamer core libraries
for path in base net check controller dataprotocol
do
LD_LIBRARY_PATH=$GST/gstreamer/libs/gst/$path/.libs:$LD_LIBRARY_PATH
#endif
/* defaults */
-#ifdef HAVE_FORK
+#if defined(HAVE_FORK) && !defined(GST_HAVE_UNSAFE_FORK)
#define DEFAULT_FORK TRUE
#else
#define DEFAULT_FORK FALSE
}
if (!g_str_has_suffix (filename, G_MODULE_SUFFIX)
#ifdef GST_EXTRA_MODULE_SUFFIX
- || !g_str_has_suffix (filename, GST_EXTRA_MODULE_SUFFIX)
+ && !g_str_has_suffix (filename, GST_EXTRA_MODULE_SUFFIX)
#endif
) {
GST_LOG_OBJECT (registry,