X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=configure.ac;h=2194b78bc43dd811d0e14876d0ae07010581e686;hb=eac2117fcd9de41b13e4d7163a0e0aa8e40a543c;hp=4839e80adac7446aa25c94d2c80a8ddc978324e0;hpb=27e0d5bc0d50422e5095e575292d85bb2ddc380b;p=vlc diff --git a/configure.ac b/configure.ac index 4839e80ada..2194b78bc4 100644 --- a/configure.ac +++ b/configure.ac @@ -1,18 +1,19 @@ dnl Autoconf settings for vlc -AC_INIT(vlc,0.8.6-svn) +AC_INIT(vlc,0.9.0-svn) VERSION_MAJOR="0" -VERSION_MINOR="8" -VERSION_REVISION="6" +VERSION_MINOR="9" +VERSION_REVISION="0" VERSION_EXTRA="svn" -CONFIGURE_LINE="$0 $*" -CODENAME="Janus" +CONFIGURE_LINE="$0 $ac_configure_args" +CODENAME="Grishenko" -AC_PREREQ(2.50) +AC_PREREQ(2.59) AC_CONFIG_SRCDIR(src/libvlc.c) AC_CONFIG_AUX_DIR(autotools) -AC_CANONICAL_SYSTEM +AC_CANONICAL_BUILD +AC_CANONICAL_HOST AM_INIT_AUTOMAKE([1.7 check-news dist-bzip2]) AM_CONFIG_HEADER(config.h) @@ -37,34 +38,18 @@ VLC_SAVE_FLAGS dnl dnl Check for tools dnl -AC_PROG_CC +AC_PROG_CC_C99 +AC_USE_SYSTEM_EXTENSIONS AM_PROG_CC_C_O -AC_PROG_CPP AC_PROG_CXX -eval "${CXX} --version" >/dev/null 2>&1 || CXX="" -if test "${CXX}" != ""; then - AC_PROG_CXXCPP -fi +AC_PROG_CPP +AC_PROG_OBJC +_AM_DEPENDENCIES([OBJC]) +AC_PROG_EGREP AC_PROG_MAKE_SET AC_PROG_INSTALL AM_PROG_AS -dnl AC_PROG_EGREP only exists in autoconf 2.54+, so we use AC_EGREP_CPP right -dnl now otherwise it might be set in an obscure if statement. -AC_EGREP_CPP(foo,foo) - -dnl AC_PROG_OBJC doesn't seem to exist, this is the KDE workaround -AC_MSG_CHECKING(for an Objective-C compiler) -OBJC="${CXX}" -AC_SUBST(OBJC) -OBJCFLAGS="${CXXFLAGS} -fgnu-runtime -fconstant-string-class=NSConstantString" -AC_SUBST(OBJCFLAGS) -dnl _AM_DEPENDENCIES(OBJC) doesn't work, so hard code OBJCDEPMODE here -#OBJCDEPMODE="depmode=gcc3" -#AC_SUBST(OBJCDEPMODE) -_AM_DEPENDENCIES(OBJC) -AC_MSG_RESULT(not implemented yet) - dnl Find the right ranlib, even when cross-compiling AC_CHECK_TOOL(RANLIB, ranlib, :) AC_CHECK_TOOL(STRIP, strip, :) @@ -74,6 +59,7 @@ AC_CHECK_TOOL(LD, ld, :) dnl Check for compiler properties AC_C_CONST AC_C_INLINE +AC_C_RESTRICT dnl dnl Check for the contrib directory @@ -130,6 +116,9 @@ dnl kludge because only the debian package provides a ffmpeg-config if test -z $with_cyberlink_tree; then with_cyberlink_tree=${topdir}/extras/contrib/src/clinkcc fi + if test -z $with_libmpeg2_tree; then + with_libmpeg2_tree=${topdir}/extras/contrib/src/mpeg2dec + fi if test ".`uname -s`" = ".Darwin"; then export LD_LIBRARY_PATH=${topdir}/extras/contrib/lib:$LD_LIBRARY_PATH @@ -151,7 +140,7 @@ LDFLAGS_vlc="${LDFLAGS}" dnl dnl Check the operating system dnl -case "${target_os}" in +case "${host_os}" in "") SYS=unknown ;; @@ -164,9 +153,9 @@ case "${target_os}" in VLC_ADD_LDFLAGS([dvd dvdcss vcd cdda vcdx cddax],[-ldvd]) ;; *bsd*) - SYS="${target_os}" + SYS="${host_os}" CFLAGS_save="${CFLAGS_save} -pthread"; CFLAGS="${CFLAGS_save}" - case "${target_os}" in + case "${host_os}" in freebsd*) CPPFLAGS_save="${CPPFLAGS_save} -I/usr/local/include" CPPFLAGS="${CPPFLAGS_save}" @@ -200,7 +189,7 @@ case "${target_os}" in AC_CHECK_TOOL(WINDRES, windres, :) enable_libtool="no" - case "${target_os}" in + case "${host_os}" in *mingw32*) SYS=mingw32 ;; @@ -269,7 +258,7 @@ case "${target_os}" in fi ;; *) - SYS="${target_os}" + SYS="${host_os}" ;; esac AM_CONDITIONAL(HAVE_BEOS, test "${SYS}" = "beos") @@ -309,23 +298,26 @@ fi dnl dnl Gettext stuff dnl -ALL_LINGUAS="ca cs da de en_GB es fr gl he hi hu it ja ka ko nl oc pt_BR ro ru sv tr zh_CN zh_TW" +ALL_LINGUAS="ca cs da de en_GB es fr gl he hi hu it ja ka ko ms nl oc pt_BR ro ru sk sv 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 - AC_DEFINE(HAVE_INCLUDED_GETTEXT, 1, Define if we use the local libintl) +AS_IF([test "${nls_cv_force_use_gnu_gettext}" = "yes"], [ + AC_DEFINE(HAVE_INCLUDED_GETTEXT, 1, [Define if we use the local libintl]) AM_CPPFLAGS="${AM_CPPFLAGS} -I\$(top_builddir)/intl" AS_IF([test "${enable_libtool}" != "no"], [ INCLUDED_LIBINTL="${LTLIBINTL}" ],[ INCLUDED_LIBINTL="${LIBINTL}" ]) -else - VLC_ADD_LDFLAGS([vlc],[${LIBINTL}]) - INCLUDED_LIBINTL= -fi +], [ + AS_IF([test "${enable_libtool}" != "no"], [ + VLC_ADD_LDFLAGS([vlc], [${LTLIBINTL}]) + ], [ + VLC_ADD_LDFLAGS([vlc], [${LIBINTL}]) + ]) +]) AC_SUBST(INCLUDED_LIBINTL) -XGETTEXT="${XGETTEXT} --keyword=_NS --keyword=_ANS" +XGETTEXT="${XGETTEXT} --keyword=_NS --keyword=_ANS" dnl dnl Iconv stuff @@ -570,7 +562,7 @@ AM_CONDITIONAL(BUILD_GETOPT, ${need_getopt}) if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then AC_TYPE_SIGNAL AC_CHECK_LIB(m,cos,[ - VLC_ADD_LDFLAGS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom visual],[-lm]) + VLC_ADD_LDFLAGS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom visual panoramix rotate noise],[-lm]) ]) AC_CHECK_LIB(m,pow,[ VLC_ADD_LDFLAGS([ffmpeg ffmpegaltivec stream_out_transrate i420_rgb faad twolame equalizer param_eq vlc freetype mpc dmo quicktime realaudio galaktos],[-lm]) @@ -781,6 +773,9 @@ fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" AC_HEADER_TIME +AC_CHECK_TYPE(ssize_t, int) +AC_SEARCH_LIBS(poll, [poll], [AC_DEFINE(HAVE_POLL, 1, [Define to 1 if the OS is usabl... err, has poll().])]) + dnl Check for dirent need_dirent=false AC_CHECK_HEADERS(dirent.h,,[need_dirent=:]) @@ -849,18 +844,26 @@ AC_ARG_ENABLE(dbus, if test "${enable_dbus}" != "no" 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]) + PKG_CHECK_MODULES(DBUS, dbus-1 >= 0.92, + [ AC_DEFINE( HAVE_DBUS_2, 1, [Define if you have the D-BUS library API >= 0.92] ) + AC_DEFINE( HAVE_DBUS_1, 1, [Define if you have the D-BUS library API >= 0.30] ) 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])], + 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]) + [ PKG_CHECK_MODULES(DBUS, dbus-1 >= 0.30, + [ AC_DEFINE( HAVE_DBUS_1, 1, [Define if you have the D-BUS library API >= 0.30 ] ) + 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)]) - ] + dnl much 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 @@ -878,58 +881,13 @@ AC_CACHE_CHECK([for ntohl in sys/param.h], [ac_cv_c_ntohl_sys_param_h], [CFLAGS="${CFLAGS_save} -Wall -Werror" AC_TRY_COMPILE([#include ], - [void foo() { int meuh; ntohl(meuh); }], + [int meuh; ntohl(meuh);], ac_cv_c_ntohl_sys_param_h=yes, ac_cv_c_ntohl_sys_param_h=no)]) if test "${ac_cv_c_ntohl_sys_param_h}" != "no"; then AC_DEFINE(NTOHL_IN_SYS_PARAM_H, 1, Define if defines ntohl.) fi -# XXX: do this with an M4 macro? -#dnl Check for various -W flags -#for flag in "" all unreachable-code conversion sign-compare disabled-optimization -#do -# AC_CACHE_CHECK([if \$CC accepts -W${flag}], -# [ac_cv_c_W${flag}], -# [CFLAGS="-W${flag} ${CFLAGS_save}" -# AC_TRY_COMPILE([],,ac_cv_c_W${flag}=yes, ac_cv_c_W${flag}=no)]) -# if test "${ac_cv_c_W${flag}}" != "no"; then -# CFLAGS_save="-W${flag} ${CFLAGS_save}"; CFLAGS="${CFLAGS_save}" -# CXXFLAGS_save="-W${flag} ${CFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}" -# OBJCFLAGS_save="-W${flag} ${OBJCFLAGS_save}"; OBJCFLAGS="${OBJCFLAGS_save}" -# fi -#done - -AC_CACHE_CHECK([if \$CC accepts -Wall], - [ac_cv_c_Wall], - [CFLAGS="-Wall ${CFLAGS_save}" - AC_TRY_COMPILE([],,ac_cv_c_Wall=yes, ac_cv_c_Wall=no)]) - -AC_CACHE_CHECK([if \$CC accepts -Wconversion], - [ac_cv_c_Wconversion], - [CFLAGS="-Wconversion ${CFLAGS_save}" - AC_TRY_COMPILE([],,ac_cv_c_Wconversion=yes, ac_cv_c_Wconversion=no)]) - -AC_CACHE_CHECK([if \$CC accepts -Wunreachable-code], - [ac_cv_c_Wunreachable_code], - [CFLAGS="-Wunreachable-code ${CFLAGS_save}" - AC_TRY_COMPILE([],,ac_cv_c_Wunreachable_code=yes, ac_cv_c_Wunreachable_code=no)]) - -AC_CACHE_CHECK([if \$CC accepts -Wsign-compare], - [ac_cv_c_Wsign_compare], - [CFLAGS="-Wsign-compare ${CFLAGS_save}" - AC_TRY_COMPILE([],,ac_cv_c_Wsign_compare=yes, ac_cv_c_Wsign_compare=no)]) - -if test "${ac_cv_c_Wall}" != "no"; then - CFLAGS_save="-Wall ${CFLAGS_save}"; CFLAGS="${CFLAGS_save}" - CXXFLAGS_save="-Wall ${CFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}" - OBJCFLAGS_save="-Wall ${OBJCFLAGS_save}"; OBJCFLAGS="${OBJCFLAGS_save}" -fi - -if test "${ac_cv_c_Wsign_compare}" != "no"; then - CFLAGS_save="-Wsign-compare ${CFLAGS_save}"; CFLAGS="${CFLAGS_save}" - CXXFLAGS_save="-Wsign-compare ${CFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}" - OBJCFLAGS_save="-Wsign-compare ${OBJCFLAGS_save}"; OBJCFLAGS="${OBJCFLAGS_save}" -fi +RDC_PROG_CC_WFLAGS_IFELSE([all extra no-unused-parameter conversion unreachable-code sign-compare undef]) dnl Check for -pipe AC_CACHE_CHECK([if \$CC accepts -pipe], @@ -947,7 +905,7 @@ AC_CACHE_CHECK([if \$CC accepts -Os], [ac_cv_c_os], [CFLAGS="${CFLAGS_save} -Os" AC_TRY_COMPILE([],,ac_cv_c_os=yes, ac_cv_c_os=no)]) -if test "${ac_cv_c_os}" != "no" -a "${target_cpu}" = "mipsel"; then +if test "${ac_cv_c_os}" != "no" -a "${host_cpu}" = "mipsel"; then CFLAGS_OPTIM="${CFLAGS_OPTIM} -Os" fi @@ -955,7 +913,7 @@ AC_CACHE_CHECK([if \$CC accepts -O3], [ac_cv_c_o3], [CFLAGS="${CFLAGS_save} -O3" AC_TRY_COMPILE([],,ac_cv_c_o3=yes, ac_cv_c_o3=no)]) -if test "${ac_cv_c_o3}" != "no" -a "${target_cpu}" != "mipsel"; then +if test "${ac_cv_c_o3}" != "no" -a "${host_cpu}" != "mipsel"; then CFLAGS_OPTIM="${CFLAGS_OPTIM} -O3" fi @@ -963,7 +921,7 @@ AC_CACHE_CHECK([if \$CC accepts -O2], [ac_cv_c_o2], [CFLAGS="${CFLAGS_save} -O2" AC_TRY_COMPILE([],,ac_cv_c_o2=yes, ac_cv_c_o2=no)]) -if test "${ac_cv_c_o2}" != "no" -a "${target_cpu}" != "mipsel"; then +if test "${ac_cv_c_o2}" != "no" -a "${host_cpu}" != "mipsel"; then if test "${ac_cv_c_o3}" = "no"; then CFLAGS_OPTIM="${CFLAGS_OPTIM} -O2" fi @@ -973,7 +931,7 @@ else [ac_cv_c_o], [CFLAGS="${CFLAGS_save} -O" AC_TRY_COMPILE([],,ac_cv_c_o=yes, ac_cv_c_o=no)]) - if test "${ac_cv_c_o}" != "no" -a "${target_cpu}" != "mipsel"; then + if test "${ac_cv_c_o}" != "no" -a "${host_cpu}" != "mipsel"; then if test "${ac_cv_c_o3}" = "no"; then CFLAGS_OPTIM="${CFLAGS_OPTIM} -O" fi @@ -1103,12 +1061,12 @@ fi dnl dnl Check the CPU dnl -case "${target_cpu}" in +case "${host_cpu}" in "") ARCH=unknown ;; *) - ARCH="${target_cpu}" + ARCH="${host_cpu}" ;; esac @@ -1126,9 +1084,9 @@ dnl dnl default modules dnl VLC_ADD_PLUGINS([dummy logger memcpy]) -VLC_ADD_PLUGINS([mpgv mpga m4v m4a h264 ps pva avi asf mp4 rawdv nsv real aiff mjpeg demuxdump flac]) +VLC_ADD_PLUGINS([mpgv mpga m4v m4a h264 ps pva avi asf mp4 rawdv nsv real aiff mjpeg demuxdump flac tta]) VLC_ADD_PLUGINS([cvdsub svcdsub spudec subsdec dvbsub mpeg_audio lpcm a52 dts cinepak flacdec]) -VLC_ADD_PLUGINS([deinterlace invert adjust transform wave ripple psychedelic gradient motionblur rv32]) +VLC_ADD_PLUGINS([deinterlace invert adjust transform wave ripple psychedelic gradient motionblur rv32 rotate noise]) VLC_ADD_PLUGINS([fixed32tos16 s16tofixed32 u8tofixed32 mono]) VLC_ADD_PLUGINS([trivial_resampler ugly_resampler]) VLC_ADD_PLUGINS([trivial_channel_mixer trivial_mixer]) @@ -1140,10 +1098,11 @@ VLC_ADD_PLUGINS([access_http access_mms access_ftp ipv4]) VLC_ADD_PLUGINS([packetizer_mpegvideo packetizer_h264]) VLC_ADD_PLUGINS([packetizer_mpeg4video packetizer_mpeg4audio]) + 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 podcast shout sap fake motion]) + VLC_ADD_PLUGINS([gestures rc telnet hotkeys netsync showintf marq podcast shout sap fake folder]) 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]) @@ -1166,7 +1125,7 @@ dnl dnl Some plugins aren't useful on some platforms dnl if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then - VLC_ADD_PLUGINS([screensaver]) + VLC_ADD_PLUGINS([screensaver motion]) elif test "${SYS}" != "mingwce"; then VLC_ADD_PLUGINS([ntservice access_smb dmo msn]) VLC_ADD_LDFLAGS([dmo],[-lole32]) @@ -1293,12 +1252,12 @@ AC_CACHE_CHECK([if \$CC groks AltiVec C extensions], [ac_cv_c_altivec], [# OS X/PPC test (gcc 4.x) CFLAGS="${CFLAGS_save} -mpim-altivec -force_cpusubtype_ALL" - AC_TRY_COMPILE([], + AC_TRY_COMPILE([vector unsigned char foo;], [vec_ld(0, (unsigned char *)0);], [ac_cv_c_altivec="-mpim-altivec -force_cpusubtype_ALL"], [# OS X/PPC test (gcc 3.x) CFLAGS="${CFLAGS_save} -faltivec" - AC_TRY_COMPILE([], + AC_TRY_COMPILE([vector unsigned char foo;], [vec_ld(1 * sizeof(vector float), (unsigned char *)0);], [ac_cv_c_altivec="-faltivec"], dnl Below this are the Linux tests @@ -1337,7 +1296,9 @@ if test "${ac_cv_c_altivec}" != "no"; then VLC_ADD_CFLAGS([vlc],[${ac_cv_c_altivec}]) VLC_ADD_CFLAGS([idctaltivec motionaltivec],[${ac_cv_c_altivec}]) VLC_ADD_CFLAGS([i420_yuy2_altivec memcpyaltivec deinterlace],[${ac_cv_c_altivec} ${ac_cv_c_altivec_abi}]) - ACCEL_MODULES="${ACCEL_MODULES} ${ALTIVEC_MODULES}" + if test "${ac_cv_altivec_inline}" = "no"; then + ACCEL_MODULES="${ACCEL_MODULES} ${ALTIVEC_MODULES}" + fi fi AC_CACHE_CHECK([if linker needs -framework vecLib], @@ -1365,11 +1326,13 @@ if test -n "${with_tuning}"; then CFLAGS_TUNING="-mtune=${with_tuning}" fi else - if test "${target_cpu}" = "i686" -o "${target_cpu}" = "i586" -o "${target_cpu}" = "i486" -o "${target_cpu}" = "i386"; then + if test "${SYS}" = "darwin" -a "${host_cpu}" = "i686"; then + CFLAGS_TUNING="-march=pentium-m -mtune=prescott" + elif test "${host_cpu}" = "i686" -o "${host_cpu}" = "i586" -o "${host_cpu}" = "i486" -o "${host_cpu}" = "i386"; then CFLAGS_TUNING="-mtune=pentium2" - elif test "${target_cpu}" = "x86_64"; then + elif test "${host_cpu}" = "x86_64"; then CFLAGS_TUNING="-mtune=athlon64" - elif test "${target_cpu}" = "powerpc"; then + elif test "${host_cpu}" = "powerpc"; then CFLAGS_TUNING="-mtune=G4"; fi fi @@ -1393,7 +1356,7 @@ AS_IF([test "${CFLAGS_TUNING}"], dnl dnl x86 accelerations dnl -if test "${target_cpu}" = "i686" -o "${target_cpu}" = "i586" -o "${target_cpu}" = "x86" -o "${target_cpu}" = "i386" -o "${target_cpu}" = "x86_64" +if test "${host_cpu}" = "i686" -o "${host_cpu}" = "i586" -o "${host_cpu}" = "x86" -o "${host_cpu}" = "i386" -o "${host_cpu}" = "x86_64" then ARCH="${ARCH} mmx" VLC_ADD_BUILTINS([${ACCEL_MODULES}]) @@ -1422,7 +1385,7 @@ AC_ARG_ENABLE(altivec, [ --disable-altivec disable AltiVec optimizations (default enabled on PPC)], [ if test "${enable_altivec}" = "yes"; then ARCH="${ARCH} altivec"; VLC_ADD_BUILTINS([${ACCEL_MODULES}]) fi ], -[ if test "${target_cpu}" = "powerpc"; then ARCH="${ARCH} altivec"; +[ if test "${host_cpu}" = "powerpc"; then ARCH="${ARCH} altivec"; VLC_ADD_BUILTINS([${ACCEL_MODULES}]) fi ]) dnl @@ -1470,6 +1433,9 @@ then AC_DEFINE(ENABLE_SOUT, 1, Define if you want the stream output support) fi +AC_ARG_ENABLE(switcher, + [ --enable-switcher Stream-out switcher plugin (default disabled)]) + dnl Check for libshout AC_ARG_ENABLE(shout, [ --enable-shout libshout output plugin (default disabled)]) @@ -1531,8 +1497,43 @@ AS_IF([test "${enable_notify}" != "no"], [ ]) ]) +dnl +dnl Audioscrobbler plugin +dnl + +AC_ARG_ENABLE(audioscrobbler, + [ --enable-audioscrobbler Last.fm submission plugin (default enabled)]) +AS_IF([test "${enable_audioscrobbler}" != "no"], [ + VLC_ADD_PLUGINS([audioscrobbler]) + ]) + +dnl +dnl Musicbrainz plugin +dnl +AC_ARG_ENABLE(musicbrainz, + [ --enable-musicbrainz MusicBrainz support (default disabled) ]) + AS_IF([test "${enable_musicbrainz}" = "yes"],[ + PKG_CHECK_MODULES(MUSICBRAINZ, libmusicbrainz, + [ VLC_ADD_PLUGINS([musicbrainz]) + VLC_ADD_LDFLAGS([musicbrainz],[$MUSICBRAINZ_LIBS]) + VLC_ADD_CFLAGS([musicbrainz],[$MUSICBRAINZ_CFLAGS]) ], + [AC_MSG_WARN(MusicBrainz library not found)]) + ]) +dnl +dnl Taglibplugin +dnl +AC_ARG_ENABLE(taglib, + [ --enable-taglib Taglib support (default disabled) ]) + AS_IF([test "${enable_taglib}" = "yes"],[ + PKG_CHECK_MODULES(TAGLIB, taglib, + [ VLC_ADD_PLUGINS([taglib]) + VLC_ADD_LDFLAGS([taglib],[$TAGLIB_LIBS]) + VLC_ADD_CXXFLAGS([taglib],[$TAGLIB_CFLAGS]) ], + [AC_MSG_WARN(TagLib library not found)]) + ]) + dnl dnl Input plugins @@ -1547,13 +1548,13 @@ then AC_MSG_WARN(--{en|dis}able-livedotcom is deprecated. Use --{en|dis}able-live555 instead.) fi -if test "${enable_livedotcom}" = "yes" +if test "${enable_livedotcom}" = "no" then - enable_live555="yes" + enable_live555="no" fi AC_ARG_ENABLE(live555, -[ --enable-live555 live555 RTSP input plugin (default disabled)]) -if test "${enable_live555}" = "yes"; then +[ --enable-live555 live555 RTSP input plugin (default enabled)]) +if test "${enable_live555}" != "no"; then AC_ARG_WITH(live555-tree, [ --with-live555-tree=PATH live.com tree for static linking]) @@ -1626,8 +1627,10 @@ if test "${enable_live555}" = "yes"; then fi else dnl The given live555 wasn't built - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot find ${real_live555_tree}/liveMedia/libliveMedia.a, make sure you compiled live555 in ${with_live555_tree}]) + AC_MSG_RESULT(no) + if test "${enable_live555}" = "yes"; then + AC_MSG_ERROR([cannot find ${real_live555_tree}/liveMedia/libliveMedia.a, make sure you compiled live555 in ${with_live555_tree}]) + fi fi fi fi @@ -1870,6 +1873,45 @@ then fi fi + +dnl +dnl OpenCV wrapper and example filters +dnl +AC_ARG_ENABLE(opencv, + [ --enable-opencv OpenCV (computer vision) filter (default disabled)]) +if test "${enable_opencv}" = "yes" -a "${CXX}" != ""; +then + AC_ARG_WITH(opencv-tree, + [ --with-opencv-tree=PATH opencv tree for linking]) + if test -n "${with_opencv_tree}" + then + if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin" + then + AC_MSG_CHECKING(for opencv in ${with_opencv_tree}) + if test -f ${with_opencv_tree}/cv/include/cv.h -a -f ${with_opencv_tree}/cxcore/include/cxcore.h \ + -a -f ${with_opencv_tree}/cvaux/include/cvaux.h -a -f ${with_opencv_tree}/otherlibs/highgui/highgui.h + then + AC_MSG_RESULT(yes) + VLC_ADD_PLUGINS([opencv_wrapper]) + VLC_ADD_LDFLAGS([opencv_wrapper],[-L${with_opencv_tree}/lib -lcv -lcxcore -lcvaux -lhighgui]) + VLC_ADD_CFLAGS([opencv_wrapper],[-I${with_opencv_tree}/cv/include -I${with_opencv_tree}/cxcore/include -I${with_opencv_tree}/cvaux/include -I${with_opencv_tree}/otherlibs/highgui]) + AC_LANG_PUSH(C++) + VLC_ADD_PLUGINS([opencv_example]) + VLC_ADD_LDFLAGS([opencv_example],[-L${with_opencv_tree}/lib -lcv -lcxcore -lcvaux -lhighgui]) + VLC_ADD_CXXFLAGS([opencv_example],[-I${with_opencv_tree}/cv/include -I${with_opencv_tree}/cxcore/include -I${with_opencv_tree}/cvaux/include -I${with_opencv_tree}/otherlibs/highgui]) + AC_LANG_POP(C++) + else + dnl No opencv could be found, sorry + AC_MSG_RESULT(no) + AC_MSG_ERROR([cannot find opencv in ${with_opencv_tree}]) + fi + else + AC_MSG_WARN([--enable-opencv currently only works on windows]) + fi + fi +fi + + dnl dnl libsmbclient plugin dnl @@ -2685,7 +2727,7 @@ dnl Those options have to be here because the .pc can be bogus for ffmpeg previo fi VLC_ADD_BUILTINS([ffmpeg]) - if test "${enable_sout}" != "no"; then + if test "${enable_sout}" != "no" -a "${enable_switcher}" = "yes" ; then VLC_ADD_BUILTINS([stream_out_switcher]) fi @@ -2721,7 +2763,7 @@ dnl Look for a ffmpeg-config (we are on debian ) AC_CHECK_HEADERS(ffmpeg/avutil.h) AC_CHECK_HEADERS(postproc/postprocess.h) VLC_ADD_PLUGINS([ffmpeg]) - if test "${enable_sout}" != "no"; then + if test "${enable_sout}" != "no" -a "${enable_switcher}" = "yes"; then VLC_ADD_PLUGINS([stream_out_switcher]) fi VLC_ADD_CFLAGS([ffmpeg stream_out_switcher],[`${FFMPEG_CONFIG} --cflags`]) @@ -2736,12 +2778,20 @@ dnl Trying with pkg-config 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 - VLC_ADD_BUILTINS([stream_out_switcher]) + if test "${SYS}" = "darwin"; then + VLC_ADD_BUILTINS([ffmpeg]) + else + VLC_ADD_PLUGINS([ffmpeg]) + fi + if test "${enable_sout}" != "no" -a "${enable_switcher}" = "yes"; then + if test "${SYS}" = "darwin"; then + VLC_ADD_BUILTINS([stream_out_switcher]) + else + VLC_ADD_PLUGINS([stream_out_switcher]) + fi fi VLC_ADD_CFLAGS([ffmpeg stream_out_switcher],[${FFMPEG_CFLAGS}]) - VLC_ADD_LDFLAGS([ffmpeg],[${FFMPEG_LIBS}]) + VLC_ADD_LDFLAGS([ffmpeg stream_out_switcher],[${FFMPEG_LIBS}]) dnl newer ffmpeg have a separate libpostproc PKG_CHECK_MODULES(POSTPROC, libpostproc,[ VLC_ADD_LDFLAGS([ffmpeg],[${POSTPROC_LIBS}]) @@ -2762,18 +2812,20 @@ dnl Trying with pkg-config VLC_ADD_LDFLAGS([ffmpeg],[-lavutil]) LDAVUTIL="-lavutil"]) - AC_CHECK_LIB(postproc, pp_postprocess, [ - VLC_ADD_LDFLAGS([ffmpeg],[-lpostproc])]) - AC_CHECK_LIB(avcodec, avcodec_init, [ VLC_ADD_BUILTINS([ffmpeg]) VLC_ADD_LDFLAGS([ffmpeg],[-lavcodec]) - if test "${enable_sout}" != "no"; then + if test "${enable_sout}" != "no" -a "${enable_switcher}" = "yes"; then 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/ (svn version is recommended). Alternatively you can use --disable-ffmpeg to disable the ffmpeg plugins.]) ], [$LDAVUTIL]) + AC_CHECK_LIB(postproc, pp_postprocess, [ + VLC_ADD_LDFLAGS([ffmpeg],[-lpostproc])], + AC_MSG_ERROR([Could not find libpostproc inside FFmpeg. You should configure FFmpeg with --enable-gpl --enable-pp.]), + [$LDAVUTIL]) + AC_CHECK_LIB(avformat, av_open_input_stream, [ VLC_ADD_LDFLAGS([ffmpeg],[-lavformat -lz]) ], [], [-lavcodec -lz $LDAVUTIL]) LDFLAGS="${LDFLAGS_save}" @@ -3076,7 +3128,7 @@ if test "${enable_dts}" != "no"; then LDFLAGS="${LDFLAGS_save} ${LDFLAGS_dtstofloat32}" AC_CHECK_LIB(dts_pic, dts_free, [ VLC_ADD_PLUGINS([dtstofloat32]) - VLC_ADD_LDFLAGS([dtstofloat32],[-ldts_pic]) + VLC_ADD_LDFLAGS([dtstofloat32],[-ldts_pic -lm]) ],[ AC_CHECK_LIB(dts, dts_free, [ VLC_ADD_BUILTINS([dtstofloat32]) @@ -3089,7 +3141,7 @@ if test "${enable_dts}" != "no"; then AC_MSG_ERROR([the specified tree hasn't been compiled]) fi ]) - ]) + ], [-lm]) LDFLAGS="${LDFLAGS_save}" else AC_MSG_RESULT(no) @@ -3100,7 +3152,7 @@ if test "${enable_dts}" != "no"; then AC_CHECK_HEADERS(dts.h, [ AC_CHECK_LIB(dts_pic, dts_free, [ VLC_ADD_PLUGINS([dtstofloat32]) - VLC_ADD_LDFLAGS([dtstofloat32],[-ldts_pic]) + VLC_ADD_LDFLAGS([dtstofloat32],[-ldts_pic -lm]) ],[ AC_CHECK_LIB(dts, dts_free, [ VLC_ADD_BUILTINS([dtstofloat32]) @@ -3110,7 +3162,7 @@ if test "${enable_dts}" != "no"; then AC_MSG_ERROR([Could not find libdts on your system: you may get it from http://www.videolan.org/dtsdec.html]) fi ]) - ]) + ], [-lm]) ]) LDFLAGS="${LDFLAGS_save}" fi @@ -3482,9 +3534,9 @@ if test "${enable_x11}" != "no" && test "${enable_x11}" = "yes"); then CPPFLAGS="${CPPFLAGS_save} ${X_FLAGS}" AC_CHECK_HEADERS(X11/Xlib.h, [ - VLC_ADD_PLUGINS([x11]) - VLC_ADD_LDFLAGS([x11],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext]) - VLC_ADD_CPPFLAGS([x11],[${X_CFLAGS}]) + VLC_ADD_PLUGINS([x11 panoramix]) + VLC_ADD_LDFLAGS([x11 panoramix],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext]) + VLC_ADD_CPPFLAGS([x11 panoramix],[${X_CFLAGS}]) ]) CPPFLAGS="${CPPFLAGS_save}" fi @@ -3920,6 +3972,12 @@ fi dnl dnl Windows DirectX module dnl + +if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce" -o "${SYS}" = "cygwin" +then + VLC_ADD_PLUGINS([panoramix]) +fi + AC_ARG_ENABLE(directx, [ --enable-directx Win32 DirectX support (default enabled on Win32)]) if test "${enable_directx}" != "no" @@ -4208,7 +4266,7 @@ then AC_TRY_COMPILE([#define ALSA_PCM_NEW_HW_PARAMS_API #define ALSA_PCM_NEW_SW_PARAMS_API #include ], - [void foo() { snd_pcm_hw_params_get_period_time(0,0,0); }], + [snd_pcm_hw_params_get_period_time(0,0,0);], AC_DEFINE(HAVE_ALSA_NEW_API, 1, Define if ALSA is at least rc4)) VLC_ADD_PLUGINS([alsa]) VLC_ADD_LDFLAGS([alsa],[-lasound -lm -ldl]) @@ -4595,9 +4653,9 @@ then AC_PATH_PROG(WX_CONFIG, ${WXWIDGETS_NAME}, no, ${WXWIDGETS_PATH}) if test "${WX_CONFIG}" != "no" -a "${CXX}" != "" then - if expr 2.3.0 \> `${WX_CONFIG} --version` >/dev/null + if expr 2.6.0 \> `${WX_CONFIG} --version` >/dev/null || expr 2.7.0 \<= `${WX_CONFIG} --version` >/dev/null then - AC_MSG_ERROR([Your development package for wxWidgets is too old, you need at least version 2.3.0. Please upgrade and try again. Alternatively you can also configure with --disable-wxwidgets.]) + AC_MSG_ERROR([You need wxWidgets of the 2.6 branch. Please upgrade and try again. Alternatively you can also configure with --disable-wxwidgets.]) fi AC_LANG_PUSH(C++) # Turn this error: @@ -4849,7 +4907,7 @@ then AC_CHECK_LIB(xosd,xosd_set_horizontal_offset, AC_DEFINE(HAVE_XOSD_VERSION_2, 1, Define if is 2.0.x), AC_TRY_COMPILE([#include ], - [void foo() { xosd_init("foo","bar",12,XOSD_top,2,12,42); }],, + [xosd_init("foo","bar",12,XOSD_top,2,12,42);],, AC_DEFINE(HAVE_XOSD_VERSION_0, 1, Define if is pre-1.0.0)))) if test "${have_xosd}" = "true" then @@ -4987,30 +5045,6 @@ then fi -dnl -dnl corba (ORBit) plugin -dnl -dnl Default: do not enable corba -enablecorba=false -AC_ARG_ENABLE(corba, - [ --enable-corba corba interface support (default disabled)]) -if test "${enable_corba}" = "yes"; then - GLIB_VERSION=2.3.2 - PKG_CHECK_MODULES(CORBA, - ORBit-2.0 >= 2.8.0 \ - glib-2.0 >= $GLIB_VERSION \ - gobject-2.0 >= $GLIB_VERSION \ - gthread-2.0 >= $GLIB_VERSION, - [ - enablecorba=true - VLC_ADD_LDFLAGS([corba],[$CORBA_LIBS]) - VLC_ADD_CFLAGS([corba],[$CORBA_CFLAGS]) - VLC_ADD_PLUGINS([corba snapshot]) ], - [ enablecorba=false - AC_MSG_WARN(corba library not found) ]) -fi -AM_CONDITIONAL(ENABLE_CORBA, test "$enablecorba" = "true") - AC_ARG_WITH(,[Misc options:]) dnl @@ -5020,17 +5054,20 @@ AC_ARG_ENABLE(gnutls, [ --enable-gnutls gnutls TLS/SSL support (default enabled)]) AS_IF([test "${enable_gnutls}" != "no"], [ - PKG_CHECK_EXISTS([gnutls >= 1.0.17], [have_gnutls="yes"], [have_gnutls="no"]) + PKG_CHECK_MODULES(GNUTLS, [gnutls >= 1.2.9], [have_gnutls="yes"], [have_gnutls="no"]) AS_IF([test "${have_gnutls}" = "yes"], [ VLC_ADD_PLUGINS([gnutls]) - VLC_ADD_CFLAGS([gnutls], [$("${PKG_CONFIG}" --cflags gnutls)]) - VLC_ADD_LDFLAGS([gnutls], [$("${PKG_CONFIG}" --libs gnutls)]) + VLC_ADD_CFLAGS([gnutls], [$GNUTLS_CFLAGS]) + VLC_ADD_LDFLAGS([gnutls], [$GNUTLS_LIBS]) ], [ AS_IF([test "${enable_gnutls}" = "yes"], [ - AC_MSG_ERROR([gnutls not present or too old (version 1.0.17 required)]) + AC_MSG_ERROR([gnutls not present or too old (version 1.2.9 required)]) ]) ]) + AC_CHECK_LIB([gcrypt], [gcry_control], [ + VLC_ADD_LDFLAGS([gnutls], [-lgcrypt]) + ]) ]) @@ -5101,7 +5138,7 @@ AC_ARG_ENABLE(loader, [ --enable-loader build DLL loader for ELF i386 platforms (default disabled)]) AM_CONDITIONAL(LOADER, [test "${enable_loader}" = "yes"]) AS_IF([test "${enable_loader}" = "yes"], - [ VLC_ADD_PLUGINS([dmo quicktime]) + [ VLC_ADD_PLUGINS([dmo]) VLC_ADD_CPPFLAGS([dmo],[-I../../../@top_srcdir@/loader]) VLC_ADD_LDFLAGS([dmo],[../../../loader/libloader.la]) VLC_ADD_CPPFLAGS([quicktime],[-I../../@top_srcdir@/loader]) @@ -5116,11 +5153,20 @@ dnl activex=false AC_ARG_ENABLE(activex, [ --enable-activex build a vlc-based ActiveX control (default enabled on Win32)]) +AC_ARG_WITH(wine-sdk-path, + [ --with-wine-sdk-path=PATH path to wine sdk]) if test "${enable_activex}" != "no" then if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin" then - AC_CHECK_PROGS(MIDL, [midl widl], no) + AC_CHECK_PROGS(MIDL, [midl], no) + if test "${with_wine_sdk_path}" != "" + then + WINE_SDK_PATH=${with_wine_sdk_path} + AC_PATH_PROG(WIDL, widl, no, [$WINE_SDK_PATH/bin:$WINE_SDK_PATH/tools/widl]) + else + WIDL=no + fi AC_LANG_PUSH(C++) AC_CHECK_HEADERS(ole2.h olectl.h, [ VLC_ADD_CXXFLAGS([activex],[-fno-exceptions]) @@ -5140,6 +5186,8 @@ then fi AC_ARG_VAR(MIDL, [Microsoft IDL compiler (Win32 platform only)]) AM_CONDITIONAL(HAS_MIDL_COMPILER, test "${MIDL}" != "no") +AC_ARG_VAR(WIDL, [Wine IDL compiler (requires Wine SDK)]) +AM_CONDITIONAL(HAS_WIDL_COMPILER, test "${WIDL}" != "no") AM_CONDITIONAL(BUILD_ACTIVEX,${activex}) dnl @@ -5160,13 +5208,19 @@ then AC_PATH_PROG(MOZILLA_CONFIG, mozilla-config, no) if test "${MOZILLA_CONFIG}" = "no" then - AC_PATH_PROG(XULRUNNER_CONFIG, xulrunner-config, no) - if test "${XULRUNNER_CONFIG}" = "no" + AC_PATH_PROG(SEAMONKEY_CONFIG, seamonkey-config, no) + if test "${SEAMONKEY_CONFIG}" = "no" then - AC_MSG_ERROR([Please install the Mozilla development tools, mozilla-config was not found.]) + AC_PATH_PROG(XULRUNNER_CONFIG, xulrunner-config, no) + if test "${XULRUNNER_CONFIG}" = "no" + then + AC_MSG_ERROR([Please install the Mozilla development tools, mozilla-config was not found.]) + else + have_xul=true + MOZILLA_CONFIG="${XULRUNNER_CONFIG}" + fi else - have_xul=true - MOZILLA_CONFIG="${XULRUNNER_CONFIG}" + MOZILLA_CONFIG="${SEAMONKEY_CONFIG}" fi fi @@ -5255,10 +5309,10 @@ AM_CONDITIONAL(BUILD_MOZILLA,${mozilla}) dnl dnl Mediacontrol Python bindings dnl -AC_ARG_ENABLE(mediacontrol-python-bindings, - [ --enable-mediacontrol-python-bindings Enable Python bindings for MediaControl (default disabled)]) +AC_ARG_ENABLE(python-bindings, + [ --enable-python-bindings Enable Python bindings (default disabled)]) dnl TODO: look for python dev headers -AM_CONDITIONAL(BUILD_PYTHON, [test "${enable_mediacontrol_python_bindings}" = "yes"]) +AM_CONDITIONAL(BUILD_PYTHON, [test "${enable_python_bindings}" = "yes"]) dnl dnl Java bindings @@ -5372,29 +5426,12 @@ then plugin_support=false fi -dnl Export automake variables -if ${plugin_support} -then +AS_IF([${plugin_support}], [ AC_DEFINE(HAVE_DYNAMIC_PLUGINS, 1, Define if we have support for dynamic plugins) - for plugin in `echo ${PLUGINS}` - do - eval "${plugin}_p=yes" - done -else +], [ VLC_ADD_BUILTINS([${PLUGINS}]) PLUGINS="" -fi -AM_CONDITIONAL(HAVE_PLUGINS, ${plugin_support}) - -[if echo "${BUILTINS}" | grep '[^ ]' >/dev/null 2>&1 -then - builtin_support=: - for builtin in `echo ${BUILTINS}` - do - eval "${builtin}_b=yes" - done -fi] -AM_CONDITIONAL(HAVE_BUILTINS, ${builtin_support}) +]) dnl dnl Pic and shared libvlc stuff @@ -5403,23 +5440,14 @@ 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="" ) -dnl -dnl we need pic on amd64 fo the mozilla plugin - -case "${target_cpu}" in - x86_64) - pic=pic - ;; - *) - pic="" - ;; -esac -AC_SUBST(pic) - + FILE_LIBVLC_DLL="!define LIBVLC_DLL libvlc.dll" + VLC_ADD_PLUGINS([${BUILTINS}]) + BUILTINS="" +], [ + FILE_LIBVLC_DLL="" +]) -dnl Import conditional variables generated by bootstrap + dnl Import conditional variables generated by bootstrap VLC_CONDITIONALS dnl @@ -5446,7 +5474,7 @@ dnl AC_DEFINE_UNQUOTED(MODULE_SUFFIX, "__${VLC_SYMBOL}", [String suffix for modu dnl AC_DEFINE_UNQUOTED(MODULE_SYMBOL, ${VLC_SYMBOL}, [Symbol suffix for module functions]) dnl New definitions with value matching 0.8.6 release -module_symbol="0_8_6a" +module_symbol="0_8_6c" 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}" @@ -5482,6 +5510,7 @@ AC_SUBST(RCC) AC_SUBST(UIC) AC_SUBST(WINDRES) AC_SUBST(MOZILLA_SDK_PATH) +AC_SUBST(WINE_SDK_PATH) AC_SUBST(XPIDL) AC_SUBST(XPIDL_INCL) AC_SUBST(LIBEXT) @@ -5504,7 +5533,7 @@ AC_CONFIG_FILES([ bindings/Makefile bindings/java/Makefile bindings/java/src/Makefile - bindings/mediacontrol-python/Makefile + bindings/python/Makefile doc/Makefile intl/Makefile ipkg/Makefile @@ -5542,14 +5571,12 @@ AC_CONFIG_FILES([ modules/codec/spudec/Makefile modules/control/Makefile modules/control/http/Makefile - modules/control/corba/Makefile modules/demux/Makefile modules/demux/asf/Makefile modules/demux/avi/Makefile modules/demux/mp4/Makefile modules/demux/mpeg/Makefile modules/demux/playlist/Makefile - modules/demux/util/Makefile modules/gui/Makefile modules/gui/beos/Makefile modules/gui/pda/Makefile @@ -5559,10 +5586,12 @@ AC_CONFIG_FILES([ modules/gui/skins2/Makefile modules/gui/wxwidgets/Makefile modules/gui/wince/Makefile + modules/meta_engine/Makefile modules/misc/Makefile modules/misc/dummy/Makefile modules/misc/memcpy/Makefile modules/misc/network/Makefile + modules/misc/notify/Makefile modules/misc/testsuite/Makefile modules/misc/playlist/Makefile modules/misc/xml/Makefile