X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=configure.ac;h=599927b71f89081fece70b2f4faaa47021eb95d3;hb=a2b72dbb66f9efbff9ff85f04dca60824f0df9db;hp=718f0e5394584e0805a46f1c4641505b9e5bf588;hpb=43f84f851e32c70350c55396a3b43bce37c8dff8;p=vlc diff --git a/configure.ac b/configure.ac index 718f0e5394..599927b71f 100644 --- a/configure.ac +++ b/configure.ac @@ -1,18 +1,23 @@ dnl Autoconf settings for vlc -AC_INIT(vlc, 0.9.0) -VERSION_MAJOR="0" -VERSION_MINOR="9" +AC_COPYRIGHT([Copyright 2002-2009 the VideoLAN team]) + +AC_INIT(vlc, 1.0.0-git) +VERSION_MAJOR="1" +VERSION_MINOR="0" VERSION_REVISION="0" -VERSION_EXTRA="" +VERSION_EXTRA="-git" +PKGDIR="vlc" +AC_SUBST(PKGDIR) CONFIGURE_LINE="`echo "$0 $ac_configure_args" | sed -e 's/\\\/\\\\\\\/g'`" -CODENAME="Grishenko" -COPYRIGHT_YEARS="1996-2008" +CODENAME="Goldeneye" +COPYRIGHT_YEARS="1996-2009" AC_PREREQ(2.59c) AC_CONFIG_SRCDIR(src/libvlc.c) AC_CONFIG_AUX_DIR(autotools) +AC_CONFIG_MACRO_DIR(m4) AC_CANONICAL_BUILD AC_CANONICAL_HOST @@ -29,6 +34,16 @@ AS_IF([test "x${enable_maintainer_mode}" != "xno"], [enable_maintainer_mode="yes"]) AM_MAINTAINER_MODE +dnl +dnl Directories +dnl +dnl vlcincludedir="\${includedir}/\${PKGDIR}" +dnl AC_SUBST(vlcincludedir) +vlcdatadir="\${datadir}/\${PKGDIR}" +AC_SUBST(vlcdatadir) +vlclibdir="\${libdir}/\${PKGDIR}" +AC_SUBST(vlclibdir) + dnl dnl Deprecated options dnl to notify packagers that stuff has changed @@ -58,6 +73,7 @@ dnl AC_PROG_CC_C99 AC_USE_SYSTEM_EXTENSIONS AC_DEFINE([_FORTIFY_SOURCE], 2, [Define to '2' to get glibc warnings.]) + AM_PROG_CC_C_O AC_PROG_CXX AC_PROG_CPP @@ -96,13 +112,14 @@ dnl Check for the contrib directory dnl AC_ARG_WITH(contrib, [ --without-contrib do not use the libraries in extras/contrib],[],[]) - if test "${with_contrib}" != "no"; then + AS_IF([test "${with_contrib}" != "no"],[ AC_MSG_CHECKING([for libs in extras/contrib]) topdir="`dirname $0`" if test "`echo \"$topdir\" | cut -c 1`" != "/"; then topdir="`pwd`/$topdir" fi - if test "`grep HOST ${topdir}/extras/contrib/config.mak 2>/dev/null|awk '{print $3}'`" != "`$CC -dumpmachine`"; then + AS_IF([test -d ${topdir}/extras/contrib/lib],[ + AS_IF([test "`grep HOST ${topdir}/extras/contrib/config.mak 2>/dev/null|awk '{print $3}'`" != "`$CC -dumpmachine`"],[ if test "${with_contrib}" = "yes"; then AC_MSG_RESULT([no]) AC_MSG_ERROR([ not using the libs in extras/contrib as it is not the same host]) @@ -110,8 +127,7 @@ AC_ARG_WITH(contrib, AC_MSG_RESULT([no]) AC_MSG_WARN([ not using the libs in extras/contrib as it is not the same host]) fi - else - if test -d ${topdir}/extras/contrib/lib; then + ],[ AC_MSG_RESULT([yes]) export PATH=${topdir}/extras/contrib/bin:$PATH CPPFLAGS="${CPPFLAGS} -I${topdir}/extras/contrib/include" @@ -144,11 +160,11 @@ AC_ARG_WITH(contrib, export LIBRARY_PATH=${topdir}/extras/contrib/lib:$LIBRARY_PATH export BELIBRARIES=${topdir}/extras/contrib/lib:$BELIBRARIES fi - else - AC_MSG_RESULT([no]) - fi - fi -fi + ]) + ],[ + AC_MSG_RESULT([no]) + ]) +]) dnl dnl Set default values dnl @@ -233,6 +249,10 @@ case "${host_os}" in echo " Assuming --enable-realrtsp" enable_update_check="yes" echo " Assuming --enable-update-check" + enable_libass="yes" + echo " Assuming --enable-libass" + enable_asademux="yes" + echo " Assuming --enable-asademux" enable_skins2="no" echo " Assuming --disable-skins2" @@ -269,6 +289,7 @@ case "${host_os}" in AC_ARG_WITH(macosx-sdk, [ --with-macosx-sdk=DIR compile using the SDK in DIR]) if test "${with_macosx_sdk}" != "" ; then + CPP="${CPP} -isysroot ${with_macosx_sdk}" CC="${CC} -isysroot ${with_macosx_sdk}" CXX="${CXX} -isysroot ${with_macosx_sdk}" OBJC="${OBJC} -isysroot ${with_macosx_sdk}" @@ -277,6 +298,7 @@ case "${host_os}" in AC_ARG_WITH(macosx-version-min, [ --with-macosx-version-min=VERSION compile for MacOSX VERSION and above]) if test "${with_macosx_version_min}" != "" ; then + CPP="${CPP} -mmacosx-version-min=${with_macosx_version_min}" CC="${CC} -mmacosx-version-min=${with_macosx_version_min}" CXX="${CXX} -mmacosx-version-min=${with_macosx_version_min}" OBJC="${OBJC} -mmacosx-version-min=${with_macosx_version_min}" @@ -294,13 +316,17 @@ case "${host_os}" in case "${host_os}" in *wince* | *mingwce* | *mingw32ce* | *pe*) SYS=mingwce + dnl Sadly CeGCC still needs non-wince macros + AC_DEFINE([_WIN32_WINNT], 0x0501, [Define to '0x0500' for Windows 2000 APIs.]) ;; *mingw32*) SYS=mingw32 + AC_DEFINE([_WIN32_WINNT], 0x0500, [Define to '0x0500' for Windows 2000 APIs.]) ;; *cygwin*) dnl Check if we are using the mno-cygwin mode in which case we are dnl actually dealing with a mingw32 compiler. + AC_DEFINE([_WIN32_WINNT], 0x0500, [Define to '0x0500' for Windows 2000 APIs.]) AC_EGREP_CPP(yes, [#ifdef WIN32 yes @@ -315,12 +341,10 @@ 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 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]) + 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 stream_out_raop 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 remoteosd],[-lws2]) VLC_ADD_LIBS([libvlc],[-lmmtimer]) fi @@ -395,7 +419,7 @@ AC_CACHE_VAL(lt_cv_deplibs_check_method, [lt_cv_deplibs_check_method=pass_all]) AC_DISABLE_STATIC -AC_DISABLE_FAST_INSTALL +dnl AC_DISABLE_FAST_INSTALL AC_LIBTOOL_DLOPEN AC_LIBTOOL_WIN32_DLL m4_undefine([AC_PROG_F77]) @@ -488,6 +512,10 @@ AC_CHECK_FUNCS(strcasecmp,,[AC_CHECK_FUNCS(stricmp)]) AC_CHECK_FUNCS(strncasecmp,,[AC_CHECK_FUNCS(strnicmp)]) AC_CHECK_FUNCS(strcasestr,,[AC_CHECK_FUNCS(stristr)]) AC_FUNC_ALLOCA +AC_CHECK_FUNCS(fcntl) + +dnl Check for Linux system calls +AC_CHECK_FUNCS([vmsplice eventfd]) AH_BOTTOM([#include ]) @@ -522,16 +550,6 @@ AC_CHECK_FUNCS(send,,[ ]) ]) -AC_CHECK_FUNCS(gethostbyname,,[ - AC_CHECK_LIB(nsl,gethostbyname,[ - VLC_ADD_LIBS([cdda cddax libvlc],[-lnsl]) - ],[ - AC_CHECK_LIB(bind,gethostbyname,[ - VLC_ADD_LIBS([access_mms],[-lbind]) - ]) - ]) -]) - AC_CHECK_HEADERS(zlib.h, [ VLC_ADD_LIBS([access_http],[-lz]) ]) @@ -560,7 +578,7 @@ AC_CACHE_CHECK([for struct sockaddr_storage], ac_cv_struct_sockaddr_storage, [AC_TRY_COMPILE( [#include #if defined( UNDER_CE ) - # include + # include #elif defined( WIN32 ) # include #else @@ -642,7 +660,7 @@ AM_CONDITIONAL(BUILD_GETOPT, ${need_getopt}) if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then AC_TYPE_SIGNAL AC_CHECK_LIB(m,cos,[ - VLC_ADD_LIBS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom visual panoramix rotate noise grain],[-lm]) + VLC_ADD_LIBS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom visual panoramix rotate noise grain scene],[-lm]) ]) AC_CHECK_LIB(m,pow,[ 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]) @@ -791,7 +809,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 xlocale.h) -AC_CHECK_HEADERS([arpa/inet.h netinet/in.h netinet/udplite.h]) +AC_CHECK_HEADERS([arpa/inet.h netinet/in.h netinet/udplite.h sys/eventfd.h]) AC_CHECK_HEADERS([net/if.h], [], [], [ #include @@ -810,10 +828,13 @@ AC_CHECK_TYPE(ssize_t,, [ AC_DEFINE(ssize_t, int) ]) -dnl don't attemp to use poll on darwin, it can't poll a tty. select will do a better job. -if test "${SYS}" != "darwin"; then - AC_SEARCH_LIBS(poll, [poll], [AC_DEFINE(HAVE_POLL, 1, [Define to 1 if the OS is usabl... err, has poll().])]) +dnl Check for poll +AC_SEARCH_LIBS(poll, [poll], [AC_DEFINE(HAVE_POLL, 1, [Define to 1 if the OS is usabl... err, has poll().])], [ +if test ${SYS} != "mingw32" +then + AC_MSG_WARN([Your platform does not support poll(). VLC has it's own poll() implementation, but it is only intended to be used on Windows. VLC might crash or be insecure when you see this message. Either switch to an OS with a proper poll() implementation, or implement one for your OS in VLC]) fi +]) dnl Check for dirent need_dirent=false @@ -844,7 +865,7 @@ AC_EGREP_HEADER(timespec,sys/time.h,[ dnl Check for threads library if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then -AC_CHECK_HEADERS(pthread.h kernel/scheduler.h kernel/OS.h) +AC_CHECK_HEADERS(pthread.h) fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" dnl Find where are the X headers and libraries @@ -860,7 +881,7 @@ dnl Check for hal AC_ARG_ENABLE(hal, [ --enable-hal Linux HAL services discovery (default enabled)]) -if test "${enable_hal}" != "no" +if test "${enable_hal}" != "no" -a "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" then PKG_CHECK_MODULES(HAL, hal >= 0.5.0, [ @@ -878,7 +899,7 @@ AC_ARG_ENABLE(dbus, [ --enable-dbus Linux D-BUS message bus system (default enabled)]) case "${SYS}" in linux*|*bsd*) -if test "${enable_dbus}" != "no" +if test "${enable_dbus}" != "no" -a "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" then dnl api stable dbus PKG_CHECK_MODULES(DBUS, dbus-1 >= 1.0.0, @@ -933,7 +954,7 @@ if test "${ac_cv_c_ntohl_sys_param_h}" != "no"; then fi CFLAGS="${CFLAGS_save}" -RDC_PROG_CC_WFLAGS([all extra sign-compare undef pointer-arith bad-function-cast cast-align write-strings missing-prototypes volatile-register-var]) +RDC_PROG_CC_WFLAGS([all extra sign-compare undef pointer-arith bad-function-cast cast-align write-strings missing-prototypes volatile-register-var error-implicit-function-declaration]) RDC_PROG_CC_FLAGS_IFELSE([-pipe]) dnl Check for various optimization flags @@ -1015,7 +1036,12 @@ AC_CACHE_CHECK([if \$CC accepts -fomit-frame-pointer], [CFLAGS="${CFLAGS_save} -fomit-frame-pointer" AC_TRY_COMPILE([],,ac_cv_c_omit_frame_pointer=yes, ac_cv_c_omit_frame_pointer=no)]) if test "${ac_cv_c_omit_frame_pointer}" != "no"; then + if test "${SYS}" != "darwin"; then CFLAGS_OPTIM_NODEBUG="${CFLAGS_OPTIM_NODEBUG} -fomit-frame-pointer" + else + dnl On darwin we explicitely disable it. + CFLAGS_OPTIM_NODEBUG="${CFLAGS_OPTIM_NODEBUG} -fno-omit-frame-pointer" + fi fi dnl Check for Darwin plugin linking flags @@ -1082,42 +1108,9 @@ test "${enable_cprof}" != "yes" && enable_cprof="no" dnl dnl default modules dnl -VLC_ADD_PLUGIN([dummy]) -VLC_ADD_PLUGIN([stats]) -VLC_ADD_PLUGIN([logger]) -VLC_ADD_PLUGIN([memcpy]) -dnl Demuxers: -VLC_ADD_PLUGIN([mpgv]) -VLC_ADD_PLUGIN([mpga]) -VLC_ADD_PLUGIN([m4v]) -VLC_ADD_PLUGIN([m4a]) -VLC_ADD_PLUGIN([h264]) -VLC_ADD_PLUGIN([cdg]) -VLC_ADD_PLUGIN([ps]) -VLC_ADD_PLUGIN([avi]) -VLC_ADD_PLUGIN([asf]) -VLC_ADD_PLUGIN([mp4]) -dnl Text codecs: -VLC_ADD_PLUGIN([cvdsub]) -VLC_ADD_PLUGIN([svcdsub]) -VLC_ADD_PLUGIN([spudec]) -VLC_ADD_PLUGIN([subsdec]) -VLC_ADD_PLUGIN([subsusf]) -VLC_ADD_PLUGIN([t140]) -VLC_ADD_PLUGIN([dvbsub]) -VLC_ADD_PLUGIN([cc]) -dnl Video codecs: -VLC_ADD_PLUGIN([cinepak]) -dnl Audio codecs: -VLC_ADD_PLUGIN([araw]) -VLC_ADD_PLUGIN([adpcm]) -VLC_ADD_PLUGIN([mpeg_audio]) -VLC_ADD_PLUGIN([lpcm]) -VLC_ADD_PLUGIN([a52]) -VLC_ADD_PLUGIN([dts]) -VLC_ADD_PLUGIN([flac]) dnl Video filters: VLC_ADD_PLUGIN([deinterlace]) +VLC_ADD_PLUGIN([yuvp]) VLC_ADD_PLUGIN([invert]) VLC_ADD_PLUGIN([adjust]) VLC_ADD_PLUGIN([transform]) @@ -1132,42 +1125,18 @@ VLC_ADD_PLUGIN([noise]) VLC_ADD_PLUGIN([grain]) 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]) -VLC_ADD_PLUGIN([image]) VLC_ADD_PLUGIN([vmem]) VLC_ADD_PLUGIN([logo]) VLC_ADD_PLUGIN([magnify]) VLC_ADD_PLUGIN([puzzle]) VLC_ADD_PLUGIN([colorthres]) -dnl Meta demuxers: -VLC_ADD_PLUGIN([playlist]) -VLC_ADD_PLUGIN([export]) -VLC_ADD_PLUGIN([nsc]) -VLC_ADD_PLUGIN([xtag]) -dnl Channel mixing audio filters: -VLC_ADD_PLUGIN([converter_fixed]) -VLC_ADD_PLUGIN([mono]) -VLC_ADD_PLUGIN([trivial_channel_mixer]) -dnl Resampling audio filters: -VLC_ADD_PLUGIN([trivial_resampler]) -VLC_ADD_PLUGIN([ugly_resampler]) -dnl Audio mixers: -VLC_ADD_PLUGIN([trivial_mixer]) -dnl Video chromas: -VLC_ADD_PLUGIN([i420_rgb]) -VLC_ADD_PLUGIN([grey_yuv]) -dnl Video codecs: -VLC_ADD_PLUGIN([rawvideo]) -dnl Access filters: -VLC_ADD_PLUGIN([access_filter_timeshift]) -VLC_ADD_PLUGIN([access_filter_record]) -VLC_ADD_PLUGIN([access_filter_dump]) -VLC_ADD_PLUGIN([access_filter_bandwidth]) +VLC_ADD_PLUGIN([scene]) +VLC_ADD_PLUGIN([yuv]) ALIASES="${ALIASES} cvlc" @@ -1225,6 +1194,28 @@ if test "${SYS}" != "mingwce"; then ALIASES="${ALIASES} rvlc" fi +if test "${SYS}" = "mingwce"; then + VLC_ADD_PLUGIN([chain]) + VLC_ADD_PLUGIN([aout_file]) + VLC_ADD_PLUGIN([linear_resampler]) + VLC_ADD_PLUGIN([bandlimited_resampler]) + VLC_ADD_PLUGIN([float32_mixer]) + VLC_ADD_PLUGIN([spdif_mixer]) + VLC_ADD_PLUGIN([simple_channel_mixer]) + VLC_ADD_PLUGIN([headphone_channel_mixer]) + VLC_ADD_PLUGIN([normvol]) + VLC_ADD_PLUGIN([converter_float]) + VLC_ADD_PLUGIN([a52tospdif]) + VLC_ADD_PLUGIN([dtstospdif]) + VLC_ADD_PLUGIN([audio_format]) + VLC_ADD_PLUGIN([i420_yuy2]) + VLC_ADD_PLUGIN([i422_yuy2]) + VLC_ADD_PLUGIN([i420_ymga]) + VLC_ADD_PLUGIN([i422_i420]) + VLC_ADD_PLUGIN([yuy2_i422]) + VLC_ADD_PLUGIN([yuy2_i420]) +fi + dnl dnl Some plugins aren't useful on some platforms dnl @@ -1239,6 +1230,7 @@ elif test "${SYS}" != "mingwce"; then VLC_ADD_PLUGIN([dmo]) VLC_ADD_PLUGIN([msn]) VLC_ADD_LIBS([dmo],[-lole32 -luuid]) + VLC_ADD_PLUGIN([globalhotkeys]) else VLC_ADD_PLUGIN([win32text]) fi @@ -1571,6 +1563,16 @@ AH_TEMPLATE(NDEBUG, [Define to 1 if debug code should NOT be compiled]) AS_IF([test "x${enable_debug}" = "xno"], [AC_DEFINE(NDEBUG)]) +dnl +dnl Allow runing as root (usefull for people runing on embedded platforms) +dnl +AC_ARG_ENABLE(run-as-root, +[ --enable-run-as-root allow runing VLC as root (default disabled)]) +AS_IF([test "${enable_run_as_root}" == "yes"],[ + AC_DEFINE(ALLOW_RUN_AS_ROOT, 1, + [Define to 1 to allow runing VLC as root (uid 0).]) +]) + dnl dnl Test coverage dnl @@ -1675,8 +1677,10 @@ 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]) + PKG_CHECK_MODULES(LIBPROXY, libproxy-1.0, [ + AC_DEFINE(HAVE_LIBPROXY, 1, [Define if libproxy is available]) + VLC_ADD_CFLAGS([access_http],[$LIBPROXY_CFLAGS]) + VLC_ADD_LIBS([access_http],[$LIBPROXY_LIBS]) ], [ AS_IF([test "x${enable_libproxy}" != "x"], [ AC_MSG_ERROR([libproxy could not be found on your system]) @@ -1703,7 +1707,8 @@ dnl dnl Growl notification plugin dnl AC_ARG_ENABLE(growl, - [ --enable-growl growl notification plugin (default enabled)]) + [ --enable-growl growl notification plugin (default disabled)],, + [enable_growl=no]) AS_IF([test "${enable_growl}" != "no"], [ VLC_ADD_PLUGIN([growl_udp]) AC_CHECK_HEADERS(Growl/GrowlDefines.h, [ @@ -1741,20 +1746,6 @@ AS_IF([test "${enable_audioscrobbler}" != "no"], [ VLC_ADD_PLUGIN([audioscrobbler]) ]) -dnl -dnl Musicbrainz plugin -dnl -AC_ARG_ENABLE(musicbrainz, - [ --enable-musicbrainz MusicBrainz support (default disabled) ]) - AS_IF([test "${enable_musicbrainz}" = "yes"],[ - PKG_CHECK_MODULES(MUSICBRAINZ, libmusicbrainz, - [ VLC_ADD_PLUGIN([musicbrainz]) - VLC_ADD_LIBS([musicbrainz],[$MUSICBRAINZ_LIBS]) - VLC_ADD_CFLAGS([musicbrainz],[$MUSICBRAINZ_CFLAGS]) ], - [AC_MSG_WARN(MusicBrainz library not found)]) - ]) - - dnl dnl Taglibplugin dnl @@ -1828,16 +1819,25 @@ lternatively you can use --disable-live555 to disable the liveMedia plugin.]) ]) ]) other_libs="-lgroupsock -lBasicUsageEnvironment -lUsageEnvironment" + other_libs_pic="-lgroupsock_pic -lBasicUsageEnvironment_pic -lUsageEnvironment_pic" if test "${SYS}" = "mingw32"; then # add ws2_32 for closesocket, select, recv other_libs="$other_libs -lws2_32" fi + dnl We need to check for pic because live555 don't provide shared libs + dnl and we want to build a plugins so we need -fPIC on some arch. AC_CHECK_HEADERS(liveMedia.hh, [ VLC_ADD_CXXFLAGS([live555], [${CPPFLAGS_live555}]) + AC_CHECK_LIB(liveMedia_pic, main, [ + VLC_ADD_PLUGIN([live555]) + VLC_ADD_LIBS([live555], [-lliveMedia_pic ${other_libs_pic}]) + ],[ AC_CHECK_LIB(liveMedia, main, [ VLC_ADD_PLUGIN([live555]) VLC_ADD_LIBS([live555], [-lliveMedia ${other_libs}]) - ],[],[${other_libs}]) + ],[],[${other_libs}]) ],[${other_libs_pic}]) + ],[ + AC_MSG_WARN([The development files for liveMedia (live555) can't be found]) ]) CPPFLAGS="${CPPFLAGS_save}" AC_LANG_POP(C++) @@ -2257,6 +2257,7 @@ dnl libdvbpsi ts demux/mux dnl AC_ARG_ENABLE(dvbpsi, [ --enable-dvbpsi dvbpsi ts mux and demux module (default enabled)]) +have_dvbpsi=no if test "${enable_dvbpsi}" != "no" then AC_ARG_WITH(dvbpsi, @@ -2272,7 +2273,8 @@ then if test "${enable_sout}" != "no"; then VLC_ADD_PLUGIN([mux_ts]) fi - VLC_ADD_LIBS([mux_ts ts dvb],[-ldvbpsi]) ], + VLC_ADD_LIBS([mux_ts ts dvb],[-ldvbpsi]) + have_dvbpsi=yes], [ AC_MSG_WARN([cannot find libdvbpsi headers]) ], [#if defined( HAVE_STDINT_H ) # include @@ -2302,6 +2304,7 @@ then 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]) + have_dvbpsi=yes else dnl The given libdvbpsi wasn't built AC_MSG_RESULT(no) @@ -2330,7 +2333,7 @@ then fi VLC_ADD_CPPFLAGS([mux_ts ts dvb],[${CPPFLAGS_test}]) VLC_ADD_LIBS([mux_ts ts dvb],[${LDFLAGS_test} -ldvbpsi]) - + have_dvbpsi=yes ],[ if test -n "${enable_dvbpsi}" then @@ -2381,19 +2384,6 @@ then VLC_ADD_CPPFLAGS([v4l2],[-I${with_v4l2}/include]) fi - AC_CHECK_HEADER(alsa/asoundlib.h, AC_CHECK_LIB(asound, main, have_v4l2_alsa="true", have_v4l2_alsa="false"),have_v4l2_alsa="false") - if test "${have_v4l2_alsa}" = "true" - then - CFLAGS="${CFLAGS_save}" - AC_TRY_COMPILE([#define ALSA_PCM_NEW_HW_PARAMS_API - #define ALSA_PCM_NEW_SW_PARAMS_API - #include ], - [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_LDFLAGS([v4l2],[-lasound -lm -ldl]) - AC_DEFINE(HAVE_ALSA, 1, Define if ALSA is present.) - fi - CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_v4l2}" AC_CHECK_HEADERS(linux/videodev2.h, [ VLC_ADD_PLUGIN([v4l2]) @@ -2401,6 +2391,20 @@ then CPPFLAGS="${CPPFLAGS_save}" fi +dnl +dnl libv4l2 support for video4linux. +dnl +AC_ARG_ENABLE( libv4l2, + [ --enable-libv4l2 Libv4l2 Video4Linux2 support (default enabled)]) +if test "${enable_libv4l2}" != "no" -a "${enable_v4l2}" != "no" +then + PKG_CHECK_MODULES( LIBV4L2, libv4l2, [ + VLC_ADD_LDFLAGS([v4l2],[${LIBV4L2_LIBS}]) + VLC_ADD_CFLAGS([v4l2],[${LIBV4L2_CFLAGS}]) + AC_DEFINE(HAVE_LIBV4L2, 1, Define if libv4l is available)], + AC_MSG_WARN([LibV4L2 support disabled because libv4l2 development headers were not found]) + ) +fi dnl dnl special access module for Hauppauge PVR cards @@ -2455,6 +2459,8 @@ dnl Need to test libcdio and libvcdinfo for a number of things. Do it now. AC_ARG_ENABLE(libcdio, [ --enable-libcdio CD input and control library support (default enabled)]) +AC_ARG_ENABLE(vcdinfo, + [ --enable-libvcdinfo VCD information library support (default enabled)]) have_libcdio=no have_libvcdinfo=no @@ -2466,11 +2472,14 @@ then [Define if you have libcdio 0.78.2 or greater installed]), [AC_MSG_WARN(CD Reading and information library not found)]) - PKG_CHECK_MODULES(VCDINFO, libvcdinfo >= 0.7.22, - [have_libvcdinfo=yes - AC_DEFINE(HAVE_VCDINFO, 1, - [Define if you have libvcdinfo 0.7.22 or greater installed])], - [AC_MSG_WARN(VCD information library not found)]) + if test "${enable_vcdinfo}" != "no" + then + PKG_CHECK_MODULES(VCDINFO, libvcdinfo >= 0.7.22, + [have_libvcdinfo=yes + AC_DEFINE(HAVE_VCDINFO, 1, + [Define if you have libvcdinfo 0.7.22 or greater installed])], + [AC_MSG_WARN(VCD information library not found)]) + fi fi dnl @@ -2619,17 +2628,21 @@ AC_ARG_ENABLE(dvb, if test "${enable_dvb}" != "no" then - AC_ARG_WITH(dvb, - [ --with-dvb=PATH path to a dvb- and v4l2-enabled kernel tree],[],[]) - if test "${with_dvb}" != "no" -a -n "${with_dvb}" - then - VLC_ADD_CFLAGS([dvb],[-I${with_dvb}/include]) - fi - CPPFLAGS="${CPPFLAGS_save} -I${with_dvb}/include" - AC_CHECK_HEADERS(linux/dvb/version.h linux/dvb/frontend.h, [ - VLC_ADD_PLUGIN([dvb]) - ],[AC_MSG_WARN(linux-dvb headers not found, dvb disabled)]) - CPPFLAGS="${CPPFLAGS_save}" + AS_IF([test "${have_dvbpsi}" = "yes" ],[ + AC_ARG_WITH(dvb, + [ --with-dvb=PATH path to a dvb- and v4l2-enabled kernel tree],[],[]) + if test "${with_dvb}" != "no" -a -n "${with_dvb}" + then + VLC_ADD_CFLAGS([dvb],[-I${with_dvb}/include]) + fi + CPPFLAGS="${CPPFLAGS_save} -I${with_dvb}/include" + AC_CHECK_HEADERS(linux/dvb/version.h linux/dvb/frontend.h, [ + VLC_ADD_PLUGIN([dvb]) + ],[AC_MSG_WARN(linux-dvb headers not found, dvb disabled)]) + CPPFLAGS="${CPPFLAGS_save}" + ],[ + AC_MSG_WARN([the dvb access module requires libdvbpsi]) + ]) fi dnl @@ -2735,7 +2748,7 @@ AC_ARG_ENABLE(mkv, if test "${enable_mkv}" != "no" -a "${CXX}" != ""; then AC_LANG_PUSH(C++) AC_CHECK_HEADERS(ebml/EbmlVersion.h, [ - AC_MSG_CHECKING(for libebml version >= 0.7.6) + AC_MSG_CHECKING(for libebml version >= 0.7.7) AC_EGREP_CPP(yes, [#include #ifdef LIBEBML_VERSION @@ -2745,7 +2758,7 @@ if test "${enable_mkv}" != "no" -a "${CXX}" != ""; then #endif], [AC_MSG_RESULT([yes]) AC_CHECK_HEADERS(matroska/KaxVersion.h, [ - AC_MSG_CHECKING(for libmatroska version >= 0.7.7) + AC_MSG_CHECKING(for libmatroska version >= 0.8.0) AC_EGREP_CPP(yes, [#include #ifdef LIBMATROSKA_VERSION @@ -2938,8 +2951,8 @@ dnl dnl libid3tag support (FIXME!!! doesn't work with new input) dnl AC_ARG_ENABLE( id3tag, -[ --disable-id3tag id3tag metadata reader plugin (default enabled)]) -AS_IF([test "${enable_id3tag}" != "no"], [ +[ --disable-id3tag id3tag metadata reader plugin (default disabled)]) +AS_IF([test "${enable_id3tag}" = "yes"], [ AC_CHECK_HEADERS(id3tag.h, [ AC_CHECK_HEADERS(zlib.h, [ VLC_ADD_LIBS([id3tag],[-lid3tag -lz]) @@ -2973,7 +2986,7 @@ then 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.]) + AC_MSG_FAILURE([Could not find libavcodec or libavutil. Use --disable-avcodec to ignore this error.]) ]) fi @@ -2997,7 +3010,7 @@ then 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.]) + AC_MSG_FAILURE([Could not find libavformat or libavutil. Use --disable-avformat to ignore this error.]) ]) fi @@ -3054,7 +3067,7 @@ then 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.)]) + AC_MSG_FAILURE([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 @@ -3226,17 +3239,24 @@ dnl MP4 module dnl AC_CHECK_HEADERS(zlib.h, [ VLC_ADD_LIBS([mp4 skins2 sap mkv gme],[-lz]) + VLC_ADD_CPPFLAGS([skins2],[-I../../../@top_srcdir@/libs/unzip]) + VLC_ADD_LIBS([skins2],[../../../libs/unzip/libunzip.la]) ] ) -AC_CHECK_HEADERS(sysfs/libsysfs.h, [ - VLC_ADD_LIBS([mp4 mkv],[-lsysfs]) -] ) +AC_ARG_ENABLE(libsysfs, + [ --enable-libsysfs Get user key from firewire connected iPod via libsysfs (default enabled)]) + +AS_IF([test "${enable_libsysfs}" != "no"],[ + AC_CHECK_HEADERS(sysfs/libsysfs.h, [ + VLC_ADD_LIBS([mp4 mkv],[-lsysfs]) + ] ) +]) dnl dnl skins2 module dnl AC_ARG_ENABLE(libtar, - [ --enable-libtar support for skins2 (default enabled)]) + [ --enable-libtar libtar support for skins2 (default enabled)]) AS_IF([test "${enable_libtar}" != "no"],[ AC_CHECK_HEADERS(libtar.h, [ @@ -3613,7 +3633,7 @@ dnl dnl schroedinger decoder plugin (for dirac format video) dnl AC_ARG_ENABLE(schroedinger, -[ --disable-schroedinger high performance dirac codec (default enabled)]) +[ --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]) @@ -3723,12 +3743,9 @@ AC_ARG_ENABLE(zvbi, libzvbi (default enabled)])) AC_ARG_ENABLE(telx, AS_HELP_STRING([--enable-telx],[Teletext decoding module (conflicting with - zvbi) (default disabled)])) + zvbi) (default enabled if zvbi is absent)])) AS_IF( [test "${enable_zvbi}" != "no"],[ - AS_IF( [test "${enable_telx}" = "yes"],[ - AC_MSG_ERROR([The zvbi and telx modules are uncompatibles. Disable the other if you enable one.]) - ],[ PKG_CHECK_MODULES(ZVBI, zvbi-0.2 >= 0.2.25, [ @@ -3736,13 +3753,15 @@ AS_IF( [test "${enable_zvbi}" != "no"],[ VLC_ADD_CFLAGS([zvbi],[$ZVBI_CFLAGS]) VLC_ADD_PLUGIN([zvbi]) AC_DEFINE(ZVBI_COMPILED, 1, [Define if the zvbi module is built]) + AS_IF( [test "${enable_telx}" = "yes"],[ + AC_MSG_WARN([The zvbi and telx modules are uncompatibles. + Using zvbi.]) + ]) ],[ AC_MSG_WARN(ZVBI library not found. Enabling the telx module instead) - enable_telx="yes" ]) ]) - ]) -AS_IF( [test "${enable_telx}" = "yes"],[ +AS_IF( [test "${enable_telx}" != "no" ],[ VLC_ADD_PLUGIN([telx]) ]) @@ -3763,6 +3782,31 @@ AS_IF( [test "${enable_csri}" = "yes"], [ ]) ]) +dnl +dnl libass subtitle rendering module +dnl +AC_ARG_ENABLE(libass, + [ --enable-libass Subtitle support using libass (default disabled)]) +AS_IF( [test "${enable_libass}" = "yes"], [ + PKG_CHECK_MODULES(LIBASS, libass >= 0.9.5, + [ + VLC_ADD_LDFLAGS([libass],[$LIBASS_LIBS]) + VLC_ADD_CFLAGS([libass],[$LIBASS_CFLAGS]) + VLC_ADD_PLUGIN([libass]) + + AC_CHECK_HEADERS(fontconfig/fontconfig.h, + [VLC_ADD_CPPFLAGS([libass],[-DHAVE_FONTCONFIG]) + if test "${SYS}" = "mingw32"; then + VLC_ADD_LIBS([libass],[-lfontconfig -lfreetype -liconv -lz -lxml2]) + else + VLC_ADD_LIBS([libass],[-lfontconfig]) + fi + ]) + ],[ + AC_MSG_WARN([LIBASS library not found]) + ]) + ]) + dnl dnl asa demuxer dnl @@ -3823,6 +3867,23 @@ AS_IF([test "${enable_kate}" != "no"], [ ]) +dnl +dnl tiger decoder plugin +dnl +AC_ARG_ENABLE(tiger, +[ --enable-tiger Tiger rendering library for Kate streams (default enabled)]) +AS_IF([test "${enable_tiger}" != "no"], [ + PKG_CHECK_MODULES(TIGER,[tiger >= 0.3.1], [ + AC_DEFINE(HAVE_TIGER, 1, [Define if libtiger is available.]) + VLC_ADD_CFLAGS([kate],[$TIGER_CFLAGS]) + VLC_ADD_LIBS([kate],[$TIGER_LIBS]) ],[ + AS_IF([test "x${enable_tiger}" != "x"], [ + AC_MSG_ERROR([libtiger does not appear to be installed on your system.]) + ]) + ]) +]) + + dnl dnl Video plugins dnl @@ -3861,6 +3922,9 @@ if test "${enable_x11}" != "no" && VLC_ADD_PLUGIN([panoramix]) VLC_ADD_LIBS([panoramix],[${X_LIBS} ${X_PRE_LIBS} -lX11]) VLC_ADD_CPPFLAGS([panoramix],[${X_CFLAGS}]) + VLC_ADD_PLUGIN([globalhotkeys]) + VLC_ADD_LIBS([globalhotkeys],[${X_LIBS} ${X_PRE_LIBS} -lX11]) + VLC_ADD_CPPFLAGS([globalhotkeys],[${X_CFLAGS}]) AC_CHECK_LIB(Xext, XShmAttach, [ VLC_ADD_PLUGIN([x11]) VLC_ADD_LIBS([x11],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext]) @@ -4125,6 +4189,8 @@ AC_ARG_ENABLE(freetype, [ --enable-freetype freetype support (default enabled)]) AC_ARG_ENABLE(fribidi, [ --enable-fribidi fribidi support (default enabled)]) +AC_ARG_ENABLE(fontconfig, + [ --enable-fontconfig, fontconfig support (default enabled)]) if test "${enable_freetype}" != "no" then PKG_CHECK_MODULES(FREETYPE, freetype2,[ @@ -4134,12 +4200,18 @@ then VLC_ADD_LIBS([freetype skins2],[${FREETYPE_LIBS}]) if test "${SYS}" = "mingw32"; then VLC_ADD_LIBS([freetype skins2],[-lxml2]) - fi - AC_CHECK_HEADERS(fontconfig/fontconfig.h, - [VLC_ADD_CPPFLAGS([freetype],[-DHAVE_FONTCONFIG]) - VLC_ADD_LIBS([freetype],[-lfontconfig])]) - AC_CHECK_HEADERS(Carbon/Carbon.h, - [VLC_ADD_LDFLAGS([freetype],[-Wl,-framework,Carbon])]) + fi + if test "${SYS}" = "mingw32"; then + VLC_ADD_LIBS([freetype],[-liconv]) + fi + if test "${enable_fontconfig}" != "no" + then + AC_CHECK_HEADERS(fontconfig/fontconfig.h, + [VLC_ADD_CPPFLAGS([freetype],[-DHAVE_FONTCONFIG]) + VLC_ADD_LIBS([freetype],[-lfontconfig])]) + AC_CHECK_HEADERS(Carbon/Carbon.h, + [VLC_ADD_LDFLAGS([freetype],[-Wl,-framework,Carbon])]) + fi ],[ have_freetype=no AS_IF([ test "${enable_freetype}" = "yes"],[ @@ -4349,6 +4421,20 @@ AC_ARG_ENABLE(mga, VLC_ADD_PLUGIN([mga]) fi ]) +dnl +dnl OMAP Framebuffer module +dnl +AC_ARG_ENABLE(omapfb, + [ --enable-omapfb OMAP framebuffer support (default disabled)]) + if test "${enable_omapfb}" = "yes" + then + AC_CHECK_HEADERS(asm/arch-omap/omapfb.h, [ + VLC_ADD_PLUGIN([omapfb]) + AC_CHECK_HEADERS(X11/Xlib.h, [ + VLC_ADD_LIBS([omapfb],[${X_LIBS} ${X_PRE_LIBS} -lX11]) ]) + ]) + fi + dnl dnl SVGAlib module dnl @@ -4437,15 +4523,19 @@ AC_ARG_ENABLE(ggi, [ --enable-ggi GGI support (default disabled)]) if test "${enable_ggi}" = "yes" then - VLC_ADD_PLUGIN([ggi]) - VLC_ADD_LIBS([ggi],[-lggi]) - AC_ARG_WITH(ggi, - [ --with-ggi=PATH path to libggi], - [ if test "${with_ggi}" != "no" -a -n "${with_ggi}" - then - VLC_ADD_CPPFLAGS([ggi],[-I${with_ggi}/include]) - VLC_ADD_LIBS([ggi],[-L${with_ggi}/lib]) - fi ]) + AC_CHECK_HEADER([ggi/ggi.h],[ + VLC_ADD_PLUGIN([ggi]) + VLC_ADD_LIBS([ggi],[-lggi]) + AC_ARG_WITH(ggi, + [ --with-ggi=PATH path to libggi], + [ if test "${with_ggi}" != "no" -a -n "${with_ggi}" + then + VLC_ADD_CPPFLAGS([ggi],[-I${with_ggi}/include]) + VLC_ADD_LIBS([ggi],[-L${with_ggi}/lib]) + fi ]) + ],[ + AC_MSG_ERROR([LibGGI development files can't be found]) + ]) fi dnl @@ -4506,6 +4596,8 @@ if test "${enable_wingdi}" != "no"; then if test "${SYS}" = "mingwce"; then VLC_ADD_PLUGIN([wingdi]) VLC_ADD_PLUGIN([wingapi]) + VLC_ADD_LIBS([wingdi],[-laygshell]) + VLC_ADD_LIBS([wingapi],[-laygshell]) fi fi @@ -4527,26 +4619,11 @@ if test "${enable_oss}" != "no" && then AC_CHECK_HEADERS(soundcard.h sys/soundcard.h machine/soundcard.h, [ VLC_ADD_PLUGIN([oss]) + VLC_ADD_PLUGIN([access_oss]) AC_CHECK_LIB(ossaudio,main,VLC_ADD_LIBS([oss],[-lossaudio])) ]) fi -dnl -dnl Esound module -dnl -AC_ARG_ENABLE(esd, - [ --enable-esd Esound library support (default disabled)], - [if test "${enable_esd}" = "yes" - then - AC_PATH_PROG(ESD_CONFIG, esd-config, no) - if test "${ESD_CONFIG}" != "no" - then - VLC_ADD_PLUGIN([esd]) - VLC_ADD_CFLAGS([esd],[`${ESD_CONFIG} --cflags`]) - VLC_ADD_LIBS([esd],[`${ESD_CONFIG} --libs`]) - fi - fi]) - dnl dnl Pulseaudio module dnl @@ -4577,23 +4654,6 @@ AC_ARG_ENABLE(portaudio, fi fi]) -dnl -dnl aRts module -dnl broken? (froze wxWidgets back then) -dnl -AC_ARG_ENABLE(arts, - [ --enable-arts aRts sound server (default disabled)], - [if test "${enable_arts}" = "yes" - then - AC_PATH_PROG(ARTS_CONFIG, artsc-config, no) - if test "${ARTS_CONFIG}" != "no" - then - VLC_ADD_PLUGIN([arts]) - VLC_ADD_CFLAGS([arts],[`${ARTS_CONFIG} --cflags`]) - VLC_ADD_LIBS([arts],[`${ARTS_CONFIG} --libs `]) - fi - fi]) - dnl dnl ALSA module dnl @@ -4612,6 +4672,8 @@ then AC_DEFINE(HAVE_ALSA_NEW_API, 1, Define if ALSA is at least rc4)) VLC_ADD_PLUGIN([alsa]) VLC_ADD_LIBS([alsa],[-lasound -lm -ldl]) + VLC_ADD_PLUGIN([access_alsa]) + VLC_ADD_LIBS([access_alsa],[-lasound -lm -ldl]) else if test "${enable_alsa}" = "yes"; then AC_MSG_ERROR([Could not find ALSA development headers]) @@ -4856,6 +4918,29 @@ then fi AM_CONDITIONAL(BUILD_PDA, [test "${enable_pda}" = "yes"]) +dnl +dnl Maemo +dnl +AC_ARG_ENABLE(maemo, + [ --enable-maemo Internet tablets based on Maemo SDK (default disabled)]) +if test "${enable_maemo}" = "yes" +then + PKG_CHECK_MODULES(HILDON, [hildon-1 hildon-fm-2], [ + VLC_ADD_CFLAGS([maemo],[${HILDON_CFLAGS}]) + VLC_ADD_LIBS([maemo],[${HILDON_LIBS}]) + VLC_ADD_PLUGIN([maemo]) + VLC_ADD_PLUGIN([swscale_maemo]) + AC_DEFINE([BUILD_MAEMO], 1, [Define if you're using Maemo interfaces]) + ALIASES="${ALIASES} mvlc" + ], [ + AS_IF([test "${enable_maemo}" = "yes"],[ + AC_MSG_ERROR([Hildon libraries not found]) + ]) + enable_maemo="no" + ]) +fi +AM_CONDITIONAL(BUILD_MAEMO, [test "${enable_maemo}" = "yes"]) + dnl dnl QT 4 dnl @@ -4864,7 +4949,7 @@ AC_ARG_ENABLE(qt4, AS_IF([test "${SYS}" = "darwin"], [enable_qt4=no]) ]) AS_IF([test "${enable_qt4}" != "no"], [ - PKG_CHECK_MODULES(QT4, [QtCore QtGui >= 4.2.0], [ + PKG_CHECK_MODULES(QT4, [QtCore QtGui >= 4.3.0], [ VLC_ADD_PLUGIN([qt4]) AC_DEFINE([HAVE_QT4], 1, [Define to 1 if you have QT4 library.]) ALIASES="${ALIASES} qvlc" @@ -4965,6 +5050,8 @@ then VLC_ADD_LDFLAGS([macosx minimal_macosx], [-Wl,-framework,AGL]) VLC_ADD_LDFLAGS([macosx], [-Wl,-framework,IOKit]) VLC_ADD_LDFLAGS([macosx], [-Wl,-framework,QuickTime]) + dnl For bug report + VLC_ADD_LDFLAGS([macosx], [-Wl,-framework,AddressBook]) VLC_ADD_LDFLAGS([macosx qtcapture], [-Wl,-framework,QTKit]) VLC_ADD_LDFLAGS([qtcapture], [-Wl,-framework,CoreAudio]) VLC_ADD_LDFLAGS([macosx], [-Wl,-framework,WebKit]) @@ -4979,9 +5066,9 @@ then ORIGCFLAGS=$CFLAGS CFLAGS="$CFLAGS -x objective-c" - AC_TRY_COMPILE([#import ], + AC_TRY_COMPILE([#import ],, [VLC_ADD_PLUGIN([opengllayer]) - VLC_ADD_OBJCFLAGS([opengllayer], [-isysroot /Developer/SDKs/MacOSX10.5.sdk -mmacosx-version-min=10.5])]) + VLC_ADD_OBJCFLAGS([opengllayer])],[]) CFLAGS=$ORIGCFLAGS fi @@ -5173,17 +5260,16 @@ dnl Bonjour services discovery dnl AC_ARG_ENABLE(bonjour, [ --enable-bonjour Bonjour services discovery (default enabled)]) -if test "${enable_bonjour}" != "no" -then - PKG_CHECK_MODULES(BONJOUR, avahi-client >= 0.3, - [PKG_CHECK_MODULES(BONJOUR, avahi-client >= 0.6, - [AC_DEFINE(HAVE_AVAHI_06, 1, [Define if you have avahi-client 0.6 or greater])],) - AC_DEFINE(HAVE_AVAHI_CLIENT, 1, [Define if you have the avahi-client library]) - VLC_ADD_LIBS([bonjour access_output_http],[$BONJOUR_LIBS]) - VLC_ADD_CFLAGS([bonjour access_output_http],[$BONJOUR_CFLAGS]) - VLC_ADD_PLUGIN([bonjour]) ], - [AC_MSG_WARN(avahi-client library not found)]) -fi +AS_IF([test "${enable_bonjour}" != "no"], [ + PKG_CHECK_MODULES(BONJOUR, avahi-client >= 0.6, [ + AC_DEFINE(HAVE_AVAHI_CLIENT, 1, [Define to 1 if you have libavahi-client]) + VLC_ADD_LIBS([bonjour access_output_http],[$BONJOUR_LIBS]) + VLC_ADD_CFLAGS([bonjour access_output_http],[$BONJOUR_CFLAGS]) + VLC_ADD_PLUGIN([bonjour]) + ], [ + AC_MSG_WARN(avahi-client library not found) + ]) +]) dnl dnl Lirc plugin @@ -5207,7 +5293,7 @@ dnl dnl libgcrypt dnl AC_ARG_ENABLE(libgcrypt, - [ --enable-libgcrypt libgcrypts support (default enabled)]) + [ --disable-libgcrypt libgcrypts support (default enabled)]) AS_IF([test "${enable_libgcrypt}" != "no"], [ AM_PATH_LIBGCRYPT([1:1.1.94], [have_libgcrypt="yes"], [have_libgcrypt="no"]) ]) @@ -5264,6 +5350,21 @@ AS_IF([test "${enable_remoteosd}" != "no"], [ ]) +dnl +dnl RAOP plugin +dnl +AC_MSG_CHECKING([whether to enable RAOP plugin]) +AS_IF([test "${have_libgcrypt}" = "yes"], [ + AC_MSG_RESULT(yes) + VLC_ADD_PLUGIN([stream_out_raop]) + VLC_ADD_LIBS([stream_out_raop], [${LIBGCRYPT_LIBS}]) + VLC_ADD_CFLAGS([stream_out_raop], [${LIBGCRYPT_CFLAGS}]) +], [ + AC_MSG_RESULT(no) + AC_MSG_WARN([libgcrypt support required for RAOP plugin]) +]) + + dnl dnl update checking system dnl @@ -5280,6 +5381,18 @@ then AC_DEFINE([UPDATE_CHECK], 1, [Define if you want to use the VLC update mechanism]) fi + +dnl +dnl ZIP files demuxer +dnl +AC_CHECK_HEADERS(zlib.h, [ have_zlib=yes ], [ have_zlib=no ]) +AM_CONDITIONAL(HAVE_ZLIB, [ test "${have_zlib}" = "yes" ]) +if test "${have_zlib}" = "yes" +then + VLC_ADD_PLUGIN([unzip]) +fi + + dnl dnl Endianness check dnl @@ -5380,35 +5493,43 @@ AC_ARG_ENABLE(mozilla, (default disabled)])) AC_ARG_WITH(mozilla-sdk-path, [ --with-mozilla-sdk-path=PATH path to mozilla sdk]) +AC_ARG_WITH(mozilla-pkg, + [ --with-mozilla-pkg=PKG look for PKG.pc to build the mozilla plugin.]) AC_LANG_PUSH(C++) if test "${enable_mozilla}" = "yes" then - dnl currently vlc plugin only needs headers, no xpcom support apis are actually used - need_xpcom_libs=false - - if test "${with_mozilla_sdk_path}" = "" -o "${with_mozilla_sdk_path}" = "no" - then - dnl New firefox-1.5 SDK api - PKG_CHECK_MODULES([FIREFOX], [firefox-plugin], - [ - 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} ${FIREFOX_CFLAGS} ${FIREFOX_XPCOM_CFLAGS} ${MOZILLA_NSPR_CFLAGS} ${NSPR_CFLAGS} ${MOZILLA_CPPFLAGS}" + AS_IF([test "${with_mozilla_sdk_path}" = "" -o "${with_mozilla_sdk_path}" = "no"], + [ + dnl pkg-config + dnl As we want to do a loop due to the number of name possible for the .pc + dnl we can't use the pkg-config macros. + + AC_ARG_VAR([MOZILLA_CFLAGS], [C compiler flags for Mozilla, overriding pkg-config]) + AC_ARG_VAR([MOZILLA_LIBS], [linker flags for Mozilla, overriding pkg-config]) + AC_MSG_NOTICE([Checking for Mozilla]) + found=0 + if test -n "$MOZILLA_CFLAGS" -a -n "$MOZILLA_LIBS" + then + found=1 + else + if test -n "$PKG_CONFIG"; then + for i in "${with_mozilla_pkg}" libxul {seamonkey,iceape,xulrunner,firefox,iceweasel,mozilla}-plugin; do + echo "Trying to find $i.pc files" >&5 + if $PKG_CONFIG --exists --print-errors "$i" 2>&5 + then + echo "Using $i.pc files." >&5 + echo "Using $i.pc files." >&6 + found=1 + MOZILLA_CFLAGS=$( $PKG_CONFIG --cflags "$i" ) + MOZILLA_LIBS=$( $PKG_CONFIG --libs "$i" ) + break + fi + done + fi + fi + AS_IF( [test $found = 1],[ + CPPFLAGS="${CPPFLAGS_save} ${MOZILLA_CFLAGS}" MOZILLA_REQUIRED_HEADERS=1 - AC_CHECK_HEADERS(mozilla-config.h,,MOZILLA_REQUIRED_HEADERS=0) AC_CHECK_HEADERS(npapi.h,,MOZILLA_REQUIRED_HEADERS=0) AC_CHECK_HEADERS(npruntime.h,,MOZILLA_REQUIRED_HEADERS=0, [#if HAVE_NPAPI_H @@ -5420,94 +5541,32 @@ then fi MOZILLA_REQUIRED_HEADERS= mozilla=: - firefox_include=`pkg-config --variable=includedir firefox-plugin` - if test -f "${firefox_include}/mozilla-config.h" -a -f "${firefox_include}/mozilla-config32.h"; then - MOZILLA_CONFIG_H="${firefox_include}/mozilla-config32.h" - elif test -f "${firefox_include}/mozilla-config.h" -a -f "${firefox_include}/mozilla-config64.h"; then - MOZILLA_CONFIG_H="${firefox_include}/mozilla-config64.h" - else - MOZILLA_CONFIG_H="${firefox_include}/mozilla-config.h" - fi - if grep '^#define MOZ_X11 1' ${MOZILLA_CONFIG_H} 2>&1 > /dev/null ; then - 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]) - fi - VLC_ADD_CPPFLAGS([mozilla],[${CPPFLAGS}]) - VLC_ADD_LDFLAGS([mozilla],[${MOZILLA_LDFLAGS}]) - VLC_ADD_LIBS([mozilla],[${FIREFOX_LIBS} ${MOZILLA_NSPR_LIBS} ${NSPR_LIBS}]) + AS_IF([ test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"],[ + VLC_ADD_CPPFLAGS([mozilla],[-DXP_UNIX -DOJI]) + AS_IF([ test "${SYS}" != "darwin"],[ + PKG_CHECK_MODULES(XPM, [xpm xt],[ + VLC_ADD_CPPFLAGS([mozilla],[-DMOZ_X11]) + ],[ + AC_MSG_ERROR([Please install the libXpm and libXt development files.]) + ]) + ]) + ]) + VLC_ADD_CPPFLAGS([mozilla],[${CPPFLAGS} ${XPM_CFLAGS}]) + VLC_ADD_LIBS([mozilla],[${MOZILLA_LIBS} ${XPM_LIBS}]) VLC_ADD_PLUGIN([mozilla]) + PLUGINS_BINDINGS="${PLUGINS_BINDINGS} mozilla" MOZILLA_CONFIG= CPPFLAGS="${CPPFLAGS_save}" - ], - [ - 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_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 + AC_PATH_PROGS(MOZILLA_CONFIG, + [mozilla-config seamonkey-config xulrunner-config], + AC_MSG_ERROR([Please install the Mozilla development tools. mozilla-config was not found.]) + ) ] ) - ] - ) - if test ! -z "${MOZILLA_CONFIG}" - then + dnl pkg-config failed but we might have found a mozilla-config + AS_IF( [test ! -z "${MOZILLA_CONFIG}"],[ if ${MOZILLA_CONFIG} --defines | grep -q 'MOZ_X11=1'; then LDFLAGS="${LDFLAGS_save} ${X_LIBS} ${X_PRE_LIBS}" AC_CHECK_LIB(Xt,XtStrings, @@ -5524,13 +5583,8 @@ then mozilla=: PLUGINS_BINDINGS="${PLUGINS_BINDINGS} mozilla" - dnl Workaround for http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=150490 - VLC_ADD_CPPFLAGS([mozilla],[[`${MOZILLA_CONFIG} --cflags plugin xpcom java | sed 's,-I\([^ ]*\)/mozilla/\([^ ]*\),-I\1/\2 -I\1/mozilla/\2,g' | xargs`]]) - if ${need_xpcom_libs}; then - VLC_ADD_LIBS([mozilla],[`${MOZILLA_CONFIG} --libs plugin xpcom`]) - else - VLC_ADD_LIBS([mozilla],[`${MOZILLA_CONFIG} --libs plugin`]) - fi + VLC_ADD_CPPFLAGS([mozilla],[[`${MOZILLA_CONFIG} --cflags plugin java`]]) + VLC_ADD_LIBS([mozilla],[`${MOZILLA_CONFIG} --libs plugin`]) CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_mozilla}" MOZILLA_REQUIRED_HEADERS=1 AC_CHECK_HEADERS(mozilla-config.h,,MOZILLA_REQUIRED_HEADERS=0) @@ -5547,9 +5601,9 @@ then MOZILLA_REQUIRED_HEADERS= CPPFLAGS="${CPPFLAGS_save}" MOZILLA_SDK_PATH="`${MOZILLA_CONFIG} --prefix`" - fi + ]) dnl End of moz_sdk = "" - else + ],[ dnl special case for mingw32 if test "${SYS}" = "mingw32" then @@ -5594,7 +5648,7 @@ then real_mozilla_sdk="`${CYGPATH} -w ${real_mozilla_sdk}`" fi CPPFLAGS="${CPPFLAGS_save}" - fi + ]) fi AC_LANG_POP(C++) AM_CONDITIONAL(BUILD_MOZILLA,${mozilla}) @@ -5602,8 +5656,8 @@ AM_CONDITIONAL(BUILD_MOZILLA,${mozilla}) dnl Tests for Osso and Xsp AC_CHECK_LIB(osso, osso_display_blanking_pause, [ PKG_CHECK_MODULES(GLIB2, glib-2.0, [ - VLC_ADD_CPPFLAGS([x11 xvideo xvmc glx],[-DHAVE_OSSO ${DBUS_CFLAGS} ${GLIB2_CFLAGS}]) - VLC_ADD_LIBS([x11 xvideo xvmc glx],[-losso]) + VLC_ADD_CPPFLAGS([x11 xvideo xvmc glx omapfb],[-DHAVE_OSSO ${DBUS_CFLAGS} ${GLIB2_CFLAGS}]) + VLC_ADD_LIBS([x11 xvideo xvmc glx omapfb],[-losso]) ]) ]) AC_CHECK_LIB(Xsp, XSPSetPixelDoubling,[ @@ -5803,6 +5857,7 @@ AC_CONFIG_FILES([ extras/package/ipkg/Makefile libs/loader/Makefile libs/srtp/Makefile + libs/unzip/Makefile modules/Makefile projects/mozilla/Makefile m4/Makefile @@ -5813,23 +5868,25 @@ AC_CONFIG_FILES([ share/vlc_win32_rc.rc share/libvlc_win32_rc.rc src/Makefile + src/test/Makefile + bin/Makefile test/Makefile ]) AC_CONFIG_FILES([ modules/access/Makefile + modules/access/bd/Makefile modules/access/bda/Makefile modules/access/dshow/Makefile modules/access/dvb/Makefile modules/access/mms/Makefile modules/access/cdda/Makefile + modules/access/rtp/Makefile modules/access/rtsp/Makefile modules/access/rtmp/Makefile - modules/access/v4l2/Makefile 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 @@ -5847,10 +5904,12 @@ AC_CONFIG_FILES([ modules/codec/xvmc/Makefile modules/control/Makefile modules/control/http/Makefile + modules/control/globalhotkeys/Makefile modules/demux/Makefile modules/demux/asf/Makefile modules/demux/avformat/Makefile modules/demux/avi/Makefile + modules/demux/mkv/Makefile modules/demux/mp4/Makefile modules/demux/mpeg/Makefile modules/demux/playlist/Makefile @@ -5858,6 +5917,7 @@ AC_CONFIG_FILES([ modules/gui/beos/Makefile modules/gui/pda/Makefile modules/gui/macosx/Makefile + modules/gui/maemo/Makefile modules/gui/minimal_macosx/Makefile modules/gui/qnx/Makefile modules/gui/qt4/Makefile @@ -5879,6 +5939,7 @@ AC_CONFIG_FILES([ modules/mux/mpeg/Makefile modules/packetizer/Makefile modules/services_discovery/Makefile + modules/stream_filter/Makefile modules/stream_out/Makefile modules/stream_out/transrate/Makefile modules/video_chroma/Makefile