]> git.sesse.net Git - vlc/blobdiff - configure.in
* ./include/vlc_common.h: we don't set _() and N_() in Gnome-enabled modules
[vlc] / configure.in
index 88b81980f46ff8ec0b4e0c46631a24d38e36bb29..d5f7f56acea03ddb67787d27cb02986c39bb3200 100644 (file)
@@ -56,6 +56,10 @@ AM_GNU_GETTEXT
 dnl AM_PROG_LIBTOOL
 AC_PROG_INSTALL
 
+dnl Check for compiler properties
+AC_C_CONST
+AC_C_INLINE
+
 dnl
 dnl  Set default LDFLAGS
 dnl
@@ -110,7 +114,7 @@ case "x${target_os}" in
     save_CFLAGS="${save_CFLAGS} -Wno-multichar -Wno-ctor-dtor-privacy -Woverloaded-virtual"; CFLAGS="${save_CFLAGS}"
     vlc_LDFLAGS="${vlc_LDFLAGS} -lbe"
     plugins_LDFLAGS="${plugins_LDFLAGS} -nostart"
-    beos_LDFLAGS="${beos_LDFLAGS} -lbe -lgame -lroot -ltracker"
+    beos_LDFLAGS="${beos_LDFLAGS} -lbe -lgame -lroot -ltracker -lstdc++.r4"
     ipv4_LDFLAGS="${ipv4_LDFLAGS} -lbind"
     ;;
   x*)
@@ -143,10 +147,8 @@ AC_CHECK_FUNC(send,,[
     http_LDFLAGS="${http_LDFLAGS} -lsocket"
 )])
 AC_CHECK_FUNC(gethostbyname,,[
-  AC_CHECK_LIB(nsl,gethostbyname,ipv4_LDFLAGS="${ipv4_LDFLAGS} -lnsl")
-])
-AC_CHECK_FUNC(gethostbyname,,[
-  AC_CHECK_LIB(bind,gethostbyname,ipv4_LDFLAGS="${ipv4_LDFLAGS} -lbind")
+  AC_CHECK_LIB(nsl,gethostbyname,ipv4_LDFLAGS="${ipv4_LDFLAGS} -lnsl",[
+    AC_CHECK_LIB(bind,gethostbyname,ipv4_LDFLAGS="${ipv4_LDFLAGS} -lbind")])
 ])
 have_nanosleep=0
 AC_CHECK_FUNC(nanosleep,have_nanosleep=1,[
@@ -191,7 +193,8 @@ AC_CHECK_LIB(m,pow,
   imdct_LDFLAGS="${imdct_LDFLAGS} -lm"
   imdct3dn_LDFLAGS="${imdct3dn_LDFLAGS} -lm"
   imdctsse_LDFLAGS="${imdctsse_LDFLAGS} -lm"
-  chroma_i420_rgb_LDFLAGS="${chroma_i420_rgb_LDFLAGS} -lm"
+  i420_rgb_LDFLAGS="${i420_rgb_LDFLAGS} -lm"
+  faad_LDFLAGS="${faad_LDFLAGS} -lm"
 )
 
 dnl Check for pthreads - borrowed from XMMS
@@ -257,6 +260,9 @@ if test "x${x_libraries}" = "xNONE"; then
   x_libraries="/usr/X11R6/lib"
 fi
 
+dnl Build the gtk_main plugin?
+NEED_GTK_MAIN=no
+
 dnl Check for DPMS
 if test "x${SYS}" != "xmingw32"
 then
@@ -434,14 +440,25 @@ dnl
 dnl  default modules
 dnl
 BUILTINS="${BUILTINS}"
-PLUGINS="${PLUGINS} misc/dummy/dummy misc/null/null"
-PLUGINS="${PLUGINS} control/rc/rc misc/logger/logger access/file access/udp access/http misc/network/ipv4 misc/memcpy/memcpy"
-PLUGINS="${PLUGINS} demux/mpeg/es demux/mpeg/audio demux/mpeg/ps demux/mpeg/ts"
-PLUGINS="${PLUGINS} codec/mpeg_video/idct/idct codec/mpeg_video/idct/idctclassic codec/mpeg_video/motion/motion codec/a52old/imdct/imdct codec/a52old/downmix/downmix codec/mpeg_audio/mpeg_audio codec/a52old/a52old codec/mpeg_video/mpeg_video codec/lpcm/lpcm codec/spdif/spdif codec/spudec/spudec"
+PLUGINS="${PLUGINS} misc/dummy/dummy misc/null"
+PLUGINS="${PLUGINS} control/rc/rc misc/logger/logger access/file misc/memcpy/memcpy"
+PLUGINS="${PLUGINS} demux/mpeg/es demux/mpeg/audio demux/mpeg/mpeg_system demux/mpeg/ps demux/mpeg/ts"
+PLUGINS="${PLUGINS} codec/mpeg_video/idct/idct codec/mpeg_video/idct/idctclassic codec/mpeg_video/motion/motion codec/mpeg_video/mpeg_video codec/spudec/spudec codec/spdif codec/mpeg_audio/mpeg_audio"
+PLUGINS="${PLUGINS} codec/a52old/imdct/imdct codec/a52old/downmix/downmix codec/a52old/a52old"
+#PLUGINS="${PLUGINS} codec/lpcm/lpcm"
 PLUGINS="${PLUGINS} video_filter/deinterlace/deinterlace video_filter/invert video_filter/wall video_filter/transform video_filter/distort video_filter/clone video_filter/crop"
-PLUGINS="${PLUGINS} visualization/scope/scope"
+PLUGINS="${PLUGINS} audio_filter/converter/float32tos16 audio_filter/converter/float32tos8 audio_filter/converter/float32tou16 audio_filter/converter/float32tou8 audio_filter/converter/a52tospdif audio_filter/converter/fixed32tofloat32 audio_filter/converter/fixed32tos16 audio_filter/converter/s16tofloat32"
+PLUGINS="${PLUGINS} audio_filter/resampler/trivial"
+PLUGINS="${PLUGINS} audio_mixer/trivial audio_mixer/spdif"
+PLUGINS="${PLUGINS} audio_output/file"
+#PLUGINS="${PLUGINS} visualization/scope/scope"
 PLUGINS="${PLUGINS} video_chroma/i420_rgb video_chroma/i420_yuy2 video_chroma/i422_yuy2 video_chroma/i420_ymga"
 
+dnl
+dnl  Network modules
+dnl
+NETWORK_MODULES="access/udp access/http access/rtp misc/network/ipv4"
+
 dnl
 dnl  Accelerated modules
 dnl
@@ -451,6 +468,11 @@ THREEDNOW_MODULES="misc/memcpy/memcpy3dn codec/a52old/imdct/imdct3dn codec/a52ol
 SSE_MODULES="codec/a52old/imdct/imdctsse codec/a52old/downmix/downmixsse"
 ALTIVEC_MODULES="codec/mpeg_video/idct/idctaltivec codec/mpeg_video/motion/motionaltivec misc/memcpy/memcpyaltivec"
 
+if test x$SYS != xbeos
+then
+  PLUGINS="${PLUGINS} ${NETWORK}"
+fi
+
 AC_CACHE_CHECK([if \$CC groks MMX inline assembly],
     [ac_cv_mmx_inline],
     [CFLAGS="${save_CFLAGS}"
@@ -704,7 +726,7 @@ then
   CPPFLAGS="${save_CPPFLAGS} ${test_CFLAGS}"
   AC_CHECK_HEADERS(dvdread/dvd_reader.h, [
      AC_TRY_COMPILE([#include <dvdread/dvd_reader.h>],
-        [void foo() { int i=DVD_VIDEO_LB_LEN; }],[
+        [int foo() { return DVD_VIDEO_LB_LEN; }],[
           PLUGINS="${PLUGINS} access/dvdread/dvdread"
           dvdread_LDFLAGS="${dvdread_LDFLAGS} ${test_LDFLAGS} -ldvdread"
           dvdread_CFLAGS="${dvdread_CFLAGS} ${test_CFLAGS}"
@@ -808,7 +830,7 @@ then
     fi
   ;;
   xno)
-    dnl  Compile without dvbpsi (dlopen version, works only under Linux)
+    dnl  Compile without dvbpsi
   ;;
   *)
     AC_MSG_CHECKING(for dvbpsi headers in ${with_dvbpsi})
@@ -922,6 +944,16 @@ then
   PLUGINS="${PLUGINS} demux/avi/avi"
 fi
 
+dnl
+dnl  AAC demux plugin
+dnl
+AC_ARG_ENABLE(aac,
+  [  --enable-aac            AAC demux module (default enabled)])
+if test "x${enable_aac}" != "xno"
+then
+  PLUGINS="${PLUGINS} demux/aac/aac"
+fi
+
 dnl
 dnl  Codec plugins
 dnl
@@ -986,6 +1018,11 @@ then
   fi
 fi
 
+dnl
+dnl   libid3tag support
+dnl
+AC_CHECK_HEADERS(id3tag.h, [audio_LDFLAGS="${audio_LDFLAGS} -lz -lid3tag"])
+   
 dnl
 dnl  ffmpeg decoder plugin
 dnl
@@ -1029,7 +1066,7 @@ then
       dnl  Use a custom libffmpeg
       AC_MSG_RESULT(${real_ffmpeg_tree}/libavcodec/libavcodec.a)
       BUILTINS="${BUILTINS} codec/ffmpeg/ffmpeg"
-      ffmpeg_LDFLAGS="${ffmpeg_LDFLAGS} ${real_ffmpeg_tree}/libavcodec/libavcodec.a -lm"
+      ffmpeg_LDFLAGS="${ffmpeg_LDFLAGS} ${real_ffmpeg_tree}/libavcodec/libavcodec.a"
       ffmpeg_CFLAGS="${ffmpeg_CFLAGS} -I${real_ffmpeg_tree}/libavcodec"
     else
       dnl  The given libavcodec wasn't built
@@ -1038,38 +1075,94 @@ then
     fi
   else
     CFLAGS="${save_CFLAGS} ${ffmpeg_CFLAGS}"
-    LDFLAGS="${save_LDFLAGS} ${ffmpeg_LDFLAGS} -lm"
+    LDFLAGS="${save_LDFLAGS} ${ffmpeg_LDFLAGS}"
     AC_CHECK_LIB(avcodec, avcodec_init, [
       BUILTINS="${BUILTINS} codec/ffmpeg/ffmpeg"
-      ffmpeg_LDFLAGS="${ffmpeg_LDFLAGS} -lavcodec -lm" ],
+      ffmpeg_LDFLAGS="${ffmpeg_LDFLAGS} -lavcodec" ],
       [ AC_MSG_ERROR([Cannot find libavcodec library...]) ])
     LDFLAGS="${save_LDFLAGS}"
     CFLAGS="${save_CFLAGS}"
   fi
 fi
 
+dnl
+dnl  faad decoder plugin
+dnl
+AC_ARG_ENABLE(faad,
+[  --enable-faad           faad codec (default disabled)])
+if test "x${enable_faad}" = "xyes"
+then
+  AC_ARG_WITH(faad,
+    [    --with-faad=PATH      path to faad installation],[],[])
+  if test "x${with_faad}" != "xno" -a "x${with_faad}" != "x"
+  then
+    faad_CFLAGS="${faad_CFLAGS} -I${with_faad}/include"
+    faad_LDFLAGS="${faad_LDFLAGS} -L${with_faad}/lib"
+  fi
+  faad_LDFLAGS="${faad_LDFLAGS}"
+
+  AC_ARG_WITH(faad-tree, 
+  [    --with-faad-tree=PATH faad tree for static linking])
+  if test "x${with_faad_tree}" != "x"
+  then
+    AC_MSG_CHECKING(for libfaad.a in ${with_faad_tree})
+    real_faad_tree="`cd ${with_faad_tree} 2>/dev/null && pwd`"
+    if test "x${real_faad_tree}" = x
+    then
+      dnl  The given directory can't be found
+      AC_MSG_RESULT(no)
+      AC_MSG_ERROR([cannot cd to ${with_faad_tree}])
+    fi
+    if test -f "${real_faad_tree}/libfaad/.libs/libfaad.a"
+    then
+      dnl  Use a custom faad
+      AC_MSG_RESULT(${real_faad_tree}/libfaad/.libs/libfaad.a)
+      BUILTINS="${BUILTINS} codec/faad/faad"
+      faad_LDFLAGS="${faad_LDFLAGS} ${real_faad_tree}/libfaad/.libs/libfaad.a"
+      faad_CFLAGS="${faad_CFLAGS} -I${real_faad_tree}/include"
+    else
+      dnl  The given libfaad wasn't built
+      AC_MSG_RESULT(no)
+      AC_MSG_ERROR([cannot find ${real_faad_tree}/libfaad/.libs/libfaad.a, make sure you compiled libfaad in ${with_faad_tree}])
+    fi
+  else
+    CFLAGS="${save_CFLAGS} ${faad_CFLAGS}"
+    LDFLAGS="${save_LDFLAGS} ${faad_LDFLAGS}"
+    AC_CHECK_HEADERS(faad.h, ,
+      [ AC_MSG_ERROR([Cannot find development headers for libfaad...]) ])
+    AC_CHECK_LIB(faad, faacDecOpen, [
+      PLUGINS="${PLUGINS} codec/faad/faad"
+      faad_LDFLAGS="${faad_LDFLAGS} -lfaad" ],
+      [ AC_MSG_ERROR([Cannot find libfaad library...]) ])
+    LDFLAGS="${save_LDFLAGS}"
+    CFLAGS="${save_CFLAGS}"
+  fi
+fi
+
+
+
 dnl 
 dnl MP4 module 
 dnl 
 AC_ARG_ENABLE(mp4,
-  [  --enable-mp4            MP4 demux module (default disabled)])
-if test "x${enable_mp4}" = "xyes"
+  [  --enable-mp4            MP4 demux module (default enabled)])
+if test "x${enable_mp4}" != "xno"
 then
-    AC_CHECK_HEADER(zlib.h,
-        AC_CHECK_LIB(z, inflateEnd,
-            [ PLUGINS="${PLUGINS} demux/mp4/mp4"
-              mp4_LDFLAGS="${mp4_LDFLAGS} -lz" ], 
-            [ AC_MSG_ERROR([cannot find zlib library...]) ]),
-        [  AC_MSG_ERROR([cannot find zlib header...]) ])
+
+    PLUGINS="${PLUGINS} demux/mp4/mp4"
+    AC_CHECK_HEADERS(zlib.h,
+              [ mp4_LDFLAGS="${mp4_LDFLAGS} -lz" ] )
 fi
 
 dnl
 dnl  a52 AC3 decoder plugin
 dnl
 AC_ARG_ENABLE(a52,
-  [  --enable-a52            AC3 support with liba52 (default enabled)])
+  [  --enable-a52            A/52 support with liba52 (default enabled)])
 if test "x${enable_a52}" != "xno"
 then
+  AC_ARG_WITH(a52, 
+    [    --with-a52=PATH       a52 headers and libraries])
   AC_ARG_WITH(a52-tree,
     [    --with-a52-tree=PATH  a52dec tree for static linking ],[],[])
   if test "x${with_a52_tree}" != "xno" -a "x${with_a52_tree}" != "x"
@@ -1090,7 +1183,7 @@ then
       a52_LDFLAGS="${a52_LDFLAGS} -L${real_a52_tree}/liba52/.libs"
       LDFLAGS="${save_LDFLAGS} ${a52_LDFLAGS}"
       AC_CHECK_LIB(a52, a52_free, [
-        BUILTINS="${BUILTINS} codec/a52/a52"
+        BUILTINS="${BUILTINS} codec/a52"
         a52_LDFLAGS="${a52_LDFLAGS} -la52 -lm"
         a52_CFLAGS="${a52_CFLAGS} -DUSE_A52DEC_TREE"
         ],[
@@ -1106,14 +1199,33 @@ then
       AC_MSG_RESULT(no)
       AC_MSG_ERROR([the specified tree doesn't have a52.h])
     fi
-  else dnl  no with args
+  else
+    if test "x${with_a52}" = "x"
+    then
+      test_LDFLAGS=""
+      test_CFLAGS=""
+    else
+      test_LDFLAGS="-L${with_a52}/lib"
+      test_CFLAGS="-I${with_a52}/include"
+    fi
+    save_CPPFLAGS="${CPPFLAGS}"
+    save_LDFLAGS="${LDFLAGS}"
+    CPPFLAGS="${save_CPPFLAGS} ${test_CFLAGS}"
+    LDFLAGS="${save_LDFLAGS} ${test_LDFLAGS}"
     AC_CHECK_HEADERS(a52dec/a52.h, [
       AC_CHECK_LIB(a52, a52_free, [
-        BUILTINS="${BUILTINS} codec/a52/a52"
-        a52_LDFLAGS="${a52_LDFLAGS} -la52 -lm"
-        a52_CFLAGS="${a52_CFLAGS}"
-      ],[],[-lm])
+        BUILTINS="${BUILTINS} codec/a52"
+        a52_LDFLAGS="${a52_LDFLAGS} ${test_LDFLAGS} -la52 -lm"
+        a52_CFLAGS="${a52_CFLAGS} ${test_CFLAGS}"
+      ],[
+        if test "x${enable_dvbpsi}" != "x"
+        then
+          AC_MSG_ERROR([Could not find a52 on your system: you may get it from http://liba52.sf.net])
+        fi
+      ],[-lm])
     ])
+    CPPFLAGS="${save_CPPFLAGS}"
+    LDFLAGS="${save_LDFLAGS}"
   fi
 fi
 
@@ -1237,7 +1349,7 @@ then
   fi
   if test "x${SDL_CONFIG}" != "xno"
   then
-    PLUGINS="${PLUGINS} video_output/sdl/sdl"
+    PLUGINS="${PLUGINS} video_output/sdl audio_output/sdl"
     sdl_CFLAGS="${sdl_CFLAGS} `${SDL_CONFIG} --cflags`"
     sdl_LDFLAGS="${sdl_LDFLAGS} `${SDL_CONFIG} --libs | sed 's,-rdynamic,,'`"
     CPPFLAGS="${save_CPPFLAGS} ${sdl_CFLAGS}"
@@ -1302,7 +1414,7 @@ AC_ARG_ENABLE(fb,
     if test "x${enable_fb}" != "xno"
     then
       AC_CHECK_HEADERS(linux/fb.h, [
-        PLUGINS="${PLUGINS} video_output/fb/fb"
+        PLUGINS="${PLUGINS} video_output/fb"
       ])
     fi
 
@@ -1316,6 +1428,17 @@ AC_ARG_ENABLE(mga,
       PLUGINS="${PLUGINS} video_output/mga/mga video_output/mga/xmga"
     fi ])
 
+dnl
+dnl  SVGAlib module
+dnl
+AC_ARG_ENABLE(svgalib,
+  [  --enable-svgalib        SVGAlib support (default disabled)])
+if test "x${enable_svgalib}" = "xyes"
+then
+  BUILTINS="${BUILTINS} video_output/svgalib"
+  svgalib_LDFLAGS="${svgalib_LDFLAGS} -lvgagl -lvga"
+fi
+
 dnl
 dnl  GGI module
 dnl
@@ -1323,7 +1446,7 @@ AC_ARG_ENABLE(ggi,
   [  --enable-ggi            GGI support (default disabled)])
 if test "x${enable_ggi}" = "xyes"
 then
-  PLUGINS="${PLUGINS} video_output/ggi/ggi"
+  PLUGINS="${PLUGINS} video_output/ggi"
   ggi_LDFLAGS="${ggi_LDFLAGS} -lggi"
   AC_ARG_WITH(ggi,
     [    --with-ggi=PATH       path to libggi],
@@ -1341,7 +1464,7 @@ AC_ARG_ENABLE(glide,
   [  --enable-glide          Glide (3dfx) support (default disabled)])
 if test "x${enable_glide}" = "xyes"
 then
-  PLUGINS="${PLUGINS} video_output/glide/glide"
+  PLUGINS="${PLUGINS} video_output/glide"
   glide_LDFLAGS="${glide_LDFLAGS} -lglide2x -lm"
   glide_CFLAGS="${glide_CFLAGS} -I/usr/include/glide"
   AC_ARG_WITH(glide,
@@ -1363,7 +1486,7 @@ then
   AC_CHECK_HEADER(aalib.h,have_aa="true",have_aa="false")
   if test "x${have_aa}" = "xtrue"
   then
-    PLUGINS="${PLUGINS} video_output/aa/aa"
+    PLUGINS="${PLUGINS} video_output/aa"
     aa_LDFLAGS="${aa_LDFLAGS} -laa"
   fi
 fi
@@ -1377,15 +1500,15 @@ AC_ARG_WITH(,[Audio plugins:])
 dnl
 dnl  OSS /dev/dsp module (enabled by default except on win32)
 dnl
-AC_ARG_ENABLE(dsp,
-  [  --enable-dsp            Linux /dev/dsp support (enabled on Linux)])
+AC_ARG_ENABLE(oss,
+  [  --enable-oss            Linux OSS /dev/dsp support (enabled on Linux)])
 
-if test "x${enable_dsp}" != "xno" &&
-  (test "x${SYS}" != "xmingw32" || test "x${enable_dsp}" = "xyes")
+if test "x${enable_oss}" != "xno" &&
+  (test "x${SYS}" != "xmingw32" || test "x${enable_oss}" = "xyes")
 then
   AC_CHECK_HEADERS(soundcard.h sys/soundcard.h machine/soundcard.h, [
-    PLUGINS="${PLUGINS} audio_output/dsp/dsp"
-    AC_CHECK_LIB(ossaudio,main,dsp_LDFLAGS="${dsp_LDFLAGS} -lossaudio")
+    PLUGINS="${PLUGINS} audio_output/oss"
+    AC_CHECK_LIB(ossaudio,main,oss_LDFLAGS="${oss_LDFLAGS} -lossaudio")
   ])
 fi
 
@@ -1399,7 +1522,7 @@ AC_ARG_ENABLE(esd,
      AC_PATH_PROG(ESD_CONFIG, esd-config, no)
      if test "x${ESD_CONFIG}" != "xno"
      then
-       PLUGINS="${PLUGINS} audio_output/esd/esd"
+       PLUGINS="${PLUGINS} audio_output/esd"
        esd_CFLAGS="${esd_CFLAGS} `${ESD_CONFIG} --cflags`"
        esd_LDFLAGS="${esd_LDFLAGS} `${ESD_CONFIG} --libs`"
      fi
@@ -1415,7 +1538,7 @@ AC_ARG_ENABLE(arts,
      AC_PATH_PROG(ARTS_CONFIG, artsc-config, no)
      if test "x${ARTS_CONFIG}" != "xno"
      then
-       PLUGINS="${PLUGINS} audio_output/arts/arts"
+       PLUGINS="${PLUGINS} audio_output/arts"
        arts_CFLAGS="${arts_CFLAGS} `${ARTS_CONFIG} --cflags`"
        arts_LDFLAGS="${arts_LDFLAGS} `${ARTS_CONFIG} --libs `"
      fi
@@ -1431,7 +1554,7 @@ AC_ARG_ENABLE(alsa,
      AC_CHECK_HEADER(alsa/asoundlib.h, AC_CHECK_LIB(asound, main, have_alsa="true", have_alsa="false"),have_alsa="false")
      if test "x${have_alsa}" = "xtrue"
      then
-       PLUGINS="${PLUGINS} audio_output/alsa/alsa"
+       PLUGINS="${PLUGINS} audio_output/alsa"
        alsa_LDFLAGS="${alsa_LDFLAGS} -lasound -lm -ldl"
      fi
    fi])
@@ -1443,7 +1566,7 @@ AC_ARG_ENABLE(waveout,
   [  --enable-waveout        Win32 waveOut module (default enabled on Win32)])
 if test "x${enable_waveout}" != "xno" -a "x${SYS}" = "xmingw32"
   then
-    PLUGINS="${PLUGINS} audio_output/waveout/waveout"
+    PLUGINS="${PLUGINS} audio_output/waveout"
     waveout_LDFLAGS="-lwinmm"
 fi
 
@@ -1486,8 +1609,8 @@ then
     then
       AC_MSG_ERROR([Your development package for Gtk+ is too old, you need at least version 1.2.0. Please upgrade and try again. Alternatively you can also configure with --disable-gtk.])
     fi
-    gtk_CFLAGS="${gtk_CFLAGS} `${GTK_CONFIG} --cflags gtk`"
-    gtk_LDFLAGS="${gtk_LDFLAGS} `${GTK_CONFIG} --libs gtk | sed 's,-rdynamic,,'`"
+    gtk_CFLAGS="${gtk_CFLAGS} `${GTK_CONFIG} --cflags gtk gthread`"
+    gtk_LDFLAGS="${gtk_LDFLAGS} `${GTK_CONFIG} --libs gtk gthread | sed 's,-rdynamic,,'`"
     # now look for the gtk.h header
     CPPFLAGS="${save_CPPFLAGS} ${gtk_CFLAGS}"
     ac_cv_gtk_headers=yes
@@ -1498,6 +1621,7 @@ then
     if test "x${ac_cv_gtk_headers}" = "xyes"
     then
       PLUGINS="${PLUGINS} gui/gtk/gtk"
+      NEED_GTK_MAIN=yes
       ALIASES="${ALIASES} gvlc"
     fi
     CPPFLAGS="${save_CPPFLAGS}"
@@ -1531,8 +1655,8 @@ then
     then
       AC_MSG_ERROR([Your development package for Gtk+ is too old, you need at least version 1.2.0. Please upgrade and try again. Alternatively you can also configure with --disable-familiar.])
     fi
-    familiar_CFLAGS="${familiar_CFLAGS} `${GTK_CONFIG} --cflags gtk`"
-    familiar_LDFLAGS="${familiar_LDFLAGS} `${GTK_CONFIG} --libs gtk | sed 's,-rdynamic,,'`"
+    familiar_CFLAGS="${familiar_CFLAGS} `${GTK_CONFIG} --cflags gtk gthread`"
+    familiar_LDFLAGS="${familiar_LDFLAGS} `${GTK_CONFIG} --libs gtk gthread | sed 's,-rdynamic,,'`"
     # now look for the gtk.h header
     CPPFLAGS="${save_CPPFLAGS} ${familiar_CFLAGS}"
     ac_cv_gtk_headers=yes
@@ -1543,6 +1667,7 @@ then
     if test "x${ac_cv_gtk_headers}" = "xyes"
     then
       PLUGINS="${PLUGINS} gui/familiar/familiar"
+      NEED_GTK_MAIN=yes
     fi
     CPPFLAGS="${save_CPPFLAGS}"
   fi
@@ -1565,6 +1690,7 @@ AC_ARG_ENABLE(gnome,
     CPPFLAGS="${save_CPPFLAGS} ${gnome_CFLAGS}"
     AC_CHECK_HEADERS(gnome.h, [
       PLUGINS="${PLUGINS} gui/gtk/gnome"
+      NEED_GTK_MAIN=yes
       ALIASES="${ALIASES} gnome-vlc"
      ],[
       AC_MSG_ERROR([Can't find gnome headers. Please install the gnome
@@ -1610,6 +1736,24 @@ AC_ARG_ENABLE(kde,
      fi
    fi])
 
+dnl
+dnl  Qt embedded module
+dnl
+AC_ARG_ENABLE(qte,
+  [  --enable-qte            Qt embedded interface support (default disabled)],
+  [if test "x${enable_qte}" = "xyes"; then
+     PLUGINS="${PLUGINS} gui/qte/qte"
+     qte_LDFLAGS="${qte_LDFLAGS} -lqte -L${QTEDIR}/lib"
+     qte_CFLAGS="${qte_CFLAGS} -I/usr/include/qte -I${QTEDIR}/include"
+     if test -x ${QTEDIR}/bin/moc
+     then
+       MOC=${QTEDIR}/bin/moc
+     else
+       MOC=moc
+     fi
+   fi])
+
+
 dnl
 dnl  MacOS X module
 dnl
@@ -1672,6 +1816,9 @@ AC_ARG_ENABLE(xosd,
 if test "x${enable_xosd}" = "xyes"
 then
   AC_CHECK_HEADER(xosd.h, have_xosd="true", have_xosd="false")
+  AC_TRY_COMPILE([#include <xosd.h>],
+     [void foo() { xosd_init("foo","bar",12,XOSD_top,2,12,42); }],,
+      AC_DEFINE(HAVE_OLD_XOSD_H, 1, Define if <xosd.h> is pre-1.0.0))
   if test "x${have_xosd}" = "xtrue"
   then
     PLUGINS="${PLUGINS} visualization/xosd/xosd"
@@ -1837,6 +1984,16 @@ then
   fi
 fi
 
+dnl
+dnl  gtk_main plugin
+dnl
+if test "x${NEED_GTK_MAIN}" != "xno"
+then
+    PLUGINS="${PLUGINS} misc/gtk_main"
+    gtk_main_CFLAGS="${gtk_main_CFLAGS} ${gtk_CFLAGS} ${familiar_CFLAGS} ${gnome_CFLAGS}"
+    gtk_main_LDFLAGS="${gtk_main_LDFLAGS} ${gtk_LDFLAGS} ${familiar_LDFLAGS} ${gnome_LDFLAGS}"
+fi
+
 dnl
 dnl  Plug-ins - this must be AT THE END
 dnl
@@ -1885,7 +2042,7 @@ dnl
 dnl  Create the vlc-config script
 dnl
 libvlc_LDFLAGS="${vlc_LDFLAGS} ${builtins_LDFLAGS}"
-for i in ${BUILTINS} ; do libvlc_LDFLAGS="${libvlc_LDFLAGS} ${libdir}/vlc/${i}.a `eval echo '$'{${i}_LDFLAGS}`" ; done
+for i in `echo ${BUILTINS} | sed -e 's#[^ ]*/##g'` ; do libvlc_LDFLAGS="${libvlc_LDFLAGS} ${libdir}/vlc/${i}.a `eval echo '$'{${i}_LDFLAGS}`" ; done
 AC_SUBST(libvlc_LDFLAGS)
 
 dnl 
@@ -1930,10 +2087,12 @@ AC_SUBST(ts_dvbpsi_CFLAGS)
 AC_SUBST(directx_CFLAGS)
 AC_SUBST(esd_CFLAGS)
 AC_SUBST(familiar_CFLAGS)
+AC_SUBST(faad_CFLAGS)
 AC_SUBST(ffmpeg_CFLAGS)
 AC_SUBST(glide_CFLAGS)
 AC_SUBST(gnome_CFLAGS)
 AC_SUBST(gtk_CFLAGS)
+AC_SUBST(gtk_main_CFLAGS)
 AC_SUBST(kde_CFLAGS)
 AC_SUBST(idctaltivec_CFLAGS)
 AC_SUBST(macosx_CFLAGS)
@@ -1941,7 +2100,9 @@ AC_SUBST(mad_CFLAGS)
 AC_SUBST(memcpyaltivec_CFLAGS)
 AC_SUBST(motionaltivec_CFLAGS)
 AC_SUBST(qt_CFLAGS)
+AC_SUBST(qte_CFLAGS)
 AC_SUBST(sdl_CFLAGS)
+AC_SUBST(svgalib_CFLAGS)
 AC_SUBST(x11_CFLAGS)
 AC_SUBST(xvideo_CFLAGS)
 
@@ -1957,21 +2118,23 @@ AC_SUBST(arts_LDFLAGS)
 AC_SUBST(beos_LDFLAGS)
 AC_SUBST(i420_rgb_LDFLAGS)
 AC_SUBST(directx_LDFLAGS)
-AC_SUBST(dsp_LDFLAGS)
 AC_SUBST(dv_LDFLAGS)
 AC_SUBST(dvd_LDFLAGS)
 AC_SUBST(dvdread_LDFLAGS)
 AC_SUBST(dvdplay_LDFLAGS)
 AC_SUBST(ts_dvbpsi_LDFLAGS)
+AC_SUBST(audio_LDFLAGS)
 AC_SUBST(esd_LDFLAGS)
 AC_SUBST(familiar_LDFLAGS)
 AC_SUBST(distort_LDFLAGS)
+AC_SUBST(faad_LDFLAGS)
 AC_SUBST(ffmpeg_LDFLAGS)
 AC_SUBST(mp4_LDFLAGS)
 AC_SUBST(ggi_LDFLAGS)
 AC_SUBST(glide_LDFLAGS)
 AC_SUBST(gnome_LDFLAGS)
 AC_SUBST(gtk_LDFLAGS)
+AC_SUBST(gtk_main_LDFLAGS)
 AC_SUBST(http_LDFLAGS)
 AC_SUBST(idctaltivec_LDFLAGS)
 AC_SUBST(imdct_LDFLAGS)
@@ -1986,10 +2149,13 @@ AC_SUBST(mad_LDFLAGS)
 AC_SUBST(memcpyaltivec_LDFLAGS)
 AC_SUBST(motionaltivec_LDFLAGS)
 AC_SUBST(ncurses_LDFLAGS)
+AC_SUBST(oss_LDFLAGS)
 AC_SUBST(qnx_LDFLAGS)
 AC_SUBST(qt_LDFLAGS)
+AC_SUBST(qte_LDFLAGS)
 AC_SUBST(rc_LDFLAGS)
 AC_SUBST(sdl_LDFLAGS)
+AC_SUBST(svgalib_LDFLAGS)
 AC_SUBST(vcd_LDFLAGS)
 AC_SUBST(vorbis_LDFLAGS)
 AC_SUBST(waveout_LDFLAGS)
@@ -2012,13 +2178,12 @@ debug mode            : ${DEBUG}
 release               : ${RELEASE}
 profiling             : ${PROFILING}
 need builtin getopt   : ${NEED_GETOPT}
-built-in modules      :${BUILTINS}
-plug-in modules       :${PLUGINS}
+modules               : (see Makefile.config)
 mozilla plugin        : ${MOZILLA}
 vlc aliases           :${ALIASES}
 
-You may now tune Makefile.opts at your convenience, for instance to choose
-which modules get compiled as plugins.
+You may now tune Makefile.config and Makefile.opts at your convenience, for
+instance to choose which modules get compiled as plugins, or tune CFLAGS.
 
 To build vlc and its plugins, type \`${VLC_MAKE}'.
 "