X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=configure.ac;h=1518f44569777ef77c990209637fa7af4739eb44;hb=b02d9f27b3c800884b5b40ade1de9641ed303d41;hp=d7c9656cf5e027855469dd5226b7b8398b5dcca3;hpb=e7b46c6389c3759c8b7b4a29302cad3fe26d60ac;p=vlc diff --git a/configure.ac b/configure.ac index d7c9656cf5..1518f44569 100644 --- a/configure.ac +++ b/configure.ac @@ -1,6 +1,6 @@ dnl Autoconf settings for vlc -AC_INIT(vlc,0.9.0-git) +AC_INIT(vlc, 0.9.0-test3) VERSION_MAJOR="0" VERSION_MINOR="9" VERSION_REVISION="0" @@ -57,7 +57,7 @@ dnl Check for tools dnl AC_PROG_CC_C99 AC_USE_SYSTEM_EXTENSIONS -AC_DEFINE([_FORTIFY_SOURCE], 2, [Define to `2' to get glibc warnings.]) +AC_DEFINE([_FORTIFY_SOURCE], 2, [Define to '2' to get glibc warnings.]) AM_PROG_CC_C_O AC_PROG_CXX AC_PROG_CPP @@ -80,6 +80,17 @@ AC_C_CONST AC_C_INLINE AC_C_RESTRICT +dnl Allow binary package maintainer to pass a custom string to avoid +dnl cache problem +AC_ARG_WITH(binary-version, + AS_HELP_STRING([--with-binary-version=STRING], + [To avoid plugins cache problem between binary version]),[],[]) +AS_IF([test -n "${with_binary_version}"],[ + AC_DEFINE_UNQUOTED([DISTRO_VERSION],["${with_binary_version}"], + [Binary specific version]) + ]) + + dnl dnl Check for the contrib directory dnl @@ -119,24 +130,12 @@ AC_ARG_WITH(contrib, LDFLAGS="${LDFLAGS} -L${topdir}/extras/contrib/lib" LDFLAGS_save="${LDFLAGS_save} -L${topdir}/extras/contrib/lib" - if test -z $with_live555_tree; then - with_live555_tree=${topdir}/extras/contrib/src/live - fi - if test -z $with_goom_tree; then - with_goom_tree=${topdir}/extras/contrib/src/goom - fi if test -z $with_mozilla_sdk_path; then with_mozilla_sdk_path=${topdir}/extras/contrib/gecko-sdk fi 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 -z $with_a52_tree; then - with_a52_tree=${topdir}/extras/contrib/src/a52dec - fi if test ".`uname -s`" = ".Darwin"; then export LD_LIBRARY_PATH=${topdir}/extras/contrib/lib:$LD_LIBRARY_PATH @@ -192,12 +191,13 @@ case "${host_os}" in VLC_ADD_LDFLAGS([mkv mp4], [-Wl,-framework,IOKit,-framework,CoreFoundation]) VLC_ADD_LDFLAGS([vlc],[-Wl,-undefined,dynamic_lookup]) VLC_ADD_LDFLAGS([libvlc_control],[-Wl,dynamic_lookup]) - VLC_ADD_LDFLAGS([ffmpeg i420_rgb_mmx x264],[-Wl,-read_only_relocs,suppress]) + VLC_ADD_LDFLAGS([avcodec avformat swscale imgresample postproc i420_rgb_mmx x264],[-Wl,-read_only_relocs,suppress]) VLC_ADD_CFLAGS([motion],[-fconstant-cfstrings]) - VLC_ADD_LDFLAGS([libvlc],[-Wl,-framework,Cocoa,-framework,CoreFoundation]) + VLC_ADD_LDFLAGS([libvlc],[-Wl,-framework,CoreFoundation]) VLC_ADD_LDFLAGS([motion],[-Wl,-framework,IOKit,-framework,CoreFoundation]) AC_ARG_ENABLE(macosx-defaults, - [ --enable-macosx-defaults Build the default configuration on Mac OS X (default enabled)]) + AS_HELP_STRING([--enable-macosx-defaults],[Build the default configuration + on Mac OS X (default enabled)])) if test "x${enable_macosx_defaults}" != "xno" then echo "" @@ -231,6 +231,8 @@ case "${host_os}" in echo " Assuming --enable-twolame" enable_realrtsp="yes" echo " Assuming --enable-realrtsp" + enable_update_check="yes" + echo " Assuming --enable-update-check" enable_skins2="no" echo " Assuming --disable-skins2" @@ -313,13 +315,13 @@ case "${host_os}" in VLC_ADD_LDFLAGS([vlc],[-mwindows]) VLC_ADD_LIBS([activex mozilla],[-lgdi32]) VLC_ADD_LIBS([cdda vcdx cddax sdl_image],[-lwinmm]) - VLC_ADD_LIBS([access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp access_output_shout sap slp http stream_out_standard stream_out_rtp vod_rtsp access_realrtsp telnet rc netsync gnutls growl_udp flac ts audioscrobbler lua],[-lws2_32]) + VLC_ADD_LIBS([access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp access_output_shout access_output_rtmp sap slp http stream_out_standard stream_out_rtp vod_rtsp access_realrtsp rtp telnet rc netsync gnutls growl_udp flac ts audioscrobbler lua remoteosd],[-lws2_32]) fi if test "${SYS}" = "mingwce"; then # add ws2 for closesocket, select, recv VLC_ADD_CPPFLAGS([libvlc vlc],[-Dmain(a,b)=maince(a,b)]) VLC_ADD_LDFLAGS([libvlc vlc],[-e WinMainCRTStartup]) - VLC_ADD_LIBS([libvlc access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp sap http netsync audioscrobbler growl rtp stream_out_rtp],[-lws2]) + VLC_ADD_LIBS([libvlc access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp sap http netsync audioscrobbler growl rtp stream_out_rtp remoteosd],[-lws2]) VLC_ADD_LIBS([libvlc],[-lmmtimer]) fi ;; @@ -417,8 +419,6 @@ dnl dnl Iconv stuff dnl AM_ICONV -AS_IF([test "$am_cv_func_iconv" != "yes"], - [AC_MSG_ERROR([libiconv is needed for VLC to work properly])]) VLC_ADD_CFLAGS([libvlc],[${INCICONV}]) VLC_ADD_LIBS([libvlc],[${LTLIBICONV}]) @@ -518,7 +518,7 @@ AC_CHECK_FUNCS(connect,,[ AC_CHECK_FUNCS(send,,[ AC_CHECK_LIB(socket,send,[ - VLC_ADD_LIBS([access_http access_mms access_udp access_tcp access_ftp access_rtmp sap access_output_udp access_output_rtmp stream_out_standard growl_udp],[-lsocket]) + VLC_ADD_LIBS([access_http access_mms access_udp access_tcp access_ftp access_rtmp sap access_output_udp access_output_rtmp stream_out_standard growl_udp remoteosd],[-lsocket]) ]) ]) @@ -645,7 +645,7 @@ AC_CHECK_LIB(m,cos,[ VLC_ADD_LIBS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom visual panoramix rotate noise grain],[-lm]) ]) AC_CHECK_LIB(m,pow,[ - VLC_ADD_LIBS([ffmpeg ffmpegaltivec stream_out_transrate i420_rgb faad twolame equalizer spatializer param_eq libvlc vorbis freetype mod mpc dmo quicktime realaudio galaktos opengl],[-lm]) + VLC_ADD_LIBS([avcodec avformat swscale imgresample postproc ffmpegaltivec stream_out_transrate i420_rgb faad twolame equalizer spatializer param_eq libvlc vorbis freetype mod mpc dmo quicktime realaudio realvideo galaktos opengl],[-lm]) ]) AC_CHECK_LIB(m,sqrt,[ VLC_ADD_LIBS([headphone_channel_mixer normvol speex mono colorthres extract],[-lm]) @@ -730,7 +730,7 @@ if test "${ac_cv_have_plugins}" = "no"; then ac_cv_my_have_dlopen=yes, AC_CHECK_LIB(dl, dlopen, ac_cv_my_have_dlopen=yes - VLC_ADD_LIBS([libvlc realaudio],[-ldl]), + VLC_ADD_LIBS([libvlc realaudio realvideo],[-ldl]), AC_CHECK_LIB(svld, dlopen, ac_cv_my_have_dlopen=yes VLC_ADD_LIBS([libvlc],[-lsvld])))) @@ -790,7 +790,7 @@ AC_EGREP_HEADER(strncasecmp,strings.h,[ dnl Check for headers AC_CHECK_HEADERS(signal.h time.h errno.h stdint.h stdbool.h getopt.h strings.h inttypes.h sys/int_types.h wchar.h locale.h) -AC_CHECK_HEADERS(sys/sockio.h fcntl.h sys/types.h sys/time.h sys/times.h sys/ioctl.h sys/stat.h) +AC_CHECK_HEADERS(sys/sockio.h fcntl.h sys/types.h sys/time.h sys/times.h sys/ioctl.h sys/stat.h xlocale.h) AC_CHECK_HEADERS([arpa/inet.h netinet/in.h netinet/udplite.h]) AC_CHECK_HEADERS([net/if.h], [], [], [ @@ -851,7 +851,9 @@ dnl Find where are the X headers and libraries AC_PATH_XTRA() dnl it seems that autoconf do the pkg-config detection only for the first PKG_CHECK_MODULES in the configure.ac ( which is logical) but in our case it is nested in a if so it was not working if you're not on linux or have disable hal. - +dnl Make PKG_CONFIG_PATH precious so that it appears in the help and get saved +AC_ARG_VAR(PKG_CONFIG_PATH, + [Paths where to find .pc not at the default location]) PKG_PROG_PKG_CONFIG() dnl Check for hal @@ -861,20 +863,13 @@ AC_ARG_ENABLE(hal, if test "${enable_hal}" != "no" then PKG_CHECK_MODULES(HAL, hal >= 0.5.0, - [ AC_DEFINE( HAVE_HAL_1, 1 , [Define if you have the new HAL library API]) + [ AC_DEFINE( HAVE_HAL, 1, [Define if you have the HAL library] ) VLC_ADD_PLUGIN([hal]) VLC_ADD_PLUGIN([probe_hal]) VLC_ADD_LIBS([libvlc hal probe_hal],[$HAL_LIBS]) - VLC_ADD_CFLAGS([libvlc hal probe_hal],[$HAL_CFLAGS])], - dnl No hal 0.5 Test for 0.2 - [ PKG_CHECK_MODULES( HAL, hal >= 0.2.97, - [AC_DEFINE(HAVE_HAL, 1, [Define if you have the HAL library]) - VLC_ADD_PLUGIN([hal]) - VLC_ADD_LIBS([libvlc hal],[$HAL_LIBS]) - VLC_ADD_CFLAGS([libvlc hal],[$HAL_CFLAGS])], - [AC_MSG_WARN(HAL library not found)]) - ] + VLC_ADD_CFLAGS([libvlc hal probe_hal],[$HAL_CFLAGS])], + [AC_MSG_WARN([libhal >= 0.5.0 was not found. Install libhal-dev ?])] ) fi @@ -887,10 +882,7 @@ if test "${enable_dbus}" != "no" then dnl api stable dbus PKG_CHECK_MODULES(DBUS, dbus-1 >= 1.0.0, - [ AC_DEFINE( HAVE_DBUS_3, 1, [Define if you have the D-BUS library API >= 1.0.0] ) - 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] ) + [ AC_DEFINE( HAVE_DBUS, 1, [Define if you have the D-BUS library] ) VLC_ADD_LIBS([screensaver libvlc],[$DBUS_LIBS]) VLC_ADD_CFLAGS([screensaver libvlc],[$DBUS_CFLAGS]) dnl Check for dbus control interface @@ -902,7 +894,8 @@ then VLC_ADD_CFLAGS([dbus],[$DBUS_CFLAGS]) fi dnl Check for Telepathy - AC_ARG_ENABLE(telepathy, [ --enable-telepathy Telepathy Presence plugin through DBus(default enabled)]) + AC_ARG_ENABLE(telepathy, + AS_HELP_STRING([--enable-telepathy],[Telepathy Presence plugin through DBus(default enabled)])) if test "${enable_telepathy}" != "no"; then VLC_ADD_PLUGIN([telepathy]) VLC_ADD_LIBS([telepathy],[$DBUS_LIBS]) @@ -912,49 +905,8 @@ then VLC_ADD_PLUGIN([inhibit]) VLC_ADD_LIBS([inhibit],[$DBUS_LIBS]) VLC_ADD_CFLAGS([inhibit],[$DBUS_CFLAGS]) - ], - if ${PKG_CONFIG} --exists dbus-1 - then - [AC_ARG_ENABLE(old-dbus, - [ --enable-old-dbus Deprecated D-Bus support (default disabled)])] - - if test "${enable_old_dbus}" != "yes" - then - echo "" - echo "****** WARNING **** WARNING ***** WARNING *************" - echo "*** Your D-Bus version is < 1.0.0" - echo "*** You are using old and buggy software and so" - echo "*** D-Bus support has been disabled." - echo "*** Please upgrade D-Bus : http://dbus.freedesktop.org" - echo "*** Alternatively you can force the use of your old and" - echo "*** buggy D-Bus version by specifying --enable-old-dbus" - echo "*******************************************************" - echo "" - else - dnl not too old dbus - [ 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_LIBS([screensaver],[$DBUS_LIBS]) - VLC_ADD_CFLAGS([screensaver],[$DBUS_CFLAGS])], - dnl older dbus - [ 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_LIBS([screensaver],[$DBUS_LIBS]) - VLC_ADD_CFLAGS([screensaver],[$DBUS_CFLAGS])], - 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_LIBS([screensaver],[$DBUS_LIBS]) - VLC_ADD_CFLAGS([screensaver],[$DBUS_CFLAGS])], - [AC_MSG_WARN(DBUS library not found)]) - ] - )] - )] - fi - fi + ], + [AC_MSG_ERROR([Couldn't find DBus >= 1.0.0, install libdbus-dev ?])] ) fi ;; @@ -1066,16 +1018,6 @@ if test "${ac_cv_c_omit_frame_pointer}" != "no"; then CFLAGS_OPTIM_NODEBUG="${CFLAGS_OPTIM_NODEBUG} -fomit-frame-pointer" fi -dnl Check for -mdynamic-no-pic -dnl AC_CACHE_CHECK([if \$CC accepts -mdynamic-no-pic], -dnl [ac_cv_c_dynamic_no_pic], -dnl [CFLAGS="${CFLAGS_save} -mdynamic-no-pic" -dnl AC_TRY_COMPILE([],,ac_cv_c_dynamic_no_pic=yes, ac_cv_c_dynamic_no_pic=no)]) -dnl AS_IF([test "${ac_cv_c_dynamic_no_pic}" != "no"], [ -dnl VLC_ADD_CFLAGS([builtin],[-mdynamic-no-pic]) -dnl VLC_ADD_CFLAGS([libvlc],[-mdynamic-no-pic]) -dnl ]) - dnl Check for Darwin plugin linking flags AC_CACHE_CHECK([if \$CC accepts -bundle -undefined error], [ac_cv_ld_darwin], @@ -1085,20 +1027,6 @@ if test "${ac_cv_ld_darwin}" != "no"; then VLC_ADD_LDFLAGS([plugin],[-bundle -undefined error]) fi -dnl Check for standard plugin linking flags -dnl BeOS' gcc needs -nostart instead of -shared, even if -shared isn't harmful (just a warning) -dnl AS_IF([test "${SYS}" = "beos"], [ -dnl VLC_ADD_LDFLAGS([plugin mozilla],[-nostart]) -dnl ], [ -dnl AC_CACHE_CHECK([if \$CC accepts -shared], -dnl [ac_cv_ld_plugins], -dnl [CFLAGS="${CFLAGS_save} -shared" -dnl AC_TRY_COMPILE([],, ac_cv_ld_plugins=yes, ac_cv_ld_plugins=no)]) -dnl AS_IF([test "${ac_cv_ld_plugins}" != "no"], [ -dnl VLC_ADD_LDFLAGS([plugin mozilla],[-shared]) -dnl ]) -dnl ]) - dnl Checks for __attribute__(aligned()) directive AC_CACHE_CHECK([__attribute__ ((aligned ())) support], [ac_cv_c_attribute_aligned], @@ -1115,19 +1043,6 @@ if test "${ac_cv_c_attribute_aligned}" != "0"; then [${ac_cv_c_attribute_aligned}],[Maximum supported data alignment]) fi -dnl Checks for __attribute__(format()) directive -AC_CACHE_CHECK([__attribute__ ((format ())) support with function pointers], - [ac_cv_c_attribute_format], - [ac_cv_c_attribute_format=no - CFLAGS="${CFLAGS_save} -Werror" - AC_TRY_COMPILE([], - [static void (*pf_printf)(const char *, ...) __attribute__ ((format(printf,1,2)));(void)pf_printf;], - [ac_cv_c_attribute_format=yes]) - CFLAGS="${CFLAGS_save}"]) -if test "${ac_cv_c_attribute_format}" != "no"; then - AC_DEFINE(HAVE_ATTRIBUTE_FORMAT, 1, Support for __attribute__((format())) with function pointers) -fi - dnl Check for __attribute__((packed)) AC_CACHE_CHECK([for __attribute__((packed))], [ac_cv_c_attribute_packed], @@ -1150,6 +1065,10 @@ case "${host_cpu}" in ;; esac +dnl Check for backtrace() support +AC_CHECK_HEADERS(execinfo.h) +AC_CHECK_FUNCS(backtrace) + dnl dnl Enable profiling dnl @@ -1164,6 +1083,7 @@ dnl dnl default modules dnl VLC_ADD_PLUGIN([dummy]) +VLC_ADD_PLUGIN([stats]) VLC_ADD_PLUGIN([logger]) VLC_ADD_PLUGIN([memcpy]) dnl Demuxers: @@ -1172,34 +1092,11 @@ VLC_ADD_PLUGIN([mpga]) VLC_ADD_PLUGIN([m4v]) VLC_ADD_PLUGIN([m4a]) VLC_ADD_PLUGIN([h264]) -VLC_ADD_PLUGIN([vc1]) -VLC_ADD_PLUGIN([demux_cdg]) VLC_ADD_PLUGIN([cdg]) VLC_ADD_PLUGIN([ps]) -VLC_ADD_PLUGIN([pva]) VLC_ADD_PLUGIN([avi]) VLC_ADD_PLUGIN([asf]) VLC_ADD_PLUGIN([mp4]) -VLC_ADD_PLUGIN([rawdv]) -VLC_ADD_PLUGIN([rawvid]) -VLC_ADD_PLUGIN([nsv]) -VLC_ADD_PLUGIN([real]) -VLC_ADD_PLUGIN([aiff]) -VLC_ADD_PLUGIN([mjpeg]) -VLC_ADD_PLUGIN([wav]) -VLC_ADD_PLUGIN([voc]) -VLC_ADD_PLUGIN([smf]) -VLC_ADD_PLUGIN([demuxdump]) -VLC_ADD_PLUGIN([flacsys]) -VLC_ADD_PLUGIN([tta]) -VLC_ADD_PLUGIN([subtitle]) -VLC_ADD_PLUGIN([vobsub]) -VLC_ADD_PLUGIN([a52sys]) -VLC_ADD_PLUGIN([dtssys]) -VLC_ADD_PLUGIN([au]) -VLC_ADD_PLUGIN([ty]) -VLC_ADD_PLUGIN([xa]) -VLC_ADD_PLUGIN([nuv]) dnl Text codecs: VLC_ADD_PLUGIN([cvdsub]) VLC_ADD_PLUGIN([svcdsub]) @@ -1237,6 +1134,7 @@ VLC_ADD_PLUGIN([extract]) VLC_ADD_PLUGIN([sharpen]) VLC_ADD_PLUGIN([seamcarving]) VLC_ADD_PLUGIN([croppadd]) +VLC_ADD_PLUGIN([canvas]) VLC_ADD_PLUGIN([blendbench]) VLC_ADD_PLUGIN([blend]) VLC_ADD_PLUGIN([scale]) @@ -1283,7 +1181,6 @@ AC_LANG_POP(C++) if test "${SYS}" != "mingwce"; then VLC_ADD_PLUGIN([gestures]) VLC_ADD_PLUGIN([rc]) - VLC_ADD_PLUGIN([telnet]) VLC_ADD_PLUGIN([hotkeys]) VLC_ADD_PLUGIN([showintf]) VLC_ADD_PLUGIN([marq]) @@ -1308,7 +1205,7 @@ if test "${SYS}" != "mingwce"; then VLC_ADD_PLUGIN([i422_i420]) VLC_ADD_PLUGIN([yuy2_i422]) VLC_ADD_PLUGIN([yuy2_i420]) - VLC_ADD_PLUGIN([chroma_chain]) + VLC_ADD_PLUGIN([chain]) VLC_ADD_PLUGIN([aout_file]) VLC_ADD_PLUGIN([linear_resampler]) VLC_ADD_PLUGIN([bandlimited_resampler]) @@ -1320,6 +1217,7 @@ if test "${SYS}" != "mingwce"; then VLC_ADD_PLUGIN([normvol]) VLC_ADD_PLUGIN([equalizer]) VLC_ADD_PLUGIN([param_eq]) + VLC_ADD_PLUGIN([scaletempo]) VLC_ADD_PLUGIN([converter_float]) VLC_ADD_PLUGIN([a52tospdif]) VLC_ADD_PLUGIN([dtstospdif]) @@ -1334,6 +1232,7 @@ if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then VLC_ADD_PLUGIN([screensaver]) VLC_ADD_PLUGIN([motion]) VLC_ADD_PLUGIN([dynamicoverlay]) + VLC_ADD_PLUGIN([signals]) elif test "${SYS}" != "mingwce"; then VLC_ADD_PLUGIN([ntservice]) VLC_ADD_PLUGIN([access_smb]) @@ -1358,7 +1257,7 @@ dnl Check for fully working MMX intrinsics dnl We need support for -mmmx, we need , and we also need a dnl working compiler (http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23963) AC_ARG_ENABLE(mmx, -[ --disable-mmx disable MMX optimizations (default auto)],,[ +[ --disable-mmx disable MMX optimizations (default auto)],,[ case "${host_cpu}" in i?86|x86_64) enable_mmx="yes" @@ -1425,7 +1324,8 @@ dnl Check for fully workin SSE2 intrinsics dnl We need support for -mmmx, we need , and we also need a dnl working compiler (http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23963) AC_ARG_ENABLE(sse, -[ --disable-sse disable SSE (1 and 2) optimizations (default auto)],, [ +[ --disable-sse disable SSE (1 and 2) optimizations (default auto)] +,, [ case "${host_cpu}" in i686|x86_64) enable_sse=yes @@ -1721,7 +1621,8 @@ fi dnl Lua modules AC_ARG_ENABLE(lua, - [ --enable-lua lua playlist, metafetcher and interface plugins (default enabled)]) + AS_HELP_STRING([--enable-lua],[lua playlist, metafetcher and interface + plugins (default enabled)])) if test "${enable_lua}" != "no" then PKG_CHECK_MODULES(LUA, lua5.1, @@ -1768,15 +1669,35 @@ then fi AM_CONDITIONAL(BUILD_HTTPD, [test "${enable_httpd}" != "no"]) +dnl +dnl libproxy support +dnl +AC_ARG_ENABLE(libproxy, + [ --enable-libproxy libproxy support (default auto)]) +AS_IF([test "${enable_libproxy}" != "no"], [ + AC_CHECK_HEADERS(proxy.h, [ + VLC_ADD_LIBS([access_http],[-lproxy]) + ], [ + AS_IF([test "x${enable_libproxy}" != "x"], [ + AC_MSG_ERROR([libproxy could not be found on your system]) + ]) + ]) +]) + dnl dnl VideoLAN manager dnl AC_ARG_ENABLE(vlm, - [ --enable-vlm VideoLAN manager (default enabled)]) -if test "${enable_vlm}" != "no" -then - AC_DEFINE(ENABLE_VLM, 1, Define if you want the VideoLAN manager support) -fi + [ --enable-vlm VideoLAN manager (default enabled)],, + [enable_vlm="${enable_sout}"]) +AS_IF([test "${enable_vlm}" != "no"], [ + AS_IF([test "${enable_sout}" = "no"], [ + AC_MSG_ERROR([VLM requires the stream output. Do not use --disable-sout.]) + ]) + AC_DEFINE(ENABLE_VLM, 1, [Define if you want the VideoLAN manager support]) + VLC_ADD_PLUGIN([telnet]) +]) +AM_CONDITIONAL([ENABLE_VLM], [test "${enable_vlm}" != "no"]) dnl dnl Growl notification plugin @@ -1889,6 +1810,22 @@ if test "${enable_live555}" != "no"; then CPPFLAGS_live555="${CPPFLAGS_live555} -DSOLARIS" fi CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_live555}" + + AC_CHECK_HEADERS(liveMedia_version.hh, [ + AC_MSG_CHECKING(for liveMedia version < 1214895600 ) + AC_EGREP_CPP(yes, + [#include + #ifdef LIVEMEDIA_LIBRARY_VERSION_INT + #if LIVEMEDIA_LIBRARY_VERSION_INT < 1214895600 + yes + #endif + #endif], + [AC_MSG_RESULT([yes]) + AC_MSG_ERROR([Your version of liveMedia is too old: you may get a more recent one from http://www.live555.com/liveMedia. +lternatively you can use --disable-live555 to disable the liveMedia plugin.]) + ]) + ]) + AC_CHECK_HEADERS(liveMedia.hh, [ VLC_ADD_CXXFLAGS([live555], [${CPPFLAGS_live555}]) AC_CHECK_LIB(liveMedia_pic, main, [ @@ -1900,8 +1837,8 @@ if test "${enable_live555}" != "no"; then # We only have -lliveMedia, do builtins VLC_ADD_PLUGIN([live555]) VLC_ADD_LIBS([live555], [-lliveMedia -lgroupsock -lBasicUsageEnvironment -lUsageEnvironment]) - ]) - ]) + ],[],[-lgroupsock -lBasicUsageEnvironment -lUsageEnvironment]) + ],[-lgroupsock_pic -lBasicUsageEnvironment_pic -lUsageEnvironment_pic] ) if test "${SYS}" = "mingw32"; then # add ws2_32 for closesocket, select, recv VLC_ADD_LIBS([live555],[-lws2_32]) @@ -1920,6 +1857,21 @@ if test "${enable_live555}" != "no"; then if test -f "${real_live555_tree}/liveMedia/libliveMedia.a"; then AC_MSG_RESULT(${real_live555_tree}/liveMedia/libliveMedia.a) + AC_CHECK_HEADERS(${real_live555_tree}/liveMedia/include/liveMedia_version.hh,[ + AC_MSG_CHECKING(for liveMedia version < 1214895600 ) + AC_EGREP_CPP(yes, + [#include "${real_live555_tree}/liveMedia/include/liveMedia_version.hh" + #ifdef LIVEMEDIA_LIBRARY_VERSION_INT + #if LIVEMEDIA_LIBRARY_VERSION_INT < 1214895600 + yes + #endif + #endif], + [AC_MSG_RESULT([yes]) + AC_MSG_ERROR([Your version of liveMedia is too old: you may get a more recent one from http://www.live555.com/liveMedia. +lternatively you can use --disable-live555 to disable the liveMedia plugin.]) + ]) + ]) + VLC_ADD_PLUGIN([live555]) if test "${SYS}" = "mingw32"; then @@ -2034,7 +1986,7 @@ then then dnl Use a custom libraw1394 AC_MSG_RESULT(${real_dv_raw1394_tree}/src/.libs/libraw1394.a) - VLC_ADD_BUILTINS([access_dv]) + VLC_ADD_PLUGIN([access_dv]) VLC_ADD_LIBS([access_dv],[-L${real_dv_raw1394_tree}/src/.libs -lraw1394]) VLC_ADD_CPPFLAGS([access_dv],[-I${real_dv_raw1394_tree}]) else @@ -2128,11 +2080,16 @@ then [ VLC_ADD_PLUGIN([dvdread]) VLC_ADD_LIBS([dvdread],[-ldvdread ${LIBS_dvdcss}]) ],[ - if test -n "${enable_dvdread}" - then - AC_MSG_ERROR([cannot find libdvdread headers]) - fi - ]) + AC_CHECK_HEADERS(libdvdread/dvd_reader.h, + [ VLC_ADD_PLUGIN([dvdread]) + VLC_ADD_LIBS([dvdread],[-ldvdread ${LIBS_dvdcss}]) + ],[ + if test -n "${enable_dvdread}" + then + AC_MSG_ERROR([cannot find libdvdread headers]) + fi + ]) + ]) else AC_MSG_CHECKING(for libdvdread.a in ${with_dvdread_tree}) real_dvdread_tree="`cd ${with_dvdread_tree} 2>/dev/null && pwd`" @@ -2146,7 +2103,7 @@ then then dnl Use a custom libdvdread AC_MSG_RESULT(${real_dvdread_tree}/dvdread/.libs/libdvdread.a) - VLC_ADD_BUILTINS([dvdread]) + VLC_ADD_PLUGIN([dvdread]) VLC_ADD_LIBS([dvdread],[-L${real_dvdread_tree}/dvdread/.libs -ldvdread ${LIBS_dvdcss}]) VLC_ADD_CPPFLAGS([dvdread],[-I${real_dvdread_tree}]) else @@ -2222,7 +2179,8 @@ dnl dnl Windows DirectShow BDA access module dnl AC_ARG_ENABLE(bda, - [ --enable-bda Win32 DirectShow BDA support (default enabled on Win32)]) + AS_HELP_STRING([--enable-bda],[Win32 DirectShow BDA support (default + enabled on Win32)])) if test "${enable_bda}" != "no" then if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin" @@ -2244,10 +2202,9 @@ 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 + test -z "${with_opencv_tree}" && AC_MSG_ERROR([You have to specify --with-opencv-tree]) 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 @@ -2267,9 +2224,17 @@ then AC_MSG_ERROR([cannot find opencv in ${with_opencv_tree}]) fi else - AC_MSG_WARN([--enable-opencv currently only works on windows]) + PKG_CHECK_MODULES(OPENCV, opencv, + [ + VLC_ADD_PLUGIN([opencv_example]) + VLC_ADD_PLUGIN([opencv_wrapper]) + VLC_ADD_LIBS([opencv_example opencv_wrapper],[${OPENCV_LIBS}]) + VLC_ADD_CFLAGS([opencv_wrapper],[${OPENCV_CFLAGS}]) + VLC_ADD_CXXFLAGS([opencv_example],[${OPENCV_CFLAGS}]) + ], + [AC_MSG_ERROR([libopencv not found!])] + ) fi - fi fi @@ -2334,9 +2299,9 @@ then then dnl Use a custom libdvbpsi AC_MSG_RESULT(${real_dvbpsi_tree}/src/.libs/libdvbpsi.a) - VLC_ADD_BUILTINS([ts]) + VLC_ADD_PLUGIN([ts]) if test "${enable_sout}" != "no"; then - VLC_ADD_BUILTINS([mux_ts]) + VLC_ADD_PLUGIN([mux_ts]) fi VLC_ADD_CPPFLAGS([mux_ts ts dvb],[-I${real_dvbpsi_tree}/src]) VLC_ADD_LIBS([mux_ts ts dvb],[${real_dvbpsi_tree}/src/.libs/libdvbpsi.a]) @@ -2409,8 +2374,8 @@ dnl dnl Video4Linux2 plugin dnl AC_ARG_ENABLE(v4l2, - [ --enable-v4l2 Video4Linux2 input support (default disabled)]) -if test "${enable_v4l2}" = "yes" + [ --enable-v4l2 Video4Linux2 input support (default enabled)]) +if test "${enable_v4l2}" != "no" then AC_ARG_WITH(v4l2, [ --with-v4l2=PATH path to a v4l2-enabled kernel tree],[],[]) @@ -2457,7 +2422,7 @@ then AC_CACHE_CHECK([for new linux/videodev2.h], - [new_linux_videodev2_h], + [ac_cv_new_linux_videodev2_h], [AC_TRY_COMPILE([ #include # ifdef VIDEODEV2_H_FILE @@ -2467,9 +2432,9 @@ then # endif ], [struct v4l2_ext_controls ctrls; ctrls.ctrl_class = V4L2_CTRL_CLASS_MPEG; ], - new_linux_videodev2_h=yes, - new_linux_videodev2_h=no)]) - if test "${new_linux_videodev2_h}" != "no"; then + ac_cv_new_linux_videodev2_h=yes, + ac_cv_new_linux_videodev2_h=no)]) + if test "${ac_cv_new_linux_videodev2_h}" != "no"; then AC_DEFINE(HAVE_NEW_LINUX_VIDEODEV2_H, 1, [Define if new linux/videodev2.h present]) fi fi @@ -2515,7 +2480,8 @@ dnl dnl VCDX and CDDAX modules dnl AC_ARG_ENABLE(cddax, - [ --enable-cddax audio CD plugin with CD Text and CD paranoia via libcdio (default disabled)]) + AS_HELP_STRING([--enable-cddax],[audio CD plugin with CD Text and CD paranoia + via libcdio (default disabled)])) AC_ARG_ENABLE(libcddb, [ --enable-libcddb CDDB support for libcdio audio CD (default enabled)]) @@ -2652,9 +2618,9 @@ dnl dnl DVB-S/DVB-T/DVB-C satellite/teresterial/cable input using v4l2 dnl AC_ARG_ENABLE(dvb, - [ --enable-dvb DVB-S/T/C card support (default disabled)]) + [ --enable-dvb DVB-S/T/C card support (default enabled)]) -if test "${enable_dvb}" = "yes" +if test "${enable_dvb}" != "no" then AC_ARG_WITH(dvb, [ --with-dvb=PATH path to a dvb- and v4l2-enabled kernel tree],[],[]) @@ -2664,12 +2630,7 @@ then fi CPPFLAGS="${CPPFLAGS_save} -I${with_dvb}/include" AC_CHECK_HEADERS(linux/dvb/version.h linux/dvb/frontend.h, [ - if test -z "${with_dvbpsi_tree}" - then - VLC_ADD_PLUGIN([dvb]) - else - VLC_ADD_BUILTINS([dvb]) - fi + VLC_ADD_PLUGIN([dvb]) ],[AC_MSG_WARN(linux-dvb headers not found, dvb disabled)]) CPPFLAGS="${CPPFLAGS_save}" fi @@ -2953,7 +2914,7 @@ then VLC_ADD_LIBS([mpgatofixed32],[-L${real_mad_tree}/.libs]) LDFLAGS="${LDFLAGS_save} ${LIBS_mpgatofixed32}" AC_CHECK_LIB(mad, mad_bit_init, [ - VLC_ADD_BUILTINS([mpgatofixed32]) + VLC_ADD_PLUGIN([mpgatofixed32]) VLC_ADD_LIBS([mpgatofixed32],[-lmad]) ],[ AC_MSG_ERROR([the specified tree hasn't been compiled ]) ],[]) @@ -2980,7 +2941,7 @@ dnl dnl libid3tag support (FIXME!!! doesn't work with new input) dnl AC_ARG_ENABLE( id3tag, - [ --disable-id3tag id3tag metadata reader plugin (default enabled)]) +[ --disable-id3tag id3tag metadata reader plugin (default enabled)]) AS_IF([test "${enable_id3tag}" != "no"], [ AC_CHECK_HEADERS(id3tag.h, [ AC_CHECK_HEADERS(zlib.h, [ @@ -2991,304 +2952,140 @@ AS_IF([test "${enable_id3tag}" != "no"], [ ]) dnl -dnl ffmpeg decoder/demuxer plugin +dnl avcodec decoder/encoder plugin dnl -dnl we try to find ffmpeg using : 1- given tree, 2- pkg-config -dnl 3- default place, -AC_ARG_ENABLE(ffmpeg, -[ --enable-ffmpeg ffmpeg codec (default enabled)]) -if test "${enable_ffmpeg}" != "no" +AC_ARG_ENABLE(avcodec, +[ --enable-avcodec libavcodec codec (default enabled)]) +if test "${enable_avcodec}" != "no" then + PKG_CHECK_MODULES(AVCODEC,[libavcodec libavutil], + [ + VLC_SAVE_FLAGS + CPPFLAGS="${CPPFLAGS} ${AVCODEC_CFLAGS}" + CFLAGS="${CFLAGS} ${AVCODEC_CFLAGS}" + AC_CHECK_HEADERS(libavcodec/avcodec.h ffmpeg/avcodec.h) + AC_CHECK_HEADERS(libavutil/avutil.h ffmpeg/avutil.h) + VLC_ADD_PLUGIN([avcodec]) + VLC_ADD_LIBS([avcodec],[$AVCODEC_LIBS]) + VLC_ADD_CFLAGS([avcodec],[$AVCODEC_CFLAGS]) + VLC_RESTORE_FLAGS + ],[ + AC_MSG_ERROR([Could not find libavcodec or libavutil. Use --disable-avcodec to ignore this error.]) + ]) +fi -dnl Those options have to be here because the .pc can be bogus for ffmpeg previous nov 05 - - AC_ARG_WITH(ffmpeg-mp3lame, - [ --with-ffmpeg-mp3lame specify if ffmpeg has been compiled with mp3lame support], - [ - if test "$with_ffmpeg_mp3lame" = "yes"; then - VLC_ADD_LIBS([ffmpeg],[-lmp3lame]) - fi]) - - AC_ARG_WITH(ffmpeg-faac, - [ --with-ffmpeg-faac specify if ffmpeg has been compiled with faac support], - [ - if test "$with_ffmpeg_faac" = "yes"; then - VLC_ADD_LIBS([ffmpeg],[-lfaac]) - fi]) - - AC_ARG_WITH(ffmpeg-dts, - [ --with-ffmpeg-dts specify if ffmpeg has been compiled with dts support], - [ - if test "$with_ffmpeg_dts" = "yes"; then - LDFLAGS="${LDFLAGS_save} ${LDFLAGS_ffmpeg} ${LIBS_ffmpeg}" - AC_CHECK_LIB(dts_pic, dts_free, - [ VLC_ADD_LIBS([ffmpeg],[-ldts_pic]) ], - [ VLC_ADD_LIBS([ffmpeg],[-ldts]) ]) - LDFLAGS="${LDFLAGS_save}" - fi]) - - AC_ARG_WITH(ffmpeg-dca, - [ --with-ffmpeg-dca specify if ffmpeg has been compiled with dca support], - [ - if test "$with_ffmpeg_dca" = "yes"; then - LDFLAGS="${LDFLAGS_save} ${LDFLAGS_ffmpeg} ${LIBS_ffmpeg}" - AC_CHECK_LIB(dca, dca_free, [ VLC_ADD_LIBS([ffmpeg],[-ldca]) ]) - LDFLAGS="${LDFLAGS_save}" - fi]) - - AC_ARG_WITH(ffmpeg-vorbis, - [ --with-ffmpeg-vorbis specify if ffmpeg has been compiled with vorbis support], - [ - if test "$with_ffmpeg_vorbis" = "yes"; then - VLC_ADD_LIBS([ffmpeg],[-lvorbisenc -lvorbis]) - fi]) - - AC_ARG_WITH(ffmpeg-theora, - [ --with-ffmpeg-theora specify if ffmpeg has been compiled with theora support], - [ - if test "$with_ffmpeg_theora" = "yes"; then - VLC_ADD_LIBS([ffmpeg],[-ltheora]) - fi]) - - AC_ARG_WITH(ffmpeg-ogg, - [ --with-ffmpeg-ogg specify if ffmpeg has been compiled with ogg support], - [ - if test "$with_ffmpeg_ogg" = "yes"; then - VLC_ADD_LIBS([ffmpeg],[-logg]) - fi]) - - AC_ARG_WITH(ffmpeg-zlib, - [ --with-ffmpeg-zlib specify if ffmpeg has been compiled with zlib support], - [ - if test "$with_ffmpeg_zlib" = "yes"; then - VLC_ADD_LIBS([ffmpeg],[-lz]) - fi]) - - AC_ARG_WITH(ffmpeg-amrnb, - [ --with-ffmpeg-amrnb specify if ffmpeg has been compiled with libamrnb support], - [ - if test "$with_ffmpeg_amrnb" = "yes"; then - VLC_ADD_LIBS([ffmpeg],[-lamrnb]) - fi]) - - AC_ARG_WITH(ffmpeg-amrwb, - [ --with-ffmpeg-amrwb specify if ffmpeg has been compiled with libamrwb support], - [ - if test "$with_ffmpeg_amrwb" = "yes"; then - VLC_ADD_LIBS([ffmpeg],[-lamrwb]) - fi]) - - AC_ARG_WITH(ffmpeg-x264, - [ --with-ffmpeg-x264 specify if ffmpeg has been compiled with libx264 support], - [ - if test "$with_ffmpeg_x264" = "yes"; then - VLC_ADD_LIBS([ffmpeg],[-lx264]) - fi]) - - AC_ARG_WITH(ffmpeg-a52, - [ --with-ffmpeg-a52 specify if ffmpeg has been compiled with liba52 support], - [ - if test "$with_ffmpeg_a52" = "yes"; then - VLC_ADD_LIBS([ffmpeg],[-la52]) - fi]) - - dnl - dnl test for --with-ffmpeg-tree - dnl - AC_ARG_WITH(ffmpeg-tree, - [ --with-ffmpeg-tree=PATH ffmpeg tree for static linking]) - - if test "${with_ffmpeg_tree}" != "no" -a -n "${with_ffmpeg_tree}"; then - AC_MSG_CHECKING(for libavcodec.a in ${with_ffmpeg_tree}) - real_ffmpeg_tree="`cd ${with_ffmpeg_tree} 2>/dev/null && pwd`" - if test -z "${real_ffmpeg_tree}"; then - dnl The given directory can't be found - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot cd to ${with_ffmpeg_tree}]) - fi - if ! test -f "${real_ffmpeg_tree}/libavcodec/libavcodec.a"; then - dnl The given libavcodec wasn't built - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot find ${real_ffmpeg_tree}/libavcodec/libavcodec.a, make sure you compiled libavcodec in ${with_ffmpeg_tree}]) - fi - if ! fgrep -s "pp_get_context" "${real_ffmpeg_tree}/libavcodec/libavcodec.a"; then - if test -f "${real_ffmpeg_tree}/libavcodec/libpostproc/libpostproc.a"; then - VLC_ADD_LIBS([ffmpeg],[-L${real_ffmpeg_tree}/libavcodec/libpostproc ${real_ffmpeg_tree}/libavcodec/libpostproc/libpostproc.a]) - elif test -f "${real_ffmpeg_tree}/libpostproc/libpostproc.a"; then - VLC_ADD_LIBS([ffmpeg],[-L${real_ffmpeg_tree}/libpostproc ${real_ffmpeg_tree}/libpostproc/libpostproc.a]) - VLC_ADD_CPPFLAGS([ffmpeg stream_out_switcher],[-I${real_ffmpeg_tree}]) - else - dnl The given libavcodec wasn't built with --enable-postproc - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot find libpostproc.a in ${real_ffmpeg_tree}/[libavcodec/]libpostproc/. Make sure you configured ffmpeg with --enable-postproc]) - fi - fi - dnl Use a custom libffmpeg - AC_MSG_RESULT(${real_ffmpeg_tree}/libavcodec/libavcodec.a) - - dnl Use pkg-config to look for the ldflags in libav*-uninstalled.pc - PKG_CONFIG_PATH_save="$PKG_CONFIG_PATH" - PKG_CONFIG_LIBDIR_save="$PKG_CONFIG_LIBDIR" - export PKG_CONFIG_PATH="" - export PKG_CONFIG_LIBDIR="${real_ffmpeg_tree}" - VLC_SAVE_FLAGS - - PKG_CHECK_MODULES( [FFMPEG],[libavformat libavcodec libpostproc], [ - VLC_ADD_CPPFLAGS([ffmpeg stream_out_switcher], ${FFMPEG_CFLAGS}) - VLC_ADD_LIBS([ffmpeg stream_out_switcher], ${FFMPEG_LIBS})] - AC_DEFINE(HAVE_LIBAVFORMAT_TREE, 1, [Define if you have ffmpeg's libavformat.]) - ) - AS_IF([ test -f "${real_ffmpeg_tree}/libswscale/libswscale.a"],[ - AC_DEFINE(HAVE_LIBSWSCALE_TREE, 1, [Define if you have ffmpeg's libswscale.]) - PKG_CHECK_MODULES( [SWSCALE],[libswscale], [ - VLC_ADD_LIBS([ffmpeg],[${SWSCALE_LIBS}]) - VLC_ADD_CPPFLAGS([ffmpeg stream_out_switcher],[${SWSCALE_CFLAGS}])]) - ]) - CPPFLAGS="${CPPFLAGS} ${FFMPEG_CFLAGS} ${SWSCALE_CFLAGS}" - CFLAGS="${CFLAGS} ${FFMPEG_CFLAGS} ${SWSCALE_CFLAGS}" - - AC_CHECK_HEADERS(ffmpeg/avcodec.h libavcodec/avcodec.h) - AC_CHECK_HEADERS(ffmpeg/avformat.h libavformat/avformat.h) - AC_CHECK_HEADERS(ffmpeg/avutil.h libavutil/avutil.h) - AC_CHECK_HEADERS([ffmpeg/swscale.h libswscale/swscale.h]) - - VLC_RESTORE_FLAGS - AS_IF([test -n "${PKG_CONFIG_PATH_save}"],[ - export PKG_CONFIG_PATH="${PKG_CONFIG_PATH_save}" - ],[ - unset PKG_CONFIG_PATH - ]) - AS_IF([test -n "${PKG_CONFIG_LIBDIR_save}"],[ - export PKG_CONFIG_LIBDIR="${PKG_CONFIG_LIBDIR_save}" - ],[ - unset PKG_CONFIG_LIBDIR - ]) - - VLC_ADD_BUILTINS([ffmpeg]) - if test "${enable_sout}" != "no" -a "${enable_switcher}" = "yes" ; then - VLC_ADD_BUILTINS([stream_out_switcher]) - fi - +dnl +dnl avformat demuxer/muxer plugin +dnl -else +AC_ARG_ENABLE(avformat, +[ --enable-avformat libavformat containers (default enabled)]) +if test "${enable_avformat}" != "no" +then + PKG_CHECK_MODULES(AVFORMAT,[libavformat libavutil], + [ + VLC_SAVE_FLAGS + CPPFLAGS="${CPPFLAGS} ${AVFORMAT_CFLAGS}" + CFLAGS="${CFLAGS} ${AVFORMAT_CFLAGS}" + AC_CHECK_HEADERS(libavformat/avformat.h ffmpeg/avformat.h) + AC_CHECK_HEADERS(libavutil/avutil.h ffmpeg/avutil.h) + VLC_ADD_PLUGIN([avformat]) + VLC_ADD_LIBS([avformat],[$AVFORMAT_LIBS]) + VLC_ADD_CFLAGS([avformat],[$AVFORMAT_CFLAGS]) + VLC_RESTORE_FLAGS + ],[ + AC_MSG_ERROR([Could not find libavformat or libavutil. Use --disable-avformat to ignore this error.]) + ]) +fi +dnl +dnl swscale image scaling and conversion plugin +dnl -dnl Trying with pkg-config - PKG_CHECK_MODULES(FFMPEG,[libavcodec, libavformat], +AC_ARG_ENABLE(swscale, + AS_HELP_STRING([--enable-swscale],[libswscale image scaling and conversion + (default enabled)])) +if test "${enable_swscale}" != "no" +then + PKG_CHECK_MODULES(SWSCALE,[libswscale], [ - VLC_SAVE_FLAGS - CPPFLAGS="${CPPFLAGS} ${FFMPEG_CFLAGS}" - CFLAGS="${CFLAGS} ${FFMPEG_CFLAGS}" - AC_CHECK_HEADERS(ffmpeg/avcodec.h libavcodec/avcodec.h) - AC_CHECK_HEADERS(ffmpeg/avformat.h libavformat/avformat.h) - AC_CHECK_HEADERS(ffmpeg/avutil.h libavutil/avutil.h) - dnl newer ffmpeg have a separate libpostproc - PKG_CHECK_MODULES(POSTPROC, libpostproc,[ - VLC_ADD_CFLAGS([ffmpeg],[${POSTPROC_CFLAGS}]) - VLC_ADD_LIBS([ffmpeg],[${POSTPROC_LIBS}]) - ],[ true ]) - CPPFLAGS="${CPPFLAGS} ${POSTPROC_CFLAGS}" - CFLAGS="${CFLAGS} ${POSTPROC_CFLAGS}" - AC_CHECK_HEADERS(postproc/postprocess.h) - VLC_ADD_PLUGIN([ffmpeg]) - if test "${enable_sout}" != "no" -a "${enable_switcher}" = "yes"; then - VLC_ADD_PLUGIN([stream_out_switcher]) - fi - VLC_ADD_CFLAGS([ffmpeg stream_out_switcher],[${FFMPEG_CFLAGS}]) - VLC_ADD_LIBS([ffmpeg stream_out_switcher],[${FFMPEG_LIBS}]) - - dnl even newer ffmpeg has a libswscale - PKG_CHECK_MODULES(SWSCALE,[libswscale],[ - VLC_ADD_CFLAGS([ffmpeg],[${SWSCALE_CFLAGS}]) - VLC_ADD_LIBS([ffmpeg],[${SWSCALE_LIBS}]) - AC_CHECK_LIB(swscale, sws_getContext, - [AC_CHECK_HEADERS([ffmpeg/swscale.h libswscale/swscale.h])],[],[${SWSCALE_LIBS}]) - ],[ true ]) - VLC_RESTORE_FLAGS + VLC_SAVE_FLAGS + CPPFLAGS="${CPPFLAGS} ${SWSCALE_CFLAGS}" + CFLAGS="${CFLAGS} ${SWSCALE_CFLAGS}" + AC_CHECK_HEADERS(libswscale/swscale.h ffmpeg/swscale.h) + VLC_ADD_PLUGIN([swscale]) + VLC_ADD_LIBS([swscale],[$SWSCALE_LIBS]) + VLC_ADD_CFLAGS([swscale],[$SWSCALE_CFLAGS]) + VLC_RESTORE_FLAGS ],[ + AC_MSG_WARN([Could not find libswscale. Trying to enable imgresample.]) + enable_imgresample=yes + ]) +fi - dnl - dnl last chance: at the default place - dnl - CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_ffmpeg}" - LDFLAGS="${LDFLAGS_save} ${LDFLAGS_ffmpeg} ${LIBS_ffmpeg}" - AC_CHECK_HEADERS(ffmpeg/avcodec.h libavcodec/avcodec.h) - AC_CHECK_HEADERS(ffmpeg/avformat.h libavformat/avformat.h) - AC_CHECK_HEADERS(ffmpeg/avutil.h libavutil/avutil.h) - AC_CHECK_HEADERS(postproc/postprocess.h) - - AC_CHECK_LIB(avutil, av_crc_init, [ - VLC_ADD_LIBS([ffmpeg],[-lavutil]) - LDAVUTIL="-lavutil"]) - - AC_CHECK_LIB(avcodec, avcodec_init, [ - VLC_ADD_BUILTINS([ffmpeg]) - VLC_ADD_LIBS([ffmpeg],[-lavcodec]) - 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_LIBS([ffmpeg],[-lpostproc])], - AC_MSG_ERROR([Could not find libpostproc inside FFmpeg. You should configure FFmpeg with --enable-gpl --enable-postproc.]), - [$LDAVUTIL]) - - AC_CHECK_LIB(avformat, av_open_input_stream, [ - VLC_ADD_LIBS([ffmpeg],[-lavformat -lz]) ], [], [-lavcodec -lz $LDAVUTIL]) - LDFLAGS="${LDFLAGS_save}" - CPPFLAGS="${CPPFLAGS_save}" +dnl +dnl avcodec (deprecated API) image scaling and conversion plugin +dnl +dnl This is build as a seperate module than the avcodec one to prevent +dnl stupid run time library load errors from disabling most codecs +dnl from VLC. +dnl - AC_CHECK_LIB(swscale, sws_getContext, [ - AC_CHECK_HEADERS(ffmpeg/swscale.h libswscale/swscale.h) - VLC_ADD_LIBS([ffmpeg],[-lswscale]) ], [], [-lavcodec $LDAVUTIL]) - LDFLAGS="${LDFLAGS_save}" - CPPFLAGS="${CPPFLAGS_save}" - ]) - fi +AC_ARG_ENABLE(imgresample, + AS_HELP_STRING([--enable-imgresample],[deprecated libavcodec image scaling + and conversion (default disabled)])) +if test "${enable_imgresample}" = "yes" +then + PKG_CHECK_MODULES(IMGRESAMPLE,[libavcodec], + [ + VLC_SAVE_FLAGS + CPPFLAGS="${CPPFLAGS} ${IMGRESAMPLE_CFLAGS}" + CFLAGS="${CFLAGS} ${IMGRESAMPLE_CFLAGS}" + AC_CHECK_HEADERS(libavcodec/avcodec.h ffmpeg/avcodec.h) + AC_CHECK_LIB(avcodec,img_resample, + [ + VLC_ADD_PLUGIN([imgresample]) + VLC_ADD_LIBS([imgresample],[$IMGRESAMPLE_LIBS]) + VLC_ADD_CFLAGS([imgresample],[$IMGRESAMPLE_CFLAGS]) + ],[ + AC_MSG_WARN([Could not find img_resample in libavcodec.]) + if test "${enable_swscale}" != "no" + then + AC_MSG_ERROR([swscale (and its fallback module imgresample) support will be missing. Use --disable-swscale to ignore this error. (This basically means that you will be missing any good software scaling module and some video chroma converters.)]) + fi + # That sed hack to add -rpath is kind of ugly but at least it fixes + # detection when linking against a shared libavcodec with + # a libavutil not in one of your ld.so.conf directories. + # (for example a local install) + ],[${IMGRESAMPLE_LIBS} `echo ${IMGRESAMPLE_LIBS}|sed s'/-L/-Wl,-rpath=/'`]) + VLC_RESTORE_FLAGS + ],[ + AC_MSG_WARN([Could not find libavcodec.]) + ]) fi dnl -dnl ffmpegaltivec plugin +dnl postproc plugin dnl -AC_ARG_ENABLE(ffmpegaltivec, -[ --enable-ffmpegaltivec ffmpegaltivec codec (DO NOT USE)]) -if test "${enable_ffmpegaltivec}" = "yes" + +AC_ARG_ENABLE(postproc, +[ --enable-postproc libpostproc image post-processing (default enabled)]) +if test "${enable_postproc}" != "no" then - if test "${with_ffmpeg_tree}" != "no" -a -n "${with_ffmpeg_tree}"; then - AC_MSG_CHECKING(for libavcodecaltivec.a in ${with_ffmpeg_tree}) - real_ffmpeg_tree="`cd ${with_ffmpeg_tree} 2>/dev/null && pwd`" - if test -z "${real_ffmpeg_tree}"; then - dnl The given directory can't be found - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot cd to ${with_ffmpeg_tree}]) - fi - if ! test -f "${real_ffmpeg_tree}/libavcodec/libavcodecaltivec.a"; then - dnl The given libavcodecaltivec wasn't built - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot find ${real_ffmpeg_tree}/libavcodec/libavcodecaltivec.a, make sure you compiled libavcodecaltivec in ${with_ffmpeg_tree}]) - fi - if ! fgrep -s "pp_get_context" "${real_ffmpeg_tree}/libavcodec/libavcodecaltivec.a"; then - dnl The given libavcodecaltivec wasn't built with --enable-postproc - AC_MSG_RESULT(no) - AC_MSG_ERROR([${real_ffmpeg_tree}/libavcodec/libavcodecaltivec.a was not compiled with postprocessing support, make sure you configured ffmpeg with --enable-postproc]) - fi - dnl Use a custom libffmpeg - AC_MSG_RESULT(${real_ffmpeg_tree}/libavcodec/libavcodecaltivec.a) - VLC_ADD_BUILTINS([ffmpegaltivec]) - VLC_ADD_LIBS([ffmpegaltivec],[-L${real_ffmpeg_tree}/libavcodec -lavcodecaltivec]) - VLC_ADD_CPPFLAGS([ffmpeg],[-DNO_ALTIVEC_IN_FFMPEG]) - VLC_ADD_CPPFLAGS([ffmpegaltivec],[-I${real_ffmpeg_tree}/libavcodec -I${real_ffmpeg_tree}/libavformat]) - - if test -f "${real_ffmpeg_tree}/libavformat/libavformat.a"; then - AC_DEFINE(HAVE_LIBAVFORMAT_TREE, 1, [Define if you have ffmpeg's libavformat.]) - VLC_ADD_LIBS([ffmpegaltivec],[-L${real_ffmpeg_tree}/libavformat -lavformataltivec -lz]) - VLC_ADD_CPPFLAGS([ffmpegaltivec],[-I${real_ffmpeg_tree}/libavformat]) - fi - VLC_ADD_LIBS([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 + PKG_CHECK_MODULES(POSTPROC,[libpostproc libavutil], + [ + VLC_SAVE_FLAGS + CPPFLAGS="${CPPFLAGS} ${POSTPROC_CFLAGS}" + CFLAGS="${CFLAGS} ${POSTPROC_CFLAGS}" + AC_CHECK_HEADERS(libpostproc/postproc.h postproc/postprocess.h) + VLC_ADD_PLUGIN([postproc]) + VLC_ADD_LIBS([postproc],[$POSTPROC_LIBS]) + VLC_ADD_CFLAGS([postproc],[$POSTPROC_CFLAGS]) + VLC_RESTORE_FLAGS + ],[ + AC_MSG_ERROR([Could not find libpostproc.]) + ]) fi dnl @@ -3314,7 +3111,7 @@ then then dnl Use a custom faad AC_MSG_RESULT(${real_faad_tree}/libfaad/.libs/libfaad.a) - VLC_ADD_BUILTINS([faad]) + VLC_ADD_PLUGIN([faad]) VLC_ADD_LIBS([faad],[${real_faad_tree}/libfaad/.libs/libfaad.a]) VLC_ADD_CPPFLAGS([faad],[-I${real_faad_tree}/include]) else @@ -3362,7 +3159,7 @@ then then dnl Use a custom twolame AC_MSG_RESULT(${real_twolame_tree}/libtwolame/.libs/libtwolame.a) - VLC_ADD_BUILTINS([twolame]) + VLC_ADD_PLUGIN([twolame]) VLC_ADD_LIBS([twolame],[${real_twolame_tree}/libtwolame/.libs/libtwolame.a]) VLC_ADD_CPPFLAGS([twolame],[-I${real_twolame_tree}/libtwolame -DLIBTWOLAME_STATIC]) else @@ -3394,7 +3191,7 @@ if test "${enable_quicktime}" != "no" && (test "${SYS}" = "darwin" || test "${enable_quicktime}" = "yes") then if test "${SYS}" = "mingw32"; then - VLC_ADD_BUILTINS([quicktime]) + VLC_ADD_PLUGIN([quicktime]) else AC_CHECK_HEADERS(QuickTime/QuickTime.h, [ VLC_ADD_PLUGIN([quicktime]) @@ -3407,9 +3204,10 @@ dnl dnl Real plugin dnl AC_ARG_ENABLE(real, - [ --enable-real Real audio module (default disabled)]) + [ --enable-real Real media module (default disabled)]) if test "${enable_real}" = "yes"; then VLC_ADD_PLUGIN([realaudio]) + VLC_ADD_PLUGIN([realvideo]) fi dnl @@ -3473,7 +3271,7 @@ then VLC_ADD_LIBS([a52tofloat32],[-L${real_a52_tree}/liba52/.libs]) LDFLAGS="${LDFLAGS_save} ${LIBS_a52tofloat32}" AC_CHECK_LIB(a52, a52_free, [ - VLC_ADD_BUILTINS([a52tofloat32]) + VLC_ADD_PLUGIN([a52tofloat32]) VLC_ADD_CPPFLAGS([a52tofloat32],[-DUSE_A52DEC_TREE]) VLC_ADD_LIBS([a52tofloat32],[-la52]) ],[ @@ -3532,7 +3330,8 @@ AS_IF([test "x${with_dts_tree}" != "x"], [ ]) AC_ARG_ENABLE(dca, - [ --enable-dca DTS Coherent Acoustics support with libdca (default enabled)]) + AS_HELP_STRING([--enable-dca],[DTS Coherent Acoustics support with libdca + (default enabled)])) AS_IF([test "${enable_dca}" != "no"], [ AC_ARG_WITH(dca-tree, [ --with-dca-tree=PATH libdca tree for static linking],, @@ -3618,8 +3417,7 @@ if test "${enable_libmpeg2}" != "no" then AC_ARG_WITH(libmpeg2-tree, [ --with-libmpeg2-tree=PATH libmpeg2 tree for static linking]) - if test -n "${with_libmpeg2_tree}" - then + AS_IF([test -n "${with_libmpeg2_tree}"],[ AC_MSG_CHECKING(for libmpeg2.a in ${with_libmpeg2_tree}) real_libmpeg2_tree="`cd ${with_libmpeg2_tree} 2>/dev/null && pwd`" if test -z "${real_libmpeg2_tree}" @@ -3632,34 +3430,22 @@ then then dnl Use a custom libmpeg2 AC_MSG_RESULT(${real_libmpeg2_tree}/libmpeg2/.libs/libmpeg2.a) - VLC_ADD_BUILTINS([libmpeg2]) + VLC_ADD_PLUGIN([libmpeg2]) VLC_ADD_LIBS([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`" else dnl The given libmpeg2 wasn't built AC_MSG_RESULT(no) AC_MSG_ERROR([cannot find ${real_libmpeg2_tree}/libmpeg2/.libs/libmpeg2.a, make sure you compiled libmpeg2 in ${with_libmpeg2_tree}]) fi - else - AC_CHECK_HEADERS(mpeg2dec/mpeg2.h, [ - AC_MSG_CHECKING(for libmpeg2 version >= 0.3.2) - AC_EGREP_CPP(yes, - [#include - #ifdef MPEG2_RELEASE - #if MPEG2_RELEASE >= MPEG2_VERSION(0,3,2) - yes - #endif - #endif], - [AC_MSG_RESULT([yes]) + ],[ + PKG_CHECK_MODULES(LIBMPEG2,[libmpeg2 > 0.3.2],[ VLC_ADD_PLUGIN([libmpeg2]) - VLC_ADD_LIBS([libmpeg2],[-lmpeg2])], - [AC_MSG_RESULT([no]) - AC_MSG_ERROR([Your libmpeg2 is too old (you need the cvs version): you may get a more recent one from http://libmpeg2.sf.net/. Alternatively you can use --disable-libmpeg2 to disable the libmpeg2 plugin.])])], - - [AC_MSG_ERROR([Could not find libmpeg2 on your system: you may get it from http://libmpeg2.sf.net/ (you need the cvs version). Alternatively you can use --disable-libmpeg2 to disable the libmpeg2 plugin.])] - ) - fi + VLC_ADD_LIBS([libmpeg2], $LIBMPEG2_LIBS) + VLC_ADD_CFLAGS([libmpeg2], $LIBMPEG2_CFLAGS) + ], + AC_MSG_WARN([Could not find libmpeg2 on your system: you may get it from http://libmpeg2.sf.net/ . Alternatively you can use --disable-libmpeg2 to disable the libmpeg2 plugin.])) + ]) fi dnl @@ -3776,7 +3562,7 @@ then real_tarkin_tree="`cd ${with_tarkin_tree} 2>/dev/null && pwd`" if test -f "${real_tarkin_tree}/tarkin.o" then - VLC_ADD_BUILTINS([tarkin]) + VLC_ADD_PLUGIN([tarkin]) VLC_ADD_CPPFLAGS([tarkin],[-I${real_tarkin_tree}]) VLC_ADD_LIBS([tarkin],[${real_tarkin_tree}/mem.o ${real_tarkin_tree}/pnm.o ${real_tarkin_tree}/wavelet.o ${real_tarkin_tree}/wavelet_xform.o ${real_tarkin_tree}/wavelet_coeff.o ${real_tarkin_tree}/yuv.o ${real_tarkin_tree}/tarkin.o ${real_tarkin_tree}/info.o -logg]) AC_MSG_RESULT(yes) @@ -3813,14 +3599,30 @@ dnl AC_ARG_ENABLE(dirac, [ --enable-dirac experimental dirac codec (default disabled)]) if test "${enable_dirac}" = "yes"; then - PKG_CHECK_MODULES(DIRAC,[dirac >= 0.9.0], [ + PKG_CHECK_MODULES(DIRAC,[dirac >= 0.10.0], [ VLC_ADD_PLUGIN([dirac]) VLC_ADD_CFLAGS([dirac],[$DIRAC_CFLAGS]) VLC_ADD_LIBS([dirac],[$DIRAC_LIBS -lstdc++]) ],[ - AC_MSG_ERROR([libdirac doesn't appear to be installed on you system.]) + AC_MSG_ERROR([libdirac >= 0.10.0 doesn't appear to be installed on your system.]) ]) fi +dnl +dnl schroedinger decoder plugin (for dirac format video) +dnl +AC_ARG_ENABLE(schroedinger, +[ --disable-schroedinger high performance dirac codec (default enabled)]) +if test "${enable_schroedinger}" != "no"; then + PKG_CHECK_MODULES(SCHROEDINGER,[schroedinger-1.0 >= 1.0], [ + VLC_ADD_PLUGIN([schroedinger]) + VLC_ADD_CFLAGS([schroedinger],[$SCHROEDINGER_CFLAGS]) + VLC_ADD_LIBS([schroedinger],[$SCHROEDINGER_LIBS]) ], [ + AS_IF([test "x${enable_schroedinger}" != "x"], [ + AC_MSG_ERROR([${SCHROEDINGER_PKG_ERRORS}]) + ]) +]) +fi + dnl dnl PNG decoder module dnl @@ -3915,9 +3717,11 @@ dnl telx module dnl uncompatible dnl AC_ARG_ENABLE(zvbi, - [ --enable-zvbi VBI (inc. Teletext) decoding support with libzvbi (default enabled)]) + AS_HELP_STRING([--enable-zvbi],[VBI (inc. Teletext) decoding support with + libzvbi (default enabled)])) AC_ARG_ENABLE(telx, - [ --enable-telx Teletext decoding module (conflicting with zvbi) (default disabled)]) + AS_HELP_STRING([--enable-telx],[Teletext decoding module (conflicting with + zvbi) (default disabled)])) AS_IF( [test "${enable_zvbi}" != "no"],[ AS_IF( [test "${enable_telx}" = "yes"],[ @@ -3944,7 +3748,7 @@ dnl dnl asa/csri subtitle rendering module dnl AC_ARG_ENABLE(csri, - [ --enable-csri Subtitle support using CSRI / asa (default disabled)]) + [ --enable-csri Subtitle support using CSRI / asa (default disabled)]) AS_IF( [test "${enable_csri}" = "yes"], [ PKG_CHECK_MODULES(CSRI, csri >= 0.1.0, @@ -3961,13 +3765,16 @@ dnl dnl asa demuxer dnl AC_ARG_ENABLE(asademux, - [ --enable-asademux asa subtitle demuxing (default disabled)]) + [ --enable-asademux asa subtitle demuxing (default disabled)]) AS_IF( [test "${enable_asademux}" = "yes"], [ PKG_CHECK_MODULES(PCRE, libpcre >= 6.5, [ VLC_ADD_LDFLAGS([asademux],[$PCRE_LIBS]) VLC_ADD_CFLAGS([asademux],[$PCRE_CFLAGS]) + if test "${SYS}" = "mingw32"; then + VLC_ADD_CPPFLAGS([asademux],[-DPCRE_STATIC]) + fi VLC_ADD_PLUGIN([asademux]) ],[ AC_MSG_WARN([PCRE library not found (required for asademux)]) @@ -3990,7 +3797,7 @@ dnl AC_ARG_ENABLE(kate, [ --enable-kate kate codec (default enabled)]) AS_IF([test "${enable_kate}" != "no"], [ - PKG_CHECK_MODULES(KATE,[kate >= 0.1.1], [ + PKG_CHECK_MODULES(KATE,[kate >= 0.1.2], [ VLC_ADD_PLUGIN([kate]) VLC_ADD_CFLAGS([kate],[$KATE_CFLAGS]) VLC_ADD_LIBS([kate],[$KATE_LIBS]) ],[ @@ -4074,23 +3881,9 @@ if test "${enable_xvideo}" != "no" && AC_CHECK_HEADERS(X11/extensions/Xv.h, [ CFLAGS="${CFLAGS_save} ${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext" AC_CHECK_LIB(Xv,XvPutImage,[ - # If libXv.so is available, xvideo can be a plugin. Otherwise, we - # test for libXv_pic. - if test -f /usr/X11R6/lib/libXv.so -o -f /usr/lib/libXv.so -o -f "${x_libraries}"/libXv.so; then VLC_ADD_PLUGIN([xvideo]) VLC_ADD_CPPFLAGS([xvideo],[${X_CFLAGS}]) VLC_ADD_LIBS([xvideo],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext -lXv]) - else - AC_CHECK_LIB(Xv_pic,XvPutImage,[ - VLC_ADD_PLUGIN([xvideo]) - VLC_ADD_CPPFLAGS([xvideo],[${X_CFLAGS}]) - VLC_ADD_LIBS([xvideo],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext -lXv_pic]) - ],[ - VLC_ADD_BUILTINS([xvideo]) - VLC_ADD_LIBS([xvideo],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext -lXv]) - VLC_ADD_CPPFLAGS([xvideo],[${X_CFLAGS}]) - ]) - fi ]) CFLAGS="${CFLAGS_save}" ] @@ -4458,29 +4251,6 @@ then CPPFLAGS="${CPPFLAGS_save}" fi -dnl -dnl Qt Video output module -dnl (disabled by default) -dnl -dnl AC_ARG_ENABLE(qt_video, -dnl [ --enable-qt_video QT Video Output support (default disabled)]) -dnl if test "${enable_qt_video}" = "yes" -dnl then -dnl VLC_ADD_PLUGIN([qt_video]) -dnl VLC_ADD_LIBS([qt_video],[-L${QTDIR}/lib]) -dnl LDFLAGS="${LDFLAGS_save} ${LDFLAGS_qt_video}" -dnl AC_CHECK_LIB(qt-mt,main,[ -dnl VLC_ADD_LIBS([qt_video],[-lqt-mt]) -dnl ],[ -dnl AC_CHECK_LIB(qt,main,[ -dnl VLC_ADD_LIBS([qt_video],[-lqt]) -dnl ]) -dnl ]) -dnl NEED_QTE_MAIN=yes -dnl LDFLAGS="${LDFLAGS_save}" -dnl VLC_ADD_CXXFLAGS([qt_video],[-I/usr/include/qt3 -I/usr/include/qt -I${QTDIR}/include]) -dnl fi - dnl dnl Roku HD1000 Video output module dnl @@ -4676,33 +4446,6 @@ then fi ]) fi -dnl -dnl Glide module -dnl -AC_ARG_ENABLE(glide, - [ --enable-glide Glide (3dfx) support (default disabled)]) -if test "${enable_glide}" = "yes" -then - CFLAGS_save="${CFLAGS}" - AC_ARG_WITH(glide, - [ --with-glide=PATH path to libglide], - [ if test "${with_glide}" != "no" -a -n "${with_glide}" - then - VLC_ADD_CPPFLAGS([glide],[-I${with_glide}/include]) - VLC_ADD_LIBS([glide],[-L${with_glide}/lib]) - CFLAGS="$CFLAGS -I${with_glide}/include" - fi ]) - CFLAGS="$CFLAGS -I/usr/include/glide" - AC_CHECK_HEADER(glide.h,[ - VLC_ADD_PLUGIN([glide]) - VLC_ADD_LIBS([glide],[-lglide2x -lm]) - VLC_ADD_CPPFLAGS([glide],[-I/usr/include/glide]) - ],[ - AC_MSG_ERROR([You don't have libglide. Install it or do not use --enable-glide]) - ]) - CFLAGS="${CFLAGS_save}" -fi - dnl dnl AA plugin dnl @@ -4813,7 +4556,7 @@ AC_ARG_ENABLE(pulse, [ VLC_ADD_PLUGIN([pulse]) VLC_ADD_CFLAGS([pulse],[${PULSE_CFLAGS}]) VLC_ADD_LDFLAGS([pulse],[${PULSE_LIBS}])], - [AC_MSG_WARN(pulsaudio library not found)]) + [AC_MSG_WARN(pulseaudio library not found)]) fi dnl @@ -4833,7 +4576,8 @@ AC_ARG_ENABLE(portaudio, fi]) dnl -dnl aRts module -- broken (freeze wxWidgets) +dnl aRts module +dnl broken? (froze wxWidgets back then) dnl AC_ARG_ENABLE(arts, [ --enable-arts aRts sound server (default disabled)], @@ -5009,7 +4753,7 @@ dnl dnl UPnP Plugin (Intel SDK) dnl AC_ARG_ENABLE(upnp, - [ --enable-upnp Intel UPnP SDK (default enabled)]) + AS_HELP_STRING([--enable-upnp],[Intel UPnP SDK (default enabled)])) VLC_ADD_CXXFLAGS([upnp_intel], [ ]) AS_IF([test "x${enable_upnp}" != "xno"], [ @@ -5038,14 +4782,15 @@ AC_ARG_WITH(,[Interface plugins:]) dnl special case for BeOS if test "${SYS}" = "beos" then - VLC_ADD_BUILTINS([beos]) + VLC_ADD_PLUGIN([beos]) fi dnl dnl Skins2 module dnl AC_ARG_ENABLE(skins2, - [ --enable-skins2 Skins2 interface module (default disabled)]) + [AS_HELP_STRING([--enable-skins2],[Skins2 interface module (default + enabled except on MacOSX, BeOS and WinCE)])]) if test "${enable_skins2}" = "yes" || (test "${SYS}" != "darwin" && test "${SYS}" != "beos" && test "${SYS}" != "mingwce" && test "${enable_skins2}" != "no"); then @@ -5083,76 +4828,9 @@ if test "${enable_skins2}" = "yes" || VLC_ADD_LIBS([skins2],[${X_LIBS} ${X_PRE_LIBS} -lXext -lX11]) fi fi fi fi -AM_CONDITIONAL(BUILD_SKINS, [test "${enable_skins2}" = "yes"]) - -dnl dnl -dnl dnl Gtk+ module -dnl dnl -dnl AC_ARG_ENABLE(gtk, -dnl [ --enable-gtk Gtk+ support (default enabled)]) -dnl if test "${enable_gtk}" != "no" -dnl then -dnl GTK_PATH="${PATH}" -dnl AC_ARG_WITH(gtk-config-path, -dnl [ --with-gtk-config-path=PATH gtk-config path (default search in \$PATH)], -dnl [ if test "${with_gtk_config_path}" != "no" -dnl then -dnl GTK_PATH="${with_gtk_config_path}:${PATH}" -dnl fi ]) -dnl # look for gtk-config -dnl AC_PATH_PROG(GTK12_CONFIG, gtk12-config, no, ${GTK_PATH}) -dnl GTK_CONFIG=${GTK12_CONFIG} -dnl if test "${GTK_CONFIG}" = "no" -dnl then -dnl AC_PATH_PROG(GTK_CONFIG, gtk-config, no, ${GTK_PATH}) -dnl fi -dnl if test "${GTK_CONFIG}" != "no" -dnl then -dnl if expr 1.2.0 \> `${GTK_CONFIG} --version` >/dev/null -dnl then -dnl AC_MSG_ERROR([Your development package for Gtk+ is too old, you need at least version 1.2.0. Please upgrade and try again. Alternatively you can also configure with --disable-gtk.]) -dnl fi -dnl if test "${SYS}" != "mingw32"; then -dnl VLC_ADD_CFLAGS([gtk],[`${GTK_CONFIG} --cflags gtk gthread`]) -dnl VLC_ADD_LIBS([gtk],[`${GTK_CONFIG} --libs gtk gthread | sed 's,-rdynamic,,'`]) -dnl else -dnl VLC_ADD_CFLAGS([gtk],[`${GTK_CONFIG} --cflags gtk`]) -dnl VLC_ADD_LIBS([gtk],[`${GTK_CONFIG} --libs gtk | sed 's,-rdynamic,,'`]) -dnl fi -dnl # now look for the gtk.h header -dnl CPPFLAGS="${CPPFLAGS_save} ${CFLAGS_gtk}" -dnl ac_cv_gtk_headers=yes -dnl AC_CHECK_HEADERS(gtk/gtk.h glib.h gdk/gdk.h, , [ -dnl ac_cv_gtk_headers=no -dnl echo "Cannot find gtk development headers." -dnl ]) -dnl if test "${ac_cv_gtk_headers}" = "yes" -dnl then -dnl VLC_ADD_PLUGIN([gtk]) -dnl if test "${SYS}" != "mingw32"; then -dnl NEED_GTK_MAIN=yes -dnl fi -dnl ALIASES="${ALIASES} gvlc" -dnl fi -dnl CPPFLAGS="${CPPFLAGS_save}" -dnl fi -dnl fi -dnl -dnl -dnl Gtk+2 module ! Disabled for now as it is unusable and confuses users -dnl -dnl AC_ARG_ENABLE(gtk2, -dnl [ --enable-gtk2 Gtk2 support (default disabled)]) -dnl if test "${enable_gtk2}" = "yes" -dnl then -dnl PKG_CHECK_MODULES(GTK2, [gtk+-2.0 >= 2.0.0, gthread-2.0]) -dnl VLC_ADD_CFLAGS([gtk2],[${GTK2_CFLAGS}]) -dnl VLC_ADD_LIBS([gtk2],[${GTK2_LIBS}]) -dnl VLC_ADD_PLUGIN([gtk2]) -dnl if test "${SYS}" != "mingw32"; then -dnl NEED_GTK2_MAIN=yes -dnl fi -dnl fi +AM_CONDITIONAL(BUILD_SKINS, [test "${enable_skins2}" = "yes" || + (test "${SYS}" != "darwin" && test "${SYS}" != "beos" && + test "${SYS}" != "mingwce" && test "${enable_skins2}" != "no")]) dnl dnl PDA Gtk+2 module @@ -5176,188 +4854,39 @@ then fi AM_CONDITIONAL(BUILD_PDA, [test "${enable_pda}" = "yes"]) -dnl dnl -dnl dnl Gnome module -dnl dnl -dnl AC_ARG_ENABLE(gnome, -dnl [ --enable-gnome Gnome interface support (default disabled)], -dnl [if test "${enable_gnome}" = "yes"; then -dnl # look for gnome-config -dnl AC_PATH_PROG(GNOME_CONFIG, gnome-config, no) -dnl if test -x ${GNOME_CONFIG} -dnl then -dnl VLC_ADD_CFLAGS([gnome],[`${GNOME_CONFIG} --cflags gtk gnomeui`]) -dnl VLC_ADD_LIBS([gnome],[`${GNOME_CONFIG} --libs gnomeui | sed 's,-rdynamic,,'`]) -dnl fi -dnl # now look for the gnome.h header -dnl CPPFLAGS="${CPPFLAGS_save} ${CFLAGS_gnome}" -dnl AC_CHECK_HEADERS(gnome.h, [ -dnl VLC_ADD_PLUGIN([gnome]) -dnl NEED_GTK_MAIN=yes -dnl NEED_GNOME_MAIN=yes -dnl ALIASES="${ALIASES} gnome-vlc" -dnl dnl We need this because of some moronic gnomesupport.h flavours -dnl AC_MSG_CHECKING(for strndup in gnome.h) -dnl AC_EGREP_HEADER(strndup,gnome.h,[ -dnl AC_MSG_RESULT(yes) -dnl AC_DEFINE(STRNDUP_IN_GNOME_H, 1, -dnl Define if defines strndup.)],[ -dnl AC_MSG_RESULT(no)]) -dnl ],[ -dnl AC_MSG_ERROR([Can't find gnome headers. Please install the gnome -dnl developement tools or remove the --enable-gnome option]) -dnl ]) -dnl CPPFLAGS="${CPPFLAGS_save}" -dnl fi]) - -dnl -dnl Gnome2 module ! Disabled for know as it is unuseable and confuses users -dnl -dnl AC_ARG_ENABLE(gnome2, -dnl [ --enable-gnome2 Gnome2 support (default disabled)]) -dnl if test "${enable_gnome2}" = "yes" -dnl then -dnl PKG_CHECK_MODULES(GNOME2, [libgnomeui-2.0]) -dnl VLC_ADD_CFLAGS([gnome2],[${GNOME2_CFLAGS}]) -dnl VLC_ADD_LIBS([gnome2],[${GNOME2_LIBS}]) -dnl VLC_ADD_PLUGIN([gnome2]) -dnl if test "${SYS}" != "mingw32"; then -dnl NEED_GNOME2_MAIN=yes -dnl fi -dnl fi - -dnl -dnl wxWidgets module -dnl -AC_ARG_ENABLE(wxwidgets, - [ --enable-wxwidgets wxWidgets support (default disabled)]) - -if test "${enable_wxwidgets}" = "yes" -then - AC_MSG_WARN([wxWidgets support is deprecated and will be removed. Consider using Qt4 instead.]) - WXWIDGETS_PATH="${PATH}" - AC_ARG_WITH(wx-config-path, - [ --with-wx-config-path=PATH wx-config path (default search in \$PATH)], - [ if test "${with_wx_config_path}" != "no" - then - WXWIDGETS_PATH="${with_wx_config_path}:${PATH}" - fi ]) - WXWIDGETS_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 - WXWIDGETS_NAME="${with_wx_config}" - fi ]) - # look for wx-config - AC_PATH_PROG(WX_CONFIG, ${WXWIDGETS_NAME}, no, ${WXWIDGETS_PATH}) - if test "${WX_CONFIG}" != "no" -a "${CXX}" != "" - then - if expr 2.6.0 \> `${WX_CONFIG} --version` >/dev/null - then - AC_MSG_ERROR([You need wxWidgets version 2.6.0 or upwards. Please upgrade and try again.]) - fi - AC_LANG_PUSH(C++) - # Turn this error: - # playlist.cpp:1351: error: ISO C++ forbids cast to non-reference type - # into a warning. However better would be to fix playlist.cpp - AC_CACHE_CHECK([if \$CXX accepts -fpermissive], - [ac_cv_cxx_fpermissive], - [CXXFLAGS="${CXXFLAGS_save} -fpermissive" - AC_TRY_COMPILE([],,ac_cv_cxx_fpermissive=yes, - ac_cv_cxx_fpermissive=no)]) - if test "${ac_cv_cxx_fpermissive}" = "yes"; then - VLC_ADD_CXXFLAGS([wxwidgets],-fpermissive) - fi - VLC_ADD_LIBS([wxwidgets],[`${WX_CONFIG} --libs`]) - VLC_ADD_CXXFLAGS([wxwidgets],[`${WX_CONFIG} --cxxflags`]) - # check if we must link against gtk2 libs - # if __WXGTK20__ && __WXGTK__ are defined - # for modules/gui/wxwidgets/video.cpp - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([ -#include -#ifdef __WXGTK20__ -#error ok, we need to link against gtk2 -#endif - ])],[WXGTK=no],[WXGTK=yes]) - if test "$WXGTK" = "yes"; then - ${PKG_CONFIG} --exists gtk+-2.0 && VLC_ADD_LIBS([wxwidgets],[`$PKG_CONFIG --libs gtk+-2.0`]) - fi - 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]) - else - AC_MSG_ERROR([You need a unicode build of wxWidgets. Please fix that and try again. Better yet, you can configure with --disable-wxwidgets.]) - fi - if test "$have_libcdio" = "yes" - then - VLC_ADD_LIBS([wxwidgets],[$LIBCDIO_LIBS]) - VLC_ADD_CXXFLAGS([wxwidgets],[$LIBCDIO_CFLAGS]) - else - AC_MSG_WARN([Probe disc disabled because ok libcdio library not found]) - fi - - if test "$have_libvcdinfo" = "yes" - then - VLC_ADD_LIBS([wxwidgets],[$VCDINFO_LIBS]) - VLC_ADD_CXXFLAGS([wxwidgets],[$VCDINFO_CFLAGS]) - else - AC_MSG_WARN([VCD information on Probe disc disabled because ok libvcdinfo not found]) - fi - - # now look for the wxprec.h header - CPPFLAGS="${CPPFLAGS_save} ${CXXFLAGS_wxwidgets}" - ac_cv_wx_headers=yes - AC_CHECK_HEADERS(wx/wxprec.h, , [ - ac_cv_wx_headers=no - echo "Cannot find wxWidgets development headers." - ]) - if test "${ac_cv_wx_headers}" = "yes" - then - VLC_ADD_PLUGIN([wxwidgets]) - AC_DEFINE([HAVE_WX], 1, [Define to 1 if you have WxWidgets library.]) - ALIASES="${ALIASES} wxvlc" - fi - CPPFLAGS="${CPPFLAGS_save}" - AC_LANG_POP(C++) - fi - dnl WxWidgets plugin will yield incorrect code without this - VLC_ADD_CXXFLAGS([wxwidgets], [-fno-strict-aliasing]) -fi - dnl dnl QT 4 dnl -enableqt4=false AC_ARG_ENABLE(qt4, - [ --enable-qt4 QT 4 support (default enabled) ]) -AS_IF([test "${enable_qt4}" != "no" && - (test "${SYS}" != "darwin" || test "${enable_qt4}" = "yes")], [ - PKG_CHECK_MODULES(QT4, [QtCore QtGui >= 4.2.0], - [ VLC_ADD_PLUGIN([qt4]) - AC_DEFINE([HAVE_QT4], 1, [Define to 1 if you have QT4 library.]) - ALIASES="${ALIASES} qvlc" - enableqt4=true - if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" -a "${SYS}" != "cygwin" -a "${SYS}" != "darwin"; then - VLC_ADD_LIBS([qt4],[$QT4_LIBS -lX11]) - else - VLC_ADD_LIBS([qt4],[$QT4_LIBS]) - fi - VLC_ADD_CXXFLAGS([qt4],[$QT4_CFLAGS -DQT4LOCALEDIR=\\\\\\\"$($PKG_CONFIG --variable=prefix QtCore)/share/qt4/translations/\\\\\\\"]) - AC_PATH_PROGS(MOC, [moc-qt4 moc], moc,`$PKG_CONFIG --variable=exec_prefix QtCore`/bin) - AC_PATH_PROG(RCC, rcc, rcc,`$PKG_CONFIG --variable=exec_prefix QtCore`/bin) - AC_PATH_PROGS(UIC, [uic-qt4 uic], uic,`$PKG_CONFIG --variable=exec_prefix QtCore`/bin) - ], - AS_IF([test "${enable_qt4}" = "yes"],[ - AC_MSG_ERROR(QT4 library not found) - ],[ - AC_MSG_WARN(QT4 library not found) - ]) - ) + [ --enable-qt4 QT 4 support (default enabled) ],, [ + AS_IF([test "${SYS}" = "darwin"], [enable_qt4=no]) +]) +AS_IF([test "${enable_qt4}" != "no"], [ + PKG_CHECK_MODULES(QT4, [QtCore QtGui >= 4.2.0], [ + VLC_ADD_PLUGIN([qt4]) + AC_DEFINE([HAVE_QT4], 1, [Define to 1 if you have QT4 library.]) + ALIASES="${ALIASES} qvlc" + AS_IF([test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" -a "${SYS}" != "cygwin" -a "${SYS}" != "darwin"], [ + VLC_ADD_LIBS([qt4],[$QT4_LIBS -lX11]) + ], [ + VLC_ADD_LIBS([qt4],[$QT4_LIBS]) + ]) + QT4LOCALEDIR="$($PKG_CONFIG --variable=prefix QtCore)/share/qt4/translations/" + AC_SUBST(QT4LOCALEDIR) + VLC_ADD_CXXFLAGS([qt4],[$QT4_CFLAGS -DQT4LOCALEDIR=\\\\\\\"${QT4LOCALEDIR}\\\\\\\"]) + AC_PATH_PROGS(MOC, [moc-qt4 moc], moc,`$PKG_CONFIG --variable=exec_prefix QtCore`/bin) + AC_PATH_PROG(RCC, rcc, rcc,`$PKG_CONFIG --variable=exec_prefix QtCore`/bin) + AC_PATH_PROGS(UIC, [uic-qt4 uic], uic,`$PKG_CONFIG --variable=exec_prefix QtCore`/bin) + ], [ + AS_IF([test "${enable_qt4}" = "yes"],[ + AC_MSG_ERROR([Qt 4 library not found]) + ],[ + AC_MSG_WARN([Qt 4 library not found]) + ]) + enable_qt4="no" + ]) ]) -AM_CONDITIONAL(ENABLE_QT4, test "$enableqt4" = "true") +AM_CONDITIONAL(ENABLE_QT4, [test "x$enable_qt4" != "xno"]) dnl dnl WinCE GUI module @@ -5366,7 +4895,7 @@ AC_ARG_ENABLE(wince, [ --enable-wince Windows CE interface (default enabled with MinGW)]) if test "${enable_wince}" != "no"; then if test "${SYS}" = "mingwce"; then - VLC_ADD_BUILTINS([wince]) + VLC_ADD_PLUGIN([wince]) VLC_ADD_CXXFLAGS([wince],[]) VLC_ADD_LIBS([wince],[-lcommctrl -lcommdlg -laygshell]) dnl Gross hack @@ -5382,73 +4911,9 @@ fi dnl dnl Simple test for skins2 dependency dnl -if test "${enable_skins2}" != "no" -then - if test "${WX_CONFIG}" = "no" - then - AC_MSG_ERROR([The skins2 module depends on the wxWidgets development package. Without it you won't be able to open any dialog box from the interface, which makes the skins2 interface rather useless. Install the wxWidgets development package or alternatively you can also configure with: --disable-wxwidgets --disable-skins2.]) - fi -fi - -dnl dnl -dnl dnl Qt module -dnl dnl -dnl AC_ARG_ENABLE(qt, -dnl [ --enable-qt Qt interface support (default disabled)], -dnl [if test "${enable_qt}" = "yes"; then -dnl VLC_ADD_PLUGIN([qt]) -dnl ALIASES="${ALIASES} qvlc" -dnl VLC_ADD_LIBS([qt],[-L${QTDIR}/lib]) -dnl LDFLAGS="${LDFLAGS_save} ${LDFLAGS_qt}" -dnl AC_CHECK_LIB(qt-mt,main,[ -dnl VLC_ADD_LIBS([qt],[-lqt-mt]) -dnl ],[ -dnl AC_CHECK_LIB(qt,main,[ -dnl VLC_ADD_LIBS([qt],[-lqt]) -dnl ]) -dnl ]) -dnl LDFLAGS="${LDFLAGS_save}" -dnl VLC_ADD_CXXFLAGS([qt],[-I/usr/include/qt3 -I/usr/include/qt -I${QTDIR}/include]) -dnl if test -x ${QTDIR}/bin/moc -dnl then -dnl MOC=${QTDIR}/bin/moc -dnl else -dnl MOC=moc -dnl fi -dnl fi]) -dnl -dnl dnl -dnl dnl KDE module -dnl dnl -dnl AC_ARG_ENABLE(kde, -dnl [ --enable-kde KDE interface support (default disabled)], -dnl [if test "${enable_kde}" = "yes"; then -dnl VLC_ADD_PLUGIN([kde]) -dnl ALIASES="${ALIASES} kvlc" -dnl VLC_ADD_LIBS([kde],[-L${KDEDIR}/lib]) -dnl dnl Check for -lkfile (only in KDE 2) or -lkdeui -lkio (KDE 3) -dnl LDFLAGS="${LDFLAGS_save} ${LDFLAGS_kde}" -dnl AC_CHECK_LIB(kfile,main,[ -dnl VLC_ADD_LIBS([kde],[-lkfile]) -dnl ]) -dnl LDFLAGS="${LDFLAGS_save} ${LDFLAGS_kde}" -dnl AC_CHECK_LIB(kdeui,main,[ -dnl VLC_ADD_LIBS([kde],[-lkdeui]) -dnl ]) -dnl LDFLAGS="${LDFLAGS_save} ${LDFLAGS_kde}" -dnl AC_CHECK_LIB(kio,main,[ -dnl VLC_ADD_LIBS([kde],[-lkio]) -dnl ]) -dnl LDFLAGS="${LDFLAGS_save}" -dnl VLC_ADD_CXXFLAGS([kde],[-I/usr/include/kde -I/usr/include/qt3 -I/usr/include/qt]) -dnl VLC_ADD_CXXFLAGS([kde],[-I${KDEDIR}/include -I${QTDIR}/include]) -dnl if test -x ${QTDIR}/bin/moc -dnl then -dnl MOC=${QTDIR}/bin/moc -dnl else -dnl MOC=moc -dnl fi -dnl fi]) +AS_IF([test "${enable_skins2}" != "no" && test "x$enable_qt4" = "xno"], [ + AC_MSG_ERROR([The skins2 module depends on a the Qt4 development package. Without it you won't be able to open any dialog box from the interface, which makes the skins2 interface rather useless. Install the Qt4 development package or alternatively you can also configure with: --disable-qt4 --disable-skins2.]) +]) dnl dnl Opie QT embedded module @@ -5499,6 +4964,7 @@ then VLC_ADD_LDFLAGS([macosx], [-Wl,-framework,IOKit]) VLC_ADD_LDFLAGS([macosx], [-Wl,-framework,QuickTime]) VLC_ADD_LDFLAGS([macosx qtcapture], [-Wl,-framework,QTKit]) + VLC_ADD_LDFLAGS([qtcapture], [-Wl,-framework,CoreAudio]) VLC_ADD_LDFLAGS([macosx], [-Wl,-framework,WebKit]) VLC_ADD_LDFLAGS([opengllayer qtcapture], [-Wl,-framework,QuartzCore]) VLC_ADD_LDFLAGS([qtcapture], [-Wl,-framework,CoreVideo]) @@ -5511,7 +4977,7 @@ then ORIGCFLAGS=$CFLAGS CFLAGS="$CFLAGS -x objective-c" - AC_CHECK_HEADER(QuartzCore/CALayer.h, + AC_TRY_COMPILE([#import ], [VLC_ADD_PLUGIN([opengllayer]) VLC_ADD_OBJCFLAGS([opengllayer], [-isysroot /Developer/SDKs/MacOSX10.5.sdk -mmacosx-version-min=10.5])]) CFLAGS=$ORIGCFLAGS @@ -5691,7 +5157,8 @@ dnl AtmoLight (homebrew AmbiLight) dnl if test "${SYS}" = "mingw32" -o "${SYS}" = "linux"; then AC_ARG_ENABLE(atmo, -[ --disable-atmo AtmoLight (homebrew philips ambilight) (default enabled)]) +AS_HELP_STRING([--disable-atmo],[AtmoLight (homebrew philips ambilight) + (default enabled)])) if test "${enable_atmo}" != "no"; then AC_LANG_PUSH(C++) VLC_ADD_PLUGIN([atmo]) @@ -5739,33 +5206,15 @@ dnl libgcrypt dnl AC_ARG_ENABLE(libgcrypt, [ --enable-libgcrypt libgcrypts support (default enabled)]) - -GCRYPT_PATH="${PATH}" -AC_ARG_WITH(libgcrypt-config-path, -[ --with-libgcrypt-config-path=PATH libgcrypt-config path (default search in \$PATH)], - [ if test "${with_libgcrypt_config_path}" != "no" - then - GCRYPT_PATH="${with_libgcrypt_config_path}:${PATH}" - fi ]) - -if test "${enable_libgcrypt}" != "no" -then - dnl Workaround for cross-compiling since AM_PATH_LIBGRYPT doesn't dectect - dnl it and looks for libgcrypt headers in the wrong place. - if test "${host_cpu}" = "${build_cpu}" - then - AM_PATH_LIBGCRYPT([1:1.1.94], [have_libgcrypt="yes"], [have_libgcrypt="no"]) - else - AC_CHECK_HEADERS(gcrypt.h,have_libgcrypt="yes",have_libgcrypt="no") - fi +AS_IF([test "${enable_libgcrypt}" != "no"], [ + AM_PATH_LIBGCRYPT([1:1.1.94], [have_libgcrypt="yes"], [have_libgcrypt="no"]) +]) +if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"; then + AS_IF([test "${have_libgcrypt}" = "yes"],[ + VLC_ADD_LIBS([rtp stream_out_rtp], [${LIBGCRYPT_LIBS}]) + ]) fi AM_CONDITIONAL([HAVE_LIBGCRYPT], [test "${have_libgcrypt}" = "yes"]) -AS_IF([test "${have_libgcrypt}" = "yes"],[ - # look for libgcrypt-config - AC_PATH_PROG(GCRYPT_CONFIG, "libgcrypt-config", no, ${GCRYPT_PATH}) - GCRYPT_CFLAGS=`${GCRYPT_CONFIG} --cflags` - GCRYPT_LIBS=`${GCRYPT_CONFIG} --libs` -]) dnl dnl TLS/SSL @@ -5782,10 +5231,11 @@ AS_IF([test "${enable_gnutls}" != "no"], [ VLC_ADD_LIBS([gnutls], [-lz]) VLC_ADD_LIBS([gnutls], [${LTLIBINTL}]) ]) + dnl The GnuTLS plugin invokes gcry_control directly. AS_IF([test "${have_libgcrypt}" = "yes"],[ - VLC_ADD_LIBS([gnutls], ${GCRYPT_LIBS}) - VLC_ADD_CFLAGS([gnutls], ${GCRYPT_CFLAGS}) - ], [-lgpg-error]) + VLC_ADD_LIBS([gnutls], [${LIBGCRYPT_LIBS}]) + VLC_ADD_CFLAGS([gnutls], [${LIBGCRYPT_CFLAGS}]) + ]) VLC_ADD_LIBS([gnutls], [$GNUTLS_LIBS]) ], [ AS_IF([test "${enable_gnutls}" = "yes"], [ @@ -5794,6 +5244,24 @@ AS_IF([test "${enable_gnutls}" != "no"], [ ]) ]) + +dnl +dnl RemoteOSD plugin (VNC client as video filter) +dnl +AC_ARG_ENABLE(remoteosd, + [ --disable-remoteosd RemoteOSD plugin (default enabled)]) + +AS_IF([test "${enable_remoteosd}" != "no"], [ + AS_IF([test "${have_libgcrypt}" = "yes"],[ + VLC_ADD_PLUGIN([remoteosd]) + VLC_ADD_LIBS([remoteosd], ${LIBGCRYPT_LIBS}) + VLC_ADD_CFLAGS([remoteosd], ${LIBGCRYPT_CFLAGS}) + ], [ + AC_MSG_ERROR([libgcrypt support required for RemoteOSD plugin]) + ]) +]) + + dnl dnl update checking system dnl @@ -5805,76 +5273,29 @@ then then AC_MSG_ERROR([libgcrypt is required for update checking system]) fi - VLC_ADD_LIBS([libvlc], ${GCRYPT_LIBS}) - VLC_ADD_CFLAGS([libvlc], ${GCRYPT_CFLAGS}) + VLC_ADD_LIBS([libvlc], [${LIBGCRYPT_LIBS}]) + VLC_ADD_CFLAGS([libvlc], [${LIBGCRYPT_CFLAGS}]) AC_DEFINE([UPDATE_CHECK], 1, [Define if you want to use the VLC update mechanism]) fi dnl -dnl Endianness check, AC_C_BIGENDIAN doesn't work if we are cross-compiling +dnl Endianness check dnl -dnl We give the user the opportunity to specify -dnl --with-words=big or --with-words=little ; otherwise, try to guess -dnl -AC_ARG_WITH(words, - [ --with-words=endianness set endianness (big or little)]) - case "${with_words}" in - big) - ac_cv_c_bigendian=yes - ;; - little) - ac_cv_c_bigendian=no - ;; - *) - dnl Try to guess endianness by matching patterns on a compiled - dnl binary, by looking for an ASCII or EBCDIC string - AC_CACHE_CHECK([whether the byte order is big-endian], - [ac_cv_c_bigendian], - [ac_cv_c_bigendian="unknown" - [cat >conftest.c <>config.log 2>&1 \ - && test -f conftest.o - then - if test "`strings conftest.o | grep BIGenDianSyS`" - then - ac_cv_c_bigendian="yes" - fi - if test "`strings conftest.o | grep LiTTleEnDian`" - then - ac_cv_c_bigendian="no" - fi - fi - fi - ]) - if test "${ac_cv_c_bigendian}" = "unknown" - then - AC_MSG_ERROR([Could not guess endianness, please use --with-words]) - fi - ;; - esac -dnl Now we know what to use for endianness, just put it in the header -if test "${ac_cv_c_bigendian}" = "yes" -then - AC_DEFINE(WORDS_BIGENDIAN, 1, big endian system) -fi +AC_C_BIGENDIAN +AS_IF([test "${ac_cv_c_bigendian}" = "yes"], [ + DEFS_BIGENDIAN="-DWORDS_BIGENDIAN=1" +], [ + DEFS_BIGENDIAN="" +]) +AC_SUBST(DEFS_BIGENDIAN) dnl dnl DLL loader copied from MPlayer copied from somewhere else (WINE ?) dnl loader=false AC_ARG_ENABLE(loader, - [ --enable-loader build DLL loader for ELF i386 platforms (default disabled)]) + AS_HELP_STRING([--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_PLUGIN([dmo]) @@ -5884,6 +5305,8 @@ AS_IF([test "${enable_loader}" = "yes"], VLC_ADD_LIBS([quicktime],[../../libs/loader/libloader.la -lpthread]) VLC_ADD_CPPFLAGS([realaudio],[-I../../@top_srcdir@/libs/loader -DLOADER]) VLC_ADD_LIBS([realaudio],[../../libs/loader/libloader.la]) + VLC_ADD_CPPFLAGS([realvideo],[-I../../@top_srcdir@/libs/loader -DLOADER]) + VLC_ADD_LIBS([realvideo],[../../libs/loader/libloader.la]) ]) AC_ARG_WITH(,[Components:]) @@ -5900,7 +5323,8 @@ dnl Microsoft ActiveX support dnl activex=false AC_ARG_ENABLE(activex, - [ --enable-activex build a vlc-based ActiveX control (default enabled on Win32)]) + AS_HELP_STRING([--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" @@ -5924,13 +5348,13 @@ then AC_CHECK_HEADERS(objsafe.h, VLC_ADD_CXXFLAGS([activex],[-DHAVE_OBJSAFE_HEADER]),, [ - #if HAVE_OLE2_H + #if HAVE_OLE2_H # include #endif - ] + ] ) activex=: - PLUGINS_BINDINGS="${PLUGINS_BINDINGS} activex" + PLUGINS_BINDINGS="${PLUGINS_BINDINGS} activex" ], [ AC_MSG_ERROR([required OLE headers are missing from your system]) ] )], @@ -5950,7 +5374,8 @@ dnl Mozilla plugin dnl mozilla=false AC_ARG_ENABLE(mozilla, - [ --enable-mozilla build a vlc-based Firefox/Mozilla plugin (default disabled)]) + AS_HELP_STRING([--enable-mozilla],[build a vlc-based Firefox/Mozilla plugin + (default disabled)])) AC_ARG_WITH(mozilla-sdk-path, [ --with-mozilla-sdk-path=PATH path to mozilla sdk]) AC_LANG_PUSH(C++) @@ -6013,24 +5438,70 @@ then CPPFLAGS="${CPPFLAGS_save}" ], [ - AC_PATH_PROG(MOZILLA_CONFIG, mozilla-config, no) - if test "${MOZILLA_CONFIG}" = "no" - then - AC_PATH_PROG(SEAMONKEY_CONFIG, seamonkey-config, no) - if test "${SEAMONKEY_CONFIG}" = "no" - then - AC_PATH_PROG(XULRUNNER_CONFIG, xulrunner-config, no) - if test "${XULRUNNER_CONFIG}" = "no" + PKG_CHECK_MODULES([XULRUNNER], [libxul], + [ + PKG_CHECK_MODULES([FIREFOX_XPCOM], [firefox-xpcom], + [], + [ + PKG_CHECK_MODULES([MOZILLA_NSPR], [mozilla-nspr], + [], + [ + PKG_CHECK_MODULES([NSPR], [nspr], + [], + [ + AC_MSG_ERROR([Please install the nspr development tools.]) + ] + ) + ] + ) + ] + ) + CPPFLAGS="${CPPFLAGS_save} ${XULRUNNER_CFLAGS} ${XULRUNNER_CPPFLAGS} ${FIREFOX_XPCOM_CFLAGS} ${MOZILLA_NSPR_CFLAGS} ${NSPR_CFLAGS} ${MOZILLA_CPPFLAGS}" + MOZILLA_REQUIRED_HEADERS=1 + AC_CHECK_HEADERS(npapi.h,,MOZILLA_REQUIRED_HEADERS=0) + AC_CHECK_HEADERS(npruntime.h,,MOZILLA_REQUIRED_HEADERS=0, + [#if HAVE_NPAPI_H + # include + #endif + ]) + if test "${MOZILLA_REQUIRED_HEADERS}" = "0"; then + AC_MSG_ERROR([Please install the Mozilla runtime package xulrunner-devel; plugplugin/npapi.h and plugin/npruntime.h were not found.]) + fi + MOZILLA_REQUIRED_HEADERS= + mozilla=: + AC_DEFINE([XP_UNIX],[1],[Defined for Mozilla as we are Unix]) + AC_DEFINE([MOZ_X11],[1],[Defined as Unix mozilla uses X11]) + AC_DEFINE([OJI],[1],[Java Runtime Interface]) + AC_CHECK_HEADERS(X11/xpm.h,,AC_MSG_ERROR([Please install libXpm-devel library for required X11/xpm.h])) + VLC_ADD_LIBS([mozilla], [${X_LIBS} ${X_PRE_LIBS} -lX11 -lXt -lXpm]) + VLC_ADD_CPPFLAGS([mozilla],[${CPPFLAGS}]) + VLC_ADD_LDFLAGS([mozilla],[${MOZILLA_LDFLAGS}]) + VLC_ADD_LIBS([mozilla],[${FIREFOX_LIBS} ${MOZILLA_NSPR_LIBS} ${NSPR_LIBS}]) + VLC_ADD_PLUGIN([mozilla]) + MOZILLA_CONFIG= + CPPFLAGS="${CPPFLAGS_save}" + ], + [ + AC_PATH_PROG(MOZILLA_CONFIG, mozilla-config, no) + if test "${MOZILLA_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}" + AC_PATH_PROG(SEAMONKEY_CONFIG, seamonkey-config, no) + if test "${SEAMONKEY_CONFIG}" = "no" + then + 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 + MOZILLA_CONFIG="${SEAMONKEY_CONFIG}" + fi fi - else - MOZILLA_CONFIG="${SEAMONKEY_CONFIG}" - fi - fi + ] + ) ] ) if test ! -z "${MOZILLA_CONFIG}" @@ -6159,16 +5630,6 @@ then VLC_ADD_PLUGIN([test4]) fi -dnl -dnl Microsoft Layer for Unicode for WIN9x/ME -dnl -if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin" -then - AC_CHECK_LIB(unicows, LoadUnicowsSymbol, [ - VLC_ADD_LDFLAGS([vlc libvlc],[-Wl,--exclude-libs,libunicows.a -lunicows]) - ]) -fi - dnl dnl gtk_main plugin dnl @@ -6250,17 +5711,22 @@ AS_IF([test "${SYS}" = "mingw32"], [ dnl dnl Stuff used by the program dnl -AC_DEFINE_UNQUOTED(VERSION_MESSAGE, "${VERSION} ${CODENAME}", [Simple version string]) -AC_DEFINE_UNQUOTED(COPYRIGHT_MESSAGE, "VLC media player - version ${VERSION} ${CODENAME} - (c) ${COPYRIGHT_YEARS} the VideoLAN team", [Copyright string]) +VERSION_MESSAGE="${VERSION} ${CODENAME}" +COPYRIGHT_MESSAGE="VLC media player - version ${VERSION_MESSAGE} - (c) ${COPYRIGHT_YEARS} the VideoLAN team" +AC_DEFINE_UNQUOTED(VERSION_MESSAGE, "${VERSION_MESSAGE}", [Simple version string]) +AC_DEFINE_UNQUOTED(COPYRIGHT_MESSAGE, "${COPYRIGHT_MESSAGE}", [Copyright string]) AC_DEFINE_UNQUOTED(COPYRIGHT_YEARS, "${COPYRIGHT_YEARS}", [The copyright years]) AC_DEFINE_UNQUOTED(CONFIGURE_LINE, "${CONFIGURE_LINE}", [The ./configure command line]) AC_DEFINE_UNQUOTED(PACKAGE_VERSION_MAJOR,"${VERSION_MAJOR}", [version major number]) 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(COPYRIGHT_MESSAGE) +AC_SUBST(VERSION_MESSAGE) AC_SUBST(VERSION_MAJOR) AC_SUBST(VERSION_MINOR) AC_SUBST(VERSION_REVISION) +AC_SUBST(COPYRIGHT_YEARS) AC_DEFINE_UNQUOTED(VLC_COMPILE_BY, "`whoami`", [user who ran configure]) if test "${build_os}" = "cygwin" then @@ -6276,7 +5742,7 @@ dnl Handle substvars that use $(top_srcdir) dnl VLC_CONFIG="top_builddir=\"\$(top_builddir)\" \$(top_builddir)/vlc-config" AC_SUBST(VLC_CONFIG) -CPPFLAGS_save="${CPPFLAGS_save} -I\$(top_srcdir)/include -I\$(top_builddir)/include" +CPPFLAGS_save="-I\$(top_srcdir)/include -I\$(top_builddir)/include ${CPPFLAGS_save}" dnl dnl Restore *FLAGS @@ -6312,6 +5778,11 @@ VLC_OUTPUT_VLC_CONFIG_IN AC_CONFIG_FILES([ extras/package/win32/vlc.win32.nsi + extras/package/macosx/Info.plist + extras/package/macosx/Resources/English.lproj/InfoPlist.strings + extras/package/macosx/plugin/Info.plist + extras/package/macosx/plugin/InstallerInfo.plist + extras/package/macosx/plugin/English.lproj/InfoPlist.strings Makefile projects/activex/Makefile projects/activex/axvlc.inf @@ -6351,9 +5822,9 @@ AC_CONFIG_FILES([ modules/audio_mixer/Makefile modules/audio_output/Makefile modules/codec/Makefile + modules/codec/avcodec/Makefile modules/codec/cmml/Makefile modules/codec/dmo/Makefile - modules/codec/ffmpeg/Makefile modules/codec/subtitles/Makefile modules/codec/spudec/Makefile modules/codec/xvmc/Makefile @@ -6361,6 +5832,7 @@ AC_CONFIG_FILES([ modules/control/http/Makefile modules/demux/Makefile modules/demux/asf/Makefile + modules/demux/avformat/Makefile modules/demux/avi/Makefile modules/demux/mp4/Makefile modules/demux/mpeg/Makefile @@ -6373,7 +5845,6 @@ AC_CONFIG_FILES([ modules/gui/qnx/Makefile modules/gui/qt4/Makefile modules/gui/skins2/Makefile - modules/gui/wxwidgets/Makefile modules/gui/wince/Makefile modules/meta_engine/Makefile modules/misc/Makefile @@ -6384,11 +5855,11 @@ AC_CONFIG_FILES([ modules/misc/testsuite/Makefile modules/misc/playlist/Makefile modules/misc/osd/Makefile + modules/misc/stats/Makefile modules/misc/xml/Makefile modules/misc/probe/Makefile modules/mux/Makefile modules/mux/mpeg/Makefile - modules/mux/rtp/Makefile modules/packetizer/Makefile modules/services_discovery/Makefile modules/stream_out/Makefile @@ -6414,11 +5885,8 @@ AC_OUTPUT ${SHELL} ./config.status --file=vlc-config chmod 0755 vlc-config -dnl echo "Enabled builtin modules :" -dnl for a in `./vlc-config --target builtin` ; do echo $a; done | sed -e 's,modules\/\(.*\)\/lib\(.*\)\.a,\2 (\1),' - -dnl echo "Enabled plugin modules :" -dnl for a in `./vlc-config --target plugin` ; do echo $a; done | sed -e 's,modules\/\(.*\)\/lib\(.*\)_plugin,\2 (\1),' +/bin/echo -n "Enabled modules :" +./vlc-config --list plugin dnl Shortcut to nice compile message rm -f compile @@ -6453,8 +5921,6 @@ echo "build vlc executable : no" fi echo "plugins/bindings :${PLUGINS_BINDINGS} -You can check which modules have been enabled -with \`./vlc-config --list plugin'. You can tune the compiler flags in vlc-config. To build vlc and its plugins, type \`./compile' or \`make'. "