X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=configure.ac;h=1a428e7223f348eafe3a5ac4d7b4fb6ae0183341;hb=7d5dbadace37c60324afb93d0c572776da0dc658;hp=794f65abbc88e5f20e8a876c620876fc8b8f5aa4;hpb=ba2736f415a73cc336663387e2d3b9225635a8e9;p=vlc diff --git a/configure.ac b/configure.ac index 794f65abbc..1a428e7223 100644 --- a/configure.ac +++ b/configure.ac @@ -1,18 +1,18 @@ dnl Autoconf settings for vlc -AC_COPYRIGHT([Copyright 2002-2009 the VideoLAN team]) +AC_COPYRIGHT([Copyright 2002-2010 the VideoLAN team]) -AC_INIT(vlc, 1.1.0-git) +AC_INIT(vlc, 1.2.0-git) VERSION_MAJOR="1" -VERSION_MINOR="1" +VERSION_MINOR="2" VERSION_REVISION="0" VERSION_EXTRA="-git" PKGDIR="vlc" AC_SUBST(PKGDIR) CONFIGURE_LINE="`echo "$0 $ac_configure_args" | sed -e 's/\\\/\\\\\\\/g'`" -CODENAME="Yellow Bastard" -COPYRIGHT_YEARS="1996-2009" +CODENAME="Twoflower" +COPYRIGHT_YEARS="1996-2010" AC_PREREQ(2.59c) AC_CONFIG_SRCDIR(src/libvlc.c) @@ -21,12 +21,18 @@ AC_CONFIG_MACRO_DIR(m4) AC_CONFIG_LIBOBJ_DIR(compat) AC_CANONICAL_BUILD AC_CANONICAL_HOST +AC_PRESERVE_HELP_ORDER AM_INIT_AUTOMAKE(tar-ustar) AM_CONFIG_HEADER(config.h) # Disable with "./configure --disable-silent-rules" or "make V=1" -m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) +m4_ifdef([AM_SILENT_RULES], [ + AM_SILENT_RULES([yes]) +], [ + AM_DEFAULT_VERBOSITY=1 + AC_SUBST(AM_DEFAULT_VERBOSITY) +]) dnl Too many people are not aware of maintainer mode: @@ -49,24 +55,6 @@ AC_SUBST(vlcdatadir) vlclibdir="\${libdir}/\${PKGDIR}" AC_SUBST(vlclibdir) -dnl -dnl Deprecated options -dnl to notify packagers that stuff has changed -dnl -AC_ARG_ENABLE(python-bindings, - [ --enable-python-bindings Always fails for historical reasons)],, - [enable_python_bindings="no"]) -AS_IF([test "${enable_python_bindings}" != "no"], [ - AC_MSG_ERROR([Python bindings are now built from a separate source package]) -]) - -AC_ARG_ENABLE(java-bindings, - [ --enable-java-bindings Always fails for historical reasons],, - [enable_java_bindings="no"]) -AS_IF([test "${enable_java_bindings}" != "no"], [ - AC_MSG_ERROR([Java bindings are now built from a separate source package]) -]) - dnl dnl Save *FLAGS dnl @@ -101,6 +89,9 @@ AC_C_CONST AC_C_INLINE AC_C_RESTRICT +dnl Extend the --help string at the current spot. +AC_DEFUN([EXTEND_HELP_STRING], [m4_divert_once([HELP_ENABLE], [$1])]) + dnl Allow binary package maintainer to pass a custom string to avoid dnl cache problem AC_ARG_WITH(binary-version, @@ -117,23 +108,22 @@ dnl Check for the contrib directory dnl AC_ARG_WITH(contrib, [ --without-contrib do not use the libraries in CONTRIB_DIR],[],[]) - AS_IF([test "${with_contrib}" != "no"],[ - AC_ARG_VAR([CONTRIB_DIR], [directory containing pre-built contrib, overriding extras/contrib]) - if test -z "$CONTRIB_DIR" - then +AC_ARG_VAR([CONTRIB_DIR], [directory containing pre-built contrib, overriding extras/contrib]) +AS_IF([test "${with_contrib}" != "no"],[ + AS_IF([test -z "$CONTRIB_DIR"], [ topdir="`dirname $0`" if test "`echo \"$topdir\" | cut -c 1`" != "/"; then topdir="`pwd`/$topdir" fi - CONTRIB_DIR=${topdir}/extras/contrib/hosts/${host} + CONTRIB_DIR="${topdir}/extras/contrib/hosts/${host}" if ! test -d "$CONTRIB_DIR" then gccmachine=`$CC -dumpmachine` - CONTRIB_DIR=${topdir}/extras/contrib/hosts/${gccmachine} + CONTRIB_DIR="${topdir}/extras/contrib/hosts/${gccmachine}" fi - fi - AC_MSG_CHECKING([for libs in ${CONTRIB_DIR}]) - AS_IF([test -d ${CONTRIB_DIR}/lib],[ + ]) + AC_MSG_CHECKING([for libs in ${CONTRIB_DIR}]) + AS_IF([test -d "${CONTRIB_DIR}/lib"],[ AC_MSG_RESULT([yes]) AC_SUBST(CONTRIB_DIR) export PATH=${CONTRIB_DIR}/bin:$PATH @@ -145,31 +135,32 @@ AC_ARG_WITH(contrib, CXXFLAGS_save="${CXXFLAGS_save} -I${CONTRIB_DIR}/include" OBJCFLAGS="${OBJCFLAGS} -I${CONTRIB_DIR}/include" OBJCFLAGS_save="${OBJCFLAGS_save} -I${CONTRIB_DIR}/include" - if test $build = $host -o "$PKG_CONFIG_LIBDIR"; then - export PKG_CONFIG_PATH=${CONTRIB_DIR}/lib/pkgconfig:$PKG_CONFIG_PATH + if test "$build" = "$host" -o "$PKG_CONFIG_LIBDIR"; then + export PKG_CONFIG_PATH="${CONTRIB_DIR}/lib/pkgconfig:$PKG_CONFIG_PATH" else - export PKG_CONFIG_LIBDIR=${CONTRIB_DIR}/lib/pkgconfig + export PKG_CONFIG_LIBDIR="${CONTRIB_DIR}/lib/pkgconfig" fi LDFLAGS="${LDFLAGS} -L${CONTRIB_DIR}/lib" LDFLAGS_save="${LDFLAGS_save} -L${CONTRIB_DIR}/lib" - if test -z $with_mozilla_sdk_path; then - with_mozilla_sdk_path=${CONTRIB_DIR}/gecko-sdk + if test -z "$with_mozilla_sdk_path"; then + with_mozilla_sdk_path="${CONTRIB_DIR}/gecko-sdk" fi - if test -z $with_cyberlink_tree; then - with_cyberlink_tree=${CONTRIB_DIR}/src/clinkcc + if test -z "$with_cyberlink_tree"; then + with_cyberlink_tree="${CONTRIB_DIR}/src/clinkcc" fi - if test ".`uname -s`" = ".Darwin"; then - export LD_LIBRARY_PATH=${CONTRIB_DIR}/lib:$LD_LIBRARY_PATH - export DYLD_LIBRARY_PATH=${CONTRIB_DIR}/lib:$DYLD_LIBRARY_PATH - elif test ".`uname -s`" = ".BeOS"; then - export LIBRARY_PATH=${CONTRIB_DIR}/lib:$LIBRARY_PATH - export BELIBRARIES=${CONTRIB_DIR}/lib:$BELIBRARIES + if test "${SYS}" = "darwin"; then + export LD_LIBRARY_PATH="${CONTRIB_DIR}/lib:$LD_LIBRARY_PATH" + export DYLD_LIBRARY_PATH="${CONTRIB_DIR}/lib:$DYLD_LIBRARY_PATH" + elif test "${SYS}" = "beos"; then + export LIBRARY_PATH="${CONTRIB_DIR}/lib:$LIBRARY_PATH" + export BELIBRARIES="${CONTRIB_DIR}/lib:$BELIBRARIES" fi - ],[ - AC_MSG_RESULT([no]) - ]) + ],[ + AC_MSG_RESULT([no]) + CONTRIB_DIR="" + ]) ]) dnl dnl Set default values @@ -189,7 +180,7 @@ case "${host_os}" in bsdi*) SYS=bsdi CFLAGS_save="${CFLAGS_save} -pthread"; CFLAGS="${CFLAGS_save}" - VLC_ADD_LIBS([dvd dvdcss vcd cdda vcdx cddax],[-ldvd]) + VLC_ADD_LIBS([vcd cdda vcdx],[-ldvd]) ;; *bsd*) SYS="${host_os}" @@ -210,19 +201,35 @@ case "${host_os}" in esac ;; darwin*) + + dnl Force gcc "-arch" flag + ARCH_flag="" + case "${host}" in + i386*) + ARCH_flag="-arch i386" + ;; + ppc64*) + ARCH_flag="-arch ppc64" + ;; + ppc*) + ARCH_flag="-arch ppc" + ;; + x86_64*) + ARCH_flag="-arch x86_64" + ;; + esac + SYS=darwin - CFLAGS_save="${CFLAGS_save} -D_INTL_REDIRECT_MACROS"; CFLAGS="${CFLAGS_save}" - CXXFLAGS_save="${CXXFLAGS_save} -D_INTL_REDIRECT_MACROS"; CXXFLAGS="${CXXFLAGS_save}" - OBJCFLAGS_save="${OBJCFLAGS_save} -D_INTL_REDIRECT_MACROS -std=gnu99"; OBJCFLAGS="${OBJCFLAGS_save}" - LDFLAGS_save="${LDFLAGS_save} -Wl,-headerpad_max_install_names"; LDFLAGS="${LDFLAGS_save}" - VLC_ADD_LDFLAGS([mp4], [-Wl,-framework,IOKit,-framework,CoreFoundation]) - VLC_ADD_LDFLAGS([mkv mp4], [-Wl,-framework,IOKit,-framework,CoreFoundation]) - VLC_ADD_LDFLAGS([vlc],[-Wl,-undefined,dynamic_lookup]) - VLC_ADD_LDFLAGS([libvlc],[-Wl,-undefined,dynamic_lookup]) + CFLAGS_save="${CFLAGS_save} -D_INTL_REDIRECT_MACROS ${ARCH_flag}"; CFLAGS="${CFLAGS_save}" + CXXFLAGS_save="${CXXFLAGS_save} -D_INTL_REDIRECT_MACROS ${ARCH_flag}"; CXXFLAGS="${CXXFLAGS_save}" + CPPFLAGS_save="${CPPFLAGS_save} ${ARCH_flag}"; CPPFLAGS="${CPPFLAGS_save}" + OBJCFLAGS_save="${OBJCFLAGS_save} -D_INTL_REDIRECT_MACROS -std=gnu99 ${ARCH_flag}"; OBJCFLAGS="${OBJCFLAGS_save}" + LDFLAGS_save="${LDFLAGS_save} -Wl,-headerpad_max_install_names ${ARCH_flag}"; LDFLAGS="${LDFLAGS_save}" + VLC_ADD_LDFLAGS([mkv mp4 motion], [-Wl,-framework,IOKit,-framework,CoreFoundation]) + VLC_ADD_LDFLAGS([libvlc vlc],[-Wl,-undefined,dynamic_lookup]) VLC_ADD_LDFLAGS([avcodec avformat access_avio swscale postproc i420_rgb_mmx x264],[-Wl,-read_only_relocs,suppress]) VLC_ADD_CFLAGS([motion],[-fconstant-cfstrings]) VLC_ADD_LDFLAGS([libvlccore],[-Wl,-framework,CoreFoundation]) - VLC_ADD_LDFLAGS([motion],[-Wl,-framework,IOKit,-framework,CoreFoundation]) AC_ARG_ENABLE(macosx-defaults, AS_HELP_STRING([--enable-macosx-defaults],[Build the default configuration on Mac OS X (default enabled)])) if test "x${enable_macosx_defaults}" != "xno" @@ -246,8 +253,6 @@ case "${host_os}" in echo " Assuming --enable-theora" enable_shout="yes" echo " Assuming --enable-shout" - enable_cddax="yes" - echo " Assuming --enable-cddax" enable_vcdx="yes" echo " Assuming --enable-vcdx" enable_caca="yes" @@ -281,7 +286,7 @@ case "${host_os}" in LD="${LD} -syslibroot ${with_macosx_sdk}" fi AC_ARG_WITH(macosx-version-min, - [ --with-macosx-version-min=VERSION compile for MacOSX VERSION and above]) + [ --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}" @@ -295,28 +300,6 @@ case "${host_os}" in export MACOSX_DEPLOYMENT_TARGET fi ;; - darwin9*) - if (test ".`uname -p`" = ".i386"); then - dnl Due to a ld(64) bug in 10.5 we cannot use our mmx code - dnl without hacking it a lot, we disable mmx and sse. - dnl (that bug is about ld being unable to handle - dnl text relocation) - save_cflags="$CFLAGS" - CFLAGS="$CFLAGS -dynamiclib -single_module -read_only_relocs suppress" - AC_TRY_LINK( - [int a;], [asm("movq _a,%mm0\n");], - ac_ld_does_not_support_text_reloc=no, - ac_ld_does_not_support_text_reloc=yes) - CFLAGS="$save_cflags" - - if test "x$ac_ld_does_not_support_text_reloc" = "xyes"; then - enable_mmx="no" - echo " Assuming --disable-mmx (due to a bug in ld)" - enable_sse="no" - echo " Assuming --disable-sse (due to a bug in ld)" - fi - fi - ;; *mingw32* | *cygwin* | *wince* | *mingwce*) AC_CHECK_TOOL(WINDRES, windres, :) AC_CHECK_TOOL(OBJCOPY, objcopy, :) @@ -329,12 +312,12 @@ case "${host_os}" in ;; *mingw32*) SYS=mingw32 - AC_DEFINE([_WIN32_WINNT], 0x0500, [Define to '0x0500' for Windows 2000 APIs.]) + AC_DEFINE([_WIN32_WINNT], 0x0501, [Define to '0x0500' for Windows XP 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_DEFINE([_WIN32_WINNT], 0x0501, [Define to '0x0501' for Windows XP APIs.]) AC_EGREP_CPP(yes, [#ifdef WIN32 yes @@ -347,24 +330,26 @@ case "${host_os}" in # add ws2_32 for closesocket, select, recv VLC_ADD_LIBS([libvlccore],[-lws2_32 -lnetapi32 -lwinmm]) VLC_ADD_LDFLAGS([vlc],[-mwindows]) - VLC_ADD_LIBS([activex mozilla],[-lgdi32]) - VLC_ADD_LIBS([cdda vcdx cddax sdl_image aout_sdl vout_sdl],[-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 stream_out_raop vod_rtsp access_realrtsp rtp telnet rc netsync gnutls growl_udp flac ts audioscrobbler lua remoteosd zvbi audiobargraph_a],[-lws2_32]) - VLC_ADD_LIBS([access_file], [-lshlwapi]) + VLC_ADD_LIBS([activex mozilla win32text],[-lgdi32]) + VLC_ADD_LIBS([cdda vcdx sdl_image aout_sdl vout_sdl],[-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 oldhttp stream_out_standard stream_out_rtp stream_out_raop vod_rtsp access_realrtsp rtp oldrc netsync gnutls growl_udp flac ts audioscrobbler lua remoteosd zvbi audiobargraph_a netsync],[-lws2_32]) + VLC_ADD_LIBS([filesystem], [-lshlwapi]) dnl dnl DEP and ASLR options dnl AC_ARG_ENABLE(peflags, - [ --enable-peflags peflags use (default enabled)]) + [ --enable-peflags peflags use (default enabled on Windows)]) if test "${enable_peflags}" != "no" then AC_CHECK_TOOL(PEFLAGS, peflags, :) fi + AC_CHECK_PROGS(U2D, [unix2dos todos], unix2dos) fi if test "${SYS}" = "mingwce"; then # add ws2 for closesocket, select, recv - VLC_ADD_LIBS([libvlccore access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp access_output_rtmp sap http netsync audioscrobbler growl rtp stream_out_rtp remoteosd ts telnet audiobargraph_a],[-lws2]) + VLC_ADD_LIBS([libvlccore access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp access_output_rtmp sap oldhttp netsync audioscrobbler growl rtp stream_out_standard stream_out_rtp remoteosd ts audiobargraph_a netsync],[-lws2]) VLC_ADD_LIBS([libvlccore],[-lmmtimer]) + AC_CHECK_PROGS(U2D, [unix2dos todos], unix2dos) fi ;; *nto*) @@ -382,20 +367,14 @@ case "${host_os}" in CXXFLAGS_save="${CXXFLAGS_save} -Wno-multichar"; CXXFLAGS="${CXXFLAGS_save}" VLC_ADD_CXXFLAGS([beos],[]) VLC_ADD_LIBS([vlc libvlccore logger],[-lbe]) - VLC_ADD_LIBS([beos],[-lbe -lmedia -ltranslation -ltracker -lgame]) VLC_ADD_LIBS([dvdnav dvdread],[-ldl]) - VLC_ADD_LIBS([access_file],[-lpoll]) + VLC_ADD_LIBS([filesystem],[-lpoll]) LDFLAGS_save="${LDFLAGS_save} -lintl"; LDFLAGS="${LDFLAGS_save}" dnl Check for BONE if test -f /boot/beos/system/lib/libbind.so; then - VLC_ADD_LIBS([access_file access_ftp access_mms access_output_udp telnet netsync sap libvlccore growl_udp],[-lbind -lsocket]) + VLC_ADD_LIBS([filesystem access_ftp access_mms access_output_udp netsync sap libvlccore growl_udp],[-lbind -lsocket]) else - VLC_ADD_LIBS([access_file access_ftp access_mms access_output_udp telnet netsync sap libvlccore growl_udp],[-lnet]) - fi - - dnl Ugly check for Zeta - if test -f /boot/beos/system/lib/libzeta.so; then - VLC_ADD_LIBS([beos],[-lzeta]) + VLC_ADD_LIBS([filesystem access_ftp access_mms access_output_udp netsync sap libvlccore growl_udp],[-lnet]) fi ;; *) @@ -570,41 +549,23 @@ dnl Check for system libs needed need_libc=false dnl Check for usual libc functions -AC_CHECK_FUNCS([gettimeofday isatty sigrelse getpwuid_r memalign posix_memalign if_nametoindex getenv putenv setenv ctime_r daemon fork lstat posix_fadvise posix_madvise uselocale]) -AC_CHECK_FUNCS(fcntl) -AC_REPLACE_FUNCS([asprintf atof atoll getcwd getpid gmtime_r lldiv localtime_r rewind strcasecmp strcasestr strdup strlcpy strncasecmp strndup strnlen strsep strtof strtok_r strtoll vasprintf swab tdestroy]) -AC_CHECK_FUNCS([stricmp strnicmp]) +AC_CHECK_FUNCS([ctime_r daemon fcntl fdopendir fstatvfs fork getenv getpwuid_r gettimeofday isatty lstat memalign openat posix_fadvise posix_madvise posix_memalign setenv setlocale stricmp strnicmp tdestroy uselocale]) +AC_REPLACE_FUNCS([asprintf atof atoll getcwd getdelim getpid gmtime_r lldiv localtime_r nrand48 rewind strcasecmp strcasestr strdup strlcpy strncasecmp strndup strnlen strsep strtof strtok_r strtoll swab vasprintf]) AC_CHECK_FUNCS(fdatasync,, [AC_DEFINE(fdatasync, fsync, [Alias fdatasync() to fsync() if missing.]) ]) dnl Check for non-standard system calls -AC_CHECK_FUNCS([vmsplice eventfd fstatfs accept4]) +AC_CHECK_FUNCS([accept4 dup3 eventfd vmsplice sched_getaffinity]) AH_BOTTOM([#include ]) AC_CHECK_FUNCS(mmap, [VLC_ADD_PLUGIN([access_mmap])]) -dnl Check for setlocal and langinfo -AC_CHECK_FUNCS(setlocale) -AC_CHECK_HEADERS(langinfo.h) -AC_CHECK_FUNCS(nl_langinfo) - -AC_CACHE_CHECK([for nl_langinfo and CODESET], ac_cv_langinfo_codeset, - [AC_TRY_LINK([#include ], - [char* cs = nl_langinfo(CODESET);], - ac_cv_langinfo_codeset=yes, - ac_cv_langinfo_codeset=no) - ]) -if test ${ac_cv_langinfo_codeset} = yes; then - AC_DEFINE(HAVE_LANGINFO_CODESET, 1, - [Define if you have and nl_langinfo(CODESET).]) -fi - SOCKET_LIBS="" AC_CHECK_FUNCS(connect,,[ AC_CHECK_LIB(socket,connect,[ - VLC_ADD_LIBS([libvlccore cdda cddax],-lsocket) + VLC_ADD_LIBS([libvlccore cdda],-lsocket) SOCKET_LIBS="-lsocket" ]) ]) @@ -612,7 +573,7 @@ AC_SUBST(SOCKET_LIBS) 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 remoteosd],[-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 netsync],[-lsocket]) ]) ]) @@ -658,28 +619,9 @@ dnl getaddrinfo, getnameinfo and gai_strerror check dnl -lnsl and -lsocket are needed on Solaris; dnl we purposedly make the test fail on Windows LIBS_save="${LIBS}" -AH_TEMPLATE(HAVE_GETADDRINFO, [Define to 1 if you have the `getaddrinfo' function.]) -AC_SEARCH_LIBS([getaddrinfo], [nsl], [AC_DEFINE(HAVE_GETADDRINFO)],, [${SOCKET_LIBS}]) - -dnl NOTE: we assume getaddrinfo will be present if getnameinfo or gai_strerro -dnl are -LIBS="${LIBS_gai}" -AC_CHECK_FUNCS([getnameinfo gai_strerror]) +AC_SEARCH_LIBS([getaddrinfo], [nsl],,, [${SOCKET_LIBS}]) LIBS="${LIBS_save}" -AH_TEMPLATE(HAVE_ADDRINFO, [Define to 1 if defines `struct addrinfo'.]) -AC_CHECK_TYPES([struct addrinfo],[AC_DEFINE(HAVE_ADDRINFO)],, -[#include -#if defined( WIN32 ) || defined( UNDER_CE ) -# if defined(UNDER_CE) && defined(sockaddr_storage) -# undef sockaddr_storage -# endif -# include -# include -#else -# include -#endif]) - dnl Check for va_copy AC_CACHE_CHECK([for va_copy], ac_cv_c_va_copy, AC_TRY_LINK( @@ -706,30 +648,24 @@ AC_CHECK_FUNCS(inet_aton,,[ ]) ]) -dnl Check for getopt (always use builtin one on win32) -if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"; then -need_getopt=: -else -need_getopt=false -AC_CHECK_FUNCS(getopt_long,[AC_DEFINE(HAVE_GETOPT_LONG,1,long getopt support)], -[ # FreeBSD has a gnugetopt library for this: - AC_CHECK_LIB([gnugetopt],[getopt_long], - [AC_DEFINE(HAVE_GETOPT_LONG,1,getopt support) - VLC_ADD_LIBS([libvlccore],[-lgnugetopt])], - [need_getopt=:])]) -fi -AM_CONDITIONAL(BUILD_GETOPT, ${need_getopt}) +dnl FreeBSD has a gnugetopt library for this: +GNUGETOPT_LIBS="" +AC_CHECK_FUNC(getopt_long,, [ + AC_CHECK_LIB([gnugetopt],[getopt_long], [ + GNUGETOPT_LIBS="-lgnugetopt" + ]) +]) +AC_SUBST(GNUGETOPT_LIBS) 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 scene kate flac lua chorus_flanger],[-lm]) ]) AC_CHECK_LIB(m,pow,[ - VLC_ADD_LIBS([avcodec avformat access_avio swscale postproc ffmpegaltivec i420_rgb faad twolame equalizer spatializer param_eq libvlccore freetype mod mpc dmo quicktime realaudio realvideo opengl],[-lm]) + VLC_ADD_LIBS([avcodec avformat access_avio swscale postproc ffmpegaltivec i420_rgb faad twolame equalizer spatializer param_eq libvlccore freetype mod mpc dmo quicktime realvideo qt4],[-lm]) ]) AC_CHECK_LIB(m,sqrt,[ - VLC_ADD_LIBS([headphone_channel_mixer normvol audiobargraph_a speex mono colorthres extract],[-lm]) + VLC_ADD_LIBS([headphone_channel_mixer normvol audiobargraph_a speex mono colorthres extract ball],[-lm]) ]) AC_CHECK_LIB(m,ceil,[ VLC_ADD_LIBS([access_imem hotkeys mosaic swscale_omap],[-lm]) @@ -795,22 +731,30 @@ if test "${ac_cv_have_plugins}" = "no"; then fi # Only test for dlopen() if the others didn't work +LIBDL="" if test "${ac_cv_have_plugins}" = "no" -o "${SYS}" = "darwin"; then AC_CHECK_HEADERS(dlfcn.h sys/dl.h) ac_cv_my_have_dlopen=no - AC_CHECK_FUNC(dlopen, - ac_cv_my_have_dlopen=yes, - AC_CHECK_LIB(dl, dlopen, + AC_CHECK_FUNC(dlopen, [ + ac_cv_my_have_dlopen=yes + ], [ + AC_CHECK_LIB(dl, dlopen, [ ac_cv_my_have_dlopen=yes - VLC_ADD_LIBS([libvlccore realaudio realvideo lua],[-ldl]), - AC_CHECK_LIB(svld, dlopen, + LIBDL="-ldl" + ], [ + AC_CHECK_LIB(svld, dlopen, [ ac_cv_my_have_dlopen=yes - VLC_ADD_LIBS([libvlccore],[-lsvld])))) + LIBDL="-lsvld" + ]) + ]) + ]) if test "${ac_cv_my_have_dlopen}" = "yes"; then AC_DEFINE(HAVE_DL_DLOPEN, 1, [Define if you have the dlopen API]) ac_cv_have_plugins=yes + VLC_ADD_LIBS([libvlccore realvideo lua],[$LIBDL]) fi fi +AC_SUBST(LIBDL) if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then dnl Check for pthreads - borrowed from XMMS @@ -829,7 +773,7 @@ if test "${THREAD_LIB}" = "error"; then THREAD_LIB="" fi -VLC_ADD_LIBS([libvlccore libvlc plugin],[${THREAD_LIB}]) +VLC_ADD_LIBS([libvlccore libvlc vlc plugin],[${THREAD_LIB}]) AC_CHECK_LIB(rt, clock_nanosleep, [ VLC_ADD_LIBS([libvlccore],[-lrt]) @@ -862,7 +806,7 @@ AC_EGREP_HEADER(strncasecmp,strings.h,[ dnl Check for headers AC_CHECK_HEADERS(getopt.h strings.h locale.h xlocale.h) -AC_CHECK_HEADERS(fcntl.h sys/types.h sys/time.h sys/times.h sys/ioctl.h sys/stat.h sys/mount.h) +AC_CHECK_HEADERS(fcntl.h sys/time.h sys/ioctl.h sys/stat.h sys/mount.h) AC_CHECK_HEADERS([arpa/inet.h netinet/in.h netinet/udplite.h sys/eventfd.h]) AC_CHECK_HEADERS([net/if.h], [], [], [ @@ -875,8 +819,6 @@ AC_CHECK_HEADERS([linux/version.h linux/dccp.h scsi/scsi.h linux/magic.h]) AC_CHECK_HEADERS(syslog.h) fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" -AC_HEADER_TIME - dnl LP64 adn LLP64 architectures had better define ssize_t by themselves... AH_TEMPLATE(ssize_t, [Define to `int' if does not define.]) AC_CHECK_TYPE(ssize_t,, [ @@ -960,8 +902,7 @@ then VLC_ADD_CPPFLAGS([skins2],[$MINIZIP_CFLAGS]) VLC_ADD_CFLAGS([zip],[$MINIZIP_CFLAGS]) VLC_ADD_LIBS([skins2 zip],[$MINIZIP_LIBS]) - VLC_ADD_PLUGIN([unzip]) - VLC_ADD_PLUGIN([zip]) + VLC_ADD_PLUGIN([unzip zip]) fi AM_CONDITIONAL(HAVE_MINIZIP, [ test "${have_minizip}" = "yes" ]) @@ -1005,9 +946,6 @@ fi ;; esac -dnl build the qte plugin ? -NEED_QTE_MAIN=no - dnl Check for ntohl, etc. AC_CACHE_CHECK([for ntohl in sys/param.h], [ac_cv_c_ntohl_sys_param_h], @@ -1023,16 +961,6 @@ CFLAGS="${CFLAGS_save}" RDC_PROG_CC_WFLAGS([all extra sign-compare undef pointer-arith bad-function-cast write-strings missing-prototypes volatile-register-var error-implicit-function-declaration]) RDC_PROG_CC_FLAGS([-pipe]) -AC_ARG_ENABLE(warnings-as-error, - AS_HELP_STRING([--enable-warnings-as-error],[Treat acceptable warnings as error (default disabled)]),, [enable_warnings_as_error="no"]) -AS_IF([test "${enable_warnings_as_error}" = "yes"], [ - RDC_PROG_CC_WERRORFLAGS([unused-function unused-label unused-value unused-parameter unused-variable unused \ - missing-braces nonnull parentheses uninitialized address enum-compare undef comment switch \ - bad-function-cast implicit sequence-point strict-aliasing array-bounds missing-parameter-type \ - overflow int-to-pointer-cast pointer-to-int-cast div-by-zero overflow ignored]) -]) -AC_SUBST(CFLAGS_WERROR) - dnl Check for various optimization flags AC_CACHE_CHECK([if \$CC accepts -Os], [ac_cv_c_os], @@ -1192,143 +1120,25 @@ test "${enable_cprof}" != "yes" && enable_cprof="no" dnl dnl default modules dnl -dnl Video filters: -VLC_ADD_PLUGIN([deinterlace]) -VLC_ADD_PLUGIN([yuvp]) -VLC_ADD_PLUGIN([invert]) -VLC_ADD_PLUGIN([mirror]) -VLC_ADD_PLUGIN([adjust]) -VLC_ADD_PLUGIN([transform]) -VLC_ADD_PLUGIN([wave]) -VLC_ADD_PLUGIN([ripple]) -VLC_ADD_PLUGIN([psychedelic]) -VLC_ADD_PLUGIN([gradient]) -VLC_ADD_PLUGIN([motionblur]) -VLC_ADD_PLUGIN([rv32]) -VLC_ADD_PLUGIN([rotate]) -VLC_ADD_PLUGIN([noise]) -VLC_ADD_PLUGIN([grain]) -VLC_ADD_PLUGIN([extract]) -VLC_ADD_PLUGIN([sharpen]) -VLC_ADD_PLUGIN([croppadd]) -VLC_ADD_PLUGIN([canvas]) -VLC_ADD_PLUGIN([blendbench]) -VLC_ADD_PLUGIN([blend]) -VLC_ADD_PLUGIN([scale]) -VLC_ADD_PLUGIN([vmem]) -VLC_ADD_PLUGIN([logo]) -VLC_ADD_PLUGIN([audiobargraph_v]) -VLC_ADD_PLUGIN([magnify]) -VLC_ADD_PLUGIN([puzzle]) -VLC_ADD_PLUGIN([colorthres]) -VLC_ADD_PLUGIN([scene]) -VLC_ADD_PLUGIN([yuv]) - -ALIASES="${ALIASES} cvlc" - -dnl -dnl default modules that need g++ -dnl -AC_LANG_PUSH(C++) -VLC_ADD_PLUGIN([spatializer]) -AC_LANG_POP(C++) - -if test "${SYS}" != "mingwce"; then - VLC_ADD_PLUGIN([gestures]) - VLC_ADD_PLUGIN([rc]) - VLC_ADD_PLUGIN([hotkeys]) - VLC_ADD_PLUGIN([showintf]) - VLC_ADD_PLUGIN([marq]) - VLC_ADD_PLUGIN([podcast]) - VLC_ADD_PLUGIN([shout]) - VLC_ADD_PLUGIN([sap]) - VLC_ADD_PLUGIN([mediadirs]) - VLC_ADD_PLUGIN([fake]) - VLC_ADD_PLUGIN([folder]) - VLC_ADD_PLUGIN([rss]) - VLC_ADD_PLUGIN([mosaic]) - VLC_ADD_PLUGIN([wall]) - VLC_ADD_PLUGIN([motiondetect]) - VLC_ADD_PLUGIN([clone]) - VLC_ADD_PLUGIN([crop]) - VLC_ADD_PLUGIN([erase]) - VLC_ADD_PLUGIN([bluescreen]) - VLC_ADD_PLUGIN([alphamask]) - VLC_ADD_PLUGIN([gaussianblur]) - 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]) - 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([dolby_surround_decoder]) - VLC_ADD_PLUGIN([headphone_channel_mixer]) - VLC_ADD_PLUGIN([normvol]) - VLC_ADD_PLUGIN([audiobargraph_a]) - VLC_ADD_PLUGIN([equalizer]) - VLC_ADD_PLUGIN([param_eq]) - VLC_ADD_PLUGIN([scaletempo]) - VLC_ADD_PLUGIN([a52tospdif]) - VLC_ADD_PLUGIN([dtstospdif]) - 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([audiobargraph_a]) - VLC_ADD_PLUGIN([a52tospdif]) - VLC_ADD_PLUGIN([dtstospdif]) - 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 +ALIASES="${ALIASES} cvlc rvlc" dnl dnl Some plugins aren't useful on some platforms dnl 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]) - VLC_ADD_PLUGIN([dmo]) - VLC_ADD_PLUGIN([msn]) + VLC_ADD_PLUGIN([access_smb dmo globalhotkeys]) VLC_ADD_LIBS([dmo],[-lole32 -luuid]) - VLC_ADD_PLUGIN([globalhotkeys]) -else - VLC_ADD_PLUGIN([win32text]) fi if test "${SYS}" = "darwin"; then - VLC_ADD_PLUGIN([quartztext]) VLC_ADD_LDFLAGS([quartztext],[-Wl,-framework,ApplicationServices]) fi dnl dnl Accelerated modules dnl -AC_ARG_WITH(,[]) -AC_ARG_WITH(,[Optimization options:]) +EXTEND_HELP_STRING([Optimization options:]) dnl Check for fully working MMX intrinsics dnl We need support for -mmmx, we need , and we also need a @@ -1344,6 +1154,8 @@ AC_ARG_ENABLE(mmx, ;; esac ]) +have_mmx="no" +have_mmxext="no" AS_IF([test "${enable_mmx}" != "no"], [ ARCH="${ARCH} mmx" @@ -1367,7 +1179,7 @@ AS_IF([test "${enable_mmx}" != "no"], [ AS_IF([test "${ac_cv_c_mmx_intrinsics}" != "no"], [ AC_DEFINE(HAVE_MMX_INTRINSICS, 1, [Define to 1 if MMX intrinsics are available.]) - VLC_ADD_CFLAGS([memcpymmx i420_rgb_mmx i420_yuy2_mmx i422_yuy2_mmx i420_ymga_mmx],[-mmmx]) + MMX_CFLAGS="-mmmx" ]) AC_CACHE_CHECK([if $CC groks MMX inline assembly], @@ -1378,11 +1190,7 @@ AS_IF([test "${enable_mmx}" != "no"], [ AS_IF([test "${ac_cv_mmx_inline}" != "no"], [ AC_DEFINE(CAN_COMPILE_MMX, 1, [Define to 1 inline MMX assembly is available.]) - VLC_ADD_PLUGIN([memcpymmx]) - VLC_ADD_PLUGIN([i420_rgb_mmx]) - VLC_ADD_PLUGIN([i420_yuy2_mmx]) - VLC_ADD_PLUGIN([i422_yuy2_mmx]) - VLC_ADD_PLUGIN([i420_ymga_mmx]) + have_mmx="yes" ]) AC_CACHE_CHECK([if $CC groks MMX EXT inline assembly], @@ -1393,16 +1201,19 @@ AS_IF([test "${enable_mmx}" != "no"], [ AS_IF([test "${ac_cv_mmxext_inline}" != "no"], [ AC_DEFINE(CAN_COMPILE_MMXEXT, 1, [Define to 1 if MMX EXT inline assembly is available.]) - VLC_ADD_PLUGIN([memcpymmxext]) + have_mmxext="yes" ]) ]) +AC_SUBST(MMX_CFLAGS) +AM_CONDITIONAL([HAVE_MMX], [test "${have_mmx}" = "yes"]) +AM_CONDITIONAL([HAVE_MMXEXT], [test "${have_mmxext}" = "yes"]) 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, 2, 3 and 4) optimizations (default auto)] -,, [ +[ --disable-sse disable SSE (1, 2, 3 and 4) optimizations (default auto)], +, [ case "${host_cpu}" in i686|x86_64) enable_sse=yes @@ -1412,6 +1223,7 @@ AC_ARG_ENABLE(sse, ;; esac ]) +have_sse2="no" AS_IF([test "${enable_sse}" != "no"], [ ARCH="${ARCH} sse sse2" @@ -1435,7 +1247,7 @@ AS_IF([test "${enable_sse}" != "no"], [ AS_IF([test "${ac_cv_c_sse2_intrinsics}" != "no"], [ AC_DEFINE(HAVE_SSE2_INTRINSICS, 1, [Define to 1 if SSE2 intrinsics are available.]) - VLC_ADD_CFLAGS([i420_rgb_sse2 i420_yuy2_sse2 i422_yuy2_sse2],[-msse2]) + SSE2_CFLAGS="-msse2" ]) AC_CACHE_CHECK([if $CC groks SSE inline assembly], @@ -1456,9 +1268,7 @@ AS_IF([test "${enable_sse}" != "no"], [ AS_IF([test "${ac_cv_sse2_inline}" != "no" -a "${SYS}" != "solaris"], [ AC_DEFINE(CAN_COMPILE_SSE2, 1, [Define to 1 if SSE2 inline assembly is available.]) - VLC_ADD_PLUGIN([i420_rgb_sse2]) - VLC_ADD_PLUGIN([i420_yuy2_sse2]) - VLC_ADD_PLUGIN([i422_yuy2_sse2]) + have_sse2="yes" ]) # SSE3 @@ -1510,7 +1320,10 @@ AS_IF([test "${enable_sse}" != "no"], [ AC_DEFINE(CAN_COMPILE_SSE4A, 1, [Define to 1 if SSE4A inline assembly is available.]) ]) ]) +AC_SUBST(SSE2_CFLAGS) +AM_CONDITIONAL([HAVE_SSE2], [test "$have_sse2" = "yes"]) +have_3dnow="no" AC_CACHE_CHECK([if $CC groks 3D Now! inline assembly], [ac_cv_3dnow_inline], [CFLAGS="${CFLAGS_save}" @@ -1519,32 +1332,41 @@ AC_CACHE_CHECK([if $CC groks 3D Now! inline assembly], AS_IF([test "${ac_cv_3dnow_inline}" != "no"], [ AC_DEFINE(CAN_COMPILE_3DNOW, 1, [Define to 1 if 3D Now! inline assembly is available.]) - VLC_ADD_PLUGIN([memcpy3dn]) + have_3dnow="yes" ]) +AM_CONDITIONAL([HAVE_3DNOW], [test "$have_3dnow" = "yes"]) AC_ARG_ENABLE(neon, -[ --disable-neon disable NEON optimizations (default auto)],, [ +[ --disable-neon disable NEON optimizations (default auto)],, [ AS_IF([test "${host_cpu}" = "arm"], [enable_neon="yes"] ,[enable_neon="no"]) ]) AS_IF([test "${enable_neon}" != "no"], [ AC_CACHE_CHECK([if $CC groks NEON inline assembly], [ac_cv_neon_inline], [ + CFLAGS="${CFLAGS_save} -mfpu=neon" AC_COMPILE_IFELSE([ AC_LANG_PROGRAM(,[[asm volatile("vqmovun.s64 d0, q1":::"d0");]]) ], [ - ac_cv_neon_inline="yes" + ac_cv_neon_inline="-mfpu=neon" ], [ ac_cv_neon_inline="no" ]) + CFLAGS="${CFLAGS_save}" ]) + ARM_NEON_CFLAGS="$ac_cv_neon_inline" +], [ + ac_cv_neon_inline="no" ]) -AM_CONDITIONAL(HAVE_NEON, [test "${ac_cv_neon_inline}" = "yes"]) +AC_SUBST(ARM_NEON_CFLAGS) +AM_CONDITIONAL(HAVE_ARM_NEON, [test "${ac_cv_neon_inline}" != "no"]) + AC_ARG_ENABLE(altivec, [ --disable-altivec disable AltiVec optimizations (default auto)],, [ AS_IF([test "${host_cpu}" = "powerpc"], [enable_altivec=yes], [enable_altivec=no]) ]) +have_altivec="no" AS_IF([test "${enable_altivec}" = "yes"], [ ARCH="${ARCH} altivec"; AC_CACHE_CHECK([if $CC groks AltiVec inline assembly], @@ -1567,8 +1389,7 @@ AS_IF([test "${enable_altivec}" = "yes"], [ VLC_ADD_CFLAGS([i420_yuy2_altivec],[${ac_cv_altivec_inline}]) VLC_ADD_CFLAGS([libvlccore],[${ac_cv_altivec_inline}]) ]) - VLC_ADD_PLUGIN([memcpyaltivec]) - VLC_ADD_PLUGIN([i420_yuy2_altivec]) + have_altivec="yes" ]) dnl The AltiVec C extensions @@ -1630,8 +1451,7 @@ dnl - Others: test should fail VLC_ADD_CFLAGS([libvlccore],[${ac_cv_c_altivec}]) VLC_ADD_CFLAGS([idctaltivec motionaltivec],[${ac_cv_c_altivec}]) VLC_ADD_CFLAGS([i420_yuy2_altivec memcpyaltivec deinterlace],[${ac_cv_c_altivec} ${ac_cv_c_altivec_abi}]) - VLC_ADD_PLUGIN([memcpyaltivec]) - VLC_ADD_PLUGIN([i420_yuy2_altivec]) + have_altivec="yes" ]) AC_CACHE_CHECK([if linker needs -framework vecLib], @@ -1644,6 +1464,7 @@ dnl - Others: test should fail VLC_ADD_LDFLAGS([libvlccore idctaltivec motionaltivec memcpyaltivec],[-Wl,-framework,vecLib]) ]) ]) +AM_CONDITIONAL([HAVE_ALTIVEC], [test "$have_altivec" = "yes"]) dnl dnl Special arch tuning @@ -1720,13 +1541,13 @@ AS_IF([test "x${enable_debug}" = "xno"], [ ]) dnl -dnl Allow runing as root (usefull for people runing on embedded platforms) +dnl Allow running as root (useful for people running on embedded platforms) dnl AC_ARG_ENABLE(run-as-root, -[ --enable-run-as-root allow runing VLC as root (default disabled)]) +[ --enable-run-as-root allow running 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).]) + [Define to 1 to allow running VLC as root (uid 0).]) ]) dnl @@ -1745,13 +1566,6 @@ AS_IF([test "${enable_coverage}" != "no"], [ LDFLAGS_save="${LDFLAGS}" ]) -dnl -dnl Enable release-specific flags -dnl -AC_ARG_ENABLE(release, -[ --enable-release activate extra optimizations (default disabled)]) -test "${enable_release}" != "yes" && enable_release="no" - dnl dnl Stream output dnl @@ -1786,9 +1600,6 @@ then AC_CHECK_LIB( lua , luaL_newstate, [LUA_LIBS="-llua"], [ have_lua=no - AS_IF([test "x${enable_lua}" = "xyes"], - [AC_MSG_ERROR([lua >= 5.1 not found!])], - [AC_MSG_WARN([lua >= 5.1 not found!])]) ], [-lm]) ) ) @@ -1797,7 +1608,14 @@ then if test "x${have_lua}" = "xyes" ; then VLC_ADD_LIBS([lua],[$LUA_LIBS]) VLC_ADD_CFLAGS([lua],[$LUA_CFLAGS]) + else + AC_MSG_ERROR([Could not find lua. Lua is needed for some interfaces (rc, telnet, http) as well as many other custom scripts. Use --disable-lua to ignore this error.]) fi + AC_ARG_VAR([LUAC], [LUA byte compiler]) + AC_PATH_PROGS(LUAC,[${LUAC} luac], [false]) + AS_IF([test "${LUAC}" = "false"], [ + AC_MSG_ERROR([Could not find the LUA byte compiler.]) + ]) fi AM_CONDITIONAL(BUILD_LUA, [test "${have_lua}" = "yes"]) @@ -1808,7 +1626,7 @@ AC_ARG_ENABLE(httpd, [ --enable-httpd HTTP daemon (default enabled)]) if test "${enable_httpd}" != "no" then - VLC_ADD_PLUGIN([http]) + VLC_ADD_PLUGIN([oldhttp]) AC_DEFINE(ENABLE_HTTPD, 1, Define if you want the HTTP dameon support) fi AM_CONDITIONAL(BUILD_HTTPD, [test "${enable_httpd}" != "no"]) @@ -1842,7 +1660,6 @@ AS_IF([test "${enable_vlm}" != "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"]) @@ -1867,16 +1684,6 @@ dnl Libnotify notification plugin dnl PKG_ENABLE_MODULES_VLC([NOTIFY], [], [libnotify], [libnotify notification], [auto]) -dnl -dnl Audioscrobbler plugin -dnl - -AC_ARG_ENABLE(audioscrobbler, - [ --disable-audioscrobbler Last.fm submission plugin (default enabled)]) -AS_IF([test "${enable_audioscrobbler}" != "no"], [ - VLC_ADD_PLUGIN([audioscrobbler]) - ]) - dnl dnl Taglibplugin dnl @@ -1894,38 +1701,27 @@ dnl dnl Input plugins dnl -AC_ARG_WITH(,[Input plugins:]) +EXTEND_HELP_STRING([Input plugins:]) dnl live555 input dnl -if test "${enable_livedotcom}" -then - AC_MSG_WARN(--{en|dis}able-livedotcom is deprecated. Use --{en|dis}able-live555 instead.) -fi -if test "${enable_livedotcom}" = "no" -then - enable_live555="no" -fi - AC_ARG_ENABLE(live555, [ --enable-live555 live555 RTSP input plugin (default enabled)]) if test "${enable_live555}" != "no"; then AC_ARG_WITH(live555-tree, - [ --with-live555-tree=PATH live.com tree for static linking]) + [ --with-live555-tree=PATH live.com tree for static linking]) dnl dnl test for --with-live555-tree dnl - if test "${with_livedotcom_tree}" - then - AC_MSG_WARN(--with-livedotcom-tree is deprecated. Use --with-live555-tree instead.) - with_live555_tree="${with_livedotcom_tree}" - fi - if test -z "${with_live555_tree}" -a "${CXX}" != ""; then AC_LANG_PUSH(C++) CPPFLAGS_save="${CPPFLAGS}" - CPPFLAGS_live555="-I/usr/include/liveMedia -I/usr/include/groupsock -I/usr/include/BasicUsageEnvironment -I/usr/include/UsageEnvironment" + if test -z "${CONTRIB_DIR}"; then + CPPFLAGS_live555="-I/usr/include/liveMedia -I/usr/include/groupsock -I/usr/include/BasicUsageEnvironment -I/usr/include/UsageEnvironment" + else + CPPFLAGS_live555="-I${CONTRIB_DIR}/include/liveMedia -I${CONTRIB_DIR}/include/groupsock -I${CONTRIB_DIR}/include/BasicUsageEnvironment -I${CONTRIB_DIR}/include/UsageEnvironment" + fi if test "${SYS}" = "solaris"; then CPPFLAGS_live555="${CPPFLAGS_live555} -DSOLARIS" fi @@ -2041,18 +1837,16 @@ dnl dnl dvdread module: check for libdvdread dnl AC_ARG_ENABLE(dvdread, -[ --enable-dvdread dvdread input module (default disabled)]) +[ --enable-dvdread dvdread input module (default enabled)]) if test "${enable_dvdread}" != "no" then AC_ARG_WITH(dvdread, - [ --with-dvdread=PATH libdvdread headers and libraries]) + [ --with-dvdread=PATH libdvdread headers and libraries]) AC_ARG_WITH(dvdread-tree, - [ --with-dvdread-tree=PATH libdvdread tree for static linking]) + [ --with-dvdread-tree=PATH libdvdread tree for static linking]) - dnl Temporary hack (yeah, sure ;) - if test "${SYS}" = "mingw32" || test "${SYS}" = "darwin" || test "${SYS}" = "beos" ; then - VLC_ADD_LIBS([dvdread],[-ldvdcss]) - fi + dnl prepend -ldvdcss on OS that need it + AS_CASE(["${SYS}"], [mingw32|darwin|beos], [VLC_ADD_LIBS([dvdread], [-ldvdcss])]) if test -z "${with_dvdread}" then @@ -2060,11 +1854,11 @@ then then AC_CHECK_HEADERS(dvdread/dvd_reader.h, [ VLC_ADD_PLUGIN([dvdread]) - VLC_ADD_LIBS([dvdread],[-ldvdread ${LIBS_dvdcss}]) + VLC_ADD_LIBS([dvdread],[-ldvdread]) ],[ AC_CHECK_HEADERS(libdvdread/dvd_reader.h, [ VLC_ADD_PLUGIN([dvdread]) - VLC_ADD_LIBS([dvdread],[-ldvdread ${LIBS_dvdcss}]) + VLC_ADD_LIBS([dvdread],[-ldvdread]) ],[ if test -n "${enable_dvdread}" then @@ -2086,7 +1880,7 @@ then dnl Use a custom libdvdread AC_MSG_RESULT(${real_dvdread_tree}/dvdread/.libs/libdvdread.a) VLC_ADD_PLUGIN([dvdread]) - VLC_ADD_LIBS([dvdread],[-L${real_dvdread_tree}/dvdread/.libs -ldvdread ${LIBS_dvdcss}]) + VLC_ADD_LIBS([dvdread],[-L${real_dvdread_tree}/dvdread/.libs -ldvdread]) VLC_ADD_CPPFLAGS([dvdread],[-I${real_dvdread_tree}]) else dnl The given libdvdread wasn't built @@ -2101,7 +1895,7 @@ then dnl Use ${with_dvdread}/include/dvdread/dvd_reader.h AC_MSG_RESULT(yes) VLC_ADD_PLUGIN([dvdread]) - VLC_ADD_LIBS([dvdread],[-L${with_dvdread}/lib -ldvdread ${LIBS_dvdcss}]) + VLC_ADD_LIBS([dvdread],[-L${with_dvdread}/lib -ldvdread]) VLC_ADD_CPPFLAGS([dvdread],[-I${with_dvdread}/include]) else dnl No libdvdread could be found, sorry @@ -2109,6 +1903,9 @@ then AC_MSG_ERROR([cannot find ${with_dvdread}/include/dvdread/dvd_reader.h]) fi fi + + dnl append -ldvd on OS that need it + AS_CASE(["${SYS}"], [bsdi], [VLC_ADD_LIBS([dvdread], [-ldvd])]) fi dnl @@ -2118,14 +1915,12 @@ AC_ARG_ENABLE(dvdnav, [ --enable-dvdnav dvdnav input module (default enabled)]) if test "${enable_dvdnav}" != "no" then - dnl Same hack than dvdread - if test "${SYS}" = "mingw32" || test "${SYS}" = "darwin" || test "${SYS}" = "beos" ; then - VLC_ADD_LIBS([dvdnav],[-ldvdcss]) - fi + dnl prepend -ldvdcss on OS that need it + AS_CASE(["${SYS}"], [mingw32|darwin|beos], [VLC_ADD_LIBS([dvdnav], [-ldvdcss])]) DVDNAV_PATH="${PATH}" AC_ARG_WITH(dvdnav-config-path, - [ --with-dvdnav-config-path=PATH dvdnav-config path (default search in \$PATH)], + [ --with-dvdnav-config-path=PATH dvdnav-config path (default search in \$PATH)], [ if test "${with_dvdnav_config_path}" != "no" then DVDNAV_PATH="${with_dvdnav_config_path}:${PATH}" @@ -2136,6 +1931,9 @@ then VLC_ADD_PLUGIN([dvdnav]) VLC_ADD_CFLAGS([dvdnav],[`${DVDNAV_CONFIG} --cflags`]) VLC_ADD_LIBS([dvdnav],[`${DVDNAV_CONFIG} --libs`]) + AC_CHECK_LIB(dvdnav, dvdnav_get_video_resolution, + AC_DEFINE(HAVE_DVDNAV_GET_VIDEO_RESOLUTION, 1, [Define if you have dvdnav_get_video_resolution.]), + [], [${LIBS_dvdnav}]) fi fi @@ -2178,46 +1976,7 @@ fi dnl dnl OpenCV wrapper and example filters dnl -AC_ARG_ENABLE(opencv, - [ --enable-opencv OpenCV (computer vision) filter (default disabled)]) -if test "${enable_opencv}" = "yes" -a "${CXX}" != ""; -then - AC_ARG_WITH(opencv-tree, - [ --with-opencv-tree=PATH opencv tree for linking]) - if test "${SYS}" = "mingw32" - 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 - then - AC_MSG_RESULT(yes) - VLC_ADD_PLUGIN([opencv_wrapper]) - VLC_ADD_LIBS([opencv_wrapper],[-L${with_opencv_tree}/lib -lcv -lcxcore -lcvaux -lhighgui]) - VLC_ADD_CFLAGS([opencv_wrapper],[-I${with_opencv_tree}/cv/include -I${with_opencv_tree}/cxcore/include -I${with_opencv_tree}/cvaux/include -I${with_opencv_tree}/otherlibs/highgui]) - AC_LANG_PUSH(C++) - VLC_ADD_PLUGIN([opencv_example]) - VLC_ADD_LIBS([opencv_example],[-L${with_opencv_tree}/lib -lcv -lcxcore -lcvaux -lhighgui]) - VLC_ADD_CXXFLAGS([opencv_example],[-I${with_opencv_tree}/cv/include -I${with_opencv_tree}/cxcore/include -I${with_opencv_tree}/cvaux/include -I${with_opencv_tree}/otherlibs/highgui]) - AC_LANG_POP(C++) - else - dnl No opencv could be found, sorry - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot find opencv in ${with_opencv_tree}]) - fi - else - 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 +PKG_ENABLE_MODULES_VLC([OPENCV], [opencv_example], [opencv], (OpenCV (computer vision) filter), [off]) dnl @@ -2256,9 +2015,9 @@ have_dvbpsi=no if test "${enable_dvbpsi}" != "no" then AC_ARG_WITH(dvbpsi, - [ --with-dvbpsi=PATH libdvbpsi headers and libraries]) + [ --with-dvbpsi=PATH libdvbpsi headers and libraries]) AC_ARG_WITH(dvbpsi, - [ --with-dvbpsi-tree=PATH libdvbpsi tree for static linking]) + [ --with-dvbpsi-tree=PATH libdvbpsi tree for static linking]) case "${with_dvbpsi}" in ""|yes) if test -z "${with_dvbpsi_tree}" @@ -2324,7 +2083,8 @@ then AC_CHECK_HEADERS([dvbpsi/dr.h],[ VLC_ADD_PLUGIN([ts]) if test "${enable_sout}" != "no"; then - VLC_ADD_PLUGIN([mux_ts]) + AC_CHECK_LIB(dvbpsi, dvbpsi_SDTServiceAddDescriptor, + [VLC_ADD_PLUGIN([mux_ts])], [], [${LDFLAGS_test} -ldvbpsi]) fi VLC_ADD_CPPFLAGS([mux_ts ts dvb],[${CPPFLAGS_test}]) VLC_ADD_LIBS([mux_ts ts dvb],[${LDFLAGS_test} -ldvbpsi]) @@ -2332,7 +2092,7 @@ then ],[ if test -n "${enable_dvbpsi}" then - AC_MSG_ERROR([Could not find libdvbpsi on your system: you may get it from www.videolan.org, you'll need at least version 0.1.1]) + AC_MSG_ERROR([Could not find libdvbpsi on your system: you may get it from www.videolan.org, you'll need at least version 0.1.6]) fi ], [#if defined( HAVE_STDINT_H ) @@ -2361,7 +2121,7 @@ AC_ARG_ENABLE(v4l, if test "${enable_v4l}" = "yes" then AC_ARG_WITH(v4l, - [ --with-v4l=PATH path to a v4l-enabled kernel tree],[],[]) + [ --with-v4l=PATH path to a v4l-enabled kernel tree],[],[]) if test "${with_v4l}" != "no" -a -n "${with_v4l}" then VLC_ADD_CPPFLAGS([v4l],[-I${with_v4l}/include]) @@ -2378,7 +2138,7 @@ dnl dnl libv4l1 support for video4linux. dnl AC_ARG_ENABLE( libv4l, - [ --enable-libv4l Libv4l Video4Linux support (default enabled)]) + [ --enable-libv4l Libv4l Video4Linux support (default enabled)]) if test "${enable_libv4l}" != "no" -a "${enable_v4l}" != "no" then PKG_CHECK_MODULES( LIBV4L, libv4l1, [ @@ -2397,14 +2157,14 @@ AC_ARG_ENABLE(v4l2, if test "${enable_v4l2}" != "no" then AC_ARG_WITH(v4l2, - [ --with-v4l2=PATH path to a v4l2-enabled kernel tree],[],[]) + [ --with-v4l2=PATH path to a v4l2-enabled kernel tree],[],[]) if test "${with_v4l2}" != "no" -a -n "${with_v4l2}" then VLC_ADD_CPPFLAGS([v4l2],[-I${with_v4l2}/include]) fi CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_v4l2}" - AC_CHECK_HEADERS(linux/videodev2.h, [ + AC_CHECK_HEADERS(linux/videodev2.h sys/videoio.h, [ VLC_ADD_PLUGIN([v4l2]) ],[]) CPPFLAGS="${CPPFLAGS_save}" @@ -2463,120 +2223,40 @@ dnl gnomeVFS access module dnl PKG_ENABLE_MODULES_VLC([GNOMEVFS], [access_gnomevfs], [gnome-vfs-2.0], [GnomeVFS access module], [auto]) - -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-vcdinfo VCD information library support (default enabled)]) - -have_libcdio=no -have_libvcdinfo=no -if test "${enable_libcdio}" != "no" -then - PKG_CHECK_MODULES(LIBCDIO, libcdio >= 0.78.2, - have_libcdio=yes - AC_DEFINE(HAVE_LIBCDIO, 1, - [Define if you have libcdio 0.78.2 or greater installed]), - [AC_MSG_WARN(CD Reading and information library not found)]) - - if test "${enable_vcdinfo}" != "no" - then - PKG_CHECK_MODULES(VCDINFO, libvcdinfo >= 0.7.22, - [have_libvcdinfo=yes], - [AC_MSG_WARN(VCD information library not found)]) - fi -fi - dnl -dnl VCDX and CDDAX modules +dnl VCDX modules dnl -AC_ARG_ENABLE(cddax, - 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)]) - -if test "${enable_cddax}" = "yes" -then - if test "$have_libcdio" = "yes" - then - AC_DEFINE(HAVE_CDDAX, 1, [Define for the audio CD plugin using libcdio]) - VLC_ADD_LIBS([cddax],[$LIBCDIO_LIBS]) - VLC_ADD_CFLAGS([cddax],[$LIBCDIO_CFLAGS]) - VLC_ADD_PLUGIN([cddax]) - PKG_CHECK_MODULES(LIBCDIO_PARANOIA, libcdio_paranoia >= 0.72, [ - VLC_ADD_LIBS([cddax],[$LIBCDIO_CDDA_LIBS $LIBCDIO_CDDA_LIBS $LIBCDIO_PARANOIA_LIBS])], - AC_MSG_WARN([CD Paranoia support disabled because no libcdio >= 0.72 found])) - else - AC_MSG_WARN([cddax plugin disabled because ok libcdio library not found or disabled]) - HAVE_CDDAX=no - fi - - if test "$enable_libcddb" != "no"; then - PKG_CHECK_MODULES(LIBCDDB, libcddb >= 0.9.5, [ - HAVE_LIBCDDB=yes - AC_DEFINE(HAVE_LIBCDDB, 1, [Define this if you have libcddb installed]) - VLC_ADD_LIBS([cddax],[$LIBCDDB_LIBS]) - VLC_ADD_CFLAGS([cddax],[$LIBCDDB_CFLAGS]) - ], - [AC_MSG_WARN(new enough libcddb not found. CDDB access disabled) - HAVE_LIBCDDB=no]) - fi - -fi - AC_ARG_ENABLE(vcdx, [ --enable-vcdx VCD with navigation via libvcdinfo (default disabled)]) if test "${enable_vcdx}" = "yes" then - if test "${have_libvcdinfo}" = "yes" - then - VLC_ADD_LIBS([vcdx],[$VCDINFO_LIBS]) - VLC_ADD_CFLAGS([vcdx],[$VCDINFO_CFLAGS]) - else - AC_MSG_WARN([vcdx plugin disabled because ok libvcdinfo library not found or disabled]) - HAVE_VCDX=no - fi - - PKG_CHECK_MODULES(LIBCDIO, libiso9660 >= 0.72, - [VLC_ADD_LIBS([vcdx],[$LIBISO9660_LIBS]) - VLC_ADD_CFLAGS([vcdx],[$LIBISO9660_CFLAGS])], - [AC_MSG_WARN([vcdx plugin disabled because ok libiso9660 library not found]) - HAVE_VCDX=no]) - - if test "$have_libvcdinfo" = "yes" - then - AC_DEFINE(HAVE_VCDX, 1, - [Define for the VCD plugin using libcdio/libvcdinfo]) - VLC_ADD_LIBS([vcdx],[$VCDINFO_LIBS]) - VLC_ADD_CFLAGS([vcdx],[$VCDINFO_CFLAGS]) - VLC_ADD_PLUGIN([vcdx]) - else - AC_MSG_WARN([vcdx plugin disabled because ok libvcdinfo library not found]) - HAVE_VCDX=no - fi + PKG_CHECK_MODULES(LIBCDIO, [libcdio >= 0.78.2 libiso9660 >= 0.72], + [VLC_ADD_LIBS([vcdx],[$LIBCDIO_LIBS]) + VLC_ADD_CFLAGS([vcdx],[$LIBCDIO_CFLAGS])], + [AC_MSG_ERROR([vcdx plugin requires libcdio >= 0.78.2 and libiso9660 >= 0.72])]) + PKG_CHECK_MODULES(LIBVCDINFO, libvcdinfo >= 0.7.22, + [VLC_ADD_LIBS([vcdx],[$LIBVCDINFO_LIBS]) + VLC_ADD_CFLAGS([vcdx],[$LIBVCDINFO_CFLAGS])], + [AC_MSG_ERROR([vcdx plugin requires libvcdinfo library >= 0.7.22])]) + VLC_ADD_PLUGIN([vcdx]) fi dnl dnl Built-in CD-DA and VCD module dnl -AC_ARG_ENABLE(cdda, - [ --enable-cdda audio CD via built-in VCD (default enabled)]) - AC_ARG_ENABLE(vcd, - [ --enable-vcd built-in VCD (default enabled)]) + [ --enable-vcd built-in VCD and CD-DA (default enabled)]) + +AC_ARG_ENABLE(libcddb, + [ --enable-libcddb CDDB support for libcdio audio CD (default enabled)]) if test "${enable_vcd}" != "no" then AC_MSG_CHECKING(for cdrom_msf0 in linux/cdrom.h) AC_EGREP_HEADER(cdrom_msf0,linux/cdrom.h,[ AC_MSG_RESULT(yes) - VLC_ADD_PLUGIN([vcd]) - VLC_ADD_PLUGIN([cdda]) + VLC_ADD_PLUGIN([vcd cdda]) ],[ AC_MSG_RESULT(no) ]) @@ -2584,8 +2264,7 @@ then AC_MSG_CHECKING(for scsireq in sys/scsiio.h) AC_EGREP_HEADER(scsireq,sys/scsiio.h,[ AC_MSG_RESULT(yes) - VLC_ADD_PLUGIN([vcd]) - VLC_ADD_PLUGIN([cdda]) + VLC_ADD_PLUGIN([vcd cdda]) AC_DEFINE(HAVE_SCSIREQ_IN_SYS_SCSIIO_H, 1, For NetBSD VCD support) ],[ AC_MSG_RESULT(no) @@ -2594,8 +2273,7 @@ then AC_MSG_CHECKING(for ioc_toc_header in sys/cdio.h) AC_EGREP_HEADER(ioc_toc_header ,sys/cdio.h,[ AC_MSG_RESULT(yes) - VLC_ADD_PLUGIN([vcd]) - VLC_ADD_PLUGIN([cdda]) + VLC_ADD_PLUGIN([vcd cdda]) AC_DEFINE(HAVE_IOC_TOC_HEADER_IN_SYS_CDIO_H, 1, For FreeBSD VCD support) ],[ AC_MSG_RESULT(no) @@ -2603,16 +2281,14 @@ then if test "${SYS}" = "bsdi" -o "${SYS}" = "mingw32" then - VLC_ADD_PLUGIN([vcd]) - VLC_ADD_PLUGIN([cdda]) + VLC_ADD_PLUGIN([vcd cdda]) fi if test "${SYS}" = "darwin" then - VLC_ADD_PLUGIN([vcd]) - VLC_ADD_PLUGIN([cdda]) - VLC_ADD_LDFLAGS([vcd vcdx cdda cddax],[-Wl,-framework,IOKit,-framework,CoreFoundation]) - VLC_ADD_LIBS([vcdx cddax cdda],[-liconv]) + VLC_ADD_PLUGIN([vcd cdda]) + VLC_ADD_LDFLAGS([vcd vcdx cdda],[-Wl,-framework,IOKit,-framework,CoreFoundation]) + VLC_ADD_LIBS([vcdx cdda],[-liconv]) fi if test "$enable_libcddb" != "no"; then @@ -2637,7 +2313,7 @@ if test "${enable_dvb}" != "no" then AS_IF([test "${have_dvbpsi}" = "yes" ],[ AC_ARG_WITH(dvb, - [ --with-dvb=PATH path to a dvb- and v4l2-enabled kernel tree],[],[]) + [ --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]) @@ -2678,7 +2354,7 @@ if test "${enable_screen}" != "no"; then fi dnl -dnl ipv6 plugin - not for QNX yet +dnl ipv6 plugin dnl have_ipv6=no AC_CHECK_FUNCS(inet_pton,[have_ipv6=yes],[ @@ -2698,7 +2374,7 @@ dnl ogg demux plugin dnl PKG_ENABLE_MODULES_VLC([OGG], [], [ogg >= 1.0], [Ogg demux support], [auto]) if test "${enable_sout}" != "no"; then - PKG_ENABLE_MODULES_VLC([MUX_OGG], [], [ogg >= 1.0], [Ogg demux support], [auto]) + PKG_ENABLE_MODULES_VLC([MUX_OGG], [], [ogg >= 1.0], [Ogg mux support], [auto]) fi if test "${enable_sout}" != "no"; then @@ -2768,7 +2444,7 @@ AC_ARG_ENABLE(mod, if test "${enable_mod}" != "no" then AC_ARG_WITH(mod-tree, - [ --with-mod-tree=PATH mod tree for static linking]) + [ --with-mod-tree=PATH mod tree for static linking]) if test -n "${with_mod_tree}" then AC_MSG_CHECKING(for libmodplug.a in ${with_mod_tree}) @@ -2792,10 +2468,11 @@ then AC_MSG_ERROR([cannot find ${real_mod_tree}/src/.libs/libmodplug.a, make sure you compiled mod in ${with_mod_tree}]) fi else - AC_CHECK_HEADERS(libmodplug/modplug.h, [ - VLC_ADD_PLUGIN([mod]) - VLC_ADD_CXXFLAGS([mod],[]) - VLC_ADD_LIBS([mod],[-lmodplug -lstdc++])]) + PKG_CHECK_MODULES(LIBMODPLUG, libmodplug >= 0.8, + [ VLC_ADD_PLUGIN([mod]) + VLC_ADD_CXXFLAGS([mod],[$LIBMODPLUG_CFLAGS]) + VLC_ADD_LIBS([mod],[$LIBMODPLUG_LIBS]) + ],[AC_MSG_WARN([libmodplug not found!])]) fi fi @@ -2823,7 +2500,7 @@ if test "${enable_gme}" != "no" -a "${CXX}" != ""; then AC_LANG_PUSH(C++) AC_ARG_WITH(gme-tree, - [ --with-gme-tree=PATH gme tree for static linking]) + [ --with-gme-tree=PATH gme tree for static linking]) if test -n "${with_gme_tree}" then AC_MSG_CHECKING(for libgme.a in ${with_mod_tree}) @@ -2856,7 +2533,7 @@ dnl dnl Codec plugins dnl -AC_ARG_WITH(,[Codec plugins:]) +EXTEND_HELP_STRING([Codec plugins:]) dnl dnl wmafixed plugin @@ -2878,6 +2555,17 @@ then VLC_ADD_PLUGIN([shine]) fi +dnl +dnl openmax il codec plugin +dnl +AC_ARG_ENABLE(omxil, + [ --enable-omxil openmax il codec module (default disabled)]) +if test "${enable_omxil}" = "yes" +then + VLC_ADD_PLUGIN([omxil]) + VLC_ADD_LIBS([omxil], [$LIBDL]) +fi + dnl dnl mad plugin dnl @@ -2886,7 +2574,7 @@ AC_ARG_ENABLE(mad, if test "${enable_mad}" != "no" then AC_ARG_WITH(mad, - [ --with-mad=PATH path to libmad],[],[]) + [ --with-mad=PATH path to libmad],[],[]) if test "${with_mad}" != "no" -a -n "${with_mad}" then VLC_ADD_CPPFLAGS([mpgatofixed32],[-I${with_mad}/include]) @@ -2894,7 +2582,7 @@ then fi AC_ARG_WITH(mad-tree, - [ --with-mad-tree=PATH mad tree for static linking],[],[]) + [ --with-mad-tree=PATH mad tree for static linking],[],[]) if test "${with_mad_tree}" != "no" -a -n "${with_mad_tree}" then real_mad_tree="`cd ${with_mad_tree} 2>/dev/null && pwd`" @@ -2951,7 +2639,7 @@ AS_IF([test "${enable_id3tag}" = "yes"], [ ]) AC_ARG_ENABLE(merge-ffmpeg, -[ --enable-merge-ffmpeg merge FFmpeg-based plugins (default disabled)],, [ +[ --enable-merge-ffmpeg merge FFmpeg-based plugins (default disabled)],, [ enable_merge_ffmpeg="no" ]) AM_CONDITIONAL([MERGE_FFMPEG], [test "$enable_merge_ffmpeg" != "no"]) @@ -2959,17 +2647,11 @@ AM_CONDITIONAL([MERGE_FFMPEG], [test "$enable_merge_ffmpeg" != "no"]) dnl dnl avcodec decoder/encoder plugin dnl - -if test "${with_ffmpeg_tree}" -then - AC_MSG_WARN([--with-ffmpeg-tree is deprecated. Use PKG_CONFIG_PATH instead.]) -fi - AC_ARG_ENABLE(avcodec, [ --enable-avcodec libavcodec codec (default enabled)]) if test "${enable_avcodec}" != "no" then - PKG_CHECK_MODULES(AVCODEC,[libavcodec >= 51.48.0 libavutil], + PKG_CHECK_MODULES(AVCODEC,[libavcodec >= 52.2.0 libavutil], [ VLC_SAVE_FLAGS CPPFLAGS="${CPPFLAGS} ${AVCODEC_CFLAGS}" @@ -2990,22 +2672,72 @@ dnl dnl libva needs avcodec dnl AC_ARG_ENABLE(libva, - [ --enable-libva libva VAAPI support (default disabled)]) -AS_IF([test "${enable_libva}" = "yes"], [ + [ --enable-libva libva VAAPI support (default auto)]) + +AS_IF([test "${enable_libva}" != "no"], [ AS_IF([test "x${have_avcodec}" = "xyes"], [ PKG_CHECK_MODULES(LIBVA, [libva libva-x11], [ - VLC_ADD_LIBS([avcodec],[$LIBVA_LIBS]) - VLC_ADD_CFLAGS([avcodec],[$LIBVA_CFLAGS]) - AC_DEFINE(HAVE_AVCODEC_VAAPI, 1, [Define if avcodec has to be built with VAAPI support.]) + VLC_SAVE_FLAGS + CPPFLAGS="${CPPFLAGS} ${AVCODEC_CFLAGS}" + CFLAGS="${CFLAGS} ${AVCODEC_CFLAGS}" + AC_CHECK_HEADERS(libavcodec/vaapi.h, [ + VLC_ADD_LIBS([avcodec],[$LIBVA_LIBS]) + VLC_ADD_CFLAGS([avcodec],[$LIBVA_CFLAGS]) + AC_DEFINE(HAVE_AVCODEC_VAAPI, 1, [Define if avcodec has to be built with VAAPI support.]) + echo "VAAPI acceleration activated" + ],[ + AS_IF([test "${enable_libva}" == "yes"], + [AC_MSG_ERROR([libva is present but libavcodec/vaapi.h is missing])], + [AC_MSG_WARN([libva is present but libavcodec/vaapi.h is missing ])]) + ]) + VLC_RESTORE_FLAGS ],[ - AC_MSG_ERROR([Could not find libva.]) + AS_IF([test "${enable_libva}" == "yes"], + [AC_MSG_ERROR([Could not find required libva.])], + [AC_MSG_WARN([libva not found ])]) + ]) + ],[ + AS_IF([test "x${enable_libva}" != "x"], [ + AC_MSG_ERROR([--enable-libva and --disable-avcodec options are mutually exclusive.]) ]) + ]) +]) + +dnl +dnl dxva2 needs avcodec +dnl +AC_ARG_ENABLE(dxva2, + [ --enable-dxva2 DxVA2 support (default auto)]) + +AS_IF([test "${enable_dxva2}" != "no"], [ + if test "${SYS}" = "mingw32"; then + AS_IF([test "x${have_avcodec}" = "xyes"], [ + AC_CHECK_HEADERS(dxva2api.h, + [ + AC_CHECK_HEADERS(libavcodec/dxva2.h, [ + VLC_ADD_LIBS([avcodec],[-lole32 -lshlwapi -luuid]) + AC_DEFINE(HAVE_AVCODEC_DXVA2, 1, [Define if avcodec has to be built with DxVA2 support.]) + echo "DxVA2 acceleration activated" + ],[ + AS_IF([test "${enable_dxva2}" == "yes"], + [AC_MSG_ERROR([dxva2 is present but libavcodec/dxva2.h is missing])], + [AC_MSG_WARN([dxva2 is present but libavcodec/dxva2.h is missing ])]) + ]) + ],[ + AS_IF([test "${enable_dxva2}" == "yes"], + [AC_MSG_ERROR([Could not find required dxva2api.h])], + [AC_MSG_WARN([dxva2api.h not found])]) + ]) ],[ - AC_MSG_ERROR([libva VAAPI support depends on libavcodec.]) + AS_IF([test "x${enable_dxva2}" != "x"], [ + AC_MSG_ERROR([--enable-dxva2 and --disable-avcodec options are mutually exclusive.]) + ]) ]) + fi ]) + dnl dnl stream_out switcher needs libavcodec dnl @@ -3037,13 +2769,9 @@ then AC_CHECK_HEADERS(libavformat/avformat.h ffmpeg/avformat.h) AC_CHECK_HEADERS(libavutil/avutil.h ffmpeg/avutil.h) AS_IF([test "$enable_merge_ffmpeg" = "no"], [ - VLC_ADD_PLUGIN([avformat]) - VLC_ADD_LIBS([avformat],[$AVFORMAT_LIBS $AVUTIL_LIBS]) - VLC_ADD_CFLAGS([avformat],[$AVFORMAT_CFLAGS $AVUTIL_CFLAGS]) - - VLC_ADD_PLUGIN([access_avio]) - VLC_ADD_LIBS([access_avio],[$AVFORMAT_LIBS $AVUTIL_LIBS]) - VLC_ADD_CFLAGS([access_avio],[$AVFORMAT_CFLAGS $AVUTIL_CFLAGS]) + VLC_ADD_PLUGIN([avformat access_avio]) + VLC_ADD_LIBS([avformat access_avio],[$AVFORMAT_LIBS $AVUTIL_LIBS]) + VLC_ADD_CFLAGS([avformat access_avio],[$AVFORMAT_CFLAGS $AVUTIL_CFLAGS]) ], [ VLC_ADD_LIBS([avcodec],[$AVFORMAT_LIBS $AVUTIL_LIBS]) VLC_ADD_CFLAGS([avcodec],[$AVFORMAT_CFLAGS $AVUTIL_CFLAGS]) @@ -3109,7 +2837,7 @@ AC_ARG_ENABLE(faad, if test "${enable_faad}" = "yes" then AC_ARG_WITH(faad-tree, - [ --with-faad-tree=PATH faad tree for static linking]) + [ --with-faad-tree=PATH faad tree for static linking]) if test -n "${with_faad_tree}" then AC_MSG_CHECKING(for libfaad.a in ${with_faad_tree}) @@ -3176,7 +2904,6 @@ dnl AC_ARG_ENABLE(real, [ --enable-real Real media module (default disabled)]) if test "${enable_real}" = "yes"; then - VLC_ADD_PLUGIN([realaudio]) VLC_ADD_PLUGIN([realvideo]) fi @@ -3189,15 +2916,6 @@ if test "${enable_realrtsp}" = "yes"; then VLC_ADD_PLUGIN([access_realrtsp]) fi -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 @@ -3218,9 +2936,9 @@ AC_ARG_ENABLE(a52, if test "${enable_a52}" != "no" then AC_ARG_WITH(a52, - [ --with-a52=PATH a52 headers and libraries]) + [ --with-a52=PATH a52 headers and libraries]) AC_ARG_WITH(a52-tree, - [ --with-a52-tree=PATH a52dec tree for static linking ],[],[]) + [ --with-a52-tree=PATH a52dec tree for static linking ],[],[]) if test "${with_a52_tree}" != "no" -a -n "${with_a52_tree}" then real_a52_tree="`cd ${with_a52_tree} 2>/dev/null && pwd`" @@ -3283,16 +3001,13 @@ then fi AC_ARG_WITH(a52-fixed, - [ --with-a52-fixed specify if liba52 has been compiled with fixed point support], + [ --with-a52-fixed specify if liba52 has been compiled with fixed point support], [ VLC_ADD_CPPFLAGS([a52tofloat32],[-DLIBA52_FIXED]) ]) dnl dnl DTS Coherent Acoustics decoder plugin dnl -AS_IF([test "x${enable_dts}" != "x"], [ - AC_MSG_ERROR([--enable-dts is obsolete. Please use libdca and --enable-dca.]) -]) PKG_ENABLE_MODULES_VLC([DCA], [dtstofloat32], [libdca >= 0.0.5], [DTS Coherent Acoustics support with libdca], [auto]) dnl @@ -3328,34 +3043,6 @@ dnl Speex plugin dnl PKG_ENABLE_MODULES_VLC([SPEEX], [], [ogg speex >= 1.0.5], [Speex decoder support], [auto]) -dnl -dnl tarkin decoder plugin -dnl -AC_ARG_ENABLE(tarkin, -[ --enable-tarkin experimental tarkin codec (default disabled)]) -if test "${enable_tarkin}" = "yes" -then - AC_ARG_WITH(tarkin-tree, - [ --with-tarkin-tree=PATH tarkin tree for static linking]) - if test -n "${with_tarkin_tree}" - then - AC_MSG_CHECKING(for tarkin.o in ${with_tarkin_tree}) - real_tarkin_tree="`cd ${with_tarkin_tree} 2>/dev/null && pwd`" - if test -f "${real_tarkin_tree}/tarkin.o" - then - 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) - else - dnl The given tarkin tree wasn't built - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot find ${real_tarkin_tree}/tarkin.o, - make sure you compiled tarkin in ${with_tarkin_tree}]) - fi - fi -fi - dnl dnl theora decoder plugin dnl @@ -3381,9 +3068,7 @@ AC_CHECK_HEADERS(png.h, [ LDFLAGS="${LDFLAGS_save} -lz" AC_CHECK_LIB(png, png_set_rows, [ VLC_ADD_LIBS([png],[-lpng -lz]) - VLC_ADD_PLUGIN([png]) - VLC_ADD_PLUGIN([osdmenu]) - VLC_ADD_PLUGIN([osd_parser])], + VLC_ADD_PLUGIN([png osdmenu osd_parser])], [],[-lz]) LDFLAGS="${LDFLAGS_save}" ]) @@ -3397,7 +3082,7 @@ AC_ARG_ENABLE(x264, [ --enable-x264 H264 encoding support with libx264 (default enabled)]) if test "${enable_x264}" != "no"; then AC_ARG_WITH(x264-tree, - [ --with-x264-tree=PATH x264 tree for static linking ],[],[]) + [ --with-x264-tree=PATH x264 tree for static linking ],[],[]) if test "${with_x264_tree}" != "no" -a -n "${with_x264_tree}" then real_x264_tree="`cd ${with_x264_tree} 2>/dev/null && pwd`" @@ -3430,7 +3115,7 @@ if test "${enable_x264}" != "no"; then AC_MSG_ERROR([the specified tree doesn't have x264.h]) fi else - PKG_CHECK_MODULES(X264,x264 >= 0.76, [ + PKG_CHECK_MODULES(X264,x264 >= 0.86, [ VLC_ADD_PLUGIN([x264]) VLC_ADD_LDFLAGS([x264],[${X264_LIBS}]) @@ -3450,7 +3135,7 @@ if test "${enable_x264}" != "no"; then fi ],[ if test "${enable_x264}" = "yes"; then - AC_MSG_ERROR([Could not find libx264 >= 0.76 on your system: you may get it from http://www.videolan.org/x264.html]) + AC_MSG_ERROR([Could not find libx264 >= 0.86 on your system: you may get it from http://www.videolan.org/x264.html]) fi ]) LDFLAGS="${LDFLAGS_save}" @@ -3477,7 +3162,7 @@ AC_ARG_ENABLE(telx, AS_IF( [test "${enable_zvbi}" != "no"],[ PKG_CHECK_MODULES(ZVBI, - zvbi-0.2 >= 0.2.25, + zvbi-0.2 >= 0.2.28, [ VLC_ADD_LIBS([zvbi],[$ZVBI_LIBS]) if test "${SYS}" = "mingw32"; then @@ -3539,16 +3224,6 @@ AS_IF( [test "${enable_asademux}" = "yes"], [ ]) ]) -dnl -dnl CMML plugin -dnl -AC_ARG_ENABLE(cmml, - [ --enable-cmml CMML support (default enabled)]) -if test "${enable_cmml}" != "no" -then - VLC_ADD_PLUGIN([cmml]) -fi - dnl dnl kate decoder plugin dnl @@ -3601,20 +3276,21 @@ dnl dnl Video plugins dnl -AC_ARG_WITH(,[Video plugins:]) +EXTEND_HELP_STRING([Video plugins:]) dnl dnl Xlib dnl AC_PATH_XTRA() +AC_CHECK_HEADERS(X11/Xlib.h) dnl dnl X C Bindings modules dnl AC_ARG_ENABLE(xcb, [ --enable-xcb X11 support with XCB (default enabled)],, [ - AS_IF([test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"], [ + AS_IF([test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" -a "${SYS}" != "darwin"], [ enable_xcb="yes" ], [ enable_xcb="no" @@ -3630,10 +3306,7 @@ AS_IF([test "${enable_xcb}" != "no"], [ dnl libxcb PKG_CHECK_MODULES(XCB, [xcb]) PKG_CHECK_MODULES(XCB_SHM, [xcb-shm]) - VLC_ADD_PLUGIN([xcb_x11]) - VLC_ADD_PLUGIN([xcb_screen]) - VLC_ADD_PLUGIN([xcb_apps]) - VLC_SET_CFLAGS_WERROR([xcb_screen], [-Wno-error=uninitialized]) # some gcc report a warning which doesn't reveal an error + VLC_ADD_PLUGIN([screensaver xcb_x11 xcb_screen xcb_apps]) AS_IF([test "${enable_xvideo}" != "no"], [ PKG_CHECK_MODULES(XCB_XV, [xcb-xv >= 1.1.90.1], [ @@ -3667,8 +3340,7 @@ AS_IF([test "${enable_xcb}" != "no"], [ AS_IF([test "${have_xcb_keysyms}" = "yes"], [ PKG_CHECK_MODULES(XPROTO, [xproto]) - VLC_ADD_PLUGIN([xcb_window]) - VLC_ADD_PLUGIN([globalhotkeys]) + VLC_ADD_PLUGIN([xcb_window globalhotkeys]) VLC_ADD_CFLAGS([globalhotkeys], [${XCB_KEYSYMS_CFLAGS} ${XCB_CFLAGS}]) VLC_ADD_LIBS([globalhotkeys], [${XCB_KEYSYMS_LIBS} ${XCB_LIBS}]) ]) @@ -3694,31 +3366,6 @@ AS_IF([test "${enable_glx}" != "no"], [ AC_SUBST([GL_CFLAGS]) AC_SUBST([GL_LIBS]) - -dnl -dnl OpenGL module -dnl (enabled by default except on beos) -dnl -AC_ARG_ENABLE(opengl, - [ --enable-opengl OpenGL support (default enabled)]) -if test "${enable_opengl}" != "no" && - test "${SYS}" != "beos" -a "${SYS}" != "mingwce"; then - if test "${SYS}" != "darwin"; then - AC_CHECK_HEADERS(GL/gl.h GL/glu.h, [ - VLC_ADD_PLUGIN([opengl]) - if test "${SYS}" != "mingw32"; then - VLC_ADD_LIBS([opengl],[${X_LIBS} -lGL -lGLU]) - else - VLC_ADD_LIBS([opengl],[-lopengl32 -lglu32]) - fi - ]) - else - dnl OS X special case (no GL/gl.h but OpenGL/gl.h) - VLC_ADD_PLUGIN([opengl]) - VLC_ADD_LIBS([opengl],[-Wl,-framework,OpenGL]) - fi -fi - dnl dnl SDL module dnl @@ -3728,49 +3375,29 @@ AC_ARG_ENABLE(sdl-image, [ --enable-sdl-image SDL image support (default enabled)]) if test "${enable_sdl}" != "no" then - SDL_PATH="${PATH}" - AC_ARG_WITH(sdl-config-path, - [ --with-sdl-config-path=PATH sdl-config path (default search in \$PATH)], - [ if test "${with_sdl_config_path}" != "no" - then - SDL_PATH="${with_sdl_config_path}:${PATH}" - fi ]) - AC_PATH_PROG(SDL_CONFIG, sdl-config, no, ${SDL_PATH}) - SDL_HEADER="SDL/SDL.h" - SDL_IMAGE="SDL/SDL_image.h" - - if test "${SDL_CONFIG}" != "no"; then - PKG_CHECK_MODULES(SDL, [sdl >= 1.2.10], [ - # SDL on Darwin is heavily patched and can only run SDL_image - if test "${SYS}" != "darwin"; then - VLC_ADD_PLUGIN([vout_sdl]) - VLC_ADD_PLUGIN([aout_sdl]) - fi - VLC_ADD_CFLAGS([vout_sdl aout_sdl sdl_image],[`${SDL_CONFIG} --cflags | sed 's,SDL,,'`]) - VLC_ADD_LIBS([vout_sdl aout_sdl sdl_image],[`${SDL_CONFIG} --libs | sed 's,-rdynamic,,'`]) - - # SDL_image - AS_IF([ test "${enable_sdl_image}" != "no"],[ - AC_CHECK_HEADERS("SDL/SDL_image.h", [ - VLC_ADD_PLUGIN([sdl_image]) - AC_CHECK_LIB(png, png_set_rows, [VLC_ADD_LIBS([sdl_image],[-lpng -lz])],[],[-lz]) - AC_CHECK_LIB(jpeg, jpeg_start_decompress, [VLC_ADD_LIBS([sdl_image],[-ljpeg])]) - AC_CHECK_LIB(tiff, TIFFClientOpen, [VLC_ADD_LIBS([sdl_image],[-ltiff])]) - VLC_ADD_LIBS([sdl_image], [-lSDL_image])], - [ AC_MSG_WARN([The development package for SDL_image is not installed. - You should install it alongside your SDL package.]) - ]) - ]) - ],[ - AC_MSG_ERROR([The development package for SDL is too old. You need 1.2.10. - Alternatively you can also configure with --disable-sdl.]) - ]) - else if test "${enable_sdl}" = "yes"; then - AC_MSG_ERROR([I could not find the SDL package. You can download libSDL -from http://www.libsdl.org/, or configure with --disable-sdl. Have a nice day. - ]) + PKG_CHECK_MODULES(SDL, [sdl >= 1.2.10], [ + # SDL on Darwin is heavily patched and can only run SDL_image + if test "${SYS}" != "darwin"; then + VLC_ADD_PLUGIN([vout_sdl aout_sdl]) fi - fi + VLC_ADD_CFLAGS([vout_sdl aout_sdl],[${SDL_CFLAGS}]) + VLC_ADD_LIBS([vout_sdl aout_sdl],[${SDL_LIBS}]) + + # SDL_image + AS_IF([ test "${enable_sdl_image}" != "no"],[ + PKG_CHECK_MODULES(SDL_IMAGE, [SDL_image >= 1.2.10], [ + VLC_ADD_PLUGIN([sdl_image]) + VLC_ADD_LIBS([sdl_image],[${SDL_IMAGE_LIBS}]) + VLC_ADD_CFLAGS([sdl_image], [${SDL_IMAGE_CFLAGS}])], + [ AC_MSG_WARN([The development package for SDL_image is not installed. + You should install it alongside your SDL package.]) + ]) + ]) + ],[ + AC_MSG_WARN([The development package for SDL is not present or too old. + You need 1.2.10. Alternatively you can also configure with + --disable-sdl.]) + ]) fi dnl @@ -3781,7 +3408,7 @@ AC_ARG_ENABLE(freetype, AC_ARG_ENABLE(fribidi, [ --enable-fribidi fribidi support (default enabled)]) AC_ARG_ENABLE(fontconfig, - [ --enable-fontconfig, fontconfig support (default enabled)]) + [ --enable-fontconfig fontconfig support (default enabled)]) if test "${enable_freetype}" != "no" then PKG_CHECK_MODULES(FREETYPE, freetype2,[ @@ -3841,58 +3468,6 @@ then VLC_ADD_PLUGIN([snapshot]) fi -dnl -dnl Qt Embedded module -dnl (disabled by default) -dnl -AC_ARG_ENABLE(qte, - [ --enable-qte QT Embedded support (default disabled)]) -if test "${enable_qte}" = "yes" -then - AC_ARG_WITH(qte, - [ --with-qte=PATH Qt Embedded headers and libraries]) - if test "${with_qte}" != "no" -a -n "${with_qte}" - then - VLC_ADD_LIBS([qte],[-L${with_qte}/lib `echo -L${with_qte}/lib | sed 's,opt/QtPalmtop,usr,'` -ljpeg -lqte]) - VLC_ADD_CXXFLAGS([qte],[-I${with_qte}/include `echo -I${with_qte}/include | sed 's,opt/QtPalmtop,usr,'` -DQT_QWS_IPAQ -DQWS -fno-exceptions -fno-rtti]) - else - VLC_ADD_LIBS([qte],[-L${QTDIR}/lib `echo -L${QTDIR}/lib | sed 's,opt/QtPalmtop,usr,'` -ljpeg -lqte]) - VLC_ADD_CXXFLAGS([qte],[-I${QTDIR}/include `echo -I${QTDIR}/include | sed 's,opt/QtPalmtop,usr,'` -DQT_QWS_IPAQ -DQWS -fno-exceptions -fno-rtti]) - fi - VLC_ADD_PLUGIN([qte]) - NEED_QTE_MAIN=yes - CPPFLAGS="${CPPFLAGS_save} ${CXXFLAGS_qte}" - AC_CHECK_HEADERS(qt.h jpeglib.h, ,[ - AC_MSG_ERROR([echo "Cannot find QT Embedded development headers."]) - ] ) - CPPFLAGS="${CPPFLAGS_save}" -fi - -dnl -dnl Roku HD1000 Video output module -dnl -AC_ARG_ENABLE(hd1000v, - [ --enable-hd1000v HD1000 Video Output module (default enabled on HD1000)]) -if test "${enable_hd1000v}" != "no" -a "${CXX}" != "" && - (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" || - test "${enable_hd1000v}" = "yes"); then - AC_LANG_PUSH([C++]) - AC_CHECK_HEADERS([cascade/graphics/CascadeScreen.h cascade/graphics/CascadeBitmap.h], - [ - can_build_roku="yes" - ], - [ - can_build_roku="no" - AC_MSG_WARN([Not building Roku HD1000 compatible video output]) - ]) - if test "$can_build_roku" = "yes" - then - VLC_ADD_PLUGIN([hd1000v]) - VLC_ADD_LIBS([hd1000v],[-lCascade -ldvbpsi -lmad]) - fi - AC_LANG_POP([C++]) -fi - dnl dnl Windows DirectX module dnl @@ -3909,8 +3484,7 @@ then if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce" then AC_CHECK_HEADERS(ddraw.h, - [ VLC_ADD_PLUGIN([directx]) - VLC_ADD_PLUGIN([aout_directx]) + [ VLC_ADD_PLUGIN([directx aout_directx]) VLC_ADD_LIBS([directx],[-lgdi32]) ],[AC_MSG_ERROR([Cannot find DirectX headers!])] ) @@ -3937,8 +3511,7 @@ if test "${enable_wingdi}" != "no"; then VLC_ADD_LIBS([wingdi],[-lgdi32 -lole32]) fi if test "${SYS}" = "mingwce"; then - VLC_ADD_PLUGIN([wingdi]) - VLC_ADD_PLUGIN([wingapi]) + VLC_ADD_PLUGIN([wingdi wingapi]) VLC_ADD_LIBS([wingdi],[-laygshell]) VLC_ADD_LIBS([wingapi],[-laygshell]) fi @@ -3957,42 +3530,6 @@ AC_ARG_ENABLE(fb, ]) fi -dnl -dnl Linux MGA module -dnl -AC_ARG_ENABLE(mga, - [ --enable-mga Linux kernel Matrox support (default disabled)], - [ if test "${enable_mga}" = "yes" - then - 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]) ]) - ]) - VLC_ADD_PLUGIN([swscale_omap]) - fi - -dnl -dnl SVGAlib module -dnl -AC_ARG_ENABLE(svgalib, - [ --enable-svgalib SVGAlib support (default disabled)]) -if test "${enable_svgalib}" = "yes" -then - VLC_ADD_PLUGIN([svgalib]) - VLC_ADD_LIBS([svgalib],[-lvgagl -lvga]) -fi - dnl dnl DirectFB module dnl try to find using: 1 - given location; 2 - directfb-config; 3 - pkg-config @@ -4001,7 +3538,7 @@ dnl AC_ARG_ENABLE(directfb, [ --enable-directfb DirectFB support (default disabled)]) AC_ARG_WITH(directfb, - [ --with-directfb=PATH path to DirectFB headers and libraries]) + [ --with-directfb=PATH path to DirectFB headers and libraries]) if test "${enable_directfb}" = "yes"; then have_directfb="false" @@ -4033,7 +3570,7 @@ if test "${enable_directfb}" = "yes"; then LIBS="${LIBS_save}" if test "${have_directfb}" = "true"; then - LIBS_mydirectfb="${LIBS_new} -lz -ldl -ldirectfb -lfusion -ldirect -lpthread" + LIBS_mydirectfb="${LIBS_new} -lz $LIBDL -ldirectfb -lfusion -ldirect -lpthread" CPPFLAGS_mydirectfb="${CPPFLAGS_new}" fi else @@ -4061,30 +3598,6 @@ if test "${enable_directfb}" = "yes"; then fi fi - - -dnl -dnl GGI module -dnl -AC_ARG_ENABLE(ggi, - [ --enable-ggi GGI support (default disabled)]) -if test "${enable_ggi}" = "yes" -then - 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 dnl AA plugin dnl @@ -4103,13 +3616,13 @@ fi dnl dnl libcaca plugin dnl -PKG_ENABLE_MODULES_VLC([CACA], [], [caca >= 0.99.beta1], [libcaca output],[auto]) +PKG_ENABLE_MODULES_VLC([CACA], [], [caca >= 0.99.beta14], [libcaca output],[auto]) dnl dnl Audio plugins dnl -AC_ARG_WITH(,[Audio plugins:]) +EXTEND_HELP_STRING([Audio plugins:]) dnl dnl OSS /dev/dsp module (enabled by default except on win32) @@ -4122,17 +3635,23 @@ if test "${enable_oss}" != "no" && test "${enable_oss}" = "yes") then AC_CHECK_HEADERS([soundcard.h sys/soundcard.h], [ - VLC_ADD_PLUGIN([oss]) - VLC_ADD_PLUGIN([access_oss]) - AC_CHECK_LIB(ossaudio,main,[VLC_ADD_LIBS([oss],[-lossaudio]) - VLC_ADD_LIBS([access_oss],[-lossaudio])]) + VLC_ADD_PLUGIN([oss access_oss]) + AC_CHECK_LIB(ossaudio,main,[VLC_ADD_LIBS([oss access_oss],[-lossaudio])]) ]) fi dnl dnl Pulseaudio module dnl -PKG_ENABLE_MODULES_VLC([PULSE], [], [libpulse >= 0.9.11], [Pulseaudio support], [auto]) +AS_IF([test "${no_x}" = "yes"], [ + AS_IF([test "${enable_pulse}" = "yes"], [ + AC_MSG_ERROR([Xlib is required for VLC PulseAudio support +(see http://www.pulseaudio.org/ticket/799 for further reference).]) + ]) +], [ + PKG_ENABLE_MODULES_VLC([PULSE], [], [libpulse >= 0.9.11], [Pulseaudio support], [auto]) + VLC_ADD_LIBS([pulse], [${X_LIBS} ${X_PRE_LIBS} -lX11]) +]) dnl dnl Portaudio module @@ -4142,8 +3661,7 @@ PKG_ENABLE_MODULES_VLC([PORTAUDIO], [], [portaudio-2.0], [Portaudio library supp dnl dnl ALSA module dnl -PKG_ENABLE_MODULES_VLC([ALSA], [], [alsa >= 1.0.0], [Alsa sound support for linux], [auto]) -PKG_ENABLE_MODULES_VLC([ACCESS_ALSA], [access_alsa], [alsa >= 1.0.0], [Alsa access for linux], [auto]) +PKG_ENABLE_MODULES_VLC([ALSA], [alsa access_alsa], [alsa >= 1.0.0], [Alsa sound support for linux], [auto]) dnl dnl win32 waveOut plugin @@ -4165,8 +3683,8 @@ dnl CoreAudio plugin dnl AC_ARG_ENABLE(macosx-audio, [ --enable-macosx-audio Mac OS X audio module (default enabled on MacOS X)]) -if test "${enable_macosx-audio}" != "no" && - (test "${SYS}" = "darwin" || test "${enable_macosx-audio}" = "yes") +if test "x${enable_macosx_audio}" != "xno" && + (test "${SYS}" = "darwin" || test "${enable_macosx_audio}" = "yes") then AC_CHECK_HEADERS(CoreAudio/CoreAudio.h, [ VLC_ADD_PLUGIN([auhal]) @@ -4193,8 +3711,7 @@ fi dnl dnl JACK modules dnl -PKG_ENABLE_MODULES_VLC([JACK], [jack], [jack], [JACK audio I/O modules],[auto]) -PKG_ENABLE_MODULES_VLC([JACK], [access_jack], [jack], [JACK audio I/O modules],[auto]) +PKG_ENABLE_MODULES_VLC([JACK], [jack access_jack], [jack], [JACK audio I/O modules],[auto]) dnl @@ -4204,7 +3721,7 @@ AC_ARG_ENABLE(cyberlink, [ --enable-cyberlink CyberLink for C++ UPnP stack (default disabled)]) AS_IF([test "${enable_cyberlink}" = "yes" ], [ AC_ARG_WITH(cyberlink-tree, - [ --with-cyberlink-tree=PATH CyberLink for C++ tree for static linking]) + [ --with-cyberlink-tree=PATH CyberLink for C++ tree for static linking]) dnl dnl test for --with-cyberlink-tree @@ -4279,13 +3796,7 @@ dnl dnl Interface plugins dnl -AC_ARG_WITH(,[Interface plugins:]) - -dnl special case for BeOS -if test "${SYS}" = "beos" -then - VLC_ADD_PLUGIN([beos]) -fi +EXTEND_HELP_STRING([Interface plugins:]) dnl dnl Skins2 module @@ -4341,9 +3852,15 @@ dnl AC_ARG_ENABLE(hildon, [ --enable-hildon Hildon touchscreen UI (default disabled)]) AS_IF([test "${enable_hildon}" = "yes"], [ - PKG_CHECK_MODULES(HILDON, [hildon-1 hildon-fm-2], [ - VLC_ADD_CFLAGS([hildon],[${HILDON_CFLAGS}]) - VLC_ADD_LIBS([hildon],[${HILDON_LIBS}]) + PKG_CHECK_MODULES(HILDON, [hildon-1], [ + PKG_CHECK_MODULES(HILDON_FM, hildon-fm-2, [ + VLC_ADD_CFLAGS([hildon],[${HILDON_FM_CFLAGS} -DHAVE_HILDON_FM]) + VLC_ADD_LIBS([hildon],[${HILDON_FM_LIBS}]) + ], [ + AC_MSG_WARN(hildon-fm-2 not found) + ]) + VLC_ADD_CFLAGS([hildon],[${HILDON_CFLAGS} ${X_CFLAGS}]) + VLC_ADD_LIBS([hildon],[${HILDON_LIBS} ${X_LIBS} ${X_PRE_LIBS} -lX11]) VLC_ADD_PLUGIN([hildon]) ALIASES="${ALIASES} mvlc" need_xid_provider="no" @@ -4360,7 +3877,7 @@ dnl dnl QT 4 dnl AC_ARG_ENABLE(qt4, - [ --enable-qt4 QT 4 support (default enabled) ],, [ + [ --enable-qt4 Qt 4 support (default enabled) ],, [ AS_IF([test "${SYS}" = "darwin"], [enable_qt4=no]) ]) AS_IF([test "${enable_qt4}" != "no"], [ @@ -4368,14 +3885,13 @@ AS_IF([test "${enable_qt4}" != "no"], [ VLC_ADD_PLUGIN([qt4]) ALIASES="${ALIASES} qvlc" AS_IF([test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" -a "${SYS}" != "darwin"], [ - VLC_ADD_LIBS([qt4],[$QT4_LIBS -lX11]) + VLC_ADD_LIBS([qt4],[$QT4_LIBS ${X_LIBS} ${X_PRE_LIBS} -lX11]) need_xid_provider="no" + VLC_ADD_CXXFLAGS([qt4],[$QT4_CFLAGS ${X_CFLAGS}]) ], [ VLC_ADD_LIBS([qt4],[$QT4_LIBS -lole32]) + VLC_ADD_CXXFLAGS([qt4],[$QT4_CFLAGS]) ]) - QT4LOCALEDIR="$(eval $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,`eval $PKG_CONFIG --variable=exec_prefix QtCore`/bin) AC_PATH_PROG(RCC, rcc, rcc,`eval $PKG_CONFIG --variable=exec_prefix QtCore`/bin) AC_PATH_PROGS(UIC, [uic-qt4 uic], uic,`eval $PKG_CONFIG --variable=exec_prefix QtCore`/bin) @@ -4397,50 +3913,15 @@ 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 -dnl -AC_ARG_ENABLE(opie, - [ --enable-opie Qt embedded interface support (default disabled)], - [if test "${enable_opie}" = "yes"; then - AC_ARG_WITH(qte, - [ --with-qte=PATH Qt Embedded headers and libraries]) - if test "${with_qte}" != "no" -a -n "${with_qte}" - then - VLC_ADD_LIBS([qte],[-L${with_qte}/lib `echo -L${with_qte}/lib | sed 's,opt/QtPalmtop,usr,'` -ljpeg -lqte]) - VLC_ADD_CXXFLAGS([qte],[-I${with_qte}/include `echo -I${with_qte}/include | sed 's,opt/QtPalmtop,usr,'` -DQT_QWS_IPAQ -DQWS -fno-exceptions -fno-rtti]) - else - VLC_ADD_LIBS([qte],[-L${QTDIR}/lib `echo -L${QTDIR}/lib | sed 's,opt/QtPalmtop,usr,'`]) - VLC_ADD_CXXFLAGS([qte],[-I${QTDIR}/include `echo -I${QTDIR}/include | sed 's,opt/QtPalmtop,usr,'`]) - fi - CPPFLAGS="${CPPFLAGS_save} ${CXXFLAGS_qte}" - AC_CHECK_HEADERS(qt.h jpeglib.h, ,[ - AC_MSG_ERROR([echo "Cannot find QT Embedded development headers."]) - ] ) - CPPFLAGS="${CPPFLAGS_save}" - - VLC_ADD_PLUGIN([opie]) - NEED_QTE_MAIN=yes - VLC_ADD_LIBS([opie],[-lqpe ${LDFLAGS_qte}]) - VLC_ADD_CXXFLAGS([opie],[${CXXFLAGS_qte}]) - if test "${with_qte}" != "no" -a -n "${with_qte}" - then - MOC=${with_qte}/bin/moc - else - MOC=${QTDIR}/bin/moc - fi - fi]) - dnl dnl MacOS X video output/gui modules dnl AC_ARG_ENABLE(macosx, - [ --enable-macosx full Mac OS X support (default enabled on Mac OS X)]) + [ --enable-macosx Mac OS X gui support (default enabled on Mac OS X)]) if test "x${enable_macosx}" = "xyes" then - VLC_ADD_LDFLAGS([access_eyetv], [-Wl,-framework,Foundation]) - VLC_ADD_LDFLAGS([macosx minimal_macosx opengllayer qtcapture],[-Wl,-framework,Cocoa]) - VLC_ADD_LDFLAGS([macosx minimal_macosx opengllayer],[-Wl,-framework,OpenGL]) + VLC_ADD_LDFLAGS([macosx minimal_macosx],[-Wl,-framework,Cocoa]) + VLC_ADD_LDFLAGS([macosx minimal_macosx],[-Wl,-framework,OpenGL]) VLC_ADD_LDFLAGS([macosx minimal_macosx], [-Wl,-framework,Carbon]) VLC_ADD_LDFLAGS([macosx minimal_macosx], [-Wl,-framework,CoreServices]) VLC_ADD_LDFLAGS([macosx minimal_macosx], [-Wl,-framework,AGL]) @@ -4449,62 +3930,68 @@ then VLC_ADD_OBJCFLAGS([macosx], [-F${CONTRIB_DIR}/Sparkle]) dnl For bug report VLC_ADD_LDFLAGS([macosx], [-Wl,-framework,AddressBook]) - VLC_ADD_LDFLAGS([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]) - VLC_ADD_OBJCFLAGS([macosx minimal_macosx opengllayer growl], [-fobjc-exceptions] ) + VLC_ADD_OBJCFLAGS([macosx minimal_macosx], [-fobjc-exceptions] ) - VLC_ADD_PLUGIN([access_eyetv]) - VLC_ADD_PLUGIN([qtcapture]) - VLC_ADD_PLUGIN([macosx]) - VLC_ADD_PLUGIN([minimal_macosx]) - VLC_ADD_PLUGIN([opengllayer]) + VLC_ADD_PLUGIN([macosx minimal_macosx]) fi dnl -dnl MacOS X video output/gui modules +dnl MacOS X related modules dnl -AC_ARG_ENABLE(macosx-minimal, - [ --enable-macosx-minimal minimal Mac OS X support (default disabled)]) -if test "x${enable_macosx_minimal}" = "xyes" + +AC_ARG_ENABLE(macosx-vout, + [ --enable-macosx-vout Mac OS X video output module (default enabled on Mac OS X)]) +if test "x${enable_macosx_vout}" != "xno" && + (test "${SYS}" = "darwin" || test "${enable_macosx_vout}" = "yes") then - VLC_ADD_LDFLAGS([minimal_macosx opengllayer qtcapture],[-Wl,-framework,Cocoa]) - VLC_ADD_LDFLAGS([minimal_macosx opengllayer],[-Wl,-framework,OpenGL]) - VLC_ADD_LDFLAGS([minimal_macosx], [-Wl,-framework,Carbon]) - VLC_ADD_LDFLAGS([minimal_macosx], [-Wl,-framework,CoreServices]) - VLC_ADD_LDFLAGS([minimal_macosx], [-Wl,-framework,AGL]) - - VLC_ADD_LDFLAGS([qtcapture], [-Wl,-framework,QTKit]) - VLC_ADD_LDFLAGS([qtcapture], [-Wl,-framework,CoreAudio]) - VLC_ADD_LDFLAGS([opengllayer qtcapture], [-Wl,-framework,QuartzCore]) - VLC_ADD_LDFLAGS([qtcapture], [-Wl,-framework,CoreVideo]) - VLC_ADD_OBJCFLAGS([minimal_macosx opengllayer], [-fobjc-exceptions] ) + VLC_ADD_LDFLAGS([vout_macosx],[-Wl,-framework,Cocoa]) + VLC_ADD_LDFLAGS([vout_macosx],[-Wl,-framework,OpenGL]) + VLC_ADD_PLUGIN([vout_macosx]) +fi + +AC_ARG_ENABLE(macosx-dialog-provider, + [ --enable-macosx-dialog-provider Mac OS X dialog module (default enabled on Mac OS X)]) +if test "x${enable_macosx_dialog_provider}" != "xno" && + (test "${SYS}" = "darwin" || test "${enable_macosx_dialog_provider}" = "yes") +then + VLC_ADD_LDFLAGS([macosx_dialog_provider],[-Wl,-framework,Cocoa]) + VLC_ADD_PLUGIN([macosx_dialog_provider]) +fi +AC_ARG_ENABLE(macosx-qtcapture, + [ --enable-macosx-qtcapture Mac OS X qtcapture (iSight) module (default enabled on Mac OS X)]) +if test "x${enable_macosx_qtcapture}" != "xno" && + (test "${SYS}" = "darwin" || test "${enable_macosx_qtcapture}" = "yes") +then + VLC_ADD_LDFLAGS([qtcapture], [-Wl,-framework,Cocoa]) + VLC_ADD_LDFLAGS([qtcapture], [-Wl,-framework,QTKit]) + VLC_ADD_LDFLAGS([qtcapture], [-Wl,-framework,CoreAudio]) + VLC_ADD_LDFLAGS([qtcapture], [-Wl,-framework,QuartzCore]) + VLC_ADD_LDFLAGS([qtcapture], [-Wl,-framework,CoreVideo]) VLC_ADD_PLUGIN([qtcapture]) - VLC_ADD_PLUGIN([minimal_macosx]) - VLC_ADD_PLUGIN([opengllayer]) fi -dnl -dnl QNX RTOS module -dnl -AC_ARG_ENABLE(qnx, - [ --enable-qnx QNX RTOS support (default enabled on QNX RTOS)]) - if test "${enable_qnx}" != "no" - then - AC_CHECK_HEADERS(Ph.h, [ - VLC_ADD_PLUGIN([qnx]) - VLC_ADD_LIBS([qnx],[-lasound -lph]) - ]) - fi +AC_ARG_ENABLE(macosx-eyetv, + [ --enable-macosx-eyetv Mac OS X EyeTV (TNT Tuner) module (default enabled on Mac OS X)]) +if test "x${enable_macosx_eyetv}" != "xno" && + (test "${SYS}" = "darwin" || test "${enable_macosx_eyetv}" = "yes") +then + VLC_ADD_LDFLAGS([access_eyetv], [-Wl,-framework,Foundation]) + VLC_ADD_PLUGIN([access_eyetv]) +fi + +AC_ARG_ENABLE(macosx-vlc-app, + [ --enable-macosx-vlc-app build the VLC media player (default enabled on Mac OS X)]) +AM_CONDITIONAL(BUILD_MACOSX_VLC_APP, [test "${enable_macosx_vlc_app}" != "no" && + (test "${SYS}" = "darwin" || test "${enable_macosx_vlc_app}" = "yes") ]) + dnl dnl ncurses module dnl AC_ARG_ENABLE(ncurses, - [ --disable-ncurses ncurses interface support (default enabled)], + [ --disable-ncurses ncurses interface support (default disabled)], [if test "${enable_ncurses}" != "no"; then AC_CHECK_HEADER(ncurses.h, [AC_CHECK_LIB(ncursesw, mvprintw, @@ -4592,14 +4079,30 @@ PKG_ENABLE_MODULES_VLC([GOOM], [], [libgoom2], [goom visualization plugin], [aut dnl dnl libprojectM visualization plugin dnl -PKG_ENABLE_MODULES_VLC([PROJECTM], [], [libprojectM], [projectM visualization plugin], [auto]) +AC_ARG_ENABLE(projectm, + [ --enable-projectm projectM visualization plugin (default enabled)]) +AS_IF([test "${enable_projectm}" != "no"], + [ + PKG_CHECK_MODULES(PROJECTM, libprojectM, + [ + VLC_ADD_PLUGIN([projectm]) + VLC_ADD_CXXFLAGS([projectm],[$PROJECTM_CFLAGS]) + VLC_ADD_LIBS([projectm],[$PROJECTM_LIBS]) + PKG_CHECK_MODULES(PROJECTM2, [libprojectM >= 2.0.0], + [ AC_DEFINE([HAVE_PROJECTM2], 1, [Define to 1 if using libprojectM 2.x]) ], + [ AC_MSG_WARN( [Using libprojectM version 1] ) + ]) + ],[ + AC_MSG_WARN([libprojectM library not found]) + ]) + ]) dnl -dnl AtmoLight (homebrew AmbiLight) +dnl AtmoLight (homemade Philips Ambilight clone) dnl AC_ARG_ENABLE(atmo, -AS_HELP_STRING([--disable-atmo],[AtmoLight (homebrew Philips ambilight) - (broken, default disabled)]),, [enable_atmo="no"]) +AS_HELP_STRING([--disable-atmo],[AtmoLight (homemade Philips Ambilight clone) + (default enabled)]),, [enable_atmo="yes"]) AS_IF([test "${enable_atmo}" != no], [ AS_IF([test "${SYS}" = "mingw32" -o "${SYS}" = "linux"], [ AC_LANG_PUSH(C++) @@ -4618,7 +4121,7 @@ PKG_ENABLE_MODULES_VLC([UDEV], [], [libudev >= 142], [Linux udev services discov dnl dnl MTP devices services discovery -PKG_ENABLE_MODULES_VLC([MTP], [], [libmtp >= 0.3.0],[MTP devices support],[auto]) +PKG_ENABLE_MODULES_VLC([MTP], [mtp access_mtp], [libmtp >= 1.0.0], [MTP devices support], [auto]) dnl dnl Lirc plugin @@ -4635,14 +4138,13 @@ then fi fi - -AC_ARG_WITH(,[Misc options:]) +EXTEND_HELP_STRING([Misc options:]) dnl dnl libgcrypt dnl AC_ARG_ENABLE(libgcrypt, - [ --disable-libgcrypt gcrypt support (default enabled)]) + [ --disable-libgcrypt gcrypt support (default enabled)]) AS_IF([test "${enable_libgcrypt}" != "no"], [ AC_CHECK_DECL([GCRYCTL_SET_THREAD_CBS], [ libgcrypt-config --version >/dev/null || \ @@ -4675,14 +4177,19 @@ dnl AC_ARG_ENABLE(gnutls, [ --enable-gnutls gnutls TLS/SSL support (default enabled)]) +AS_IF([test "${have_libgcrypt}" != "yes"], [ + AS_IF([test "${enable_gnutls}" = "yes"], [ + AC_MSG_ERROR([--enable-gnutls and --disable-libgcrypt are mutually exclusive.]) + ]) + enable_gnutls="no" +]) AS_IF([test "${enable_gnutls}" != "no"], [ PKG_CHECK_MODULES(GNUTLS, [gnutls >= 1.7.4], [ VLC_ADD_PLUGIN([gnutls]) VLC_ADD_CFLAGS([gnutls], [$GNUTLS_CFLAGS]) AS_IF([test "${SYS}" = "mingw32"], [ dnl pkg-config --libs gnutls omits these - VLC_ADD_LIBS([gnutls], [-lz]) - VLC_ADD_LIBS([gnutls], [${LTLIBINTL}]) + VLC_ADD_LIBS([gnutls], [-lz ${LTLIBINTL}]) ]) dnl The GnuTLS plugin invokes gcry_control directly. AS_IF([test "${have_libgcrypt}" = "yes"],[ @@ -4733,7 +4240,7 @@ AS_IF([test "${have_libgcrypt}" = "yes"], [ dnl dnl OSSO (Maemo screen blanking) plugin dnl -PKG_ENABLE_MODULES_VLC([OSSO], [], [libosso], [Maemo support], [auto]) +PKG_ENABLE_MODULES_VLC([OSSO_SCREENSAVER], [], [libosso], [Maemo support], [auto]) AS_IF([test -f "/etc/maemo_version"], [ AC_DEFINE([HAVE_MAEMO], 1, [Define to 1 if building for the Maemo platform.]) @@ -4762,7 +4269,7 @@ dnl AC_ARG_WITH(sqlite, [ --with-sqlite=PATH sqlite path linking]) if test "${SYS}" != "darwin"; then - PKG_ENABLE_MODULES_VLC([SQLITE], [], [sqlite3], [sqlite3], [auto]) + PKG_ENABLE_MODULES_VLC([SQLITE], [], [sqlite3 >= 3.6.0], [sqlite3], [auto]) else if test "${enable_sqlite}" != "no" then @@ -4801,6 +4308,32 @@ AS_IF([test "${ac_cv_c_bigendian}" = "yes"], [ ]) AC_SUBST(DEFS_BIGENDIAN) +dnl +dnl Where to install KDE solid .desktop +dnl +AC_ARG_VAR([KDE4_CONFIG], [kde4-config utility]) +AS_IF([test "x$KDE4_CONFIG" = "x"], [ + KDE4_CONFIG="kde4-config" +]) + +AC_ARG_WITH(kde-solid, + AS_HELP_STRING([--with-kde-solid=PATH], + [KDE Solid actions directory (auto)]),, [ + with_kde_solid="yes" +]) +soliddatadir="" +AS_IF([test "${with_kde_solid}" != "no"], [ + AS_IF([test "${with_kde_solid}" = "yes"], [ + kde4datadir="`${KDE4_CONFIG} --install data`" + AS_IF([test "x$kde4datadir" = "x"], [kde4datadir='${datadir}/kde4/apps']) + soliddatadir="${kde4datadir}/solid/actions" + ], [ + soliddatadir="${with_kde_solid}" + ]) +]) +AC_SUBST(soliddatadir) +AM_CONDITIONAL(KDE_SOLID, [test "x${soliddatadir}" != "x"]) + dnl dnl DLL loader copied from MPlayer copied from somewhere else (WINE ?) dnl @@ -4811,17 +4344,13 @@ AC_ARG_ENABLE(loader, AM_CONDITIONAL(LOADER, [test "${enable_loader}" = "yes"]) AS_IF([test "${enable_loader}" = "yes"], [ VLC_ADD_PLUGIN([dmo]) - VLC_ADD_CPPFLAGS([dmo],[-I\\\${top_srcdir}/libs/loader]) - VLC_ADD_LIBS([dmo],[\\\${top_builddir}/libs/loader/libloader.la -lpthread]) - VLC_ADD_CPPFLAGS([quicktime],[-I\\\${top_srcdir}/libs/loader]) - VLC_ADD_LIBS([quicktime],[\\\${top_builddir}/libs/loader/libloader.la -lpthread]) - VLC_ADD_CPPFLAGS([realaudio],[-I\\\${top_srcdir}/libs/loader -DLOADER]) - VLC_ADD_LIBS([realaudio],[\\\${top_builddir}/libs/loader/libloader.la]) - VLC_ADD_CPPFLAGS([realvideo],[-I\\\${top_srcdir}/libs/loader -DLOADER]) - VLC_ADD_LIBS([realvideo],[\\\${top_builddir}/libs/loader/libloader.la]) + VLC_ADD_CPPFLAGS([dmo quicktime realvideo],[-I\\\${top_srcdir}/libs/loader]) + VLC_ADD_LIBS([dmo quicktime realvideo],[\\\${top_builddir}/libs/loader/libloader.la]) + VLC_ADD_CPPFLAGS([realvideo], [-DLOADER]) + VLC_ADD_LIBS([dmo quicktime], [-lpthread]) ]) -AC_ARG_WITH(,[Components:]) +EXTEND_HELP_STRING([Components:]) dnl dnl the VLC binary @@ -4838,7 +4367,7 @@ AC_ARG_ENABLE(activex, 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]) + [ --with-wine-sdk-path=PATH path to wine sdk]) if test "${enable_activex}" != "no" then if test "${SYS}" = "mingw32" @@ -4889,9 +4418,9 @@ AC_ARG_ENABLE(mozilla, 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]) + [ --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.]) + [ --with-mozilla-pkg=PKG look for PKG.pc to build the mozilla plugin.]) AC_LANG_PUSH(C++) if test "${enable_mozilla}" = "yes" then @@ -4905,29 +4434,34 @@ then 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" + if test -n "$MOZILLA_CFLAGS" -o -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=$(eval $PKG_CONFIG --cflags "$i" ) - MOZILLA_LIBS=$(eval $PKG_CONFIG --libs "$i" ) - break - fi - done + for i in "${with_mozilla_pkg}" libxul {seamonkey,iceape,xulrunner,firefox,iceweasel,mozilla}-plugin; do + if test -n "$i" + then + echo "Trying to find $i package" >&AS_MESSAGE_LOG_FD + AC_MSG_CHECKING([for $i >= 1.9.2]) + if $PKG_CONFIG --exists --print-errors "$i >= 1.9.2" 2>&AS_MESSAGE_LOG_FD + then + echo "Using $i pkg-config package." >&AS_MESSAGE_LOG_FD + echo "Using $i package." >&AS_MESSAGE_FD + found=1 + MOZILLA_CFLAGS=$(eval $PKG_CONFIG --cflags "$i" ) + MOZILLA_LIBS=$(eval $PKG_CONFIG --libs "$i" ) + AC_MSG_RESULT([yes]) + break + fi + AC_MSG_RESULT([no]) + fi + done fi fi AS_IF( [test $found = 1],[ CPPFLAGS="${CPPFLAGS_save} ${MOZILLA_CFLAGS}" MOZILLA_REQUIRED_HEADERS=1 - AC_CHECK_HEADERS([npfunctions.h]) AC_CHECK_HEADERS(npapi.h,,MOZILLA_REQUIRED_HEADERS=0) AC_CHECK_HEADERS(npruntime.h,,MOZILLA_REQUIRED_HEADERS=0, [#if HAVE_NPAPI_H @@ -4935,21 +4469,24 @@ then #endif ]) if test "${MOZILLA_REQUIRED_HEADERS}" = "0"; then - AC_MSG_ERROR([Please install the Firefox development tools; mozilla-config.h, plugin/npapi.h and plugin/npruntime.h were not found.]) + AC_MSG_ERROR([Please install the Firefox development tools; plugin/npapi.h and/or plugin/npruntime.h were not found.]) fi MOZILLA_REQUIRED_HEADERS= mozilla=: 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],[-DXP_UNIX]) + 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.]) + ]) + AS_IF([test "${have_xcb_keysyms}" != "yes"], [ + AC_MSG_ERROR([Please install xcb-keysyms from xcb-utils.]) + ]) ]) ]) - VLC_ADD_CPPFLAGS([mozilla],[${CPPFLAGS} ${XPM_CFLAGS}]) + VLC_ADD_CPPFLAGS([mozilla],[${CPPFLAGS} ${XPM_CFLAGS}]) VLC_ADD_LIBS([mozilla],[${MOZILLA_LIBS} ${XPM_LIBS}]) VLC_ADD_PLUGIN([mozilla]) PLUGINS_BINDINGS="${PLUGINS_BINDINGS} mozilla" @@ -4958,9 +4495,9 @@ then ], [ AC_PATH_PROGS(MOZILLA_CONFIG, - [mozilla-config seamonkey-config xulrunner-config], + [mozilla-config seamonkey-config xulrunner-config], [no]) - test "${MOZILLA_CONFIG}" = "no" && AC_MSG_ERROR([Please install the Mozilla development tools. mozilla-config was not found.]) + test "${MOZILLA_CONFIG}" = "no" && AC_MSG_ERROR([Please install the Mozilla development tools (version 1.9.2 or higher) or use --disable-mozilla.]) ] ) dnl pkg-config failed but we might have found a mozilla-config @@ -4976,6 +4513,9 @@ then [[${X_LIBS} ${X_PRE_LIBS} -lX11 -lSM -lICE -lXpm] ]) AC_CHECK_HEADERS(X11/xpm.h,,AC_MSG_ERROR([Please install libXpm-devel library for required X11/xpm.h])) + AS_IF([test "${have_xcb_keysyms}" != "yes"], [ + AC_MSG_ERROR([Please install xcb-keysyms from xcb-utils.]) + ]) LDFLAGS="${LDFLAGS_save}" fi @@ -5013,9 +4553,8 @@ then fi real_mozilla_sdk="`cd ${with_mozilla_sdk_path} 2>/dev/null && pwd`" - CPPFLAGS="${CPPFLAGS_save} -I${real_mozilla_sdk} -I${real_mozilla_sdk}/include" + CPPFLAGS="${CPPFLAGS_save} -I${real_mozilla_sdk}/include" 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 @@ -5029,17 +4568,7 @@ then MOZILLA_REQUIRED_HEADERS= mozilla=: PLUGINS_BINDINGS="${PLUGINS_BINDINGS} mozilla" - VLC_ADD_CPPFLAGS([mozilla],[-DXPCOM_GLUE -DHAVE_CPP_MODERN_SPECIALIZE_TEMPLATE_SYNTAX -I${real_mozilla_sdk} -I${real_mozilla_sdk}/include -I${real_mozilla_sdk}/embedstring/include -I${real_mozilla_sdk}/xpcom/include -I${real_mozilla_sdk}/nspr/include -I${real_mozilla_sdk}/string/include -I${real_mozilla_sdk}/plugin/include -I${real_mozilla_sdk}/java/include]) - if ${need_xpcom_libs}; then - VLC_ADD_LIBS([mozilla],[-L${real_mozilla_sdk}/embedstring/bin -L${real_mozilla_sdk}/xpcom/bin -L${real_mozilla_sdk}/nspr/bin -L${real_mozilla_sdk}/string/bin -L${real_mozilla_sdk}/lib -lnspr4 -lplds4 -lplc4 -lxpcomglue]) - if test "${SYS}" = "mingw32"; then - dnl latest gecko sdk does not have embedstring - if test -d "${real_mozilla_sdk}/embedstring/bin" - then - VLC_ADD_LIBS([mozilla],[-lembedstring]) - fi - fi - fi + VLC_ADD_CPPFLAGS([mozilla],[-DXPCOM_GLUE -DHAVE_CPP_MODERN_SPECIALIZE_TEMPLATE_SYNTAX -I${real_mozilla_sdk}/include]) MOZILLA_SDK_PATH="${real_mozilla_sdk}" if test -n "${CYGPATH}"; then @@ -5051,38 +4580,6 @@ fi AC_LANG_POP(C++) AM_CONDITIONAL(BUILD_MOZILLA,${mozilla}) -dnl -dnl test plugins -dnl -AC_ARG_ENABLE(testsuite, - [ --enable-testsuite build test modules (default disabled)]) -if test "${enable_testsuite}" = "yes" -then - TESTS="test1 test2 test3 test4" - - dnl we define those so that bootstrap sets the right linker - VLC_ADD_CXXFLAGS([test2],[]) - VLC_ADD_OBJCFLAGS([test3],[]) - dnl this one is needed until automake knows what to do - VLC_ADD_LIBS([test3],[-lobjc]) - - VLC_ADD_PLUGIN([test1]) - VLC_ADD_PLUGIN([test2]) - VLC_ADD_PLUGIN([test3]) - VLC_ADD_PLUGIN([test4]) -fi - -dnl -dnl qte_main plugin -dnl -if test "${NEED_QTE_MAIN}" != "no" -then - VLC_ADD_PLUGIN([qte_main]) - VLC_ADD_CXXFLAGS([opie qte qt_video],[-DNEED_QTE_MAIN]) - VLC_ADD_CXXFLAGS([qte_main],[${CXXFLAGS_qte} ${CXXFLAGS_qt_video}]) - VLC_ADD_LDFLAGS([qte_main],[${LDFLAGS_qte} ${LDFLAGS_qt_video}]) -fi - dnl dnl Plugin and builtin checks dnl @@ -5112,7 +4609,7 @@ dnl dnl Stuff used by the program dnl VERSION_MESSAGE="${VERSION} ${CODENAME}" -COPYRIGHT_MESSAGE="VLC media player - version ${VERSION_MESSAGE} - (c) ${COPYRIGHT_YEARS} the VideoLAN team" +COPYRIGHT_MESSAGE="Copyright © ${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]) @@ -5129,13 +4626,7 @@ AC_SUBST(VERSION_REVISION) AC_SUBST(VERSION_EXTRA) AC_SUBST(COPYRIGHT_YEARS) AC_DEFINE_UNQUOTED(VLC_COMPILE_BY, "`whoami`", [user who ran configure]) -if test "${build_os}" = "cygwin" -then - AC_DEFINE_UNQUOTED(VLC_COMPILE_HOST, "`hostname`", [host which ran configure]) -else - AC_DEFINE_UNQUOTED(VLC_COMPILE_HOST, "`hostname -s`", [host which ran configure]) -fi -AC_DEFINE_UNQUOTED(VLC_COMPILE_DOMAIN, "`dnsdomainname 2>/dev/null || domainname 2>/dev/null || echo unknown`", [domain of the host which ran configure]) +AC_DEFINE_UNQUOTED(VLC_COMPILE_HOST, "`hostname -f 2>/dev/null || hostname`", [host which ran configure]) AC_DEFINE_UNQUOTED(VLC_COMPILER, "`$CC -v 2>&1 | tail -n 1`", [compiler]) dnl Win32 need s a numerical version_extra. case $( echo ${VERSION_EXTRA}|wc -m ) in @@ -5211,9 +4702,9 @@ AC_CONFIG_FILES([ projects/mozilla/npvlc_rc.rc projects/mozilla/vlc.r projects/mozilla/install.js + projects/mozilla/install.rdf + projects/mozilla/manifest.json share/Makefile - share/vlc_win32_rc.rc - share/libvlc_win32_rc.rc compat/Makefile src/Makefile src/test/Makefile @@ -5225,7 +4716,6 @@ AC_CONFIG_FILES([ 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/vcd/Makefile @@ -5242,8 +4732,8 @@ AC_CONFIG_FILES([ modules/audio_output/Makefile modules/codec/Makefile modules/codec/avcodec/Makefile - modules/codec/cmml/Makefile modules/codec/dmo/Makefile + modules/codec/omxil/Makefile modules/codec/shine/Makefile modules/codec/subtitles/Makefile modules/codec/spudec/Makefile @@ -5260,20 +4750,17 @@ AC_CONFIG_FILES([ modules/demux/mpeg/Makefile modules/demux/playlist/Makefile modules/gui/Makefile - modules/gui/beos/Makefile modules/gui/macosx/Makefile modules/gui/hildon/Makefile modules/gui/minimal_macosx/Makefile - modules/gui/qnx/Makefile + modules/gui/macosx_dialog_provider/Makefile modules/gui/qt4/Makefile modules/gui/skins2/Makefile modules/meta_engine/Makefile modules/misc/Makefile modules/misc/dummy/Makefile modules/misc/lua/Makefile - modules/misc/memcpy/Makefile modules/misc/notify/Makefile - modules/misc/testsuite/Makefile modules/misc/playlist/Makefile modules/misc/osd/Makefile modules/misc/stats/Makefile @@ -5290,9 +4777,14 @@ AC_CONFIG_FILES([ modules/video_filter/dynamicoverlay/Makefile modules/video_output/Makefile modules/video_output/msw/Makefile - modules/video_output/qte/Makefile modules/visualization/Makefile modules/visualization/visual/Makefile + modules/mmx/Makefile + modules/mmxext/Makefile + modules/3dnow/Makefile + modules/sse2/Makefile + modules/altivec/Makefile + modules/arm_neon/Makefile ]) dnl Generate makefiles @@ -5310,7 +4802,10 @@ dnl Do we have to use make or gmake ? USE_MAKE_OR_GMAKE=`case "${SYS}" in openbsd*) echo "gmake";; *) echo "make";; esac` dnl Shortcut to nice compile message rm -f compile -echo '#! /bin/sh' >compile +if test -n $SHELL; then + SHELL=${CONFIG_SHELL-/bin/sh} +fi +echo '#! '$SHELL >compile echo rm -f .error\$\$ >>compile echo ERROR=0 >>compile echo export PATH=$PATH LANG=C >>compile @@ -5332,7 +4827,6 @@ test "${enable_debug}" = "yes" && printf "debug " test "${enable_cprof}" = "yes" && printf "cprof " test "${enable_gprof}" = "yes" && printf "gprof " test "${enable_optimizations}" = "yes" && printf "optim " -test "${enable_release}" = "yes" && printf "release " || printf "devel " echo "" if test "${enable_vlc}" != "no"; then echo "vlc aliases :${ALIASES}"