one more fix
[platform/upstream/gstreamer.git] / configure.base
index 66ac035..09fd485 100644 (file)
@@ -10,7 +10,7 @@ AM_CONFIG_HEADER(config.h)
 
 GST_VERSION_MAJOR=0
 GST_VERSION_MINOR=2
-GST_VERSION_MICRO=0
+GST_VERSION_MICRO=1
 GST_VERSION=$GST_VERSION_MAJOR.$GST_VERSION_MINOR.$GST_VERSION_MICRO
 
 PACKAGE=gstreamer
@@ -42,16 +42,15 @@ AC_SUBST(GST_REVISION)
 AC_SUBST(GST_AGE)
 AC_SUBST(GST_LIBVERSION)
 
-
 AM_MAINTAINER_MODE
 
 AC_PROG_CC
+AM_PROG_CC_STDC
+dnl you need automake 1.5 for AM_PROG_AS to work !
+AM_PROG_AS
 AC_PROG_CXX
 AC_PROG_CXXCPP
 AC_ISC_POSIX
-SUBSTFOR configure.ac:AC_HEADER_STDC([])
-SUBSTFOR configure.in:AC_STDC_HEADERS
-AC_ARG_PROGRAM
 
 dnl We disable static building for development, for time savings
 dnl *NOTE*: dnl this line before release, so release does static too
@@ -59,7 +58,8 @@ AM_DISABLE_STATIC
 AC_LIBTOOL_DLOPEN
 AM_PROG_LIBTOOL
 
-CFLAGS=""
+SUBSTFOR configure.ac:AC_HEADER_STDC([])
+SUBSTFOR configure.in:AC_STDC_HEADERS
 
 dnl This is used for the -config script...
 builddir=`pwd`
@@ -83,6 +83,15 @@ else
   HAVE_NASM="yes"
 fi
 
+dnl fix pkg-config's broken default search path
+if test -z $PKG_CONFIG_PATH; then
+  PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/lib/pkgconfig
+fi
+export PKG_CONFIG_PATH
+
+dnl Check for pkgconfig
+AC_CHECK_PROG(HAVE_PKGCONFIG, pkg-config, true, false)
+
 dnl check for gtkdoc
 AC_CHECK_PROG(HAVE_GTK_DOC, gtkdoc-mkdb, true, false)
 AC_CHECK_PROG(HAVE_GTK_DOC, gtkdoc-scanobj, :, false)
@@ -139,6 +148,10 @@ case "x${target_cpu}" in
               AC_DEFINE(HAVE_CPU_ARM, 1, [Define if the target CPU is an ARM]) ;;
   xsparc*)    HAVE_CPU_SPARC=yes
               AC_DEFINE(HAVE_CPU_SPARC, 1, [Define if the target CPU is a PPC]) ;;
+  xmips*)     HAVE_CPU_MIPS=yes
+              AC_DEFINE(HAVE_CPU_MIPS, 1, [Define if the target CPU is a MIPS]) ;;
+  xhppa*)     HAVE_CPU_HPPA=yes
+              AC_DEFINE(HAVE_CPU_HPPA, 1, [Define if the target CPU is a HPPA]) ;;
 esac
 
 dnl Determine endianness
@@ -163,101 +176,118 @@ HAVE_LIBMMX="no"
 AC_MSG_RESULT(no)
 )
 
+dnl
+dnl We should really use AC_SYS_LARGEFILE, but the problem is
+dnl many of the plugins don't include "config.h".  To assure
+dnl binary compatibility, it is necessary that all gstreamer
+dnl code be compiled with the same sizeof(off_t), so we use
+dnl the following crude hack.
+dnl
 
+AC_MSG_CHECKING(for large file support)
+AC_TRY_RUN([
+#define _LARGEFILE_SOURCE
+#define _FILE_OFFSET_BITS 64
+#include <sys/types.h>
+int main () { return !(sizeof(off_t) == 8); }
+],
+[
+AC_MSG_RESULT(yes)
+GST_CFLAGS="$GST_CFLAGS -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
+],
+[
+AC_MSG_RESULT(no)
+],
+[
+AC_MSG_RESULT(no)
+])
 
 dnl Check for essential libraries first:
 dnl ====================================
 
+dnl Check for glib2
+GST_CHECK_FEATURE(GLIB2, [use of glib-2.0 and GObject], , [
+  PKG_CHECK_MODULES(GLIB2, glib-2.0 gobject-2.0 gthread-2.0 gmodule-2.0,
+    HAVE_GLIB2=yes,HAVE_GLIB2=no)
+  GLIB_LIBS=$GLIB2_LIBS
+  GLIB_CFLAGS=$GLIB2_CFLAGS
+  AC_SUBST(GLIB_LIBS)
+  AC_SUBST(GLIB_CFLAGS)
+], disabled, [
+  AC_DEFINE(USE_GLIB2)
+  GST_CFLAGS="$GST_CFLAGS -DUSE_GLIB2"
+])
+AC_SUBST(USE_GLIB2)
+
+if test x$USE_GLIB2 = xno; then
+  GST_PKG_DEPS="glib >= 1.2.0, gtk+ >= 1.2.0"
+  
+  dnl Check for glib and gtk
+  AM_PATH_GLIB(1.2.0,,
+              AC_MSG_ERROR(Cannot find glib: Is glib-config in path?),
+              glib gmodule gthread)
+  AM_PATH_GTK(1.2.0,,
+              AC_MSG_ERROR(Cannot find gtk: Is gtk-config in path?))
+  HAVE_GTK=yes
+
+  GLIB_LIBS="$GLIB_LIBS $GTK_LIBS"
+  GLIB_CFLAGS="$GLIB_CFLAGS $GTK_CFLAGS"
+else
+  GST_PKG_DEPS="glib-2.0 gobject-2.0 gmodule-2.0 gthread-2.0"
+  
+  PKG_CHECK_MODULES(GTK2, gtk+-2.0, HAVE_GTK=yes, HAVE_GTK=no)
 
-dnl Check for glib
-AM_PATH_GLIB(1.2.0,,
-            AC_MSG_ERROR(Cannot find glib: Is glib-config in path?),
-            glib gmodule gthread)
-dnl Put the glib flags into $LIBS and $CFLAGS since we always use them
-CORE_LIBS="$GLIB_LIBS"
-CORE_CFLAGS="$GLIB_CFLAGS"
-
+  GTK_FLAGS=$GTK2_CFLAGS
+  GTK_LIBS=$GTK2_LIBS
 
-dnl Check for gtk
-AM_PATH_GTK(1.2.0,,
-            AC_MSG_ERROR(Cannot find gtk: Is gtk-config in path?))
-dnl Put the gtk flags into $LIBS and $CFLAGS since we always use them
-CORE_LIBS="$CORE_LIBS $GTK_LIBS"
-CORE_CFLAGS="$CORE_CFLAGS $GTK_CFLAGS"
+  dnl FIXME: check for  gnome2 - this conditional is currently
+  dnl always false.
+  AM_CONDITIONAL(USE_GNOME2, test "x$USE_GNOME2" = "xyes")
+  AC_SUBST(USE_GNOME2)
+fi
 
+AC_SUBST(GST_PKG_DEPS)
+AC_SUBST(GTK_LIBS)
+AC_SUBST(GTK_CFLAGS)
 
 dnl Check for libxml
 AC_PATH_PROG(XML_CONFIG, xml-config, no)
 if test x$XML_CONFIG = xno; then
   AC_MSG_ERROR(Couldn't find xml-config)
 fi
-XML_LIBS=`xml-config --libs`
-XML_CFLAGS=`xml-config --cflags`
-AC_CHECK_LIB(xml, xmlDocGetRootElement, ,
+XML_LIBS="`xml-config --libs`"
+XML_CFLAGS="`xml-config --cflags`"
+AC_CHECK_LIB(xml, xmlDocGetRootElement, :,
   [ AC_MSG_ERROR(Need version 1.8.1 or better of libxml) ],
   $XML_LIBS)
 AC_SUBST(XML_LIBS)
 AC_SUBST(XML_CFLAGS)
-CORE_LIBS="$CORE_LIBS $XML_LIBS"
-CORE_CFLAGS="$CORE_CFLAGS $XML_CFLAGS"
-
 
-dnl Next, check for the optional libraries:
-dnl =======================================
 
+dnl ==========================================================================
+dnl ========================= Macro definitions ==============================
+dnl ==========================================================================
 
-dnl Check for libesd
-esd_save_LIBS=$LIBS
-esd_save_CFLAGS=$CFLAGS 
-AM_PATH_ESD(0.2.12, HAVE_LIBESD=yes, HAVE_LIBESD=no)
-LIBS=$esd_save_LIBS
-CFLAGS=$esd_save_CFLAGS
-AC_ARG_ENABLE(esdsink,
-[  --enable-esdsink          enable the building of the esdsink],
-[case "${enableval}" in
-       yes) : ;;
-       no) HAVE_LIBESD=no ;;
-       *) AC_MSG_ERROR(bad value ${enableval} for --enable-esdsink) ;;
-       esac],
-[HAVE_LIBESD=$HAVE_LIBESD])
-
-dnl Check for artsc
-AC_PATH_PROG(ARTSC_CONFIG, artsc-config, no)
-if test x$ARTSC_CONFIG = xno; then
-  AC_MSG_WARN(Couldn't find artsc-config)
-  ARTSC_LIBS=
-  ARTSC_CFLAGS=
-  HAVE_ARTSC=no
-else
-  ARTSC_LIBS=`artsc-config --libs`
-  ARTSC_CFLAGS=`artsc-config --cflags`
-  dnl AC_CHECK_HEADER uses CPPFLAGS, but not CFLAGS.
-  dnl Assume only suitable flags result from artsc-config --cflags
-  artsc_save_CPPFLAGS=$CPPFLAGS
-  CPPFLAGS="$CPPFLAGS $ARTSC_CFLAGS"
-  AC_CHECK_HEADER(artsc.h, HAVE_ARTSC=yes, HAVE_ARTSC=no)
-  CPPFLAGS=$artsc_save_CPPFLAGS
-fi
-AC_SUBST(ARTSC_LIBS)
-AC_SUBST(ARTSC_CFLAGS)
-AC_ARG_ENABLE(artsd,
-[  --enable-artsd            enable the building of artsd plugins],
-[case "${enableval}" in
-       yes) : ;;
-       no) HAVE_ARTSC=no ;;
-       *) AC_MSG_ERROR(bad value ${enableval} for --enable-artsd) ;;
-       esac],
-[:])
-
-
-dnl Check for arts
-AC_MSG_CHECKING(arts library)
+dnl These macros should be moved out to separate files (acinclude.m4?), but
+dnl can't currently be because of the SUBSTFOR magic.
 
+dnl Perform a check for existence of ARTS
+dnl Richard Boulton <richard-alsa@tartarus.org>
+dnl Last modification: 26/06/2001
+dnl GST_CHECK_FEATURE(FEATURE-NAME, FEATURE-DESCRIPTION,
+dnl                   DEPENDENT-PLUGINS, TEST-FOR-FEATURE)
+dnl
+dnl This check was written for GStreamer: it should be renamed and checked
+dnl for portability if you decide to use it elsewhere.
+dnl
+AC_DEFUN(GST_CHECK_ARTS,
+[
 dnl Set the flags
 ARTS_LIBS="-L/usr/local/lib -L/usr/lib -lmcop -lartsflow -lartsflow_idl"
 ARTS_CFLAGS="-I/usr/local/include/arts -I/usr/include/kde/arts -I/usr/include/arts"
 ARTS_MCOPFLAGS=$ARTS_CFLAGS
 dnl There's no arts-config script, so we make a guess based on the artsc-config
+AC_PATH_PROG(ARTSC_CONFIG, artsc-config, no)
 if test x$ARTSC_CONFIG = xyes; then
   ARTS_ARTSC_CFLAGS=`artsc-config --cflags | sed 's/artsc/arts/g'`
   ARTS_CFLAGS="$ARTS_CFLAGS $ARTS_ARTSC_CFLAGS"
@@ -266,6 +296,7 @@ fi
 AC_SUBST(ARTS_LIBS)
 AC_SUBST(ARTS_CFLAGS)
 AC_SUBST(ARTS_MCOPFLAGS)
+
 dnl Now check if it exists
 SUBSTFOR configure.ac:AC_LANG_PUSH(C++)
 SUBSTFOR configure.in:AC_LANG_SAVE
@@ -275,11 +306,8 @@ dnl FIXME: Can't get this test to pass, so commented it out.  Rely on header che
 dnl AC_CHECK_LIB(artsflow, convert_stereo_2float_i16le, :, HAVE_ARTS=no, $LIBS)
 
 dnl AC_CHECK_HEADER uses CPPFLAGS, but not CFLAGS.
-dnl Assume only suitable flags result from artsc-config --cflags
-arts_save_CPPFLAGS=$CPPFLAGS
-CPPFLAGS="$CPPFLAGS $ARTS_CFLAGS"
+dnl FIXME: ensure only suitable flags result from artsc-config --cflags
 AC_CHECK_HEADER(artsflow.h, :, HAVE_ARTS=no)
-CPPFLAGS=$arts_save_CPPFLAGS
 
 SUBSTFOR configure.ac:AC_LANG_POP(C++)
 SUBSTFOR configure.in:AC_LANG_RESTORE
@@ -288,141 +316,128 @@ AC_CHECK_PROG(HAVE_MCOPIDL, mcopidl, yes, no)
 if test x$HAVE_MCOPIDL = xno; then
   HAVE_ARTS=no
 fi
+])
 
+dnl ==========================================================================
+dnl ========================= End macro definitions ==========================
+dnl ==========================================================================
 
-dnl AM_PATH_XMMS(0.1.0, HAVE_LIBXMMS=yes, HAVE_LIBXMMS=no)
 
+dnl Next, check for the optional libraries:
+dnl =======================================
 
-dnl Check for libasound
-alsa_save_LIBS=$LIBS
-alsa_save_CFLAGS=$CFLAGS
-AM_PATH_ALSA(0.5.0,
-  HAVE_LIBASOUND=yes,
-  HAVE_LIBASOUND=no
-  AC_MSG_WARN(
-***** NOTE: These plugins won't be built: gstalsa
-))
-if test x$HAVE_LIBASOUND = xyes;then
-  AM_PATH_ALSA(0.9.0,
-    HAVE_LIBASOUND=no
-    AC_MSG_WARN(Alsa 0.9.x not yet supported.
-***** NOTE: These plugins won't be built: gstalsa
-)
-    ,:)
-fi
 
-LIBS=$alsa_save_LIBS
-CFLAGS=$alsa_save_CFLAGS
-AC_ARG_ENABLE(alsasink,
-[  --enable-alsasink          enable the building of the alsasink],
-[case "${enableval}" in
-        yes) HAVE_LIBASOUND=$HAVE_LIBASOUND ;;
-        no) HAVE_LIBASOUND=no ;;
-        *) AC_MSG_ERROR(bad value ${enableval} for --enable-alsasink) ;;
-esac],
-[HAVE_LIBASOUND=$HAVE_LIBASOUND])
+dnl ***** ESound *****
+GST_CHECK_FEATURE(LIBESD, [esound plugins], esdsrc esdsink, [
+  AM_PATH_ESD(0.2.12, HAVE_LIBESD=yes, HAVE_LIBESD=no)
+])
 
+dnl Check for artsc
+GST_CHECK_FEATURE(ARTSC, [artsd plugins], artsdsink, [GST_CHECK_ARTSC()])
 
-dnl Check for libaudiofile
-AC_PATH_PROG(AUDIOFILE_CONFIG, audiofile-config, no)
-if test x$AUDIOFILE_CONFIG = xno; then
-  AC_MSG_WARN(Couldn't find audiofile-config: can't build afsink)
-  AUDIOFILE_LIBS=
-  HAVE_LIBAUDIOFILE=no
-else
-  AUDIOFILE_LIBS=`audiofile-config --libs`
-  HAVE_LIBAUDIOFILE=yes
+dnl Check for artsc
+GST_CHECK_FEATURE(ARTS, [arts plugins], arts, [GST_CHECK_ARTS()])
+
+dnl Check for xmms
+GST_CHECK_FEATURE(LIBXMMS, [xmms plugin], xmms, [
+  AM_PATH_XMMS(0.1.0, HAVE_LIBXMMS=yes, HAVE_LIBXMMS=no)
+], disabled)
+
+dnl Check for alsa
+GST_CHECK_FEATURE(ALSA, [alsa plugins], gstalsa, [
+  AM_PATH_ALSA(0.9.0, HAVE_ALSA=yes, HAVE_ALSA=no)
+])
+if test x$HAVE_ALSA = xno; then
+  unset USE_ALSA
+  ALSA_CFLAGS=
+  ALSA_LIBS=
 fi
-AC_SUBST(AUDIOFILE_LIBS)
 
+dnl Check for libaudiofile
+GST_CHECK_FEATURE(LIBAUDIOFILE, [use gdk pixbuf], afsink afsrc, [
+  GST_CHECK_CONFIGPROG(LIBAUDIOFILE, audiofile-config)
+])
 
 dnl Check for libgdk-pixbuf
-AC_PATH_PROG(GDK_PIXBUF_CONFIG, gdk-pixbuf-config, no)
-if test x$GDK_PIXBUF_CONFIG = xno; then
-  AC_MSG_WARN(Couldn't find gdk-pixbuf-config)
-  GDK_PIXBUF_LIBS=
-  GDK_PIXBUF_CFLAGS=
-  HAVE_GDK_PIXBUF=no
-else
-  GDK_PIXBUF_LIBS=`gdk-pixbuf-config --libs`
-  GDK_PIXBUF_CFLAGS=`gdk-pixbuf-config --cflags`
-  HAVE_GDK_PIXBUF=yes
-fi
-AC_SUBST(GDK_PIXBUF_LIBS)
-AC_SUBST(GDK_PIXBUF_CFLAGS)
+dnl FIXME: not sure that this is still used anywhere.
+GST_CHECK_FEATURE(GDK_PIXBUF, [use gdk pixbuf], , [
+  GST_CHECK_CONFIGPROG(GDK_PIXBUF, gdk-pixbuf-config)
+])
 
-
-dnl Check for libgnome
-AC_PATH_PROG(GNOME_CONFIG, gnome-config, no)
-if test x$GNOME_CONFIG = xno; then
-  AC_MSG_WARN(Couldn't find gnome-config: can't build editor or gstplay)
+if test x$USE_GLIB2 = xyes; then
+  dnl we don't support gnome/gtk with glib2.0 yet
   GNOME_LIBS=
   GNOME_CFLAGS=
   HAVE_GNOME=no
+  AC_MSG_WARN(gnome disabled for glib2.0)
 else
-  GNOME_LIBS=`gnome-config --libs gnome gnomeui`
-  GNOME_CFLAGS=`gnome-config --cflags gnome gnomeui`
-  GHTTP_LIBS=`gnome-config --libs gnome gnomeui`
-  GHTTP_CFLAGS=`gnome-config --cflags gnome gnomeui`
-  HAVE_GNOME=yes
+  dnl Check for libgnome
+  GST_CHECK_CONFIGPROG(GNOME, gnome-config, gnome gnomeui)
 fi
-AC_SUBST(GNOME_LIBS)
-AC_SUBST(GNOME_CFLAGS)
-AC_SUBST(GHTTP_LIBS)
 
 dnl Check for libghttp
-dnl FIXME: need to check for header
-AC_CHECK_LIB(ghttp, ghttp_request_new,
-  [GHTTP_LIBS="-lghttp"
-   GST_HTTPSRC_GET_TYPE="gst_httpsrc_get_type"
-   HAVE_LIBGHTTP=yes
-  ],
-  [AC_MSG_WARN(Cannot find libghttp: can't build gsthttpsrc)
-   GHTTP_LIBS=
-   GST_HTTPSRC_GET_TYPE=
-   HAVE_LIBGHTTP=no
-  ],
-  $LIBS)
-AC_SUBST(GST_HTTPSRC_GET_TYPE)
+GST_CHECK_FEATURE(LIBGHTTP, [libghttp plugins], gsthttpsrc, [
+  dnl FIXME: need to check for header
+  GHTTP_LIBS=
+  GST_HTTPSRC_GET_TYPE=
+  if test x$USE_GLIB2 = xyes; then
+    AC_MSG_WARN(ghttp disabled for glib2.0)
+  else
+    AC_CHECK_LIB(ghttp, ghttp_request_new,
+      [GHTTP_LIBS="-lghttp"
+       GST_HTTPSRC_GET_TYPE="gst_httpsrc_get_type"
+       HAVE_LIBGHTTP=yes
+      ], :, $LIBS)
+  fi
+  AC_SUBST(GHTTP_LIBS)
+  AC_SUBST(GST_HTTPSRC_GET_TYPE)
+])
 
 dnl Check for libglade
 HAVE_LIBGLADE_GNOME="no"
-AC_PATH_PROG(LIBGLADE_CONFIG_PATH, libglade-config, no)
-if test x$LIBGLADE_CONFIG_PATH = xno; then
-  AC_MSG_WARN(Couldn't find libglade-config - Can't build gstplay)
+if test x$USE_GLIB2 = xyes; then
+  dnl no glade for glib2.0
   LIBGLADE_GNOME_LIBS=
   LIBGLADE_GNOME_CFLAGS=
+  AC_MSG_WARN(libglade disabled for glib2.0)
 else
-  LIBGLADE_GNOME_LIBS=`libglade-config --libs gnome`
-  LIBGLADE_GNOME_CFLAGS=`libglade-config --cflags gnome`
-  libglade_save_CFLAGS="$CFLAGS"
-  libglade_save_LIBS="$LIBS"
-  CFLAGS="$CFLAGS $LIBGLADE_GNOME_CFLAGS $GTK_CFLAGS"
-  LIBS="$LIBS $LIBGLADE_GNOME_LIBS $GTK_LIBS"
-  AC_TRY_LINK([#include <glade/glade.h>],[glade_gnome_init();],
-             HAVE_LIBGLADE_GNOME="yes",
-             AC_MSG_WARN(
+  AC_PATH_PROG(LIBGLADE_CONFIG_PATH, libglade-config, no)
+  if test x$LIBGLADE_CONFIG_PATH = xno; then
+    AC_MSG_WARN(Couldn't find libglade-config - Can't build gstplay)
+    LIBGLADE_GNOME_LIBS=
+    LIBGLADE_GNOME_CFLAGS=
+  else
+    LIBGLADE_GNOME_LIBS=`libglade-config --libs gnome`
+    LIBGLADE_GNOME_CFLAGS=`libglade-config --cflags gnome`
+    AC_TRY_LINK([#include <glade/glade.h>],[glade_gnome_init();],
+               HAVE_LIBGLADE_GNOME="yes",
+               AC_MSG_WARN(
       [Couldn't find gnome libraries for libglade - Can't build gstmediaplay and gsteditor])
             )
-  CFLAGS="$libglade_save_CFLAGS"
-  LIBS="$libglade_save_LIBS"
+  fi
 fi
 AC_SUBST(LIBGLADE_GNOME_LIBS)
 AC_SUBST(LIBGLADE_GNOME_CFLAGS)
 
 dnl Check for Gnome VFS
 HAVE_GNOME_VFS="no"
-AC_MSG_CHECKING(for Gnome VFS)
-if gnome-config --libs vfs > /dev/null 2>&1; then
+if test x$USE_GLIB2 = xyes; then
+  VFS_LIBS=
+  VFS_CFLAGS=
+  AC_MSG_WARN(Gnome-VFS disabled for glib2.0)
+else
+  AC_MSG_CHECKING(for Gnome VFS)
+  if gnome-config --libs vfs > /dev/null 2>&1; then
        HAVE_GNOME_VFS="yes"
        AC_MSG_RESULT(found)
-else
+        VFS_LIBS="`gnome-config --libs vfs`"
+        VFS_CFLAGS="`gnome-config --cflags vfs`"
+  else
        AC_MSG_WARN(Did not find Gnome-VFS installed)
+        VFS_LIBS=
+        VFS_CFLAGS=
+  fi
 fi
-
-VFS_LIBS="`gnome-config --libs vfs`"
-VFS_CFLAGS="`gnome-config --cflags vfs`"
-
 AC_SUBST(VFS_LIBS)
 AC_SUBST(VFS_CFLAGS)
 
@@ -430,15 +445,13 @@ dnl Check for Avifile
 HAVE_AVIFILE="no"
 AC_MSG_CHECKING(for Avifile)
 if avifile-config --libs > /dev/null 2>&1; then
-       HAVE_AVIFILE="yes"
-       AC_MSG_RESULT(found)
+        HAVE_AVIFILE="yes"
+        AC_MSG_RESULT(found)
 else
-       AC_MSG_WARN(Did not find Avifile installed)
+        AC_MSG_WARN(Did not find Avifile installed)
 fi
-
 AVIFILE_LIBS="`avifile-config --libs`"
 AVIFILE_CFLAGS="`avifile-config --cflags`"
-
 AC_SUBST(AVIFILE_LIBS)
 AC_SUBST(AVIFILE_CFLAGS)
 
@@ -511,6 +524,18 @@ AC_CHECK_LIB(mad, mad_decoder_finish,
   HAVE_LIBMAD=no,
 )
 
+dnl Check for libmikmod
+AC_MSG_CHECKING(Mikmod library)
+AC_CHECK_LIB(mikmod, MikMod_Init,
+  HAVE_LIBMIKMOD=yes
+  AC_DEFINE(HAVE_LIBMIKMOD, 1, [Define if libmikmod is available]),
+  AC_MSG_WARN(
+***** NOTE: These plugins won't be built: mikmod
+)
+  HAVE_LIBMIKMOD=no,
+)
+
+
 dnl Check for libvorbis
 AC_MSG_CHECKING(Vorbis library)
 AC_CHECK_LIB(vorbis, ogg_sync_init,
@@ -557,7 +582,7 @@ AC_CHECK_HEADER(gsm.h, :,
 AC_SUBST(GSM_CFLAGS)
 AC_SUBST(GSM_LIBS)
 
-if test "x$HAVE_LIBGSM" == "xyes"; then
+if test "x$HAVE_LIBGSM" = "xyes"; then
   AC_DEFINE(HAVE_LIBGSM, 1, [Define if GSM library is available])
 else
   AC_MSG_WARN(
@@ -575,7 +600,7 @@ AC_CHECK_HEADER(cdda_paranoia.h, :, HAVE_CDPARANOIA=no)
 
 dnl Check for liblame
 AC_MSG_CHECKING(LAME library)
-AC_CHECK_LIB(mp3lame, lame_init, HAVE_LIBLAME=yes, HAVE_LIBLAME=no, )
+AC_CHECK_LIB(mp3lame, lame_init, HAVE_LIBLAME=yes, HAVE_LIBLAME=no, -lm)
 AC_CHECK_HEADER(lame/lame.h, :, HAVE_LIBLAME=no)
 
 dnl Check for libshout
@@ -588,6 +613,21 @@ AC_MSG_CHECKING(mpeg2dec library)
 AC_CHECK_LIB(mpeg2, mpeg2_init, HAVE_MPEG2DEC=yes, HAVE_MPEG2DEC=no, )
 AC_CHECK_HEADER(mpeg2dec/mpeg2.h, :, HAVE_MPEG2DEC=no)
 
+dnl Check for a52dec
+AC_MSG_CHECKING(a52dec library)
+AC_CHECK_LIB(a52, a52_init, HAVE_A52DEC=yes, HAVE_A52DEC=no, -lm)
+AC_CHECK_HEADER(a52dec/a52.h, :, HAVE_A52DEC=no)
+
+dnl Check for sidplay
+AC_PATH_LIBSIDPLAY
+
+dnl Check for FLAC
+dnl thomas : checking for compile with main instead of actual function,
+dnl since that made autoconf break (for version 2.13)
+AC_MSG_CHECKING(FLAC library)
+AC_CHECK_LIB(FLAC, main, HAVE_FLACLIB=yes, HAVE_FLACLIB=no, -lm)
+AC_CHECK_HEADER(FLAC/all.h, :, HAVE_FLACLIB=no)
+
 dnl Check for librtp
 AC_MSG_CHECKING(rtp library)
 AC_CHECK_LIB(rtp, rtp_packet_new_take_data, HAVE_LIBRTP=yes, HAVE_LIBRTP=no, $GLIB_LIBS $GLIB_CFLAGS)
@@ -603,7 +643,10 @@ AC_CHECK_HEADER(libraw1394/raw1394.h, :, HAVE_RAW1394=no)
 dnl Check for libdv
 AC_MSG_CHECKING(libdv)
 AC_CHECK_LIB(dv, dv_init, HAVE_LIBDV=yes, HAVE_LIBDV=no, -lm $GLIB_LIBS $GLIB_CFLAGS)
+libdvcheck_save_CPPFLAGS="$CPPFLAGS"
+CPPFLAGS="$CPPFLAGS $GLIB_CFLAGS"
 AC_CHECK_HEADER(libdv/dv.h, :, HAVE_LIBDV=no)
+CPPFLAGS="$libdvcheck_save_CPPFLAGS"
 
 dnl Check for aalib
 AC_MSG_CHECKING(aalib)
@@ -615,45 +658,15 @@ AC_MSG_CHECKING(openquicktime)
 AC_CHECK_LIB(openquicktime, quicktime_init, HAVE_LIBOPENQUICKTIME=yes, HAVE_LIBOPENQUICKTIME=no, )
 AC_CHECK_HEADER(openquicktime/openquicktime.h, :, HAVE_LIBOPENQUICKTIME=no)
 
-
-dnl check if css-auth.c exists (FIXME)
-AC_MSG_CHECKING(DVD CSS code)
-if test -f plugins/dvdsrc/css-auth.c
-then
-  AC_MSG_RESULT(yes)
-  HAVE_CSSAUTH="yes"
-else
-  AC_MSG_RESULT(no)
-  HAVE_CSSAUTH="no"
-fi
+dnl Check for libdvdread
+AC_MSG_CHECKING(libdvdread)
+AC_CHECK_LIB(dvdread, DVDOpen, HAVE_LIBDVDREAD=yes, HAVE_LIBDVDREAD=no, )
+AC_CHECK_HEADER(dvdread/dvd_reader.h, :, HAVE_LIBDVDREAD=no)
 
 dnl Check for SDL library
-AC_MSG_CHECKING(SDL library)
-HAVE_LIBSDL=yes
-if sdl-config --libs > /dev/null 2>&1; then
-  SDL_VERSION=`sdl-config --version`
-  AC_MSG_RESULT([found (version $SDL_VERSION)])
-  SDL_LIBS="`sdl-config --libs`"
-  SDL_CFLAGS="`sdl-config --cflags`"
-  AC_CHECK_LIB(SDL, SDL_Init, :, HAVE_LIBSDL=no, $SDL_LIBS)
-  dnl FIXME: CPPFLAGS should be set from SDL_CFLAGS for the next check
-  dnl AC_CHECK_HEADER uses CPPFLAGS, but not CFLAGS.
-  dnl Assume only suitable flags result from artsc-config --cflags
-  CPPFLAGS="$sdlcheck_save_CPPFLAGS"
-  CPPFLAGS="$CPPFLAGS $SDL_CFLAGS"
-  AC_CHECK_HEADER(SDL.h, :, HAVE_LIBSDL=no)
-  sdlcheck_save_CPPFLAGS="$CPPFLAGS"
-  AC_CHECK_LIB(SDL, SDL_CreateYUVOverlay, :, HAVE_LIBSDL=no, $SDL_LIBS)
-else
-  AC_MSG_RESULT(not found)
-  HAVE_LIBSDL=no
-  SDL_LIBS=
-  SDL_CFLAGS=
-fi
-AC_SUBST(SDL_LIBS)
-AC_SUBST(SDL_CFLAGS)
+AM_PATH_SDL( , , HAVE_LIBSDL=no)
 
-if test "x$HAVE_LIBSDL" == "xno"; then
+if test "x$HAVE_LIBSDL" = "xno"; then
   AC_MSG_WARN(
 ***** NOTE: These plugins won't be built: sdlvideosink
 )
@@ -675,24 +688,6 @@ dnl ######################################################################
 dnl # Check command line parameters, and set shell variables accordingly #
 dnl ######################################################################
 
-AC_ARG_ENABLE(gdk-pixbuf,
-[  --enable-gdk-pixbuf          use gdk pixbuf, if available],
-[case "${enableval}" in
-  yes) USE_GDK_PIXBUF=$HAVE_GDK_PIXBUF ;;
-  no)  USE_GDK_PIXBUF=no ;;
-  *) AC_MSG_ERROR(bad value ${enableval} for --enable-gdk-pixbuf) ;;
-esac], 
-[USE_GDK_PIXBUF=$HAVE_GDK_PIXBUF]) dnl Default value
-
-AC_ARG_ENABLE(libghttp,
-[  --enable-libghttp            use the ghttp library, if available],
-[case "${enableval}" in
-  yes) USE_LIBGHTTP=$HAVE_LIBGHTTP ;;
-  no)  USE_LIBGHTTP=no ;;
-  *) AC_MSG_ERROR(bad value ${enableval} for --enable-libghttp) ;;
-esac], 
-[USE_LIBGHTTP=$HAVE_LIBGHTTP]) dnl Default value
-
 AC_ARG_ENABLE(libmmx,
 [  --enable-libmmx              use libmmx, if available],
 [case "${enableval}" in
@@ -712,14 +707,14 @@ AC_ARG_ENABLE(atomic,
 esac], 
 [USE_ATOMIC_H=$HAVE_ATOMIC_H]) dnl Default value
 
-AC_ARG_ENABLE(plugin-srcdir,
-[  --enable-plugin-srcdir       allow tests/demos to use non-installed plugins ],
+AC_ARG_ENABLE(plugin-builddir,
+[  --enable-plugin-builddir     allow tests/demos to use non-installed plugins ],
 [case "${enableval}" in
-  yes) PLUGINS_USE_SRCDIR=yes ;;
-  no)  PLUGINS_USE_SRCDIR=no ;;
-  *) AC_MSG_ERROR(bad value ${enableval} for --enable-plugin-srcdir) ;;
+  yes) PLUGINS_USE_BUILDDIR=yes ;;
+  no)  PLUGINS_USE_BUILDDIR=no ;;
+  *) AC_MSG_ERROR(bad value ${enableval} for --enable-plugin-builddir) ;;
 esac], 
-[PLUGINS_USE_SRCDIR=no]) dnl Default value
+[PLUGINS_USE_BUILDDIR=no]) dnl Default value
 
 AC_ARG_ENABLE(debug,
 [  --enable-debug               compile with -g debugging info],
@@ -730,41 +725,41 @@ AC_ARG_ENABLE(debug,
 esac], 
 [USE_DEBUG=no]) dnl Default value
 
-AC_ARG_ENABLE(debug-verbose,
-[  --enable-debug-verbose       spews lots of useless debugging info at runtime],
-[case "${enableval}" in
-  yes) USE_DEBUG_VERBOSE=yes ;;
-  no)  USE_DEBUG_VERBOSE=no ;;
-  *) AC_MSG_ERROR(bad value ${enableval} for --enable-debug-verbose) ;;
-esac], 
-[USE_DEBUG_VERBOSE=no]) dnl Default value
-
-AC_ARG_ENABLE(info,
-[  --enable-info                turns verbose info at runtime on by default],
+AC_ARG_ENABLE(DEBUG,
+[  --enable-DEBUG               compiles in a large number of debugging messages],
 [case "${enableval}" in
-  yes) USE_DEBUG_INFO_VERBOSE=yes ;;
-  no)  USE_DEBUG_INFO_VERBOSE=no ;;
-  *) AC_MSG_ERROR(bad value ${enableval} for --enable-info) ;;
+  yes) ENABLE_DEBUG=yes ;;
+  no)  ENABLE_DEBUG=no ;;
+  *) AC_MSG_ERROR(bad value ${enableval} for --enable-DEBUG) ;;
 esac], 
-[USE_DEBUG_INFO_VERBOSE=no]) dnl Default value
+[ENABLE_DEBUG=no]) dnl Default value
+if test x$ENABLE_DEBUG = xyes; then
+  AC_DEFINE(GST_DEBUG_ENABLED, 1, [Define if DEBUG statements should be compiled in])
+fi
 
-AC_ARG_ENABLE(info-system,
-[  --disable-info-system        entirely disables the info debugging system],
+AC_ARG_ENABLE(INFO,
+[  --disable-INFO               disables compilation of informational messages],
 [case "${enableval}" in
-  yes) DISABLE_DEBUG_INFO=no ;;
-  no)  DISABLE_DEBUG_INFO=yes ;;
-  *) AC_MSG_ERROR(bad value ${enableval} for --disable-info) ;;
+  yes) ENABLE_INFO=yes ;;
+  no)  ENABLE_INFO=no ;;
+  *) AC_MSG_ERROR(bad value ${enableval} for --enable-INFO) ;;
 esac], 
-[DISABLE_DEBUG_INFO=no]) dnl Default value
+[ENABLE_INFO=yes]) dnl Default value
+if test x$ENABLE_INFO = xyes; then
+  AC_DEFINE(GST_INFO_ENABLED, 1, [Define if INFO statements should be compiled in])
+fi
 
 AC_ARG_ENABLE(debug-color,
 [  --disable-debug-color        disables color output of DEBUG and INFO output],
 [case "${enableval}" in
-  yes) DISABLE_DEBUG_COLOR=no ;;
-  no)  DISABLE_DEBUG_COLOR=yes ;;
-  *) AC_MSG_ERROR(bad value ${enableval} for --disable-info) ;;
+  yes) ENABLE_DEBUG_COLOR=yes ;;
+  no)  ENABLE_DEBUG_COLOR=no ;;
+  *) AC_MSG_ERROR(bad value ${enableval} for --enable-debug-color) ;;
 esac], 
-[DISABLE_DEBUG_COLOR=no]) dnl Default value
+[ENABLE_DEBUG_COLOR=yes]) dnl Default value
+if test "x$ENABLE_DEBUG_COLOR" = xyes; then
+  AC_DEFINE(GST_DEBUG_COLOR, 1, [Define if debugging messages should be colorized])
+fi
 
 AC_ARG_ENABLE(profiling,
 [  --enable-profiling           adds -pg to compiler commandline, for profiling],
@@ -775,8 +770,12 @@ AC_ARG_ENABLE(profiling,
 esac], 
 [USE_PROFILING=no]) dnl Default value
 
-dnl Default value
-GST_CONFIG_DIR="/etc/gstreamer"
+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=$builddir
+else
+  GST_CONFIG_DIR=/etc/gstreamer
+fi
 AC_ARG_WITH(configdir,
 [  --with-configdir             specify path to use for configdir],
 [case "${withval}" in
@@ -834,6 +833,40 @@ AC_ARG_ENABLE(examples,
 esac], 
 [BUILD_EXAMPLES=yes]) dnl Default value
 
+dnl Next, check for the optional components:
+dnl ========================================
+
+
+AC_DEFUN(GST_SUBSYSTEM_DISABLE,
+[dnl
+dnl Add a subsystem --disable flag and all the necessary symbols and substitions
+dnl
+AC_ARG_ENABLE(translit([$1], A-Z, a-z), 
+[  ]builtin(format, --disable-%-17s  disable %s, translit([$1], A-Z, a-z), $2),
+[ case "${enableval}" in
+    yes) GST_DISABLE_[$1]=no ;;
+    no) GST_DISABLE_[$1]=yes ;;
+    *) AC_MSG_ERROR(bad value ${enableval} for --enable-translit([$1], A-Z, a-z)) ;;
+  esac],
+[GST_DISABLE_[$1]=no]) dnl Default value
+if test x$GST_DISABLE_[$1] = xyes; then
+  AC_DEFINE(GST_DISABLE_[$1], 1, [Disable $2])
+  GST_DISABLE_[$1]_DEFINE=-DGST_DISABLE_[$1]
+fi
+AM_CONDITIONAL(GST_DISABLE_[$1], test x$GST_DISABLE_[$1] = xyes)
+AC_SUBST(GST_DISABLE_[$1]_DEFINE)
+GST_SUBSYSTEM_DISABLE_DEFINES="$GST_SUBSYTEM_DISABLE_DEFINES $GST_DISABLE_[$1]_DEFINE"
+])
+
+GST_SUBSYSTEM_DISABLE(LOADSAVE,[pipeline XML load/save])
+GST_SUBSYSTEM_DISABLE(TYPEFIND,[typefind plugin],)
+GST_SUBSYSTEM_DISABLE(AUTOPLUG,[autoplugger subsystem])
+GST_SUBSYSTEM_DISABLE(PARSE,[command-line parser])
+GST_SUBSYSTEM_DISABLE(TRACE,[tracing subsystem])
+GST_SUBSYSTEM_DISABLE(REGISTRY,[plugin registry])
+
+GST_CFLAGS="$GST_CFLAGS $GST_SUBSYSTEM_DISABLE_DEFINES"
+
 
 dnl ################################################
 dnl # Set defines according to variables set above #
@@ -842,10 +875,6 @@ dnl ################################################
 
 dnl These should be "USE_*" instead of "HAVE_*", but some packages expect
 dnl HAVE_ and it is likely to be easier to stick with the old name
-if test "x$USE_GDK_PIXBUF" = xyes; then
-  AC_DEFINE(HAVE_GDK_PIXBUF, 1, [Define if GDK pixbuf library is available])
-fi
-
 if test "x$USE_LIBGHTTP" = xyes; then
   AC_DEFINE(HAVE_LIBGHTTP, 1, [Define if ghttp library is available])
 fi
@@ -858,36 +887,25 @@ if test "x$USE_ATOMIC_H" = xyes; then
   AC_DEFINE(HAVE_ATOMIC_H, 1, [Define if atomic.h header file is available])
 fi
 
-if test "x$PLUGINS_USE_SRCDIR" = xyes; then
-  AC_DEFINE(PLUGINS_USE_SRCDIR, 1, [Define if plugins should be loaded from the build tree - only developers should use this])
-fi
-
-if test "x$USE_DEBUG" = xyes; then
-  CFLAGS="$CFLAGS -g"
+if test "x$PLUGINS_USE_BUILDDIR" = xyes; then
+  AC_DEFINE(PLUGINS_USE_BUILDDIR, 1, [Define if plugins should be loaded from the build tree - only developers should use this])
 fi
 
-if test "x$USE_DEBUG_VERBOSE" = xyes; then
-  AC_DEFINE(GST_DEBUG_ENABLED, 1, [Define if code to assist debugging should be compiled in])
-fi
-
-if test "x$DISABLE_DEBUG_INFO" = xno; then
-  AC_DEFINE(GST_INFO_ENABLED, 1, [Define if code to produce informative messages should be compiled])
-  if test "x$USE_DEBUG_INFO_VERBOSE" = xyes; then
-    AC_DEFINE(GST_INFO_ENABLED_VERBOSE, 1, [Define if default should be to display all informative messages])
-  fi
-fi
-
-if test "x$DISABLE_DEBUG_COLOR" = xno; then
-  AC_DEFINE(GST_DEBUG_COLOR, 1, [Define if debugging messages should be colorised])
-fi
+dnl if test "x$USE_DEBUG" = xyes; then
+dnl   CFLAGS="$CFLAGS -g"
+dnl fi
 
 if test "x$USE_PROFILING" = xyes; then
-  CFLAGS="$CFLAGS -pg"
+dnl  CFLAGS="$CFLAGS -pg -fprofile-arcs"
   FOMIT_FRAME_POINTER=""
 else
   FOMIT_FRAME_POINTER="-fomit-frame-pointer"
 fi
 
+dnl
+dnl AC_SUBST(FOMIT_FRAME_POINTER)
+dnl
+
 if test "x$HAVE_LIBXV" = xyes; then
   AC_DEFINE(HAVE_LIBXV)
 fi
@@ -904,6 +922,10 @@ if test "x$HAVE_LIBMAD" = xyes; then
   AC_DEFINE(HAVE_LIBMAD)
 fi
 
+if test "x$HAVE_LIBMIKMOD" = xyes; then
+  AC_DEFINE(HAVE_LIBMIKMOD)
+fi
+
 if test "x$HAVE_VORBIS" = xyes; then
   AC_DEFINE(HAVE_VORBIS)
 fi
@@ -920,8 +942,8 @@ if test "x$HAVE_LIBHERMES" = "xyes"; then
   AC_DEFINE(HAVE_LIBHERMES)
 fi
 
-if test "x$HAVE_CSSAUTH" = xyes; then
-  AC_DEFINE(HAVE_CSSAUTH)
+if test "x$HAVE_LIBDVDREAD" = xyes; then
+  AC_DEFINE(HAVE_LIBDVDREAD)
 fi
 
 if test "x$HAVE_LINUX_CDROM" = xyes; then
@@ -936,8 +958,12 @@ if test "x$HAVE_MPEG2DEC" = xyes; then
   AC_DEFINE(HAVE_MPEG2DEC)
 fi
 
-if test "x$HAVE_LIBAUDIOFILE" = xyes; then
-  AC_DEFINE(HAVE_LIBAUDIOFILE)
+if test "x$HAVE_A52DEC" = xyes; then
+  AC_DEFINE(HAVE_A52DEC)
+fi
+
+if test "x$HAVE_FLACLIB" = xyes; then
+  AC_DEFINE(HAVE_FLACLIB)
 fi
 
 if test "x$HAVE_LIBGSM" = xyes; then
@@ -955,17 +981,15 @@ AM_CONDITIONAL(HAVE_CPU_PPC,        test "x$HAVE_CPU_PPC" = "xyes")
 AM_CONDITIONAL(HAVE_CPU_ALPHA,      test "x$HAVE_CPU_ALPHA" = "xyes")
 AM_CONDITIONAL(HAVE_CPU_ARM,        test "x$HAVE_CPU_ARM" = "xyes")
 AM_CONDITIONAL(HAVE_CPU_SPARC,      test "x$HAVE_CPU_SPARC" = "xyes")
-AM_CONDITIONAL(HAVE_GDK_PIXBUF,     test "x$USE_GDK_PIXBUF" = "xyes")
-AM_CONDITIONAL(HAVE_LIBGHTTP,       test "x$USE_LIBGHTTP" = "xyes")
-AM_CONDITIONAL(HAVE_LIBAUDIOFILE,   test "x$HAVE_LIBAUDIOFILE" = "xyes")
 AM_CONDITIONAL(HAVE_LIBMMX,         test "x$USE_LIBMMX" = "xyes")
 AM_CONDITIONAL(HAVE_ATOMIC_H,       test "x$USE_ATOMIC_H" = "xyes")
 AM_CONDITIONAL(HAVE_OSS,            test "x$HAVE_OSS" = "xyes")
 AM_CONDITIONAL(HAVE_XAUDIO,         test "x$HAVE_XAUDIO" = "xyes")
 AM_CONDITIONAL(HAVE_LIBMAD,         test "x$HAVE_LIBMAD" = "xyes")
+AM_CONDITIONAL(HAVE_LIBMIKMOD,      test "x$HAVE_LIBMIKMOD" = "xyes")
 AM_CONDITIONAL(HAVE_LINUX_CDROM,    test "x$HAVE_LINUX_CDROM" = "xyes")
 AM_CONDITIONAL(HAVE_LINUX_VIDEODEV, test "x$HAVE_LINUX_VIDEODEV" = "xyes")
-AM_CONDITIONAL(HAVE_CSSAUTH,        test "x$HAVE_CSSAUTH" = "xyes")
+AM_CONDITIONAL(HAVE_LIBDVDREAD,     test "x$HAVE_LIBDVDREAD" = "xyes")
 AM_CONDITIONAL(HAVE_VORBIS,         test "x$HAVE_VORBIS" = "xyes")
 AM_CONDITIONAL(HAVE_LIBJPEG,        test "x$HAVE_LIBJPEG" = "xyes")
 AM_CONDITIONAL(HAVE_LIBSDL,         test "x$HAVE_LIBSDL" = "xyes")
@@ -974,6 +998,7 @@ AM_CONDITIONAL(HAVE_NASM,           test "x$HAVE_NASM" = "xyes")
 AM_CONDITIONAL(HAVE_LIBGLADE_GNOME, test "x$HAVE_LIBGLADE_GNOME" = "xyes")
 AM_CONDITIONAL(HAVE_GNOME,          test "x$HAVE_GNOME" = "xyes")
 AM_CONDITIONAL(HAVE_LIBXV,          test "x$HAVE_LIBXV" = "xyes")
+AM_CONDITIONAL(HAVE_GTK,            test "x$HAVE_GTK" = "xyes")
 AM_CONDITIONAL(HAVE_GTK_DOC,        $HAVE_GTK_DOC)
 AM_CONDITIONAL(BUILD_DOCS,          test "x$BUILD_DOCS" = "xyes")
 AM_CONDITIONAL(BUILD_TESTS,         test "x$BUILD_TESTS" = "xyes")
@@ -987,11 +1012,14 @@ AM_CONDITIONAL(HAVE_FIG2DEV_EPS,    $HAVE_FIG2DEV_EPS)
 AM_CONDITIONAL(HAVE_CDPARANOIA,     test "x$HAVE_CDPARANOIA" = "xyes")
 AM_CONDITIONAL(HAVE_LIBLAME,        test "x$HAVE_LIBLAME" = "xyes")
 AM_CONDITIONAL(HAVE_LIBSHOUT,       test "x$HAVE_LIBSHOUT" = "xyes")
-AM_CONDITIONAL(HAVE_LIBESD,         test "x$HAVE_LIBESD" = "xyes")
-AM_CONDITIONAL(HAVE_ARTSC,          test "x$HAVE_ARTSC" = "xyes")
-AM_CONDITIONAL(HAVE_LIBASOUND,      test "x$HAVE_LIBASOUND" = "xyes")
 AM_CONDITIONAL(HAVE_MPEG2DEC,       test "x$HAVE_MPEG2DEC" = "xyes")
-AM_CONDITIONAL(HAVE_LIBXMMS,        test "x$HAVE_LIBXMMS" = "xyes")
+AM_CONDITIONAL(HAVE_A52DEC,         test "x$HAVE_A52DEC" = "xyes")
+dnl thomas : the next line gives errors, this is how it is in CVS
+dnl AM_CONDITIONAL(HAVE_FLAC,              test "x$HAVE_FLAC" = "xyes")
+dnl thomas : the next line gives errors as well, I commented it
+dnl AM_CONDITIONAL(HAVE_LAC,               test "x$HAVE_FAC" = "xyes")
+dnl thomas: the next line doesn't give errors
+AM_CONDITIONAL(HAVE_FLACLIB,        test "x$HAVE_FLACLIB" = "xyes")
 AM_CONDITIONAL(HAVE_LIBRTP,         test "x$HAVE_LIBRTP" = "xyes")
 AM_CONDITIONAL(HAVE_ARTS,           test "x$HAVE_ARTS" = "xyes")
 AM_CONDITIONAL(HAVE_RAW1394,        test "x$HAVE_RAW1394" = "xyes")
@@ -1001,7 +1029,8 @@ AM_CONDITIONAL(HAVE_GNOME_VFS,      test "x$HAVE_GNOME_VFS" = "xyes")
 AM_CONDITIONAL(HAVE_AVIFILE,        test "x$HAVE_AVIFILE" = "xyes")
 AM_CONDITIONAL(HAVE_LIBOPENQUICKTIME, test "x$HAVE_LIBOPENQUICKTIME" = "xyes")
 AM_CONDITIONAL(HAVE_LIBGSM,         test "x$HAVE_LIBGSM" = "xyes")
-AM_CONDITIONAL(PLUGINS_USE_SRCDIR,  test "x$PLUGINS_USE_SRCDIR" = "xyes")
+AM_CONDITIONAL(PLUGINS_USE_BUILDDIR,  test "x$PLUGINS_USE_BUILDDIR" = "xyes")
+AM_CONDITIONAL(HAVE_SIDPLAY,        test "x$have_sidplay" = "xyes")
 
 
 dnl ############################
@@ -1009,7 +1038,7 @@ dnl # Set up some more defines #
 dnl ############################
 
 dnl Set location of configuration dir.
-AC_DEFINE_UNQUOTED(GST_CONFIG_DIR,"$GST_CONFIG_DIR")
+dnl AC_DEFINE_UNQUOTED(GST_CONFIG_DIR,"$GST_CONFIG_DIR")
 AC_SUBST(GST_CONFIG_DIR)
 
 dnl Set location of windows dll dir.
@@ -1026,24 +1055,9 @@ AC_DEFINE_UNQUOTED(PLUGINS_DIR,"$PLUGINS_DIR")
 AC_SUBST(PLUGINS_DIR)
 
 dnl Set location of uninstalled plugin directory
-PLUGINS_SRCDIR=`pwd`/$srcdir
-AC_DEFINE_UNQUOTED(PLUGINS_SRCDIR,"$PLUGINS_SRCDIR")
-AC_SUBST(PLUGINS_SRCDIR)
-
-
-
-dnl ##############################
-dnl # Set up the defaults cflags #
-dnl ##############################
-dnl CC="kgcc"
-if test "x$USE_PROFILING" = xyes; then
-  CFLAGS="$CORE_CFLAGS $CFLAGS -Wall"
-else
-  CFLAGS="$CORE_CFLAGS $CFLAGS -O6 -Wall"
-fi
-LIBS="$CORE_LIBS $LIBS"
-AC_SUBST(CORE_LIBS)
-AC_SUBST(CORE_CFLAGS)
+PLUGINS_BUILDDIR=${builddir}
+AC_DEFINE_UNQUOTED(PLUGINS_BUILDDIR,"$PLUGINS_BUILDDIR")
+AC_SUBST(PLUGINS_BUILDDIR)
 
 dnl Vars for everyone else
 GST_LIBS="\$(top_builddir)/gst/libgst.la"
@@ -1052,28 +1066,11 @@ AC_SUBST(GST_LIBS)
 AC_SUBST(GST_CFLAGS)
 
 dnl Private vars for libgst only
-LIBGST_LIBS="$LIBS"
-LIBGST_CFLAGS="$CFLAGS $GST_CFLAGS"
+LIBGST_CFLAGS="$GST_CFLAGS"
 AC_SUBST(LIBGST_LIBS)
 AC_SUBST(LIBGST_CFLAGS)
 
-dnl CFLAGS for everyone else
-CFLAGS="$CFLAGS $GST_CFLAGS"
-
-dnl Needed to make automake 1.4g happy.
-dnl FIXME: find as properly, rather than just using CC
-AS="\$(CC)"
-
-dnl Having to AC_SUBST these is messy, but doesn't seem to do any harm.
-dnl I'm not sure whether it's really necessary, but it removes some warnings
-dnl when automake 1.4g runs, and may be beneficial elsewhere.
-AC_SUBST(LIBS)
-AC_SUBST(CFLAGS)
-AC_SUBST(CPPFLAGS)
-AC_SUBST(LDFLAGS)
-AC_SUBST(AS)
-AC_SUBST(ASFLAGS)
-
+AC_SUBST(GST_CFLAGS)
 
 dnl #############################
 dnl # Configure the subpackages #
@@ -1088,14 +1085,14 @@ dnl ##################################################
 
 infomessages=
 
-if test "x$PLUGINS_USE_SRCDIR" = xyes; then
+if test "x$PLUGINS_USE_BUILDDIR" = xyes; then
   infomessages="$infomessages
-*** Warning: You have configured using the --enable-plugin-srcdir option.
+*** Warning: You have configured using the --enable-plugin-builddir option.
 
 This option is for development purposes only: binaries built with
 it should be used with code in the build tree only.  To build an
-installable version, use ./configure without the --enable-plugin-srcdir
-option.  Note that the autogen.sh script supplies the plugin srcdir
+installable version, use ./configure without the --enable-plugin-builddir
+option.  Note that the autogen.sh script supplies the plugin builddir
 option automatically - it cannot be used to configure installable builds.
 
 "
@@ -1105,26 +1102,31 @@ dnl #########################
 dnl # Make the output files #
 dnl #########################
 
+dnl until ffmpeg is handled by configure plugins/ffmpeg/Makefile
+dnl components/bonobo-gstmediaplay/Makefile
+dnl someone should fix this test/misc/Makefile
+dnl wtay fix this: testsuite/threads/Makefile
 SUBSTFOR configure.ac:AC_OUTPUT(
 SUBSTFOR configure.ac:Makefile
 SUBSTFOR configure.in:AC_OUTPUT([Makefile
 include/Makefile
-include/wine/Makefile
 gst/Makefile
 gst/gstversion.h
 gst/types/Makefile
 gst/elements/Makefile
 gst/autoplug/Makefile
+gst/schedulers/Makefile
 libs/Makefile
 libs/riff/Makefile
-libs/colorspace/Makefile
-libs/videoscale/Makefile
 libs/getbits/Makefile
 libs/putbits/Makefile
-libs/winloader/Makefile
 libs/idct/Makefile
 libs/audio/Makefile
+libs/bytestream/Makefile
+libs/control/Makefile
+libs/resample/Makefile
 plugins/Makefile
+plugins/a52dec/Makefile
 plugins/aasink/Makefile
 plugins/alsa/Makefile
 plugins/au/Makefile
@@ -1134,6 +1136,8 @@ plugins/avi/Makefile
 plugins/avi/wincodec/Makefile
 plugins/avi/winaudio/Makefile
 plugins/flx/Makefile
+plugins/festival/Makefile
+plugins/flac/Makefile
 plugins/jpeg/Makefile
 plugins/mp3decode/Makefile
 plugins/mp3decode/types/Makefile
@@ -1143,6 +1147,7 @@ plugins/mp3decode/mad/Makefile
 plugins/mp3decode/parse/Makefile
 plugins/mp3encode/Makefile
 plugins/mp3encode/lame/Makefile
+plugins/mikmod/Makefile
 plugins/mpeg2/Makefile
 plugins/mpeg2/parse/Makefile
 plugins/mpeg2/ac3parse/Makefile
@@ -1164,7 +1169,6 @@ plugins/mpeg1video/Makefile
 plugins/mpeg1video/parse/Makefile
 plugins/oss/Makefile
 plugins/rtp/Makefile
-plugins/rtp/rtpsend/Makefile
 plugins/mulaw/Makefile
 plugins/alaw/Makefile
 plugins/filters/Makefile
@@ -1182,26 +1186,33 @@ plugins/filters/level/Makefile
 plugins/filters/lav/Makefile
 plugins/filters/cutter/Makefile
 plugins/filters/deinterlace/Makefile
+plugins/filters/volume/Makefile
+plugins/filters/speed/Makefile
+plugins/filters/playondemand/Makefile
 plugins/gnomevfs/Makefile
 plugins/icecast/Makefile
 plugins/icecast/icecastsend/Makefile
 plugins/effects/Makefile
 plugins/effects/stereo/Makefile
 plugins/effects/volume/Makefile
+plugins/udp/Makefile
 plugins/visualization/Makefile
 plugins/visualization/spectrum/Makefile
 plugins/visualization/vumeter/Makefile
 plugins/visualization/synaesthesia/Makefile
 plugins/visualization/smoothwave/Makefile
+plugins/visualization/chart/Makefile
 plugins/videoscale/Makefile
 plugins/xvideosink/Makefile
 plugins/wav/Makefile
 plugins/dvdsrc/Makefile
 plugins/vcdsrc/Makefile
 plugins/rtjpeg/Makefile
+plugins/SID/Makefile
 plugins/vorbis/Makefile
 plugins/capture/Makefile
 plugins/capture/v4l/Makefile
+plugins/capture/qcam/Makefile
 plugins/cdparanoia/Makefile
 plugins/esd/Makefile
 plugins/esd/esdsink/Makefile
@@ -1213,17 +1224,24 @@ plugins/gsm/Makefile
 plugins/1394/Makefile
 plugins/sdlsink/Makefile
 plugins/dv/Makefile
+plugins/synthesis/Makefile
+plugins/synthesis/sinesrc/Makefile
+plugins/silence/Makefile
 gstplay/Makefile
-dnl components/bonobo-gstmediaplay/Makefile
 test/Makefile
 test/xml/Makefile
 test/bindings/Makefile
+test/memchunk/Makefile
+test/events/Makefile
 tests/Makefile
 tests/sched/Makefile
 tests/eos/Makefile
+tests/muxing/Makefile
 testsuite/Makefile
+testsuite/bytestream/Makefile
 testsuite/capsnego/Makefile
 testsuite/refcounting/Makefile
+testsuite/plugin/Makefile
 tests/nego/Makefile
 examples/Makefile
 examples/autoplug/Makefile
@@ -1260,8 +1278,8 @@ gstreamer.pc
 gstreamer-uninstalled.pc
 SUBSTFOR configure.in:gstreamer.spec])
 SUBSTFOR configure.in:AC_OUTPUT_COMMANDS([chmod +x gstreamer-config;
-SUBSTFOR configure.in:echo "$infomessages"])
+SUBSTFOR configure.in:echo "$infomessages"], infomessages="$infomessages")
 SUBSTFOR configure.ac:gstreamer.spec,
 SUBSTFOR configure.ac:chmod +x gstreamer-config
-SUBSTFOR configure.ac:echo "$infomessages"
+SUBSTFOR configure.ac:echo "$infomessages", infomessages="$infomessages"
 SUBSTFOR configure.ac:)