]> git.sesse.net Git - vlc/blobdiff - configure.ac
Avoid potential memleak.
[vlc] / configure.ac
index c634c760224124cada48765c8f9a9a66c3326b1d..aab505c5b8dc008ac995c5725020f2e91b2036fc 100644 (file)
@@ -1,6 +1,6 @@
 dnl Autoconf settings for vlc
 
-AC_INIT(vlc, 1.0.0)
+AC_INIT(vlc, 1.0.0-git)
 VERSION_MAJOR="1"
 VERSION_MINOR="0"
 VERSION_REVISION="0"
@@ -275,6 +275,7 @@ case "${host_os}" in
     AC_ARG_WITH(macosx-sdk,
        [  --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}"
@@ -283,6 +284,7 @@ case "${host_os}" in
     AC_ARG_WITH(macosx-version-min,
        [  --with-macosx-version-min=VERSION  compile for MacOSX VERSION and above])
     if test "${with_macosx_version_min}" != "" ; then
+        CPP="${CPP} -mmacosx-version-min=${with_macosx_version_min}" 
         CC="${CC} -mmacosx-version-min=${with_macosx_version_min}" 
         CXX="${CXX} -mmacosx-version-min=${with_macosx_version_min}"
         OBJC="${OBJC} -mmacosx-version-min=${with_macosx_version_min}"
@@ -648,7 +650,7 @@ AM_CONDITIONAL(BUILD_GETOPT, ${need_getopt})
 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
 AC_TYPE_SIGNAL
 AC_CHECK_LIB(m,cos,[
-  VLC_ADD_LIBS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom visual panoramix rotate noise grain],[-lm])
+  VLC_ADD_LIBS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom visual panoramix rotate noise grain scene],[-lm])
 ])
 AC_CHECK_LIB(m,pow,[
   VLC_ADD_LIBS([avcodec avformat swscale imgresample postproc ffmpegaltivec stream_out_transrate i420_rgb faad twolame equalizer spatializer param_eq libvlc vorbis freetype mod mpc dmo quicktime realaudio realvideo galaktos opengl],[-lm])
@@ -853,7 +855,7 @@ AC_EGREP_HEADER(timespec,sys/time.h,[
 
 dnl Check for threads library
 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
-AC_CHECK_HEADERS(pthread.h kernel/scheduler.h kernel/OS.h)
+AC_CHECK_HEADERS(pthread.h)
 fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
 
 dnl Find where are the X headers and libraries
@@ -1024,7 +1026,12 @@ AC_CACHE_CHECK([if \$CC accepts -fomit-frame-pointer],
     [CFLAGS="${CFLAGS_save} -fomit-frame-pointer"
      AC_TRY_COMPILE([],,ac_cv_c_omit_frame_pointer=yes, ac_cv_c_omit_frame_pointer=no)])
 if test "${ac_cv_c_omit_frame_pointer}" != "no"; then
+ if test "${SYS}" != "darwin"; then
     CFLAGS_OPTIM_NODEBUG="${CFLAGS_OPTIM_NODEBUG} -fomit-frame-pointer"
+ else
+    dnl On darwin we explicitely disable it.
+    CFLAGS_OPTIM_NODEBUG="${CFLAGS_OPTIM_NODEBUG} -fno-omit-frame-pointer"
+ fi
 fi
 
 dnl Check for Darwin plugin linking flags
@@ -1091,42 +1098,9 @@ test "${enable_cprof}" != "yes" && enable_cprof="no"
 dnl
 dnl  default modules
 dnl
-VLC_ADD_PLUGIN([dummy])
-VLC_ADD_PLUGIN([stats])
-VLC_ADD_PLUGIN([logger])
-VLC_ADD_PLUGIN([memcpy])
-dnl Demuxers:
-VLC_ADD_PLUGIN([mpgv])
-VLC_ADD_PLUGIN([mpga])
-VLC_ADD_PLUGIN([m4v])
-VLC_ADD_PLUGIN([m4a])
-VLC_ADD_PLUGIN([h264])
-VLC_ADD_PLUGIN([cdg])
-VLC_ADD_PLUGIN([ps])
-VLC_ADD_PLUGIN([avi])
-VLC_ADD_PLUGIN([asf])
-VLC_ADD_PLUGIN([mp4])
-dnl Text codecs:
-VLC_ADD_PLUGIN([cvdsub])
-VLC_ADD_PLUGIN([svcdsub])
-VLC_ADD_PLUGIN([spudec])
-VLC_ADD_PLUGIN([subsdec])
-VLC_ADD_PLUGIN([subsusf])
-VLC_ADD_PLUGIN([t140])
-VLC_ADD_PLUGIN([dvbsub])
-VLC_ADD_PLUGIN([cc])
-dnl Video codecs:
-VLC_ADD_PLUGIN([cinepak])
-dnl Audio codecs:
-VLC_ADD_PLUGIN([araw])
-VLC_ADD_PLUGIN([adpcm])
-VLC_ADD_PLUGIN([mpeg_audio])
-VLC_ADD_PLUGIN([lpcm])
-VLC_ADD_PLUGIN([a52])
-VLC_ADD_PLUGIN([dts])
-VLC_ADD_PLUGIN([flac])
 dnl Video filters:
 VLC_ADD_PLUGIN([deinterlace])
+VLC_ADD_PLUGIN([yuvp])
 VLC_ADD_PLUGIN([invert])
 VLC_ADD_PLUGIN([adjust])
 VLC_ADD_PLUGIN([transform])
@@ -1146,36 +1120,13 @@ VLC_ADD_PLUGIN([canvas])
 VLC_ADD_PLUGIN([blendbench])
 VLC_ADD_PLUGIN([blend])
 VLC_ADD_PLUGIN([scale])
-VLC_ADD_PLUGIN([image])
 VLC_ADD_PLUGIN([vmem])
 VLC_ADD_PLUGIN([logo])
 VLC_ADD_PLUGIN([magnify])
 VLC_ADD_PLUGIN([puzzle])
 VLC_ADD_PLUGIN([colorthres])
-dnl Meta demuxers:
-VLC_ADD_PLUGIN([playlist])
-VLC_ADD_PLUGIN([export])
-VLC_ADD_PLUGIN([nsc])
-VLC_ADD_PLUGIN([xtag])
-dnl Channel mixing audio filters:
-VLC_ADD_PLUGIN([converter_fixed])
-VLC_ADD_PLUGIN([mono])
-VLC_ADD_PLUGIN([trivial_channel_mixer])
-dnl Resampling audio filters:
-VLC_ADD_PLUGIN([trivial_resampler])
-VLC_ADD_PLUGIN([ugly_resampler])
-dnl Audio mixers:
-VLC_ADD_PLUGIN([trivial_mixer])
-dnl Video chromas:
-VLC_ADD_PLUGIN([i420_rgb])
-VLC_ADD_PLUGIN([grey_yuv])
-dnl Video codecs:
-VLC_ADD_PLUGIN([rawvideo])
-dnl Access filters:
-VLC_ADD_PLUGIN([access_filter_timeshift])
-VLC_ADD_PLUGIN([access_filter_record])
-VLC_ADD_PLUGIN([access_filter_dump])
-VLC_ADD_PLUGIN([access_filter_bandwidth])
+VLC_ADD_PLUGIN([scene])
+VLC_ADD_PLUGIN([yuv])
 
 ALIASES="${ALIASES} cvlc"
 
@@ -1579,6 +1530,16 @@ AH_TEMPLATE(NDEBUG,
             [Define to 1 if debug code should NOT be compiled])
 AS_IF([test "x${enable_debug}" = "xno"], [AC_DEFINE(NDEBUG)])
 
+dnl
+dnl Allow runing as root (usefull for people runing on embedded platforms)
+dnl
+AC_ARG_ENABLE(run-as-root,
+[  --enable-run-as-root    allow runing VLC as root (default disabled)])
+AS_IF([test "${enable_run_as_root}" == "yes"],[
+    AC_DEFINE(ALLOW_RUN_AS_ROOT, 1,
+              [Define to 1 to allow runing VLC as root (uid 0).])
+])
+
 dnl
 dnl  Test coverage
 dnl
@@ -1750,20 +1711,6 @@ AS_IF([test "${enable_audioscrobbler}" != "no"], [
         VLC_ADD_PLUGIN([audioscrobbler])
   ])
 
-dnl
-dnl Musicbrainz plugin
-dnl
-AC_ARG_ENABLE(musicbrainz,
-  [  --enable-musicbrainz    MusicBrainz support (default disabled) ])
-  AS_IF([test "${enable_musicbrainz}" = "yes"],[
-      PKG_CHECK_MODULES(MUSICBRAINZ, libmusicbrainz,
-    [ VLC_ADD_PLUGIN([musicbrainz])
-      VLC_ADD_LIBS([musicbrainz],[$MUSICBRAINZ_LIBS])
-      VLC_ADD_CFLAGS([musicbrainz],[$MUSICBRAINZ_CFLAGS])  ],
-       [AC_MSG_WARN(MusicBrainz library not found)])
-   ])
-
-
 dnl
 dnl Taglibplugin
 dnl
@@ -2273,6 +2220,7 @@ dnl  libdvbpsi ts demux/mux
 dnl
 AC_ARG_ENABLE(dvbpsi,
   [  --enable-dvbpsi         dvbpsi ts mux and demux module (default enabled)])
+have_dvbpsi=no
 if test "${enable_dvbpsi}" != "no"
 then
   AC_ARG_WITH(dvbpsi,
@@ -2288,7 +2236,8 @@ then
           if test "${enable_sout}" != "no"; then
             VLC_ADD_PLUGIN([mux_ts])
           fi
-          VLC_ADD_LIBS([mux_ts ts dvb],[-ldvbpsi]) ],
+          VLC_ADD_LIBS([mux_ts ts dvb],[-ldvbpsi])
+         have_dvbpsi=yes],
         [  AC_MSG_WARN([cannot find libdvbpsi headers]) ],
         [#if defined( HAVE_STDINT_H )
 #   include <stdint.h>
@@ -2318,6 +2267,7 @@ then
         fi
         VLC_ADD_CPPFLAGS([mux_ts ts dvb],[-I${real_dvbpsi_tree}/src])
         VLC_ADD_LIBS([mux_ts ts dvb],[${real_dvbpsi_tree}/src/.libs/libdvbpsi.a])
+       have_dvbpsi=yes
       else
         dnl  The given libdvbpsi wasn't built
         AC_MSG_RESULT(no)
@@ -2346,7 +2296,7 @@ then
       fi
       VLC_ADD_CPPFLAGS([mux_ts ts dvb],[${CPPFLAGS_test}])
       VLC_ADD_LIBS([mux_ts ts dvb],[${LDFLAGS_test} -ldvbpsi])
-
+      have_dvbpsi=yes
     ],[
       if test -n "${enable_dvbpsi}"
       then
@@ -2397,7 +2347,11 @@ then
     VLC_ADD_CPPFLAGS([v4l2],[-I${with_v4l2}/include])
   fi
 
-  AC_CHECK_HEADER(alsa/asoundlib.h, AC_CHECK_LIB(asound, main, have_v4l2_alsa="true", have_v4l2_alsa="false"),have_v4l2_alsa="false")
+  if test "${enable_alsa}" != "no"
+  then
+    AC_CHECK_HEADER(alsa/asoundlib.h, AC_CHECK_LIB(asound, main, have_v4l2_alsa="true", have_v4l2_alsa="false"),have_v4l2_alsa="false")
+  fi
+
   if test "${have_v4l2_alsa}" = "true"
   then
     CFLAGS="${CFLAGS_save}"
@@ -2635,17 +2589,21 @@ AC_ARG_ENABLE(dvb,
 
 if test "${enable_dvb}" != "no"
 then
-  AC_ARG_WITH(dvb,
-  [    --with-dvb=PATH       path to a dvb- and v4l2-enabled kernel tree],[],[])
-  if test "${with_dvb}" != "no" -a -n "${with_dvb}"
-  then
-    VLC_ADD_CFLAGS([dvb],[-I${with_dvb}/include])
-  fi
-  CPPFLAGS="${CPPFLAGS_save} -I${with_dvb}/include"
-  AC_CHECK_HEADERS(linux/dvb/version.h linux/dvb/frontend.h, [
-  VLC_ADD_PLUGIN([dvb])
-  ],[AC_MSG_WARN(linux-dvb headers not found, dvb disabled)])
-  CPPFLAGS="${CPPFLAGS_save}"
+    AS_IF([test "${have_dvbpsi}" = "yes" ],[  
+    AC_ARG_WITH(dvb,
+     [    --with-dvb=PATH       path to a dvb- and v4l2-enabled kernel tree],[],[])
+     if test "${with_dvb}" != "no" -a -n "${with_dvb}"
+     then
+       VLC_ADD_CFLAGS([dvb],[-I${with_dvb}/include])
+     fi
+     CPPFLAGS="${CPPFLAGS_save} -I${with_dvb}/include"
+     AC_CHECK_HEADERS(linux/dvb/version.h linux/dvb/frontend.h, [
+     VLC_ADD_PLUGIN([dvb])
+     ],[AC_MSG_WARN(linux-dvb headers not found, dvb disabled)])
+     CPPFLAGS="${CPPFLAGS_save}"
+   ],[
+     AC_MSG_WARN([the dvb access module requires libdvbpsi])
+    ]) 
 fi
 
 dnl
@@ -2989,7 +2947,7 @@ then
       VLC_ADD_CFLAGS([avcodec],[$AVCODEC_CFLAGS])
       VLC_RESTORE_FLAGS
     ],[
-      AC_MSG_ERROR([Could not find libavcodec or libavutil. Use --disable-avcodec to ignore this error.])
+      AC_MSG_FAILURE([Could not find libavcodec or libavutil. Use --disable-avcodec to ignore this error.])
   ])
 fi
 
@@ -3013,7 +2971,7 @@ then
       VLC_ADD_CFLAGS([avformat],[$AVFORMAT_CFLAGS])
       VLC_RESTORE_FLAGS
     ],[
-      AC_MSG_ERROR([Could not find libavformat or libavutil. Use --disable-avformat to ignore this error.])
+      AC_MSG_FAILURE([Could not find libavformat or libavutil. Use --disable-avformat to ignore this error.])
   ])
 fi
 
@@ -3070,7 +3028,7 @@ then
           AC_MSG_WARN([Could not find img_resample in libavcodec.])
           if test "${enable_swscale}" != "no"
           then
-            AC_MSG_ERROR([swscale (and its fallback module imgresample) support will be missing. Use --disable-swscale to ignore this error. (This basically means that you will be missing any good software scaling module and some video chroma converters.)])
+            AC_MSG_FAILURE([swscale (and its fallback module imgresample) support will be missing. Use --disable-swscale to ignore this error. (This basically means that you will be missing any good software scaling module and some video chroma converters.)])
           fi
        # That sed hack to add -rpath is kind of ugly but at least it fixes
         # detection when linking against a shared libavcodec with
@@ -3252,7 +3210,7 @@ dnl
 dnl skins2 module
 dnl
 AC_ARG_ENABLE(libtar,
-  [  --enable-libtar support for skins2 (default enabled)])
+  [  --enable-libtar         libtar support for skins2 (default enabled)])
 
 AS_IF([test "${enable_libtar}" != "no"],[
   AC_CHECK_HEADERS(libtar.h, [
@@ -3629,7 +3587,7 @@ dnl
 dnl  schroedinger decoder plugin (for dirac format video)
 dnl
 AC_ARG_ENABLE(schroedinger,
-[  --disable-schroedinger   high performance dirac codec (default enabled)])
+[  --disable-schroedinger  high performance dirac codec (default enabled)])
 if test "${enable_schroedinger}" != "no"; then
   PKG_CHECK_MODULES(SCHROEDINGER,[schroedinger-1.0 >= 1.0], [
       VLC_ADD_PLUGIN([schroedinger])
@@ -3739,12 +3697,9 @@ AC_ARG_ENABLE(zvbi,
                  libzvbi (default enabled)]))
 AC_ARG_ENABLE(telx,
   AS_HELP_STRING([--enable-telx],[Teletext decoding module (conflicting with 
-                 zvbi) (default disabled)]))
+                 zvbi) (default enabled if zvbi is absent)]))
 
 AS_IF( [test "${enable_zvbi}" != "no"],[
-  AS_IF( [test "${enable_telx}" = "yes"],[
-    AC_MSG_ERROR([The zvbi and telx modules are uncompatibles. Disable the other if you enable one.])
-  ],[
     PKG_CHECK_MODULES(ZVBI,
        zvbi-0.2 >= 0.2.25,
        [
@@ -3752,13 +3707,15 @@ AS_IF( [test "${enable_zvbi}" != "no"],[
          VLC_ADD_CFLAGS([zvbi],[$ZVBI_CFLAGS])
           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(ZVBI library not found. Enabling the telx module instead)
-         enable_telx="yes"
        ])
     ])  
-  ])
-AS_IF( [test "${enable_telx}" = "yes"],[
+AS_IF( [test "${enable_telx}" != "no" ],[
   VLC_ADD_PLUGIN([telx])
   ])
 
@@ -3783,7 +3740,7 @@ dnl
 dnl libass subtitle rendering module
 dnl
 AC_ARG_ENABLE(libass,
-  [  --enable-libass           Subtitle support using libass (default disabled)])
+  [  --enable-libass         Subtitle support using libass (default disabled)])
 AS_IF( [test "${enable_libass}" = "yes"], [
   PKG_CHECK_MODULES(LIBASS, libass >= 0.9.5,
       [
@@ -4166,6 +4123,8 @@ AC_ARG_ENABLE(freetype,
   [  --enable-freetype       freetype support (default enabled)])
 AC_ARG_ENABLE(fribidi,
   [  --enable-fribidi        fribidi support (default enabled)])
+AC_ARG_ENABLE(fontconfig,
+  [  --enable-fontconfig,    fontconfig support (default enabled)])
 if test "${enable_freetype}" != "no"
 then
    PKG_CHECK_MODULES(FREETYPE, freetype2,[
@@ -4179,11 +4138,14 @@ then
       if test "${SYS}" = "mingw32"; then
         VLC_ADD_LIBS([freetype],[-liconv])
       fi
-    AC_CHECK_HEADERS(fontconfig/fontconfig.h,
-      [VLC_ADD_CPPFLAGS([freetype],[-DHAVE_FONTCONFIG])
-       VLC_ADD_LIBS([freetype],[-lfontconfig])])
-    AC_CHECK_HEADERS(Carbon/Carbon.h,
-      [VLC_ADD_LDFLAGS([freetype],[-Wl,-framework,Carbon])])
+      if test "${enable_fontconfig}" != "no"
+      then
+        AC_CHECK_HEADERS(fontconfig/fontconfig.h,
+          [VLC_ADD_CPPFLAGS([freetype],[-DHAVE_FONTCONFIG])
+           VLC_ADD_LIBS([freetype],[-lfontconfig])])
+        AC_CHECK_HEADERS(Carbon/Carbon.h,
+          [VLC_ADD_LDFLAGS([freetype],[-Wl,-framework,Carbon])])
+      fi
   ],[
   have_freetype=no
   AS_IF([ test "${enable_freetype}" =  "yes"],[
@@ -4481,15 +4443,19 @@ AC_ARG_ENABLE(ggi,
   [  --enable-ggi            GGI support (default disabled)])
 if test "${enable_ggi}" = "yes"
 then
-  VLC_ADD_PLUGIN([ggi])
-  VLC_ADD_LIBS([ggi],[-lggi])
-  AC_ARG_WITH(ggi,
-    [    --with-ggi=PATH       path to libggi],
-    [ if test "${with_ggi}" != "no" -a -n "${with_ggi}"
-      then
-        VLC_ADD_CPPFLAGS([ggi],[-I${with_ggi}/include])
-        VLC_ADD_LIBS([ggi],[-L${with_ggi}/lib])
-      fi ])
+  AC_CHECK_HEADER([ggi/ggi.h],[
+    VLC_ADD_PLUGIN([ggi])
+    VLC_ADD_LIBS([ggi],[-lggi])
+    AC_ARG_WITH(ggi,
+      [    --with-ggi=PATH       path to libggi],
+      [ if test "${with_ggi}" != "no" -a -n "${with_ggi}"
+        then
+          VLC_ADD_CPPFLAGS([ggi],[-I${with_ggi}/include])
+          VLC_ADD_LIBS([ggi],[-L${with_ggi}/lib])
+        fi ])
+    ],[
+       AC_MSG_ERROR([LibGGI development files can't be found])
+    ])
 fi
 
 dnl
@@ -5219,17 +5185,16 @@ dnl  Bonjour services discovery
 dnl
 AC_ARG_ENABLE(bonjour,
   [  --enable-bonjour        Bonjour services discovery (default enabled)])
-if test "${enable_bonjour}" != "no"
-then
-  PKG_CHECK_MODULES(BONJOUR, avahi-client >= 0.3,
-    [PKG_CHECK_MODULES(BONJOUR, avahi-client >= 0.6,
-       [AC_DEFINE(HAVE_AVAHI_06, 1, [Define if you have avahi-client 0.6 or greater])],)
-      AC_DEFINE(HAVE_AVAHI_CLIENT, 1, [Define if you have the avahi-client library])
-      VLC_ADD_LIBS([bonjour access_output_http],[$BONJOUR_LIBS])
-      VLC_ADD_CFLAGS([bonjour access_output_http],[$BONJOUR_CFLAGS])
-      VLC_ADD_PLUGIN([bonjour]) ],
-    [AC_MSG_WARN(avahi-client library not found)])
-fi
+AS_IF([test "${enable_bonjour}" != "no"], [
+  PKG_CHECK_MODULES(BONJOUR, avahi-client >= 0.6, [
+    AC_DEFINE(HAVE_AVAHI_CLIENT, 1, [Define to 1 if you have libavahi-client])
+    VLC_ADD_LIBS([bonjour access_output_http],[$BONJOUR_LIBS])
+    VLC_ADD_CFLAGS([bonjour access_output_http],[$BONJOUR_CFLAGS])
+    VLC_ADD_PLUGIN([bonjour])
+  ], [
+    AC_MSG_WARN(avahi-client library not found)
+  ])
+])
 
 dnl
 dnl  Lirc plugin
@@ -5426,6 +5391,8 @@ AC_ARG_ENABLE(mozilla,
                  (default disabled)]))
 AC_ARG_WITH(mozilla-sdk-path,
   [    --with-mozilla-sdk-path=PATH path to mozilla sdk])
+AC_ARG_WITH(mozilla-pkg,
+  [    --with-mozilla-pkg=PKG  look for PKG.pc to build the mozilla plugin.])
 AC_LANG_PUSH(C++)
 if test "${enable_mozilla}" = "yes" 
 then
@@ -5444,13 +5411,12 @@ then
       found=1
     else
       if test -n "$PKG_CONFIG"; then
-       for i in seamonkey iceape xulrunner firefox iceweasel mozilla; do
-         echo "Trying to find $i .pc files" >&5
-         i="${i}-xpcom ${i}-plugin"
+       for i in "${with_mozilla_pkg}" libxul {seamonkey,iceape,xulrunner,firefox,iceweasel,mozilla}-plugin; do
+         echo "Trying to find $i.pc files" >&5
          if $PKG_CONFIG --exists --print-errors "$i" 2>&5
          then
-            echo "Using $i .pc files." >&5
-            echo "Using $i .pc files." >&6
+            echo "Using $i.pc files." >&5
+            echo "Using $i.pc files." >&6
            found=1
            MOZILLA_CFLAGS=$( $PKG_CONFIG --cflags "$i" )
            MOZILLA_LIBS=$( $PKG_CONFIG --libs "$i" )
@@ -5462,7 +5428,6 @@ then
     AS_IF( [test $found = 1],[
         CPPFLAGS="${CPPFLAGS_save} ${MOZILLA_CFLAGS}"
         MOZILLA_REQUIRED_HEADERS=1
-        AC_CHECK_HEADERS(mozilla-config.h,,MOZILLA_REQUIRED_HEADERS=0)
         AC_CHECK_HEADERS(npapi.h,,MOZILLA_REQUIRED_HEADERS=0)
         AC_CHECK_HEADERS(npruntime.h,,MOZILLA_REQUIRED_HEADERS=0,
           [#if HAVE_NPAPI_H
@@ -5474,16 +5439,18 @@ then
         fi
         MOZILLA_REQUIRED_HEADERS=
         mozilla=:
-       AC_EGREP_CPP(yes,
-            [#include <mozilla-config.h>
-             #ifdef MOZ_X11
-             yes
-             #endif],
-            [AC_CHECK_HEADERS(X11/xpm.h,,AC_MSG_ERROR([Please install libXpm-devel library for required X11/xpm.h]))
-            VLC_ADD_LIBS([mozilla], [${X_LIBS} ${X_PRE_LIBS} -lX11 -lXt -lXpm])
-        ]) 
-        VLC_ADD_CPPFLAGS([mozilla],[${CPPFLAGS}])
-        VLC_ADD_LIBS([mozilla],[${MOZILLA_LIBS}])
+        AS_IF([ test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"],[
+          VLC_ADD_CPPFLAGS([mozilla],[-DXP_UNIX -DOJI])
+          AS_IF([ test "${SYS}" != "darwin"],[
+            PKG_CHECK_MODULES(XPM, [xpm xt],[
+               VLC_ADD_CPPFLAGS([mozilla],[-DMOZ_X11])
+            ],[
+               AC_MSG_ERROR([Please install the libXpm and libXt development files.])
+            ])
+          ])
+        ])
+       VLC_ADD_CPPFLAGS([mozilla],[${CPPFLAGS} ${XPM_CFLAGS}])
+        VLC_ADD_LIBS([mozilla],[${MOZILLA_LIBS} ${XPM_LIBS}])
         VLC_ADD_PLUGIN([mozilla])
         PLUGINS_BINDINGS="${PLUGINS_BINDINGS} mozilla"
         MOZILLA_CONFIG=
@@ -5838,6 +5805,7 @@ AC_CONFIG_FILES([
   modules/demux/asf/Makefile
   modules/demux/avformat/Makefile
   modules/demux/avi/Makefile
+  modules/demux/mkv/Makefile
   modules/demux/mp4/Makefile
   modules/demux/mpeg/Makefile
   modules/demux/playlist/Makefile