]> git.sesse.net Git - vlc/blobdiff - configure.ac.in
* include/video.h, include/vlc_config.h, src/video_output/*: changed the
[vlc] / configure.ac.in
index f3fa0ba917f8aac96bad90c069a500eb981b7935..0310b8465efcd284a391efa148de8e138c596f97 100644 (file)
@@ -1,6 +1,6 @@
 dnl Autoconf settings for vlc
 
-AC_INIT(vlc,0.5.0-cvs-am)
+AC_INIT(vlc,0.5.0-cvs)
 
 CONFIGURE_LINE="$0 $*"
 CODENAME="Natalya"
@@ -11,7 +11,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.0-cvs-am)
+AM_INIT_AUTOMAKE(vlc,0.5.0-cvs)
 AM_CONFIG_HEADER(config.h)
 
 dnl
@@ -122,12 +122,18 @@ case "x${target_os}" in
     esac
 
     if test "x$SYS" = "xmingw32"; then
+        # add ws2_32 for closesocket, select, recv
         CPPFLAGS_save="${CPPFLAGS_save} -D_OFF_T_ -D_off_t=long"
         CPPFLAGS="${CPPFLAGS_save}"
+        CXXFLAGS_save="${CXXFLAGS_save} -fvtable-thunks";
+        CXXFLAGS="${CXXFLAGS_save}"
         LDFLAGS_vlc="${LDFLAGS_vlc} -lws2_32 -lnetapi32 -mwindows"
         LDFLAGS_ipv4="${LDFLAGS_ipv4} -lws2_32"
         LDFLAGS_ipv6="${LDFLAGS_ipv6} -lws2_32"
-        LDFLAGS_access_http="${LDFLAGS_http} -lws2_32"
+        LDFLAGS_access_http="${LDFLAGS_access_http} -lws2_32"
+        LDFLAGS_access_mms="${LDFLAGS_access_mms} -lws2_32"
+        LDFLAGS_access_rtp="${LDFLAGS_access_rtp} -lws2_32"
+        LDFLAGS_access_udp="${LDFLAGS_access_udp} -lws2_32"
         LDFLAGS_rc="${LDFLAGS_rc} -lws2_32"
     fi
     ;;
@@ -214,7 +220,19 @@ dnl The -DSYS_FOO flag
 CPPFLAGS_save="${CPPFLAGS_save} -DSYS_`echo ${SYS} | sed -e 's/-.*//' | tr 'abcdefghijklmnopqrstuvwxyz.' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ_'`"; CPPFLAGS="${CPPFLAGS_save}"
 
 dnl Check for system libs needed
-AC_CHECK_FUNCS(gettimeofday select strerror strtod strtol isatty vasprintf swab sigrelse getpwuid memalign posix_memalign gethostbyname2 atoll strndup)
+need_libc=false
+
+AC_CHECK_FUNCS(gettimeofday select strerror strtod strtol isatty vasprintf swab sigrelse getpwuid memalign posix_memalign gethostbyname2 atoll getenv putenv setenv)
+
+dnl Check for usual libc functions
+AC_CHECK_FUNCS(strdup,,[need_libc=:])
+AC_CHECK_FUNCS(strndup,,[need_libc=:])
+AC_CHECK_FUNCS(atof,,[need_libc=:])
+AC_CHECK_FUNCS(lseek,,[need_libc=:])
+AC_CHECK_FUNCS(strcasecmp,,[AC_CHECK_FUNCS(stricmp,,[need_libc=:])])
+AC_CHECK_FUNCS(strncasecmp,,[AC_CHECK_FUNCS(strnicmp,,[need_libc=:])])
+
+AM_CONDITIONAL(BUILD_LIBC, ${need_libc})
 
 AC_CHECK_FUNC(connect,,[
   AC_CHECK_LIB(socket,connect,
@@ -224,7 +242,10 @@ AC_CHECK_FUNC(connect,,[
 
 AC_CHECK_FUNC(send,,[
   AC_CHECK_LIB(socket,send,
-    LDFLAGS_http="${LDFLAGS_http} -lsocket"
+    LDFLAGS_access_http="${LDFLAGS_access_http} -lsocket"
+    LDFLAGS_access_mms="${LDFLAGS_access_mms} -lsocket"
+    LDFLAGS_access_rtp="${LDFLAGS_access_rtp} -lsocket"
+    LDFLAGS_access_udp="${LDFLAGS_access_udp} -lsocket"
 )])
 
 AC_CHECK_FUNC(gethostbyname,,[
@@ -311,8 +332,8 @@ AC_EGREP_HEADER(strncasecmp,strings.h,[
             Define if <strings.h> defines strncasecmp.)])
 
 dnl Check for headers
-AC_CHECK_HEADERS(stdint.h getopt.h strings.h inttypes.h sys/int_types.h)
-AC_CHECK_HEADERS(sys/sockio.h fcntl.h sys/types.h sys/time.h sys/times.h sys/ioctl.h)
+AC_CHECK_HEADERS(signal.h time.h errno.h stdint.h getopt.h strings.h inttypes.h sys/int_types.h)
+AC_CHECK_HEADERS(sys/sockio.h fcntl.h sys/types.h sys/time.h sys/times.h sys/ioctl.h sys/stat.h)
 AC_CHECK_HEADERS(dlfcn.h image.h)
 AC_CHECK_HEADERS(arpa/inet.h net/if.h netinet/in.h sys/socket.h)
 AC_CHECK_HEADERS(machine/param.h sys/shm.h)
@@ -320,6 +341,11 @@ AC_CHECK_HEADERS(linux/version.h)
 
 AC_HEADER_TIME
 
+dnl Check for dirent
+need_dirent=false
+AC_CHECK_HEADERS(dirent.h,,[need_dirent=:])
+AM_CONDITIONAL(BUILD_DIRENT, ${need_dirent})
+
 dnl Mac OS X and other OSes don't have declaration for nanosleep
 AC_EGREP_HEADER(nanosleep,time.h,[
   AC_DEFINE(HAVE_DECL_NANOSLEEP, 1,
@@ -389,7 +415,7 @@ AC_CACHE_CHECK([if \$CC accepts -Wall -Winline],
      AC_TRY_COMPILE([],,ac_cv_c_Wall_Winline=yes, ac_cv_c_Wall_Winline=no)])
 if test "x${ac_cv_c_Wall_Winline}" != "xno"; then
     CFLAGS_save="-Wall -Winline ${CFLAGS_save}"; CFLAGS="${CFLAGS_save}"
-    CXXFLAGS_save="-Wall -Winline ${CXXFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}"
+    CXXFLAGS_save="-Wall ${CXXFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}"
     OBJCFLAGS_save="-Wall -Winline ${OBJCFLAGS_save}"; OBJCFLAGS="${OBJCFLAGS_save}"
 else
     AC_CACHE_CHECK([if \$CC accepts -wall -winline],
@@ -474,7 +500,8 @@ AC_CACHE_CHECK([if \$CC accepts -mdynamic-no-pic],
     [CFLAGS="${CFLAGS_save} -mdynamic-no-pic"
      AC_TRY_COMPILE([],,ac_cv_c_dynamic_no_pic=yes, ac_cv_c_dynamic_no_pic=no)])
 if test "x${ac_cv_c_dynamic_no_pic}" != "xno"; then
-    CFLAGS_builtins="${CFLAGS_OPTIM} -mdynamic-no-pic"
+    CFLAGS_builtins="${CFLAGS_builtins} -mdynamic-no-pic"
+    CFLAGS_libvlc="${CFLAGS_libvlc} -mdynamic-no-pic"
 fi
 
 dnl Check for Darwin plugin linking flags
@@ -555,17 +582,17 @@ PLUGINS="${PLUGINS} deinterlace invert yuv wall transform distort clone crop mot
 PLUGINS="${PLUGINS} float32tos16 float32tos8 float32tou16 float32tou8 a52tospdif fixed32tofloat32 fixed32tos16 s16tofloat32 s16tofloat32swab s8tofloat32 u8tofloat32"
 PLUGINS="${PLUGINS} trivial_resampler ugly_resampler linear_resampler"
 PLUGINS="${PLUGINS} trivial_channel_mixer"
-PLUGINS="${PLUGINS} trivial_mixer spdif_mixer"
+PLUGINS="${PLUGINS} trivial_mixer spdif_mixer float32_mixer"
 PLUGINS="${PLUGINS} aout_file"
 #PLUGINS="${PLUGINS} scope"
 PLUGINS="${PLUGINS} i420_rgb i420_yuy2 i422_yuy2 i420_ymga"
-PLUGINS="${PLUGINS} id3"
-PLUGINS="${PLUGINS} wav araw"
+PLUGINS="${PLUGINS} id3 m3u"
+PLUGINS="${PLUGINS} wav araw demuxdump demuxsub"
 
 dnl
 dnl  Network modules
 dnl
-NETWORK_MODULES="access_udp access_http access_rtp ipv4"
+NETWORK_MODULES="access_udp access_http access_rtp ipv4 access_mms"
 
 dnl
 dnl  Accelerated modules
@@ -901,7 +928,7 @@ dnl
 dnl  libdvbpsi ts demux
 dnl
 AC_ARG_ENABLE(dvbpsi,
-[  --enable-dvbpsi        dvbpsi ts demux module (default disabled)])
+[  --enable-dvbpsi         dvbpsi ts demux module (default disabled)])
 if test "x${enable_dvbpsi}" != "xno"
 then
   AC_ARG_WITH(dvbpsi,
@@ -1443,7 +1470,7 @@ dnl
 dnl  Vorbis plugin
 dnl
 AC_ARG_ENABLE(vorbis,
-  [  --enable-vorbis            Vorbis decoder support (default enabled)])
+  [  --enable-vorbis         Vorbis decoder support (default enabled)])
 if test "x${enable_vorbis}" != "xno"
 then
   AC_CHECK_HEADERS(vorbis/codec.h, [
@@ -1452,6 +1479,33 @@ then
    ],[])
 fi
 
+dnl
+dnl  tarkin decoder plugin
+dnl
+AC_ARG_ENABLE(tarkin,
+[  --enable-tarkin         experimental tarkin codec (default disabled)])
+if test "x${enable_tarkin}" = "xyes"
+then
+  AC_ARG_WITH(tarkin-tree,
+  [    --with-tarkin-tree=PATH tarkin tree for static linking])
+  if test "x${with_tarkin_tree}" != "x"
+  then
+    AC_MSG_CHECKING(for tarkin.o in ${with_tarkin_tree})
+    real_tarkin_tree="`cd ${with_tarkin_tree} 2>/dev/null && pwd`"
+    if test -f "${real_tarkin_tree}/tarkin.o"
+    then
+      BUILTINS="${BUILTINS} tarkin"
+      CPPFLAGS_tarkin="${CPPFLAGS_tarkin} -I${real_tarkin_tree}"
+      LDFLAGS_tarkin="${LDFLAGS_tarkin} ${real_tarkin_tree}/mem.o ${real_tarkin_tree}/pnm.o ${real_tarkin_tree}/wavelet.o ${real_tarkin_tree}/wavelet_xform.o ${real_tarkin_tree}/wavelet_coeff.o ${real_tarkin_tree}/yuv.o ${real_tarkin_tree}/tarkin.o ${real_tarkin_tree}/info.o -logg"
+    else
+      dnl  The given tarkin tree wasn't built
+      AC_MSG_RESULT(no)
+      AC_MSG_ERROR([cannot find ${real_tarkin_tree}/tarkin.o,
+                    make sure you compiled tarkin in ${with_tarkin_tree}])
+    fi
+  fi
+fi
+
 dnl
 dnl  Video plugins
 dnl
@@ -1777,7 +1831,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} alsa"
+       #PLUGINS="${PLUGINS} alsa"
        LDFLAGS_alsa="${LDFLAGS_alsa} -lasound -lm -ldl"
      fi
    fi])
@@ -1931,6 +1985,46 @@ developement tools or remove the --enable-gnome option])
     CPPFLAGS="${CPPFLAGS_save}"
   fi])
 
+dnl
+dnl  wxWindows module
+dnl
+AC_ARG_ENABLE(wxwindows,
+  [  --enable-wxwindows      wxWindows support (default enabled)])
+if test "x${enable_wxwindows}" != "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"
+      then
+        WXWINDOWS_PATH="${with_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"
+  then
+    if expr 2.3.0 \> `${WX_CONFIG} --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-wxwindows.])
+    fi
+    CXXFLAGS_wxwindows="${CXXFLAGS_wxwindows} `${WX_CONFIG} --cflags`"
+    LDFLAGS_wxwindows="${LDFLAGS_wxwindows} `${WX_CONFIG} --libs`"
+    # now look for the wx.h header
+    CPPFLAGS="${save_CPPFLAGS} ${CXXFLAGS_wxwindows}"
+    ac_cv_wx_headers=yes
+    AC_CHECK_HEADERS(wx/wx.h, , [
+      ac_cv_wx_headers=no
+      echo "Cannot find wxWindows development headers."
+    ])
+    if test "x${ac_cv_wx_headers}" = "xyes"
+    then
+      PLUGINS="${PLUGINS} wxwindows"
+      ALIASES="${ALIASES} wxvlc"
+    fi
+    CPPFLAGS="${save_CPPFLAGS}"
+  fi
+fi
+
 dnl
 dnl  Qt module
 dnl