]> git.sesse.net Git - vlc/blobdiff - configure.ac
wav.c: added 'mlaw' fourcc, same as 'ulaw'
[vlc] / configure.ac
index 7a87644bd33c5a69f7e19e1a9d086f3e20c1434f..44ee4409c3d6d11393a772ef21126523831278d3 100644 (file)
@@ -1,10 +1,10 @@
 dnl Autoconf settings for vlc
 
-AC_INIT(vlc,0.8.5-test2)
+AC_INIT(vlc,0.8.6-svn)
 VERSION_MAJOR="0"
 VERSION_MINOR="8"
-VERSION_REVISION="5"
-VERSION_EXTRA="test2"
+VERSION_REVISION="6"
+VERSION_EXTRA="svn"
 
 CONFIGURE_LINE="$0 $*"
 CODENAME="Janus"
@@ -16,7 +16,7 @@ AC_CANONICAL_SYSTEM
 
 dnl XXX: we don't put any flags here, because automake 1.5 doesn't support
 dnl them. And we need the comma otherwize automake will choke on it.
-AM_INIT_AUTOMAKE(vlc,0.8.5-test2)
+AM_INIT_AUTOMAKE(vlc,0.8.6-svn)
 AM_CONFIG_HEADER(config.h)
 
 dnl Too many people are not aware of maintainer mode:
@@ -93,13 +93,22 @@ dnl
 AC_ARG_WITH(contrib,
     [  --without-contrib       do not use the libraries in extras/contrib],[],[])
   if test "${with_contrib}" != "no"; then 
-
+    AC_MSG_CHECKING([for libs in extras/contrib])
     topdir="`dirname $0`"
     if test "`echo \"$topdir\" | cut -c 1`" != "/"; then
        topdir="`pwd`/$topdir"
     fi
-
+   if test "`grep HOST ${topdir}/extras/contrib/config.mak |awk '{print $3}'`" != "`$CC -dumpmachine`"; then
+      if test "${with_contrib}" = "yes"; then
+        AC_MSG_RESULT([no])
+       AC_MSG_ERROR([ not using the libs in extras/contrib as it is not the same host])
+      else
+        AC_MSG_RESULT([no])
+       AC_MSG_WARN([ not using the libs in extras/contrib as it is not the same host])
+      fi
+     else
   if test -d ${topdir}/extras/contrib/lib; then
+    AC_MSG_RESULT([yes])
     export PATH=${topdir}/extras/contrib/bin:$PATH
     CPPFLAGS="${CPPFLAGS} -I${topdir}/extras/contrib/include"
     CPPFLAGS_save="${CPPFLAGS_save} -I${topdir}/extras/contrib/include"
@@ -109,7 +118,7 @@ AC_ARG_WITH(contrib,
     CXXFLAGS_save="${CXXFLAGS_save} -I${topdir}/extras/contrib/include"
     OBJCFLAGS="${OBJCFLAGS} -I${topdir}/extras/contrib/include"
     OBJCFLAGS_save="${OBJCFLAGS_save} -I${topdir}/extras/contrib/include"
-    if test $build = $host -o $PKG_CONFIG_LIBDIR; then
+    if test $build = $host -o "$PKG_CONFIG_LIBDIR"; then
        export PKG_CONFIG_PATH=${topdir}/extras/contrib/lib/pkgconfig:$PKG_CONFIG_PATH
     else
        export PKG_CONFIG_LIBDIR=${topdir}/extras/contrib/lib/pkgconfig
@@ -141,6 +150,9 @@ dnl kludge because only the debian package provides a ffmpeg-config
       export LIBRARY_PATH=${topdir}/extras/contrib/lib:$LIBRARY_PATH
       export BELIBRARIES=${topdir}/extras/contrib/lib:$BELIBRARIES
     fi
+  else
+     AC_MSG_RESULT([no])
+  fi
   fi
 fi
 dnl
@@ -404,7 +416,7 @@ CPPFLAGS_save="${CPPFLAGS_save} -DSYS_`echo ${SYS} | sed -e 's/-.*//' | tr 'abcd
 dnl Check for system libs needed
 need_libc=false
 
-AC_CHECK_FUNCS(gettimeofday select strerror strtod strtol strtof strtoll strtoull strsep isatty vasprintf asprintf swab sigrelse getpwuid memalign posix_memalign if_nametoindex atoll getenv putenv setenv gmtime_r ctime_r localtime_r lrintf daemon scandir fork bsearch lstat)
+AC_CHECK_FUNCS(gettimeofday strtod strtol strtof strtoll strtoull strsep isatty vasprintf asprintf swab sigrelse getpwuid memalign posix_memalign if_nametoindex atoll getenv putenv setenv gmtime_r ctime_r localtime_r lrintf daemon scandir fork bsearch lstat strlcpy)
 
 dnl Check for usual libc functions
 AC_CHECK_FUNCS(strdup strndup atof)
@@ -555,11 +567,14 @@ AC_CHECK_LIB(m,cos,[
   VLC_ADD_LDFLAGS([adjust distort a52tofloat32 dtstofloat32 x264 goom],[-lm])
 ])
 AC_CHECK_LIB(m,pow,[
-  VLC_ADD_LDFLAGS([ffmpeg ffmpegaltivec stream_out_transrate i420_rgb faad twolame equalizer param_eq vlc freetype mpc],[-lm])
+  VLC_ADD_LDFLAGS([ffmpeg ffmpegaltivec stream_out_transrate i420_rgb faad twolame equalizer param_eq vlc freetype mpc dmo quicktime realaudio galaktos],[-lm])
 ])
 AC_CHECK_LIB(m,sqrt,[
   VLC_ADD_LDFLAGS([headphone_channel_mixer normvol speex],[-lm])
 ])
+AC_CHECK_LIB(m,ceil,[
+  VLC_ADD_LDFLAGS([mosaic],[-lm])
+])
 AC_CHECK_LIB(mx,sqrtf,[
   VLC_ADD_LDFLAGS([x264],[-lmx])
 ])
@@ -817,6 +832,27 @@ then
   )
 fi
 
+dnl Check for dbus
+AC_ARG_ENABLE(dbus,
+  [  --enable-dbus            Linux D-BUS message bus system (default enabled)])
+if test "${enable_dbus}" != "no" -a "${SYS}" = "linux"
+then
+  PKG_CHECK_MODULES(DBUS, dbus-1 >= 0.30,
+    [ AC_DEFINE( HAVE_DBUS_1, 1, [Define if you have the new D-BUS library API])
+      AC_DEFINE( HAVE_DBUS, 1, [Define if you have the D-BUS library] )
+      VLC_ADD_LDFLAGS([screensaver],[$DBUS_LIBS])
+      VLC_ADD_CFLAGS([screensaver],[$DBUS_CFLAGS])],   
+    dnl older dbus
+    [ PKG_CHECK_MODULES( DBUS, dbus-1, 
+       [AC_DEFINE(HAVE_DBUS, 1, [Define if you have the D-BUS library])
+        VLC_ADD_LDFLAGS([screensaver],[$DBUS_LIBS])
+        VLC_ADD_CFLAGS([screensaver],[$DBUS_CFLAGS])],
+       [AC_MSG_WARN(DBUS library not found)])
+    ]
+  )
+fi
+
 dnl Build the gtk_main plugins?
 NEED_GTK_MAIN=no
 NEED_GNOME_MAIN=no
@@ -1460,7 +1496,7 @@ dnl
 dnl Growl notification plugin
 dnl
 AC_ARG_ENABLE(growl,
-  [  --enable-growl         growl notification plugin (default enabled)])
+  [  --enable-growl          growl notification plugin (default enabled)])
 AS_IF([test "${enable_growl}" != "no"], [
     VLC_ADD_PLUGINS([growl])
   ]
@@ -2336,6 +2372,43 @@ then
     VLC_ADD_LDFLAGS([mpc],[-lmpcdec])])
 fi
 
+dnl
+dnl  game music emu demux plugin
+dnl
+AC_ARG_ENABLE(gme,
+  [  --enable-gme            Game Music Emu demux support (default enabled)])
+if test "${enable_gme}" != "no" -a "${CXX}" != "";
+then
+  AC_LANG_PUSH(C++)
+  AC_ARG_WITH(gme-tree,
+  [    --with-gme-tree=PATH gme tree for static linking])
+  if test -n "${with_gme_tree}"
+  then
+    AC_MSG_CHECKING(for libgme.a in ${with_mod_tree})
+    real_gme_tree="`cd ${with_gme_tree} 2>/dev/null && pwd`"
+    if test -z "${real_gme_tree}"
+    then
+      dnl  The given directory can't be found
+      AC_MSG_RESULT(no)
+      AC_MSG_ERROR([cannot cd to ${with_gme_tree}])
+    fi
+    if test -f "${real_gme_tree}/gme/libgme.a"
+    then
+      dnl  Use a custom gme
+      AC_MSG_RESULT(${real_gme_tree}/gme/libgme.a)
+      VLC_ADD_PLUGINS([gme])
+      VLC_ADD_LDFLAGS([gme],[${real_gme_tree}/gme/libgme.a])
+      VLC_ADD_CXXFLAGS([gme],[-I${real_gme_tree}/gme])
+    else
+      dnl  The given gme wasn't built
+      AC_MSG_RESULT(no)
+      AC_MSG_ERROR([cannot find ${real_mod_tree}/gme/libgme.a, make sure you compiled gme in ${with_gme_tree}])
+    fi
+  else
+      AC_MSG_WARN([only static linking is available, you must provide a gme-tree])
+  fi
+  AC_LANG_POP(C++)
+fi
 
 dnl
 dnl  Codec plugins
@@ -2554,7 +2627,7 @@ dnl Those options have to be here because the .pc can be bogus for ffmpeg previo
    VLC_ADD_CPPFLAGS([ffmpeg stream_out_switcher],[-I${real_ffmpeg_tree}/libavcodec])
 
    if test -f "${real_ffmpeg_tree}/libavformat/libavformat.a"; then
-     AC_DEFINE(HAVE_LIBAVFORMAT, 1, [Define if you have ffmpeg's libavformat.])
+     AC_DEFINE(HAVE_LIBAVFORMAT_TREE, 1, [Define if you have ffmpeg's libavformat.])
      VLC_ADD_LDFLAGS([ffmpeg],[-L${real_ffmpeg_tree}/libavformat ${real_ffmpeg_tree}/libavformat/libavformat.a])
      VLC_ADD_CPPFLAGS([ffmpeg stream_out_switcher],[-I${real_ffmpeg_tree}/libavformat])
    fi
@@ -2573,6 +2646,8 @@ dnl Look for a ffmpeg-config (we are on debian )
   if test "${FFMPEG_CONFIG}" != "no"
   then
     AC_CHECK_HEADERS(ffmpeg/avcodec.h)
+    AC_CHECK_HEADERS(ffmpeg/avformat.h)
+    AC_CHECK_HEADERS(ffmpeg/avutil.h)
     AC_CHECK_HEADERS(postproc/postprocess.h)
     VLC_ADD_PLUGINS([ffmpeg])
     if test "${enable_sout}" != "no"; then
@@ -2587,6 +2662,8 @@ dnl Trying with pkg-config
    PKG_CHECK_MODULES(FFMPEG,[libavcodec, libavformat],
     [
      AC_CHECK_HEADERS(ffmpeg/avcodec.h)
+     AC_CHECK_HEADERS(ffmpeg/avformat.h)
+     AC_CHECK_HEADERS(ffmpeg/avutil.h)
      AC_CHECK_HEADERS(postproc/postprocess.h)
      VLC_ADD_BUILTINS([ffmpeg])
      if test "${enable_sout}" != "no"; then
@@ -2606,6 +2683,8 @@ dnl Trying with pkg-config
       CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_ffmpeg}"
       LDFLAGS="${LDFLAGS_save} ${LDFLAGS_ffmpeg}"
       AC_CHECK_HEADERS(ffmpeg/avcodec.h, [], [AC_MSG_ERROR([Missing header file ffmpeg/avcodec.h.])] )
+      AC_CHECK_HEADERS(ffmpeg/avformat.h)
+      AC_CHECK_HEADERS(ffmpeg/avutil.h)
       AC_CHECK_HEADERS(postproc/postprocess.h, [], [AC_MSG_ERROR([Missing header file postproc/postprocess.h.])] )
 
       AC_CHECK_LIB(avutil, av_add_i, [
@@ -2622,9 +2701,9 @@ dnl Trying with pkg-config
             VLC_ADD_BUILTINS([stream_out_switcher])
         fi],
          [ AC_MSG_ERROR([Could not find ffmpeg on your system: you may get it from http://ffmpeg.sf.net/ (cvs version is recommended). Alternatively you can use --disable-ffmpeg to disable the ffmpeg plugins.]) ], [$LDAVUTIL])
+
+      
       AC_CHECK_LIB(avformat, av_open_input_stream, [
-        AC_DEFINE(HAVE_LIBAVFORMAT, 1,
-        [Define if you have ffmpeg's libavformat.])
         VLC_ADD_LDFLAGS([ffmpeg],[-lavformat -lz]) ], [], [-lavcodec -lz $LDAVUTIL])
       LDFLAGS="${LDFLAGS_save}"
       CPPFLAGS="${CPPFLAGS_save}"
@@ -2666,7 +2745,7 @@ then
     VLC_ADD_CPPFLAGS([ffmpegaltivec],[-I${real_ffmpeg_tree}/libavcodec -I${real_ffmpeg_tree}/libavformat])
 
     if test -f "${real_ffmpeg_tree}/libavformat/libavformat.a"; then
-      AC_DEFINE(HAVE_LIBAVFORMAT, 1, [Define if you have ffmpeg's libavformat.])
+      AC_DEFINE(HAVE_LIBAVFORMAT_TREE, 1, [Define if you have ffmpeg's libavformat.])
       VLC_ADD_LDFLAGS([ffmpegaltivec],[-L${real_ffmpeg_tree}/libavformat -lavformataltivec -lz])
       VLC_ADD_CPPFLAGS([ffmpegaltivec],[-I${real_ffmpeg_tree}/libavformat])
     fi
@@ -2808,7 +2887,7 @@ dnl
 dnl MP4 module
 dnl
 AC_CHECK_HEADERS(zlib.h, [
-  VLC_ADD_LDFLAGS([mp4 skins2 sap mkv],[-lz])
+  VLC_ADD_LDFLAGS([mp4 skins2 sap mkv gme],[-lz])
 ] )
 
 AC_CHECK_HEADERS(sysfs/libsysfs.h, [
@@ -2903,7 +2982,7 @@ dnl
 dnl DTS Coherent Acoustics decoder plugin
 dnl
 AC_ARG_ENABLE(dts,
-  [  --enable-dts            DTS Coherent Acoustics support with libdts (default enabled)])
+  [  --enable-dts            DTS Coherent Acoustics support with libdca (default enabled)])
 if test "${enable_dts}" != "no"; then
   AC_ARG_WITH(dts-tree,
     [    --with-dts-tree=PATH  libdts tree for static linking ],[],[])
@@ -3220,33 +3299,6 @@ if test "${enable_dirac}" = "yes"; then
   ])
 fi
 
-dnl  libvc1 decoder plugin
-dnl
-AC_ARG_ENABLE(libvc1,
-[  --enable-libvc1         VC-1 codec (default disabled)])
-if test "${enable_libvc1}" = "yes"
-then
-  AC_ARG_WITH(libvc1-tree,
-  [    --with-libvc1-tree=PATH libvc1 tree for static linking])
-  if test -n "${with_libvc1_tree}"
-  then
-    AC_MSG_CHECKING(for vc1dec.o in ${with_libvc1_tree})
-    real_libvc1_tree="`cd ${with_libvc1_tree} 2>/dev/null && pwd`"
-    if test -f "${real_libvc1_tree}/src/.libs/vc1dec.o"
-    then
-      VLC_ADD_BUILTINS([libvc1])
-      VLC_ADD_CPPFLAGS([libvc1],[-I${real_libvc1_tree}/src])
-      VLC_ADD_LDFLAGS([libvc1],[${real_libvc1_tree}/src/.libs/libvc1.a])
-      AC_MSG_RESULT(yes)
-    else
-      dnl  The given libvc1 tree wasn't built
-      AC_MSG_RESULT(no)
-      AC_MSG_ERROR([cannot find ${real_libvc1_tree}/src/.libs/vc1dec.o,
-                    make sure you compiled libvc1 in ${with_libvc1_tree}])
-    fi
-  fi
-fi
-
 dnl
 dnl  PNG decoder module
 dnl
@@ -3385,7 +3437,7 @@ if test "${enable_xvideo}" != "no" &&
     AC_CHECK_LIB(Xv,XvPutImage,[
       # If libXv.so is available, xvideo can be a plugin. Otherwise, we
       # test for libXv_pic.
-      if test -f /usr/X11R6/lib/libXv.so -o -f "${x_libraries}"/libXv.so; then
+      if test -f /usr/X11R6/lib/libXv.so -o -f /usr/lib/libXv.so -o -f "${x_libraries}"/libXv.so; then
         VLC_ADD_PLUGINS([xvideo])
         VLC_ADD_CPPFLAGS([xvideo],[${X_CFLAGS}])
         VLC_ADD_LDFLAGS([xvideo],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext -lXv])
@@ -5030,10 +5082,13 @@ then
     then
       AC_MSG_ERROR([Please install the Mozilla development tools, mozilla-config was not found.])
     else
-      if test "${SYS}" != "mingw32"; then
+      if ${MOZILLA_CONFIG} --defines | grep -q 'MOZ_X11=1'; then
         LDFLAGS="${LDFLAGS_save} ${X_LIBS} ${X_PRE_LIBS}"
         AC_CHECK_LIB(Xt,XtStrings,
-         [VLC_ADD_LDFLAGS([mozilla],[${X_LIBS} ${X_PRE_LIBS} -lXt -lX11 -lSM -lICE])],
+         [
+            VLC_ADD_CPPFLAGS([mozilla],[${X_CFLAGS}])
+            VLC_ADD_LDFLAGS([mozilla],[${X_LIBS} ${X_PRE_LIBS} -lXt -lX11 -lSM -lICE])
+        ],
          [],
          [[${X_LIBS} ${X_PRE_LIBS} -lX11 -lSM -lICE]
         ])
@@ -5091,7 +5146,7 @@ then
   if test "${mozilla}" != "false"
   then
     build_pic=yes
-    AC_PATH_PROG(XPIDL, xpidl, no, ${xpidl_path} /usr/lib/mozilla)
+    AC_PATH_PROG(XPIDL, xpidl, no, ${xpidl_path}:/usr/lib/mozilla:/usr/lib64/mozilla)
     if test "${XPIDL}" = "no"; then
       AC_MSG_ERROR([Please install the Mozilla development tools, xpidl was not found.])
     fi
@@ -5148,7 +5203,7 @@ dnl
 if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"
 then
     AC_CHECK_LIB(unicows, LoadUnicowsSymbol, [
-        VLC_ADD_LDFLAGS([vlc],[-lunicows])
+        VLC_ADD_LDFLAGS([vlc],[-Wl,--exclude-libs,libunicows.a -lunicows])
     ])
 fi
 
@@ -5252,7 +5307,8 @@ AS_IF([test "x${enable_shared_libvlc}" = "x"], [enable_shared_libvlc=no])
 AM_CONDITIONAL(BUILD_SHARED, [test "${enable_shared_libvlc}" != "no"])
 AS_IF([test "${enable_shared_libvlc}" != "no" || test "${enable_libtool}" != "no"], [
   AC_DEFINE(HAVE_SHARED_LIBVLC, 1, [Define to 1 if libvlc is built as a shared library.])
-])
+  FILE_LIBVLC_DLL="!define LIBVLC_DLL libvlc.dll"],
+  FILE_LIBVLC_DLL="" )
 
 pic=no
 AS_IF([test "${build_pic}" = "yes"], [pic=pic])
@@ -5288,8 +5344,8 @@ dnl VLC_SYMBOL="`echo ${VERSION} | sed -e 'y/.-+/___/'`"
 dnl AC_DEFINE_UNQUOTED(MODULE_SUFFIX, "__${VLC_SYMBOL}", [String suffix for module functions])
 dnl AC_DEFINE_UNQUOTED(MODULE_SYMBOL, ${VLC_SYMBOL}, [Symbol suffix for module functions])
 
-dnl New definitions with value matching 0.8.4 release
-module_symbol="0_8_4"
+dnl New definitions with value matching 0.8.5 release
+module_symbol="0_8_5"
 AC_DEFINE_UNQUOTED(MODULE_SUFFIX, "__${module_symbol}", [String suffix for module functions])
 AC_DEFINE_UNQUOTED(MODULE_SYMBOL, $module_symbol, [Symbol suffix for module functions])
 VLC_ENTRY="vlc_entry__${module_symbol}"
@@ -5329,6 +5385,7 @@ AC_SUBST(LIBEXT)
 AC_SUBST(INCLUDES)
 AC_SUBST(ALL_LINGUAS)
 AC_SUBST(MACOSX_DEPLOYMENT_TARGET)
+AC_SUBST(FILE_LIBVLC_DLL)
 
 dnl Import substitutions generated by bootstrap
 VLC_SUBSTS
@@ -5337,6 +5394,7 @@ dnl Create vlc-config.in
 VLC_OUTPUT_VLC_CONFIG_IN
 
 AC_CONFIG_FILES([
+  vlc.win32.nsi
   Makefile
   activex/Makefile
   activex/axvlc.inf