dnl Autoconf settings for vlc
dnl $Id$
-AC_INIT(vlc,0.8.4-svn)
+AC_INIT(vlc,0.8.4-test1)
VERSION_MAJOR="0"
VERSION_MINOR="8"
VERSION_REVISION="4"
-VERSION_EXTRA="svn"
+VERSION_EXTRA="test1"
CONFIGURE_LINE="$0 $*"
CODENAME="Janus"
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.4-svn)
+AM_INIT_AUTOMAKE(vlc,0.8.4-test1)
AM_CONFIG_HEADER(config.h)
+dnl HA! HA!
+AM_MAINTAINER_MODE
+
dnl
dnl Save *FLAGS
dnl
dnl
dnl Check for the contrib directory
dnl
-topdir="`pwd`"
-if test -d ${topdir}/extras/contrib/lib; then
- export PATH=${topdir}/extras/contrib/bin:$PATH
- CPPFLAGS="${CPPFLAGS} -I${topdir}/extras/contrib/include"
- CPPFLAGS_save="${CPPFLAGS_save} -I${topdir}/extras/contrib/include"
- CFLAGS="${CFLAGS} -I${topdir}/extras/contrib/include"
- CFLAGS_save="${CFLAGS_save} -I${topdir}/extras/contrib/include"
- CXXFLAGS="${CXXFLAGS} -I${topdir}/extras/contrib/include"
- 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 -d ${topdir}/extras/contrib/vlc-lib; then
- LDFLAGS="${LDFLAGS} -L${topdir}/extras/contrib/vlc-lib"
- LDFLAGS_save="${LDFLAGS_save} -L${topdir}/extras/contrib/vlc-lib"
- fi
- LDFLAGS="${LDFLAGS} -L${topdir}/extras/contrib/lib"
- LDFLAGS_save="${LDFLAGS_save} -L${topdir}/extras/contrib/lib"
- with_livedotcom_tree=${topdir}/extras/contrib/src/live
- with_goom_tree=${topdir}/extras/contrib/src/goom
- if test ".`uname -s`" = ".Darwin"; then
- export LD_LIBRARY_PATH=${topdir}/extras/contrib/lib:$LD_LIBRARY_PATH
- export DYLD_LIBRARY_PATH=${topdir}/extras/contrib/lib:$DYLD_LIBRARY_PATH
- elif test ".`uname -s`" = ".BeOS"; then
- export LIBRARY_PATH=${topdir}/extras/contrib/lib:$LIBRARY_PATH
- export BELIBRARIES=${topdir}/extras/contrib/lib:$BELIBRARIES
+AC_ARG_WITH(contrib,
+ [ --without-contrib do not use the libraries in extras/contrib],[],[])
+ if test "${with_contrib}" != "no"; then
+
+ topdir="`dirname $0`"
+ if test "`echo \"$topdir\" | cut -c 1`" != "/"; then
+ topdir="`pwd`/$topdir"
+ fi
+
+ if test -d ${topdir}/extras/contrib/lib; then
+ export PATH=${topdir}/extras/contrib/bin:$PATH
+ CPPFLAGS="${CPPFLAGS} -I${topdir}/extras/contrib/include"
+ CPPFLAGS_save="${CPPFLAGS_save} -I${topdir}/extras/contrib/include"
+ CFLAGS="${CFLAGS} -I${topdir}/extras/contrib/include"
+ CFLAGS_save="${CFLAGS_save} -I${topdir}/extras/contrib/include"
+ CXXFLAGS="${CXXFLAGS} -I${topdir}/extras/contrib/include"
+ 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 -d ${topdir}/extras/contrib/vlc-lib; then
+ LDFLAGS="${LDFLAGS} -L${topdir}/extras/contrib/vlc-lib"
+ LDFLAGS_save="${LDFLAGS_save} -L${topdir}/extras/contrib/vlc-lib"
+ fi
+ LDFLAGS="${LDFLAGS} -L${topdir}/extras/contrib/lib"
+ LDFLAGS_save="${LDFLAGS_save} -L${topdir}/extras/contrib/lib"
+ with_livedotcom_tree=${topdir}/extras/contrib/src/live
+ with_goom_tree=${topdir}/extras/contrib/src/goom
+ if test ".`uname -s`" = ".Darwin"; then
+ export LD_LIBRARY_PATH=${topdir}/extras/contrib/lib:$LD_LIBRARY_PATH
+ export DYLD_LIBRARY_PATH=${topdir}/extras/contrib/lib:$DYLD_LIBRARY_PATH
+ elif test ".`uname -s`" = ".BeOS"; then
+ export LIBRARY_PATH=${topdir}/extras/contrib/lib:$LIBRARY_PATH
+ export BELIBRARIES=${topdir}/extras/contrib/lib:$BELIBRARIES
+ fi
fi
fi
-
dnl
dnl Set default values
dnl
VLC_ADD_CPPFLAGS([vlc],[-Dmain(a,b)=maince(a,b)])
VLC_ADD_LDFLAGS([vlc],[-lws2 -e WinMainCRTStartup])
VLC_ADD_LDFLAGS([ipv4 ipv6 access_http access_mms access_udp access_tcp access_ftp access_output_udp sap http netsync],[-lws2])
- fi
+ fi
;;
*nto*)
SYS=nto
VLC_ADD_CXXFLAGS([beos],[])
VLC_ADD_LDFLAGS([vlc beos],[-lbe])
VLC_ADD_LDFLAGS([beos],[-lmedia -ltranslation -ltracker -lgame])
- VLC_ADD_LDFLAGS([access_file access_ftp access_mms access_output_udp telnet netsync sap ipv4 vlc],[-lnet])
+
+ dnl Check for BONE
+ if test -f /boot/beos/system/lib/libbind.so; then
+ VLC_ADD_LDFLAGS([access_file access_ftp access_mms access_output_udp telnet netsync sap ipv4 vlc],[-lbind -lsocket])
+ else
+ VLC_ADD_LDFLAGS([access_file access_ftp access_mms access_output_udp telnet netsync sap ipv4 vlc],[-lnet])
+ fi
dnl Ugly check for Zeta
if test -f /boot/beos/system/lib/libzeta.so; then
dnl
dnl Gettext stuff
dnl
-ALL_LINGUAS="ca da de en_GB es fr it ja nl pt_BR ro ru tr zh_TW"
+ALL_LINGUAS="ca da de en_GB es fr it ja ko nl pt_BR ro ru tr zh_CN zh_TW"
AM_GNU_GETTEXT_VERSION(0.11.5)
AM_GNU_GETTEXT
if test "${nls_cv_force_use_gnu_gettext}" = "yes"; then
dnl
dnl Iconv stuff
dnl
+if test "${SYS}" != "mingwce"; then
+AS_IF([test "$am_cv_func_iconv" != "yes"],
+ [AC_MSG_ERROR([libiconv is needed for VLC to work properly])])
+fi
VLC_ADD_CFLAGS([vlc],[${INCICONV}])
VLC_ADD_LDFLAGS([vlc],[${LIBICONV}])
VLC_LIBRARY_SUFFIX
+VLC_SYMBOL_PREFIX
+AC_SUBST(SYMPREF)
+
case "${SYS}" in
mingw32|cygwin)
VLC_ADD_CFLAGS([pic plugin mozilla activex],[${CFLAGS_mingw32_special}])
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)
+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)
dnl Check for usual libc functions
AC_CHECK_FUNCS(strdup strndup atof)
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 vlc freetype],[-lm])
+ VLC_ADD_LDFLAGS([ffmpeg ffmpegaltivec stream_out_transrate i420_rgb faad twolame equalizer vlc freetype mpc],[-lm])
])
AC_CHECK_LIB(m,sqrt,[
VLC_ADD_LDFLAGS([headphone_channel_mixer normvol speex],[-lm])
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(arpa/inet.h net/if.h netinet/in.h sys/socket.h)
if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
-AC_CHECK_HEADERS(machine/param.h sys/shm.h altivec.h)
+AC_CHECK_HEADERS(machine/param.h sys/shm.h)
AC_CHECK_HEADERS(linux/version.h)
fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
AC_ARG_ENABLE(hal,
[ --enable-hal Linux HAL services discovery (default enabled)])
-if test "${enable_hal}" != "no"
+if test "${enable_hal}" != "no" -a "${SYS}" = "linux"
then
PKG_CHECK_MODULES(HAL, hal >= 0.2.97,
[AC_DEFINE(HAVE_HAL, [], [Define if you have the HAL library])
VLC_ADD_PLUGINS([fixed32tos16 s16tofixed32 u8tofixed32])
VLC_ADD_PLUGINS([trivial_resampler ugly_resampler])
VLC_ADD_PLUGINS([trivial_channel_mixer trivial_mixer])
-VLC_ADD_PLUGINS([playlist export sgimb m3u xtag])
+VLC_ADD_PLUGINS([playlist export sgimb m3u nsc xtag])
VLC_ADD_PLUGINS([i420_rgb rawvideo blend scale image logo])
VLC_ADD_PLUGINS([wav araw subtitle vobsub adpcm a52sys dtssys au ty voc xa nuv])
VLC_ADD_PLUGINS([access_directory access_file access_udp access_tcp])
if test "${SYS}" != "mingwce"; then
dnl VLC_ADD_PLUGINS([externrun])
VLC_ADD_PLUGINS([access_fake access_filter_timeshift access_filter_record])
- VLC_ADD_PLUGINS([gestures rc telnet hotkeys netsync showintf time marq sap shout fake])
+ VLC_ADD_PLUGINS([gestures rc telnet hotkeys netsync showintf time marq shout sap fake])
VLC_ADD_PLUGINS([rss mosaic wall motiondetect clone crop])
VLC_ADD_PLUGINS([i420_yuy2 i422_yuy2 i420_ymga])
VLC_ADD_PLUGINS([aout_file linear_resampler bandlimited_resampler])
VLC_ADD_PLUGINS([float32_mixer spdif_mixer simple_channel_mixer])
- VLC_ADD_PLUGINS([headphone_channel_mixer normvol equalizer])
+ VLC_ADD_PLUGINS([dolby_surround_decoder headphone_channel_mixer normvol equalizer])
VLC_ADD_PLUGINS([fixed32tofloat32 float32tos16 float32tos8 float32tou16 float32tou8 a52tospdif dtstospdif s16tofloat32 s16tofloat32swab s8tofloat32 u8tofloat32 audio_format])
fi
ACCEL_MODULES="${ACCEL_MODULES} ${MMX_MODULES}"
fi
+dnl Check for fully workin MMX intrinsics
+dnl We need support for -mmmx, we need <mmintrin.h>, and we also need a
+dnl working compiler (http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23963)
+AC_CACHE_CHECK([if \$CC groks MMX intrinsics],
+ [ac_cv_c_mmx_intrinsics],
+ [CFLAGS="${CFLAGS_save} -O -mmmx"
+ AC_TRY_COMPILE([#include <mmintrin.h>
+ #include <stdint.h>
+ uint64_t frobzor;],
+ [__m64 a, b, c;
+ a = b = c = (__m64)frobzor;
+ a = _mm_slli_pi16(a, 3);
+ a = _mm_adds_pi16(a, b);
+ c = _mm_srli_pi16(c, 8);
+ c = _mm_slli_pi16(c, 3);
+ b = _mm_adds_pi16(b, c);
+ a = _mm_unpacklo_pi8(a, b);
+ frobzor = (uint64_t)a;],
+ [ac_cv_c_mmx_intrinsics=yes],
+ [ac_cv_c_mmx_intrinsics=no])])
+if test "${ac_cv_c_mmx_intrinsics}" != "no"; then
+ AC_DEFINE(HAVE_MMX_INTRINSICS, 1, Define if MMX intrinsics are available.)
+ VLC_ADD_CFLAGS([i420_rgb_mmx],[-mmmx])
+fi
+
AC_CACHE_CHECK([if \$CC groks MMX EXT inline assembly],
[ac_cv_mmxext_inline],
[CFLAGS="${CFLAGS_save}"
ACCEL_MODULES="${ACCEL_MODULES} ${ALTIVEC_MODULES}"
fi
+dnl The AltiVec C extensions
+dnl
+dnl There are several possible cases:
+dnl - OS X PPC, gcc 4.x: use -mpim-altivec, don't need <altivec.h>
+dnl - OS X PPC, gcc 3.x: need -faltivec, don't need <altivec.h>
+dnl - Linux PPC, gcc 4.x: need <altivec.h> which itself requires -maltivec
+dnl - Linux PPC, gcc 3.3: need <altivec.h> and -maltivec -mabi=altivec
+dnl - Linux PPC, gcc 3.x: need <altivec.h> and -fvec
+dnl - Others: test should fail
AC_CACHE_CHECK([if \$CC groks AltiVec C extensions],
- [ac_cv_c_altivec],
- [# Darwin test
- CFLAGS="${CFLAGS_save} -faltivec"
- AC_TRY_COMPILE([],
- [vec_ld(0, (unsigned char *)0);],
- [ac_cv_c_altivec="-faltivec"],
- [# Linux/PPC test (no flags)
- CFLAGS="${CFLAGS_save} ${CFLAGS_idctaltivec} -maltivec -mabi=altivec"
- AC_TRY_COMPILE([#ifdef HAVE_ALTIVEC_H
- #include <altivec.h>
- #endif],
- [vec_ld(0, (unsigned char *)0);],
- [ac_cv_c_altivec=""
- ac_cv_c_altivec_abi="-maltivec -mabi=altivec"],
- [# Linux/PPC test (old GCC versions)
- CFLAGS="${CFLAGS_save} ${CFLAGS_idctaltivec} -fvec"
- AC_TRY_COMPILE([#ifdef HAVE_ALTIVEC_H
- #include <altivec.h>
- #endif],
- [vec_ld(0, (unsigned char *)0);],
- [ac_cv_c_altivec="-fvec"],
- [ac_cv_c_altivec=no])
+ [ac_cv_c_altivec],
+ [# OS X/PPC test (gcc 4.x)
+ CFLAGS="${CFLAGS_save} -mpim-altivec"
+ AC_TRY_COMPILE([],
+ [vec_ld(0, (unsigned char *)0);],
+ [ac_cv_c_altivec="-mpim-altivec"],
+ [# OS X/PPC test (gcc 3.x)
+ CFLAGS="${CFLAGS_save} -faltivec"
+ AC_TRY_COMPILE([],
+ [vec_ld(0, (unsigned char *)0);],
+ [ac_cv_c_altivec="-faltivec"],
+ dnl Below this are the Linux tests
+ [# Linux/PPC test (gcc 4.x)
+ CFLAGS="${CFLAGS_save} -maltivec"
+ AC_TRY_COMPILE([#include <altivec.h>],
+ [vec_ld(0, (unsigned char *)0);],
+ [ac_cv_c_altivec="-maltivec"],
+ [# Linux/PPC test (gcc 3.3)
+ CFLAGS="${CFLAGS_save} -maltivec -mabi=altivec"
+ AC_TRY_COMPILE([#include <altivec.h>],
+ [vec_ld(0, (unsigned char *)0);],
+ [ac_cv_c_altivec=""
+ ac_cv_c_altivec_abi="-maltivec -mabi=altivec"],
+ [# Linux/PPC test (gcc 3.3)
+ CFLAGS="${CFLAGS_save} -fvec"
+ AC_TRY_COMPILE([#include <altivec.h>],
+ [vec_ld(0, (unsigned char *)0);],
+ [ac_cv_c_altivec="-fvec"],
+ [ac_cv_c_altivec=no])
+ ])
])
])
- CFLAGS="${CFLAGS_save}"])
+ ])
+ CFLAGS="${CFLAGS_save}"
+ ])
+
+if test "${ac_cv_c_altivec}" != "no"; then
+ CPPFLAGS="${CPPFLAGS_save} ${ac_cv_c_altivec}"
+fi
+AC_CHECK_HEADERS(altivec.h)
+CPPFLAGS="${CPPFLAGS_save}"
+
if test "${ac_cv_c_altivec}" != "no"; then
AC_DEFINE(CAN_COMPILE_C_ALTIVEC, 1, Define if your compiler groks C AltiVec extensions.)
VLC_ADD_CFLAGS([vlc],[${ac_cv_c_altivec}])
elif test "${target_cpu}" = "powerpc"; then
CFLAGS_TUNING="-mtune=750";
fi
+fi
- dnl NOTE: this can't be cached cleanly
- AS_IF([test "${CFLAGS_TUNING}"],
- [CFLAGS_save="${CFLAGS}"
- CFLAGS="${CFLAGS} ${CFLAGS_TUNING}"
+dnl NOTE: this can't be cached cleanly
+AS_IF([test "${CFLAGS_TUNING}"],
+ [CFLAGS_save="${CFLAGS}"
+ CFLAGS="${CFLAGS} ${CFLAGS_TUNING}"
- AC_MSG_CHECKING([whether $CC accepts ${CFLAGS_TUNING}])
- AC_COMPILE_IFELSE([ ], [tuning="yes"],
- [CFLAGS_TUNING=""; tuning="no"])
+ AC_MSG_CHECKING([whether $CC accepts ${CFLAGS_TUNING}])
+ AC_COMPILE_IFELSE([ ],
+ [tuning="yes"],
+ [CFLAGS_TUNING=""; tuning="no"
+ AS_IF([test "${with_tuning}"],
+ [AC_MSG_ERROR([requested tuning not supported])])])
- AC_MSG_RESULT([$tuning])
- CFLAGS="${CFLAGS_save}"
- ])
-fi
+ AC_MSG_RESULT([$tuning])
+ CFLAGS="${CFLAGS_save}"
+])
dnl
dnl x86 accelerations
AC_DEFINE(ENABLE_SOUT, 1, Define if you want the stream output support)
fi
+dnl Check for libshout
+AC_ARG_ENABLE(shout,
+ [ --enable-shout libshout output plugin (default disabled)])
+if test "${enable_shout}" = "yes"; then
+ PKG_CHECK_MODULES(SHOUT, shout >= 2.1,
+ [AC_DEFINE(HAVE_SHOUT, [], [Define if you have the libshout library])
+ VLC_ADD_PLUGINS([access_output_shout])
+ VLC_ADD_LDFLAGS([vlc access_output_shout],[$SHOUT_LIBS])
+ VLC_ADD_CFLAGS([vlc access_output_shout],[$SHOUT_CFLAGS])],
+ [AC_MSG_WARN(libshout library not found)])
+fi
+
dnl
dnl HTTP daemon
dnl
dnl live.com input
dnl
AC_ARG_ENABLE(livedotcom,
-[ --enable-livedotcom live.com input plugin (default disabled)])
+[ --enable-livedotcom live.com RTSP input plugin (default disabled)])
if test "${enable_livedotcom}" = "yes"; then
AC_ARG_WITH(livedotcom-tree,
[ --with-livedotcom-tree=PATH live.com tree for static linking])
[ if test -n "${enable_smb}"; then
AC_MSG_ERROR([cannot find libsmbclient headers])
fi ])
+ AC_CHECK_MEMBER([struct _SMBCCTX.close_fn],
+ AC_DEFINE([HAVE__SMBCCTX_CLOSE_FN], [1], [Define if samba has _SMBCCTX.close_fn]),,
+ [#include <libsmbclient.h>])
fi
dnl
VLC_ADD_BUILTINS([mux_ts])
fi
VLC_ADD_CPPFLAGS([mux_ts ts dvb],[-I${real_dvbpsi_tree}/src])
- VLC_ADD_LDFLAGS([mux_ts ts dvb],[-L${real_dvbpsi_tree}/src/.libs -ldvbpsi])
+ VLC_ADD_LDFLAGS([mux_ts ts dvb],[${real_dvbpsi_tree}/src/.libs/libdvbpsi.a])
else
dnl The given libdvbpsi wasn't built
AC_MSG_RESULT(no)
CPPFLAGS="${CPPFLAGS_save}"
;;
esac
+ AC_CHECK_LIB(dvbpsi, dvbpsi_GenSDTSections, [
+ AC_DEFINE(HAVE_DVBPSI_SDT, 1, [Define if you have dvbpsi_GenSDTSections.])
+ ], [], [${LDFLAGS_ts}])
+
fi
dnl
VLC_ADD_PLUGINS([pvr])
fi
+dnl
+dnl gnomeVFS access module
+dnl
+AC_ARG_ENABLE(gnomevfs,
+ [ --enable-gnomevfs GnomeVFS access module (default enabled)])
+if test "${enable_gnomevfs}" != "no"
+then
+ PKG_CHECK_MODULES(GNOMEVFS, gnome-vfs-2.0,
+ VLC_ADD_LDFLAGS([access_gnomevfs],[$GNOMEVFS_LIBS])
+ VLC_ADD_CPPFLAGS([access_gnomevfs],[$GNOMEVFS_CPPFLAGS])
+ VLC_ADD_CFLAGS([access_gnomevfs],[$GNOMEVFS_CFLAGS])
+ VLC_ADD_PLUGINS([access_gnomevfs]),
+ AC_MSG_WARN([GnomeVFS support disabled because GnomeVFS development headers not found]))
+fi
+
dnl Need to test libcdio and libvcdinfo for a number of things. Do it now.
AC_ARG_ENABLE(libcdio,
[ --enable-libcdio CD input and control library support (default enabled)])
-
+
+
have_libcdio=no
have_libvcdinfo=no
if test "${enable_libcdio}" != "no"
else
VLC_ADD_BUILTINS([dvb])
fi
- ],[])
+ ],[AC_MSG_WARN(linux-dvb headers not found, dvb disabled)])
CPPFLAGS="${CPPFLAGS_save}"
fi
AC_CHECK_FUNCS(inet_pton,[have_ipv6=yes],[
AC_CHECK_LIB(resolv,inet_pton,
[have_ipv6=yes
- VLC_ADD_LDFLAGS([ipv6],[-lresolv])])
+ VLC_ADD_LDFLAGS([ipv6 vlc],[-lresolv])])
])
AS_IF([test "${have_ipv6}" == "yes"], [
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.3)
+ AC_MSG_CHECKING(for libebml version >= 0.7.6)
AC_EGREP_CPP(yes,
[#include <ebml/EbmlVersion.h>
#ifdef LIBEBML_VERSION
- #if LIBEBML_VERSION >= 0x000703
+ #if LIBEBML_VERSION >= 0x000706
yes
#endif
#endif],
VLC_ADD_LDFLAGS([mod],[-lmodplug])])
fi
+dnl
+dnl mpc demux plugin
+dnl
+AC_ARG_ENABLE(mpc,
+ [ --enable-mpc Mpc demux support (default enabled)])
+if test "${enable_mpc}" != "no"
+then
+ AC_CHECK_HEADERS(mpcdec/mpcdec.h, [
+ VLC_ADD_PLUGINS([mpc])
+ VLC_ADD_LDFLAGS([mpc],[-lmpcdec])])
+fi
+
+
dnl
dnl Codec plugins
dnl
dnl
dnl ffmpeg decoder/demuxer plugin
dnl
+dnl we try to find ffmpeg using : 1- ffmpeg-config, 2- pkg-config
+dnl 3- default place, 4- given tree
+
AC_ARG_ENABLE(ffmpeg,
[ --enable-ffmpeg ffmpeg codec (default enabled)])
if test "${enable_ffmpeg}" != "no"
then
- FFMPEG_PATH="${PATH}"
- AC_ARG_WITH(ffmpeg-config-path,
- [ --with-ffmpeg-config-path=PATH ffmpeg-config path (default search in \$PATH)],
- [ if test "${with_ffmpeg_config_path}" != "no"
- then
- FFMPEG_PATH="${with_ffmpeg_config_path}:${PATH}"
- fi ])
- AC_PATH_PROG(FFMPEG_CONFIG, ffmpeg-config, no, ${FFMPEG_PATH})
- if test "${FFMPEG_CONFIG}" != "no"
- then
- AC_CHECK_HEADERS(ffmpeg/avcodec.h)
- AC_CHECK_HEADERS(postproc/postprocess.h)
- VLC_ADD_PLUGINS([ffmpeg])
- if test "${enable_sout}" != "no"; then
- VLC_ADD_PLUGINS([stream_out_switcher])
- fi
- VLC_ADD_CFLAGS([ffmpeg stream_out_switcher],[`${FFMPEG_CONFIG} --cflags`])
- VLC_ADD_LDFLAGS([ffmpeg stream_out_switcher],[`${FFMPEG_CONFIG} --plugin-libs avcodec avformat postproc`])
+dnl Look for a ffmpeg-config (we are on debian )
+
+ FFMPEG_PATH="${PATH}"
+ AC_ARG_WITH(ffmpeg-config-path,
+ [ --with-ffmpeg-config-path=PATH ffmpeg-config path (default search in \$PATH)],
+ [ if test "${with_ffmpeg_config_path}" != "no"
+ then
+ FFMPEG_PATH="${with_ffmpeg_config_path}"
+ fi ])
+ AC_PATH_PROG(FFMPEG_CONFIG, ffmpeg-config, no, ${FFMPEG_PATH})
+ if test "${FFMPEG_CONFIG}" != "no"
+ then
+ AC_CHECK_HEADERS(ffmpeg/avcodec.h)
+ AC_CHECK_HEADERS(postproc/postprocess.h)
+ VLC_ADD_PLUGINS([ffmpeg])
+ if test "${enable_sout}" != "no"; then
+ VLC_ADD_PLUGINS([stream_out_switcher])
+ fi
+ VLC_ADD_CFLAGS([ffmpeg stream_out_switcher],[`${FFMPEG_CONFIG} --cflags`])
+ VLC_ADD_LDFLAGS([ffmpeg stream_out_switcher],[`${FFMPEG_CONFIG} --plugin-libs avcodec avformat postproc`])
+
else
- AC_ARG_WITH(ffmpeg-mp3lame,
- [ --with-ffmpeg-mp3lame specify if ffmpeg has been compiled with mp3lame support],
- [
- VLC_ADD_LDFLAGS([ffmpeg],[-lmp3lame]) ])
-
- AC_ARG_WITH(ffmpeg-faac,
- [ --with-ffmpeg-faac specify if ffmpeg has been compiled with faac support],
- [
- VLC_ADD_LDFLAGS([ffmpeg],[-lfaac]) ])
-
- AC_ARG_WITH(ffmpeg-dts,
- [ --with-ffmpeg-dts specify if ffmpeg has been compiled with dts support],
- [
- VLC_ADD_LDFLAGS([ffmpeg],[-ldts]) ])
-
- AC_ARG_WITH(ffmpeg-zlib,
- [ --with-ffmpeg-zlib specify if ffmpeg has been compiled with zlib support],
- [
- VLC_ADD_LDFLAGS([ffmpeg],[-lz]) ])
-
- AC_ARG_WITH(ffmpeg-tree,
- [ --with-ffmpeg-tree=PATH ffmpeg tree for static linking])
+dnl Trying with pkg-config
+ PKG_CHECK_MODULES(FFMPEG,libavcodec libavformat,
+ [
+ AC_CHECK_HEADERS(ffmpeg/avcodec.h)
+ AC_CHECK_HEADERS(postproc/postprocess.h)
+ VLC_ADD_BUILTINS([ffmpeg])
+ if test "${enable_sout}" != "no"; then
+ VLC_ADD_BUILTINS([stream_out_switcher])
+ fi
+ VLC_ADD_CFLAGS([ffmpeg stream_out_switcher],[${FFMPEG_CFLAGS}])
+ VLC_ADD_LDFLAGS([ffmpeg],[${FFMPEG_LIBS}])
+ ],[
+
dnl
dnl test for !(--with-ffmpeg-tree)
dnl
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])
+ VLC_ADD_LDFLAGS([ffmpeg],[-lavformat -lz]) ], [], [-lavcodec -lz $LDAVUTIL])
LDFLAGS="${LDFLAGS_save}"
CPPFLAGS="${CPPFLAGS_save}"
fi
VLC_ADD_CPPFLAGS([ffmpeg stream_out_switcher],[-I${real_ffmpeg_tree}/libavformat])
fi
fi
+ ])
+
+ AC_ARG_WITH(ffmpeg-mp3lame,
+ [ --with-ffmpeg-mp3lame specify if ffmpeg has been compiled with mp3lame support],
+ [
+ VLC_ADD_LDFLAGS([ffmpeg],[-lmp3lame]) ])
+
+ AC_ARG_WITH(ffmpeg-faac,
+ [ --with-ffmpeg-faac specify if ffmpeg has been compiled with faac support],
+ [
+ VLC_ADD_LDFLAGS([ffmpeg],[-lfaac]) ])
+
+ AC_ARG_WITH(ffmpeg-dts,
+ [ --with-ffmpeg-dts specify if ffmpeg has been compiled with dts support],
+ [
+ VLC_ADD_LDFLAGS([ffmpeg],[-ldts]) ])
+
+ AC_ARG_WITH(ffmpeg-zlib,
+ [ --with-ffmpeg-zlib specify if ffmpeg has been compiled with zlib support],
+ [
+ VLC_ADD_LDFLAGS([ffmpeg],[-lz]) ])
+
+ AC_ARG_WITH(ffmpeg-tree,
+ [ --with-ffmpeg-tree=PATH ffmpeg tree for static linking])
+
fi
fi
fi
fi
+dnl
+dnl Real plugin
+dnl
+AC_ARG_ENABLE(real,
+ [ --enable-real Real audio module (default disabled)])
+if test "${enable_real}" = "yes"; then
+ VLC_ADD_PLUGINS([realaudio])
+fi
+
+dnl
+dnl Real RTSP plugin
+dnl
+AC_ARG_ENABLE(realrtsp,
+ [ --enable-realrtsp Real RTSP module (default disabled)])
+if test "${enable_realrtsp}" = "yes"; then
+ VLC_ADD_PLUGINS([access_realrtsp])
+fi
+
dnl
dnl MP4 module
dnl
AC_CHECK_LIB(png, png_set_rows, [
VLC_ADD_LDFLAGS([png],[-lpng -lz])
VLC_ADD_PLUGINS([png])
+ VLC_ADD_PLUGINS([osdmenu])
AC_DEFINE(HAVE_LIBPNG, [], [Define if you have the PNG library: libpng])],
[],[-lz])
LDFLAGS="${LDFLAGS_save}"
if test "${SDL_CONFIG}" != "no"
then
# SDL on Darwin is heavily patched and can only run SDL_image
- if test "${SYS}" != "darwin"; then
+ if test "${SYS}" != "darwin" -a "${SYS}" != "mingw32"; then
VLC_ADD_PLUGINS([vout_sdl aout_sdl])
fi
VLC_ADD_CFLAGS([vout_sdl aout_sdl sdl_image],[`${SDL_CONFIG} ${SDL_PREFIX} --cflags | sed 's,SDL,,'`])
AC_CHECK_HEADERS(${SDL_IMAGE}, [AC_DEFINE_UNQUOTED(SDL_IMAGE_INCLUDE_FILE,
<${SDL_IMAGE}>, Indicate the path of SDL_image.h)
VLC_ADD_PLUGINS([sdl_image])
+ AC_CHECK_LIB(png, png_set_rows,
+ [VLC_ADD_LDFLAGS([sdl_image],[-lpng -lz])],[],[-lz])
+ AC_CHECK_LIB(jpeg, jpeg_start_decompress,
+ [VLC_ADD_LDFLAGS([sdl_image],[-ljpeg])])
+ AC_CHECK_LIB(tiff, TIFFClientOpen,
+ [VLC_ADD_LDFLAGS([sdl_image],[-ltiff])])
VLC_ADD_LDFLAGS([sdl_image], [-lSDL_image])],
[ AC_CHECK_HEADERS(SDL_image.h, AC_DEFINE(SDL_IMAGE_INCLUDE_FILE, <SDL_image.h>,
As a last resort we also test for SDL_image.h presence),
Please install it and try again. Alternatively you can also configure with
--disable-sdl.])
fi
+
elif test "${enable_sdl}" = "yes"
then
AC_MSG_ERROR([I couldn't find the SDL package. You can download libSDL
fi])
dnl
-dnl aRts module
+dnl aRts module -- broken (freeze wxWidgets)
dnl
AC_ARG_ENABLE(arts,
- [ --enable-arts aRts sound server (default disabled)],
- [if test "${enable_arts}" = "yes"
- then
- AC_PATH_PROG(ARTS_CONFIG, artsc-config, no)
- if test "${ARTS_CONFIG}" != "no"
- then
- VLC_ADD_PLUGINS([arts])
- VLC_ADD_CFLAGS([arts],[`${ARTS_CONFIG} --cflags`])
- VLC_ADD_LDFLAGS([arts],[`${ARTS_CONFIG} --libs `])
- fi
- fi])
+ [ --enable-arts aRts sound server (default disabled)],
+ [if test "${enable_arts}" = "yes"
+ then
+ AC_PATH_PROG(ARTS_CONFIG, artsc-config, no)
+ if test "${ARTS_CONFIG}" != "no"
+ then
+ VLC_ADD_PLUGINS([arts])
+ VLC_ADD_CFLAGS([arts],[`${ARTS_CONFIG} --cflags`])
+ VLC_ADD_LDFLAGS([arts],[`${ARTS_CONFIG} --libs `])
+ fi
+ fi])
dnl
dnl ALSA module
AC_CHECK_HEADER(alsa/asoundlib.h, AC_CHECK_LIB(asound, main, have_alsa="true", have_alsa="false"),have_alsa="false")
if test "${have_alsa}" = "true"
then
+ CFLAGS="${CFLAGS_save}"
AC_TRY_COMPILE([#define ALSA_PCM_NEW_HW_PARAMS_API
#define ALSA_PCM_NEW_SW_PARAMS_API
#include <alsa/asoundlib.h>],
fi
VLC_ADD_LDFLAGS([wxwidgets],[`${WX_CONFIG} --libs`])
VLC_ADD_CXXFLAGS([wxwidgets],[`${WX_CONFIG} --cxxflags`])
+ if ${WX_CONFIG} --unicode
+ then
+ # wxwidgets should provide the following flags but does not
+ # the following is required to compile for win32
+ VLC_ADD_CXXFLAGS([wxwidgets],[-D_UNICODE -DUNICODE])
+ fi
if test "$have_libcdio" = "yes"
then
VLC_ADD_LDFLAGS([wxwidgets],[$LIBCDIO_LIBS])
[AC_MSG_WARN(DAAP library not found)])
fi
+dnl
+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,
+ [AC_DEFINE(HAVE_AVAHI_CLIENT, [], [Define if you have the avahi-client library])
+ VLC_ADD_LDFLAGS([bonjour access_output_http],[$BONJOUR_LIBS])
+ VLC_ADD_CFLAGS([bonjour access_output_http],[$BONJOUR_CFLAGS])
+ VLC_ADD_PLUGINS([bonjour]) ],
+ [AC_MSG_WARN(avahi-client library not found)])
+fi
+
dnl
dnl Lirc plugin
dnl
VLC_ADD_LDFLAGS([dmo],[../../../loader/libloader.a])
VLC_ADD_CPPFLAGS([quicktime],[-I../../@top_srcdir@/loader])
VLC_ADD_LDFLAGS([quicktime],[../../loader/libloader.a])
+ VLC_ADD_CPPFLAGS([realaudio],[-I../../@top_srcdir@/loader -DLOADER])
+ VLC_ADD_LDFLAGS([realaudio],[../../loader/libloader.a])
])
dnl
mozilla=false
AC_ARG_ENABLE(mozilla,
[ --enable-mozilla build a vlc-based Mozilla plugin (default disabled)])
-if test "${enable_mozilla}" = "yes" -a "${SYS}" != "mingw32"
+AC_ARG_WITH(mozilla-sdk-path,
+ [ --with-mozilla-sdk-path=PATH path to mozilla sdk])
+
+if test "${enable_mozilla}" = "yes" -a "${with_mozilla_sdk_path}" = ""
then
AC_PATH_PROG(MOZILLA_CONFIG, mozilla-config, no)
if test "${MOZILLA_CONFIG}" = "no"
dnl special case for mingw32
elif test "${enable_mozilla}" = "yes"
then
- AC_CHECK_TOOL(CYGPATH, cygpath, "")
- AC_ARG_WITH(mozilla-sdk-path,
- [ --with-mozilla-sdk-path=PATH path to win32 mozilla sdk], [
- real_mozilla_sdk="`cd ${with_mozilla_sdk_path} 2>/dev/null && pwd`"
- CPPFLAGS="${CPPFLAGS_save} ${real_mozilla_sdk}"
- AC_CHECK_HEADERS(mozilla-config.h, [
- mozilla=:
- VLC_ADD_CPPFLAGS([mozilla],[-DXPCOM_GLUE -I${real_mozilla_sdk} -I${real_mozilla_sdk}/embedstring/include -I${real_mozilla_sdk}/xpcom/include -I${real_mozilla_sdk}/nspr/include -I${real_mozilla_sdk}/string/include -I${real_mozilla_sdk}/plugin/include -I${real_mozilla_sdk}/java/include])
- VLC_ADD_LDFLAGS([mozilla],[-L${real_mozilla_sdk}/embedstring/bin -L${real_mozilla_sdk}/xpcom/bin -L${real_mozilla_sdk}/nspr/bin -L${real_mozilla_sdk}/string/bin -lnspr4 -lplds4 -lplc4 -lembedstring -lxpcomglue -Wl,--kill-at])
- XPIDL_INCL="-I${real_mozilla_sdk}/xpcom/idl"
- if test -n "${CYGPATH}"; then
- XPIDL="${real_mozilla_sdk}/xpcom/bin/xpidl"
- real_mozilla_sdk="`${CYGPATH} -w ${real_mozilla_sdk}`"
- XPIDL_INCL="${XPIDL_INCL} -I\"${real_mozilla_sdk}/xpcom/idl\""
- fi ])
- CPPFLAGS="${CPPFLAGS_save}"
- ])
+ if test "${SYS}" = "mingw32"; then
+ AC_CHECK_TOOL(CYGPATH, cygpath, "")
+ mozilla_sdk_xpcom="/xpcom"
+ fi
+
+ real_mozilla_sdk="`cd ${with_mozilla_sdk_path} 2>/dev/null && pwd`"
+ CPPFLAGS="${CPPFLAGS_save} -I${real_mozilla_sdk} -I${real_mozilla_sdk}/include"
+ AC_CHECK_HEADERS(mozilla-config.h, [
+ mozilla=:
+ VLC_ADD_CPPFLAGS([mozilla],[-DXPCOM_GLUE -I${real_mozilla_sdk} -I${real_mozilla_sdk}/include -I${real_mozilla_sdk}/embedstring/include -I${real_mozilla_sdk}/xpcom/include -I${real_mozilla_sdk}/nspr/include -I${real_mozilla_sdk}/string/include -I${real_mozilla_sdk}/plugin/include -I${real_mozilla_sdk}/java/include])
+ VLC_ADD_LDFLAGS([mozilla],[-L${real_mozilla_sdk}/embedstring/bin -L${real_mozilla_sdk}/xpcom/bin -L${real_mozilla_sdk}/nspr/bin -L${real_mozilla_sdk}/string/bin -L${real_mozilla_sdk}/lib -lnspr4 -lplds4 -lplc4 -lxpcomglue])
+ if test "${SYS}" = "mingw32"; then
+ VLC_ADD_LDFLAGS([mozilla],[-lembedstring -Wl,--kill-at])
+ fi
+
+ XPIDL_INCL="-I${real_mozilla_sdk}${mozilla_sdk_xpcom}/idl"
+ XPIDL="${real_mozilla_sdk}${mozilla_sdk_xpcom}/bin/xpidl"
+
+ if test -n "${CYGPATH}"; then
+ real_mozilla_sdk="`${CYGPATH} -w ${real_mozilla_sdk}`"
+ XPIDL_INCL="${XPIDL_INCL} -I\"${real_mozilla_sdk}${mozilla_sdk_xpcom}/idl\""
+ fi ])
+ CPPFLAGS="${CPPFLAGS_save}"
fi
dnl Not necessarily in ${PATH}
fi]
AM_CONDITIONAL(HAVE_BUILTINS, ${builtin_support})
+AC_ARG_ENABLE(shared-libvlc,
+ [ --enable-shared-libvlc shared libvlc (default disabled EXPERIMENTAL)],
+ ,[shared_libvlc=no])
+
+AM_CONDITIONAL(BUILD_SHARED, [test "${shared_libvlc}" != "no"])
+AS_IF([test "${shared_libvlc}" != "no"], [
+ AC_DEFINE(HAVE_SHARED_LIBVLC, 1, [Define to 1 if libvlc is built as a shared library.])
+])
+
+pic=no
+AS_IF([test "${shared_libvlc}" != "no"], [pic=pic])
+AS_IF([${mozilla}], [pic=pic])
+AS_IF([test "${SYS}" = "mingw32"], [pic=no])
+
+AS_IF([test "${pic}" = "no"], [pic=])
+AC_SUBST(pic)
+
dnl Import conditional variables generated by bootstrap
VLC_CONDITIONALS
AC_DEFINE_UNQUOTED(PACKAGE_VERSION_MINOR,"${VERSION_MINOR}", [version minor number])
AC_DEFINE_UNQUOTED(PACKAGE_VERSION_REVISION,"${VERSION_REVISION}", [version minor number])
AC_DEFINE_UNQUOTED(PACKAGE_VERSION_EXTRA,"${VERSION_EXTRA}", [version minor number])
+AC_SUBST(VERSION_MAJOR)
+AC_SUBST(VERSION_MINOR)
+AC_SUBST(VERSION_REVISION)
+AC_DEFINE_UNQUOTED(VLC_COMPILE_BY, "`whoami`", [user who ran configure])
+AC_DEFINE_UNQUOTED(VLC_COMPILE_HOST, "`hostname`", [host which ran configure])
+AC_DEFINE_UNQUOTED(VLC_COMPILE_DOMAIN, "`dnsdomainname 2>/dev/null || domainname 2>/dev/null || echo unknown`", [domain of the host which ran configure])
+AC_DEFINE_UNQUOTED(VLC_COMPILER, "`$CC -v 2>&1 | tail -n 1`", [compiler])
dnl Old definitions for version-dependant plugins
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.2 release
-AC_DEFINE_UNQUOTED(MODULE_SUFFIX, "__0_8_2", [String suffix for module functions])
-AC_DEFINE_UNQUOTED(MODULE_SYMBOL, 0_8_2, [Symbol suffix for module functions])
-
-dnl Version number for ActiveX INF
-VERSION32="`echo -n ${VERSION} | sed -e 's/@<:@a-z\-@:>@//g' | sed -e 'y/./,/'`"
-VERSION32="`echo -n ${VERSION32}',0'`"
-AC_SUBST(VERSION32)
+dnl New definitions with value matching 0.8.4 release
+module_symbol="0_8_4"
+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}"
+AC_SUBST(VLC_ENTRY)
DATA_PATH="${ac_tool_prefix}/share/vlc"
AC_SUBST(DATA_PATH)
m4/Makefile
po/Makefile.in
share/Makefile
- src/Makefile
])
AC_CONFIG_FILES([
modules/access/pvr/Makefile
modules/access/v4l/Makefile
modules/access/cdda/Makefile
+ modules/access/rtsp/Makefile
modules/access/vcd/Makefile
modules/access/vcdx/Makefile
modules/access/screen/Makefile
modules/codec/ffmpeg/Makefile
modules/codec/spudec/Makefile
modules/control/Makefile
+ modules/control/http/Makefile
modules/control/corba/Makefile
modules/demux/Makefile
modules/demux/asf/Makefile
modules/gui/Makefile
modules/gui/beos/Makefile
modules/gui/pda/Makefile
- modules/gui/gtk/Makefile
- modules/gui/gtk2/Makefile
- modules/gui/kde/Makefile
modules/gui/macosx/Makefile
modules/gui/qnx/Makefile
- modules/gui/qt/Makefile
modules/gui/skins2/Makefile
modules/gui/wxwidgets/Makefile
modules/gui/wince/Makefile