X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=configure.ac;h=735b2258a54947a7ce1700b831f6651e607a34e2;hb=5149ab52baa1ce6926c4f764f0b0b368f0dbef88;hp=59fda816dcd1c3d79ea56bdf0d576738bd5f22b3;hpb=55a23c4d71edf4d091bcadecf13dc1899885c17c;p=vlc diff --git a/configure.ac b/configure.ac index 59fda816dc..735b2258a5 100644 --- a/configure.ac +++ b/configure.ac @@ -1,7 +1,7 @@ dnl Autoconf settings for vlc dnl $Id$ -AC_INIT(vlc,0.8.2-svn) +AC_INIT(vlc,0.8.2-test2) CONFIGURE_LINE="$0 $*" CODENAME="Janus" @@ -13,7 +13,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.2-svn) +AM_INIT_AUTOMAKE(vlc,0.8.2-test1) AM_CONFIG_HEADER(config.h) dnl @@ -129,7 +129,7 @@ case "${target_os}" in VLC_ADD_LDFLAGS([mp4], [-framework IOKit -framework CoreFoundation]) VLC_ADD_CFLAGS([libvlc],[-x objective-c]) VLC_ADD_CFLAGS([vlc],[-x objective-c]) - VLC_ADD_LDFLAGS([vlc],[-Wl,-multiply_defined,suppress]) + VLC_ADD_LDFLAGS([vlc],[-Wl,-m -Wl,-multiply_defined -Wl,suppress]) ;; *mingw32* | *cygwin* | *wince* | *mingwce* | *pe*) AC_CHECK_TOOL(WINDRES, windres, :) @@ -162,6 +162,7 @@ case "${target_os}" in if test "${SYS}" = "mingwce"; then # add ws2 for closesocket, select, recv CPPFLAGS_save="${CPPFLAGS_save} -D_OFF_T_ -D_off_t=long"; CPPFLAGS="${CPPFLAGS_save}" + 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 @@ -205,7 +206,7 @@ AM_CONDITIONAL(HAVE_WINCE, test "${SYS}" = "mingwce") dnl dnl Gettext stuff dnl -ALL_LINGUAS="bn da de el en_GB es fr hi hu it ja my nl no pl ps pt_BR ru sv tet tl" +ALL_LINGUAS="bn ca da de el en_GB es fr hi hu it ja my ne nl no pl ps pt_BR ru sv tet tl zh_TW" AM_GNU_GETTEXT_VERSION(0.11.5) AM_GNU_GETTEXT if test "${nls_cv_force_use_gnu_gettext}" = "yes"; then @@ -312,7 +313,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 isatty vasprintf asprintf swab sigrelse getpwuid memalign posix_memalign gethostbyname2 if_nametoindex atoll getenv putenv setenv gmtime_r ctime_r localtime_r lrintf daemon) +AC_CHECK_FUNCS(gettimeofday select strerror strtod strtol strtof strtoll strtoull strsep isatty vasprintf asprintf swab sigrelse getpwuid memalign posix_memalign gethostbyname2 if_nametoindex atoll getenv putenv setenv gmtime_r ctime_r localtime_r lrintf daemon) dnl Check for usual libc functions AC_CHECK_FUNCS(strdup strndup atof) @@ -390,31 +391,21 @@ if test $ac_cv_struct_sockaddr_storage = no; then AC_DEFINE(ss_family, sa_family) fi -dnl getnameinfo, which implies {get,free}addrinfo, but not gai_strerror, -dnl -lws2_32 required with Mingw32, -lresolv NOT needed on Solaris. -dnl AC_SEARCH_LIBS won't work with Mingw32 -AH_TEMPLATE(HAVE_GETNAMEINFO, - [Define to 1 if you have the `getnameinfo' function.]) -ac_func_getnameinfo_save_LIBS=$LIBS -AS_IF([test "${SYS}" = "mingw32"], - [LIBS="-lws2_32 $LIBS"]) - AC_CACHE_CHECK([for getnameinfo], ac_cv_func_getnameinfo, -[AC_LINK_IFELSE([AC_LANG_PROGRAM([ +dnl getaddrinfo, getnameinfo and gai_strerror check +dnl -lresolv is NOT needed on Solaris +dnl we purposedly make the test fail on Windows +AC_CHECK_FUNCS([getaddrinfo getnameinfo gai_strerror]) +AH_TEMPLATE(HAVE_ADDRINFO, [Define to `1' if defines struct addrinfo.]) +AC_CHECK_TYPES([struct addrinfo],[AC_DEFINE(HAVE_ADDRINFO)],, [#include #if defined( UNDER_CE ) # include #elif defined( WIN32 ) # include +# include #else -# include # include -#endif] -], [[getnameinfo(0,0,0,0,0,0,0);]])], -ac_cv_func_getnameinfo=yes, -ac_cv_func_getnameinfo=no)]) -AS_IF([test $ac_cv_func_getnameinfo = yes], - [AC_DEFINE(HAVE_GETNAMEINFO)]) -LIBS=$ac_func_getnameinfo_save_LIBS +#endif]) dnl Check for va_copy AC_CACHE_CHECK([for va_copy], ac_cv_c_va_copy, @@ -462,7 +453,7 @@ 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 toolame equalizer vlc freetype],[-lm]) + VLC_ADD_LDFLAGS([ffmpeg ffmpegaltivec stream_out_transrate i420_rgb faad twolame equalizer vlc freetype],[-lm]) ]) AC_CHECK_LIB(m,sqrt,[ VLC_ADD_LDFLAGS([headphone_channel_mixer normvol speex],[-lm]) @@ -699,12 +690,18 @@ if test "${x_libraries}" = "NONE"; then fi dnl Check for hal -PKG_CHECK_MODULES(HAL, hal >= 0.2.97, - [AC_DEFINE(HAVE_HAL, [], [Define if you have the HAL library]) - VLC_ADD_PLUGINS([hal]) - VLC_ADD_LDFLAGS([vlc hal],[$HAL_LIBS]) - VLC_ADD_CFLAGS([vlc hal],[$HAL_CFLAGS])], - [AC_MSG_WARN(HAL library not found)]) +AC_ARG_ENABLE(hal, + [ --enable-hal Linux HAL services discovery (default enabled)]) + +if test "${enable_hal}" != "no" +then + PKG_CHECK_MODULES(HAL, hal >= 0.2.97, + [AC_DEFINE(HAVE_HAL, [], [Define if you have the HAL library]) + VLC_ADD_PLUGINS([hal]) + VLC_ADD_LDFLAGS([vlc hal],[$HAL_LIBS]) + VLC_ADD_CFLAGS([vlc hal],[$HAL_CFLAGS])], + [AC_MSG_WARN(HAL library not found)]) +fi dnl Build the gtk_main plugins? NEED_GTK_MAIN=no @@ -872,7 +869,10 @@ AC_CACHE_CHECK([if \$CC accepts -bundle -undefined error -lcc_dynamic], [CFLAGS="${CFLAGS_save} -bundle -undefined error -lcc_dynamic" AC_TRY_COMPILE([],,ac_cv_ld_darwin=yes, ac_cv_ld_darwin=no)]) if test "${ac_cv_ld_darwin}" != "no"; then - VLC_ADD_LDFLAGS([plugin],[-bundle -undefined error -lcc_dynamic]) + VLC_ADD_LDFLAGS([plugin],[-bundle -undefined error]) + AC_CHECK_LIB(cc_dynamic, main,[ + VLC_ADD_LDFLAGS([plugin],[-lcc_dynamic]) + ]) fi dnl Check for standard plugin linking flags @@ -968,24 +968,30 @@ dnl dnl default modules dnl VLC_ADD_PLUGINS([dummy logger memcpy]) -VLC_ADD_PLUGINS([mpgv mpga m4v m4a h264 ps pva avi asf aac mp4 rawdv nsv real aiff mjpeg demuxdump]) -VLC_ADD_PLUGINS([cvdsub svcdsub spudec subsdec dvbsub mpeg_audio lpcm a52 dts cinepak]) -VLC_ADD_PLUGINS([deinterlace invert adjust wall transform distort clone crop motionblur motiondetect]) -VLC_ADD_PLUGINS([float32tos16 float32tos8 float32tou16 float32tou8 a52tospdif dtstospdif fixed32tofloat32 fixed32tos16 s16tofixed32 s16tofloat32 s16tofloat32swab s8tofloat32 u8tofixed32 u8tofloat32 audio_format]) -VLC_ADD_PLUGINS([trivial_resampler ugly_resampler linear_resampler bandlimited_resampler]) -VLC_ADD_PLUGINS([trivial_channel_mixer simple_channel_mixer headphone_channel_mixer normvol]) -VLC_ADD_PLUGINS([trivial_mixer spdif_mixer float32_mixer]) -VLC_ADD_PLUGINS([aout_file equalizer]) -VLC_ADD_PLUGINS([i420_rgb i420_yuy2 i422_yuy2 i420_ymga]) -VLC_ADD_PLUGINS([id3 playlist export sgimb m3u xtag]) -VLC_ADD_PLUGINS([rawvideo blend scale image logo]) -VLC_ADD_PLUGINS([wav araw subtitle vobsub adpcm a52sys dtssys au]) -VLC_ADD_PLUGINS([access_file access_udp access_tcp access_http access_mms]) -VLC_ADD_PLUGINS([access_ftp ipv4]) +VLC_ADD_PLUGINS([mpgv mpga m4v m4a h264 ps pva avi asf mp4 rawdv nsv real aiff mjpeg demuxdump flac]) +VLC_ADD_PLUGINS([cvdsub svcdsub spudec subsdec dvbsub mpeg_audio lpcm a52 dts cinepak flacdec]) +VLC_ADD_PLUGINS([deinterlace invert adjust transform distort motionblur]) +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([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]) +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 - VLC_ADD_PLUGINS([access_directory sap http]) - VLC_ADD_PLUGINS([gestures rc telnet hotkeys netsync showintf time marq]) +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]) + VLC_ADD_PLUGINS([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([fixed32tofloat32 float32tos16 float32tos8 float32tou16 float32tou8 a52tospdif dtstospdif s16tofloat32 s16tofloat32swab s8tofloat32 u8tofloat32 audio_format]) fi dnl @@ -1004,8 +1010,10 @@ dnl if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then VLC_ADD_PLUGINS([screensaver]) elif test "${SYS}" != "mingwce"; then - VLC_ADD_PLUGINS([ntservice smb dmo]) + VLC_ADD_PLUGINS([ntservice access_smb dmo]) VLC_ADD_LDFLAGS([dmo],[-lole32]) +else + VLC_ADD_PLUGINS([win32text]) fi dnl @@ -1151,20 +1159,31 @@ if test -n "${with_tuning}"; then else if test "${target_cpu}" = "i686" -o "${target_cpu}" = "i586" -o "${target_cpu}" = "i486" -o "${target_cpu}" = "i386"; then CFLAGS_TUNING="-mcpu=pentiumpro" - else - if test "${target_cpu}" = "powerpc"; then CFLAGS_TUNING="-mtune=750"; fi + elif test "${target_cpu}" = "x86_64"; then + CFLAGS_TUNING="-mtune=opteron" + elif test "${target_cpu}" = "powerpc"; then + CFLAGS_TUNING="-mtune=750"; fi fi dnl dnl x86 accelerations dnl -if test "${target_cpu}" = "i686" -o "${target_cpu}" = "i586" -o "${target_cpu}" = "x86" -o "${target_cpu}" = "i386" +if test "${target_cpu}" = "i686" -o "${target_cpu}" = "i586" -o "${target_cpu}" = "x86" -o "${target_cpu}" = "i386" -o "${target_cpu}" = "x86_64" then ARCH="${ARCH} mmx" VLC_ADD_BUILTINS([${ACCEL_MODULES}]) fi +dnl +dnl Memory usage +dnl +AC_ARG_ENABLE(optimize-memory, +[ --enable-optimize-memory optimize memory usage over performance]) +if test "${enable_optimize_memory}" = "yes"; then + AC_DEFINE(OPTIMIZE_MEMORY, 1, Define if you want to optimize memory usage over performance) +fi + dnl dnl Enable/disable optimizations dnl @@ -1205,12 +1224,10 @@ if test "${enable_sout}" != "no" then VLC_ADD_PLUGINS([access_output_dummy access_output_udp access_output_file access_output_http]) VLC_ADD_PLUGINS([mux_ps mux_avi mux_mp4 mux_asf mux_dummy mux_wav mux_mpjpeg]) - VLC_ADD_PLUGINS([packetizer_mpegvideo packetizer_h264]) - VLC_ADD_PLUGINS([packetizer_mpeg4video packetizer_mpeg4audio]) VLC_ADD_PLUGINS([packetizer_copy]) VLC_ADD_PLUGINS([stream_out_dummy stream_out_standard stream_out_es stream_out_rtp stream_out_description vod_rtsp]) - VLC_ADD_PLUGINS([stream_out_duplicate stream_out_gather stream_out_display stream_out_transcode]) + VLC_ADD_PLUGINS([stream_out_duplicate stream_out_gather stream_out_display stream_out_transcode stream_out_bridge stream_out_mosaic_bridge]) # VLC_ADD_PLUGINS([stream_out_transrate]) AC_DEFINE(ENABLE_SOUT, 1, Define if you want the stream output support) @@ -1223,6 +1240,7 @@ AC_ARG_ENABLE(httpd, [ --enable-httpd HTTP daemon (default enabled)]) if test "${enable_httpd}" != "no" then + VLC_ADD_PLUGINS([http]) AC_DEFINE(ENABLE_HTTPD, 1, Define if you want the HTTP dameon support) fi @@ -1240,8 +1258,33 @@ dnl dnl TLS/SSL dnl AC_ARG_ENABLE(gnutls, - [ --enable-gnutls gnutls TLS/SSL support (default disabled)]) -AS_IF([test "${enable_gnutls}" == "yes"], VLC_ADD_PLUGINS([gnutls])) + [ --enable-gnutls gnutls TLS/SSL support (default enabled)]) +AS_IF([test "${enable_gnutls}" != "no"], [ + + gcrypt_LIBS="-lgpg-error" + AS_IF([test "${SYS}" = "mingw32"], + [gcrypt_LIBS="${gcrypt_LIBS} -lws2_32" + VLC_ADD_LDFLAGS([gnutls],[-lws2_32])] + ) + + gnutls_LIBS="-lgcrypt -lz ${gcrypt_LIBS}" + + AC_CHECK_HEADER(gcrypt.h, + [AC_CHECK_LIB(gcrypt, gcry_control, + [AC_CHECK_HEADER(gnutls/gnutls.h, + [AC_CHECK_LIB(gnutls, gnutls_certificate_verify_peers2, + [have_gnutls="yes"],[old_gnutls="yes"], ${gnutls_LIBS})])],, + ${gcrypt_LIBS})]) + + AS_IF([test "${have_gnutls}" = "yes"], [ + VLC_ADD_PLUGINS([gnutls]) + VLC_ADD_LDFLAGS([gnutls], [-lgnutls ${gnutls_LIBS}]) + ], [ + AS_IF([test "${enable_gnutls}" = "yes"], [ + AC_MSG_ERROR([gnutls not present or too old (version 1.0.17 required)])] + )] + )] +) dnl @@ -1431,7 +1474,7 @@ then AC_CHECK_HEADERS(dshow.h, [ VLC_ADD_PLUGINS([dshow]) VLC_ADD_CXXFLAGS([dshow],[]) - VLC_ADD_LDFLAGS([dshow],[-lole32 -loleaut32]) ]) + VLC_ADD_LDFLAGS([dshow],[-lole32 -loleaut32 -luuid]) ]) fi fi @@ -1465,7 +1508,10 @@ then if test -z "${with_dvbpsi_tree}" then AC_CHECK_HEADERS(dvbpsi/dr.h, - [ VLC_ADD_PLUGINS([mux_ts ts]) + [ VLC_ADD_PLUGINS([ts]) + if test "${enable_sout}" != "no"; then + VLC_ADD_BUILTINS([mux_ts]) + fi VLC_ADD_LDFLAGS([mux_ts ts dvb],[-ldvbpsi]) ], [ AC_MSG_WARN([cannot find libdvbpsi headers]) ], [#if defined( HAVE_STDINT_H ) @@ -1490,7 +1536,10 @@ then then dnl Use a custom libdvbpsi AC_MSG_RESULT(${real_dvbpsi_tree}/src/.libs/libdvbpsi.a) - VLC_ADD_BUILTINS([mux_ts ts]) + VLC_ADD_BUILTINS([ts]) + if test "${enable_sout}" != "no"; then + 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]) else @@ -1515,7 +1564,10 @@ then fi CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_test}" AC_CHECK_HEADERS([dvbpsi/dr.h],[ - VLC_ADD_PLUGINS([mux_ts ts]) + VLC_ADD_PLUGINS([ts]) + if test "${enable_sout}" != "no"; then + VLC_ADD_PLUGINS([mux_ts]) + fi VLC_ADD_CPPFLAGS([mux_ts ts dvb],[${CPPFLAGS_test}]) VLC_ADD_LDFLAGS([mux_ts ts dvb],[${LDFLAGS_test} -ldvbpsi]) @@ -1609,12 +1661,18 @@ fi if test "${enable_vcdx}" = "yes" then - PKG_CHECK_MODULES(LIBCDIO, libcdio >= 0.71, + PKG_CHECK_MODULES(LIBCDIO, libcdio >= 0.72, [VLC_ADD_LDFLAGS([vcdx],[$LIBCDIO_LIBS]) VLC_ADD_CFLAGS([vcdx],[$LIBCDIO_CFLAGS])], [AC_MSG_WARN(libcdio library not found) HAVE_VCDX=no]) + PKG_CHECK_MODULES(LIBCDIO, libiso9660 >= 0.72, + [VLC_ADD_LDFLAGS([vcdx],[$LIBISO9660_LIBS]) + VLC_ADD_CFLAGS([vcdx],[$LIBISO9660_CFLAGS])], + [AC_MSG_WARN(libiso9660 library not found) + HAVE_VCDX=no]) + PKG_CHECK_MODULES(VCDINFO, libvcdinfo >= 0.7.21, [AC_DEFINE(HAVE_VCDX, [], [Define for the VCD plugin using libcdio/libvcdinfo]) @@ -1667,7 +1725,8 @@ then if test "${SYS}" = "darwin" then VLC_ADD_PLUGINS([vcd cdda]) - VLC_ADD_LDFLAGS([vcd vcdx cdda],[-framework IOKit -framework CoreFoundation]) + VLC_ADD_LDFLAGS([vcd vcdx cdda cddax],[-framework IOKit -framework CoreFoundation]) + VLC_ADD_LDFLAGS([vcdx cddax],[-liconv]) fi fi @@ -1699,7 +1758,12 @@ then fi CPPFLAGS="${CPPFLAGS_save} -I${with_dvb}/include" AC_CHECK_HEADERS(linux/dvb/version.h linux/dvb/frontend.h, [ - VLC_ADD_PLUGINS([dvb]) + if test -z "${with_dvbpsi_tree}" + then + VLC_ADD_PLUGINS([dvb]) + else + VLC_ADD_BUILTINS([dvb]) + fi ],[]) CPPFLAGS="${CPPFLAGS_save}" fi @@ -1807,6 +1871,9 @@ if test "${enable_mkv}" != "no" -a "${CXX}" != ""; then [AC_MSG_RESULT([yes]) AC_CHECK_HEADERS(matroska/KaxAttachments.h) VLC_ADD_CXXFLAGS([mkv],[]) + if test "${SYS}" = "darwin"; then + VLC_ADD_CXXFLAGS([mkv],[-O1]) + fi AC_CHECK_LIB(ebml_pic, main, [ # We have ebml_pic, that's good, we can build an mkv.so plugin ! VLC_ADD_PLUGINS([mkv]) @@ -1936,8 +2003,11 @@ then AC_CHECK_HEADERS(ffmpeg/avcodec.h) AC_CHECK_HEADERS(postproc/postprocess.h) VLC_ADD_PLUGINS([ffmpeg]) - VLC_ADD_CFLAGS([ffmpeg],[`${FFMPEG_CONFIG} --cflags`]) - VLC_ADD_LDFLAGS([ffmpeg],[`${FFMPEG_CONFIG} --plugin-libs avcodec avformat postproc`]) + 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], @@ -1972,7 +2042,10 @@ then AC_CHECK_HEADERS(postproc/postprocess.h, [], [AC_MSG_ERROR([Missing header file postproc/postprocess.h.])] ) AC_CHECK_LIB(avcodec, avcodec_init, [ VLC_ADD_BUILTINS([ffmpeg]) - VLC_ADD_LDFLAGS([ffmpeg],[-lavcodec])], + VLC_ADD_LDFLAGS([ffmpeg],[-lavcodec]) + if test "${enable_sout}" != "no"; 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/ (cvs version is recommended). Alternatively you can use --disable-ffmpeg to disable the ffmpeg plugins.]) ]) AC_CHECK_LIB(avformat, av_open_input_stream, [ AC_DEFINE(HAVE_LIBAVFORMAT, 1, @@ -2037,13 +2110,16 @@ then fi VLC_ADD_BUILTINS([ffmpeg]) + if test "${enable_sout}" != "no"; then + VLC_ADD_BUILTINS([stream_out_switcher]) + fi VLC_ADD_LDFLAGS([ffmpeg],[-L${real_ffmpeg_tree}/libavcodec ${real_ffmpeg_tree}/libavcodec/libavcodec.a]) - VLC_ADD_CPPFLAGS([ffmpeg],[-I${real_ffmpeg_tree}/libavcodec]) + 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.]) VLC_ADD_LDFLAGS([ffmpeg],[-L${real_ffmpeg_tree}/libavformat ${real_ffmpeg_tree}/libavformat/libavformat.a]) - VLC_ADD_CPPFLAGS([ffmpeg],[-I${real_ffmpeg_tree}/libavformat]) + VLC_ADD_CPPFLAGS([ffmpeg stream_out_switcher],[-I${real_ffmpeg_tree}/libavformat]) fi fi fi @@ -2086,6 +2162,8 @@ then VLC_ADD_LDFLAGS([ffmpegaltivec],[-L${real_ffmpeg_tree}/libavformat -lavformataltivec -lz]) VLC_ADD_CPPFLAGS([ffmpegaltivec],[-I${real_ffmpeg_tree}/libavformat]) fi + VLC_ADD_LDFLAGS([stream_out_switcher],[-L${real_ffmpeg_tree}/libavcodec]) + VLC_ADD_CPPFLAGS([stream_out_switcher],[-I${real_ffmpeg_tree}/libavcodec -I${real_ffmpeg_tree}/libavformat]) fi fi @@ -2138,46 +2216,46 @@ then fi dnl -dnl toolame encoder plugin +dnl twolame encoder plugin dnl -AC_ARG_ENABLE(toolame, -[ --enable-toolame toolame codec (default disabled)]) -if test "${enable_toolame}" = "yes" +AC_ARG_ENABLE(twolame, +[ --enable-twolame twolame codec (default disabled)]) +if test "${enable_twolame}" = "yes" then - AC_ARG_WITH(toolame-tree, - [ --with-toolame-tree=PATH toolame tree for static linking]) - if test -n "${with_toolame_tree}" + AC_ARG_WITH(twolame-tree, + [ --with-twolame-tree=PATH twolame tree for static linking]) + if test -n "${with_twolame_tree}" then - AC_MSG_CHECKING(for libtoolame.a in ${with_toolame_tree}) - real_toolame_tree="`cd ${with_toolame_tree} 2>/dev/null && pwd`" - if test -z "${real_toolame_tree}" + AC_MSG_CHECKING(for libtwolame.a in ${with_twolame_tree}) + real_twolame_tree="`cd ${with_twolame_tree} 2>/dev/null && pwd`" + if test -z "${real_twolame_tree}" then dnl The given directory can't be found AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot cd to ${with_toolame_tree}]) + AC_MSG_ERROR([cannot cd to ${with_twolame_tree}]) fi - if test -f "${real_toolame_tree}/libtoolame/libtoolame.a" + if test -f "${real_twolame_tree}/src/libtwolame/.libs/libtwolame.a" then - dnl Use a custom toolame - AC_MSG_RESULT(${real_toolame_tree}/libtoolame/libtoolame.a) - VLC_ADD_BUILTINS([toolame]) - VLC_ADD_LDFLAGS([toolame],[${real_faad_tree}/libtoolame/libtoolame.a]) - VLC_ADD_CPPFLAGS([toolame],[-I${real_toolame_tree}/libtoolame]) + dnl Use a custom twolame + AC_MSG_RESULT(${real_twolame_tree}/src/libtwolame/.libs/libtwolame.a) + VLC_ADD_BUILTINS([twolame]) + VLC_ADD_LDFLAGS([twolame],[${real_twolame_tree}/src/libtwolame/.libs/libtwolame.a]) + VLC_ADD_CPPFLAGS([twolame],[-I${real_twolame_tree}/src/libtwolame]) else - dnl The given libtoolame wasn't built + dnl The given libtwolame wasn't built AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot find ${real_toolame_tree}/libtoolame/libtoolame.a, make sure you compiled libtoolame in ${with_toolame_tree}]) + AC_MSG_ERROR([cannot find ${real_twolame_tree}/src/libtwolame/.libs/libtwolame.a, make sure you compiled libtwolame in ${with_twolame_tree}]) fi else - CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_toolame}" - LDFLAGS="${LDFLAGS_save} ${LDFLAGS_toolame}" - AC_CHECK_HEADERS(toolame.h, , - [ AC_MSG_ERROR([Cannot find development header for libtoolame...]) ]) - AC_CHECK_LIB(toolame, toolame_init, [ - VLC_ADD_PLUGINS([toolame]) - VLC_ADD_LDFLAGS([toolame],[-ltoolame]) ], - [ AC_MSG_ERROR([Cannot find libtoolame library...]) ]) - LDFLAGS="${LDFLAGS_save}" + CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_twolame}" + LDFLAGS="${LDFLAGS_save} ${LDFLAGS_twolame}" + AC_CHECK_HEADERS(twolame.h, , + [ AC_MSG_ERROR([Cannot find development header for libtwolame...]) ]) + AC_CHECK_LIB(twolame, twolame_init, [ + VLC_ADD_PLUGINS([twolame]) + VLC_ADD_LDFLAGS([twolame],[-ltwolame]) ], + [ AC_MSG_ERROR([Cannot find libtwolame library...]) ]) + LDFLAGS="${LDFLAGS_save}" CPPFLAGS="${CPPFLAGS_save}" fi fi @@ -2290,6 +2368,11 @@ then fi fi +AC_ARG_WITH(a52-fixed, + [ --with-a52-fixed specify if liba52 has been compiled with fixed point support], + [ + VLC_ADD_CPPFLAGS([a52tofloat32],[-DLIBA52_FIXED]) ]) + dnl dnl DTS Coherent Acoustics decoder plugin dnl @@ -2365,7 +2448,6 @@ AC_ARG_ENABLE(flac, if test "${enable_flac}" = "yes" then AC_CHECK_HEADERS(FLAC/stream_decoder.h, [ - VLC_ADD_PLUGINS([flac flacdec]) VLC_ADD_LDFLAGS([flacdec],[-lFLAC]) ],[]) fi @@ -2393,7 +2475,7 @@ then then dnl Use a custom libmpeg2 AC_MSG_RESULT(${real_libmpeg2_tree}/libmpeg2/.libs/libmpeg2.a) - VLC_ADD_PLUGINS([libmpeg2]) + VLC_ADD_BUILTINS([libmpeg2]) VLC_ADD_LDFLAGS([libmpeg2],[-L${real_libmpeg2_tree}/libmpeg2/.libs -lmpeg2]) VLC_ADD_CFLAGS([libmpeg2],[-I${real_libmpeg2_tree}/include]) eval "`cd ${real_libmpeg2_tree}/include && ln -sf . mpeg2dec 2>/dev/null`" @@ -2459,7 +2541,7 @@ AC_ARG_ENABLE(speex, if test "${enable_speex}" != "no" then AC_CHECK_HEADERS(speex/speex.h, [ - LDFLAGS="${LDFLAGS_save} ${LDFLAGS_toolame}" + LDFLAGS="${LDFLAGS_save} ${LDFLAGS_speex}" AC_CHECK_LIB(speex, speex_decode_int, [ VLC_ADD_PLUGINS([speex]) VLC_ADD_LDFLAGS([speex],[-lspeex]) ], @@ -2881,7 +2963,9 @@ from http://www.freetype.org/, or configure with --disable-freetype. Have a nice if test "${FRIBIDI_CONFIG}" != "no" then VLC_ADD_CFLAGS([freetype], [`${FRIBIDI_CONFIG} --cflags` -DHAVE_FRIBIDI]) + VLC_ADD_CPPFLAGS([skins2], [`${FRIBIDI_CONFIG} --cflags` -DHAVE_FRIBIDI]) VLC_ADD_LDFLAGS([freetype], [`${FRIBIDI_CONFIG} --libs`]) + VLC_ADD_LDFLAGS([skins2], [`${FRIBIDI_CONFIG} --libs`]) fi fi fi @@ -3174,7 +3258,7 @@ if test "${enable_wingdi}" != "no"; then VLC_ADD_LDFLAGS([wingdi],[-lgdi32]) fi if test "${SYS}" = "mingwce"; then - VLC_ADD_PLUGINS([wingdi]) + VLC_ADD_PLUGINS([wingdi wingapi]) fi fi @@ -3252,25 +3336,25 @@ dnl dnl ALSA module dnl AC_ARG_ENABLE(alsa, - [ --enable-alsa ALSA sound support for Linux (default enabled)], - [if test "${enable_alsa}" != "no" - then - 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 - 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); }], - 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]) - else - if test "${enable_alsa}" = "yes"; then - AC_MSG_ERROR([Could not find ALSA development headers]) - fi - fi - fi]) + [ --enable-alsa ALSA sound support for Linux (default enabled)]) +if test "${enable_alsa}" != "no" +then + 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 + 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); }], + 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]) + else + if test "${enable_alsa}" = "yes"; then + AC_MSG_ERROR([Could not find ALSA development headers]) + fi + fi +fi dnl dnl win32 waveOut plugin @@ -3282,7 +3366,7 @@ if test "${enable_waveout}" != "no"; then VLC_ADD_PLUGINS([waveout]) VLC_ADD_LDFLAGS([waveout],[-lwinmm]) fi - if "${SYS}" = "mingwce"; then + if test "${SYS}" = "mingwce"; then VLC_ADD_PLUGINS([waveout]) fi fi @@ -3296,14 +3380,8 @@ if test "${enable_coreaudio}" != "no" && (test "${SYS}" = "darwin" || test "${enable_coreaudio}" = "yes") then AC_CHECK_HEADERS(CoreAudio/CoreAudio.h, - [ VLC_ADD_BUILTINS([coreaudio]) - VLC_ADD_LDFLAGS([coreaudio],[-framework CoreAudio]) - AC_MSG_CHECKING(for kAudioConverterPrimeMethod in AudioToolbox/AudioConverter.h) - AC_EGREP_HEADER(kAudioConverterPrimeMethod,AudioToolbox/AudioConverter.h,[ - AC_MSG_RESULT(yes) - VLC_ADD_PLUGINS([coreaudio_resampler]) - VLC_ADD_LDFLAGS([coreaudio_resampler],[-framework AudioToolbox]) - ],[ AC_MSG_RESULT(no) ]) + [ VLC_ADD_BUILTINS([coreaudio auhal]) + VLC_ADD_LDFLAGS([coreaudio auhal],[-framework CoreAudio -framework AudioUnit -framework AudioToolbox]) ], [ AC_MSG_ERROR([cannot find CoreAudio headers]) ]) fi @@ -3526,8 +3604,15 @@ then then WXWINDOWS_PATH="${with_wx_config_path}:${PATH}" fi ]) + WXWINDOWS_NAME="wx-config" + AC_ARG_WITH(wx-config, + [ --with-wx-config=NAME wx-config name (default is wx-config)], + [ if test "${with_wx_config}" != "no" + then + WXWINDOWS_NAME="${with_wx_config}" + fi ]) # look for wx-config - AC_PATH_PROG(WX_CONFIG, wx-config, no, ${WXWINDOWS_PATH}) + AC_PATH_PROG(WX_CONFIG, ${WXWINDOWS_NAME}, no, ${WXWINDOWS_PATH}) if test "${WX_CONFIG}" != "no" -a "${CXX}" != "" then if expr 2.3.0 \> `${WX_CONFIG} --version` >/dev/null @@ -3569,9 +3654,16 @@ dnl dnl WinCE GUI module dnl if test "${SYS}" = "mingwce"; then - VLC_ADD_PLUGINS([wince]) + VLC_ADD_BUILTINS([wince]) VLC_ADD_CXXFLAGS([wince],[]) VLC_ADD_LDFLAGS([wince],[-lcommctrl -lcommdlg -laygshell]) + dnl Gross hack + VLC_ADD_LDFLAGS([wince],[\\\${top_builddir}modules/gui/wince/wince_rc.o]) +elif test "${SYS}" = "mingw32"; then + VLC_ADD_CXXFLAGS([wince],[]) + VLC_ADD_LDFLAGS([wince],[-lcomctl32 -lcomdlg32 -lgdi32 -lole32]) + dnl Gross hack + VLC_ADD_LDFLAGS([wince],[\\\${top_builddir}modules/gui/wince/wince_rc.o]) fi dnl @@ -3922,45 +4014,6 @@ AM_CONDITIONAL(ENABLE_CORBA, test "$enablecorba" = "true") AC_ARG_WITH(,[Misc options:]) -dnl -dnl GnuTLS-based TLS/SSL support -dnl -AC_ARG_WITH(libgnutls-prefix, - [ --with-libgnutls-prefix=PREFIX set prefix where libgnutls is installed], - libgnutls_config_prefix="$withval", libgnutls_config_prefix="") - -AS_IF([test x$libgnutls_config_prefix != x], - AS_IF([test x${LIBGNUTLS_CONFIG+set} != xset], - LIBGNUTLS_CONFIG=$libgnutls_config_prefix/bin/libgnutls-config - ) -) - -if test "x$enable_gnutls" == "xyes"; then - AC_PATH_PROG(LIBGNUTLS_CONFIG, libgnutls-config, no) - no_libgnutls="" - - AC_MSG_CHECKING(for libgnutls - version >= 1.0.0) - AS_IF([test "$LIBGNUTLS_CONFIG" = "no"], - no_libgnutls=yes - , - LIBGNUTLS_CFLAGS=`$LIBGNUTLS_CONFIG $libgnutls_config_args --cflags` - LIBGNUTLS_LIBS=`$LIBGNUTLS_CONFIG $libgnutls_config_args --libs` - libgnutls_config_version=`$LIBGNUTLS_CONFIG $libgnutls_config_args --version` - ) - - AS_IF([test "x$no_libgnutls" = x], - AC_MSG_RESULT(yes) - VLC_ADD_CFLAGS([gnutls], [$LIBGNUTLS_CFLAGS]) - VLC_ADD_LDFLAGS([gnutls], [$LIBGNUTLS_LIBS]) - AC_DEFINE(HAVE_GNUTLS, 1, Define to 1 if you have libgnutls) - , - AC_MSG_RESULT(no) - LIBGNUTLS_CFLAGS="" - LIBGNUTLS_LIBS="" - AC_MSG_ERROR(gnutls TLS/SSL support cannot be compiled) - ) -fi - dnl dnl Endianness check, AC_C_BIGENDIAN doesn't work if we are cross-compiling dnl @@ -4030,10 +4083,10 @@ if test "${enable_activex}" != "no" then if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin" then - AC_CHECK_PROG(MIDL, midl, :) + AC_CHECK_PROGS(MIDL, [midl widl], no) AC_CHECK_HEADERS(ole2.h olectl.h, [ VLC_ADD_CXXFLAGS([activex],[-fno-exceptions]) - VLC_ADD_LDFLAGS([activex],[-lole32 -loleaut32 -luuid]) + VLC_ADD_LDFLAGS([activex],[-lole32 -loleaut32 -luuid -lshlwapi]) AC_CHECK_HEADERS(objsafe.h, VLC_ADD_CXXFLAGS([activex],[-DHAVE_OBJSAFE_HEADER]) ) @@ -4044,7 +4097,7 @@ then fi fi AC_ARG_VAR(MIDL, [Microsoft IDL compiler (Win32 platform only)]) -AM_CONDITIONAL(HAS_MIDL_COMPILER, test -n "${MIDL}") +AM_CONDITIONAL(HAS_MIDL_COMPILER, test "${MIDL}" != "no") AM_CONDITIONAL(BUILD_ACTIVEX,${activex}) dnl @@ -4104,6 +4157,12 @@ dnl Not necessarily in ${PATH} if test -z "${XPIDL}" -o ! -x "${XPIDL}"; then XPIDL="/usr/lib/mozilla/xpidl" fi +AS_IF([test "${MOZILLA_CONFIG}"], [ + if test -z "${XPIDL_INCL}"; then + XPIDL_INCL="`${MOZILLA_CONFIG} --cflags plugin xpcom java` \ + `${MOZILLA_CONFIG} --idlflags plugin xpcom java` " + fi +]) AM_CONDITIONAL(BUILD_MOZILLA,${mozilla}) dnl @@ -4197,6 +4256,7 @@ fi dnl Export automake variables if ${plugin_support} then + AC_DEFINE(HAVE_DYNAMIC_PLUGINS, 1, Define if we have support for dynamic plugins) for plugin in `echo ${PLUGINS}` do eval "${plugin}_p=yes" @@ -4303,6 +4363,7 @@ AC_CONFIG_FILES([ modules/access/vcd/Makefile modules/access/vcdx/Makefile modules/access/screen/Makefile + modules/access_filter/Makefile modules/access_output/Makefile modules/audio_filter/Makefile modules/audio_filter/channel_mixer/Makefile