]> git.sesse.net Git - vlc/blobdiff - configure.ac
demux/mp4: bug fix in trun atom parsing
[vlc] / configure.ac
index c3b0d7386e4d270519b814d2c18cdba114c76223..aa5cc39a8ae43dc1c096b46f06715a8b8cf5929a 100644 (file)
@@ -2,12 +2,12 @@ dnl Autoconf settings for vlc
 
 AC_COPYRIGHT([Copyright 2002-2011 the VideoLAN team])
 
-AC_INIT(vlc, 1.2.0-git)
+AC_INIT(vlc, 1.2.0-pre2)
 VERSION_MAJOR=1
 VERSION_MINOR=2
 VERSION_REVISION=0
 VERSION_EXTRA=0
-VERSION_DEV=git
+VERSION_DEV=pre1
 
 PKGDIR="vlc"
 AC_SUBST(PKGDIR)
@@ -70,12 +70,8 @@ AC_PROG_MAKE_SET
 AC_PROG_INSTALL
 AM_PROG_AS
 
-dnl Find the right ranlib, even when cross-compiling
-AC_CHECK_TOOL(RANLIB, ranlib, :)
-AC_CHECK_TOOL(STRIP, strip, :)
-AC_CHECK_TOOL(AR, ar, :)
-AC_CHECK_TOOL(LD, ld, :)
-AC_CHECK_TOOL(DLLTOOL, dlltool, :)
+AC_ARG_VAR([DESKTOP_FILE_VALIDATE], [Validator for desktop entry files])
+AC_CHECK_PROGS(DESKTOP_FILE_VALIDATE, [${DESKTOP_FILE_VALIDATE} desktop-file-validate], :)
 
 dnl Check for compiler properties
 AC_C_CONST
@@ -100,86 +96,6 @@ AS_IF([test -n "${with_binary_version}"],[
          [Binary specific version])
 ])
 
-dnl
-dnl  Check for the contrib directory
-dnl
-AC_ARG_WITH(contrib,
-  [AS_HELP_STRING([--with-contrib[=DIR]],
-    [search for 3rd party libraries in DIR/include and DIR/lib])
-])
-AC_MSG_CHECKING([for 3rd party libraries path])
-AS_IF([test -z "${with_contrib}" || test "${with_contrib}" = "yes"], [
-  CONTRIB_DIR="${srcdir}/contrib/${host}"
-  AS_IF([test ! -d "${CONTRIB_DIR}"], [
-    echo "${CONTRIB_DIR} not found" >&AS_MESSAGE_LOG_FD
-    CONTRIB_DIR="${srcdir}/contrib/`$CC -dumpmachine`"
-    AS_IF([test ! -d "${CONTRIB_DIR}"], [
-      echo "${CONTRIB_DIR} not found" >&AS_MESSAGE_LOG_FD
-      CONTRIB_DIR="${srcdir}/extras/contrib/hosts/${host}"
-      AS_IF([test ! -d "${CONTRIB_DIR}"], [
-        echo "${CONTRIB_DIR} not found" >&AS_MESSAGE_LOG_FD
-        CONTRIB_DIR="${srcdir}/extras/contrib/hosts/`$CC -dumpmachine`"
-        AS_IF([test ! -d "${CONTRIB_DIR}"], [
-          echo "${CONTRIB_DIR} not found" >&AS_MESSAGE_LOG_FD
-          CONTRIB_DIR=""
-          AC_MSG_RESULT([not found])
-        ])
-      ])
-    ])
-  ])
-], [
-  AS_IF([test "${with_contrib}" != "no"], [
-    CONTRIB_DIR="${with_contrib}"
-  ], [
-    CONTRIB_DIR=""
-    AC_MSG_RESULT([disabled])
-  ])
-])
-AS_IF([test -n "${CONTRIB_DIR}"], [
-  AS_IF([test -d "${CONTRIB_DIR}/lib"],[
-    CONTRIB_DIR=`cd "${CONTRIB_DIR}" && pwd`
-  ], [
-    echo "${CONTRIB_DIR}/lib not found" >&AS_MESSAGE_LOG_FD
-    CONTRIB_DIR=""
-    AC_MSG_RESULT([not usable])
-  ])
-
-])
-AS_IF([test -n "${CONTRIB_DIR}"], [
-  AC_MSG_RESULT([${CONTRIB_DIR}])
-  export PATH=${CONTRIB_DIR}/bin:$PATH
-  CPPFLAGS="${CPPFLAGS} -I${CONTRIB_DIR}/include"
-  CPPFLAGS_save="${CPPFLAGS_save} -I${CONTRIB_DIR}/include"
-  CFLAGS="${CFLAGS} -I${CONTRIB_DIR}/include"
-  CFLAGS_save="${CFLAGS_save} -I${CONTRIB_DIR}/include"
-  CXXFLAGS="${CXXFLAGS} -I${CONTRIB_DIR}/include"
-  CXXFLAGS_save="${CXXFLAGS_save} -I${CONTRIB_DIR}/include"
-  OBJCFLAGS="${OBJCFLAGS} -I${CONTRIB_DIR}/include"
-  OBJCFLAGS_save="${OBJCFLAGS_save} -I${CONTRIB_DIR}/include"
-  AS_IF([test "$build" = "$host" -o "$PKG_CONFIG_LIBDIR"], [
-    export PKG_CONFIG_PATH="${CONTRIB_DIR}/lib/pkgconfig:$PKG_CONFIG_PATH"
-  ], [
-    export PKG_CONFIG_LIBDIR="${CONTRIB_DIR}/lib/pkgconfig"
-  ])
-  LDFLAGS="${LDFLAGS} -L${CONTRIB_DIR}/lib"
-  LDFLAGS_save="${LDFLAGS_save} -L${CONTRIB_DIR}/lib"
-
-  AS_IF([test "${SYS}" = "darwin"], [
-    export LD_LIBRARY_PATH="${CONTRIB_DIR}/lib:$LD_LIBRARY_PATH"
-    export DYLD_LIBRARY_PATH="${CONTRIB_DIR}/lib:$DYLD_LIBRARY_PATH"
-  ])
-], [
-  AS_IF([test -n "${with_contrib}" && test "${with_contrib}" != "no"], [
-    AC_MSG_ERROR([Third party libraries not found!])
-  ])
-])
-AC_SUBST(CONTRIB_DIR)
-
-dnl
-dnl  Set default values
-dnl
-LDFLAGS_vlc="${LDFLAGS}"
-
 dnl
 dnl  Check the operating system
 dnl
@@ -244,63 +160,20 @@ case "${host_os}" in
     VLC_ADD_LIBS([avcodec avformat access_avio swscale postproc i420_rgb_mmx x264],[-Wl,-read_only_relocs,suppress])
     VLC_ADD_CFLAGS([motion],[-fconstant-cfstrings])
     VLC_ADD_LIBS([libvlccore],[-Wl,-framework,CoreFoundation])
-    AC_ARG_ENABLE(macosx-defaults,
-      AS_HELP_STRING([--enable-macosx-defaults],[Build the default configuration on Mac OS X (default enabled)]))
-    if test "x${enable_macosx_defaults}" != "xno"
-    then
-        echo ""
-        echo "Building with Mac OS X defaults:"
-        build_dir=`pwd`
-        echo "  Assuming --prefix=${build_dir}/vlc_install_dir"
-        ac_default_prefix="${build_dir}/vlc_install_dir"
-        enable_faad="yes"
-        echo "  Assuming --enable-faad"
-        enable_flac="yes"
-        echo "  Assuming --enable-flac"
-        enable_theora="yes"
-        echo "  Assuming --enable-theora"
-        enable_shout="yes"
-        echo "  Assuming --enable-shout"
-        enable_vcdx="yes"
-        echo "  Assuming --enable-vcdx"
-        enable_caca="yes"
-        echo "  Assuming --enable-caca"
-        enable_ncurses="yes"
-        echo "  Assuming --enable-ncurses"
-        enable_twolame="yes"
-        echo "  Assuming --enable-twolame"
-        enable_realrtsp="yes"
-        echo "  Assuming --enable-realrtsp"
-        enable_libass="yes"
-        echo "  Assuming --enable-libass"
-
-        enable_skins2="no"
-        echo "  Assuming --disable-skins2"
-        enable_xcb="no"
-        echo "  Assuming --disable-xcb"
-    fi
+
     dnl
     dnl  Check for Mac OS X SDK settings
     dnl
     AC_ARG_WITH(macosx-sdk,
       [AS_HELP_STRING([--with-macosx-sdk=DIR],
         [compile using the SDK in DIR])])
-    if test "${with_macosx_sdk}" != "" ; then
-        CPP="${CPP} -isysroot ${with_macosx_sdk}"
-        CC="${CC} -isysroot ${with_macosx_sdk}"
-        CXX="${CXX} -isysroot ${with_macosx_sdk}"
-        OBJC="${OBJC} -isysroot ${with_macosx_sdk}"
-        LD="${LD} -syslibroot ${with_macosx_sdk}"
-    else
-        echo "  No desired SDK version given, falling back to 10.5"
-        CPP="${CPP} -isysroot /Developer/SDKs/MacOSX10.5.sdk"
-        CC="${CC} -isysroot /Developer/SDKs/MacOSX10.5.sdk"
-        CXX="${CXX} -isysroot /Developer/SDKs/MacOSX10.5.sdk"
-        OBJC="${OBJC} -isysroot /Developer/SDKs/MacOSX10.5.sdk"
-        LD="${LD} -syslibroot /Developer/SDKs/MacOSX10.5.sdk"
-        with_macosx_version_min="10.5"
-        echo "  Assuming --with-macosx-version-min=10.5"
-    fi
+    test "${with_macosx_sdk}" = "" && with_macosx_sdk=/Developer/SDKs/MacOSX10.5.sdk
+    ! test -d "${with_macosx_sdk}" && AC_MSG_ERROR([SDK "${with_macosx_sdk}" not found])
+    CPP="${CPP} -isysroot ${with_macosx_sdk}"
+    CC="${CC} -isysroot ${with_macosx_sdk}"
+    CXX="${CXX} -isysroot ${with_macosx_sdk}"
+    OBJC="${OBJC} -isysroot ${with_macosx_sdk}"
+    LD="${LD} -syslibroot ${with_macosx_sdk}"
     AC_ARG_WITH(macosx-version-min,
       [AS_HELP_STRING([--with-macosx-version-min=VERSION],
         [compile for MacOS X VERSION and above])])
@@ -347,15 +220,6 @@ case "${host_os}" in
         VLC_ADD_LDFLAGS([vlc],[-mwindows])
         VLC_ADD_LIBS([win32text],[-lgdi32])
         VLC_ADD_LIBS([cdda vcdx sdl_image vout_sdl],[-lwinmm])
-        dnl
-        dnl DEP and ASLR options
-        dnl
-        AC_ARG_WITH(peflags,
-          [AS_HELP_STRING([--with-peflags],
-            [use peflags (default enabled on Windows)])])
-        if test "${with_peflags}" != "no" ; then
-          AC_PATH_TOOL(PEFLAGS, peflags, :)
-        fi
         AC_CHECK_PROGS(U2D, [unix2dos todos], unix2dos)
         ac_default_prefix="`pwd`/_win32"
         DESTDIR="`pwd`/_win32/"
@@ -364,7 +228,7 @@ case "${host_os}" in
         dnl NSIS Installer prefix and WIN64
         dnl
         case "${host}" in
-            amd64*|i686-w64*|x86_64*)
+            amd64*|x86_64*)
                 HAVE_WIN64="1"
                 PROGRAMFILES="PROGRAMFILES64"
             ;;
@@ -409,10 +273,84 @@ AM_CONDITIONAL(HAVE_WIN32,   test "${SYS}" = "mingw32")
 AM_CONDITIONAL(HAVE_WIN64,   test "${HAVE_WIN64}" = "1")
 AM_CONDITIONAL(HAVE_WINCE,   test "${SYS}" = "mingwce")
 AM_CONDITIONAL(HAVE_SYMBIAN, test "${SYS}" = "symbian")
-AM_CONDITIONAL(USE_PEFLAGS,  test "${with_peflags}" = "yes")
 
 dnl
-dnl Sadly autoconf doesn't think about testing foo.exe when ask to test
+dnl  Check for the contrib directory
+dnl
+AC_ARG_WITH(contrib,
+  [AS_HELP_STRING([--with-contrib[=DIR]],
+    [search for 3rd party libraries in DIR/include and DIR/lib])
+])
+AC_MSG_CHECKING([for 3rd party libraries path])
+AS_IF([test -z "${with_contrib}" || test "${with_contrib}" = "yes"], [
+  CONTRIB_DIR="${srcdir}/contrib/${host}"
+  AS_IF([test ! -d "${CONTRIB_DIR}"], [
+    echo "${CONTRIB_DIR} not found" >&AS_MESSAGE_LOG_FD
+    CONTRIB_DIR="${srcdir}/contrib/`$CC -dumpmachine`"
+    AS_IF([test ! -d "${CONTRIB_DIR}"], [
+      echo "${CONTRIB_DIR} not found" >&AS_MESSAGE_LOG_FD
+      CONTRIB_DIR="${srcdir}/extras/contrib/hosts/${host}"
+      AS_IF([test ! -d "${CONTRIB_DIR}"], [
+        echo "${CONTRIB_DIR} not found" >&AS_MESSAGE_LOG_FD
+        CONTRIB_DIR="${srcdir}/extras/contrib/hosts/`$CC -dumpmachine`"
+        AS_IF([test ! -d "${CONTRIB_DIR}"], [
+          echo "${CONTRIB_DIR} not found" >&AS_MESSAGE_LOG_FD
+          CONTRIB_DIR=""
+          AC_MSG_RESULT([not found])
+        ])
+      ])
+    ])
+  ])
+], [
+  AS_IF([test "${with_contrib}" != "no"], [
+    CONTRIB_DIR="${with_contrib}"
+  ], [
+    CONTRIB_DIR=""
+    AC_MSG_RESULT([disabled])
+  ])
+])
+AS_IF([test -n "${CONTRIB_DIR}"], [
+  AS_IF([test -d "${CONTRIB_DIR}/lib"],[
+    CONTRIB_DIR=`cd "${CONTRIB_DIR}" && pwd`
+  ], [
+    echo "${CONTRIB_DIR}/lib not found" >&AS_MESSAGE_LOG_FD
+    CONTRIB_DIR=""
+    AC_MSG_RESULT([not usable])
+  ])
+
+])
+AS_IF([test -n "${CONTRIB_DIR}"], [
+  AC_MSG_RESULT([${CONTRIB_DIR}])
+  export PATH=${CONTRIB_DIR}/bin:$PATH
+  CPPFLAGS="${CPPFLAGS} -I${CONTRIB_DIR}/include"
+  CPPFLAGS_save="${CPPFLAGS_save} -I${CONTRIB_DIR}/include"
+  CFLAGS="${CFLAGS} -I${CONTRIB_DIR}/include"
+  CFLAGS_save="${CFLAGS_save} -I${CONTRIB_DIR}/include"
+  CXXFLAGS="${CXXFLAGS} -I${CONTRIB_DIR}/include"
+  CXXFLAGS_save="${CXXFLAGS_save} -I${CONTRIB_DIR}/include"
+  OBJCFLAGS="${OBJCFLAGS} -I${CONTRIB_DIR}/include"
+  OBJCFLAGS_save="${OBJCFLAGS_save} -I${CONTRIB_DIR}/include"
+  AS_IF([test "$build" = "$host" -o "$PKG_CONFIG_LIBDIR"], [
+    export PKG_CONFIG_PATH="${CONTRIB_DIR}/lib/pkgconfig:$PKG_CONFIG_PATH"
+  ], [
+    export PKG_CONFIG_LIBDIR="${CONTRIB_DIR}/lib/pkgconfig"
+  ])
+  LDFLAGS="${LDFLAGS} -L${CONTRIB_DIR}/lib"
+  LDFLAGS_save="${LDFLAGS_save} -L${CONTRIB_DIR}/lib"
+
+  AS_IF([test "${SYS}" = "darwin"], [
+    export LD_LIBRARY_PATH="${CONTRIB_DIR}/lib:$LD_LIBRARY_PATH"
+    export DYLD_LIBRARY_PATH="${CONTRIB_DIR}/lib:$DYLD_LIBRARY_PATH"
+  ])
+], [
+  AS_IF([test -n "${with_contrib}" && test "${with_contrib}" != "no"], [
+    AC_MSG_ERROR([Third party libraries not found!])
+  ])
+])
+AC_SUBST(CONTRIB_DIR)
+
+dnl
+dnl Sadly autoconf does not think about testing foo.exe when ask to test
 dnl for program foo on win32
 
 case "${build_os}" in
@@ -563,12 +501,12 @@ need_libc=false
 dnl Check for usual libc functions
 AC_CHECK_DECLS([nanosleep],,,[#include <time.h>])
 AC_CHECK_FUNCS([daemon fcntl fstatvfs fork getenv getpwuid_r if_nameindex if_nametoindex isatty lstat memalign mmap openat pread posix_fadvise posix_madvise setlocale stricmp strnicmp uselocale])
-AC_REPLACE_FUNCS([asprintf atof atoll dirfd fdopendir flockfile fsync getdelim getpid gmtime_r lldiv localtime_r nrand48 rewind setenv strcasecmp strcasestr strdup strlcpy strncasecmp strndup strnlen strsep strtof strtok_r strtoll swab tdestroy vasprintf])
+AC_REPLACE_FUNCS([asprintf atof atoll dirfd fdopendir flockfile fsync getdelim getpid gmtime_r inet_pton lldiv localtime_r nrand48 rewind setenv strcasecmp strcasestr strdup strlcpy strncasecmp strndup strnlen strsep strtof strtok_r strtoll swab tdestroy vasprintf])
 AC_CHECK_FUNCS(fdatasync,,
   [AC_DEFINE(fdatasync, fsync, [Alias fdatasync() to fsync() if missing.])
 ])
 
-# Windows CE doesn't have strcoll()
+# Windows CE does not have strcoll()
 AC_FUNC_STRCOLL
 
 dnl Check for non-standard system calls
@@ -580,7 +518,7 @@ dnl Check for poll
 AC_SEARCH_LIBS(poll, [poll], [
   AC_DEFINE(HAVE_POLL, 1, [Define to 1 if the OS has poll().])
 ], [
-  AS_IF([test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"], [
+  AS_IF([test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" -a "${SYS}" != "os2"], [
     AC_MSG_ERROR([poll() is required.])
   ])
 ])
@@ -612,7 +550,7 @@ AC_SEARCH_LIBS(connect, [socket], [
 ])
 LIBS="$LIBS_save"
 AS_IF([test -n "$SOCKET_LIBS"], [
-  VLC_ADD_LIBS([access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp access_output_shout sap stream_out_select stream_out_standard stream_out_rtp stream_out_raop vod_rtsp access_realrtsp rtp oldrc netsync gnutls growl_udp flac ts audioscrobbler lua remoteosd zvbi audiobargraph_a netsync],[${SOCKET_LIBS}])
+  VLC_ADD_LIBS([access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp access_output_shout sap stream_out_select stream_out_standard stream_out_rtp stream_out_raop vod_rtsp access_realrtsp rtp oldrc netsync gnutls flac ts audioscrobbler lua remoteosd zvbi audiobargraph_a netsync],[${SOCKET_LIBS}])
 ])
 AC_SUBST(SOCKET_LIBS)
 
@@ -660,12 +598,6 @@ LIBS_save="${LIBS}"
 AC_SEARCH_LIBS([getaddrinfo], [nsl],,, [${SOCKET_LIBS}])
 LIBS="${LIBS_save}"
 
-AC_CHECK_FUNCS(inet_aton,,[
-  AC_CHECK_LIB(resolv,inet_aton,[
-    VLC_ADD_LIBS([libvlccore],[-lresolv])
-  ])
-])
-
 dnl FreeBSD has a gnugetopt library for this:
 GNUGETOPT_LIBS=""
 AC_CHECK_FUNC(getopt_long,, [
@@ -676,7 +608,7 @@ AC_CHECK_FUNC(getopt_long,, [
 AC_SUBST(GNUGETOPT_LIBS)
 
 AC_CHECK_LIB(m,cos,[
-  VLC_ADD_LIBS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom visual panoramix rotate noise grain scene kate flac lua chorus_flanger freetype avcodec avformat access_avio swscale postproc i420_rgb faad twolame equalizer spatializer param_eq samplerate freetype mod mpc dmo quicktime realvideo qt4 compressor headphone_channel_mixer normvol audiobargraph_a speex mono colorthres extract ball access_imem hotkeys mosaic gaussianblur dbus x264],[-lm])
+  VLC_ADD_LIBS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom visual panoramix rotate noise grain scene kate flac lua chorus_flanger freetype avcodec avformat access_avio swscale postproc i420_rgb faad twolame equalizer spatializer param_eq samplerate freetype mod mpc dmo quicktime realvideo qt4 compressor headphone_channel_mixer normvol audiobargraph_a speex mono colorthres extract ball access_imem hotkeys mosaic gaussianblur dbus x264 hqdn3d],[-lm])
   LIBM="-lm"
 ], [
   LIBM=""
@@ -769,7 +701,7 @@ dnl Check for headers
 AC_CHECK_HEADERS([search.h])
 AC_CHECK_HEADERS(getopt.h strings.h locale.h xlocale.h)
 AC_CHECK_HEADERS(fcntl.h sys/time.h sys/ioctl.h sys/stat.h)
-AC_CHECK_HEADERS([arpa/inet.h netinet/in.h netinet/udplite.h sys/eventfd.h])
+AC_CHECK_HEADERS([arpa/inet.h netinet/udplite.h sys/eventfd.h])
 AC_CHECK_HEADERS([net/if.h], [], [],
   [
     #include <sys/types.h>
@@ -805,9 +737,9 @@ AC_ARG_VAR(PKG_CONFIG_PATH,
        [Paths where to find .pc not at the default location])
 PKG_PROG_PKG_CONFIG()
 
-dnl On some OS we need static linking 
+dnl On some OS we need static linking
 AS_IF([test -n "${PKG_CONFIG}" ],[
-    AS_IF([test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce" -o "${SYS}" = "darwin" ],[
+    AS_IF([test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce" -o "${SYS}" = "darwin" -o "${SYS}" = "os2" ],[
         PKG_CONFIG="${PKG_CONFIG} --static"
     ])
 ])
@@ -822,7 +754,7 @@ if test "${have_zlib}" = "yes"
 then
   VLC_ADD_LIBS([access_http mp4 skins2 sap mkv unzip zip],[-lz])
   PKG_CHECK_MODULES([MINIZIP], [minizip] , [ have_minizip=yes ], [
-    AC_CHECK_HEADERS([unzip.h], [ 
+    AC_CHECK_HEADERS([unzip.h], [
       have_minizip=yes
       MINIZIP_LIBS="-lminizip -lz"
     ], [
@@ -841,7 +773,7 @@ dnl Manual switch for UTF-8
 AC_ARG_ENABLE(non-utf8,
   [AS_HELP_STRING([--enable-non-utf8],
     [support legacy non-UTF-8 systems (default disabled)])],, [
-  AS_IF([test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"], [
+  AS_IF([test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce" -o "${SYS}" = "os2"], [
     enable_non_utf8="no"
   ])
 ])
@@ -860,7 +792,7 @@ case "${SYS}" in
 if test "${enable_dbus}" != "no" -a "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
 then
   dnl api stable dbus
-  PKG_CHECK_MODULES(DBUS, dbus-1 >= 1.0.0,
+  PKG_CHECK_MODULES(DBUS, [dbus-1 >= 1.0.0],
     [ AC_DEFINE( HAVE_DBUS, 1, [Define if you have the D-BUS library] )
       VLC_ADD_LIBS([libvlccore],[$DBUS_LIBS])
       VLC_ADD_CFLAGS([libvlccore],[$DBUS_CFLAGS])
@@ -887,7 +819,7 @@ then
         VLC_ADD_LIBS([inhibit],[$DBUS_LIBS])
         VLC_ADD_CFLAGS([inhibit],[$DBUS_CFLAGS])
     ],
-    [AC_MSG_ERROR([Couldn't find DBus >= 1.0.0, install libdbus-dev ?])]
+    [AC_MSG_ERROR([${DBUS_PKG_ERRORS}.])]
   )
 fi
 ;;
@@ -996,9 +928,6 @@ AC_ARG_ENABLE(optimizations,
   [AS_HELP_STRING([--disable-optimizations],
     [disable compiler optimizations (default enabled)])],,
   [enable_optimizations="yes"])
-AS_IF([test "${enable_optimizations}" != "no"], [
-  enable_optimizations="speed"
-])
 
 dnl Check for various optimization flags
 AS_IF([test "${enable_optimizations}" != "no"], [
@@ -1084,15 +1013,9 @@ AS_IF([test "${enable_optimizations}" != "no"], [
     ])
     AS_IF([test "${ac_cv_c_omit_frame_pointer}" != "no"], [
       VLC_RESTORE_FLAGS
-      AS_IF([test "${SYS}" != "darwin"], [
         CFLAGS="${CFLAGS} -fomit-frame-pointer"
         CXXFLAGS="${CXXFLAGS} -fomit-frame-pointer"
-      ], [
-        dnl On darwin we explicitely disable it.
-        CFLAGS="${CFLAGS} -fno-omit-frame-pointer"
-        CXXFLAGS="${CXXFLAGS} -fno-omit-frame-pointer"
-        OBJCFLAGS="${OBJCFLAGS} -fno-omit-frame-pointer"
-      ])
+        OBJCFLAGS="${OBJCFLAGS} -fomit-frame-pointer"
       VLC_SAVE_FLAGS
     ])
   ])
@@ -1164,7 +1087,9 @@ ALIASES="${ALIASES} cvlc rvlc"
 dnl
 dnl Some plugins aren't useful on some platforms
 dnl
-if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
+if test "${SYS}" = "os2"; then
+    VLC_ADD_PLUGIN([dynamicoverlay])
+elif test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
     VLC_ADD_PLUGIN([dynamicoverlay access_shm])
 elif test "${SYS}" != "mingwce"; then
     VLC_ADD_PLUGIN([access_smb dmo globalhotkeys])
@@ -1198,33 +1123,45 @@ have_mmxext="no"
 AS_IF([test "${enable_mmx}" != "no"], [
   ARCH="${ARCH} mmx"
 
-  AC_CACHE_CHECK([if $CC groks MMX intrinsics],
-    [ac_cv_c_mmx_intrinsics],
-    [CFLAGS="${CFLAGS_save} -O -mmmx"
-     AC_TRY_COMPILE([#include <mmintrin.h>
-                     #include <stdint.h>
-                     uint64_t frobzor;],
-                    [__m64 a, b, c;
-                     a = b = c = (__m64)frobzor;
-                     a = _mm_slli_pi16(a, 3);
-                     a = _mm_adds_pi16(a, b);
-                     c = _mm_srli_pi16(c, 8);
-                     c = _mm_slli_pi16(c, 3);
-                     b = _mm_adds_pi16(b, c);
-                     a = _mm_unpacklo_pi8(a, b);
-                     frobzor = (uint64_t)a;],
-                    [ac_cv_c_mmx_intrinsics=yes],
-                    [ac_cv_c_mmx_intrinsics=no])])
+  AC_CACHE_CHECK([if $CC groks MMX intrinsics], [ac_cv_c_mmx_intrinsics], [
+    CFLAGS="${CFLAGS_save} -O -mmmx"
+    AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
+[#include <mmintrin.h>
+#include <stdint.h>
+uint64_t frobzor;]], [
+[__m64 a, b, c;
+a = b = c = (__m64)frobzor;
+a = _mm_slli_pi16(a, 3);
+a = _mm_adds_pi16(a, b);
+c = _mm_srli_pi16(c, 8);
+c = _mm_slli_pi16(c, 3);
+b = _mm_adds_pi16(b, c);
+a = _mm_unpacklo_pi8(a, b);
+frobzor = (uint64_t)a;]])], [
+      ac_cv_c_mmx_intrinsics=yes
+    ], [
+      ac_cv_c_mmx_intrinsics=no
+    ])
+    CFLAGS="${CFLAGS_save}"
+  ])
   AS_IF([test "${ac_cv_c_mmx_intrinsics}" != "no"], [
     AC_DEFINE(HAVE_MMX_INTRINSICS, 1,
               [Define to 1 if MMX intrinsics are available.])
   ])
 
-  AC_CACHE_CHECK([if $CC groks MMX inline assembly],
-    [ac_cv_mmx_inline],
-    [CFLAGS="${CFLAGS_save}"
-     AC_TRY_COMPILE(,[void *p;asm volatile("packuswb %%mm1,%%mm2"::"r"(p));],
-                    ac_cv_mmx_inline=yes, ac_cv_mmx_inline=no)])
+  AC_CACHE_CHECK([if $CC groks MMX inline assembly], [ac_cv_mmx_inline], [
+    CFLAGS="${CFLAGS_save} -mmmx"
+    AC_COMPILE_IFELSE([AC_LANG_PROGRAM(,[[
+void *p;
+asm volatile("packuswb %%mm1,%%mm2"::"r"(p):"mm1", "mm2");
+]])
+    ], [
+      ac_cv_mmx_inline=yes
+    ], [
+      ac_cv_mmx_inline=no
+    ])
+    CFLAGS="${CFLAGS_save}"
+  ])
   AS_IF([test "${ac_cv_mmx_inline}" != "no"], [
     AC_DEFINE(CAN_COMPILE_MMX, 1,
               [Define to 1 inline MMX assembly is available.])
@@ -1232,10 +1169,19 @@ AS_IF([test "${enable_mmx}" != "no"], [
   ])
 
   AC_CACHE_CHECK([if $CC groks MMX EXT inline assembly],
-    [ac_cv_mmxext_inline],
-    [CFLAGS="${CFLAGS_save}"
-     AC_TRY_COMPILE(,[void *p;asm volatile("maskmovq %%mm1,%%mm2"::"r"(p));],
-                    ac_cv_mmxext_inline=yes, ac_cv_mmxext_inline=no)])
+                 [ac_cv_mmxext_inline], [
+    CFLAGS="${CFLAGS_save} -mmmx"
+    AC_COMPILE_IFELSE([AC_LANG_PROGRAM(,[[
+void *p;
+asm volatile("maskmovq %%mm1,%%mm2"::"r"(p):"mm1", "mm2");
+]])
+    ], [
+      ac_cv_mmxext_inline=yes
+    ], [
+      ac_cv_mmxext_inline=no
+    ])
+    CFLAGS="${CFLAGS_save}"
+  ])
   AS_IF([test "${ac_cv_mmxext_inline}" != "no"], [
     AC_DEFINE(CAN_COMPILE_MMXEXT, 1,
               [Define to 1 if MMX EXT inline assembly is available.])
@@ -1264,43 +1210,63 @@ have_sse2="no"
 AS_IF([test "${enable_sse}" != "no"], [
   ARCH="${ARCH} sse sse2"
 
-  AC_CACHE_CHECK([if $CC groks SSE2 intrinsics],
-    [ac_cv_c_sse2_intrinsics],
-    [CFLAGS="${CFLAGS_save} -O -msse2"
-     AC_TRY_COMPILE([#include <emmintrin.h>
-                     #include <stdint.h>
-                     uint64_t frobzor;],
-                    [__m128i a, b, c;
-                     a = b = c = _mm_set1_epi64((__m64)frobzor);
-                     a = _mm_slli_epi16(a, 3);
-                     a = _mm_adds_epi16(a, b);
-                     c = _mm_srli_epi16(c, 8);
-                     c = _mm_slli_epi16(c, 3);
-                     b = _mm_adds_epi16(b, c);
-                     a = _mm_unpacklo_epi8(a, b);
-                     frobzor = (uint64_t)_mm_movepi64_pi64(a);],
-                    [ac_cv_c_sse2_intrinsics=yes],
-                    [ac_cv_c_sse2_intrinsics=no])])
+  AC_CACHE_CHECK([if $CC groks SSE2 intrinsics], [ac_cv_c_sse2_intrinsics], [
+    CFLAGS="${CFLAGS_save} -O -msse2"
+    AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
+[#include <emmintrin.h>
+#include <stdint.h>
+uint64_t frobzor;]], [
+[__m128i a, b, c;
+a = b = c = _mm_set1_epi64((__m64)frobzor);
+a = _mm_slli_epi16(a, 3);
+a = _mm_adds_epi16(a, b);
+c = _mm_srli_epi16(c, 8);
+c = _mm_slli_epi16(c, 3);
+b = _mm_adds_epi16(b, c);
+a = _mm_unpacklo_epi8(a, b);
+frobzor = (uint64_t)_mm_movepi64_pi64(a);]])], [
+      ac_cv_c_sse2_intrinsics=yes
+    ], [
+      ac_cv_c_sse2_intrinsics=no
+    ])
+    CFLAGS="${CFLAGS_save}"
+])
   AS_IF([test "${ac_cv_c_sse2_intrinsics}" != "no"], [
     AC_DEFINE(HAVE_SSE2_INTRINSICS, 1,
               [Define to 1 if SSE2 intrinsics are available.])
   ])
 
-  AC_CACHE_CHECK([if $CC groks SSE inline assembly],
-    [ac_cv_sse_inline],
-    [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)])
+  AC_CACHE_CHECK([if $CC groks SSE inline assembly], [ac_cv_sse_inline], [
+    CFLAGS="${CFLAGS_save} -msse"
+    AC_COMPILE_IFELSE([AC_LANG_PROGRAM(,[[
+void *p;
+asm volatile("xorps %%xmm1,%%xmm2"::"r"(p):"xmm1", "xmm2");
+]])
+    ], [
+      ac_cv_sse_inline=yes
+    ], [
+      ac_cv_sse_inline=no
+    ])
+    CFLAGS="${CFLAGS_save}"
+  ])
   AS_IF([test "${ac_cv_sse_inline}" != "no" -a "${SYS}" != "solaris"], [
     AC_DEFINE(CAN_COMPILE_SSE, 1,
               [Define to 1 if SSE inline assembly is available.])
   ])
 
-  AC_CACHE_CHECK([if $CC groks SSE2 inline assembly],
-    [ac_cv_sse2_inline],
-    [CFLAGS="${CFLAGS_save}"
-     AC_TRY_COMPILE(,[void *p;asm volatile("punpckhqdq %%xmm1,%%xmm2"::"r"(p));],
-                    ac_cv_sse2_inline=yes, ac_cv_sse2_inline=no)])
+  AC_CACHE_CHECK([if $CC groks SSE2 inline assembly], [ac_cv_sse2_inline], [
+    CFLAGS="${CFLAGS_save} -msse"
+    AC_COMPILE_IFELSE([AC_LANG_PROGRAM(,[[
+void *p;
+asm volatile("punpckhqdq %%xmm1,%%xmm2"::"r"(p):"xmm1", "xmm2");
+]])
+    ], [
+      ac_cv_sse2_inline=yes
+    ], [
+      ac_cv_sse2_inline=no
+    ])
+    CFLAGS="${CFLAGS_save}"
+  ])
   AS_IF([test "${ac_cv_sse2_inline}" != "no" -a "${SYS}" != "solaris"], [
     AC_DEFINE(CAN_COMPILE_SSE2, 1,
               [Define to 1 if SSE2 inline assembly is available.])
@@ -1308,50 +1274,92 @@ AS_IF([test "${enable_sse}" != "no"], [
   ])
 
   # SSE3
-  AC_CACHE_CHECK([if $CC groks SSE3 inline assembly],
-    [ac_cv_sse3_inline],
-    [CFLAGS="${CFLAGS_save}"
-     AC_TRY_COMPILE(,[void *p;asm volatile("movsldup %%xmm1,%%xmm0"::"r"(p));],
-                    ac_cv_sse3_inline=yes, ac_cv_sse3_inline=no)])
+  AC_CACHE_CHECK([if $CC groks SSE3 inline assembly], [ac_cv_sse3_inline], [
+    CFLAGS="${CFLAGS_save} -msse"
+    AC_COMPILE_IFELSE([AC_LANG_PROGRAM(,[[
+void *p;
+asm volatile("movsldup %%xmm1,%%xmm0"::"r"(p):"xmm0", "xmm1");
+]])
+    ], [
+      ac_cv_sse3_inline=yes
+    ], [
+      ac_cv_sse3_inline=no
+    ])
+    CFLAGS="${CFLAGS_save}"
+  ])
   AS_IF([test "${ac_cv_sse3_inline}" != "no"], [
     AC_DEFINE(CAN_COMPILE_SSE3, 1,
               [Define to 1 if SSE3 inline assembly is available.]) ])
   # SSSE3
-  AC_CACHE_CHECK([if $CC groks SSSE3 inline assembly],
-    [ac_cv_ssse3_inline],
-    [CFLAGS="${CFLAGS_save}"
-     AC_TRY_COMPILE(,[void *p;asm volatile("pabsw %%xmm0,%%xmm0"::"r"(p));],
-                    ac_cv_ssse3_inline=yes, ac_cv_ssse3_inline=no)])
+  AC_CACHE_CHECK([if $CC groks SSSE3 inline assembly], [ac_cv_ssse3_inline], [
+    CFLAGS="${CFLAGS_save} -msse"
+    AC_COMPILE_IFELSE([AC_LANG_PROGRAM(,[[
+void *p;
+asm volatile("pabsw %%xmm0,%%xmm0"::"r"(p):"xmm0");
+]])
+    ], [
+      ac_cv_ssse3_inline=yes
+    ], [
+      ac_cv_ssse3_inline=no
+    ])
+    CFLAGS="${CFLAGS_save}"
+  ])
   AS_IF([test "${ac_cv_ssse3_inline}" != "no"], [
     AC_DEFINE(CAN_COMPILE_SSSE3, 1,
               [Define to 1 if SSSE3 inline assembly is available.]) ])
 
   # SSE4.1
   AC_CACHE_CHECK([if $CC groks SSE4.1 inline assembly],
-    [ac_cv_sse4_1_inline],
-    [CFLAGS="${CFLAGS_save}"
-     AC_TRY_COMPILE(,[void *p;asm volatile("pmaxsb %%xmm1,%%xmm0"::"r"(p));],
-                    ac_cv_sse4_1_inline=yes, ac_cv_sse4_1_inline=no)])
+                 [ac_cv_sse4_1_inline], [
+    CFLAGS="${CFLAGS_save} -msse"
+    AC_COMPILE_IFELSE([AC_LANG_PROGRAM(,[[
+void *p;
+asm volatile("pmaxsb %%xmm1,%%xmm0"::"r"(p):"xmm0", "xmm1");
+]])
+    ], [
+      ac_cv_sse4_1_inline=yes
+    ], [
+      ac_cv_sse4_1_inline=no
+    ])
+    CFLAGS="${CFLAGS_save}"
+  ])
   AS_IF([test "${ac_cv_sse4_1_inline}" != "no"], [
     AC_DEFINE(CAN_COMPILE_SSE4_1, 1,
               [Define to 1 if SSE4_1 inline assembly is available.]) ])
 
   # SSE4.2
   AC_CACHE_CHECK([if $CC groks SSE4.2 inline assembly],
-    [ac_cv_sse4_2_inline],
-    [CFLAGS="${CFLAGS_save}"
-     AC_TRY_COMPILE(,[void *p;asm volatile("pcmpgtq %%xmm1,%%xmm0"::"r"(p));],
-                    ac_cv_sse4_2_inline=yes, ac_cv_sse4_2_inline=no)])
+                 [ac_cv_sse4_2_inline], [
+    CFLAGS="${CFLAGS_save} -msse"
+    AC_COMPILE_IFELSE([AC_LANG_PROGRAM(,[[
+void *p;
+asm volatile("pcmpgtq %%xmm1,%%xmm0"::"r"(p):"xmm0", "xmm1");
+]])
+    ], [
+      ac_cv_sse4_2_inline=yes
+    ], [
+      ac_cv_sse4_2_inline=no
+    ])
+    CFLAGS="${CFLAGS_save}"
+  ])
   AS_IF([test "${ac_cv_sse4_2_inline}" != "no"], [
     AC_DEFINE(CAN_COMPILE_SSE4_2, 1,
               [Define to 1 if SSE4_2 inline assembly is available.]) ])
 
   # SSE4A
-  AC_CACHE_CHECK([if $CC groks SSE4A inline assembly],
-    [ac_cv_sse4a_inline],
-    [CFLAGS="${CFLAGS_save}"
-     AC_TRY_COMPILE(,[void *p;asm volatile("insertq %%xmm1,%%xmm0"::"r"(p));],
-                    ac_cv_sse4a_inline=yes, ac_cv_sse4a_inline=no)])
+  AC_CACHE_CHECK([if $CC groks SSE4A inline assembly], [ac_cv_sse4a_inline], [
+    CFLAGS="${CFLAGS_save} -msse"
+    AC_COMPILE_IFELSE([AC_LANG_PROGRAM(,[[
+void *p;
+asm volatile("insertq %%xmm1,%%xmm0"::"r"(p):"xmm0", "xmm1");
+]])
+    ], [
+      ac_cv_sse4a_inline=yes
+    ], [
+      ac_cv_sse4a_inline=no
+    ])
+    CFLAGS="${CFLAGS_save}"
+  ])
   AS_IF([test "${ac_cv_sse4a_inline}" != "no"], [
     AC_DEFINE(CAN_COMPILE_SSE4A, 1,
               [Define to 1 if SSE4A inline assembly is available.]) ])
@@ -1359,11 +1367,19 @@ AS_IF([test "${enable_sse}" != "no"], [
 AM_CONDITIONAL([HAVE_SSE2], [test "$have_sse2" = "yes"])
 
 have_3dnow="no"
-AC_CACHE_CHECK([if $CC groks 3D Now! inline assembly],
-    [ac_cv_3dnow_inline],
-    [CFLAGS="${CFLAGS_save}"
-     AC_TRY_COMPILE(,[void *p;asm volatile("pfadd %%mm1,%%mm2"::"r"(p));],
-                    ac_cv_3dnow_inline=yes, ac_cv_3dnow_inline=no)])
+AC_CACHE_CHECK([if $CC groks 3D Now! inline assembly], [ac_cv_3dnow_inline], [
+  CFLAGS="${CFLAGS_save} -mmmx"
+  AC_COMPILE_IFELSE([AC_LANG_PROGRAM(,[[
+void *p;
+asm volatile("pfadd %%mm1,%%mm2"::"r"(p):"mm1", "mm2");
+]])
+  ], [
+    ac_cv_3dnow_inline=yes
+  ], [
+    ac_cv_3dnow_inline=no
+  ])
+  CFLAGS="${CFLAGS_save}"
+])
 AS_IF([test "${ac_cv_3dnow_inline}" != "no"], [
   AC_DEFINE(CAN_COMPILE_3DNOW, 1,
             [Define to 1 if 3D Now! inline assembly is available.])
@@ -1497,7 +1513,7 @@ dnl - Others: test should fail
 
   AC_CACHE_CHECK([if linker needs -framework vecLib],
     [ac_cv_ld_altivec],
-    [LDFLAGS="${LDFLAGS_vlc} -Wl,-framework,vecLib"
+    [LDFLAGS="${LDFLAGS} -Wl,-framework,vecLib"
      AC_TRY_LINK([],,ac_cv_ld_altivec=yes,ac_cv_ld_altivec=no)
      LDFLAGS="${LDFLAGS_save}"
     ])
@@ -1532,19 +1548,22 @@ else
 fi
 
 dnl NOTE: this can't be cached cleanly
-AS_IF([test "${CFLAGS_TUNING}"],
-   [CFLAGS_save="${CFLAGS}"
-    CFLAGS="${CFLAGS} ${CFLAGS_TUNING}"
-
-    AC_MSG_CHECKING([whether $CC accepts ${CFLAGS_TUNING}])
-    AC_COMPILE_IFELSE([AC_LANG_SOURCE([])],
-                      [tuning="yes"],
-                      [CFLAGS_TUNING=""; tuning="no"
-                       AS_IF([test "${with_tuning}"],
-                             [AC_MSG_ERROR([requested tuning not supported])])])
-
-    AC_MSG_RESULT([$tuning])
-    CFLAGS="${CFLAGS_save}"
+AS_IF([test -n "${CFLAGS_TUNING}"], [
+  AC_MSG_CHECKING([whether $CC accepts ${CFLAGS_TUNING}])
+  CFLAGS="${CFLAGS_save} ${CFLAGS_TUNING}"
+  AC_COMPILE_IFELSE([AC_LANG_SOURCE([])], [
+    tuning="yes"
+  ], [
+    CFLAGS_TUNING=""; tuning="no"
+    AS_IF([test "${with_tuning}"], [
+      AC_MSG_ERROR([requested tuning not supported])
+    ])
+  ])
+  CFLAGS="${CFLAGS_save}"
+  AC_MSG_RESULT([$tuning])
+  VLC_RESTORE_FLAGS
+  CFLAGS="${CFLAGS} ${CFLAGS_TUNING}"
+  VLC_SAVE_FLAGS
 ])
 
 dnl
@@ -1588,10 +1607,11 @@ then
   PKG_CHECK_MODULES(LUA, lua5.1,
     [ have_lua=yes ],
     [
-    AC_MSG_WARN([lua5.1 not found, trying lua >= 5.1 instead])
+    AC_MSG_WARN([${LUA_PKG_ERRORS}, trying lua >= 5.1 instead])
     PKG_CHECK_MODULES(LUA, lua >= 5.1,
       [ have_lua=yes ],
       [
+        AC_MSG_WARN([${LUA_PKG_ERRORS}, trying manual detection instead])
         have_lua=yes
         AC_CHECK_HEADERS([lua.h lauxlib.h lualib.h],
           [],
@@ -1622,6 +1642,7 @@ then
 fi
 AM_CONDITIONAL(BUILD_LUA, [test "${have_lua}" = "yes"])
 
+
 dnl
 dnl HTTP daemon
 dnl
@@ -1630,10 +1651,11 @@ AC_ARG_ENABLE(httpd,
     [disable the built-in HTTP server (default enabled)])])
 if test "${enable_httpd}" != "no"
 then
-  AC_DEFINE(ENABLE_HTTPD, 1, Define if you want the HTTP dameon support)
+  AC_DEFINE(ENABLE_HTTPD, 1, Define if you want the HTTP daemon support)
 fi
 AM_CONDITIONAL(BUILD_HTTPD, [test "${enable_httpd}" != "no"])
 
+
 dnl
 dnl VideoLAN manager
 dnl
@@ -1649,42 +1671,6 @@ AS_IF([test "${enable_vlm}" != "no"], [
 ])
 AM_CONDITIONAL([ENABLE_VLM], [test "${enable_vlm}" != "no"])
 
-dnl
-dnl Growl notification plugin
-dnl
-AC_ARG_ENABLE(growl,
-  [  --enable-growl          growl notification plugin (default disabled)],,
-  [enable_growl=no])
-AS_IF([test "${enable_growl}" != "no"], [
-    VLC_ADD_PLUGIN([growl_udp])
-    AC_CHECK_HEADERS(${CONTRIB_DIR}/Growl/Growl.framework/Versions/A/Headers/GrowlDefines.h, [
-      VLC_ADD_PLUGIN([growl])
-      VLC_ADD_LIBS([growl], [-F${CONTRIB_DIR}/Growl -Wl,-framework,Growl,-framework,CoreFoundation])
-      VLC_ADD_OBJCFLAGS([growl], [-F${CONTRIB_DIR}/Growl])
-      VLC_ADD_OBJCFLAGS([growl], [-fobjc-exceptions] )
-    ])
-  ]
-)
-
-dnl
-dnl Libnotify notification plugin
-dnl
-PKG_ENABLE_MODULES_VLC([NOTIFY], [], [libnotify gtk+-2.0], [libnotify notification], [auto])
-
-dnl
-dnl Taglib plugin
-dnl
-AC_ARG_ENABLE(taglib,
-  [AS_HELP_STRING([--disable-taglib],
-    [do not use TagLib (default enabled)])])
-AS_IF([test "${enable_taglib}" != "no"], [
-  PKG_CHECK_MODULES(TAGLIB, taglib >= 1.5, [
-    VLC_ADD_PLUGIN([taglib])
-    VLC_ADD_LIBS([taglib],[$TAGLIB_LIBS -lz])
-    VLC_ADD_CXXFLAGS([taglib],[$TAGLIB_CFLAGS])
-  ], [
-    AC_MSG_WARN(TagLib library not found)])
-])
 
 dnl
 dnl  Input plugins
@@ -1703,8 +1689,8 @@ AS_IF([test "${enable_libproxy}" != "no"], [
     VLC_ADD_CFLAGS([access_http],[$LIBPROXY_CFLAGS])
     VLC_ADD_LIBS([access_http],[$LIBPROXY_LIBS])
   ], [
-    AS_IF([test "x${enable_libproxy}" != "x"], [
-      AC_MSG_ERROR([libproxy could not be found on your system])
+    AS_IF([test -n "${enable_libproxy}"], [
+      AC_MSG_ERROR([${LIBPROXY_PKG_ERRORS}.])
     ])
   ])
 ])
@@ -1715,127 +1701,91 @@ dnl
 AC_ARG_ENABLE(live555,
   [AS_HELP_STRING([--enable-live555],
     [enable RTSP input through live555 (default enabled)])])
-AC_ARG_WITH(live555-tree,
-  [AS_HELP_STRING([--with-live555-tree=PATH],
-    [live555 tree for static linking])])
-if test "${enable_live555}" != "no"; then
-
-  dnl
-  dnl test for --with-live555-tree
-  dnl
-  if test -z "${with_live555_tree}" -a "${CXX}" != ""; then
-    AC_LANG_PUSH(C++)
-    CPPFLAGS_save="${CPPFLAGS}"
-    if test -z "${CONTRIB_DIR}"; then
-        CPPFLAGS_live555="-I/usr/include/liveMedia -I/usr/include/groupsock -I/usr/include/BasicUsageEnvironment -I/usr/include/UsageEnvironment"
-    else
-        CPPFLAGS_live555="-I${CONTRIB_DIR}/include/liveMedia -I${CONTRIB_DIR}/include/groupsock -I${CONTRIB_DIR}/include/BasicUsageEnvironment -I${CONTRIB_DIR}/include/UsageEnvironment"
-    fi
-    if test "${SYS}" = "solaris"; then
-      CPPFLAGS_live555="${CPPFLAGS_live555} -DSOLARIS"
-    fi
-    CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_live555}"
-
-    AC_CHECK_HEADERS(liveMedia_version.hh, [
-      AC_MSG_CHECKING(for liveMedia version >= 1275091200 )
-      AC_EGREP_CPP(yes,
-        [#include <liveMedia_version.hh>
-         #ifdef LIVEMEDIA_LIBRARY_VERSION_INT
-         #if LIVEMEDIA_LIBRARY_VERSION_INT < 1275091200
-         yes
-         #endif
-         #endif],
-        [AC_MSG_RESULT([no])
-          AC_MSG_WARN([The installed liveMedia version is too old:
+AS_IF([test "${enable_live555}" != "no" -a -n "${CXX}"], [
+  AC_LANG_PUSH(C++)
+  CPPFLAGS_save="${CPPFLAGS}"
+  AS_IF([test -z "${CONTRIB_DIR}"], [
+    CPPFLAGS_live555="-I/usr/include/liveMedia -I/usr/include/groupsock -I/usr/include/BasicUsageEnvironment -I/usr/include/UsageEnvironment"
+  ], [
+    CPPFLAGS_live555="-I${CONTRIB_DIR}/include/liveMedia -I${CONTRIB_DIR}/include/groupsock -I${CONTRIB_DIR}/include/BasicUsageEnvironment -I${CONTRIB_DIR}/include/UsageEnvironment"
+  ])
+  AS_IF([test "${SYS}" = "solaris"], [
+    CPPFLAGS_live555="${CPPFLAGS_live555} -DSOLARIS"
+  ])
+  CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_live555}"
+
+  AC_CACHE_CHECK([for live555 version 1275091200 or later], [ac_cv_live555], [
+    AC_PREPROC_IFELSE([AC_LANG_PROGRAM([
+[#include <liveMedia_version.hh>
+#if !defined (LIVEMEDIA_LIBRARY_VERSION_INT) || (LIVEMEDIA_LIBRARY_VERSION_INT < 1275091200)
+# error BOOM
+#endif]])
+    ], [
+      ac_cv_live555="yes"
+    ], [
+      ac_cv_live555="no"
+    ])
+  ])
+  AS_IF([test "$ac_cv_live555" = "no"], [
+    AC_MSG_WARN([liveMedia is missing or its installed version is too old:
 Version 2010.05.29 or later is required to proceed.
 You can get an updated one from http://www.live555.com/liveMedia .])
-          AS_IF([test "${enable_live555}" = "yes"], [
-            AC_MSG_ERROR([Update live555 or pass --disable-live555 to disable the plugin.])
-          ])
-        ],[
-          AC_MSG_RESULT([yes])
-          other_libs="-lgroupsock -lBasicUsageEnvironment -lUsageEnvironment"
-          other_libs_pic="-lgroupsock_pic -lBasicUsageEnvironment_pic -lUsageEnvironment_pic"
-          if test "${SYS}" = "mingw32"; then
-            # add ws2_32 for closesocket, select, recv
-            other_libs="$other_libs -lws2_32"
-          elif test "${SYS}" = "mingwce"; then
-            # add ws2 for closesocket, select, recv
-            other_libs="$other_libs -lws2"
-          fi
-
-          dnl We need to check for pic because live555 don't provide shared libs
-          dnl and we want to build a plugins so we need -fPIC on some arch.
-          VLC_ADD_CXXFLAGS([live555], [${CPPFLAGS_live555}])
-          AC_CHECK_LIB(liveMedia_pic, main, [
-            VLC_ADD_PLUGIN([live555])
-            VLC_ADD_LIBS([live555], [-lliveMedia_pic ${other_libs_pic}])
-          ],[
-            AC_CHECK_LIB(liveMedia, main, [
-            VLC_ADD_PLUGIN([live555])
-            VLC_ADD_LIBS([live555], [-lliveMedia ${other_libs}])
-          ],[],[${other_libs}]) ],[${other_libs_pic}])
-
-          CPPFLAGS="${CPPFLAGS_save}"
-          AC_LANG_POP(C++)
-        ])
-      ])
-  else
-    AC_MSG_CHECKING(for liveMedia/libliveMedia.a in ${with_live555_tree})
-    real_live555_tree="`cd ${with_live555_tree} 2>/dev/null && pwd`"
-    if test -z "${real_live555_tree}"; then
-      dnl  The given directory can't be found
-      AC_MSG_RESULT(no)
-      AC_MSG_ERROR([cannot cd to ${with_live555_tree}])
-    fi
-    if test -f "${real_live555_tree}/liveMedia/libliveMedia.a"; then
-      AC_MSG_RESULT(${real_live555_tree}/liveMedia/libliveMedia.a)
-
-      AC_CHECK_HEADERS(${real_live555_tree}/liveMedia/include/liveMedia_version.hh,[
-        AC_MSG_CHECKING(for liveMedia version >= 1275091200 )
-        AC_EGREP_CPP(yes,
-          [#include "${real_live555_tree}/liveMedia/include/liveMedia_version.hh"
-           #ifdef LIVEMEDIA_LIBRARY_VERSION_INT
-           #if LIVEMEDIA_LIBRARY_VERSION_INT < 1275091200
-           yes
-           #endif
-           #endif],
-          [AC_MSG_RESULT([no])
-           AC_MSG_ERROR([Your version of liveMedia is too old: you may get a more recent one from http://www.live555.com/liveMedia.
-lternatively you can use --disable-live555 to disable the liveMedia plugin.])
-        ],[
-          AC_MSG_RESULT([yes])
-          ])
+    AS_IF([test -n "${enable_live555}"], [
+      AC_MSG_ERROR([Update live555 or pass --disable-live555 to disable RTSP input support.])
+    ])
+    ac_cv_live555_usable=""
+  ], [
+    dnl Check that live555 is patched correctly.
+    AC_CACHE_CHECK([for live555 usability], [ac_cv_live555_usable], [
+      AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
+[#include <locale.h>
+#ifdef __APPLE__
+# include <xlocale.h>
+#endif
+#undef LC_ALL
+#define LC_ALL BOOM
+#ifdef LC_ALL_MASK
+#include <Locale.hh>
+#endif
+#include <GroupsockHelper.hh>]], [
+[struct in_addr addr;
+our_inet_ntoa(addr, NULL);]])
+      ], [
+        ac_cv_live555_usable="yes"
+      ], [
+        ac_cv_live555_usable="no"
       ])
+    ])
+    AS_IF([test "$ac_cv_live555_usable" = "no"], [
+      AC_MSG_ERROR([liveMedia lacks patches and is not usable.
+Please apply our patches from the VLC contrib (contrib/src/live555/).
+You can also disable RTSP input with --disable-live555. You were warned.])
+    ])
+    other_libs="-lgroupsock -lBasicUsageEnvironment -lUsageEnvironment"
+    other_libs_pic="-lgroupsock_pic -lBasicUsageEnvironment_pic -lUsageEnvironment_pic"
+    AS_IF([test "${SYS}" = "mingw32"], [
+      # add ws2_32 for closesocket, select, recv
+      other_libs="$other_libs -lws2_32"
+    ], [test "${SYS}" = "mingwce"], [
+      # add ws2 for closesocket, select, recv
+      other_libs="$other_libs -lws2"
+    ])
 
+    dnl We need to check for pic because live555 don't provide shared libs
+    dnl and we want to build a plugins so we need -fPIC on some arch.
+    VLC_ADD_CXXFLAGS([live555], [${CPPFLAGS_live555}])
+    AC_CHECK_LIB(liveMedia_pic, main, [
       VLC_ADD_PLUGIN([live555])
-
-      if test "${SYS}" = "mingw32"; then
-        # add ws2_32 for closesocket, select, recv
-        VLC_ADD_LIBS([live555],[-lws2_32])
-      fi
-
-      VLC_ADD_LIBS([live555],[-L${real_live555_tree}/UsageEnvironment -lUsageEnvironment])
-      VLC_ADD_LIBS([live555],[-L${real_live555_tree}/BasicUsageEnvironment -lBasicUsageEnvironment])
-      VLC_ADD_LIBS([live555],[-L${real_live555_tree}/groupsock -lgroupsock])
-      VLC_ADD_LIBS([live555],[-L${real_live555_tree}/liveMedia -lliveMedia])
-
-      VLC_ADD_CXXFLAGS([live555],[-I${real_live555_tree}/BasicUsageEnvironment/include])
-      VLC_ADD_CXXFLAGS([live555],[-I${real_live555_tree}/groupsock/include])
-      VLC_ADD_CXXFLAGS([live555],[-I${real_live555_tree}/liveMedia/include])
-      VLC_ADD_CXXFLAGS([live555],[-I${real_live555_tree}/UsageEnvironment/include ])
-      if test "${SYS}" = "solaris"; then
-        VLC_ADD_CXXFLAGS([live555],[-DSOLARIS])
-      fi
-    else
-      dnl  The given live555 wasn't built
-        AC_MSG_RESULT(no)
-      if test "${enable_live555}" = "yes"; then
-        AC_MSG_ERROR([cannot find ${real_live555_tree}/liveMedia/libliveMedia.a, make sure you compiled live555 in ${with_live555_tree}])
-      fi       
-    fi
-  fi
-fi
+      VLC_ADD_LIBS([live555], [-lliveMedia_pic ${other_libs_pic}])
+    ],[
+      AC_CHECK_LIB(liveMedia, main, [
+        VLC_ADD_PLUGIN([live555])
+        VLC_ADD_LIBS([live555], [-lliveMedia ${other_libs}])
+      ],[],[${other_libs}])],[${other_libs_pic}])
+  ])
+  CPPFLAGS="${CPPFLAGS_save}"
+  AC_LANG_POP(C++)
+])
 
 dnl
 dnl - special access module for dc1394 input
@@ -1850,19 +1800,26 @@ AC_ARG_ENABLE(linsys,
     [Linux Linear Systems Ltd. SDI and HD-SDI input cards (default enabled)])])
 if test "$SYS" = "linux" -a "${enable_linsys}" != "no"; then
   VLC_ADD_PLUGIN([linsys_hdsdi])
-  PKG_CHECK_MODULES(LINSYS_SDI, zvbi-0.2 >= 0.2.28,
+  PKG_CHECK_MODULES(LINSYS_SDI, [zvbi-0.2 >= 0.2.28],
     [ VLC_ADD_LIBS([linsys_sdi],[$LINSYS_SDI_LIBS])
       VLC_ADD_CFLAGS([linsys_sdi],[$LINSYS_SDI_CFLAGS])
       VLC_ADD_PLUGIN([linsys_sdi]) ],
-    [AC_MSG_WARN([Could not find zvbi >= 0.2.28, install libzvbi-dev ?])]
+    [AC_MSG_WARN([${LINSYS_SDI_PKG_ERRORS}.])]
   )
 fi
 
+dnl libdvdcss
+darwin_libdvdcss_extralibs="-Wl,-framework,CoreFoundation -Wl,-framework,IOKit"
+libdvdcss_extralibs=""
+test "${SYS}" = darwin && libdvdcss_extralibs="${darwin_libdvdcss_extralibs}"
+AC_CHECK_LIB(dvdcss, dvdcss_interface_2, [
+    VLC_ADD_LIBS([dvdread], -ldvdcss "${libdvdcss_extralibs}")
+    VLC_ADD_LIBS([dvdnav], -ldvdcss "${libdvdcss_extralibs}")
+    ],, "${libdvdcss_extralibs}")
+
 dnl
 dnl dvdread module: check for libdvdread
 dnl
-dnl prepend -ldvdcss on OS that need it
-AS_CASE(["${SYS}"], [mingw32|darwin], [VLC_ADD_LIBS([dvdread], [-ldvdcss])])
 PKG_ENABLE_MODULES_VLC([DVDREAD], [], [dvdread], [dvdread input module], [auto])
 
 dnl
@@ -1873,9 +1830,6 @@ AC_ARG_ENABLE(dvdnav,
     [disable DVD navigation with libdvdnav (default auto)])])
 if test "${enable_dvdnav}" != "no"
 then
-  dnl prepend -ldvdcss on OS that need it
-  AS_CASE(["${SYS}"], [mingw32|darwin], [VLC_ADD_LIBS([dvdnav], [-ldvdcss])])
-
   PKG_CHECK_MODULES(DVDNAV, dvdnav, [
     VLC_ADD_PLUGIN([dvdnav])
     VLC_ADD_CFLAGS([dvdnav],[${DVDNAV_CFLAGS}])
@@ -1886,7 +1840,7 @@ then
     AC_CHECK_LIB(dvdnav, dvdnav_describe_title_chapters,
       AC_DEFINE(HAVE_DVDNAV_DESCRIBE_TITLE_CHAPTERS, 1, [Define if you have dvdnav_describe_title_chapters.]),
         [], [${LIBS_dvdnav}])],
-      [AC_MSG_WARN(dvdnav library not found)])
+      [AC_MSG_WARN([${DVDNAV_PKG_ERRORS}.])])
 fi
 
 dnl
@@ -1963,7 +1917,7 @@ AS_IF([test "$have_v4l2" = "yes"], [
     PKG_CHECK_MODULES(LIBV4L2, libv4l2, [
       AC_DEFINE(HAVE_LIBV4L2, 1, [Define to 1 if libv4l2 is available])
     ], [
-      AC_MSG_WARN([${LIBV4L2_PKG_ERRORS}])
+      AC_MSG_WARN([${LIBV4L2_PKG_ERRORS}.])
     ])
   ])
   AS_IF([test "${enable_pvr}" = "yes"], [
@@ -1980,7 +1934,7 @@ AC_ARG_ENABLE(decklink,
     [disable Blackmagic DeckLink SDI input (default auto)])])
 AC_ARG_WITH(decklink_sdk,
   [AS_HELP_STRING[--with-decklink-sdk=DIR],
-    [location of Blackmagic DeckLink SDI SDK])])
+    [                        location of Blackmagic DeckLink SDI SDK])])
 if test "${enable_decklink}" != "no"
 then
   if test "${with_decklink_sdk}" != "no" -a -n "${with_decklink_sdk}"
@@ -2010,15 +1964,15 @@ AC_ARG_ENABLE(vcdx,
     [navigate VCD with libvcdinfo (default disabled)])])
 if test "${enable_vcdx}" = "yes"
 then
-       PKG_CHECK_MODULES(LIBCDIO, [libcdio >= 0.78.2 libiso9660 >= 0.72],
-         [VLC_ADD_LIBS([vcdx],[$LIBCDIO_LIBS])
-                VLC_ADD_CFLAGS([vcdx],[$LIBCDIO_CFLAGS])],
-               [AC_MSG_ERROR([vcdx plugin requires libcdio >= 0.78.2 and libiso9660 >= 0.72])])
-       PKG_CHECK_MODULES(LIBVCDINFO, libvcdinfo >= 0.7.22,
-               [VLC_ADD_LIBS([vcdx],[$LIBVCDINFO_LIBS])
-                VLC_ADD_CFLAGS([vcdx],[$LIBVCDINFO_CFLAGS])],
-         [AC_MSG_ERROR([vcdx plugin requires libvcdinfo library >= 0.7.22])])
-        VLC_ADD_PLUGIN([vcdx])
+    PKG_CHECK_MODULES(LIBCDIO, [libcdio >= 0.78.2 libiso9660 >= 0.72],
+      [VLC_ADD_LIBS([vcdx],[$LIBCDIO_LIBS])
+         VLC_ADD_CFLAGS([vcdx],[$LIBCDIO_CFLAGS])],
+        [AC_MSG_ERROR([${LIBCDIO_PKG_ERRORS} (required for vcdx plugin).])])
+    PKG_CHECK_MODULES(LIBVCDINFO, libvcdinfo >= 0.7.22,
+        [VLC_ADD_LIBS([vcdx],[$LIBVCDINFO_LIBS])
+         VLC_ADD_CFLAGS([vcdx],[$LIBVCDINFO_CFLAGS])],
+      [AC_MSG_ERROR([${LIBVCDINFO_PKG_ERRORS} (required for vcdx plugin).])])
+    VLC_ADD_PLUGIN([vcdx])
 fi
 
 dnl
@@ -2060,7 +2014,7 @@ then
     AC_MSG_RESULT(no)
   ])
 
-  if test "${SYS}" = "bsdi" -o "${SYS}" = "mingw32"
+  if test "${SYS}" = "bsdi" -o "${SYS}" = "mingw32" -o "${SYS}" = "os2"
   then
     VLC_ADD_PLUGIN([vcd cdda])
   fi
@@ -2073,13 +2027,13 @@ then
   fi
 
   if test "$enable_libcddb" != "no"; then
-    PKG_CHECK_MODULES(LIBCDDB, libcddb >= 0.9.5, [
+    PKG_CHECK_MODULES(LIBCDDB, [libcddb >= 0.9.5], [
       HAVE_LIBCDDB=yes
       AC_DEFINE(HAVE_LIBCDDB, 1, [Define this if you have libcddb installed])
       VLC_ADD_LIBS([cdda],[$LIBCDDB_LIBS])
       VLC_ADD_CFLAGS([cdda],[$LIBCDDB_CFLAGS])
       ],:
-      [AC_MSG_WARN(new enough libcddb not found. CDDB access disabled)
+      [AC_MSG_WARN([${LIBCDDB_PKG_ERRORS}: CDDB access disabled.])
       HAVE_LIBCDDB=no])
   fi
 fi
@@ -2099,13 +2053,6 @@ EXPLODE
 ])])
 AM_CONDITIONAL([HAVE_LINUX_DVB], [test "$ac_cv_linux_s2api" = "yes"])
 
-dnl
-dnl  libdvbpsi check for ts mux/demux
-dnl
-have_dvbpsi="no"
-PKG_WITH_MODULES([DVBPSI], [libdvbpsi], [have_dvbpsi="yes"])
-AM_CONDITIONAL(HAVE_DVBPSI, [test "${have_dvbpsi}" = "yes"])
-
 dnl
 dnl  Screen capture module
 dnl
@@ -2129,19 +2076,50 @@ if test "${enable_screen}" != "no"; then
 fi
 
 dnl
-dnl  ipv6 support
+dnl  Real RTSP plugin
 dnl
-have_ipv6=no
-AC_CHECK_FUNCS(inet_pton,[have_ipv6=yes],[
-  AC_CHECK_LIB(nsl,inet_pton, [have_ipv6=yes])
-])
+AC_ARG_ENABLE(realrtsp,
+  [  --enable-realrtsp       Real RTSP module (default disabled)])
+if test "${enable_realrtsp}" = "yes"; then
+  VLC_ADD_PLUGIN([access_realrtsp])
+fi
 
-AS_IF([test "${have_ipv6}" = "yes"], [
-  AC_DEFINE(HAVE_INET_PTON, 1, [Define to 1 if you have inet_pton().])])
+dnl
+dnl MacOS eyeTV
+AC_ARG_ENABLE(macosx-eyetv,
+  [  --enable-macosx-eyetv   Mac OS X EyeTV (TNT Tuner) module (default enabled on Mac OS X)])
+if test "x${enable_macosx_eyetv}" != "xno" &&
+  (test "${SYS}" = "darwin" || test "${enable_macosx_eyetv}" = "yes")
+then
+  VLC_ADD_LIBS([access_eyetv], [-Wl,-framework,Foundation])
+  VLC_ADD_PLUGIN([access_eyetv])
+fi
 
+dnl
+dnl QTKit
+AC_ARG_ENABLE(macosx-qtkit,
+  [  --enable-macosx-qtkit Mac OS X qtcapture (video) and qtsound (audio) module (default enabled on Mac OS X)])
+if test "x${enable_macosx_qtkit}" != "xno" &&
+  (test "${SYS}" = "darwin" || test "${enable_macosx_qtkit}" = "yes")
+then
+  VLC_ADD_PLUGIN([qtcapture])
+  VLC_ADD_PLUGIN([qtsound])
+fi
+AM_CONDITIONAL(HAVE_QTKIT, [test "${SYS}" = "darwin" && "x${enable_macosx_qtkit}" != "xno"])
 
-AC_CHECK_FUNCS(inet_ntop,[
-  AC_DEFINE(HAVE_INET_NTOP, 1, [Define to 1 if you have inet_ntop().])])
+
+dnl
+dnl  Demux plugins
+dnl
+
+EXTEND_HELP_STRING([Mux/Demux plugins:])
+
+dnl
+dnl  libdvbpsi check for ts mux/demux
+dnl
+have_dvbpsi="no"
+PKG_WITH_MODULES([DVBPSI], [libdvbpsi], [have_dvbpsi="yes"])
+AM_CONDITIONAL(HAVE_DVBPSI, [test "${have_dvbpsi}" = "yes"])
 
 
 dnl
@@ -2165,27 +2143,32 @@ AS_IF([test "${enable_gme}" != "no"], [
 dnl
 dnl  SIDPlay plugin
 dnl
-PKG_WITH_MODULES([SID], [libsidplay2],
-               AC_LANG_PUSH(C++)
-               oldCPPFLAGS="$CPPFLAGS"
-               CPPFLAGS="$CPPFLAGS $SID_CFLAGS"
-               AC_CHECK_HEADER([sidplay/builders/resid.h], [
-                       VLC_ADD_PLUGIN([sid])
-                       VLC_ADD_CFLAGS([sid], [$SID_CFLAGS])
-                       VLC_ADD_LIBS([sid], [$SID_LIBS] [-lresid-builder])
-               ], [
-                       AS_IF([test "x${enable_sid}" = "xyes"],
-                               [AC_MSG_ERROR(Library libresid-builder needed for sid was not found)],
-                               [AC_MSG_WARN(Library libresid-builder needed for sid was not found)]
-                               )
-               ])
-               CPPFLAGS="$oldCPPFLAGS"
-               AC_LANG_POP(C++),
-               AS_IF([test "x${enable_sid}" = "xyes"],
-                       [AC_MSG_ERROR(Library libsidplay2 needed for sid was not found)],
-                       [AC_MSG_WARN(Library libsidplay2 needed for sid was not found)]
-                       ),
-               [C64 sid demux support], [auto])
+AC_ARG_ENABLE(sid,
+    [AS_HELP_STRING([--enable-sid],[C64 sid demux support (default auto)])])
+AS_IF([test "${enable_sid}" != "no"], [
+    PKG_CHECK_MODULES(SID, [libsidplay2], [
+        AC_LANG_PUSH(C++)
+        oldCPPFLAGS="$CPPFLAGS"
+        CPPFLAGS="$CPPFLAGS $SID_CFLAGS"
+        AC_CHECK_HEADER([sidplay/builders/resid.h], [
+            VLC_ADD_PLUGIN([sid])
+            VLC_ADD_CFLAGS([sid], [$SID_CFLAGS])
+            VLC_ADD_LIBS([sid], [$SID_LIBS] [-lresid-builder])
+        ], [
+            AS_IF([test -n "${enable_sid}"],
+                [AC_MSG_ERROR([${SID_PKG_ERRORS} (required for sid).])],
+                [AC_MSG_WARN([${SID_PKG_ERRORS} (required for sid).])]
+                )
+        ])
+        CPPFLAGS="$oldCPPFLAGS"
+        AC_LANG_POP(C++)
+    ], [
+        AS_IF([test "x${enable_sid}" = "xyes"],
+            [AC_MSG_ERROR([${SID_PKG_ERRORS} (required for sid).])],
+            [AC_MSG_WARN([${SID_PKG_ERRORS} (required for sid).])]
+            )
+    ])
+])
 
 
 dnl
@@ -2194,11 +2177,8 @@ dnl
 PKG_ENABLE_MODULES_VLC([OGG], [], [ogg >= 1.0], [Ogg demux support], [auto])
 if test "${enable_sout}" != "no"; then
     PKG_ENABLE_MODULES_VLC([MUX_OGG], [], [ogg >= 1.0], [Ogg mux support], [auto])
-fi
-
-if test "${enable_sout}" != "no"; then
 dnl Check for libshout
-PKG_ENABLE_MODULES_VLC([SHOUT], [access_output_shout], [shout >= 2.1], [libshout output plugin], [auto])
+    PKG_ENABLE_MODULES_VLC([SHOUT], [access_output_shout], [shout >= 2.1], [libshout output plugin], [auto])
 fi
 
 dnl
@@ -2268,9 +2248,9 @@ if test "${enable_mod}" != "no" ; then
           VLC_ADD_CXXFLAGS([mod],[$LIBMODPLUG_CFLAGS])
           VLC_ADD_LIBS([mod],[$LIBMODPLUG_LIBS])
     ],[
-       AS_IF([test x"${enable_mod}" = "xyes"],
-         [AC_MSG_ERROR(libmodplug not found or a broken version (0.8.8.0) was found!)],
-         [AC_MSG_WARN(libmodplug not found or a broken version (0.8.8.0) was found!)])
+       AS_IF([test -n "${enable_mod}"],
+         [AC_MSG_ERROR([${LIBMODPLUG_PKG_ERRORS}.])],
+         [AC_MSG_WARN([${LIBMODPLUG_PKG_ERRORS}.])])
     ])
 fi
 
@@ -2326,11 +2306,32 @@ then
   VLC_ADD_LIBS([omxil], [$LIBDL])
 fi
 
+dnl
+dnl iomx codec plugin
+dnl
+AC_ARG_ENABLE(iomx,
+  [  --enable-iomx           iomx codec module (default disabled)])
+if test "${enable_iomx}" = "yes"
+then
+  CPPFLAGS_save="${CPPFLAGS}"
+  CPPFLAGS="${CPPFLAGS} -I${srcdir}/modules/codec/omxil" # For the OMX headers
+  AC_LANG_PUSH([C++])
+  AC_CHECK_HEADER(media/stagefright/OMXClient.h, [
+    VLC_ADD_PLUGIN([iomx])
+    VLC_ADD_CXXFLAGS([iomx], [-fno-exceptions -fno-rtti])
+    VLC_ADD_LIBS([iomx], [-lstagefright -lmedia -lutils -lbinder])
+  ], [
+    AC_MSG_ERROR("Could not find IOMX headers")
+  ])
+  AC_LANG_POP([C++])
+  CPPFLAGS="${CPPFLAGS_save}"
+fi
+
 dnl
 dnl CrystalHD codec plugin
 dnl
 AC_ARG_ENABLE(crystalhd,
-  [  --enable-crystalhd       crystalhd codec plugin (default auto)])
+  [  --enable-crystalhd      crystalhd codec plugin (default auto)])
 if test "${enable_crystalhd}" != "no"; then
     AC_CHECK_HEADER(libcrystalhd/libcrystalhd_if.h, [
       VLC_ADD_PLUGIN([crystalhd])
@@ -2379,7 +2380,7 @@ then
     then
       dnl  The given directory can't be found
       AC_MSG_RESULT(no)
-      AC_MSG_ERROR([${with_mad_tree} directory doesn't exist])
+      AC_MSG_ERROR([${with_mad_tree} directory does not exist])
     fi
     dnl  Use a custom libmad
     AC_MSG_CHECKING(for mad.h in ${real_mad_tree})
@@ -2392,12 +2393,12 @@ then
       AC_CHECK_LIB(mad, mad_bit_init, [
         VLC_ADD_PLUGIN([mpgatofixed32])
         VLC_ADD_LIBS([mpgatofixed32],[-lmad])
-        ],[ AC_MSG_ERROR([the specified tree hasn't been compiled ])
+        ],[ AC_MSG_ERROR([the specified tree has not been compiled ])
       ],[])
       LDFLAGS="${LDFLAGS_save}"
     else
       AC_MSG_RESULT(no)
-      AC_MSG_ERROR([the specified tree doesn't have mad.h])
+      AC_MSG_ERROR([the specified tree does not have mad.h])
     fi
   else
     CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_mpgatofixed32}"
@@ -2422,7 +2423,7 @@ AM_CONDITIONAL([MERGE_FFMPEG], [test "$enable_merge_ffmpeg" != "no"])
 
 AC_CACHE_CHECK([if linker supports -Bsymbolic],
   [ac_cv_ld_bsymbolic],
-  [LDFLAGS="${LDFLAGS_vlc} -Wl,-Bsymbolic"
+  [LDFLAGS="${LDFLAGS} -Wl,-Bsymbolic"
     AC_TRY_LINK([],,ac_cv_ld_bsymbolic=yes,ac_cv_ld_bsymbolic=no)
     LDFLAGS="${LDFLAGS_save}"
   ])
@@ -2449,7 +2450,7 @@ AS_IF([test "${enable_avcodec}" != "no"], [
       VLC_RESTORE_FLAGS
       have_avcodec="yes"
     ],[
-      AC_MSG_ERROR([Could not find libavcodec or libavutil. Use --disable-avcodec to ignore this error.])
+      AC_MSG_ERROR([${AVCODEC_PKG_ERRORS}. Pass --disable-avcodec to ignore this error.])
   ])
 ], [
   have_avcodec="no"
@@ -2459,34 +2460,34 @@ dnl
 dnl libva needs avcodec
 dnl
 AC_ARG_ENABLE(libva,
-  [  --enable-libva          libva VAAPI support (default auto)])
+  [  --enable-libva          VAAPI GPU decoding support (libVA) (default auto)])
 
+AS_IF([test "${enable_libva}" = "yes" -a "${have_avcodec}" != "yes" ], [
+  AC_MSG_ERROR([--enable-libva and --disable-avcodec options are mutually exclusive. Use --enable-avcodec.])
+])
 AS_IF([test "${enable_libva}" != "no"], [
-  AS_IF([test "x${have_avcodec}" = "xyes"], [
-    PKG_CHECK_MODULES(LIBVA, [libva libva-x11],
-      [
-        VLC_SAVE_FLAGS
-        CPPFLAGS="${CPPFLAGS} ${AVCODEC_CFLAGS}"
-        CFLAGS="${CFLAGS} ${AVCODEC_CFLAGS}"
-        AC_CHECK_HEADERS(libavcodec/vaapi.h, [
-           VLC_ADD_LIBS([avcodec],[$LIBVA_LIBS ${X_LIBS} ${X_PRE_LIBS} -lX11])
-           VLC_ADD_CFLAGS([avcodec],[$LIBVA_CFLAGS ${X_CFLAGS}])
-           AC_DEFINE(HAVE_AVCODEC_VAAPI, 1, [Define if avcodec has to be built with VAAPI support.])
-           echo "VAAPI acceleration activated"
-        ],[
-       AS_IF([test "${enable_libva}" = "yes"],
-             [AC_MSG_ERROR([libva is present but libavcodec/vaapi.h is missing])],
-              [AC_MSG_WARN([libva is present but libavcodec/vaapi.h is missing ])])
-        ])
-        VLC_RESTORE_FLAGS
-      ],[
-       AS_IF([test "${enable_libva}" = "yes"],
-              [AC_MSG_ERROR([Could not find required libva.])],
-              [AC_MSG_WARN([libva not found  ])])
+  PKG_CHECK_MODULES(LIBVA, [libva libva-x11], [
+    VLC_SAVE_FLAGS
+    CPPFLAGS="${CPPFLAGS} ${AVCODEC_CFLAGS}"
+    CFLAGS="${CFLAGS} ${AVCODEC_CFLAGS}"
+    AC_CHECK_HEADERS(libavcodec/vaapi.h, [
+      VLC_ADD_LIBS([avcodec],[$LIBVA_LIBS ${X_LIBS} ${X_PRE_LIBS} -lX11])
+      VLC_ADD_CFLAGS([avcodec],[$LIBVA_CFLAGS ${X_CFLAGS}])
+      AC_DEFINE(HAVE_AVCODEC_VAAPI, 1, [Define if avcodec has to be built with VAAPI support.])
+      AC_MSG_NOTICE([VAAPI acceleration activated])
+    ],[
+      AS_IF([test -n "${enable_libva}"], [
+        AC_MSG_ERROR([libva is present but libavcodec/vaapi.h is missing])
+      ], [
+        AC_MSG_WARN([libva is present but libavcodec/vaapi.h is missing ])
       ])
+    ])
+    VLC_RESTORE_FLAGS
   ],[
-    AS_IF([test "x${enable_libva}" != "x"], [
-      AC_MSG_ERROR([--enable-libva and --disable-avcodec options are mutually exclusive.])
+    AS_IF([test -n "${enable_libva}"], [
+      AC_MSG_ERROR([${LIBVA_PKG_ERRORS}.])
+    ], [
+      AC_MSG_WARN([${LIBVA_PKG_ERRORS}.])
     ])
   ])
 ])
@@ -2495,24 +2496,24 @@ dnl
 dnl dxva2 needs avcodec
 dnl
 AC_ARG_ENABLE(dxva2,
-  [  --enable-dxva2          DxVA2  support (default auto)])
+  [  --enable-dxva2          DxVA2 GPU decoding support (default auto)])
 
 AS_IF([test "${enable_dxva2}" != "no"], [
   if test "${SYS}" = "mingw32"; then
   AS_IF([test "x${have_avcodec}" = "xyes"], [
-    AC_CHECK_HEADERS(dxva2api.h, 
+    AC_CHECK_HEADERS(dxva2api.h,
       [
         AC_CHECK_HEADERS(libavcodec/dxva2.h, [
            VLC_ADD_LIBS([avcodec],[-lole32 -lshlwapi -luuid])
            AC_DEFINE(HAVE_AVCODEC_DXVA2, 1, [Define if avcodec has to be built with DxVA2 support.])
            echo "DxVA2 acceleration activated"
         ],[
-       AS_IF([test "${enable_dxva2}" = "yes"],
-             [AC_MSG_ERROR([dxva2 is present but libavcodec/dxva2.h is missing])],
+    AS_IF([test "${enable_dxva2}" = "yes"],
+          [AC_MSG_ERROR([dxva2 is present but libavcodec/dxva2.h is missing])],
               [AC_MSG_WARN([dxva2 is present but libavcodec/dxva2.h is missing ])])
         ])
       ],[
-       AS_IF([test "${enable_dxva2}" = "yes"],
+    AS_IF([test "${enable_dxva2}" = "yes"],
               [AC_MSG_ERROR([Could not find required dxva2api.h])],
               [AC_MSG_WARN([dxva2api.h not found])])
       ])
@@ -2570,7 +2571,7 @@ then
       ])
       VLC_RESTORE_FLAGS
     ],[
-      AC_MSG_ERROR([Could not find libavformat or libavutil. Use --disable-avformat to ignore this error.])
+      AC_MSG_ERROR([${AVFORMAT_PKG_ERRORS}. Pass --disable-avformat to ignore this error.])
   ])
 fi
 
@@ -2580,7 +2581,7 @@ dnl
 
 AC_ARG_ENABLE(swscale,
   AS_HELP_STRING([--enable-swscale],[libswscale image scaling and conversion
-                 (default enabled)]))
+          (default enabled)]))
 if test "${enable_swscale}" != "no"
 then
   PKG_CHECK_MODULES(SWSCALE,[libswscale],
@@ -2597,7 +2598,7 @@ then
       ])
       VLC_RESTORE_FLAGS
     ],[
-      AC_MSG_ERROR([Could not find libswscale. Use --disable-swscale to ignore this error. Proper software scaling and some video chroma conversion will be missing.])
+      AC_MSG_ERROR([${SWSCALE_PKG_ERRORS}. Pass --disable-swscale to ignore this error. Proper software scaling and some video chroma conversion will be missing.])
   ])
 fi
 
@@ -2620,7 +2621,7 @@ then
       VLC_ADD_CFLAGS([postproc],[$POSTPROC_CFLAGS $AVUTIL_CFLAGS])
       VLC_RESTORE_FLAGS
     ],[
-      AC_MSG_ERROR([Could not find libpostproc. Use --disable-postproc to ignore this error.])
+      AC_MSG_ERROR([${POSTPROC_PKG_ERRORS}. Pass --disable-postproc to ignore this error.])
   ])
 fi
 
@@ -2697,20 +2698,11 @@ dnl
 dnl  Real plugin
 dnl
 AC_ARG_ENABLE(real,
-  [  --enable-real           Real media module (default disabled)])
+  [  --enable-real           Real video decoder module (default disabled)])
 if test "${enable_real}" = "yes"; then
   VLC_ADD_PLUGIN([realvideo])
 fi
 
-dnl
-dnl  Real RTSP plugin
-dnl
-AC_ARG_ENABLE(realrtsp,
-  [  --enable-realrtsp       Real RTSP module (default disabled)])
-if test "${enable_realrtsp}" = "yes"; then
-  VLC_ADD_PLUGIN([access_realrtsp])
-fi
-
 dnl
 dnl A52/AC3 decoder plugin
 dnl
@@ -2729,7 +2721,7 @@ then
     then
       dnl  The given directory can't be found
       AC_MSG_RESULT(no)
-      AC_MSG_ERROR([${with_a52_tree} directory doesn't exist])
+      AC_MSG_ERROR([${with_a52_tree} directory does not exist])
     fi
     dnl  Use a custom a52dec
     AC_MSG_CHECKING(for a52.h in ${real_a52_tree}/include)
@@ -2748,13 +2740,13 @@ then
         then
           AC_MSG_ERROR([make sure you have at least a52dec-0.7.3 ($real_a52_tree)])
         else
-          AC_MSG_ERROR([the specified tree hasn't been compiled])
+          AC_MSG_ERROR([the specified tree has not been compiled])
         fi
       ])
       LDFLAGS="${LDFLAGS_save}"
     else
       AC_MSG_RESULT(no)
-      AC_MSG_ERROR([the specified tree doesn't have a52.h])
+      AC_MSG_ERROR([the specified tree does not have a52.h])
     fi
   else
     if test -z "${with_a52}"
@@ -2774,7 +2766,7 @@ then
         VLC_ADD_CPPFLAGS([a52tofloat32],[${CPPFLAGS_test}])
       ],[
         AC_MSG_ERROR([Could not find liba52 on your system: you may get it from http://liba52.sf.net/. Alternatively you can use --disable-a52 to disable the a52 plugin.])
-        ])
+        ], [$LIBM])
     ],[
       AC_MSG_ERROR([Could not find liba52 on your system: you may get it from http://liba52.sf.net/. Alternatively you can use --disable-a52 to disable the a52 plugin.])
     ])
@@ -2822,9 +2814,22 @@ then
 fi
 
 dnl
-dnl  Speex plugin
+dnl  Speex plugins
 dnl
-PKG_ENABLE_MODULES_VLC([SPEEX], [], [ogg speex >= 1.0.5], [Speex decoder support], [auto])
+PKG_ENABLE_MODULES_VLC([SPEEX], [], [ogg speex >= 1.0.5], [Speex support], [auto])
+have_speexdsp="no"
+AS_IF([test "${enable_speex}" != "no"], [
+  PKG_CHECK_MODULES([SPEEXDSP], [speexdsp], [
+    have_speexdsp="yes"
+  ], [
+    AS_IF([test -n "${enable_speex}"], [
+      AC_MSG_ERROR([${SPEEXDSP_PKG_ERRORS}.])
+    ], [
+      AC_MSG_WARN([${SPEEXDSP_PKG_ERRORS}.])
+    ])
+  ])
+])
+AM_CONDITIONAL([HAVE_SPEEXDSP], [test "$have_speexdsp" = "yes"])
 
 dnl
 dnl  theora decoder plugin
@@ -2873,7 +2878,7 @@ if test "${enable_x264}" != "no"; then
     then
       dnl  The given directory can't be found
       AC_MSG_RESULT(no)
-      AC_MSG_ERROR([${with_x264_tree} directory doesn't exist])
+      AC_MSG_ERROR([${with_x264_tree} directory does not exist])
     fi
     dnl  Use a custom libx264
     AC_MSG_CHECKING(for x264.h in ${real_x264_tree})
@@ -2890,12 +2895,12 @@ if test "${enable_x264}" != "no"; then
           VLC_ADD_CFLAGS([x264], [-DPTW32_STATIC_LIB])
         fi
       ],[
-        AC_MSG_ERROR([the specified tree hasn't been compiled])
+        AC_MSG_ERROR([the specified tree has not been compiled])
       ])
       LDFLAGS="${LDFLAGS_save}"
     else
       AC_MSG_RESULT(no)
-      AC_MSG_ERROR([the specified tree doesn't have x264.h])
+      AC_MSG_ERROR([the specified tree does not have x264.h])
     fi
   else
       PKG_CHECK_MODULES(X264,x264 >= 0.86, [
@@ -2912,7 +2917,7 @@ if test "${enable_x264}" != "no"; then
         fi
       ],[
         if test "${enable_x264}" = "yes"; then
-            AC_MSG_ERROR([Could not find libx264 >= 0.86 on your system: you may get it from http://www.videolan.org/x264.html])
+            AC_MSG_ERROR([${X264_PKG_ERRORS}: you may get it from http://www.videolan.org/x264.html])
           fi
       ])
     LDFLAGS="${LDFLAGS_save}"
@@ -2924,11 +2929,6 @@ dnl libfluidsynth (MIDI synthetizer) plugin
 dnl
 PKG_ENABLE_MODULES_VLC([FLUIDSYNTH], [], [fluidsynth], [MIDI synthetiser with libfluidsynth], [auto])
 
-dnl
-dnl libsamplerate plugin
-dnl
-PKG_ENABLE_MODULES_VLC([SAMPLERATE], [], [samplerate], [Resampler with libsamplerate], [auto])
-
 dnl
 dnl Teletext Modules
 dnl vbi decoder plugin (using libzbvi)
@@ -2943,8 +2943,7 @@ AC_ARG_ENABLE(telx,
                   zvbi) (default enabled if zvbi is absent)]))
 
 AS_IF( [test "${enable_zvbi}" != "no"],[
-    PKG_CHECK_MODULES(ZVBI,
-        zvbi-0.2 >= 0.2.28,
+    PKG_CHECK_MODULES(ZVBI, [zvbi-0.2 >= 0.2.28],
         [
           VLC_ADD_LIBS([zvbi],[$ZVBI_LIBS])
           if test "${SYS}" = "mingw32"; then
@@ -2954,11 +2953,10 @@ AS_IF( [test "${enable_zvbi}" != "no"],[
           VLC_ADD_PLUGIN([zvbi])
           AC_DEFINE(ZVBI_COMPILED, 1, [Define if the zvbi module is built])
           AS_IF( [test "${enable_telx}" = "yes"],[
-                  AC_MSG_WARN([The zvbi and telx modules are uncompatibles.
-                               Using zvbi.])
+                  AC_MSG_WARN([The zvbi and telx modules are incompatible. Using zvbi.])
                   ])
         ],[
-          AC_MSG_WARN(ZVBI library not found. Enabling the telx module instead)
+          AC_MSG_WARN([${ZVBI_PKG_ERRORS}. Enabling the telx module instead.])
         ])
     ])
 AS_IF( [test "${enable_telx}" != "no" ],[
@@ -2971,7 +2969,7 @@ dnl
 AC_ARG_ENABLE(libass,
   [  --enable-libass         Subtitle support using libass (default enabled)])
 AS_IF( [test "${enable_libass}" != "no"], [
-  PKG_CHECK_MODULES(LIBASS, libass >= 0.9.8,
+  PKG_CHECK_MODULES(LIBASS, [libass >= 0.9.8],
       [
         VLC_ADD_LIBS([libass],[$LIBASS_LIBS])
         VLC_ADD_CFLAGS([libass],[$LIBASS_CFLAGS])
@@ -2982,63 +2980,69 @@ AS_IF( [test "${enable_libass}" != "no"], [
            VLC_ADD_LIBS([libass],[-lfontconfig])
        ])
       ],[
-        AC_MSG_WARN([LIBASS library not found])
+        AC_MSG_WARN([${LIBASS_PKG_ERRORS}.])
       ])
   ])
 
 dnl
 dnl  kate decoder plugin
 dnl
-AC_ARG_ENABLE(kate,
-[  --enable-kate           kate codec (default enabled)])
-AS_IF([test "${enable_kate}" != "no"], [
-  PKG_CHECK_MODULES(KATE,[kate >= 0.1.5], [
-      VLC_ADD_PLUGIN([kate])
-      VLC_ADD_CFLAGS([kate],[$KATE_CFLAGS])
-      VLC_ADD_LIBS([kate],[$KATE_LIBS]) ],[
-        AC_CHECK_HEADERS(kate/kate.h, [
-          AC_CHECK_LIB(kate, kate_decode_init, [
-            VLC_ADD_PLUGIN([kate])
-            VLC_ADD_LIBS([kate],[-lkate -logg]) ],[
-            AS_IF([test "x${enable_kate}" != "x"], [
-              AC_MSG_ERROR([libkate doesn't appear to be installed on your system.
-              You also need to check that you have a libogg posterior to the 1.0 release.])
-            ])
-         ], [-lkate -logg])
-        ],[
-          AS_IF([test "x${enable_kate}" != "x"], [
-            AC_MSG_ERROR([libkate headers do not appear to be installed on your system.
-            You also need to check that you have a libogg posterior to the 1.0 release.])
-          ])
-        ])
-  ])
-])
-
+PKG_ENABLE_MODULES_VLC([KATE], [], [kate >= 0.3.0], [kate codec], [auto])
 
 dnl
 dnl  tiger rendering for kate decoder plugin
 dnl
 AC_ARG_ENABLE(tiger,
-[  --enable-tiger          Tiger rendering library for Kate streams (default enabled)])
+[  --enable-tiger          Tiger rendering library for Kate streams (default auto)])
 AS_IF([test "${enable_tiger}" != "no"], [
   PKG_CHECK_MODULES(TIGER,[tiger >= 0.3.1], [
       AC_DEFINE(HAVE_TIGER, 1, [Define if libtiger is available.])
       VLC_ADD_CFLAGS([kate],[$TIGER_CFLAGS])
       VLC_ADD_LIBS([kate],[$TIGER_LIBS]) ],[
-        AS_IF([test "x${enable_tiger}" != "x"], [
-          AC_MSG_ERROR([libtiger does not appear to be installed on your system.])
+        AS_IF([test -n "${enable_tiger}"], [
+          AC_MSG_ERROR([${TIGER_PKG_ERRORS}.])
         ])
   ])
 ])
 
 
-
 dnl
 dnl  Video plugins
 dnl
 
 EXTEND_HELP_STRING([Video plugins:])
 
+dnl
+dnl  OpenGL
+dnl
+PKG_CHECK_MODULES([GL], [gl], [
+  have_gl="yes"
+], [
+  AC_CHECK_HEADER([GL/gl.h], [
+    have_gl="yes"
+    GL_CFLAGS=""
+    GL_LIBS="-lGL"
+  ], [
+    have_gl="no"
+  ])
+])
+
+dnl OpenGL ES 2: depends on EGL 1.1 and is currently unfinished
+dnl PKG_ENABLE_MODULES_VLC([GLES2], [], [glesv2], [OpenGL ES v2 support], [auto])
+dnl OpenGL ES 1: depends on EGL 1.0 and is currently broken
+dnl PKG_ENABLE_MODULES_VLC([GLES1], [], [glesv1_cm], [OpenGL ES v1 support], [auto])
+
+AC_ARG_ENABLE(egl,
+  [  --enable-egl            OpenGL support through EGL (default disabled)],, [
+  enable_egl="no"
+])
+AS_IF([test "$enable_egl" != "no"], [
+  PKG_CHECK_MODULES([EGL], [egl], [
+    VLC_ADD_PLUGIN([gl])
+    VLC_ADD_PLUGIN([egl])
+  ])
+])
+
 dnl
 dnl  Xlib
 dnl
@@ -3061,6 +3065,10 @@ AC_ARG_ENABLE(xvideo,
   [  --enable-xvideo         XVideo support (default enabled)],, [
     enable_xvideo="$enable_xcb"
 ])
+AC_ARG_ENABLE(glx,
+  [  --enable-glx            OpenGL support through GLX (default enabled)],, [
+  enable_glx="$enable_xcb"
+])
 
 have_xcb="no"
 AS_IF([test "${enable_xcb}" != "no"], [
@@ -3081,7 +3089,7 @@ AS_IF([test "${enable_xcb}" != "no"], [
     VLC_ADD_LIBS([panoramix],[${XCB_RANDR_LIBS} ${XCB_LIBS}])
     VLC_ADD_CFLAGS([panoramix],[${XCB_RANDR_CFLAGS} ${XCB_CFLAGS}])
   ], [
-    AC_MSG_WARN([libxcb-randr not found. Panoramix filter will not be supported.])
+    AC_MSG_WARN([${XCB_RANDR_PKG_ERRORS}. Panoramix filter will not be supported.])
   ])
 
   dnl xcb-utils
@@ -3092,35 +3100,21 @@ AS_IF([test "${enable_xcb}" != "no"], [
     VLC_ADD_LIBS([globalhotkeys], [${XCB_KEYSYMS_LIBS} ${XCB_LIBS}])
     VLC_ADD_CFLAGS([xcb_window], [-DHAVE_XCB_KEYSYMS])
   ], [
-    AC_MSG_WARN([libxcb-keysyms (0.3.4 or later) not found. Hotkeys will not work.])
+    AC_MSG_WARN([${XCB_KEYSYMS_PKG_ERRORS}. Hotkeys will not work.])
   ])
-])
-AM_CONDITIONAL([HAVE_XCB], [test "${have_xcb}" = "yes"])
 
-AC_ARG_ENABLE(glx,
-  [  --enable-glx            X11 OpenGL (GLX) support (default enabled)],, [
-  enable_glx="$enable_xcb"
-])
-AS_IF([test "${enable_glx}" != "no"], [
-  PKG_CHECK_MODULES(XLIB_XCB, [x11-xcb])
-  PKG_CHECK_MODULES(GL, [gl],, [
-    AC_CHECK_HEADER([GL/gl.h], [
-      GL_CFLAGS=""
-      GL_LIBS="-lGL"
+  AS_IF([test "${enable_glx}" != "no"], [
+    AS_IF([test "${have_gl}" != "yes"], [
+      AC_MSG_ERROR([${GL_PKG_ERRORS}. Pass --disable-glx if you do not need OpenGL X11 support.])
+    ])
+    PKG_CHECK_MODULES(XLIB_XCB, [x11-xcb], [
+      VLC_ADD_PLUGIN([xcb_glx])
     ], [
-      AC_MSG_ERROR([GLX (libGL) cannot be found. If you do not need OpenGL with X11, use --disable-glx.])
+      AC_MSG_ERROR([${XLIB_XCB_PKG_ERRORS}. Pass --disable-glx if you do not need OpenGL X11 support.])
     ])
   ])
-  VLC_ADD_PLUGIN([xcb_glx])
 ])
-
-dnl
-dnl  OpenGL
-dnl
-PKG_ENABLE_MODULES_VLC([GL], [], [gl], [OpenGL support], [auto])
-PKG_ENABLE_MODULES_VLC([GLES1], [], [glesv1_cm], [OpenGL ES v1 support], [auto])
-PKG_ENABLE_MODULES_VLC([GLES2], [], [glesv2], [OpenGL ES v2 support], [auto])
-PKG_ENABLE_MODULES_VLC([EGL], [], [egl], [EGL support], [auto])
+AM_CONDITIONAL([HAVE_XCB], [test "${have_xcb}" = "yes"])
 
 dnl
 dnl  SDL module
@@ -3136,7 +3130,7 @@ then
       if test "${SYS}" != "darwin"; then
         VLC_ADD_PLUGIN([vout_sdl])
       fi
-      if test "${SYS}" != "mingw32"; then
+      if test "${SYS}" != "mingw32" -a "${SYS}" != "os2"; then
         VLC_ADD_LIBS([vout_sdl],[${X_LIBS} ${X_PRE_LIBS} -lX11])
       fi
       VLC_ADD_CFLAGS([vout_sdl],[${SDL_CFLAGS}])
@@ -3148,17 +3142,28 @@ then
           VLC_ADD_PLUGIN([sdl_image])
           VLC_ADD_LIBS([sdl_image],[${SDL_IMAGE_LIBS}])
           VLC_ADD_CFLAGS([sdl_image], [${SDL_IMAGE_CFLAGS}])],
-          [ AC_MSG_WARN([The development package for SDL_image is not installed.
-    You should install it alongside your SDL package.])
+          [ AC_MSG_WARN([${SDL_IMAGE_PKG_ERRORS}. You should install it alongside your SDL package.])
           ])
       ])
    ],[
-     AC_MSG_WARN([The development package for SDL is not present or too old.
-                  You need 1.2.10. Alternatively you can also configure with
-                  --disable-sdl.])
+     AC_MSG_WARN([${SDL_PKG_ERRORS}.])
    ])
 fi
 
+
+dnl
+dnl Mac Vout
+AC_ARG_ENABLE(macosx-vout,
+  [  --enable-macosx-vout    Mac OS X video output module (default enabled on Mac OS X)])
+if test "x${enable_macosx_vout}" != "xno" &&
+  (test "${SYS}" = "darwin" || test "${enable_macosx_vout}" = "yes")
+then
+  VLC_ADD_LIBS([vout_macosx],[-Wl,-framework,Cocoa])
+  VLC_ADD_LIBS([vout_macosx],[-Wl,-framework,OpenGL])
+  VLC_ADD_PLUGIN([vout_macosx])
+fi
+
+
 dnl
 dnl  freetype module
 dnl
@@ -3199,21 +3204,29 @@ if test "${enable_freetype}" != "no"; then
         PKG_CHECK_MODULES(FRIBIDI, fribidi, [
           VLC_ADD_CPPFLAGS([freetype skins2], [${FRIBIDI_CFLAGS} -DHAVE_FRIBIDI])
           VLC_ADD_LIBS([freetype skins2], [${FRIBIDI_LIBS}])
-        ],[AC_MSG_WARN([library fribidi not found. Bidirectional support will be disabled in freetype])])
+        ],[AC_MSG_WARN([${FRIBIDI_PKG_ERRORS}. Bidirectional support will be disabled in FreeType.])])
       fi
 
   ],[
   have_freetype=no
-  AS_IF([ test "${enable_freetype}" = "yes"],[
-    AC_MSG_ERROR([Freetype2 package cannot be detected. Install Freetype2 development or configure with --disable-freetype.])
+  AS_IF([test -n "${enable_freetype}"],[
+    AC_MSG_ERROR([${FREETYPE_PKG_ERRORS}. Install FreeType2 development or configure with --disable-freetype.])
     ])
   ])
 fi
 
+
 dnl
-dnl  libxml2 module
+dnl  QuartzText vout module (iOS/Mac OS)
 dnl
-PKG_ENABLE_MODULES_VLC([LIBXML2], [xml], [libxml-2.0 >= 2.5], [libxml2 support],[auto])
+AC_ARG_ENABLE(macosx-quartztext,
+  [  --enable-macosx-quartztext   Mac OS X quartz text module (default enabled on Mac OS X)])
+if test "x${enable_macosx_quartztext}" != "xno" &&
+  (test "${SYS}" = "darwin" || test "${enable_macosx_quartztext}" = "yes")
+then
+  VLC_ADD_PLUGIN([quartztext])
+  VLC_ADD_LIBS([quartztext],[-Wl,-framework,ApplicationServices])
+fi
 
 dnl
 dnl  SVG module
@@ -3245,18 +3258,6 @@ then
   VLC_ADD_LIBS([vout_ios], [-Wl,-framework,OpenGLES,-framework,QuartzCore,-framework,UIKit,-framework,Foundation])
 fi
 
-dnl
-dnl  QuartzText vout module (iOS/Mac OS)
-dnl
-AC_ARG_ENABLE(macosx-quartztext,
-  [  --enable-macosx-quartztext   Mac OS X quartz text module (default enabled on Mac OS X)])
-if test "x${enable_macosx_quartztext}" != "xno" &&
-  (test "${SYS}" = "darwin" || test "${enable_macosx_quartztext}" = "yes")
-then
-  VLC_ADD_PLUGIN([quartztext])
-  VLC_ADD_LIBS([quartztext],[-Wl,-framework,ApplicationServices])
-fi
-
 dnl
 dnl  Windows DirectX module
 dnl
@@ -3268,20 +3269,25 @@ fi
 
 AC_ARG_ENABLE(directx,
   [  --enable-directx        Win32 DirectX support (default enabled on Win32)])
-if test "${enable_directx}" != "no"
-then
-  if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"
-  then
-      VLC_ADD_LIBS([directx],[-luser32])
+if test "${enable_directx}" != "no"; then
+  if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"; then
+      dnl DDraw
       AC_CHECK_HEADERS(ddraw.h,
       [ VLC_ADD_PLUGIN([directx aout_directx])
-        VLC_ADD_LIBS([directx],[-lgdi32])
+        VLC_ADD_LIBS([directx],[-luser32 -lgdi32])
       ],[AC_MSG_ERROR([Cannot find DirectX headers!])]
       )
-      AC_CHECK_HEADERS(GL/glext.h,
+
+      dnl OpenGL
+      AC_CHECK_HEADERS(GL/wglew.h,
       [ VLC_ADD_PLUGIN([glwin32])
         VLC_ADD_LIBS([glwin32],[-lopengl32 -lgdi32])
+      ],[],[
+        #include <windows.h>
+        #include <GL/gl.h>
       ])
+
+      dnl Direct3D
       AC_CHECK_HEADERS(d3d9.h,
       [ VLC_ADD_PLUGIN([direct3d])
         VLC_ADD_LIBS([direct3d],[-lgdi32])
@@ -3294,7 +3300,7 @@ dnl
 dnl  Windows Direct2D plugin
 dnl
 AC_ARG_ENABLE(direct2d,
-  [  --enable-direct2d         Win7/VistaPU Direct2D support (default auto on Win32)],, [
+  [  --enable-direct2d       Win7/VistaPU Direct2D support (default auto on Win32)],, [
   AS_IF([test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"], [
     enable_direct2d="no"
   ])
@@ -3398,7 +3404,7 @@ if test "${enable_directfb}" = "yes"; then
         VLC_ADD_CPPFLAGS([directfb],[${CPPFLAGS_mydirectfb}])
         VLC_ADD_LIBS([directfb],[${LIBS_mydirectfb}])
     else
-        AC_MSG_ERROR([cannot find directfb headers and/or libraries ])
+        AC_MSG_ERROR([${DIRECTFB_PKG_ERRORS}.])
     fi
 fi
 
@@ -3425,6 +3431,29 @@ dnl  libcaca plugin
 dnl
 PKG_ENABLE_MODULES_VLC([CACA], [], [caca >= 0.99.beta14], [libcaca output],[auto])
 
+dnl
+dnl  OS/2 KVA plugin
+dnl
+AC_ARG_ENABLE(kva,
+  [AS_HELP_STRING([--enable-kva],
+    [support the K Video Accelerator KVA (default enabled on OS/2)])],, [
+  AS_IF([test "$SYS" = "os2"], [
+    enable_kva="yes"
+  ])
+])
+have_kva="no"
+KVA_LIBS=""
+AS_IF([test "$enable_kva" != "no"], [
+  AC_CHECK_HEADERS([kva.h], [
+    have_kva="yes"
+    AC_CHECK_LIB(kva, main, [
+      KVA_LIBS="-lkva"
+    ])
+  ])
+])
+AC_SUBST(KVA_LIBS)
+AM_CONDITIONAL([HAVE_KVA], [test "${have_kva}" = "yes"])
+
 dnl
 dnl  Audio plugins
 dnl
@@ -3544,7 +3573,7 @@ dnl
 dnl  AudioQueue plugin
 dnl
 AC_ARG_ENABLE(audioqueue,
-  [  --enable-audioqueue       AudioQueue audio module (default disabled)])
+  [  --enable-audioqueue     AudioQueue audio module (default disabled)])
 if test "${enable_audioqueue}" = "yes"
 then
   VLC_ADD_PLUGIN([audioqueue])
@@ -3570,10 +3599,32 @@ if test "${HAVE_ANDROID}" = "1"; then
 fi
 
 dnl
-dnl UPnP Plugin (Intel SDK)
+dnl libsamplerate plugin
 dnl
-PKG_ENABLE_MODULES_VLC([UPNP], [upnp], [libupnp], [Intel UPnp SDK],[auto])
-VLC_ADD_CXXFLAGS([upnp],[${UPNP_CFLAGS}])
+PKG_ENABLE_MODULES_VLC([SAMPLERATE], [], [samplerate], [Resampler with libsamplerate], [auto])
+
+dnl
+dnl  OS/2 KAI plugin
+dnl
+AC_ARG_ENABLE(kai,
+  [AS_HELP_STRING([--enable-kai],
+    [support the K Audio Interface KAI (default enabled on OS/2)])],, [
+  AS_IF([test "$SYS" = "os2"], [
+    enable_kai="yes"
+  ])
+])
+have_kai="no"
+KAI_LIBS=""
+AS_IF([test "$enable_kai" != "no"], [
+  AC_CHECK_HEADERS([kai.h], [
+    have_kai="yes"
+    AC_CHECK_LIB(kai, main, [
+      KAI_LIBS="-lkai"
+    ])
+  ])
+])
+AC_SUBST(KAI_LIBS)
+AM_CONDITIONAL([HAVE_KAI], [test "${have_kai}" = "yes"])
 
 dnl
 dnl  Interface plugins
@@ -3591,7 +3642,7 @@ AS_IF([test "${enable_skins2}" != "no"], [
   AS_IF([test "${SYS}" = "mingw32"], [
     VLC_ADD_CPPFLAGS([skins2],[-U_OFF_T_ -U_off_t -Imodules/gui/skins2 -DWIN32_SKINS])
     VLC_ADD_CXXFLAGS([skins2],[-O2 -fno-rtti])
-    VLC_ADD_LIBS([skins2],[-loleaut32 -lwinspool -lwinmm -lshell32 -lctl3d32 -ladvapi32 -lwsock32 -lgdi32 -lcomdlg32 -lole32 -luuid -lcomctl32  -lmsimg32 -luser32])
+    VLC_ADD_LIBS([skins2],[-lgdi32 -lole32 -luuid -lmsimg32])
 
   ], [test "${SYS}" = "darwin"], [
     VLC_ADD_CPPFLAGS([skins2],[-Imodules/gui/skins2 -DMACOSX_SKINS])
@@ -3617,9 +3668,11 @@ AS_IF([test "${enable_skins2}" != "no"], [
     ], [
       AC_MSG_ERROR([Skins2 interface requires FreeType, libxpm, libxext and libxinerama])
     ])
+    enable_skins2="no"
+  ], [
+    VLC_ADD_PLUGIN([skins2])
+    ALIASES="${ALIASES} svlc"
   ])
-  VLC_ADD_PLUGIN([skins2])
-  ALIASES="${ALIASES} svlc"
 ])
 AM_CONDITIONAL(BUILD_SKINS, [test "${enable_skins2}" = "yes"])
 
@@ -3642,7 +3695,7 @@ AS_IF([test "${enable_hildon}" = "yes"], [
       VLC_ADD_CFLAGS([hildon],[${HILDON_FM_CFLAGS} -DHAVE_HILDON_FM])
       VLC_ADD_LIBS([hildon],[${HILDON_FM_LIBS}])
     ], [
-      AC_MSG_WARN(hildon-fm-2 not found)
+      AC_MSG_WARN([${HILDON_FM_PKG_ERRORS}.])
     ])
     VLC_ADD_CFLAGS([hildon],[${HILDON_CFLAGS} ${X_CFLAGS}])
     VLC_ADD_LIBS([hildon],[${HILDON_LIBS} ${X_LIBS} ${X_PRE_LIBS} -lX11])
@@ -3650,7 +3703,7 @@ AS_IF([test "${enable_hildon}" = "yes"], [
     ALIASES="${ALIASES} mvlc"
   ], [
     AS_IF([test "${enable_hildon}" = "yes"],[
-      AC_MSG_ERROR([Hildon libraries not found])
+      AC_MSG_ERROR([${HILDON_PKG_ERRORS}.])
     ])
     enable_hildon="no"
   ])
@@ -3665,7 +3718,7 @@ AC_ARG_ENABLE(qt4,
   AS_IF([test "${SYS}" = "darwin"], [enable_qt4=no])
 ])
 AS_IF([test "${enable_qt4}" != "no"], [
-  PKG_CHECK_MODULES(QT4, [QtCore QtGui >= 4.4.0], [
+  PKG_CHECK_MODULES(QT4, [QtCore QtGui >= 4.6.0], [
     VLC_ADD_PLUGIN([qt4])
     VLC_ADD_LIBS([qt4],[${QT4_LIBS}])
     VLC_ADD_CXXFLAGS([qt4],[${QT4_CFLAGS}])
@@ -3702,10 +3755,10 @@ AS_IF([test "${enable_qt4}" != "no"], [
     AC_PATH_PROG(RCC, rcc, rcc,`eval $PKG_CONFIG --variable=exec_prefix QtCore`/bin)
     AC_PATH_PROGS(UIC, [uic-qt4 uic], uic,`eval $PKG_CONFIG --variable=exec_prefix QtCore`/bin)
   ], [
-    AS_IF([test "${enable_qt4}" = "yes"],[
-      AC_MSG_ERROR([Qt 4 library not found])
+    AS_IF([test -n "${enable_qt4}"],[
+      AC_MSG_ERROR([${QT4_PKG_ERRORS}.])
     ],[
-      AC_MSG_WARN([Qt 4 library not found])
+      AC_MSG_WARN([${QT4_PKG_ERRORS}.])
     ])
     enable_qt4="no"
   ])
@@ -3716,50 +3769,39 @@ dnl
 dnl Simple test for skins2 dependency
 dnl
 AS_IF([test "${enable_skins2}" != "no" && test "x$enable_qt4" = "xno"], [
-  AC_MSG_ERROR([The skins2 module depends on a the Qt4 development package. Without it you won't be able to open any dialog box from the interface, which makes the skins2 interface rather useless. Install the Qt4 development package or alternatively you can also configure with: --disable-qt4 --disable-skins2.])
+  AC_MSG_ERROR([The skins2 module depends on a the Qt4 development package. Without it you will not be able to open any dialog box from the interface, which makes the skins2 interface rather useless. Install the Qt4 development package or alternatively you can also configure with: --disable-qt4 --disable-skins2.])
 ])
 
 dnl
-dnl  MacOS X video output/gui modules
+dnl  MacOS X gui module
 dnl
 AC_ARG_ENABLE(macosx,
   [  --enable-macosx         Mac OS X gui support (default enabled on Mac OS X)])
-if test "x${enable_macosx}" != "xno" &&
-(test "${SYS}" = "darwin" || test "${enable_macosx}" = "yes")
+if test "x${enable_macosx}" != "xno" -a "${SYS}" = "darwin"
 then
-  VLC_ADD_LIBS([macosx minimal_macosx],[-Wl,-framework,Cocoa])
-  VLC_ADD_LIBS([macosx minimal_macosx],[-Wl,-framework,OpenGL])
-  VLC_ADD_LIBS([macosx minimal_macosx],            [-Wl,-framework,Carbon])
-  VLC_ADD_LIBS([macosx minimal_macosx],            [-Wl,-framework,CoreServices])
-  VLC_ADD_LIBS([macosx minimal_macosx],            [-Wl,-framework,AGL])
-  VLC_ADD_LIBS([macosx],                           [-Wl,-framework,QTKit])
-  VLC_ADD_LIBS([macosx],                           [-Wl,-framework,IOKit])
-  VLC_ADD_LIBS([macosx],                           [-F${CONTRIB_DIR}/Sparkle -Wl,-framework,Sparkle])
-  VLC_ADD_OBJCFLAGS([macosx],                         [-F${CONTRIB_DIR}/Sparkle])
-  VLC_ADD_LIBS([macosx],                           [-F${CONTRIB_DIR}/BGHUDAppKit -Wl,-framework,BGHUDAppKit])
-  VLC_ADD_OBJCFLAGS([macosx],                         [-F${CONTRIB_DIR}/BGHUDAppKit])
-  dnl For bug report
-  VLC_ADD_LIBS([macosx],                           [-Wl,-framework,AddressBook])
-  VLC_ADD_LIBS([macosx],                           [-Wl,-framework,WebKit])
+  VLC_ADD_LIBS([macosx minimal_macosx], [-Wl,-framework,Cocoa -Wl,-framework,OpenGL -Wl,-framework,Carbon -Wl,-framework,CoreServices -Wl,-framework,AGL])
   VLC_ADD_OBJCFLAGS([macosx minimal_macosx], [-fobjc-exceptions] )
-
   VLC_ADD_PLUGIN([macosx minimal_macosx])
-fi
 
-dnl
-dnl  MacOS X related modules
-dnl
+  VLC_ADD_LIBS([macosx], [-Wl,-framework,QTKit -Wl,-framework,IOKit -Wl,-framework,AddressBook -Wl,-framework,WebKit])
+
+  CFLAGS="-I${CONTRIB_DIR}/Sparkle.framework/Headers ${CFLAGS_saved}"
+  AC_CHECK_HEADERS(Sparkle.h, [
+    VLC_ADD_LIBS([macosx], [-F${CONTRIB_DIR} -Wl,-framework,Sparkle])
+    VLC_ADD_OBJCFLAGS([macosx], [-F${CONTRIB_DIR}])
+  ])
+  if ! test -d ${CONTRIB_DIR}/BGHUDAppKit.framework
+  then
+    AC_MSG_ERROR([BGHUDAppKit framework is required and was not found in ${CONTRIB_DIR}])
+  fi
+  VLC_ADD_LIBS([macosx], [-F${CONTRIB_DIR} -Wl,-framework,BGHUDAppKit])
+  VLC_ADD_OBJCFLAGS([macosx], [-F${CONTRIB_DIR}])
 
-AC_ARG_ENABLE(macosx-vout,
-  [  --enable-macosx-vout    Mac OS X video output module (default enabled on Mac OS X)])
-if test "x${enable_macosx_vout}" != "xno" &&
-  (test "${SYS}" = "darwin" || test "${enable_macosx_vout}" = "yes")
-then
-  VLC_ADD_LIBS([vout_macosx],[-Wl,-framework,Cocoa])
-  VLC_ADD_LIBS([vout_macosx],[-Wl,-framework,OpenGL])
-  VLC_ADD_PLUGIN([vout_macosx])
 fi
 
+dnl
+dnl  MacOS X dialor provider
+dnl
 AC_ARG_ENABLE(macosx-dialog-provider,
   [  --enable-macosx-dialog-provider Mac OS X dialog module (default enabled on Mac OS X)])
 if test "x${enable_macosx_dialog_provider}" != "xno" &&
@@ -3769,33 +3811,6 @@ then
   VLC_ADD_PLUGIN([macosx_dialog_provider])
 fi
 
-AC_ARG_ENABLE(macosx-qtcapture,
-  [  --enable-macosx-qtcapture Mac OS X qtcapture (iSight) module (default enabled on Mac OS X)])
-if test "x${enable_macosx_qtcapture}" != "xno" &&
-  (test "${SYS}" = "darwin" || test "${enable_macosx_qtcapture}" = "yes")
-then
-  VLC_ADD_LIBS([qtcapture], [-Wl,-framework,Cocoa])
-  VLC_ADD_LIBS([qtcapture], [-Wl,-framework,QTKit])
-  VLC_ADD_LIBS([qtcapture], [-Wl,-framework,CoreAudio])
-  VLC_ADD_LIBS([qtcapture], [-Wl,-framework,QuartzCore])
-  VLC_ADD_LIBS([qtcapture], [-Wl,-framework,CoreVideo])
-  VLC_ADD_PLUGIN([qtcapture])
-fi
-
-AC_ARG_ENABLE(macosx-eyetv,
-  [  --enable-macosx-eyetv   Mac OS X EyeTV (TNT Tuner) module (default enabled on Mac OS X)])
-if test "x${enable_macosx_eyetv}" != "xno" &&
-  (test "${SYS}" = "darwin" || test "${enable_macosx_eyetv}" = "yes")
-then
-  VLC_ADD_LIBS([access_eyetv], [-Wl,-framework,Foundation])
-  VLC_ADD_PLUGIN([access_eyetv])
-fi
-
-AC_ARG_ENABLE(macosx-vlc-app,
-  [  --enable-macosx-vlc-app build the VLC media player (default enabled on Mac OS X)])
-AM_CONDITIONAL(BUILD_MACOSX_VLC_APP, [test "${enable_macosx_vlc_app}" != "no" &&
-    (test "${SYS}" = "darwin" || test "${enable_macosx_vlc_app}" = "yes") ])
-
 dnl
 dnl  ncurses module
 dnl
@@ -3853,6 +3868,22 @@ then
  ])
 fi
 
+dnl
+dnl  Lirc plugin
+dnl
+AC_ARG_ENABLE(lirc,
+  [  --enable-lirc           lirc support (default disabled)])
+if test "${enable_lirc}" = "yes"
+then
+  AC_CHECK_HEADER(lirc/lirc_client.h, AC_CHECK_LIB(lirc_client, lirc_init, have_lirc="true", have_lirc="false"),have_lirc="false")
+  if test "${have_lirc}" = "true"
+  then
+    VLC_ADD_PLUGIN([lirc])
+    VLC_ADD_LIBS([lirc],[-llirc_client])
+  fi
+fi
+
+EXTEND_HELP_STRING([Visualisations and Video filter plugins:])
 dnl
 dnl Visualisation plugin
 dnl
@@ -3872,7 +3903,7 @@ dnl
 dnl libprojectM visualization plugin
 dnl
 AC_ARG_ENABLE(projectm,
-  [  --enable-projectm          projectM visualization plugin (default enabled)])
+  [  --enable-projectm       projectM visualization plugin (default enabled)])
 AS_IF([test "${enable_projectm}" != "no"],
   [
     PKG_CHECK_MODULES(PROJECTM, libprojectM,
@@ -3885,7 +3916,7 @@ AS_IF([test "${enable_projectm}" != "no"],
         [ AC_MSG_WARN( [Using libprojectM version 1] )
       ])
     ],[
-      AC_MSG_WARN([libprojectM library not found])
+      AC_MSG_WARN([${PROJECTM_PKG_ERRORS}.])
     ])
   ])
 
@@ -3903,6 +3934,7 @@ AS_IF([test "${enable_atmo}" != no], [
   ])
 ])
 
+EXTEND_HELP_STRING([Service Discovery plugins:])
 dnl
 dnl  Bonjour services discovery
 PKG_ENABLE_MODULES_VLC([BONJOUR], [], [avahi-client >= 0.6], [Bonjour services discovery], [auto])
@@ -3916,22 +3948,19 @@ dnl MTP devices services discovery
 PKG_ENABLE_MODULES_VLC([MTP], [mtp access_mtp], [libmtp >= 1.0.0], [MTP devices support], [auto])
 
 dnl
-dnl  Lirc plugin
+dnl UPnP Plugin (Intel SDK)
 dnl
-AC_ARG_ENABLE(lirc,
-  [  --enable-lirc           lirc support (default disabled)])
-if test "${enable_lirc}" = "yes"
-then
-  AC_CHECK_HEADER(lirc/lirc_client.h, AC_CHECK_LIB(lirc_client, lirc_init, have_lirc="true", have_lirc="false"),have_lirc="false")
-  if test "${have_lirc}" = "true"
-  then
-    VLC_ADD_PLUGIN([lirc])
-    VLC_ADD_LIBS([lirc],[-llirc_client])
-  fi
-fi
+PKG_ENABLE_MODULES_VLC([UPNP], [upnp], [libupnp], [Intel UPNP SDK],[auto])
+VLC_ADD_CXXFLAGS([upnp],[${UPNP_CFLAGS}])
 
 EXTEND_HELP_STRING([Misc options:])
 
+dnl
+dnl  libxml2 module
+dnl
+PKG_ENABLE_MODULES_VLC([LIBXML2], [xml], [libxml-2.0 >= 2.5], [libxml2 support],[auto])
+
+
 dnl
 dnl libgcrypt
 dnl
@@ -3987,8 +4016,8 @@ AS_IF([test "${enable_gnutls}" != "no"], [
     VLC_ADD_CFLAGS([gnutls], [${GCRYPT_CFLAGS}])
     VLC_ADD_LIBS([gnutls], [$GNUTLS_LIBS])
   ], [
-    AS_IF([test "${enable_gnutls}" = "yes"], [
-      AC_MSG_ERROR([GNU TLS not present or too old (version 2.0.0 required)])
+    AS_IF([test -n "${enable_gnutls}"], [
+      AC_MSG_ERROR([${GNUTLS_PKG_ERRORS}.)])
     ])
   ])
 ])
@@ -4025,15 +4054,32 @@ AS_IF([test "${have_libgcrypt}" = "yes"], [
 
 
 dnl
-dnl OSSO (Maemo screen blanking) plugin
+dnl Nokia MCE plugin (Maemo screen unblanking)
 dnl
-PKG_ENABLE_MODULES_VLC([OSSO_SCREENSAVER], [], [libosso], [Maemo support], [auto])
+PKG_CHECK_MODULES([MCE], [dbus-1 mce], [VLC_ADD_PLUGIN([mce])], [true])
+
 
 AS_IF([test -f "/etc/maemo_version"], [
   AC_DEFINE([HAVE_MAEMO], 1, [Define to 1 if building for the Maemo platform.])
 ])
 
 
+dnl
+dnl Taglib plugin
+dnl
+AC_ARG_ENABLE(taglib,
+  [AS_HELP_STRING([--disable-taglib],
+    [do not use TagLib (default enabled)])])
+AS_IF([test "${enable_taglib}" != "no"], [
+  PKG_CHECK_MODULES(TAGLIB, taglib >= 1.5, [
+    VLC_ADD_PLUGIN([taglib])
+    VLC_ADD_LIBS([taglib],[$TAGLIB_LIBS -lz])
+    VLC_ADD_CXXFLAGS([taglib],[$TAGLIB_CFLAGS])
+  ], [
+    AC_MSG_WARN([${TAGLIB_PKG_ERRORS}.])])
+])
+
+
 dnl
 dnl update checking system
 dnl
@@ -4051,52 +4097,53 @@ then
 fi
 
 dnl
-dnl SQLite
+dnl Growl notification plugin
 dnl
-AC_ARG_WITH(sqlite,
-  [  --with-sqlite=PATH      sqlite path linking])
-if test "${SYS}" != "darwin"; then
-  PKG_ENABLE_MODULES_VLC([SQLITE], [], [sqlite3 >= 3.6.0], [sqlite3], [auto])
-else
-  if test "${enable_sqlite}" != "no"
-  then
-    AC_CHECK_HEADERS(sqlite3.h, [
-        VLC_ADD_PLUGIN([sqlite])
-        if test "${with_sqlite}" != "no" -a -n "${with_sqlite}"; then
-          AC_MSG_CHECKING(existence of sqlite directory in ${with_sqlite})
-          real_sqlite="`cd ${with_sqlite} 2>/dev/null && pwd`"
-          if test -z "${real_sqlite}"
-          then
-            dnl  The given directory can't be found
-            AC_MSG_RESULT(no)
-            AC_MSG_ERROR([cannot cd to ${with_sqlite}])
-          fi
-          VLC_ADD_CFLAGS([sqlite],[-I${with_sqlite}/include])
-          VLC_ADD_LIBS([sqlite], [-L${with_sqlite}/lib -lsqlite3])
-          AC_MSG_RESULT(yes)
-        else
-          VLC_ADD_LIBS([sqlite], [-lsqlite3])
-        fi
-        AC_DEFINE([SQLITE_MODULE], 1, [Define if you want to use SQLite module]) ],
-        AC_MSG_ERROR([sqlite3 is required for sqlite module]) )
-  fi
-fi
-AM_CONDITIONAL([HAVE_SQLITE], [test "${enable_sqlite}" != "no"])
+AC_ARG_ENABLE(growl,
+  [  --enable-growl          growl notification plugin (default disabled)],,
+  [enable_growl=no])
+AS_IF([test "${enable_growl}" != "no"], [
+    AC_CHECK_HEADERS(${CONTRIB_DIR}/Growl.framework/Versions/A/Headers/GrowlDefines.h, [
+      VLC_ADD_PLUGIN([growl])
+      VLC_ADD_LIBS([growl], [-F${CONTRIB_DIR} -Wl,-framework,Growl,-framework,CoreFoundation])
+      VLC_ADD_OBJCFLAGS([growl], [-F${CONTRIB_DIR}])
+      VLC_ADD_OBJCFLAGS([growl], [-fobjc-exceptions] )
+    ])
+  ]
+)
+
+dnl
+dnl Libnotify notification plugin
+dnl
+PKG_ENABLE_MODULES_VLC([NOTIFY], [], [libnotify gtk+-2.0], [libnotify notification], [auto])
 
 dnl
 dnl media library
 dnl
-AC_ARG_ENABLE(media-library, [--enable-media-library media library (default disabled)])
-if test "${enable_media_library}" = "yes"; then
-    if test "${enable_sqlite}" != "yes"; then
-       AC_MSG_ERROR([SQLite module is required for the media library])
-    else
-       AC_DEFINE([MEDIA_LIBRARY], 1, [Define if you want to use the VLC media library])
-       VLC_ADD_CPPFLAGS([qt4],"-DMEDIA_LIBRARY")
-       VLC_ADD_PLUGIN([media_library])
-    fi
-fi
-AM_CONDITIONAL([ENABLE_MEDIA_LIBRARY], [test "${enable_media_library}" = "yes"])
+AC_ARG_ENABLE(media-library,
+    [  --enable-media-library  media library (default disabled)])
+AS_IF([test "${enable_media_library}" = "yes"], [
+  AC_DEFINE([MEDIA_LIBRARY], 1, [Define if you want to use the VLC media library])
+  VLC_ADD_CPPFLAGS([qt4],"-DMEDIA_LIBRARY")
+  VLC_ADD_PLUGIN([media_library])
+
+dnl
+dnl SQLite
+dnl
+  AS_IF([test "${SYS}" != "darwin"], [
+    PKG_ENABLE_MODULES_VLC([SQLITE], [], [sqlite3 >= 3.6.0], [sqlite3], [auto])
+  ], [
+    AS_IF([test "${enable_sqlite}" != "no"], [
+      AC_CHECK_HEADERS(sqlite3.h, [
+        VLC_ADD_PLUGIN([sqlite])
+        VLC_ADD_LIBS([sqlite], [-lsqlite3])
+      ], [
+        AC_MSG_ERROR([sqlite3 is required for the media library])
+      ])
+    ])
+  ])
+])
+
 
 dnl
 dnl  Endianness check
@@ -4144,7 +4191,7 @@ dnl
 loader=false
 AC_ARG_ENABLE(loader,
   AS_HELP_STRING([--enable-loader],[build DLL loader for ELF i386 platforms
-                 (default disabled)]))
+          (default disabled)]))
 AM_CONDITIONAL(LOADER, [test "${enable_loader}" = "yes"])
 AS_IF([test "${enable_loader}" = "yes"],
   [ VLC_ADD_PLUGIN([dmo])
@@ -4163,14 +4210,10 @@ AC_ARG_ENABLE(vlc,
   [  --enable-vlc            build the VLC media player (default enabled)])
 AM_CONDITIONAL(BUILD_VLC, [test "${enable_vlc}" != "no"])
 
-
-dnl
-dnl Pic and shared libvlc stuff
-dnl
-AS_IF([test "${SYS}" = "mingw32"], [
-  FILE_LIBVLCCORE_DLL="!define LIBVLCCORE_DLL libvlccore.dll"
-  FILE_LIBVLC_DLL="!define LIBVLC_DLL libvlc.dll"
-])
+AC_ARG_ENABLE(macosx-vlc-app,
+  [  --enable-macosx-vlc-app build the VLC media player (default enabled on Mac OS X)])
+AM_CONDITIONAL(BUILD_MACOSX_VLC_APP, [test "${enable_macosx_vlc_app}" != "no" &&
+    (test "${SYS}" = "darwin" || test "${enable_macosx_vlc_app}" = "yes") ])
 
 dnl
 dnl  Stuff used by the program
@@ -4296,6 +4339,7 @@ AC_CONFIG_FILES([
   modules/packetizer/Makefile
   modules/services_discovery/Makefile
   modules/stream_filter/Makefile
+  modules/stream_filter/dash/Makefile
   modules/stream_out/Makefile
   modules/stream_out/transcode/Makefile
   modules/text_renderer/Makefile
@@ -4331,8 +4375,6 @@ AM_COND_IF([HAVE_DARWIN], [
 dnl Generate makefiles
 AC_OUTPUT
 
-/bin/echo -n "Enabled modules: ${PLUGINS}"
-
 dnl Do we have to use make or gmake ?
 USE_MAKE_OR_GMAKE=`case "${SYS}" in openbsd*) echo "gmake";; *) echo "make";; esac`
 dnl Shortcut to nice compile message
@@ -4351,15 +4393,13 @@ echo rm -f .error\$\$ >>compile
 echo exit \$ERROR >>compile
 chmod a+x compile
 
-printf "
+echo "
 libvlc configuration
 --------------------
 version               : ${VERSION}
 system                : ${SYS}
 architecture          : ${ARCH}
-build flavour         : "
-test "${enable_optimizations}" != "no" && printf ${enable_optimizations}
-echo ""
+optimizations         : ${enable_optimizations}"
 if test "${enable_vlc}" != "no"; then
 echo "vlc aliases           :${ALIASES}"
 else