]> git.sesse.net Git - vlc/blobdiff - configure.ac
The Debian packaging data have been moved to svn.v.o/pkg-multimedia
[vlc] / configure.ac
index 074fed336c8f119e4a39938133a5f87a64385164..44ee4409c3d6d11393a772ef21126523831278d3 100644 (file)
@@ -1,10 +1,9 @@
 dnl Autoconf settings for vlc
-dnl $Id$
 
-AC_INIT(vlc,0.8.5-svn)
+AC_INIT(vlc,0.8.6-svn)
 VERSION_MAJOR="0"
 VERSION_MINOR="8"
-VERSION_REVISION="5"
+VERSION_REVISION="6"
 VERSION_EXTRA="svn"
 
 CONFIGURE_LINE="$0 $*"
@@ -17,9 +16,18 @@ AC_CANONICAL_SYSTEM
 
 dnl XXX: we don't put any flags here, because automake 1.5 doesn't support
 dnl them. And we need the comma otherwize automake will choke on it.
-AM_INIT_AUTOMAKE(vlc,0.8.5-svn)
+AM_INIT_AUTOMAKE(vlc,0.8.6-svn)
 AM_CONFIG_HEADER(config.h)
 
+dnl Too many people are not aware of maintainer mode:
+dnl If you want to use it, you definitely know what you are doing, so
+dnl you can specify "--disable-maintainer-mode". But if you want the default
+dnl automake behavior, you've likely never heard of maintainer mode, so we
+dnl can't expect you to enable it manually.
+
+AS_IF([test "x${enable_maintainer_mode}" != "xno"],
+       [enable_maintainer_mode="yes"])
+
 dnl HA! HA!
 AM_MAINTAINER_MODE
 
@@ -65,9 +73,15 @@ AC_CHECK_TOOL(STRIP, strip, :)
 AC_CHECK_TOOL(AR, ar, :)
 AC_CHECK_TOOL(LD, ld, :)
 
-dnl Sam, if you think I didn't see that... --Meuuh
-dnl AM_PROG_LIBTOOL
-AC_PROG_INSTALL
+AC_DISABLE_STATIC
+AC_LIBTOOL_DLOPEN
+AC_LIBTOOL_WIN32_DLL
+AC_PROG_LIBTOOL
+
+AC_ARG_ENABLE(libtool,
+    [  --enable-libtool        use libtool (default disabled, EXPERIMENTAL)],
+    [],[enable_libtool="no"])
+AM_CONDITIONAL(USE_LIBTOOL, [test "${enable_libtool}" != "no"])
 
 dnl Check for compiler properties
 AC_C_CONST
@@ -79,16 +93,23 @@ dnl
 AC_ARG_WITH(contrib,
     [  --without-contrib       do not use the libraries in extras/contrib],[],[])
   if test "${with_contrib}" != "no"; then 
-
+    AC_MSG_CHECKING([for libs in extras/contrib])
     topdir="`dirname $0`"
     if test "`echo \"$topdir\" | cut -c 1`" != "/"; then
        topdir="`pwd`/$topdir"
     fi
-
+   if test "`grep HOST ${topdir}/extras/contrib/config.mak |awk '{print $3}'`" != "`$CC -dumpmachine`"; then
+      if test "${with_contrib}" = "yes"; then
+        AC_MSG_RESULT([no])
+       AC_MSG_ERROR([ not using the libs in extras/contrib as it is not the same host])
+      else
+        AC_MSG_RESULT([no])
+       AC_MSG_WARN([ not using the libs in extras/contrib as it is not the same host])
+      fi
+     else
   if test -d ${topdir}/extras/contrib/lib; then
+    AC_MSG_RESULT([yes])
     export PATH=${topdir}/extras/contrib/bin:$PATH
-dnl kludge because only the debian package provides a ffmpeg-config
-    with_ffmpeg_config_path=${topdir}/extras/contrib/bin       
     CPPFLAGS="${CPPFLAGS} -I${topdir}/extras/contrib/include"
     CPPFLAGS_save="${CPPFLAGS_save} -I${topdir}/extras/contrib/include"
     CFLAGS="${CFLAGS} -I${topdir}/extras/contrib/include"
@@ -97,19 +118,31 @@ dnl kludge because only the debian package provides a ffmpeg-config
     CXXFLAGS_save="${CXXFLAGS_save} -I${topdir}/extras/contrib/include"
     OBJCFLAGS="${OBJCFLAGS} -I${topdir}/extras/contrib/include"
     OBJCFLAGS_save="${OBJCFLAGS_save} -I${topdir}/extras/contrib/include"
-    if test $build = $host; then
+    if test $build = $host -o "$PKG_CONFIG_LIBDIR"; then
        export PKG_CONFIG_PATH=${topdir}/extras/contrib/lib/pkgconfig:$PKG_CONFIG_PATH
     else
        export PKG_CONFIG_LIBDIR=${topdir}/extras/contrib/lib/pkgconfig
     fi
-    if test -d ${topdir}/extras/contrib/vlc-lib; then
-      LDFLAGS="${LDFLAGS} -L${topdir}/extras/contrib/vlc-lib"
-      LDFLAGS_save="${LDFLAGS_save} -L${topdir}/extras/contrib/vlc-lib"
-    fi
     LDFLAGS="${LDFLAGS} -L${topdir}/extras/contrib/lib"
     LDFLAGS_save="${LDFLAGS_save} -L${topdir}/extras/contrib/lib"
-    with_livedotcom_tree=${topdir}/extras/contrib/src/live
-    with_goom_tree=${topdir}/extras/contrib/src/goom
+
+dnl kludge because only the debian package provides a ffmpeg-config
+    if test -z $with_ffmpeg_config_path; then 
+       with_ffmpeg_config_path=${topdir}/extras/contrib/bin;
+    fi
+    if test -z $with_livedotcom_tree; then
+       with_livedotcom_tree=${topdir}/extras/contrib/src/live
+    fi
+    if test -z $with_goom_tree; then
+      with_goom_tree=${topdir}/extras/contrib/src/goom
+    fi
+    if test -z $with_mozilla_sdk_path; then
+       with_mozilla_sdk_path=${topdir}/extras/contrib/gecko-sdk
+    fi
+    if test -z $with_cyberlink_tree; then
+       with_cyberlink_tree=${topdir}/extras/contrib/src/clinkcc
+    fi
+
     if test ".`uname -s`" = ".Darwin"; then
       export LD_LIBRARY_PATH=${topdir}/extras/contrib/lib:$LD_LIBRARY_PATH
       export DYLD_LIBRARY_PATH=${topdir}/extras/contrib/lib:$DYLD_LIBRARY_PATH
@@ -117,6 +150,9 @@ dnl kludge because only the debian package provides a ffmpeg-config
       export LIBRARY_PATH=${topdir}/extras/contrib/lib:$LIBRARY_PATH
       export BELIBRARIES=${topdir}/extras/contrib/lib:$BELIBRARIES
     fi
+  else
+     AC_MSG_RESULT([no])
+  fi
   fi
 fi
 dnl
@@ -142,6 +178,14 @@ case "${target_os}" in
   *bsd*)
     SYS="${target_os}"
     CFLAGS_save="${CFLAGS_save} -pthread"; CFLAGS="${CFLAGS_save}"
+    case "${target_os}" in
+      freebsd*)
+        CPPFLAGS_save="${CPPFLAGS_save} -I/usr/local/include"
+        CPPFLAGS="${CPPFLAGS_save}"
+        LDFLAGS_save="${LDFLAGS_save} -L/usr/local/lib"
+        LDFLAGS="${LDLFAGS_save}"
+        ;;
+    esac
     ;;
   darwin1.[0123])
     dnl Mac OS X < 10.3
@@ -189,8 +233,8 @@ case "${target_os}" in
         # add ws2_32 for closesocket, select, recv
         CPPFLAGS_save="${CPPFLAGS_save} -D_OFF_T_ -D_off_t=long"; CPPFLAGS="${CPPFLAGS_save}"
         VLC_ADD_LDFLAGS([vlc],[-lws2_32 -lnetapi32 -lwinmm -mwindows])
-        VLC_ADD_LDFLAGS([vcdx cddax],[-lwinmm])
-        VLC_ADD_LDFLAGS([ipv4 ipv6 access_http access_mms access_udp access_tcp access_ftp access_output_udp sap slp http stream_out_standard stream_out_rtp vod_rtsp telnet netsync],[-lws2_32])
+        VLC_ADD_LDFLAGS([cdda vcdx cddax],[-lwinmm])
+        VLC_ADD_LDFLAGS([ipv4 ipv6 access_http access_mms access_udp access_tcp access_ftp access_output_udp sap slp http stream_out_standard stream_out_rtp vod_rtsp telnet netsync growl],[-lws2_32])
     fi
     if test "${SYS}" = "mingwce"; then
         # add ws2 for closesocket, select, recv
@@ -218,14 +262,14 @@ case "${target_os}" in
     CFLAGS_save="${CFLAGS_save} -Wno-multichar"; CFLAGS="${CFLAGS_save}"
     CXXFLAGS_save="${CXXFLAGS_save} -Wno-multichar"; CXXFLAGS="${CXXFLAGS_save}"
     VLC_ADD_CXXFLAGS([beos],[])
-    VLC_ADD_LDFLAGS([vlc beos logger],[-lbe])
-    VLC_ADD_LDFLAGS([beos],[-lmedia -ltranslation -ltracker -lgame])
+    VLC_ADD_LDFLAGS([vlc logger],[-lbe])
+    VLC_ADD_LDFLAGS([beos],[-lbe -lmedia -ltranslation -ltracker -lgame])
 
     dnl Check for BONE
     if test -f /boot/beos/system/lib/libbind.so; then
-        VLC_ADD_LDFLAGS([access_file access_ftp access_mms access_output_udp telnet netsync sap ipv4 vlc],[-lbind -lsocket])
+        VLC_ADD_LDFLAGS([access_file access_ftp access_mms access_output_udp telnet netsync sap ipv4 vlc growl],[-lbind -lsocket])
     else
-        VLC_ADD_LDFLAGS([access_file access_ftp access_mms access_output_udp telnet netsync sap ipv4 vlc],[-lnet])
+        VLC_ADD_LDFLAGS([access_file access_ftp access_mms access_output_udp telnet netsync sap ipv4 vlc growl],[-lnet])
     fi
 
     dnl Ugly check for Zeta
@@ -265,15 +309,16 @@ AM_GNU_GETTEXT
 if test "${nls_cv_force_use_gnu_gettext}" = "yes"; then
   AC_DEFINE(HAVE_INCLUDED_GETTEXT, 1, Define if we use the local libintl)
   INCLUDES="${INCLUDES} -I\$(top_builddir)/intl"
-else
-  AC_CHECK_FUNCS(textdomain,,[
-    AC_CHECK_LIB(intl,textdomain,
-      VLC_ADD_LDFLAGS([vlc],[${LIBINTL}]),,
-      ${LIBINTL}
-    )
+  AS_IF([test "${enable_libtool}" != "no"], [
+    INCLUDED_LIBINTL="${LTLIBINTL}"
+  ],[
+    INCLUDED_LIBINTL="${LIBINTL}"
   ])
+else
+  VLC_ADD_LDFLAGS([vlc],[${LIBINTL}])
+  INCLUDED_LIBINTL=
 fi
-AM_CONDITIONAL(BUILD_INTL, test "${nls_cv_force_use_gnu_gettext}" = "yes")
+AC_SUBST(INCLUDED_LIBINTL)
 XGETTEXT="${XGETTEXT} --keyword=_NS --keyword=_ANS"
 
 dnl
@@ -284,7 +329,11 @@ AS_IF([test "$am_cv_func_iconv" != "yes"],
        [AC_MSG_ERROR([libiconv is needed for VLC to work properly])])
 fi
 VLC_ADD_CFLAGS([vlc],[${INCICONV}])
-VLC_ADD_LDFLAGS([vlc],[${LIBICONV}])
+AS_IF([test "${enable_libtool}" != "no"], [
+  VLC_ADD_LDFLAGS([vlc],[${LIBICONV}])
+],[
+  VLC_ADD_LDFLAGS([vlc],[${LTLIBICONV}])
+])
 
 dnl Check for the need to include the mingwex lib for mingw32
 if test "${SYS}" = "mingw32"
@@ -343,6 +392,7 @@ VLC_LIBRARY_SUFFIX
 VLC_SYMBOL_PREFIX
 AC_SUBST(SYMPREF)
 
+AS_IF([test "${enable_libtool}" = "no"], [
 case "${SYS}" in
   mingw32|cygwin)
     VLC_ADD_CFLAGS([pic plugin mozilla activex],[${CFLAGS_mingw32_special}])
@@ -358,6 +408,7 @@ case "${SYS}" in
     VLC_ADD_LDFLAGS([plugin mozilla],[-fpic -fPIC])
     ;;
 esac
+])
 
 dnl The -DSYS_FOO flag
 CPPFLAGS_save="${CPPFLAGS_save} -DSYS_`echo ${SYS} | sed -e 's/-.*//' | tr 'abcdefghijklmnopqrstuvwxyz.' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ_'`"; CPPFLAGS="${CPPFLAGS_save}"
@@ -365,7 +416,7 @@ CPPFLAGS_save="${CPPFLAGS_save} -DSYS_`echo ${SYS} | sed -e 's/-.*//' | tr 'abcd
 dnl Check for system libs needed
 need_libc=false
 
-AC_CHECK_FUNCS(gettimeofday select strerror strtod strtol strtof strtoll strtoull strsep isatty vasprintf asprintf swab sigrelse getpwuid memalign posix_memalign if_nametoindex atoll getenv putenv setenv gmtime_r ctime_r localtime_r lrintf daemon scandir fork bsearch)
+AC_CHECK_FUNCS(gettimeofday strtod strtol strtof strtoll strtoull strsep isatty vasprintf asprintf swab sigrelse getpwuid memalign posix_memalign if_nametoindex atoll getenv putenv setenv gmtime_r ctime_r localtime_r lrintf daemon scandir fork bsearch lstat strlcpy)
 
 dnl Check for usual libc functions
 AC_CHECK_FUNCS(strdup strndup atof)
@@ -391,19 +442,20 @@ fi
 
 AC_CHECK_FUNCS(connect,,[
   AC_CHECK_LIB(socket,connect,[
-    VLC_ADD_LDFLAGS([vlc ipv4 cddax],-lsocket)
+    VLC_ADD_LDFLAGS([vlc ipv4 ipv6 cdda cddax],-lsocket)
+    LIBS_socket="-lsocket"
   ])
 ])
 
 AC_CHECK_FUNCS(send,,[
   AC_CHECK_LIB(socket,send,[
-    VLC_ADD_LDFLAGS([access_http access_mms access_udp access_tcp access_ftp sap access_output_udp stream_out_standard],[-lsocket])
+    VLC_ADD_LDFLAGS([access_http access_mms access_udp access_tcp access_ftp sap access_output_udp stream_out_standard growl],[-lsocket])
   ])
 ])
 
 AC_CHECK_FUNCS(gethostbyname,,[
   AC_CHECK_LIB(nsl,gethostbyname,[
-    VLC_ADD_LDFLAGS([cddax ipv4 vlc],[-lnsl])
+    VLC_ADD_LDFLAGS([cdda cddax ipv4 ipv6 vlc],[-lnsl])
   ],[
     AC_CHECK_LIB(bind,gethostbyname,[
       VLC_ADD_LDFLAGS([ipv4 access_mms],[-lbind])
@@ -438,16 +490,25 @@ AC_CACHE_CHECK([for struct sockaddr_storage], ac_cv_struct_sockaddr_storage,
      #endif], [struct sockaddr_storage addr;],
      ac_cv_struct_sockaddr_storage=yes,
      ac_cv_struct_sockaddr_storage=no)])
-if test $ac_cv_struct_sockaddr_storage = no; then
+AS_IF([test "${ac_cv_struct_sockaddr_storage}" = no], [
   AC_DEFINE(sockaddr_storage, sockaddr)
   AC_DEFINE(ss_family, sa_family)
-fi
+])
 
 dnl getaddrinfo, getnameinfo and gai_strerror check
-dnl  -lresolv is NOT needed on Solaris
+dnl  -lnsl and -lsocket are needed on Solaris;
 dnl  we purposedly make the test fail on Windows
-AC_CHECK_FUNCS([getaddrinfo getnameinfo gai_strerror])
-AH_TEMPLATE(HAVE_ADDRINFO, [Define to `1' if <netdb.h> defines struct addrinfo.])
+LIBS_save="${LIBS}"
+AH_TEMPLATE(HAVE_GETADDRINFO, [Define to 1 if you have the `getaddrinfo' function.])
+AC_SEARCH_LIBS([getaddrinfo], [nsl], [AC_DEFINE(HAVE_GETADDRINFO)],, [${LIBS_socket}])
+
+dnl NOTE: we assume getaddrinfo will be present if getnameinfo or gai_strerro
+dnl are
+LIBS="${LIBS_gai}"
+AC_CHECK_FUNCS([getnameinfo gai_strerror])
+LIBS="${LIBS_save}"
+
+AH_TEMPLATE(HAVE_ADDRINFO, [Define to 1 if <netdb.h> defines `struct addrinfo'.])
 AC_CHECK_TYPES([struct addrinfo],[AC_DEFINE(HAVE_ADDRINFO)],,
 [#include <sys/types.h>
 #if defined( WIN32 ) || defined( UNDER_CE )
@@ -506,11 +567,14 @@ AC_CHECK_LIB(m,cos,[
   VLC_ADD_LDFLAGS([adjust distort a52tofloat32 dtstofloat32 x264 goom],[-lm])
 ])
 AC_CHECK_LIB(m,pow,[
-  VLC_ADD_LDFLAGS([ffmpeg ffmpegaltivec stream_out_transrate i420_rgb faad twolame equalizer vlc freetype mpc],[-lm])
+  VLC_ADD_LDFLAGS([ffmpeg ffmpegaltivec stream_out_transrate i420_rgb faad twolame equalizer param_eq vlc freetype mpc dmo quicktime realaudio galaktos],[-lm])
 ])
 AC_CHECK_LIB(m,sqrt,[
   VLC_ADD_LDFLAGS([headphone_channel_mixer normvol speex],[-lm])
 ])
+AC_CHECK_LIB(m,ceil,[
+  VLC_ADD_LDFLAGS([mosaic],[-lm])
+])
 AC_CHECK_LIB(mx,sqrtf,[
   VLC_ADD_LDFLAGS([x264],[-lmx])
 ])
@@ -739,13 +803,7 @@ AC_CHECK_HEADERS(cthreads.h pthread.h kernel/scheduler.h kernel/OS.h)
 fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
 
 dnl Find where are the X headers and libraries
-AC_PATH_X()
-
-dnl The rest of configure doesn't work if x_includes is null.
-dnl Cleaner way to do it welcomes
-if test -z ${x_includes} ;then
-       x_includes="/usr/includes"
-fi
+AC_PATH_XTRA()
 
 dnl it seems that autoconf do the pkg-config detection only for the first PKG_CHECK_MODULES in the configure.ac ( which is logical) but in our case it is nested in a if so it was not working if you're not on linux or have disable hal.
 
@@ -774,6 +832,27 @@ then
   )
 fi
 
+dnl Check for dbus
+AC_ARG_ENABLE(dbus,
+  [  --enable-dbus            Linux D-BUS message bus system (default enabled)])
+if test "${enable_dbus}" != "no" -a "${SYS}" = "linux"
+then
+  PKG_CHECK_MODULES(DBUS, dbus-1 >= 0.30,
+    [ AC_DEFINE( HAVE_DBUS_1, 1, [Define if you have the new D-BUS library API])
+      AC_DEFINE( HAVE_DBUS, 1, [Define if you have the D-BUS library] )
+      VLC_ADD_LDFLAGS([screensaver],[$DBUS_LIBS])
+      VLC_ADD_CFLAGS([screensaver],[$DBUS_CFLAGS])],   
+    dnl older dbus
+    [ PKG_CHECK_MODULES( DBUS, dbus-1, 
+       [AC_DEFINE(HAVE_DBUS, 1, [Define if you have the D-BUS library])
+        VLC_ADD_LDFLAGS([screensaver],[$DBUS_LIBS])
+        VLC_ADD_CFLAGS([screensaver],[$DBUS_CFLAGS])],
+       [AC_MSG_WARN(DBUS library not found)])
+    ]
+  )
+fi
+
 dnl Build the gtk_main plugins?
 NEED_GTK_MAIN=no
 NEED_GNOME_MAIN=no
@@ -929,10 +1008,10 @@ AC_CACHE_CHECK([if \$CC accepts -mdynamic-no-pic],
     [ac_cv_c_dynamic_no_pic],
     [CFLAGS="${CFLAGS_save} -mdynamic-no-pic"
      AC_TRY_COMPILE([],,ac_cv_c_dynamic_no_pic=yes, ac_cv_c_dynamic_no_pic=no)])
-if test "${ac_cv_c_dynamic_no_pic}" != "no"; then
+AS_IF([test "${enable_libtool}" = "no" && test "${ac_cv_c_dynamic_no_pic}" != "no"], [
     VLC_ADD_CFLAGS([builtin],[-mdynamic-no-pic])
     VLC_ADD_CFLAGS([libvlc],[-mdynamic-no-pic])
-fi
+])
 
 dnl Check for Darwin plugin linking flags
 AC_CACHE_CHECK([if \$CC accepts -bundle -undefined error],
@@ -1058,7 +1137,7 @@ dnl  VLC_ADD_PLUGINS([externrun])
   VLC_ADD_PLUGINS([i420_yuy2 i422_yuy2 i420_ymga])
   VLC_ADD_PLUGINS([aout_file linear_resampler bandlimited_resampler])
   VLC_ADD_PLUGINS([float32_mixer spdif_mixer simple_channel_mixer])
-  VLC_ADD_PLUGINS([dolby_surround_decoder headphone_channel_mixer normvol equalizer])
+  VLC_ADD_PLUGINS([dolby_surround_decoder headphone_channel_mixer normvol equalizer param_eq])
   VLC_ADD_PLUGINS([fixed32tofloat32 float32tos16 float32tos8 float32tou16 float32tou8 a52tospdif dtstospdif s16tofloat32 s16tofloat32swab s8tofloat32 u8tofloat32 audio_format])
 fi
 
@@ -1161,7 +1240,7 @@ AC_CACHE_CHECK([if \$CC groks SSE inline assembly],
     [CFLAGS="${CFLAGS_save}"
      AC_TRY_COMPILE(,[void *p;asm volatile("xorps %%xmm1,%%xmm2"::"r"(p));],
                     ac_cv_sse_inline=yes, ac_cv_sse_inline=no)])
-if test "${ac_cv_sse_inline}" != "no" -a "${SYS}" != "mingw32" -a "${SYS}" != "solaris"; then
+if test "${ac_cv_sse_inline}" != "no" -a "${SYS}" != "solaris"; then
   AC_DEFINE(CAN_COMPILE_SSE, 1, Define if \$CC groks SSE inline assembly.)
   ACCEL_MODULES="${ACCEL_MODULES} ${SSE_MODULES}"
 fi
@@ -1209,7 +1288,7 @@ AC_CACHE_CHECK([if \$CC groks AltiVec C extensions],
      [# OS X/PPC test (gcc 3.x)
       CFLAGS="${CFLAGS_save} -faltivec"
       AC_TRY_COMPILE([],
-        [vec_ld(0, (unsigned char *)0);],
+        [vec_ld(1 * sizeof(vector float), (unsigned char *)0);],
         [ac_cv_c_altivec="-faltivec"],
         dnl Below this are the Linux tests
         [# Linux/PPC test (gcc 4.x)
@@ -1341,6 +1420,9 @@ dnl
 AC_ARG_ENABLE(debug,
 [  --enable-debug          debug mode (default disabled)])
 test "${enable_debug}" != "yes" && enable_debug="no"
+AH_TEMPLATE(NDEBUG,
+            [Define to 1 if debug code should NOT be compiled])
+AS_IF([test "x${enable_debug}" == "xno"], [AC_DEFINE(NDEBUG)])
 
 dnl
 dnl  Enable release-specific flags
@@ -1354,9 +1436,10 @@ dnl  Is the shared libvlc forced ?
 dnl
 build_pic=no
 AC_ARG_ENABLE(shared-libvlc,
-  [  --enable-shared-libvlc  shared libvlc (default disabled EXPERIMENTAL)],
-  ,[shared_libvlc=no])
-
+  [  --enable-shared-libvlc  Win32 libvlc.dll build (default disabled)])
+AS_IF([test "${enable_libtool}" != "no" && test "${enable_shared_libvlc}"], [
+  AC_MSG_ERROR([--enable-shared-libvlc and --enable-libtool are mutually exclusive])
+])
 
 dnl
 dnl Stream output
@@ -1410,35 +1493,13 @@ then
 fi
 
 dnl
-dnl TLS/SSL
+dnl Growl notification plugin
 dnl
-AC_ARG_ENABLE(gnutls,
-  [  --enable-gnutls         gnutls TLS/SSL support (default enabled)])
-AS_IF([test "${enable_gnutls}" != "no"], [
-
-  gcrypt_LIBS="-lgpg-error"
-  AS_IF([test "${SYS}" = "mingw32"],
-    [gcrypt_LIBS="${gcrypt_LIBS} -lws2_32"
-     VLC_ADD_LDFLAGS([gnutls],[-lws2_32])]
-  )
-
-  gnutls_LIBS="-lgcrypt -lz ${gcrypt_LIBS}"
-
-  AC_CHECK_HEADER(gcrypt.h,
-    [AC_CHECK_LIB(gcrypt, gcry_control,
-      [AC_CHECK_HEADER(gnutls/gnutls.h,
-        [AC_CHECK_LIB(gnutls, gnutls_certificate_verify_peers2,
-         [have_gnutls="yes"],[old_gnutls="yes"], ${gnutls_LIBS})])],,
-     ${gcrypt_LIBS})])
-
-  AS_IF([test "${have_gnutls}" = "yes"], [
-    VLC_ADD_PLUGINS([gnutls])
-    VLC_ADD_LDFLAGS([gnutls], [-lgnutls ${gnutls_LIBS}])
-  ], [
-    AS_IF([test "${enable_gnutls}" = "yes"], [
-      AC_MSG_ERROR([gnutls not present or too old (version 1.0.17 required)])]
-    )]
-  )]
+AC_ARG_ENABLE(growl,
+  [  --enable-growl          growl notification plugin (default enabled)])
+AS_IF([test "${enable_growl}" != "no"], [
+    VLC_ADD_PLUGINS([growl])
+  ]
 )
 
 
@@ -1463,6 +1524,9 @@ if test "${enable_livedotcom}" = "yes"; then
     AC_LANG_PUSH(C++)
     CPPFLAGS_save="${CPPFLAGS}"
     CPPFLAGS_livedotcom="-I/usr/include/liveMedia -I/usr/include/groupsock -I/usr/include/BasicUsageEnvironment -I/usr/include/UsageEnvironment"
+    if test "${SYS}" = "solaris"; then
+      CPPFLAGS_livedotcom="${CPPFLAGS_livedotcom} -DSOLARIS"
+    fi
     CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_livedotcom}"
     AC_CHECK_HEADERS(liveMedia.hh, [
       VLC_ADD_CXXFLAGS([livedotcom], [${CPPFLAGS_livedotcom}])
@@ -1511,6 +1575,9 @@ if test "${enable_livedotcom}" = "yes"; then
       VLC_ADD_CXXFLAGS([livedotcom],[-I${real_livedotcom_tree}/groupsock/include])
       VLC_ADD_CXXFLAGS([livedotcom],[-I${real_livedotcom_tree}/liveMedia/include])
       VLC_ADD_CXXFLAGS([livedotcom],[-I${real_livedotcom_tree}/UsageEnvironment/include ])
+      if test "${SYS}" = "solaris"; then
+        VLC_ADD_CXXFLAGS([livedotcom],[-DSOLARIS])
+      fi
     else
       dnl  The given live.com wasn't built
       AC_MSG_RESULT(no)
@@ -2053,7 +2120,18 @@ then
   then
     VLC_ADD_PLUGINS([vcd cdda])
     VLC_ADD_LDFLAGS([vcd vcdx cdda cddax],[-framework IOKit -framework CoreFoundation])
-    VLC_ADD_LDFLAGS([vcdx cddax],[-liconv])
+    VLC_ADD_LDFLAGS([vcdx cddax cdda],[-liconv])
+  fi
+
+  if test "$enable_libcddb" != "no"; then
+    PKG_CHECK_MODULES(LIBCDDB, libcddb >= 0.9.5, [
+      HAVE_LIBCDDB=yes 
+      AC_DEFINE(HAVE_LIBCDDB, [], [Define this if you have libcddb installed])
+      VLC_ADD_LDFLAGS([cdda],[$LIBCDDB_LIBS])
+      VLC_ADD_CFLAGS([cdda],[$LIBCDDB_CFLAGS])
+      ],:
+      [AC_MSG_WARN(new enough libcddb not found. CDDB access disabled) 
+      HAVE_LIBCDDB=no])
   fi
 fi
 
@@ -2104,11 +2182,11 @@ if test "${enable_screen}" != "no"; then
     VLC_ADD_CXXFLAGS([screen],[])
     VLC_ADD_LDFLAGS([screen],[-lbe])
   else
-    CPPFLAGS="${CPPFLAGS_save} -I${x_includes}"
+    CPPFLAGS="${CPPFLAGS_save} ${X_CFLAGS}"
     AC_CHECK_HEADERS(X11/Xlib.h, [
       VLC_ADD_PLUGINS([screen])
-      VLC_ADD_LDFLAGS([screen],[-L${x_libraries} -lX11 -lXext])
-      VLC_ADD_CPPFLAGS([screen],[-I${x_includes}])
+      VLC_ADD_LDFLAGS([screen],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext])
+      VLC_ADD_CPPFLAGS([screen],[${X_CFLAGS}])
     ])
     CPPFLAGS="${CPPFLAGS_save}"
   fi
@@ -2119,9 +2197,7 @@ dnl  ipv6 plugin - not for QNX yet
 dnl
 have_ipv6=no
 AC_CHECK_FUNCS(inet_pton,[have_ipv6=yes],[
-  AC_CHECK_LIB(resolv,inet_pton,
-    [have_ipv6=yes
-     VLC_ADD_LDFLAGS([ipv6 vlc],[-lresolv])])
+  AC_CHECK_LIB(nsl,inet_pton, [have_ipv6=yes])
 ])
 
 AS_IF([test "${have_ipv6}" = "yes"], [
@@ -2296,6 +2372,43 @@ then
     VLC_ADD_LDFLAGS([mpc],[-lmpcdec])])
 fi
 
+dnl
+dnl  game music emu demux plugin
+dnl
+AC_ARG_ENABLE(gme,
+  [  --enable-gme            Game Music Emu demux support (default enabled)])
+if test "${enable_gme}" != "no" -a "${CXX}" != "";
+then
+  AC_LANG_PUSH(C++)
+  AC_ARG_WITH(gme-tree,
+  [    --with-gme-tree=PATH gme tree for static linking])
+  if test -n "${with_gme_tree}"
+  then
+    AC_MSG_CHECKING(for libgme.a in ${with_mod_tree})
+    real_gme_tree="`cd ${with_gme_tree} 2>/dev/null && pwd`"
+    if test -z "${real_gme_tree}"
+    then
+      dnl  The given directory can't be found
+      AC_MSG_RESULT(no)
+      AC_MSG_ERROR([cannot cd to ${with_gme_tree}])
+    fi
+    if test -f "${real_gme_tree}/gme/libgme.a"
+    then
+      dnl  Use a custom gme
+      AC_MSG_RESULT(${real_gme_tree}/gme/libgme.a)
+      VLC_ADD_PLUGINS([gme])
+      VLC_ADD_LDFLAGS([gme],[${real_gme_tree}/gme/libgme.a])
+      VLC_ADD_CXXFLAGS([gme],[-I${real_gme_tree}/gme])
+    else
+      dnl  The given gme wasn't built
+      AC_MSG_RESULT(no)
+      AC_MSG_ERROR([cannot find ${real_mod_tree}/gme/libgme.a, make sure you compiled gme in ${with_gme_tree}])
+    fi
+  else
+      AC_MSG_WARN([only static linking is available, you must provide a gme-tree])
+  fi
+  AC_LANG_POP(C++)
+fi
 
 dnl
 dnl  Codec plugins
@@ -2407,6 +2520,27 @@ dnl Those options have to be here because the .pc can be bogus for ffmpeg previo
              LDFLAGS="${LDFLAGS_save}"
      fi])
 
+ AC_ARG_WITH(ffmpeg-vorbis,
+   [    --with-ffmpeg-vorbis    specify if ffmpeg has been compiled with vorbis support],
+   [
+     if test "$with_ffmpeg_vorbis" = "yes"; then
+        VLC_ADD_LDFLAGS([ffmpeg],[-lvorbisenc -lvorbis])
+     fi])
+
+ AC_ARG_WITH(ffmpeg-theora,
+   [    --with-ffmpeg-theora    specify if ffmpeg has been compiled with theora support],
+   [
+     if test "$with_ffmpeg_theora" = "yes"; then
+        VLC_ADD_LDFLAGS([ffmpeg],[-ltheora])
+     fi])
+
+ AC_ARG_WITH(ffmpeg-ogg,
+   [    --with-ffmpeg-ogg    specify if ffmpeg has been compiled with ogg support],
+   [
+     if test "$with_ffmpeg_ogg" = "yes"; then
+        VLC_ADD_LDFLAGS([ffmpeg],[-logg])
+     fi])
+
  AC_ARG_WITH(ffmpeg-zlib,
    [    --with-ffmpeg-zlib    specify if ffmpeg has been compiled with zlib support],
    [
@@ -2434,9 +2568,13 @@ dnl Those options have to be here because the .pc can be bogus for ffmpeg previo
      AC_MSG_ERROR([cannot find ${real_ffmpeg_tree}/libavcodec/libavcodec.a, make sure you compiled libavcodec in ${with_ffmpeg_tree}])
    fi
    if ! fgrep -s "pp_get_context" "${real_ffmpeg_tree}/libavcodec/libavcodec.a"; then
-     dnl  The given libavcodec wasn't built with --enable-pp
-     AC_MSG_RESULT(no)
-     AC_MSG_ERROR([${real_ffmpeg_tree}/libavcodec/libavcodec.a was not compiled with postprocessing support, make sure you configured ffmpeg with --enable-pp])
+     if test -f "${real_ffmpeg_tree}/libavcodec/libpostproc/libpostproc.a"; then
+       VLC_ADD_LDFLAGS([ffmpeg],[-L${real_ffmpeg_tree}/libavcodec/libpostproc ${real_ffmpeg_tree}/libavcodec/libpostproc/libpostproc.a])       
+     else
+       dnl  The given libavcodec wasn't built with --enable-pp
+       AC_MSG_RESULT(no)
+       AC_MSG_ERROR([${real_ffmpeg_tree}/libavcodec/libavcodec.a was not compiled with postprocessing support, make sure you configured ffmpeg with --enable-pp])
+     fi
    fi
    dnl  Use a custom libffmpeg
    AC_MSG_RESULT(${real_ffmpeg_tree}/libavcodec/libavcodec.a)
@@ -2489,7 +2627,7 @@ dnl Those options have to be here because the .pc can be bogus for ffmpeg previo
    VLC_ADD_CPPFLAGS([ffmpeg stream_out_switcher],[-I${real_ffmpeg_tree}/libavcodec])
 
    if test -f "${real_ffmpeg_tree}/libavformat/libavformat.a"; then
-     AC_DEFINE(HAVE_LIBAVFORMAT, 1, [Define if you have ffmpeg's libavformat.])
+     AC_DEFINE(HAVE_LIBAVFORMAT_TREE, 1, [Define if you have ffmpeg's libavformat.])
      VLC_ADD_LDFLAGS([ffmpeg],[-L${real_ffmpeg_tree}/libavformat ${real_ffmpeg_tree}/libavformat/libavformat.a])
      VLC_ADD_CPPFLAGS([ffmpeg stream_out_switcher],[-I${real_ffmpeg_tree}/libavformat])
    fi
@@ -2508,6 +2646,8 @@ dnl Look for a ffmpeg-config (we are on debian )
   if test "${FFMPEG_CONFIG}" != "no"
   then
     AC_CHECK_HEADERS(ffmpeg/avcodec.h)
+    AC_CHECK_HEADERS(ffmpeg/avformat.h)
+    AC_CHECK_HEADERS(ffmpeg/avutil.h)
     AC_CHECK_HEADERS(postproc/postprocess.h)
     VLC_ADD_PLUGINS([ffmpeg])
     if test "${enable_sout}" != "no"; then
@@ -2522,6 +2662,8 @@ dnl Trying with pkg-config
    PKG_CHECK_MODULES(FFMPEG,[libavcodec, libavformat],
     [
      AC_CHECK_HEADERS(ffmpeg/avcodec.h)
+     AC_CHECK_HEADERS(ffmpeg/avformat.h)
+     AC_CHECK_HEADERS(ffmpeg/avutil.h)
      AC_CHECK_HEADERS(postproc/postprocess.h)
      VLC_ADD_BUILTINS([ffmpeg])
      if test "${enable_sout}" != "no"; then
@@ -2529,7 +2671,10 @@ dnl Trying with pkg-config
      fi
      VLC_ADD_CFLAGS([ffmpeg stream_out_switcher],[${FFMPEG_CFLAGS}])
      VLC_ADD_LDFLAGS([ffmpeg],[${FFMPEG_LIBS}])
-
+     dnl newer ffmpeg have a separate libpostproc
+     PKG_CHECK_MODULES(POSTPROC, libpostproc,[
+       VLC_ADD_LDFLAGS([ffmpeg],[${POSTPROC_LIBS}]) 
+       ],[ true ])
     ],[
      
     dnl
@@ -2538,24 +2683,27 @@ dnl Trying with pkg-config
       CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_ffmpeg}"
       LDFLAGS="${LDFLAGS_save} ${LDFLAGS_ffmpeg}"
       AC_CHECK_HEADERS(ffmpeg/avcodec.h, [], [AC_MSG_ERROR([Missing header file ffmpeg/avcodec.h.])] )
+      AC_CHECK_HEADERS(ffmpeg/avformat.h)
+      AC_CHECK_HEADERS(ffmpeg/avutil.h)
       AC_CHECK_HEADERS(postproc/postprocess.h, [], [AC_MSG_ERROR([Missing header file postproc/postprocess.h.])] )
 
       AC_CHECK_LIB(avutil, av_add_i, [
         VLC_ADD_LDFLAGS([ffmpeg],[-lavutil])
         LDAVUTIL="-lavutil"])
 
+      AC_CHECK_LIB(postproc, pp_postprocess, [
+        VLC_ADD_LDFLAGS([ffmpeg],[-lpostproc])])
+
       AC_CHECK_LIB(avcodec, avcodec_init, [
         VLC_ADD_BUILTINS([ffmpeg])
-
-
         VLC_ADD_LDFLAGS([ffmpeg],[-lavcodec])
         if test "${enable_sout}" != "no"; then
             VLC_ADD_BUILTINS([stream_out_switcher])
         fi],
          [ AC_MSG_ERROR([Could not find ffmpeg on your system: you may get it from http://ffmpeg.sf.net/ (cvs version is recommended). Alternatively you can use --disable-ffmpeg to disable the ffmpeg plugins.]) ], [$LDAVUTIL])
+
+      
       AC_CHECK_LIB(avformat, av_open_input_stream, [
-        AC_DEFINE(HAVE_LIBAVFORMAT, 1,
-        [Define if you have ffmpeg's libavformat.])
         VLC_ADD_LDFLAGS([ffmpeg],[-lavformat -lz]) ], [], [-lavcodec -lz $LDAVUTIL])
       LDFLAGS="${LDFLAGS_save}"
       CPPFLAGS="${CPPFLAGS_save}"
@@ -2597,7 +2745,7 @@ then
     VLC_ADD_CPPFLAGS([ffmpegaltivec],[-I${real_ffmpeg_tree}/libavcodec -I${real_ffmpeg_tree}/libavformat])
 
     if test -f "${real_ffmpeg_tree}/libavformat/libavformat.a"; then
-      AC_DEFINE(HAVE_LIBAVFORMAT, 1, [Define if you have ffmpeg's libavformat.])
+      AC_DEFINE(HAVE_LIBAVFORMAT_TREE, 1, [Define if you have ffmpeg's libavformat.])
       VLC_ADD_LDFLAGS([ffmpegaltivec],[-L${real_ffmpeg_tree}/libavformat -lavformataltivec -lz])
       VLC_ADD_CPPFLAGS([ffmpegaltivec],[-I${real_ffmpeg_tree}/libavformat])
     fi
@@ -2739,7 +2887,7 @@ dnl
 dnl MP4 module
 dnl
 AC_CHECK_HEADERS(zlib.h, [
-  VLC_ADD_LDFLAGS([mp4 skins2 sap mkv],[-lz])
+  VLC_ADD_LDFLAGS([mp4 skins2 sap mkv gme],[-lz])
 ] )
 
 AC_CHECK_HEADERS(sysfs/libsysfs.h, [
@@ -2834,7 +2982,7 @@ dnl
 dnl DTS Coherent Acoustics decoder plugin
 dnl
 AC_ARG_ENABLE(dts,
-  [  --enable-dts            DTS Coherent Acoustics support with libdts (default enabled)])
+  [  --enable-dts            DTS Coherent Acoustics support with libdca (default enabled)])
 if test "${enable_dts}" != "no"; then
   AC_ARG_WITH(dts-tree,
     [    --with-dts-tree=PATH  libdts tree for static linking ],[],[])
@@ -3240,7 +3388,7 @@ AC_ARG_WITH(,[Video plugins:])
 
 dnl Check for DPMS
 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
-  CPPFLAGS="${CPPFLAGS_save} -I${x_includes}"
+  CPPFLAGS="${CPPFLAGS_save} ${X_CFLAGS}"
   AC_CHECK_HEADERS(X11/extensions/dpms.h, [
     AC_MSG_CHECKING(for DPMSInfo in X11/extensions/dpms.h)
     AC_EGREP_HEADER(DPMSInfo,X11/extensions/dpms.h,[
@@ -3265,11 +3413,11 @@ AC_ARG_ENABLE(x11,
 if test "${enable_x11}" != "no" &&
   (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
    test "${enable_x11}" = "yes"); then
-  CPPFLAGS="${CPPFLAGS_save} -I${x_includes}"
+  CPPFLAGS="${CPPFLAGS_save} ${X_FLAGS}"
   AC_CHECK_HEADERS(X11/Xlib.h, [
     VLC_ADD_PLUGINS([x11])
-    VLC_ADD_LDFLAGS([x11],[-L${x_libraries} -lX11 -lXext])
-    VLC_ADD_CPPFLAGS([x11],[-I${x_includes}])
+    VLC_ADD_LDFLAGS([x11],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext])
+    VLC_ADD_CPPFLAGS([x11],[${X_CFLAGS}])
   ])
   CPPFLAGS="${CPPFLAGS_save}"
 fi
@@ -3283,25 +3431,25 @@ AC_ARG_ENABLE(xvideo,
 if test "${enable_xvideo}" != "no" &&
   (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
    test "${enable_xvideo}" = "yes"); then
-  CPPFLAGS="${CPPFLAGS_save} -I${x_includes}"
+  CPPFLAGS="${CPPFLAGS_save} ${X_CFLAGS}"
   AC_CHECK_HEADERS(X11/extensions/Xv.h, [
-    CFLAGS="${CFLAGS_save} -L${x_libraries} -lX11 -lXext"
+    CFLAGS="${CFLAGS_save} ${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext"
     AC_CHECK_LIB(Xv,XvPutImage,[
       # If libXv.so is available, xvideo can be a plugin. Otherwise, we
       # test for libXv_pic.
-      if test -f /usr/X11R6/lib/libXv.so -o -f "${x_libraries}"/libXv.so; then
+      if test -f /usr/X11R6/lib/libXv.so -o -f /usr/lib/libXv.so -o -f "${x_libraries}"/libXv.so; then
         VLC_ADD_PLUGINS([xvideo])
-        VLC_ADD_CPPFLAGS([xvideo],[-I${x_includes}])
-        VLC_ADD_LDFLAGS([xvideo],[-L${x_libraries} -lX11 -lXext -lXv])
+        VLC_ADD_CPPFLAGS([xvideo],[${X_CFLAGS}])
+        VLC_ADD_LDFLAGS([xvideo],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext -lXv])
       else
         AC_CHECK_LIB(Xv_pic,XvPutImage,[
           VLC_ADD_PLUGINS([xvideo])
-          VLC_ADD_CPPFLAGS([xvideo],[-I${x_includes}])
-          VLC_ADD_LDFLAGS([xvideo],[-L${x_libraries} -lX11 -lXext -lXv_pic])
+          VLC_ADD_CPPFLAGS([xvideo],[${X_CFLAGS}])
+          VLC_ADD_LDFLAGS([xvideo],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext -lXv_pic])
         ],[
           VLC_ADD_BUILTINS([xvideo])
-          VLC_ADD_LDFLAGS([xvideo],[-L${x_libraries} -lX11 -lXext -lXv])
-          VLC_ADD_CPPFLAGS([xvideo],[-I${x_includes}])
+          VLC_ADD_LDFLAGS([xvideo],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext -lXv])
+          VLC_ADD_CPPFLAGS([xvideo],[${X_CFLAGS}])
         ])
       fi
     ])
@@ -3319,12 +3467,12 @@ AC_ARG_ENABLE(glx,
 if test "${enable_glx}" != "no" &&
   (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
    test "${enable_glx}" = "yes"); then
-  CPPFLAGS="${CPPFLAGS_save} -I${x_includes}"
+  CPPFLAGS="${CPPFLAGS_save} ${X_CFLAGS}"
   AC_CHECK_HEADERS(X11/Xlib.h, [
     AC_CHECK_HEADERS(GL/glx.h, [
       VLC_ADD_PLUGINS([glx])
-      VLC_ADD_LDFLAGS([glx],[-L${x_libraries} -lX11 -lXext -lGL -lGLU])
-      VLC_ADD_CPPFLAGS([glx],[-I${x_includes}])
+      VLC_ADD_LDFLAGS([glx],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext -lGL -lGLU])
+      VLC_ADD_CPPFLAGS([glx],[${X_CFLAGS}])
   ]) ])
   CPPFLAGS="${CPPFLAGS_save}"
 fi
@@ -3332,12 +3480,14 @@ fi
 dnl
 dnl  Check for the Xinerama extension
 dnl
-if test "${enable_xvideo}" != "no" &&
+AC_ARG_ENABLE(xinerama,
+  [  --enable-xinerama       Xinerama support (default enabled)])
+if test "${enable_xvideo}" != "no" && test "${enable_xinerama}" != "no" &&
   (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
    test "${enable_xvideo}" = "yes"); then
   ac_cv_have_xinerama="no"
-  CPPFLAGS="${CPPFLAGS_save} -I${x_includes}"
-  CFLAGS="${CFLAGS_save} -L${x_libraries} -lX11 -lXext"
+  CPPFLAGS="${CPPFLAGS_save} ${X_CFLAGS}"
+  CFLAGS="${CFLAGS_save} ${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext"
   AC_CHECK_HEADERS(X11/extensions/Xinerama.h,[
     AC_CHECK_LIB(Xinerama_pic, XineramaQueryExtension,[
       VLC_ADD_LDFLAGS([xvideo],[-lXinerama_pic])
@@ -3358,6 +3508,38 @@ if test "${enable_xvideo}" != "no" &&
   fi
   CFLAGS="${CFLAGS_save}"
   CPPFLAGS="${CPPFLAGS_save}"
+
+dnl
+dnl  Check for XF86VidMode extension
+dnl
+  ac_cv_have_xf86vidmode="no"
+  CPPFLAGS="${CPPFLAGS_save} ${X_CFLAGS}"
+  CFLAGS="${CFLAGS_save} ${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext"
+  AC_CHECK_HEADERS(X11/extensions/xf86vmode.h,[
+    AC_CHECK_LIB(Xxf86vm_pic, XF86VidModeGetViewPort,[
+      VLC_ADD_LDFLAGS([xvideo],[-lXxf86vm_pic])
+      VLC_ADD_LDFLAGS([x11],[-lXxf86vm_pic])
+      VLC_ADD_LDFLAGS([glx],[-lXxf86vm_pic])
+      ac_cv_have_xf86vidmode="yes"
+    ],[
+      AC_CHECK_LIB(Xxf86vm, XF86VidModeGetViewPort,[
+        VLC_ADD_LDFLAGS([xvideo],[-lXxf86vm])
+        VLC_ADD_LDFLAGS([x11],[-lXxf86vm])
+        VLC_ADD_LDFLAGS([glx],[-lXxf86vm])
+        ac_cv_have_xf86vidmode="yes"
+      ])
+    ])
+  ],[true],
+[#ifdef HAVE_X11_XLIB_H
+# include <X11/Xlib.h>
+#endif]
+   )
+  AS_IF([test "${ac_cv_have_xf86vidmode}" = "yes"],
+    [AC_DEFINE(HAVE_XF86VIDMODE, 1, [Define this if you have libXxf86vm installed])
+  ])
+  CFLAGS="${CFLAGS_save}"
+  CPPFLAGS="${CPPFLAGS_save}"
+
 fi
 
 dnl
@@ -3372,7 +3554,7 @@ if test "${enable_opengl}" != "no" &&
     AC_CHECK_HEADERS(GL/gl.h, [
       VLC_ADD_PLUGINS([opengl])
       if test "${SYS}" != "mingw32"; then
-        VLC_ADD_LDFLAGS([opengl],[-L${x_libraries} -lGL -lGLU])
+        VLC_ADD_LDFLAGS([opengl],[${X_LIBS} -lGL -lGLU])
       else
         VLC_ADD_LDFLAGS([opengl],[-lopengl32])
       fi
@@ -3799,16 +3981,24 @@ AC_ARG_ENABLE(glide,
   [  --enable-glide          Glide (3dfx) support (default disabled)])
 if test "${enable_glide}" = "yes"
 then
-  VLC_ADD_PLUGINS([glide])
-  VLC_ADD_LDFLAGS([glide],[-lglide2x -lm])
-  VLC_ADD_CPPFLAGS([glide],[-I/usr/include/glide])
+  CFLAGS_save="${CFLAGS}"
   AC_ARG_WITH(glide,
     [    --with-glide=PATH     path to libglide],
     [ if test "${with_glide}" != "no" -a -n "${with_glide}"
       then
         VLC_ADD_CPPFLAGS([glide],[-I${with_glide}/include])
         VLC_ADD_LDFLAGS([glide],[-L${with_glide}/lib])
-      fi ])
+        CFLAGS="$CFLAGS -I${with_glide}/include"
+    fi ])
+   CFLAGS="$CFLAGS -I/usr/include/glide"
+   AC_CHECK_HEADER(glide.h,[   
+      VLC_ADD_PLUGINS([glide])
+      VLC_ADD_LDFLAGS([glide],[-lglide2x -lm])
+      VLC_ADD_CPPFLAGS([glide],[-I/usr/include/glide])
+    ],[
+      AC_MSG_ERROR([You don't have libglide. Install it or do not use --enable-glide])
+     ])
+   CFAGS="${CFLAGS_save}"
 fi
 
 dnl
@@ -4021,7 +4211,7 @@ dnl  CyberLink for C++ UPnP stack
 dnl
 AC_ARG_ENABLE(cyberlink,
   [  --enable-cyberlink      CyberLink for C++ UPnP stack (default disabled)])
-AS_IF([test "${CXX}" != "" -a "${enable_cyberlink}" = "yes" || (test "${enable_cyberlink}" != "no")], [
+  AS_IF([test "${enable_cyberlink}" = "yes" ], [
   AC_ARG_WITH(cyberlink-tree,
     [    --with-cyberlink-tree=PATH CyberLink for C++ tree for static linking])
 
@@ -4040,8 +4230,8 @@ AS_IF([test "${CXX}" != "" -a "${enable_cyberlink}" = "yes" || (test "${enable_c
     CPPFLAGS_cyberlink="-I${real_cyberlink_tree}/include"
     CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_cyberlink}"
     AC_CHECK_HEADERS([cybergarage/upnp/MediaServer.h],
-      [ VLC_ADD_CXXFLAGS([upnp], [${CPPFLAGS_cyberlink}])
-        VLC_ADD_PLUGINS([upnp]) 
+      [ VLC_ADD_CXXFLAGS([upnp_cc], [${CPPFLAGS_cyberlink}])
+        VLC_ADD_PLUGINS([upnp_cc]) 
       ],[
         AC_MSG_ERROR([cannot find CyberLink for C++ headers])
       ])
@@ -4078,7 +4268,7 @@ class testclass : public SearchResponseListener, public MediaPlayer
       AS_IF([test "${LIBS_cclink}" == "no"],
         [AC_MSG_FAILURE([cannot find XML parser for CyberLink])])
       AC_MSG_RESULT([${LIBS_cclink}])
-      VLC_ADD_LDFLAGS([upnp], [${real_cyberlink_tree}/lib/unix/libclink.a -lpthread ${LIBS_cclink}])
+      VLC_ADD_LDFLAGS([upnp_cc], [${real_cyberlink_tree}/lib/unix/libclink.a -lpthread ${LIBS_cclink}])
     ], [
       AC_MSG_RESULT(no)
       AC_MSG_ERROR([cannot find ${real_cyberlink_tree}/lib/unix/libclink.a, make sure you compiled CyberLink for C++ in ${with_cyberlink_tree}])
@@ -4088,6 +4278,30 @@ class testclass : public SearchResponseListener, public MediaPlayer
   ])
 ])
 
+dnl
+dnl UPnP Plugin (Intel SDK)
+dnl
+AC_ARG_ENABLE(upnp,
+  [  --enable-upnp           Intel UPnP SDK (default auto)])
+
+VLC_ADD_CXXFLAGS([upnp_intel], [ ])
+AS_IF([test "x${enable_upnp}" != "xno"], [
+  AC_CHECK_LIB([upnp], [UpnpInit], [has_upnp="yes"], [has_upnp="no"], [-lpthread])
+  AS_IF([test "x${enable_upnp}" != "x" && test "${has_upnp}" == "no"], [
+    AC_MSG_ERROR([cannot find Intel UPnP SDK (libupnp)])
+  ])
+  AS_IF([test "${has_upnp}" == "yes"], [
+    VLC_ADD_LDFLAGS([upnp_intel], [-lupnp])
+  ])
+], [
+  has_upnp="no"
+])
+
+AS_IF([test "${has_upnp}" == "yes"], [
+  VLC_ADD_PLUGINS([upnp_intel])
+])
+
+
 dnl
 dnl  Interface plugins
 dnl
@@ -4133,9 +4347,9 @@ if test "${enable_skins2}" = "yes" ||
   else if test "${skins2_missing_lib}" = "no"; then
     VLC_ADD_PLUGINS([skins2])
     ALIASES="${ALIASES} svlc"
-    VLC_ADD_CPPFLAGS([skins2],[-Imodules/gui/skins2 -I${x_includes} -DX11_SKINS])
+    VLC_ADD_CPPFLAGS([skins2],[-Imodules/gui/skins2 ${X_CFLAGS} -DX11_SKINS])
     VLC_ADD_CXXFLAGS([skins2],[-O2 -fno-rtti])
-    VLC_ADD_LDFLAGS([skins2],[-L${x_libraries} -lXext -lX11])
+    VLC_ADD_LDFLAGS([skins2],[${X_LIBS} ${X_PRE_LIBS} -lXext -lX11])
   fi fi
 fi
 
@@ -4492,6 +4706,8 @@ AC_ARG_ENABLE(opie,
 dnl
 dnl  MacOS X module
 dnl
+ORIGCFLAGS=$CFLAGS
+CFLAGS="$CFLAGS -x objective-c"
 AC_ARG_ENABLE(macosx,
   [  --enable-macosx         MacOS X support (default enabled on MacOS X)],
   [if test "${enable_macosx}" = "yes"
@@ -4503,6 +4719,7 @@ AC_ARG_ENABLE(macosx,
      VLC_ADD_BUILTINS([macosx])
      VLC_ADD_LDFLAGS([macosx],[-framework IOKit -framework Cocoa -framework Carbon -framework QuickTime -lobjc -ObjC -framework OpenGL])
    )])
+CFLAGS=$ORIGCFLAGS
 
 dnl
 dnl  QNX RTOS module
@@ -4569,7 +4786,7 @@ then
   AC_CHECK_HEADERS(GL/gl.h, [
     VLC_ADD_PLUGINS([galaktos])
     if test "${SYS}" != "mingw32"; then
-      VLC_ADD_LDFLAGS([galaktos],[-L${x_libraries} -lGL -lGLU])
+      VLC_ADD_LDFLAGS([galaktos],[${X_LIBS} -lGL -lGLU])
     else
       VLC_ADD_LDFLAGS([galaktos],[-lopengl32])
     fi
@@ -4704,6 +4921,41 @@ AM_CONDITIONAL(ENABLE_CORBA, test "$enablecorba" = "true")
 
 AC_ARG_WITH(,[Misc options:])
 
+dnl
+dnl TLS/SSL
+dnl
+AC_ARG_ENABLE(gnutls,
+  [  --enable-gnutls         gnutls TLS/SSL support (default enabled)])
+
+AS_IF([test "${enable_gnutls}" != "no"], [
+  gcrypt_LIBS="-lgpg-error"
+  AS_IF([test "${SYS}" = "mingw32"], [
+    gcrypt_LIBS="${gcrypt_LIBS} -lws2_32"
+    VLC_ADD_LDFLAGS([gnutls],[-lws2_32])
+  ])
+
+  gnutls_LIBS="-lgcrypt -lz ${gcrypt_LIBS}"
+
+  AC_CHECK_HEADER(gcrypt.h, [
+    AC_CHECK_LIB(gcrypt, gcry_control, [
+      AC_CHECK_HEADER(gnutls/gnutls.h, [
+        AC_CHECK_LIB(gnutls, gnutls_certificate_verify_peers2,
+          [have_gnutls="yes"],[old_gnutls="yes"],[${gnutls_LIBS}])
+      ])
+    ],,[${gcrypt_LIBS}])
+  ])
+
+  AS_IF([test "${have_gnutls}" = "yes"], [
+    VLC_ADD_PLUGINS([gnutls])
+    VLC_ADD_LDFLAGS([gnutls], [-lgnutls ${gnutls_LIBS}])
+  ], [
+    AS_IF([test "${enable_gnutls}" = "yes"], [
+      AC_MSG_ERROR([gnutls not present or too old (version 1.0.17 required)])
+    ])
+  ])
+])
+
+
 dnl
 dnl  Endianness check, AC_C_BIGENDIAN doesn't work if we are cross-compiling
 dnl
@@ -4773,11 +5025,11 @@ AM_CONDITIONAL(LOADER, [test "${enable_loader}" = "yes"])
 AS_IF([test "${enable_loader}" = "yes"],
   [ VLC_ADD_PLUGINS([dmo quicktime])
     VLC_ADD_CPPFLAGS([dmo],[-I../../../@top_srcdir@/loader])
-    VLC_ADD_LDFLAGS([dmo],[../../../loader/libloader.a])
+    VLC_ADD_LDFLAGS([dmo],[../../../loader/libloader.la])
     VLC_ADD_CPPFLAGS([quicktime],[-I../../@top_srcdir@/loader])
-    VLC_ADD_LDFLAGS([quicktime],[../../loader/libloader.a])
+    VLC_ADD_LDFLAGS([quicktime],[../../loader/libloader.la])
     VLC_ADD_CPPFLAGS([realaudio],[-I../../@top_srcdir@/loader -DLOADER])
-    VLC_ADD_LDFLAGS([realaudio],[../../loader/libloader.a])
+    VLC_ADD_LDFLAGS([realaudio],[../../loader/libloader.la])
   ])
 
 dnl
@@ -4830,12 +5082,15 @@ then
     then
       AC_MSG_ERROR([Please install the Mozilla development tools, mozilla-config was not found.])
     else
-      if test "${SYS}" != "mingw32"; then
-        LDFLAGS="${LDFLAGS_save} -L${x_libraries}"
+      if ${MOZILLA_CONFIG} --defines | grep -q 'MOZ_X11=1'; then
+        LDFLAGS="${LDFLAGS_save} ${X_LIBS} ${X_PRE_LIBS}"
         AC_CHECK_LIB(Xt,XtStrings,
-         [VLC_ADD_LDFLAGS([mozilla],[-L${x_libraries} -lXt -lX11 -lSM -lICE])],
+         [
+            VLC_ADD_CPPFLAGS([mozilla],[${X_CFLAGS}])
+            VLC_ADD_LDFLAGS([mozilla],[${X_LIBS} ${X_PRE_LIBS} -lXt -lX11 -lSM -lICE])
+        ],
          [],
-         [[-L${x_libraries} -lX11 -lSM -lICE]
+         [[${X_LIBS} ${X_PRE_LIBS} -lX11 -lSM -lICE]
         ])
         LDFLAGS="${LDFLAGS_save}"
       fi
@@ -4846,6 +5101,7 @@ then
       CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_mozilla}"
       AC_CHECK_HEADERS(mozilla-config.h)
       CPPFLAGS="${CPPFLAGS_save}"
+      MOZILLA_SDK_PATH="`${MOZILLA_CONFIG} --prefix`"
       XPIDL_INCL="`${MOZILLA_CONFIG} --cflags plugin xpcom java` \
       `${MOZILLA_CONFIG} --idlflags plugin xpcom java` "
       xpidl_path="`${MOZILLA_CONFIG} --prefix`/bin"
@@ -4868,7 +5124,7 @@ then
       VLC_ADD_CPPFLAGS([mozilla],[-DXPCOM_GLUE -DHAVE_CPP_MODERN_SPECIALIZE_TEMPLATE_SYNTAX -I${real_mozilla_sdk} -I${real_mozilla_sdk}/include -I${real_mozilla_sdk}/embedstring/include -I${real_mozilla_sdk}/xpcom/include -I${real_mozilla_sdk}/nspr/include -I${real_mozilla_sdk}/string/include -I${real_mozilla_sdk}/plugin/include -I${real_mozilla_sdk}/java/include])
       VLC_ADD_LDFLAGS([mozilla],[-L${real_mozilla_sdk}/embedstring/bin -L${real_mozilla_sdk}/xpcom/bin -L${real_mozilla_sdk}/nspr/bin -L${real_mozilla_sdk}/string/bin -L${real_mozilla_sdk}/lib -lnspr4 -lplds4 -lplc4 -lxpcomglue])
       if test "${SYS}" = "mingw32"; then
-        LDFLAGS="${LDFLAGS_save} -L${x_libraries}"
+        LDFLAGS="${LDFLAGS_save}"
         dnl latest gecko sdk does not have embedstring
         if test -d "${real_mozilla_sdk}/embedstring/bin"
         then
@@ -4876,6 +5132,7 @@ then
         fi
       fi
   
+      MOZILLA_SDK_PATH="${real_mozilla_sdk}"
       XPIDL_INCL="-I${real_mozilla_sdk}${mozilla_sdk_xpcom}/idl"
       xpidl_path="${real_mozilla_sdk}${mozilla_sdk_xpcom}/bin"
   
@@ -4889,7 +5146,7 @@ then
   if test "${mozilla}" != "false"
   then
     build_pic=yes
-    AC_PATH_PROG(XPIDL, xpidl, no, ${xpidl_path} /usr/lib/mozilla)
+    AC_PATH_PROG(XPIDL, xpidl, no, ${xpidl_path}:/usr/lib/mozilla:/usr/lib64/mozilla)
     if test "${XPIDL}" = "no"; then
       AC_MSG_ERROR([Please install the Mozilla development tools, xpidl was not found.])
     fi
@@ -4898,13 +5155,13 @@ fi
 AM_CONDITIONAL(BUILD_MOZILLA,${mozilla})
 
 dnl
-dnl  Python bindings
+dnl  Mediacontrol Python bindings
 dnl
-AC_ARG_ENABLE(python-bindings,
-  [  --enable-python-bindings    Enable Python bindings (default disabled)])
+AC_ARG_ENABLE(mediacontrol-python-bindings,
+  [  --enable-mediacontrol-python-bindings    Enable Python bindings for MediaControl (default disabled)])
 dnl TODO: look for python dev headers
-AM_CONDITIONAL(BUILD_PYTHON, [test "${enable_python_bindings}" = "yes"])
-if test "${enable_python_bindings}" = "yes"
+AM_CONDITIONAL(BUILD_PYTHON, [test "${enable_mediacontrol_python_bindings}" = "yes"])
+if test "${enable_mediacontrol_python_bindings}" = "yes"
 then
   build_pic=yes
 fi
@@ -4940,6 +5197,16 @@ then
   #VLC_ADD_BUILTINS([${TESTS}])
 fi
 
+dnl
+dnl Microsoft Layer for Unicode for WIN9x/ME
+dnl
+if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"
+then
+    AC_CHECK_LIB(unicows, LoadUnicowsSymbol, [
+        VLC_ADD_LDFLAGS([vlc],[-Wl,--exclude-libs,libunicows.a -lunicows])
+    ])
+fi
+
 dnl
 dnl  gtk_main plugin
 dnl
@@ -5036,18 +5303,21 @@ AM_CONDITIONAL(HAVE_BUILTINS, ${builtin_support})
 dnl
 dnl Pic and shared libvlc stuff
 dnl
-AM_CONDITIONAL(BUILD_SHARED, [test "${shared_libvlc}" != "no"])
-AM_CONDITIONAL(BUILD_PIC, [test "${build_pic}" = "yes" -o "${shared_libvlc}" != "no"] )
-AS_IF([test "${shared_libvlc}" != "no"], [
+AS_IF([test "x${enable_shared_libvlc}" = "x"], [enable_shared_libvlc=no])
+AM_CONDITIONAL(BUILD_SHARED, [test "${enable_shared_libvlc}" != "no"])
+AS_IF([test "${enable_shared_libvlc}" != "no" || test "${enable_libtool}" != "no"], [
   AC_DEFINE(HAVE_SHARED_LIBVLC, 1, [Define to 1 if libvlc is built as a shared library.])
-])
+  FILE_LIBVLC_DLL="!define LIBVLC_DLL libvlc.dll"],
+  FILE_LIBVLC_DLL="" )
 
 pic=no
-AS_IF([test "${shared_libvlc}" != "no" -o "${build_pic}" = "yes"], [pic=pic])
+AS_IF([test "${build_pic}" = "yes"], [pic=pic])
 AS_IF([test "${SYS}" = "mingw32"], [pic=no])
 AS_IF([test "${pic}" = "no"], [pic=])
 AC_SUBST(pic)
 
+AM_CONDITIONAL(BUILD_PIC, [test "${build_pic}" = "yes" && test "x${pic}" = "xpic"])
+
 dnl Import conditional variables generated by bootstrap
 VLC_CONDITIONALS
 
@@ -5055,7 +5325,7 @@ dnl
 dnl  Stuff used by the program
 dnl
 AC_DEFINE_UNQUOTED(VERSION_MESSAGE, "${VERSION} ${CODENAME}", [Simple version string])
-AC_DEFINE_UNQUOTED(COPYRIGHT_MESSAGE, "VLC media player - version ${VERSION} ${CODENAME} - (c) 1996-2005 the VideoLAN team", [Copyright string])
+AC_DEFINE_UNQUOTED(COPYRIGHT_MESSAGE, "VLC media player - version ${VERSION} ${CODENAME} - (c) 1996-2006 the VideoLAN team", [Copyright string])
 AC_DEFINE_UNQUOTED(CONFIGURE_LINE, "${CONFIGURE_LINE}", [The ./configure command line])
 AC_DEFINE_UNQUOTED(PACKAGE_VERSION_MAJOR,"${VERSION_MAJOR}", [version major number])
 AC_DEFINE_UNQUOTED(PACKAGE_VERSION_MINOR,"${VERSION_MINOR}", [version minor number])
@@ -5074,8 +5344,8 @@ dnl VLC_SYMBOL="`echo ${VERSION} | sed -e 'y/.-+/___/'`"
 dnl AC_DEFINE_UNQUOTED(MODULE_SUFFIX, "__${VLC_SYMBOL}", [String suffix for module functions])
 dnl AC_DEFINE_UNQUOTED(MODULE_SYMBOL, ${VLC_SYMBOL}, [Symbol suffix for module functions])
 
-dnl New definitions with value matching 0.8.4 release
-module_symbol="0_8_4"
+dnl New definitions with value matching 0.8.5 release
+module_symbol="0_8_5"
 AC_DEFINE_UNQUOTED(MODULE_SUFFIX, "__${module_symbol}", [String suffix for module functions])
 AC_DEFINE_UNQUOTED(MODULE_SYMBOL, $module_symbol, [Symbol suffix for module functions])
 VLC_ENTRY="vlc_entry__${module_symbol}"
@@ -5108,12 +5378,14 @@ AC_SUBST(ALIASES)
 AC_SUBST(ASM)
 AC_SUBST(MOC)
 AC_SUBST(WINDRES)
+AC_SUBST(MOZILLA_SDK_PATH)
 AC_SUBST(XPIDL)
 AC_SUBST(XPIDL_INCL)
 AC_SUBST(LIBEXT)
 AC_SUBST(INCLUDES)
 AC_SUBST(ALL_LINGUAS)
 AC_SUBST(MACOSX_DEPLOYMENT_TARGET)
+AC_SUBST(FILE_LIBVLC_DLL)
 
 dnl Import substitutions generated by bootstrap
 VLC_SUBSTS
@@ -5122,23 +5394,24 @@ dnl Create vlc-config.in
 VLC_OUTPUT_VLC_CONFIG_IN
 
 AC_CONFIG_FILES([
+  vlc.win32.nsi
   Makefile
   activex/Makefile
   activex/axvlc.inf
   bindings/Makefile
   bindings/java/Makefile
-  bindings/python/Makefile
+  bindings/mediacontrol-python/Makefile
   debian/Makefile
   doc/Makefile
   intl/Makefile
   ipkg/Makefile
-  lib/Makefile
   loader/Makefile
   modules/Makefile
   mozilla/Makefile
   m4/Makefile
   po/Makefile.in
   share/Makefile
+  src/Makefile
 ])
 
 AC_CONFIG_FILES([
@@ -5193,6 +5466,7 @@ AC_CONFIG_FILES([
   modules/misc/xml/Makefile
   modules/mux/Makefile
   modules/mux/mpeg/Makefile
+  modules/mux/rtp/Makefile
   modules/packetizer/Makefile
   modules/services_discovery/Makefile
   modules/stream_out/Makefile
@@ -5226,7 +5500,9 @@ dnl for a in `./vlc-config --target plugin` ; do echo $a; done | sed -e 's,modul
 dnl Shortcut to nice compile message
 rm -f compile
 echo '#! /bin/sh' >compile
-echo "PATH=$PATH LANG=C make \$* 2>&1| ${srcdir}/extras/make.pl" >>compile
+
+echo "PATH=$PATH LANG=C make \$* 2>&1| \\" >> compile
+echo '`sed -ne "s/^top_srcdir *= *//p" < Makefile`/extras/make.pl' >> compile
 chmod a+x compile
 
 printf "