]> git.sesse.net Git - vlc/blobdiff - configure.ac.in
ALL : VLC FAQ transformed into VideoLAN FAQ, which is hosted in the CVS
[vlc] / configure.ac.in
index 32c644ef0203517ea6f06b240de9124a4bc506b0..8fee7b28918e4d4ef57f2d869d627303ee936e5d 100644 (file)
@@ -1,6 +1,6 @@
 dnl Autoconf settings for vlc
 
-AC_INIT(vlc,0.5.4-cvs)
+AC_INIT(vlc,0.6.0-test1)
 
 CONFIGURE_LINE="$0 $*"
 CODENAME="Natalya"
@@ -12,7 +12,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.5.4-cvs)
+AM_INIT_AUTOMAKE(vlc,0.6.0-test1)
 AM_CONFIG_HEADER(config.h)
 
 dnl
@@ -85,6 +85,7 @@ case "x${target_os}" in
     LDFLAGS_dvd="${LDFLAGS_dvd} -ldvd"
     LDFLAGS_dvdcss="${LDFLAGS_dvdcss} -ldvd"
     LDFLAGS_vcd="${LDFLAGS_vcd} -ldvd"
+    LDFLAGS_cdda="${LDFLAGS_cdda} -ldvd"
     ;;
   x*bsd*)
     SYS="${target_os}"
@@ -182,8 +183,9 @@ if test "${nls_cv_force_use_gnu_gettext}" = "yes"; then
 else
   AC_CHECK_FUNCS(textdomain,,[
     AC_CHECK_LIB(intl,textdomain,
-      LDFLAGS_vlc="${LDFLAGS_vlc} -lintl"
-      LDFLAGS_plugins="${LDFLAGS_plugins} -lintl"
+      LDFLAGS_vlc="${LDFLAGS_vlc} ${LIBINTL}"
+      LDFLAGS_plugins="${LDFLAGS_plugins} ${LIBINTL}",,
+      ${LIBINTL}
     )
   ])
 fi
@@ -1263,7 +1265,11 @@ then
           PLUGINS="${PLUGINS} mux_ts_dvbpsi"
           LDFLAGS_mux_ts_dvbpsi="${LDFLAGS_mux_ts_dvbpsi} -ldvbpsi" ],
         [  AC_MSG_WARN([cannot find libdvbpsi headers]) ],
-        [#include <stdint.h>
+        [#if defined( HAVE_STDINT_H )
+#   include <stdint.h>
+#elif defined( HAVE_INTTYPES_H )
+#   include <inttypes.h>
+#endif
 #include <dvbpsi/dvbpsi.h>
 #include <dvbpsi/descriptor.h>
 #include <dvbpsi/pat.h>
@@ -1352,7 +1358,7 @@ then
   AC_MSG_CHECKING(for cdrom_msf0 in linux/cdrom.h)
   AC_EGREP_HEADER(cdrom_msf0,linux/cdrom.h,[
     AC_MSG_RESULT(yes)
-    PLUGINS="${PLUGINS} vcd"
+    PLUGINS="${PLUGINS} vcd cdda"
   ],[
     AC_MSG_RESULT(no)
   ])
@@ -1360,7 +1366,7 @@ then
   AC_MSG_CHECKING(for scsireq in sys/scsiio.h)
   AC_EGREP_HEADER(scsireq,sys/scsiio.h,[
     AC_MSG_RESULT(yes)
-    PLUGINS="${PLUGINS} vcd"
+    PLUGINS="${PLUGINS} vcd cdda"
     AC_DEFINE(HAVE_SCSIREQ_IN_SYS_SCSIIO_H, 1, For NetBSD VCD support)
   ],[
     AC_MSG_RESULT(no)
@@ -1369,7 +1375,7 @@ then
   AC_MSG_CHECKING(for ioc_toc_header in sys/cdio.h)
   AC_EGREP_HEADER(ioc_toc_header ,sys/cdio.h,[
     AC_MSG_RESULT(yes)
-    PLUGINS="${PLUGINS} vcd"
+    PLUGINS="${PLUGINS} vcd cdda"
     AC_DEFINE(HAVE_IOC_TOC_HEADER_IN_SYS_CDIO_H, 1, For FreeBSD VCD support)
   ],[
     AC_MSG_RESULT(no)
@@ -1377,13 +1383,14 @@ then
 
   if test "x${SYS}" = "xbsdi" -o "x${SYS}" = "xmingw32"
   then
-    PLUGINS="${PLUGINS} vcd"
+    PLUGINS="${PLUGINS} vcd cdda"
   fi
 
   if test "x${SYS}" = "xdarwin"
   then
-    PLUGINS="${PLUGINS} vcd"
+    PLUGINS="${PLUGINS} vcd cdda"
     LDFLAGS_vcd="${LDFLAGS_vcd} -framework IOKit -framework CoreFoundation"
+    LDFLAGS_cdda="${LDFLAGS_cdda} -framework IOKit -framework CoreFoundation"
   fi
 fi
 
@@ -1448,7 +1455,7 @@ dnl
 dnl  mad plugin
 dnl
 AC_ARG_ENABLE(mad,
-  [  --enable-mad            libmad module (default disabled)])
+  [  --enable-mad            libmad module (default enabled)])
 if test "x${enable_mad}" != "xno"
 then
   AC_ARG_WITH(mad,
@@ -1492,7 +1499,7 @@ then
     CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_mpgatofixed32}"
     LDFLAGS="${LDFLAGS_save} ${LDFLAGS_mpgatofixed32}"
     AC_CHECK_HEADERS(mad.h, ,
-      [ AC_MSG_ERROR([Cannot find development headers for libmad...]) ])
+      [ AC_MSG_ERROR([Could not find libmad on your system: you may get it from http://www.underbit.com/products/mad/. Alternatively you can use --disable-mad to disable the mad plugin.]) ])
     AC_CHECK_LIB(mad, mad_bit_init, [
       PLUGINS="${PLUGINS} mpgatofixed32"
       LDFLAGS_mpgatofixed32="${LDFLAGS_mpgatofixed32} -lmad" ],
@@ -1514,8 +1521,8 @@ dnl
 dnl  ffmpeg decoder plugin
 dnl
 AC_ARG_ENABLE(ffmpeg,
-[  --enable-ffmpeg         ffmpeg codec (default disabled)])
-if test "x${enable_ffmpeg}" = "xyes"
+[  --enable-ffmpeg         ffmpeg codec (default enabled)])
+if test "x${enable_ffmpeg}" != "xno"
 then
   AC_ARG_WITH(ffmpeg-tree,
     [    --with-ffmpeg-tree=PATH ffmpeg tree for static linking])
@@ -1528,12 +1535,12 @@ then
     LDFLAGS="${LDFLAGS_save} ${LDFLAGS_ffmpeg}"
     AC_CHECK_HEADERS(ffmpeg/avcodec.h postproc/postprocess.h)
     AC_CHECK_LIB(avcodec, avcodec_init, [
-      BUILTINS="${BUILTINS} ffmpeg stream_out_transcode encoder_ffmpeg"
+      BUILTINS="${BUILTINS} ffmpeg stream_out_transcode"
       LDFLAGS_ffmpeg="${LDFLAGS_ffmpeg} -lavcodec"
       dnl  XXX: we don't link with -lavcodec a 2nd time because the OS X
       dnl       linker would miserably barf on multiple definitions.
       LDFLAGS_stream_out_transcode="${LDFLAGS_stream_out_transcode}" ],
-      [ AC_MSG_ERROR([Cannot find libavcodec library...]) ])
+       [ 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.]) ])
     LDFLAGS="${LDFLAGS_save}"
     CPPFLAGS="${CPPFLAGS_save}"
   fi
@@ -1552,7 +1559,7 @@ then
     if test -f "${real_ffmpeg_tree}/libavcodec/libavcodec.a"; then
       dnl  Use a custom libffmpeg
       AC_MSG_RESULT(${real_ffmpeg_tree}/libavcodec/libavcodec.a)
-      BUILTINS="${BUILTINS} ffmpeg stream_out_transcode encoder_ffmpeg"
+      BUILTINS="${BUILTINS} ffmpeg stream_out_transcode"
       LDFLAGS_ffmpeg="${LDFLAGS_ffmpeg} -L${real_ffmpeg_tree}/libavcodec -lavcodec"
       CPPFLAGS_ffmpeg="${CPPFLAGS_ffmpeg} -I${real_ffmpeg_tree}/libavcodec"
 
@@ -1568,8 +1575,9 @@ then
   fi
 
   dnl Duplicate the ffmpeg CPPFLAGS and LDFLAGS for the encoder
-  LDFLAGS_encoder_ffmpeg=${LDFLAGS_ffmpeg}
-  CPPFLAGS_encoder_ffmpeg=${CPPFLAGS_ffmpeg}
+  CPPFLAGS_encoder_ffmpeg="${CPPFLAGS_ffmpeg}"
+  dnl XXX: we don't link with -lavcodec blah blah blah
+  #LDFLAGS_encoder_ffmpeg="${LDFLAGS_ffmpeg}"
 
   dnl Add postprocessing modules
   PLUGINS="${PLUGINS} postprocessing_c"
@@ -1669,7 +1677,7 @@ then
     then
       dnl  Use a custom xvid
       AC_MSG_RESULT(${real_xvid_tree}/build/generic/libxvidcore.a)
-      BUILTINS="${BUILTINS} xvid encoder_xvid"
+      BUILTINS="${BUILTINS} xvid"
       LDFLAGS_xvid="${LDFLAGS_xvid} -L${real_xvid_tree}/build/generic -lxvidcore"
       CPPFLAGS_xvid="${CPPFLAGS_xvid} -I${real_xvid_tree}/src"
     else
@@ -1683,7 +1691,7 @@ then
     AC_CHECK_HEADERS(xvid.h, ,
       [ AC_MSG_ERROR([Cannot find development headers for libxvidcore...]) ])
     AC_CHECK_LIB(xvidcore, xvid_init, [
-      PLUGINS="${PLUGINS} xvid encoder_xvid"
+      PLUGINS="${PLUGINS} xvid"
       LDFLAGS_xvid="${LDFLAGS_xvid} -lxvidcore" ],
       [ AC_MSG_ERROR([Cannot find libxvidcore library...]) ])
     LDFLAGS="${LDFLAGS_save}"
@@ -1695,7 +1703,19 @@ then
   CPPFLAGS_encoder_xvid=${CPPFLAGS_xvid}
 fi
 
-
+dnl
+dnl  QuickTime plugin
+dnl
+AC_ARG_ENABLE(quicktime,
+  [  --enable-quicktime      QuickTime module (default enabled on MacOS X)])
+if test "x${enable_quicktime}" != "xno" &&
+  (test "x${SYS}" = "xdarwin" || test "x${enable_quicktime}" = "xyes")
+then
+  AC_CHECK_HEADERS(QuickTime/QuickTime.h,
+    [ BUILTINS="${BUILTINS} quicktime"
+      LDFLAGS_quicktime="${LDFLAGS_quicktime} -framework QuickTime -framework Carbon"
+    ], [ AC_MSG_ERROR([cannot find CoreAudio headers]) ])
+fi
 
 dnl
 dnl MP4 module
@@ -1703,6 +1723,7 @@ dnl
 AC_CHECK_HEADERS(zlib.h, [
   LDFLAGS_mp4="${LDFLAGS_mp4} -lz"
   LDFLAGS_skins="${LDFLAGS_skins} -lz"
+  LDFLAGS_basic_skins="${LDFLAGS_basic_skins} -lz"
 ] )
 
 
@@ -1711,6 +1732,7 @@ dnl skins module
 dnl
 AC_CHECK_HEADERS(libtar.h, [
   LDFLAGS_skins="${LDFLAGS_skins} -ltar"
+  LDFLAGS_basic_skins="${LDFLAGS_basic_skins} -ltar"
 ] )
 
 
@@ -1789,7 +1811,7 @@ dnl
 dnl  DV plugin
 dnl
 AC_ARG_ENABLE(dv,
-  [  --enable-dv             DV decoder support (default disabled)])
+  [  --enable-dv             DV decoder support (deprecated in favor of ffmpeg) (default disabled)])
 if test "x${enable_dv}" = "xyes"
 then
   AC_CHECK_HEADERS(libdv/dv.h, [
@@ -1818,23 +1840,50 @@ AC_ARG_ENABLE(libmpeg2,
   [  --enable-libmpeg2       libmpeg2 decoder support (default enabled)])
 if test "x${enable_libmpeg2}" != "xno"
 then
-  AC_CHECK_HEADERS(mpeg2dec/mpeg2.h, [
-    AC_MSG_CHECKING(for libmpeg2 version >= 0.3.2)
-    AC_EGREP_CPP(yes,
-      [#include <mpeg2dec/mpeg2.h>
-       #ifdef MPEG2_RELEASE
-       #if MPEG2_RELEASE >= MPEG2_VERSION(0,3,2)
-       yes
-       #endif
-       #endif],
-      [AC_MSG_RESULT([yes])
-        PLUGINS="${PLUGINS} libmpeg2"
-        LDFLAGS_libmpeg2="${LDFLAGS_libmpeg2} -lmpeg2"],
-      [AC_MSG_RESULT([no])
-        AC_MSG_ERROR([Your libmpeg2 is too old (you need the cvs version): you may get a more recent one from http://libmpeg2.sf.net/. Alternatively you can use --disable-libmpeg2 to disable the libmpeg2 plugin.])])],
-
-    [AC_MSG_ERROR([Could not find libmpeg2 on your system: you may get it from http://libmpeg2.sf.net/ (you need the cvs version). Alternatively you can use --disable-libmpeg2 to disable the libmpeg2 plugin.])]
-  )
+  AC_ARG_WITH(libmpeg2-tree,
+  [    --with-libmpeg2-tree=PATH libmpeg2 tree for static linking])
+  if test "x${with_libmpeg2_tree}" != "x"
+  then
+    AC_MSG_CHECKING(for libmpeg2.a in ${with_libmpeg2_tree})
+    real_libmpeg2_tree="`cd ${with_libmpeg2_tree} 2>/dev/null && pwd`"
+    if test "x${real_libmpeg2_tree}" = x
+    then
+      dnl  The given directory can't be found
+      AC_MSG_RESULT(no)
+      AC_MSG_ERROR([cannot cd to ${with_libmpeg2_tree}])
+    fi
+    if test -f "${real_libmpeg2_tree}/libmpeg2/.libs/libmpeg2.a"
+    then
+      dnl  Use a custom libmpeg2
+      AC_MSG_RESULT(${real_libmpeg2_tree}/libmpeg2/.libs/libmpeg2.a)
+      PLUGINS="${PLUGINS} libmpeg2"
+      LDFLAGS_libmpeg2="${LDFLAGS_libmpeg2} -L${real_libmpeg2_tree}/libmpeg2/.libs -lmpeg2"
+      CFLAGS_libmpeg2="${CFLAGS_libmpeg2} -I${real_libmpeg2_tree}/include"
+      eval "`cd ${real_libmpeg2_tree}/include && ln -sf . mpeg2dec 2>/dev/null`"
+    else
+      dnl  The given libmpeg2 wasn't built
+      AC_MSG_RESULT(no)
+      AC_MSG_ERROR([cannot find ${real_libmpeg2_tree}/libmpeg2/.libs/libmpeg2.a, make sure you compiled libmpeg2 in ${with_libmpeg2_tree}])
+    fi
+  else
+    AC_CHECK_HEADERS(mpeg2dec/mpeg2.h, [
+      AC_MSG_CHECKING(for libmpeg2 version >= 0.3.2)
+      AC_EGREP_CPP(yes,
+        [#include <mpeg2dec/mpeg2.h>
+         #ifdef MPEG2_RELEASE
+         #if MPEG2_RELEASE >= MPEG2_VERSION(0,3,2)
+         yes
+         #endif
+         #endif],
+        [AC_MSG_RESULT([yes])
+          PLUGINS="${PLUGINS} libmpeg2"
+          LDFLAGS_libmpeg2="${LDFLAGS_libmpeg2} -lmpeg2"],
+        [AC_MSG_RESULT([no])
+          AC_MSG_ERROR([Your libmpeg2 is too old (you need the cvs version): you may get a more recent one from http://libmpeg2.sf.net/. Alternatively you can use --disable-libmpeg2 to disable the libmpeg2 plugin.])])],
+
+      [AC_MSG_ERROR([Could not find libmpeg2 on your system: you may get it from http://libmpeg2.sf.net/ (you need the cvs version). Alternatively you can use --disable-libmpeg2 to disable the libmpeg2 plugin.])]
+    )
+  fi
 fi
 
 dnl
@@ -2340,41 +2389,60 @@ dnl
 dnl Skins module
 dnl
 AC_ARG_ENABLE(skins,
-  [  --enable-skins          Win32 skins module (default enabled on Win32)])
+  [  --enable-skins          Skins interface module (default enabled on Win32)])
 if test "x${enable_skins}" != "xno"; then
   WXWINDOWS_PATH="${PATH}"
-  AC_ARG_WITH(wx-config-path,
-    [    --with-wx-config-path=PATH wx-config path (default search in \$PATH)],
-    [ if test "x${with_wx_config_path}" != "xno"
+  AC_ARG_WITH(skins-wx-config-path,
+    [    --with-skins-wx-config-path=PATH wx-config path for the skins plugin (default search in \$PATH)],
+    [ if test "x${with_skins_wx_config_path}" != "xno"
       then
-        WXWINDOWS_PATH="${with_wx_config_path}:${PATH}"
+        WXWINDOWS_PATH="${with_skins_wx_config_path}:${PATH}"
       fi ])
   # look for wx-config
-  AC_PATH_PROG(WX_CONFIG, wx-config, no, ${WXWINDOWS_PATH})
-  if test "x${WX_CONFIG}" != "xno"
+  AC_PATH_PROG(WX_CONFIG_SKINS, wx-config, no, ${WXWINDOWS_PATH})
+  if test "x${WX_CONFIG_SKINS}" != "xno"
   then
-    if expr 2.3.0 \> `${WX_CONFIG} --version` >/dev/null
+    if expr 2.3.0 \> `${WX_CONFIG_SKINS} --version` >/dev/null
     then
       AC_MSG_ERROR([Your development package for wxWindows is too old, you need at least version 2.3.0. Please upgrade and try again. Alternatively you can also configure with --disable-skins.])
     fi
-    CPPFLAGS_skins="${CPPFLAGS_skins} `${WX_CONFIG} --cxxflags`"
-    LDFLAGS_skins="${LDFLAGS_skins} `${WX_CONFIG} --libs`"
+    CPPFLAGS_skins="${CPPFLAGS_skins} `${WX_CONFIG_SKINS} --cxxflags` -DWX_SKINS"
+    LDFLAGS_skins="${LDFLAGS_skins} `${WX_CONFIG_SKINS} --libs`"
   fi
 
   if test "x${SYS}" = "xmingw32" -o "x${SYS}" = "xcygwin"; then
     PLUGINS="${PLUGINS} skins"
     CPPFLAGS_skins="${CPPFLAGS_skins} -O2 -U_OFF_T_ -U_off_t -fno-rtti -Imodules/gui/skins"
-    LDFLAGS_skins="${LDFLAGS_skins} -loleaut32 -lwinspool -lwinmm -lshell32 -lctl3d32 -ladvapi32 -lwsock32 -lstdc++ -lgdi32 -lcomdlg32 -lole32 -luuid -lcomctl32 -lmsimg32"
+    LDFLAGS_skins="${LDFLAGS_skins} -loleaut32 -lwinspool -lwinmm -lshell32 -lctl3d32 -ladvapi32 -lwsock32 -lstdc++ -lgdi32 -lcomdlg32 -lole32 -luuid -lcomctl32"
   else
     if test "x${enable_skins}" = "xyes"; then
       PKG_CHECK_MODULES(GTK2, [gtk+-2.0 >= 2.0.0, gthread-2.0])
       PLUGINS="${PLUGINS} skins"
-      CPPFLAGS_skins="${CPPFLAGS_skins} -O2 -fno-rtti -Imodules/gui/skins -Imodules/gui/skins/src -Imodules/gui/skins/gtk2 -Imodules/gui/skins/controls -Imodules/gui/skins/parser ${GTK2_CFLAGS}"
+      CPPFLAGS_skins="${CPPFLAGS_skins} -O2 -fno-rtti -Imodules/gui/skins ${GTK2_CFLAGS} -DGTK2_SKINS"
       LDFLAGS_skins="${LDFLAGS_skins} -lstdc++  ${GTK2_LIBS}"
     fi
   fi
 fi
 
+dnl
+dnl Basic skins module (i.e. without wxWindows dialogs)
+dnl
+AC_ARG_ENABLE(basic-skins,
+  [  --enable-basic-skins    Skins interface module without wxWindows dialogs (default disabled)])
+if test "x${enable_basic_skins}" = "xyes"; then
+  if test "x${SYS}" = "xmingw32" -o "x${SYS}" = "xcygwin"; then
+    PLUGINS="${PLUGINS} basic_skins"
+    CPPFLAGS_basic_skins="${CPPFLAGS_basic_skins} -O2 -U_OFF_T_ -U_off_t -fno-rtti -Imodules/gui/skins"
+    LDFLAGS_basic_skins="${LDFLAGS_basic_skins} -loleaut32 -lwinspool -lwinmm -lshell32 -lctl3d32 -ladvapi32 -lwsock32 -lstdc++ -lgdi32 -lcomdlg32 -lole32 -luuid -lcomctl32"
+  else
+    PKG_CHECK_MODULES(GTK2, [gtk+-2.0 >= 2.0.0, gthread-2.0])
+    PLUGINS="${PLUGINS} basic_skins"
+    CPPFLAGS_basic_skins="${CPPFLAGS_basic_skins} -O2 -fno-rtti -Imodules/gui/skins ${GTK2_CFLAGS} -DGTK2_SKINS"
+    LDFLAGS_basic_skins="${LDFLAGS_basic_skins} -lstdc++  ${GTK2_LIBS}"
+  fi
+  CPPFLAGS_basic_skins="${CPPFLAGS_basic_skins} -DBASIC_SKINS"
+fi
+
 dnl
 dnl  Gtk+ module
 dnl
@@ -2738,18 +2806,6 @@ AC_ARG_ENABLE(qnx,
       ])
     fi
 
-dnl
-dnl  Windows native interface module, built with Borland C++ Builder
-dnl
-AC_ARG_ENABLE(intfwin,
-[  --enable-intfwin        Win32 interface support (default disabled)],
-[ if test "x${enable_intfwin}" != "xno"
-  then
-    AC_CHECK_TOOL(BPR2MAK, bpr2mak, AC_ERROR(bpr2mak not found))
-    AC_CHECK_TOOL(BCMAKE, bcmake, AC_ERROR(bcmake not found))
-    PLUGINS="${PLUGINS} win32"
-  fi ])
-
 dnl
 dnl  ncurses module
 dnl