]> git.sesse.net Git - vlc/blobdiff - configure.ac
Qt: Add a parent to the CoverArtLabel We should add parents to all QWidgets created...
[vlc] / configure.ac
index 6e230f4766cb45733a320e4449a1249ef402438b..693a1a1a14b36664fbc0a6ff3a4ffd5dff5929ee 100644 (file)
@@ -1,13 +1,13 @@
 dnl Autoconf settings for vlc
 
-AC_INIT(vlc, 0.9.0)
-VERSION_MAJOR="0"
-VERSION_MINOR="9"
+AC_INIT(vlc, 1.0.0-git)
+VERSION_MAJOR="1"
+VERSION_MINOR="0"
 VERSION_REVISION="0"
-VERSION_EXTRA=""
+VERSION_EXTRA="-git"
 
 CONFIGURE_LINE="`echo "$0 $ac_configure_args" | sed -e 's/\\\/\\\\\\\/g'`"
-CODENAME="Grishenko"
+CODENAME="Goldeneye"
 COPYRIGHT_YEARS="1996-2008"
 
 AC_PREREQ(2.59c)
@@ -58,6 +58,8 @@ dnl
 AC_PROG_CC_C99
 AC_USE_SYSTEM_EXTENSIONS
 AC_DEFINE([_FORTIFY_SOURCE], 2, [Define to '2' to get glibc warnings.])
+AC_DEFINE([_WIN32_WINNT], 0x0500, [Define to '0x0500' for Windows 2000 APIs.])
+
 AM_PROG_CC_C_O
 AC_PROG_CXX
 AC_PROG_CPP
@@ -96,13 +98,14 @@ dnl  Check for the contrib directory
 dnl
 AC_ARG_WITH(contrib,
     [  --without-contrib       do not use the libraries in extras/contrib],[],[])
-  if test "${with_contrib}" != "no"; then 
+  AS_IF([test "${with_contrib}" != "no"],[
     AC_MSG_CHECKING([for libs in extras/contrib])
     topdir="`dirname $0`"
     if test "`echo \"$topdir\" | cut -c 1`" != "/"; then
        topdir="`pwd`/$topdir"
     fi
-   if test "`grep HOST ${topdir}/extras/contrib/config.mak 2>/dev/null|awk '{print $3}'`" != "`$CC -dumpmachine`"; then
+  AS_IF([test -d ${topdir}/extras/contrib/lib],[
+   AS_IF([test "`grep HOST ${topdir}/extras/contrib/config.mak 2>/dev/null|awk '{print $3}'`" != "`$CC -dumpmachine`"],[
       if test "${with_contrib}" = "yes"; then
         AC_MSG_RESULT([no])
         AC_MSG_ERROR([ not using the libs in extras/contrib as it is not the same host])
@@ -110,8 +113,7 @@ AC_ARG_WITH(contrib,
         AC_MSG_RESULT([no])
         AC_MSG_WARN([ not using the libs in extras/contrib as it is not the same host])
       fi
-     else
-  if test -d ${topdir}/extras/contrib/lib; then
+     ],[
     AC_MSG_RESULT([yes])
     export PATH=${topdir}/extras/contrib/bin:$PATH
     CPPFLAGS="${CPPFLAGS} -I${topdir}/extras/contrib/include"
@@ -144,18 +146,16 @@ AC_ARG_WITH(contrib,
       export LIBRARY_PATH=${topdir}/extras/contrib/lib:$LIBRARY_PATH
       export BELIBRARIES=${topdir}/extras/contrib/lib:$BELIBRARIES
     fi
-  else
-     AC_MSG_RESULT([no])
-  fi
-  fi
-fi
+    ])
+  ],[
+    AC_MSG_RESULT([no])
+  ])
+])
 dnl
 dnl  Set default values
 dnl
 LDFLAGS_vlc="${LDFLAGS}"
 
-VLC_ADD_CFLAGS([libvlc libvlc_control],[-Werror])
-
 dnl
 dnl  Check the operating system
 dnl
@@ -235,6 +235,10 @@ case "${host_os}" in
         echo "  Assuming --enable-realrtsp"
         enable_update_check="yes"
         echo "  Assuming --enable-update-check"
+        enable_libass="yes"
+        echo "  Assuming --enable-libass"
+        enable_asademux="yes"
+        echo "  Assuming --enable-asademux"
 
         enable_skins2="no"
         echo "  Assuming --disable-skins2"
@@ -271,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}"
@@ -279,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}"
@@ -397,7 +403,7 @@ AC_CACHE_VAL(lt_cv_deplibs_check_method,
     [lt_cv_deplibs_check_method=pass_all])
 
 AC_DISABLE_STATIC
-AC_DISABLE_FAST_INSTALL
+dnl AC_DISABLE_FAST_INSTALL
 AC_LIBTOOL_DLOPEN
 AC_LIBTOOL_WIN32_DLL
 m4_undefine([AC_PROG_F77])
@@ -644,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])
@@ -849,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
@@ -865,7 +871,7 @@ dnl Check for hal
 AC_ARG_ENABLE(hal,
   [  --enable-hal            Linux HAL services discovery (default enabled)])
  
-if test "${enable_hal}" != "no"
+if test "${enable_hal}" != "no" -a "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
 then
   PKG_CHECK_MODULES(HAL, hal >= 0.5.0,
     [
@@ -883,7 +889,7 @@ AC_ARG_ENABLE(dbus,
   [  --enable-dbus           Linux D-BUS message bus system (default enabled)])
 case "${SYS}" in
     linux*|*bsd*)
-if test "${enable_dbus}" != "no"
+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,
@@ -1087,40 +1093,6 @@ 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([invert])
@@ -1137,42 +1109,18 @@ VLC_ADD_PLUGIN([noise])
 VLC_ADD_PLUGIN([grain])
 VLC_ADD_PLUGIN([extract])
 VLC_ADD_PLUGIN([sharpen])
-VLC_ADD_PLUGIN([seamcarving])
 VLC_ADD_PLUGIN([croppadd])
 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"
 
@@ -1708,7 +1656,8 @@ dnl
 dnl Growl notification plugin
 dnl
 AC_ARG_ENABLE(growl,
-  [  --enable-growl          growl notification plugin (default enabled)])
+  [  --enable-growl          growl notification plugin (default disabled)],,
+  [enable_growl=no])
 AS_IF([test "${enable_growl}" != "no"], [
     VLC_ADD_PLUGIN([growl_udp])
     AC_CHECK_HEADERS(Growl/GrowlDefines.h, [
@@ -1746,20 +1695,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
@@ -1833,16 +1768,23 @@ lternatively you can use --disable-live555 to disable the liveMedia plugin.])
         ])
     ])
      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"
       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.
     AC_CHECK_HEADERS(liveMedia.hh, [
       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}]) ],[${other_libs_pic}])
     ])
     CPPFLAGS="${CPPFLAGS_save}"
     AC_LANG_POP(C++)
@@ -2740,7 +2682,7 @@ AC_ARG_ENABLE(mkv,
 if test "${enable_mkv}" != "no" -a "${CXX}" != ""; then
   AC_LANG_PUSH(C++)
   AC_CHECK_HEADERS(ebml/EbmlVersion.h, [
-    AC_MSG_CHECKING(for libebml version >= 0.7.6)
+    AC_MSG_CHECKING(for libebml version >= 0.7.7)
     AC_EGREP_CPP(yes,
       [#include <ebml/EbmlVersion.h>
        #ifdef LIBEBML_VERSION
@@ -2750,7 +2692,7 @@ if test "${enable_mkv}" != "no" -a "${CXX}" != ""; then
        #endif],
       [AC_MSG_RESULT([yes])
         AC_CHECK_HEADERS(matroska/KaxVersion.h, [
-          AC_MSG_CHECKING(for libmatroska version >= 0.7.7)
+          AC_MSG_CHECKING(for libmatroska version >= 0.8.0)
           AC_EGREP_CPP(yes,
             [#include <matroska/KaxVersion.h>
              #ifdef LIBMATROSKA_VERSION
@@ -3241,7 +3183,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, [
@@ -3618,7 +3560,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])
@@ -3728,12 +3670,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,
        [
@@ -3741,13 +3680,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])
   ])
 
@@ -3772,7 +3713,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,
       [
@@ -4998,6 +4939,8 @@ then
   VLC_ADD_LDFLAGS([macosx minimal_macosx],            [-Wl,-framework,AGL])
   VLC_ADD_LDFLAGS([macosx],                           [-Wl,-framework,IOKit])
   VLC_ADD_LDFLAGS([macosx],                           [-Wl,-framework,QuickTime])
+  dnl For bug report
+  VLC_ADD_LDFLAGS([macosx],                           [-Wl,-framework,AddressBook])
   VLC_ADD_LDFLAGS([macosx qtcapture],                 [-Wl,-framework,QTKit])
   VLC_ADD_LDFLAGS([qtcapture],                        [-Wl,-framework,CoreAudio])
   VLC_ADD_LDFLAGS([macosx],                           [-Wl,-framework,WebKit])
@@ -5012,9 +4955,9 @@ then
  
   ORIGCFLAGS=$CFLAGS
   CFLAGS="$CFLAGS -x objective-c"
-  AC_TRY_COMPILE([#import <QuartzCore/CALayer.h>], 
+  AC_TRY_COMPILE([#import <QuartzCore/CALayer.h>],,
   [VLC_ADD_PLUGIN([opengllayer])
-  VLC_ADD_OBJCFLAGS([opengllayer], [-isysroot /Developer/SDKs/MacOSX10.5.sdk -mmacosx-version-min=10.5])])
+  VLC_ADD_OBJCFLAGS([opengllayer])],[])
   CFLAGS=$ORIGCFLAGS
 fi
 
@@ -5206,17 +5149,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
@@ -5413,35 +5355,43 @@ 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
-  dnl currently vlc plugin only needs headers, no xpcom support apis are actually used
-  need_xpcom_libs=false
-
-  if test "${with_mozilla_sdk_path}" = "" -o "${with_mozilla_sdk_path}" = "no"
-  then
-    dnl New firefox-1.5 SDK api
-    PKG_CHECK_MODULES([FIREFOX], [firefox-plugin],
-      [
-        PKG_CHECK_MODULES([FIREFOX_XPCOM], [firefox-xpcom],
-          [],
-          [
-            PKG_CHECK_MODULES([MOZILLA_NSPR], [mozilla-nspr],
-              [],
-              [
-                PKG_CHECK_MODULES([NSPR], [nspr],
-                  [],
-                  [
-                    AC_MSG_ERROR([Please install the nspr development tools.])
-                  ]
-                )
-              ]
-            )
-          ])
-        CPPFLAGS="${CPPFLAGS_save} ${FIREFOX_CFLAGS} ${FIREFOX_XPCOM_CFLAGS} ${MOZILLA_NSPR_CFLAGS} ${NSPR_CFLAGS} ${MOZILLA_CPPFLAGS}"
+  AS_IF([test "${with_mozilla_sdk_path}" = "" -o "${with_mozilla_sdk_path}" = "no"],
+    [
+    dnl pkg-config
+    dnl As we want to do a loop due to the number of name possible for the .pc 
+    dnl we can't use the pkg-config macros.
+
+    AC_ARG_VAR([MOZILLA_CFLAGS], [C compiler flags for Mozilla, overriding pkg-config])
+    AC_ARG_VAR([MOZILLA_LIBS], [linker flags for Mozilla, overriding pkg-config])
+    AC_MSG_NOTICE([Checking for Mozilla])
+    found=0
+    if test -n "$MOZILLA_CFLAGS" -a -n "$MOZILLA_LIBS"
+    then
+      found=1
+    else
+      if test -n "$PKG_CONFIG"; then
+       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
+           found=1
+           MOZILLA_CFLAGS=$( $PKG_CONFIG --cflags "$i" )
+           MOZILLA_LIBS=$( $PKG_CONFIG --libs "$i" )
+           break
+         fi
+       done
+      fi
+    fi 
+    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
@@ -5453,94 +5403,32 @@ then
         fi
         MOZILLA_REQUIRED_HEADERS=
         mozilla=:
-        firefox_include=`pkg-config --variable=includedir firefox-plugin`
-        if test -f "${firefox_include}/mozilla-config.h" -a -f "${firefox_include}/mozilla-config32.h"; then
-            MOZILLA_CONFIG_H="${firefox_include}/mozilla-config32.h"
-        elif test -f "${firefox_include}/mozilla-config.h" -a -f "${firefox_include}/mozilla-config64.h"; then
-            MOZILLA_CONFIG_H="${firefox_include}/mozilla-config64.h"
-        else
-            MOZILLA_CONFIG_H="${firefox_include}/mozilla-config.h"
-        fi
-        if grep '^#define MOZ_X11 1' ${MOZILLA_CONFIG_H} 2>&1 > /dev/null ; then
-            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])
-        fi
-        VLC_ADD_CPPFLAGS([mozilla],[${CPPFLAGS}])
-        VLC_ADD_LDFLAGS([mozilla],[${MOZILLA_LDFLAGS}])
-        VLC_ADD_LIBS([mozilla],[${FIREFOX_LIBS} ${MOZILLA_NSPR_LIBS} ${NSPR_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=
         CPPFLAGS="${CPPFLAGS_save}"
-      ],
-      [
-        PKG_CHECK_MODULES([XULRUNNER], [libxul],
-          [
-            PKG_CHECK_MODULES([FIREFOX_XPCOM], [firefox-xpcom],
-              [],
-              [
-                PKG_CHECK_MODULES([MOZILLA_NSPR], [mozilla-nspr],
-                  [],
-                  [
-                    PKG_CHECK_MODULES([NSPR], [nspr],
-                      [],
-                      [
-                        AC_MSG_ERROR([Please install the nspr development tools.])
-                      ]
-                    )
-                  ]
-                )
-              ]
-            )
-            CPPFLAGS="${CPPFLAGS_save} ${XULRUNNER_CFLAGS} ${XULRUNNER_CPPFLAGS} ${FIREFOX_XPCOM_CFLAGS} ${MOZILLA_NSPR_CFLAGS} ${NSPR_CFLAGS} ${MOZILLA_CPPFLAGS}"
-            MOZILLA_REQUIRED_HEADERS=1
-            AC_CHECK_HEADERS(npapi.h,,MOZILLA_REQUIRED_HEADERS=0)
-            AC_CHECK_HEADERS(npruntime.h,,MOZILLA_REQUIRED_HEADERS=0,
-              [#if HAVE_NPAPI_H
-               # include <npapi.h>
-               #endif
-              ])
-            if test "${MOZILLA_REQUIRED_HEADERS}" = "0"; then
-                AC_MSG_ERROR([Please install the Mozilla runtime package xulrunner-devel; plugplugin/npapi.h and plugin/npruntime.h were not found.])
-            fi
-            MOZILLA_REQUIRED_HEADERS=
-            mozilla=:
-            AC_DEFINE([XP_UNIX],[1],[Defined for Mozilla as we are Unix])
-            AC_DEFINE([MOZ_X11],[1],[Defined as Unix mozilla uses X11])
-            AC_DEFINE([OJI],[1],[Java Runtime Interface])
-            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_LDFLAGS([mozilla],[${MOZILLA_LDFLAGS}])
-            VLC_ADD_LIBS([mozilla],[${FIREFOX_LIBS} ${MOZILLA_NSPR_LIBS} ${NSPR_LIBS}])
-            VLC_ADD_PLUGIN([mozilla])
-            MOZILLA_CONFIG=
-            CPPFLAGS="${CPPFLAGS_save}"
           ],
           [
-            AC_PATH_PROG(MOZILLA_CONFIG, mozilla-config, no)
-            if test "${MOZILLA_CONFIG}" = "no"
-            then
-              AC_PATH_PROG(SEAMONKEY_CONFIG, seamonkey-config, no)
-              if test "${SEAMONKEY_CONFIG}" = "no"
-              then
-                AC_PATH_PROG(XULRUNNER_CONFIG, xulrunner-config, no)
-                if test "${XULRUNNER_CONFIG}" = "no"
-                then
-                  AC_MSG_ERROR([Please install the Mozilla development tools, mozilla-config was not found.])
-                else
-                  have_xul=true
-                  MOZILLA_CONFIG="${XULRUNNER_CONFIG}"
-                fi
-              else
-                MOZILLA_CONFIG="${SEAMONKEY_CONFIG}"
-              fi
-            fi
+            AC_PATH_PROGS(MOZILLA_CONFIG, 
+           [mozilla-config seamonkey-config xulrunner-config], 
+            AC_MSG_ERROR([Please install the Mozilla development tools. mozilla-config was not found.])
+                 )
           ]
         )
-      ]
-    )
-    if test ! -z "${MOZILLA_CONFIG}"
-    then
+    dnl pkg-config failed but we might have found a mozilla-config
+    AS_IF( [test ! -z "${MOZILLA_CONFIG}"],[
       if ${MOZILLA_CONFIG} --defines | grep -q 'MOZ_X11=1'; then
         LDFLAGS="${LDFLAGS_save} ${X_LIBS} ${X_PRE_LIBS}"
         AC_CHECK_LIB(Xt,XtStrings,
@@ -5557,13 +5445,8 @@ then
 
       mozilla=:
       PLUGINS_BINDINGS="${PLUGINS_BINDINGS} mozilla"
-      dnl Workaround for http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=150490
-      VLC_ADD_CPPFLAGS([mozilla],[[`${MOZILLA_CONFIG} --cflags plugin xpcom java | sed 's,-I\([^ ]*\)/mozilla/\([^ ]*\),-I\1/\2 -I\1/mozilla/\2,g' | xargs`]])
-      if ${need_xpcom_libs}; then
-         VLC_ADD_LIBS([mozilla],[`${MOZILLA_CONFIG} --libs plugin xpcom`])
-      else
-         VLC_ADD_LIBS([mozilla],[`${MOZILLA_CONFIG} --libs plugin`])
-      fi
+      VLC_ADD_CPPFLAGS([mozilla],[[`${MOZILLA_CONFIG} --cflags plugin java`]])
+      VLC_ADD_LIBS([mozilla],[`${MOZILLA_CONFIG} --libs plugin`])
       CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_mozilla}"
       MOZILLA_REQUIRED_HEADERS=1
       AC_CHECK_HEADERS(mozilla-config.h,,MOZILLA_REQUIRED_HEADERS=0)
@@ -5580,9 +5463,9 @@ then
       MOZILLA_REQUIRED_HEADERS=
       CPPFLAGS="${CPPFLAGS_save}"
       MOZILLA_SDK_PATH="`${MOZILLA_CONFIG} --prefix`"
-    fi
+    ])
     dnl End of moz_sdk = ""
-  else
+  ],[
     dnl special case for mingw32
     if test "${SYS}" = "mingw32"
     then
@@ -5627,7 +5510,7 @@ then
       real_mozilla_sdk="`${CYGPATH} -w ${real_mozilla_sdk}`"
     fi
     CPPFLAGS="${CPPFLAGS_save}"
-  fi
+ ]) 
 fi
 AC_LANG_POP(C++)
 AM_CONDITIONAL(BUILD_MOZILLA,${mozilla})
@@ -5846,6 +5729,8 @@ AC_CONFIG_FILES([
   share/vlc_win32_rc.rc
   share/libvlc_win32_rc.rc
   src/Makefile
+  src/test/Makefile
+  bin/Makefile
   test/Makefile
 ])