X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=configure.ac;h=e4ef489ca32f8e67c16871d416a1fb59f3a64c19;hb=31d2760ad0c0a40116faf7063f380daddef79090;hp=280ed5f4dde122d517142ce542098e48c66cd69f;hpb=b8f6df75226cef945748f82a26c1fbebc41d44fd;p=vlc diff --git a/configure.ac b/configure.ac index 280ed5f4dd..e4ef489ca3 100644 --- a/configure.ac +++ b/configure.ac @@ -2,28 +2,33 @@ dnl Autoconf settings for vlc AC_COPYRIGHT([Copyright 2002-2009 the VideoLAN team]) -AC_INIT(vlc, 1.0.0-pre1) +AC_INIT(vlc, 1.1.0-git) VERSION_MAJOR="1" -VERSION_MINOR="0" +VERSION_MINOR="1" VERSION_REVISION="0" -VERSION_EXTRA="-pre1" +VERSION_EXTRA="-git" PKGDIR="vlc" AC_SUBST(PKGDIR) CONFIGURE_LINE="`echo "$0 $ac_configure_args" | sed -e 's/\\\/\\\\\\\/g'`" -CODENAME="Goldeneye" +CODENAME="Yellow Bastard" COPYRIGHT_YEARS="1996-2009" AC_PREREQ(2.59c) AC_CONFIG_SRCDIR(src/libvlc.c) AC_CONFIG_AUX_DIR(autotools) AC_CONFIG_MACRO_DIR(m4) +AC_CONFIG_LIBOBJ_DIR(compat) AC_CANONICAL_BUILD AC_CANONICAL_HOST 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])]) + + dnl Too many people are not aware of maintainer mode: dnl If you want to use it, you definitely know what you are doing, so dnl you can specify "--disable-maintainer-mode". But if you want the default @@ -211,10 +216,10 @@ case "${host_os}" in 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_control],[-Wl,dynamic_lookup]) - VLC_ADD_LDFLAGS([avcodec avformat swscale imgresample postproc i420_rgb_mmx x264],[-Wl,-read_only_relocs,suppress]) + VLC_ADD_LDFLAGS([libvlc],[-Wl,-undefined,dynamic_lookup]) + VLC_ADD_LDFLAGS([avcodec avformat swscale postproc i420_rgb_mmx x264],[-Wl,-read_only_relocs,suppress]) VLC_ADD_CFLAGS([motion],[-fconstant-cfstrings]) - VLC_ADD_LDFLAGS([libvlc],[-Wl,-framework,CoreFoundation]) + 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)])) @@ -245,16 +250,12 @@ case "${host_os}" in echo " Assuming --enable-vcdx" enable_caca="yes" echo " Assuming --enable-caca" - enable_goom="yes" - echo " Assuming --enable-goom" enable_ncurses="yes" echo " Assuming --enable-ncurses" enable_twolame="yes" echo " Assuming --enable-twolame" enable_realrtsp="yes" echo " Assuming --enable-realrtsp" - enable_update_check="yes" - echo " Assuming --enable-update-check" enable_libass="yes" echo " Assuming --enable-libass" enable_asademux="yes" @@ -264,31 +265,13 @@ case "${host_os}" in echo " Assuming --disable-skins2" enable_x11="no" echo " Assuming --disable-x11" + enable_xcb="no" + echo " Assuming --disable-xcb" enable_glx="no" echo " Assuming --disable-glx" enable_xvideo="no" echo " Assuming --disable-xvideo" fi - 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 dnl dnl Check for Mac OS X SDK settings dnl @@ -316,12 +299,34 @@ case "${host_os}" in export MACOSX_DEPLOYMENT_TARGET fi ;; - *mingw32* | *cygwin* | *wince* | *mingwce* | *pe*) + 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, :) case "${host_os}" in - *wince* | *mingwce* | *mingw32ce* | *pe*) + *wince* | *mingwce* | *mingw32ce*) SYS=mingwce dnl Sadly CeGCC still needs non-wince macros AC_DEFINE([_WIN32_WINNT], 0x0501, [Define to '0x0500' for Windows 2000 APIs.]) @@ -344,27 +349,24 @@ case "${host_os}" in if test "${SYS}" = "mingw32"; then # add ws2_32 for closesocket, select, recv - VLC_ADD_LIBS([libvlc],[-lws2_32 -lnetapi32 -lwinmm]) + 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],[-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],[-lws2_32]) + 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],[-lws2_32]) + VLC_ADD_LIBS([access_file], [-lshlwapi]) fi if test "${SYS}" = "mingwce"; then # add ws2 for closesocket, select, recv - VLC_ADD_LIBS([libvlc access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp sap http netsync audioscrobbler growl rtp stream_out_rtp remoteosd],[-lws2]) - VLC_ADD_LIBS([libvlc],[-lmmtimer]) + 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],[-lws2]) + VLC_ADD_LIBS([libvlccore],[-lmmtimer]) fi ;; *nto*) SYS=nto - VLC_ADD_LIBS([x11 xvideo],[-lsocket]) ;; solaris*) SYS=solaris - # _POSIX_PTHREAD_SEMANTICS is needed to get the POSIX ctime_r - # Perhaps it is useful other places as well? - CFLAGS_save="${CFLAGS_save} -D_POSIX_PTHREAD_SEMANTICS"; CFLAGS="${CFLAGS_save}" ;; hpux*) SYS=hpux @@ -374,16 +376,16 @@ case "${host_os}" in CFLAGS_save="${CFLAGS_save} -Wno-multichar"; CFLAGS="${CFLAGS_save}" CXXFLAGS_save="${CXXFLAGS_save} -Wno-multichar"; CXXFLAGS="${CXXFLAGS_save}" VLC_ADD_CXXFLAGS([beos],[]) - VLC_ADD_LIBS([vlc libvlc logger],[-lbe]) + 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]) 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 libvlc growl_udp],[-lbind -lsocket]) + VLC_ADD_LIBS([access_file access_ftp access_mms access_output_udp telnet netsync sap libvlccore growl_udp],[-lbind -lsocket]) else - VLC_ADD_LIBS([access_file access_ftp access_mms access_output_udp telnet netsync sap libvlc growl_udp],[-lnet]) + 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 @@ -444,39 +446,40 @@ dnl Gettext stuff dnl AM_GNU_GETTEXT_VERSION([0.17]) AM_GNU_GETTEXT([external]) -VLC_ADD_LIBS([libvlc vlc], [${LTLIBINTL}]) +VLC_ADD_LIBS([libvlccore vlc], [${LTLIBINTL}]) dnl dnl Iconv stuff dnl AM_ICONV -VLC_ADD_CFLAGS([libvlc],[${INCICONV}]) -VLC_ADD_LIBS([libvlc],[${LTLIBICONV}]) +VLC_ADD_CFLAGS([libvlccore],[${INCICONV}]) +VLC_ADD_LIBS([libvlccore],[${LTLIBICONV}]) dnl Check for broken versions of mingw-runtime compatability library -if test "${SYS}" = "mingw32" -then +AS_IF([test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"], [ AC_MSG_CHECKING(for broken mingw-runtime) - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ + AC_PREPROC_IFELSE([ #include <_mingw.h> -#if (__MINGW32_MAJOR_VERSION == 3) && (__MINGW32_MINOR_VERSION < 14) +#if (__MINGW32_MAJOR_VERSION == 3) && (__MINGW32_MINOR_VERSION < 15) # error Attempting to use mingw-runtime with broken vsnprintf support #endif - ]])], - [AC_MSG_RESULT([Ok])], - [AC_MSG_ERROR([Broken mingw-runtime, need > 3.13])], +], [ + AC_MSG_RESULT([ok]) +], [ + AC_MSG_RESULT([present]) + AC_MSG_ERROR([LibVLC requires mingw-runtime version 3.15 or higher!]) ]) dnl force use of mingw provided c99 *printf over msvcrt CPPFLAGS="${CPPFLAGS} -D__USE_MINGW_ANSI_STDIO=1" CPPFLAGS_save="${CPPFLAGS_save} -D__USE_MINGW_ANSI_STDIO=1" -fi +]) dnl Check for the need to include the mingwex lib for mingw32 if test "${SYS}" = "mingw32" then AC_CHECK_LIB(mingwex,opendir, AC_CHECK_LIB(mingw32,opendir,, - [VLC_ADD_LIBS([libvlc gtk],[-lmingwex])]) + [VLC_ADD_LIBS([libvlccore gtk],[-lmingwex])]) ) fi @@ -523,6 +526,7 @@ fi dnl dnl Buggy glibc prevention. Purposedly not cached. +dnl See sourceware.org bugs 5058 and 5443. dnl Ubuntu alone has 20 bug numbers for this... dnl AC_MSG_CHECKING(for buggy GNU/libc versions) @@ -536,7 +540,14 @@ AC_PREPROC_IFELSE([ AC_MSG_RESULT([not present]) ], [ AC_MSG_RESULT([found]) - AC_MSG_ERROR([Buggy GNU/libc (version 2.5 - 2.7) present. VLC would crash; there is no viable work-around for this. Check with your distribution vendor on how to update the glibc run-time.]) + AS_IF([test "x${enable_nls}" != "xno" || test "x${enable_mozilla}" != "xno"], [ + AC_MSG_ERROR([Buggy GNU/libc (version 2.5 - 2.7) present. VLC would crash; there is no viable +work-around for this. Check with your distribution vendor on how to update the +glibc run-time. Alternatively, build with --disable-nls --disable-mozilla and +be sure to not use LibVLC from other applications/wrappers.]) + ], [ + AC_DEFINE(DISABLE_BUGGY_GLIBC_CHECK, 1, [Disables runtime check for buggy glibc.]) + ]) ]) dnl Plugin compilation stuff @@ -550,15 +561,17 @@ dnl Check for system libs needed need_libc=false dnl Check for usual libc functions -AC_CHECK_FUNCS([gettimeofday strtod strtol strtof strtoll strtoull strsep isatty vasprintf asprintf swab sigrelse getpwuid_r memalign posix_memalign if_nametoindex atoll getenv putenv setenv gmtime_r ctime_r localtime_r lrintf daemon scandir fork bsearch lstat strlcpy strdup strndup strnlen atof lldiv posix_fadvise posix_madvise uselocale]) -AC_CHECK_FUNCS(strcasecmp,,[AC_CHECK_FUNCS(stricmp)]) -AC_CHECK_FUNCS(strncasecmp,,[AC_CHECK_FUNCS(strnicmp)]) -AC_CHECK_FUNCS(strcasestr,,[AC_CHECK_FUNCS(stristr)]) +AC_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_FUNC_ALLOCA 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 strtoll vasprintf swab]) +AC_CHECK_FUNCS([stricmp strnicmp]) +AC_CHECK_FUNCS(fdatasync,, + [AC_DEFINE(fdatasync, fsync, [Alias fdatasync() to fsync() if missing.]) +]) -dnl Check for Linux system calls -AC_CHECK_FUNCS([vmsplice]) +dnl Check for non-standard system calls +AC_CHECK_FUNCS([vmsplice eventfd fstatfs]) AH_BOTTOM([#include ]) @@ -580,12 +593,14 @@ if test ${ac_cv_langinfo_codeset} = yes; then [Define if you have and nl_langinfo(CODESET).]) fi +SOCKET_LIBS="" AC_CHECK_FUNCS(connect,,[ AC_CHECK_LIB(socket,connect,[ - VLC_ADD_LIBS([libvlc cdda cddax],-lsocket) - LIBS_socket="-lsocket" + VLC_ADD_LIBS([libvlccore cdda cddax],-lsocket) + SOCKET_LIBS="-lsocket" ]) ]) +AC_SUBST(SOCKET_LIBS) AC_CHECK_FUNCS(send,,[ AC_CHECK_LIB(socket,send,[ @@ -636,7 +651,7 @@ 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)],, [${LIBS_socket}]) +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 @@ -679,7 +694,7 @@ fi AC_CHECK_FUNCS(inet_aton,,[ AC_CHECK_LIB(resolv,inet_aton,[ - VLC_ADD_LIBS([libvlc],[-lresolv]) + VLC_ADD_LIBS([libvlccore],[-lresolv]) ]) ]) @@ -692,7 +707,7 @@ 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([libvlc],[-lgnugetopt])], + VLC_ADD_LIBS([libvlccore],[-lgnugetopt])], [need_getopt=:])]) fi AM_CONDITIONAL(BUILD_GETOPT, ${need_getopt}) @@ -700,16 +715,16 @@ AM_CONDITIONAL(BUILD_GETOPT, ${need_getopt}) if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then AC_TYPE_SIGNAL AC_CHECK_LIB(m,cos,[ - VLC_ADD_LIBS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom visual panoramix rotate noise grain scene],[-lm]) + VLC_ADD_LIBS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom visual panoramix rotate noise grain scene kate flac lua],[-lm]) ]) AC_CHECK_LIB(m,pow,[ - VLC_ADD_LIBS([avcodec avformat swscale imgresample postproc ffmpegaltivec stream_out_transrate i420_rgb faad twolame equalizer spatializer param_eq libvlc vorbis freetype mod mpc dmo quicktime realaudio realvideo galaktos opengl],[-lm]) + VLC_ADD_LIBS([avcodec avformat swscale postproc ffmpegaltivec i420_rgb faad twolame equalizer spatializer param_eq libvlccore freetype mod mpc dmo quicktime realaudio realvideo opengl],[-lm]) ]) AC_CHECK_LIB(m,sqrt,[ VLC_ADD_LIBS([headphone_channel_mixer normvol speex mono colorthres extract],[-lm]) ]) AC_CHECK_LIB(m,ceil,[ - VLC_ADD_LIBS([mosaic],[-lm]) + VLC_ADD_LIBS([hotkeys mosaic],[-lm]) ]) AC_CHECK_LIB(m,exp,[ VLC_ADD_LIBS([gaussianblur],[-lm]) @@ -717,20 +732,19 @@ AC_CHECK_LIB(m,exp,[ AC_CHECK_LIB(m,round,[ VLC_ADD_LIBS([dbus],[-lm]) ]) -AC_CHECK_LIB(mx,sqrtf,[ - VLC_ADD_LIBS([x264],[-lmx]) +AC_CHECK_LIB(m,sqrtf,[ + VLC_ADD_LIBS([x264],[-lm]) ]) fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" +AC_CHECK_LIB(m,lrintf, [ + AC_DEFINE(HAVE_LRINTF, 1, [Define to 1 if you have the lrintf function]) + VLC_ADD_LIBS([skins2],[-lm]) +]) + dnl Check for dynamic plugins ac_cv_have_plugins=no -# OS X style -AC_CHECK_HEADERS(mach-o/dyld.h, - [AC_CHECK_FUNCS(NSLinkModule, - [AC_DEFINE(HAVE_DL_DYLD, 1, [Define if you have the Darwin dyld API]) - ac_cv_have_plugins=yes])]) - # HP-UX style if test "${ac_cv_have_plugins}" = "no"; then AC_CHECK_HEADERS(dl.h) @@ -739,26 +753,18 @@ if test "${ac_cv_have_plugins}" = "no"; then [ac_cv_my_have_shl_load=yes, AC_CHECK_LIB(dld, shl_load, [ac_cv_my_have_shl_load=yes - VLC_ADD_LIBS([libvlc],[-ldld])])]) + VLC_ADD_LIBS([libvlccore],[-ldld])])]) if test "${ac_cv_my_have_shl_load}" = "yes"; then AC_DEFINE(HAVE_DL_SHL_LOAD, 1, [Define if you have the shl_load API]) ac_cv_have_plugins=yes fi fi -# Whatever style -if test "${ac_cv_have_plugins}" = "no"; then - AC_CHECK_LIB(dld, dld_link, - [VLC_ADD_LIBS([libvlc],[-ldld]) - AC_DEFINE(HAVE_DL_DLD_LINK, 1, [Define if you have the GNU dld library]) - ac_cv_have_plugins=yes]) -fi - # Win32 style if test "${ac_cv_have_plugins}" = "no"; then if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"; then AC_CHECK_LIB(kernel32, main, - [VLC_ADD_LIBS([libvlc],[-lkernel32]) + [VLC_ADD_LIBS([libvlccore],[-lkernel32]) AC_DEFINE(HAVE_DL_WINDOWS, 1, [Define if you have Windows' LoadLibrary]) ac_cv_have_plugins=yes]) fi @@ -781,17 +787,17 @@ if test "${ac_cv_have_plugins}" = "no"; then fi # Only test for dlopen() if the others didn't work -if test "${ac_cv_have_plugins}" = "no"; then +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_cv_my_have_dlopen=yes - VLC_ADD_LIBS([libvlc realaudio realvideo],[-ldl]), + VLC_ADD_LIBS([libvlccore realaudio realvideo lua],[-ldl]), AC_CHECK_LIB(svld, dlopen, ac_cv_my_have_dlopen=yes - VLC_ADD_LIBS([libvlc],[-lsvld])))) + VLC_ADD_LIBS([libvlccore],[-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 @@ -815,22 +821,22 @@ if test "${THREAD_LIB}" = "error"; then THREAD_LIB="" fi -VLC_ADD_LIBS([libvlc plugin],[${THREAD_LIB}]) +VLC_ADD_LIBS([libvlccore libvlc plugin],[${THREAD_LIB}]) AC_CHECK_LIB(rt, clock_nanosleep, [ - VLC_ADD_LIBS([libvlc],[-lrt]) + VLC_ADD_LIBS([libvlccore],[-lrt]) AC_DEFINE(HAVE_CLOCK_NANOSLEEP, 1, [Define to 1 if you have clock_nanosleep.]) ], [ dnl HP/UX port - AC_CHECK_LIB(rt,sem_init, [VLC_ADD_LIBS([libvlc],[-lrt])]) + AC_CHECK_LIB(rt,sem_init, [VLC_ADD_LIBS([libvlccore],[-lrt])]) ]) have_nanosleep=false AC_CHECK_FUNCS(nanosleep,have_nanosleep=:,[ AC_CHECK_LIB(rt,nanosleep, - [VLC_ADD_LIBS([libvlc],[-lrt]) have_nanosleep=:], + [VLC_ADD_LIBS([libvlccore],[-lrt]) have_nanosleep=:], [AC_CHECK_LIB(posix4,nanosleep, - [VLC_ADD_LIBS([libvlc],[-lposix4]) have_nanosleep=:])] + [VLC_ADD_LIBS([libvlccore],[-lposix4]) have_nanosleep=:])] ) ]) if ${have_nanosleep}; then @@ -847,16 +853,17 @@ AC_EGREP_HEADER(strncasecmp,strings.h,[ AC_MSG_RESULT(no)]) dnl Check for headers -AC_CHECK_HEADERS(getopt.h strings.h locale.h) -AC_CHECK_HEADERS(fcntl.h sys/types.h sys/time.h sys/times.h sys/ioctl.h sys/stat.h xlocale.h) +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([arpa/inet.h netinet/in.h netinet/udplite.h sys/eventfd.h]) AC_CHECK_HEADERS([net/if.h], [], [], [ + #include #include ]) if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then AC_CHECK_HEADERS(machine/param.h sys/shm.h) -AC_CHECK_HEADERS([linux/version.h linux/dccp.h]) +AC_CHECK_HEADERS([linux/version.h linux/dccp.h scsi/scsi.h]) AC_CHECK_HEADERS(syslog.h) fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" @@ -870,7 +877,7 @@ AC_CHECK_TYPE(ssize_t,, [ dnl Check for poll AC_SEARCH_LIBS(poll, [poll], [AC_DEFINE(HAVE_POLL, 1, [Define to 1 if the OS is usabl... err, has poll().])], [ -if test ${SYS} != "mingw32" +if test ${SYS} != "mingw32" -a ${SYS} != "mingwce" then AC_MSG_WARN([Your platform does not support poll(). VLC has it's own poll() implementation, but it is only intended to be used on Windows. VLC might crash or be insecure when you see this message. Either switch to an OS with a proper poll() implementation, or implement one for your OS in VLC]) fi @@ -941,38 +948,6 @@ fi AM_CONDITIONAL(HAVE_MINIZIP, [ test "${have_minizip}" = "yes" ]) -dnl Check for hal -AC_ARG_ENABLE(hal, - [ --enable-hal Linux HAL services discovery (default enabled)]) - -if test "${enable_hal}" != "no" -a "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" -then - PKG_CHECK_MODULES(HAL, hal >= 0.5.0, - [ - AC_DEFINE( HAVE_HAL, 1, [Define if you have the HAL library] ) - VLC_ADD_PLUGIN([hal]) - VLC_ADD_PLUGIN([probe_hal]) - VLC_ADD_LIBS([libvlc hal probe_hal],[$HAL_LIBS]) - VLC_ADD_CFLAGS([libvlc hal probe_hal],[$HAL_CFLAGS])], - [AC_MSG_WARN([libhal >= 0.5.0 was not found. Install libhal-dev ?])] - ) -fi - -dnl Check for mtp -AC_ARG_ENABLE(mtp, - [ --enable-mtp MTP devices support (default enabled)]) - -if test "${enable_mtp}" != "no" -a "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" -then - PKG_CHECK_MODULES(MTP, libmtp >= 0.3.0, - [ VLC_ADD_PLUGIN([mtp]) - VLC_ADD_PLUGIN([access_mtp]) - VLC_ADD_LIBS([mtp access_mtp],[$MTP_LIBS]) - VLC_ADD_CFLAGS([mtp access_mtp],[$MTP_CFLAGS])], - [AC_MSG_WARN(MTP library not found)] - ) -fi - dnl Check for dbus AC_ARG_ENABLE(dbus, [ --enable-dbus Linux D-BUS message bus system (default enabled)]) @@ -983,8 +958,8 @@ then dnl api stable dbus PKG_CHECK_MODULES(DBUS, dbus-1 >= 1.0.0, [ AC_DEFINE( HAVE_DBUS, 1, [Define if you have the D-BUS library] ) - VLC_ADD_LIBS([screensaver libvlc],[$DBUS_LIBS]) - VLC_ADD_CFLAGS([screensaver libvlc],[$DBUS_CFLAGS]) + VLC_ADD_LIBS([screensaver libvlccore],[$DBUS_LIBS]) + VLC_ADD_CFLAGS([screensaver libvlccore],[$DBUS_CFLAGS]) dnl Check for dbus control interface AC_ARG_ENABLE(dbus-control, [ --disable-dbus-control D-BUS control interface (default enabled)]) if test "${enable_dbus_control}" != "no" @@ -1034,7 +1009,17 @@ fi CFLAGS="${CFLAGS_save}" RDC_PROG_CC_WFLAGS([all extra sign-compare undef pointer-arith bad-function-cast cast-align write-strings missing-prototypes volatile-register-var error-implicit-function-declaration]) -RDC_PROG_CC_FLAGS_IFELSE([-pipe]) +RDC_PROG_CC_FLAGS([-pipe]) + +AC_ARG_ENABLE(warnings-as-error, + AS_HELP_STRING([--enable-warnings-as-error],[Treat acceptable warnings as error (default in debug)]),, [enable_warnings_as_error="$enable_debug"]) +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], @@ -1160,7 +1145,7 @@ dnl Check for __attribute__((packed)) AC_CACHE_CHECK([for __attribute__((packed))], [ac_cv_c_attribute_packed], [ac_cv_c_attribute_packed=no - AC_TRY_COMPILE(, [struct __attribute__((__packed__)) foo { int a; } b;], + AC_TRY_COMPILE(, [struct __attribute__((__packed__)) foo { int a; } b; (void)b;], [ac_cv_c_attribute_packed=yes])]) if test "${ac_cv_c_attribute_packed}" != "no"; then AC_DEFINE(HAVE_ATTRIBUTE_PACKED, 1, Support for __attribute__((packed)) for structs) @@ -1199,6 +1184,7 @@ 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]) @@ -1243,6 +1229,7 @@ if test "${SYS}" != "mingwce"; then 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]) @@ -1500,7 +1487,7 @@ AS_IF([test "${enable_altivec}" = "yes"], [ VLC_ADD_CFLAGS([motionaltivec],[${ac_cv_altivec_inline}]) VLC_ADD_CFLAGS([memcpyaltivec],[${ac_cv_altivec_inline}]) VLC_ADD_CFLAGS([i420_yuy2_altivec],[${ac_cv_altivec_inline}]) - VLC_ADD_CFLAGS([libvlc],[${ac_cv_altivec_inline}]) + VLC_ADD_CFLAGS([libvlccore],[${ac_cv_altivec_inline}]) ]) VLC_ADD_PLUGIN([memcpyaltivec]) VLC_ADD_PLUGIN([i420_yuy2_altivec]) @@ -1562,7 +1549,7 @@ dnl - Others: test should fail AS_IF([test "${ac_cv_c_altivec}" != "no"], [ AC_DEFINE(CAN_COMPILE_C_ALTIVEC, 1, [Define to 1 if C AltiVec extensions are available.]) - VLC_ADD_CFLAGS([libvlc],[${ac_cv_c_altivec}]) + 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]) @@ -1576,7 +1563,7 @@ dnl - Others: test should fail LDFLAGS="${LDFLAGS_save}" ]) AS_IF([test "${ac_cv_ld_altivec}" != "no"], [ - VLC_ADD_LDFLAGS([libvlc idctaltivec motionaltivec memcpyaltivec],[-Wl,-framework,vecLib]) + VLC_ADD_LDFLAGS([libvlccore idctaltivec motionaltivec memcpyaltivec],[-Wl,-framework,vecLib]) ]) ]) @@ -1592,7 +1579,7 @@ if test -n "${with_tuning}"; then fi else if test "${SYS}" = "darwin" -a "${host_cpu}" != "powerpc"; then - CFLAGS_TUNING="-march=pentium-m -mtune=prescott" + CFLAGS_TUNING="-march=prescott -mtune=generic" elif test "${host_cpu}" = "i686" -o "${host_cpu}" = "i586" -o "${host_cpu}" = "i486" -o "${host_cpu}" = "i386"; then CFLAGS_TUNING="-mtune=pentium2" elif test "${host_cpu}" = "x86_64"; then @@ -1697,21 +1684,6 @@ AS_IF([test "${enable_sout}" != "no"], [ ]) AM_CONDITIONAL(ENABLE_SOUT, [test "${enable_sout}" != "no"]) -AC_ARG_ENABLE(switcher, - [ --enable-switcher Stream-out switcher plugin (default disabled)]) - -dnl Check for libshout -AC_ARG_ENABLE(shout, - [ --enable-shout libshout output plugin (default disabled)]) -if test "${enable_shout}" = "yes"; then - PKG_CHECK_MODULES(SHOUT, shout >= 2.1, - [AC_DEFINE(HAVE_SHOUT, 1, [Define if you have the libshout library]) - VLC_ADD_PLUGIN([access_output_shout]) - VLC_ADD_LIBS([access_output_shout],[$SHOUT_LIBS]) - VLC_ADD_CFLAGS([access_output_shout],[$SHOUT_CFLAGS])], - [AC_MSG_WARN(libshout library not found)]) -fi - dnl Lua modules AC_ARG_ENABLE(lua, AS_HELP_STRING([--enable-lua],[lua playlist, metafetcher and interface @@ -1779,6 +1751,7 @@ AS_IF([test "${enable_libproxy}" != "no"], [ ]) ]) + dnl dnl VideoLAN manager dnl @@ -1812,20 +1785,7 @@ AS_IF([test "${enable_growl}" != "no"], [ dnl dnl Libnotify notification plugin dnl - -AC_ARG_ENABLE(notify, - [ --enable-notify libnotify notification plugin (default enabled)]) -AS_IF([test "${enable_notify}" != "no" -a "${SYS}" != "mingw32"], [ - PKG_CHECK_MODULES(NOTIFY, libnotify, - [ - VLC_ADD_PLUGIN([notify]) - VLC_ADD_CFLAGS(notify, [$NOTIFY_CFLAGS]) - VLC_ADD_LIBS(notify, [$NOTIFY_LIBS]) - ],[ - AS_IF([test "${enable_notify}" = "yes"],[ - AC_MSG_WARN( libnotify not found) ]) - ]) - ]) +PKG_ENABLE_MODULES_VLC([NOTIFY], [], [libnotify], [libnotify notification], [auto]) dnl dnl Audioscrobbler plugin @@ -1851,7 +1811,6 @@ AC_ARG_ENABLE(taglib, [AC_MSG_WARN(TagLib library not found)]) ]) - dnl dnl Input plugins dnl @@ -1990,158 +1949,11 @@ lternatively you can use --disable-live555 to disable the liveMedia plugin.]) fi dnl -dnl special access module for dc1394 input +dnl - special access module for dc1394 input +dnl - dv module: digital video module check for libraw1394 dnl -AC_ARG_ENABLE(dc1394, - [ --enable-dc1394 dc1394 access module (default disabled)]) -if test "${enable_dc1394}" = "yes" -then - AC_CHECK_HEADERS(libraw1394/raw1394.h, [ - AC_CHECK_LIB( raw1394, raw1394_get_nodecount, [ - AC_CHECK_HEADERS(libdc1394/dc1394_control.h , [ -dnl AC_CHECK_LIB( dc1394_control, dc1394_setup_capture, [ - VLC_ADD_PLUGIN([dc1394]) - VLC_ADD_LIBS([dc1394],[-ldc1394_control -lraw1394]) -dnl ], -dnl [ -dnl AC_MSG_ERROR([libdc1394 is mandatory for the dc1394 input module. try --disable-dc1394 or install this library]) -dnl ]) - ], - [ - AC_MSG_ERROR([libdc1394 is mandatory for the dc1394 input module. try --disable-dc1394 or install this library]) - ]) - ], - [ - AC_MSG_ERROR([libraw1394 is mandatory for the dc1394 input module. try --disable-dc1394 or install this library]) - ]) - ], - [ - AC_MSG_ERROR([libraw1394 is mandatory for the dc1394 input module. try --disable-dc1394 or install this library]) - ]) -fi - -dnl -dnl dv module: digital video module check for libraw1394 -dnl -AC_ARG_ENABLE(dv, -[ --enable-dv dv input module (default disabled)]) -if test "${enable_dv}" = "yes" -then - AC_ARG_WITH(dv-raw1394, - [ --with-dv-raw1394=PATH libraw1394 headers and libraries]) - AC_ARG_WITH(dv-raw1394-tree, - [ --with-dv-raw1394=PATH libraw1394 tree for static linking]) - - if test -z "${with_dv_raw1394}" -a "${with_dv_raw1394}" != "" - then - AC_MSG_CHECKING(for raw1394 headers in ${with_dv_raw1394}) - if test -f ${with_dv_raw1394}/include/libraw1394/raw1394.h - then - dnl Use ${with_dv_raw1394}/include/libraw1394/raw1394.h - AC_MSG_RESULT(yes) - VLC_ADD_PLUGIN([access_dv]) - VLC_ADD_LIBS([access_dv],[-L${with_dv_raw1394}/lib -lraw1394 -lpthread]) - VLC_ADD_CPPFLAGS([access_dv],[-I${with_dv_raw1394}/include]) - else - dnl No libraw1394 could be found, sorry - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot find ${with_dv_raw1394}/include/libraw1394/raw1394.h]) - fi - else - AC_CHECK_HEADERS(libraw1394/raw1394.h, - [ VLC_ADD_PLUGIN([access_dv]) - VLC_ADD_LIBS([access_dv],[-lraw1394 -lavc1394]) - ],[ - if test -n "${enable_dv}" - then - AC_MSG_ERROR([cannot find libraw1394 headers]) - fi - ]) - fi - - dnl Check for static linking of libraw1394 - if test -z "${with_dv_raw1394_tree}" -a "${with_dv_raw1394_tree}" != "" - then - AC_MSG_CHECKING(for libraw1394.a in ${with_dv_raw1394_tree}) - real_dv_raw1394_tree="`cd ${with_dv_raw1394_tree} 2>/dev/null && pwd`" - if test -z "${real_dv_raw1394_tree}" - then - dnl The given directory can't be found - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot cd to ${real_dv_raw1394_tree}]) - fi - if test -f "${real_dv_raw1394_tree}/src/.libs/libraw1394.a" - then - dnl Use a custom libraw1394 - AC_MSG_RESULT(${real_dv_raw1394_tree}/src/.libs/libraw1394.a) - VLC_ADD_PLUGIN([access_dv]) - VLC_ADD_LIBS([access_dv],[-L${real_dv_raw1394_tree}/src/.libs -lraw1394]) - VLC_ADD_CPPFLAGS([access_dv],[-I${real_dv_raw1394_tree}]) - else - dnl The given libraw1394 wasn't built - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot find ${real_dv_raw1394_tree}/src/.libs/libraw1394.a, make sure you compiled libraw1394 in ${with_dv_raw1394_tree}]) - fi - fi - - dnl - dnl Check for libavc1394 - dnl - - AC_ARG_WITH(dv-avc1394, - [ --with-dv-avc1394=PATH libavc1394 headers and libraries]) - AC_ARG_WITH(dv-avc1394-tree, - [ --with-dv-avc1394=PATH libavc1394 tree for static linking]) - - if test -z "${with_dv_avc1394}" -a "${with_dv_avc1394}" != "" - then - AC_MSG_CHECKING(for avc1394 headers in ${with_dv_avc1394}) - if test -f ${with_dv_avc1394}/include/libavc1394/avc1394.h - then - dnl Use ${with_dv_avc1394}/include/libavc1394/avc1394.h - AC_MSG_RESULT(yes) - VLC_ADD_LIBS([access_dv],[-L${with_dv_avc1394}/lib -lavc1394 -lrom1394 -lpthread]) - VLC_ADD_CPPFLAGS([access_dv],[-I${with_avc1394}/include]) - else - dnl No libavc1394 could be found, sorry - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot find ${with_dv_avc1394}/include/libavc1394/avc1394.h]) - fi - else - AC_CHECK_HEADERS(libavc1394/avc1394.h, - [ VLC_ADD_LIBS([access_dv],[-lavc1394 -lrom1394 -lpthread]) - ],[ - if test -n "${enable_dv}" - then - AC_MSG_ERROR([cannot find libavc1394 headers]) - fi - ]) - fi - - dnl Check for static linking of libavc1394 - if test -z "${with_dv_avc1394_tree}" -a "${with_dv_avc1394_tree}" != "" - then - AC_MSG_CHECKING(for libavc1394.a in ${with_dv_avc1394_tree}) - real_dv_avc1394_tree="`cd ${with_dv_avc1394_tree} 2>/dev/null && pwd`" - if test -z "${real_dv_avc1394_tree}" - then - dnl The given directory can't be found - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot cd to ${real_dv_avc1394_tree}]) - fi - if test -f "${real_dv_avc1394_tree}/src/.libs/libavc1394.a" - then - dnl Use a custom libavc1394 - AC_MSG_RESULT(${real_dv_avc1394_tree}/src/.libs/libavc1394.a) - VLC_ADD_LIBS([access_dv],[-L${real_dv_avc1394_tree}/src/.libs -lavc1394 -lrom1394 -lpthread]) - VLC_ADD_CPPFLAGS([access_dv],[-I${real_dv_avc1394_tree}]) - else - dnl The given libavc1394 wasn't built - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot find ${real_dv_avc1394_tree}/src/.libs/libavc1394.a, make sure you compiled libavc1394 in ${with_dv_avc1394_tree}]) - fi - fi -fi +PKG_ENABLE_MODULES_VLC([dc1394], [], [libraw1394 >= 2.0.1 libdc1394 >= 1.0.0], [dc1394 access module], [auto]) +PKG_ENABLE_MODULES_VLC([dv], [access_dv], [libraw1394 >= 2.0.1 libavc1394 >= 0.5.3], [DV input module], [auto]) dnl dnl dvdread module: check for libdvdread @@ -2306,11 +2118,11 @@ then 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 + else dnl No opencv could be found, sorry AC_MSG_RESULT(no) AC_MSG_ERROR([cannot find opencv in ${with_opencv_tree}]) - fi + fi else PKG_CHECK_MODULES(OPENCV, opencv, [ @@ -2338,9 +2150,6 @@ if test "${enable_smb}" != "no"; then [ if test -n "${enable_smb}"; then AC_MSG_ERROR([cannot find libsmbclient headers]) fi ]) - AC_CHECK_MEMBER([struct _SMBCCTX.close_fn], - AC_DEFINE([HAVE__SMBCCTX_CLOSE_FN], 1, [Define if samba has _SMBCCTX.close_fn]),, - [#include ]) fi dnl @@ -2533,17 +2342,8 @@ fi dnl dnl gnomeVFS access module dnl -AC_ARG_ENABLE(gnomevfs, - [ --enable-gnomevfs GnomeVFS access module (default disabled)]) -if test "${enable_gnomevfs}" = "yes" -then - PKG_CHECK_MODULES(GNOMEVFS, gnome-vfs-2.0, - VLC_ADD_LIBS([access_gnomevfs],[$GNOMEVFS_LIBS]) - VLC_ADD_CPPFLAGS([access_gnomevfs],[$GNOMEVFS_CPPFLAGS]) - VLC_ADD_CFLAGS([access_gnomevfs],[$GNOMEVFS_CFLAGS]) - VLC_ADD_PLUGIN([access_gnomevfs]), - AC_MSG_WARN([GnomeVFS support disabled because GnomeVFS development headers not found])) -fi +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, @@ -2779,47 +2579,18 @@ AC_CHECK_FUNCS(inet_ntop,[ dnl dnl ogg demux plugin dnl -AC_ARG_ENABLE(ogg, - [ --enable-ogg Ogg demux support (default enabled)]) -if test "${enable_ogg}" != "no" -then - AC_ARG_WITH(ogg-tree, - [ --with-ogg-tree=PATH ogg tree for static linking]) - if test -n "${with_ogg_tree}" - then - AC_MSG_CHECKING(for libogg.a in ${with_ogg_tree}) - real_ogg_tree="`cd ${with_ogg_tree} 2>/dev/null && pwd`" - if test -z "${real_ogg_tree}" - then - dnl The given directory can't be found - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot cd to ${with_ogg_tree}]) - fi - if test -f "${real_ogg_tree}/src/.libs/libogg.a" - then - dnl Use a custom ogg - AC_MSG_RESULT(${real_ogg_tree}/src/.libs/libogg.a) - VLC_ADD_PLUGIN([ogg]) - if test "${enable_sout}" != "no"; then - VLC_ADD_PLUGIN([mux_ogg]) - fi - VLC_ADD_LIBS([ogg mux_ogg speex vorbis],[${real_ogg_tree}/src/.libs/libogg.a]) - VLC_ADD_CFLAGS([ogg mux_ogg speex vorbis],[-I${real_ogg_tree}/include]) - else - dnl The given ogg wasn't built - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot find ${real_ogg_tree}/src/.libs/libogg.a, make sure you compiled ogg in ${with_ogg_tree}]) - fi - else - AC_CHECK_HEADERS(ogg/ogg.h, [ - AC_CHECK_LIB( ogg, oggpack_read, [ - VLC_ADD_PLUGIN([ogg]) - if test "${enable_sout}" != "no"; then - VLC_ADD_PLUGIN([mux_ogg]) - fi - VLC_ADD_LIBS([ogg mux_ogg],[-logg])]) - ],[]) - fi +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]) +else + AM_CONDITIONAL(HAVE_MUX_OGG, 0) +fi + +if test "${enable_sout}" != "no"; then +dnl Check for libshout +PKG_ENABLE_MODULES_VLC([shout], [access_output_shout], [shout >= 2.1], [libshout output plugin], [auto]) +else + AM_CONDITIONAL(HAVE_shout, 0) fi dnl @@ -2922,9 +2693,12 @@ AC_ARG_ENABLE(mpc, [ --enable-mpc Mpc demux support (default enabled)]) if test "${enable_mpc}" != "no" then - AC_CHECK_HEADERS(mpcdec/mpcdec.h, [ + AC_CHECK_HEADERS([mpc/mpcdec.h], [ + VLC_ADD_PLUGIN([mpc]) + VLC_ADD_LIBS([mpc],[-lmpcdec])], + [AC_CHECK_HEADERS([mpcdec/mpcdec.h], [ VLC_ADD_PLUGIN([mpc]) - VLC_ADD_LIBS([mpc],[-lmpcdec])]) + VLC_ADD_LIBS([mpc],[-lmpcdec])])]) fi dnl @@ -3076,7 +2850,7 @@ AC_ARG_ENABLE(avcodec, [ --enable-avcodec libavcodec codec (default enabled)]) if test "${enable_avcodec}" != "no" then - PKG_CHECK_MODULES(AVCODEC,[libavcodec libavutil], + PKG_CHECK_MODULES(AVCODEC,[libavcodec >= 51.48.0 libavutil], [ VLC_SAVE_FLAGS CPPFLAGS="${CPPFLAGS} ${AVCODEC_CFLAGS}" @@ -3087,11 +2861,27 @@ then VLC_ADD_LIBS([avcodec],[$AVCODEC_LIBS]) VLC_ADD_CFLAGS([avcodec],[$AVCODEC_CFLAGS]) VLC_RESTORE_FLAGS + have_avcodec="yes" ],[ - AC_MSG_FAILURE([Could not find libavcodec or libavutil. Use --disable-avcodec to ignore this error.]) + AC_MSG_ERROR([Could not find libavcodec or libavutil. Use --disable-avcodec to ignore this error.]) ]) fi +dnl +dnl stream_out switcher needs libavcodec +dnl +AC_ARG_ENABLE(switcher, + [ --enable-switcher Stream-out switcher plugin (default disabled)]) +AS_IF([test "${enable_switcher}" = "yes"], [ + AS_IF([test "x${have_avcodec}" = "xyes"], [ + VLC_ADD_PLUGIN([stream_out_switcher]) + VLC_ADD_LIBS([stream_out_switcher],[$AVCODEC_LIBS]) + VLC_ADD_CFLAGS([stream_out_switcher],[$AVCODEC_CFLAGS]) + ],[AC_MSG_ERROR([Stream_out switcher depends on avcodec]) + ]) +]) + + dnl dnl avformat demuxer/muxer plugin dnl @@ -3112,7 +2902,7 @@ then VLC_ADD_CFLAGS([avformat],[$AVFORMAT_CFLAGS]) VLC_RESTORE_FLAGS ],[ - AC_MSG_FAILURE([Could not find libavformat or libavutil. Use --disable-avformat to ignore this error.]) + AC_MSG_ERROR([Could not find libavformat or libavutil. Use --disable-avformat to ignore this error.]) ]) fi @@ -3136,49 +2926,7 @@ then VLC_ADD_CFLAGS([swscale],[$SWSCALE_CFLAGS]) VLC_RESTORE_FLAGS ],[ - AC_MSG_WARN([Could not find libswscale. Trying to enable imgresample.]) - enable_imgresample=yes - ]) -fi - -dnl -dnl avcodec (deprecated API) image scaling and conversion plugin -dnl -dnl This is build as a seperate module than the avcodec one to prevent -dnl stupid run time library load errors from disabling most codecs -dnl from VLC. -dnl - -AC_ARG_ENABLE(imgresample, - AS_HELP_STRING([--enable-imgresample],[deprecated libavcodec image scaling - and conversion (default disabled)])) -if test "${enable_imgresample}" = "yes" -then - PKG_CHECK_MODULES(IMGRESAMPLE,[libavcodec], - [ - VLC_SAVE_FLAGS - CPPFLAGS="${CPPFLAGS} ${IMGRESAMPLE_CFLAGS}" - CFLAGS="${CFLAGS} ${IMGRESAMPLE_CFLAGS}" - AC_CHECK_HEADERS(libavcodec/avcodec.h ffmpeg/avcodec.h) - AC_CHECK_LIB(avcodec,img_resample, - [ - VLC_ADD_PLUGIN([imgresample]) - VLC_ADD_LIBS([imgresample],[$IMGRESAMPLE_LIBS]) - VLC_ADD_CFLAGS([imgresample],[$IMGRESAMPLE_CFLAGS]) - ],[ - AC_MSG_WARN([Could not find img_resample in libavcodec.]) - if test "${enable_swscale}" != "no" - then - AC_MSG_FAILURE([swscale (and its fallback module imgresample) support will be missing. Use --disable-swscale to ignore this error. (This basically means that you will be missing any good software scaling module and some video chroma converters.)]) - fi - # That sed hack to add -rpath is kind of ugly but at least it fixes - # detection when linking against a shared libavcodec with - # a libavutil not in one of your ld.so.conf directories. - # (for example a local install) - ],[${IMGRESAMPLE_LIBS} `echo ${IMGRESAMPLE_LIBS}|sed s'/-L/-Wl,-rpath=/'`]) - VLC_RESTORE_FLAGS - ],[ - AC_MSG_WARN([Could not find libavcodec.]) + AC_MSG_ERROR([Could not find libswscale. Use --disable-swscale to ignore this error. Proper software scaling and some video chroma conversion will be missing.]) ]) fi @@ -3201,7 +2949,7 @@ then VLC_ADD_CFLAGS([postproc],[$POSTPROC_CFLAGS]) VLC_RESTORE_FLAGS ],[ - AC_MSG_ERROR([Could not find libpostproc.]) + AC_MSG_ERROR([Could not find libpostproc. Use --disable-postproc to ignore this error.]) ]) fi @@ -3256,57 +3004,14 @@ fi dnl dnl twolame encoder plugin dnl -AC_ARG_ENABLE(twolame, -[ --enable-twolame twolame codec (default disabled)]) -if test "${enable_twolame}" = "yes" -then - AC_ARG_WITH(twolame-tree, - [ --with-twolame-tree=PATH twolame tree for static linking]) - if test -n "${with_twolame_tree}" - then - AC_MSG_CHECKING(for libtwolame.a in ${with_twolame_tree}) - real_twolame_tree="`cd ${with_twolame_tree} 2>/dev/null && pwd`" - if test -z "${real_twolame_tree}" - then - dnl The given directory can't be found - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot cd to ${with_twolame_tree}]) - fi - if test -f "${real_twolame_tree}/libtwolame/.libs/libtwolame.a" - then - dnl Use a custom twolame - AC_MSG_RESULT(${real_twolame_tree}/libtwolame/.libs/libtwolame.a) - VLC_ADD_PLUGIN([twolame]) - VLC_ADD_LIBS([twolame],[${real_twolame_tree}/libtwolame/.libs/libtwolame.a]) - VLC_ADD_CPPFLAGS([twolame],[-I${real_twolame_tree}/libtwolame -DLIBTWOLAME_STATIC]) - else - dnl The given libtwolame wasn't built - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot find ${real_twolame_tree}/libtwolame/.libs/libtwolame.a, make sure you compiled libtwolame in ${with_twolame_tree}]) - fi - else - CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_twolame} -DLIBTWOLAME_STATIC" - LDFLAGS="${LDFLAGS_save} ${LIBS_twolame}" - AC_CHECK_HEADERS(twolame.h, , - [ AC_MSG_ERROR([Cannot find development header for libtwolame...]) ]) - AC_CHECK_LIB(twolame, twolame_init, [ - VLC_ADD_PLUGIN([twolame]) - VLC_ADD_CPPFLAGS([twolame],[-DLIBTWOLAME_STATIC]) - VLC_ADD_LIBS([twolame],[-ltwolame]) ], - [ AC_MSG_ERROR([Cannot find libtwolame library...]) ]) - LDFLAGS="${LDFLAGS_save}" - CPPFLAGS="${CPPFLAGS_save}" - fi -fi +PKG_ENABLE_MODULES_VLC([twolame], [], [twolame], [MPEG Audio Layer 2 encoder], [auto], [], [], [ -DLIBTWOLAME_STATIC]) dnl dnl QuickTime plugin dnl AC_ARG_ENABLE(quicktime, - [ --enable-quicktime QuickTime module (default enabled on MacOS X)]) -if test "${enable_quicktime}" != "no" && - (test "${SYS}" = "darwin" || test "${enable_quicktime}" = "yes") -then + [ --enable-quicktime QuickTime module (deprecated)]) +if test "${enable_quicktime}" = "yes"; then if test "${SYS}" = "mingw32"; then VLC_ADD_PLUGIN([quicktime]) else @@ -3440,169 +3145,22 @@ dnl AS_IF([test "x${enable_dts}" != "x"], [ AC_MSG_ERROR([--enable-dts is obsolete. Please use libdca and --enable-dca.]) ]) -AS_IF([test "x${with_dts_tree}" != "x"], [ - AC_MSG_ERROR([--with-dts-tree is obsolete. Please use libdca and --with-dca-tree.]) -]) - -AC_ARG_ENABLE(dca, - AS_HELP_STRING([--enable-dca],[DTS Coherent Acoustics support with libdca - (default enabled)])) -AS_IF([test "${enable_dca}" != "no"], [ - AC_ARG_WITH(dca-tree, - [ --with-dca-tree=PATH libdca tree for static linking],, - [with_dca_tree="no"]) - AS_IF([test "${with_dca_tree}" != "no"], [ - real_dca_tree="`cd ${with_dca_tree} 2>/dev/null && pwd`" - AS_IF([test -z "${real_dca_tree}"], [ - dnl The given directory can't be found - AC_MSG_RESULT(no) - AC_MSG_ERROR([${with_dca_tree} directory doesn't exist]) - ]) - dnl Use a custom libdca - AC_MSG_CHECKING(for libdca in ${real_dca_tree}) - AS_IF([test -f "${real_dca_tree}/libdca/.libs/libdca.a"], [ - AC_MSG_RESULT(yes) - VLC_ADD_LIBS([dtstofloat32],[${real_dca_tree}/libdca/.libs/libdca.a]) - AS_IF([test -f "${real_dca_tree}/include/dca.h"], [ - VLC_ADD_CPPFLAGS([dtstofloat32],[-I${real_dca_tree}/include]) - ], [ - VLC_ADD_CPPFLAGS([dtstofloat32],[-I${real_dca_tree}/../include]) - ]) - ], [ - AC_MSG_RESULT(no) - AC_MSG_ERROR([the specified tree doesn't have libdca/.libs/libdca.a]) - ]) - ], [ - PKG_CHECK_MODULES([DCA], [libdca >= 0.0.5], [ - VLC_ADD_PLUGIN([dtstofloat32]) - VLC_ADD_CPPFLAGS([dtstofloat32], [${DCA_CFLAGS}]) - VLC_ADD_LIBS([dtstofloat32], [${DCA_LIBS}]) - ], [ - AS_IF([test "x${enable_dca}" != "x"], [ - AC_MSG_ERROR([${DCA_PKG_ERRORS}]) - ]) - ]) - ]) -]) +PKG_ENABLE_MODULES_VLC([DCA], [dtstofloat32], [libdca >= 0.0.5], [DTS Coherent Acoustics support with libdca], [auto]) dnl dnl Flac plugin dnl -AC_ARG_ENABLE(flac, - [ --enable-flac libflac decoder/encoder support (default disabled)]) -if test "${enable_flac}" = "yes" -then - AC_ARG_WITH(flac-tree, - [ --with-flac-tree=PATH flac tree for static linking]) - if test -n "${with_flac_tree}" - then - AC_MSG_CHECKING(for libFLAC.a in ${with_flac_tree}) - real_flac_tree="`cd ${with_flac_tree} 2>/dev/null && pwd`" - if test -z "${real_flac_tree}" - then - dnl The given directory can't be found - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot cd to ${with_flac_tree}]) - fi - if test -f "${real_flac_tree}/src/libFLAC/.libs/libFLAC.a" - then - dnl Use a custom flac - AC_MSG_RESULT(${real_flac_tree}/src/libFLAC/.libs/libFLAC.a) - VLC_ADD_LIBS([flac],[${real_flac_tree}/src/libFLAC/.libs/libFLAC.a]) - VLC_ADD_CFLAGS([flac],[-I${real_flac_tree}/include]) - AC_DEFINE(HAVE_FLAC_STREAM_DECODER_H, 1, [Define if you have FLAC]) - else - dnl The given flac wasn't built - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot find ${real_flac_tree}/src/libFLAC/.libs/libFLAC.a, make sure you compiled flac in ${with_flac_tree}]) - fi - else - AC_CHECK_HEADERS(FLAC/stream_decoder.h, [ - VLC_ADD_LIBS([flac],[-lFLAC -logg]) - ],[]) - fi -fi +PKG_ENABLE_MODULES_VLC([FLAC], [], [flac], [libflac decoder/encoder support], [auto]) dnl dnl Libmpeg2 plugin dnl -AC_ARG_ENABLE(libmpeg2, - [ --enable-libmpeg2 libmpeg2 decoder support (default enabled)]) -if test "${enable_libmpeg2}" != "no" -then - AC_ARG_WITH(libmpeg2-tree, - [ --with-libmpeg2-tree=PATH libmpeg2 tree for static linking]) - AS_IF([test -n "${with_libmpeg2_tree}"],[ - AC_MSG_CHECKING(for libmpeg2.a in ${with_libmpeg2_tree}) - real_libmpeg2_tree="`cd ${with_libmpeg2_tree} 2>/dev/null && pwd`" - if test -z "${real_libmpeg2_tree}" - then - dnl The given directory can't be found - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot cd to ${with_libmpeg2_tree}]) - fi - if test -f "${real_libmpeg2_tree}/libmpeg2/.libs/libmpeg2.a" - then - dnl Use a custom libmpeg2 - AC_MSG_RESULT(${real_libmpeg2_tree}/libmpeg2/.libs/libmpeg2.a) - VLC_ADD_PLUGIN([libmpeg2]) - VLC_ADD_LIBS([libmpeg2],[-L${real_libmpeg2_tree}/libmpeg2/.libs -lmpeg2]) - VLC_ADD_CFLAGS([libmpeg2],[-I${real_libmpeg2_tree}/include]) - else - dnl The given libmpeg2 wasn't built - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot find ${real_libmpeg2_tree}/libmpeg2/.libs/libmpeg2.a, make sure you compiled libmpeg2 in ${with_libmpeg2_tree}]) - fi - ],[ - PKG_CHECK_MODULES(LIBMPEG2,[libmpeg2 > 0.3.2],[ - VLC_ADD_PLUGIN([libmpeg2]) - VLC_ADD_LIBS([libmpeg2], $LIBMPEG2_LIBS) - VLC_ADD_CFLAGS([libmpeg2], $LIBMPEG2_CFLAGS) - ], - AC_MSG_WARN([Could not find libmpeg2 on your system: you may get it from http://libmpeg2.sf.net/ . Alternatively you can use --disable-libmpeg2 to disable the libmpeg2 plugin.])) - ]) -fi +PKG_ENABLE_MODULES_VLC([LIBMPEG2], [], [libmpeg2 > 0.3.2], [libmpeg2 decoder support], [auto]) dnl dnl Vorbis plugin dnl -AC_ARG_ENABLE(vorbis, - [ --enable-vorbis Vorbis decoder support (default enabled)]) -if test "${enable_vorbis}" != "no" -then - AC_ARG_WITH(vorbis-tree, - [ --with-vorbis-tree=PATH vorbis tree for static linking]) - if test -n "${with_vorbis_tree}" - then - AC_MSG_CHECKING(for libvorbis.a in ${with_vorbis_tree}) - real_vorbis_tree="`cd ${with_vorbis_tree} 2>/dev/null && pwd`" - if test -z "${real_vorbis_tree}" - then - dnl The given directory can't be found - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot cd to ${with_vorbis_tree}]) - fi - if test -f "${real_vorbis_tree}/lib/.libs/libvorbis.a" - then - dnl Use a custom vorbis - AC_MSG_RESULT(${real_vorbis_tree}/lib/.libs/libvorbis.a) - VLC_ADD_PLUGIN([vorbis]) - VLC_ADD_LIBS([vorbis],[${real_vorbis_tree}/lib/.libs/libvorbis.a ${real_vorbis_tree}/lib/.libs/libvorbisenc.a]) - VLC_ADD_CFLAGS([vorbis],[-I${real_vorbis_tree}/include]) - else - dnl The given vorbis wasn't built - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot find ${real_vorbis_tree}/lib/.libs/libvorbis.a, make sure you compiled vorbis in ${with_vorbis_tree}]) - fi - else - AC_CHECK_HEADERS(vorbis/codec.h, [ - VLC_ADD_PLUGIN([vorbis]) - VLC_ADD_LIBS([vorbis],[-lvorbis -logg -lm]) ],[]) - - AC_CHECK_HEADERS(vorbis/vorbisenc.h, [ - VLC_ADD_LIBS([vorbis],[-lvorbisenc -lm]) ],[]) - fi -fi +PKG_ENABLE_MODULES_VLC([VORBIS], [], [ogg vorbis >= 1.1 vorbisenc >= 1.1], [Vorbis decoder and encoder], [auto]) dnl dnl Tremor plugin @@ -3620,47 +3178,7 @@ fi dnl dnl Speex plugin dnl -AC_ARG_ENABLE(speex, - [ --enable-speex Speex decoder support (default enabled)]) -if test "${enable_speex}" != "no" -then - AC_ARG_WITH(speex-tree, - [ --with-speex-tree=PATH speex tree for static linking]) - if test -n "${with_speex_tree}" - then - AC_MSG_CHECKING(for libspeex.a in ${with_speex_tree}) - real_speex_tree="`cd ${with_speex_tree} 2>/dev/null && pwd`" - if test -z "${real_speex_tree}" - then - dnl The given directory can't be found - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot cd to ${with_speex_tree}]) - fi - if test -f "${real_speex_tree}/libspeex/.libs/libspeex.a" - then - dnl Use a custom speex - AC_MSG_RESULT(${real_speex_tree}/libspeex/.libs/libspeex.a) - VLC_ADD_PLUGIN([speex]) - VLC_ADD_LIBS([speex],[${real_speex_tree}/libspeex/.libs/libspeex.a]) - VLC_ADD_CFLAGS([speex],[-I${real_speex_tree}/include]) - else - dnl The given speex wasn't built - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot find ${real_speex_tree}/libspeex/.libs/libspeex.a, make sure you compiled speex in ${with_speex_tree}]) - fi - else - AC_CHECK_HEADERS(speex/speex.h, [ - LDFLAGS="${LDFLAGS_save} ${LIBS_speex}" - AC_CHECK_LIB(speex, speex_decode_int, [ - VLC_ADD_PLUGIN([speex]) - VLC_ADD_LIBS([speex],[-lspeex]) ], - [ AC_MSG_RESULT([no]) - AC_MSG_WARN([Your libspeex is too old, please get the development - version.]) ],[]) - LDFLAGS="${LDFLAGS_save}" - ],[]) - fi -fi +PKG_ENABLE_MODULES_VLC([SPEEX], [], [ogg speex >= 1.0.5], [Speex decoder support], [auto]) dnl dnl tarkin decoder plugin @@ -3693,50 +3211,17 @@ fi dnl dnl theora decoder plugin dnl -AC_ARG_ENABLE(theora, -[ --enable-theora experimental theora codec (default disabled)]) -if test "${enable_theora}" = "yes" -then - AC_CHECK_HEADERS(theora/theora.h, [ - AC_CHECK_LIB(theora, theora_granule_time, [ - VLC_ADD_PLUGIN([theora]) - theora_libs="-ltheora -logg" - VLC_ADD_LIBS([theora],[${theora_libs}]) ],[ - AC_MSG_ERROR([libtheora doesn't appear to be installed on your system. -You also need to check that you have a libogg posterior to the 1.0 release.])], - [-logg]) - ]) -fi +PKG_ENABLE_MODULES_VLC([THEORA], [], [ogg theora >= 1.0], [experimental theora codec], [auto]) dnl -dnl dirac decoder plugin +dnl dirac encoder plugin dnl -AC_ARG_ENABLE(dirac, -[ --enable-dirac experimental dirac codec (default disabled)]) -if test "${enable_dirac}" = "yes"; then - PKG_CHECK_MODULES(DIRAC,[dirac >= 0.10.0], [ - VLC_ADD_PLUGIN([dirac]) - VLC_ADD_CFLAGS([dirac],[$DIRAC_CFLAGS]) - VLC_ADD_LIBS([dirac],[$DIRAC_LIBS -lstdc++]) ],[ - AC_MSG_ERROR([libdirac >= 0.10.0 doesn't appear to be installed on your system.]) - ]) -fi +PKG_ENABLE_MODULES_VLC([DIRAC], [], [dirac >= 0.10.0], [dirac encoder], [auto]) dnl dnl schroedinger decoder plugin (for dirac format video) dnl -AC_ARG_ENABLE(schroedinger, -[ --disable-schroedinger high performance dirac codec (default enabled)]) -if test "${enable_schroedinger}" != "no"; then - PKG_CHECK_MODULES(SCHROEDINGER,[schroedinger-1.0 >= 1.0.6], [ - VLC_ADD_PLUGIN([schroedinger]) - VLC_ADD_CFLAGS([schroedinger],[$SCHROEDINGER_CFLAGS]) - VLC_ADD_LIBS([schroedinger],[$SCHROEDINGER_LIBS]) ], [ - AS_IF([test "x${enable_schroedinger}" != "x"], [ - AC_MSG_ERROR([${SCHROEDINGER_PKG_ERRORS}]) - ]) -]) -fi +PKG_ENABLE_MODULES_VLC([SCHROEDINGER], [], [schroedinger-1.0 >= 1.0.6], [dirac decoder using schroedinger], [auto]) dnl dnl PNG decoder module @@ -3828,19 +3313,7 @@ fi dnl dnl libfluidsynth (MIDI synthetizer) plugin dnl -AC_ARG_ENABLE(fluidsynth, - [ --enable-fluidsynth MIDI synthesisr with libfluidsynth (default enabled)]) -AS_IF([test "x${enable_fluidsynth}" != "xno"], [ - PKG_CHECK_MODULES(FLUIDSYNTH, fluidsynth, [ - VLC_ADD_PLUGIN(fluidsynth) - VLC_ADD_CFLAGS(fluidsynth, [${FLUIDSYNTH_CFLAGS}]) - VLC_ADD_LIBS(fluidsynth, [${FLUIDSYNTH_LIBS}]) - ], [ - AS_IF([test "x${enable_fluidsynth}" != "x"], [ - AC_MSG_ERROR([${FLUIDSYNTH_PKG_ERRORS}]) - ]) - ]) -]) +PKG_ENABLE_MODULES_VLC([FLUIDSYNTH], [], [fluidsynth], [MIDI synthetiser with libfluidsynth], [auto]) dnl dnl Teletext Modules @@ -3850,55 +3323,41 @@ dnl uncompatible dnl AC_ARG_ENABLE(zvbi, AS_HELP_STRING([--enable-zvbi],[VBI (inc. Teletext) decoding support with - libzvbi (default enabled)])) + libzvbi (default enabled)])) AC_ARG_ENABLE(telx, AS_HELP_STRING([--enable-telx],[Teletext decoding module (conflicting with - zvbi) (default enabled if zvbi is absent)])) + zvbi) (default enabled if zvbi is absent)])) AS_IF( [test "${enable_zvbi}" != "no"],[ PKG_CHECK_MODULES(ZVBI, - zvbi-0.2 >= 0.2.25, - [ - VLC_ADD_LIBS([zvbi],[$ZVBI_LIBS]) - VLC_ADD_CFLAGS([zvbi],[$ZVBI_CFLAGS]) + zvbi-0.2 >= 0.2.25, + [ + VLC_ADD_LIBS([zvbi],[$ZVBI_LIBS]) + if test "${SYS}" = "mingw32"; then + VLC_ADD_LIBS([zvbi],[ -lpthreadGC2]) + fi + VLC_ADD_CFLAGS([zvbi],[$ZVBI_CFLAGS]) VLC_ADD_PLUGIN([zvbi]) - AC_DEFINE(ZVBI_COMPILED, 1, [Define if the zvbi module is built]) - AS_IF( [test "${enable_telx}" = "yes"],[ - AC_MSG_WARN([The zvbi and telx modules are uncompatibles. - Using zvbi.]) - ]) - ],[ - AC_MSG_WARN(ZVBI library not found. Enabling the telx module instead) - ]) + AC_DEFINE(ZVBI_COMPILED, 1, [Define if the zvbi module is built]) + AS_IF( [test "${enable_telx}" = "yes"],[ + AC_MSG_WARN([The zvbi and telx modules are uncompatibles. + Using zvbi.]) + ]) + ],[ + AC_MSG_WARN(ZVBI library not found. Enabling the telx module instead) + ]) ]) AS_IF( [test "${enable_telx}" != "no" ],[ VLC_ADD_PLUGIN([telx]) ]) -dnl -dnl asa/csri subtitle rendering module -dnl -AC_ARG_ENABLE(csri, - [ --enable-csri Subtitle support using CSRI / asa (default disabled)]) -AS_IF( [test "${enable_csri}" = "yes"], [ - PKG_CHECK_MODULES(CSRI, - csri >= 0.1.0, - [ - VLC_ADD_LDFLAGS([csri],[$CSRI_LIBS]) - VLC_ADD_CFLAGS([csri],[$CSRI_CFLAGS]) - VLC_ADD_PLUGIN([csri]) - ],[ - AC_MSG_WARN([CSRI helper library not found]) - ]) - ]) - dnl dnl libass subtitle rendering module dnl AC_ARG_ENABLE(libass, [ --enable-libass Subtitle support using libass (default disabled)]) AS_IF( [test "${enable_libass}" = "yes"], [ - PKG_CHECK_MODULES(LIBASS, libass >= 0.9.5, + PKG_CHECK_MODULES(LIBASS, libass >= 0.9.6, [ VLC_ADD_LDFLAGS([libass],[$LIBASS_LIBS]) VLC_ADD_CFLAGS([libass],[$LIBASS_CFLAGS]) @@ -3907,7 +3366,7 @@ AS_IF( [test "${enable_libass}" = "yes"], [ AC_CHECK_HEADERS(fontconfig/fontconfig.h, [VLC_ADD_CPPFLAGS([libass],[-DHAVE_FONTCONFIG]) if test "${SYS}" = "mingw32"; then - VLC_ADD_LIBS([libass],[-lfontconfig -lfreetype -liconv -lz -lxml2]) + VLC_ADD_LIBS([libass],[-lfontconfig -lfreetype -liconv -lz]) else VLC_ADD_LIBS([libass],[-lfontconfig]) fi @@ -3928,8 +3387,8 @@ AS_IF( [test "${enable_asademux}" = "yes"], [ [ VLC_ADD_LDFLAGS([asademux],[$PCRE_LIBS]) VLC_ADD_CFLAGS([asademux],[$PCRE_CFLAGS]) - if test "${SYS}" = "mingw32"; then - VLC_ADD_CPPFLAGS([asademux],[-DPCRE_STATIC]) + if test "${SYS}" = "mingw32"; then + VLC_ADD_CPPFLAGS([asademux],[-DPCRE_STATIC]) fi VLC_ADD_PLUGIN([asademux]) ],[ @@ -3980,18 +3439,7 @@ AS_IF([test "${enable_kate}" != "no"], [ dnl dnl tiger decoder plugin dnl -AC_ARG_ENABLE(tiger, -[ --enable-tiger Tiger rendering library for Kate streams (default enabled)]) -AS_IF([test "${enable_tiger}" != "no"], [ - PKG_CHECK_MODULES(TIGER,[tiger >= 0.3.1], [ - AC_DEFINE(HAVE_TIGER, 1, [Define if libtiger is available.]) - VLC_ADD_CFLAGS([kate],[$TIGER_CFLAGS]) - VLC_ADD_LIBS([kate],[$TIGER_LIBS]) ],[ - AS_IF([test "x${enable_tiger}" != "x"], [ - AC_MSG_ERROR([libtiger does not appear to be installed on your system.]) - ]) - ]) -]) +PKG_ENABLE_MODULES_VLC([TIGER], [], [tiger >= 0.3.1], [Tiger rendering library for Kate streams],[auto]) dnl @@ -4006,7 +3454,7 @@ dnl AC_PATH_XTRA() AC_ARG_ENABLE(x11, - [ --enable-x11 X11 support (default enabled)],, [ + [ --enable-x11 X11 support with Xlib (default enabled)],, [ AS_IF([test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"], [ enable_x11="yes" ], [ @@ -4017,21 +3465,7 @@ AC_ARG_ENABLE(x11, CPPFLAGS="${CPPFLAGS_save} ${X_CFLAGS}" AS_IF([test "${enable_x11}" != "no"], [ - AC_CHECK_HEADERS(X11/Xlib.h, [ - VLC_ADD_PLUGIN([x11_screen]) - VLC_ADD_CPPFLAGS([x11_screen],[${X_CFLAGS}]) - VLC_ADD_LIBS([x11_screen],[${X_LIBS} ${X_PRE_LIBS} -lX11]) - - VLC_ADD_PLUGIN([panoramix]) - VLC_ADD_LIBS([panoramix],[${X_LIBS} ${X_PRE_LIBS} -lX11]) - VLC_ADD_CPPFLAGS([panoramix],[${X_CFLAGS}]) - - VLC_ADD_PLUGIN([x11]) - VLC_ADD_LIBS([x11],[${X_LIBS} ${X_PRE_LIBS} -lX11]) - VLC_ADD_CPPFLAGS([x11],[${X_CFLAGS}]) - - AC_CHECK_LIB(Xext, XShmAttach, [VLC_ADD_LIBS([x11],[-lXext])]) - ]) + AC_CHECK_HEADERS(X11/Xlib.h) dnl Check for DPMS AC_CHECK_HEADERS(X11/extensions/dpms.h, [ @@ -4048,26 +3482,6 @@ dnl Check for DPMS ]) ]) -dnl -dnl XVideo module -dnl (enabled by default except on win32) -dnl -AC_ARG_ENABLE(xvideo, - [ --enable-xvideo XVideo support (default enabled)],, [ - enable_xvideo="$enable_x11" -]) -AS_IF([test "${enable_xvideo}" != "no"], [ - AC_CHECK_HEADERS(X11/extensions/Xv.h, [ - CFLAGS="${CFLAGS_save} ${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext" - AC_CHECK_LIB(Xv,XvPutImage,[ - VLC_ADD_PLUGIN([xvideo]) - VLC_ADD_CPPFLAGS([xvideo],[${X_CFLAGS}]) - VLC_ADD_LIBS([xvideo],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext -lXv]) - ]) - CFLAGS="${CFLAGS_save}" - ]) -]) - dnl dnl GLX module dnl (enabled by default except on win32) @@ -4094,75 +3508,17 @@ dnl XVMC module dnl (disabled by default except on win32) dnl AC_ARG_ENABLE(xvmc, - [ --enable-xvmc XVMC support (default disabled)],, [ + [ --enable-xvmc XvMC support (default disabled)],, [ enable_xvmc="no" ]) AS_IF([test "${enable_xvmc}" != "no"], [ AC_CHECK_HEADERS(X11/extensions/vldXvMC.h, [ VLC_ADD_PLUGIN([xvmc]) - VLC_ADD_LIBS([xvmc],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext -lXvMCW -lXv -lXinerama]) - VLC_ADD_CPPFLAGS([xvmc],[${X_CFLAGS}]) - ]) -]) - -dnl -dnl Check for the Xinerama extension -dnl -AC_ARG_ENABLE(xinerama, - [ --enable-xinerama Xinerama support (default enabled)],, [ - enable_xinerama="$enable_xvideo" -]) -AS_IF([test "$enable_xinerama" != "no"], [ - ac_cv_have_xinerama="no" - CFLAGS="${CFLAGS_save} ${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext" - AC_CHECK_HEADERS(X11/extensions/Xinerama.h,[ - AC_CHECK_LIB(Xinerama_pic, XineramaQueryExtension,[ - VLC_ADD_LIBS([xvideo],[-lXinerama_pic]) - VLC_ADD_LIBS([x11],[-lXinerama_pic]) - VLC_ADD_LIBS([glx],[-lXinerama_pic]) - ac_cv_have_xinerama="yes" - ],[ - AC_CHECK_LIB(Xinerama, XineramaQueryExtension,[ - VLC_ADD_LIBS([xvideo],[-lXinerama]) - VLC_ADD_LIBS([x11],[-lXinerama]) - VLC_ADD_LIBS([glx],[-lXinerama]) - ac_cv_have_xinerama="yes" - ]) - ]) - ]) - if test "${ac_cv_have_xinerama}" = "yes"; then - AC_DEFINE(HAVE_XINERAMA, 1, [Define this if you have libXinerama installed]) - fi - -dnl -dnl Check for XF86VidMode extension -dnl - ac_cv_have_xf86vidmode="no" - AC_CHECK_HEADERS(X11/extensions/xf86vmode.h,[ - AC_CHECK_LIB(Xxf86vm_pic, XF86VidModeGetViewPort,[ - VLC_ADD_LIBS([xvideo],[-lXxf86vm_pic]) - VLC_ADD_LIBS([x11],[-lXxf86vm_pic]) - VLC_ADD_LIBS([glx],[-lXxf86vm_pic]) - VLC_ADD_LIBS([xvmc],[-lXxf86vm_pic]) - ac_cv_have_xf86vidmode="yes" - ],[ - AC_CHECK_LIB(Xxf86vm, XF86VidModeGetViewPort,[ - VLC_ADD_LIBS([xvideo],[-lXxf86vm]) - VLC_ADD_LIBS([x11],[-lXxf86vm]) - VLC_ADD_LIBS([glx],[-lXxf86vm]) - VLC_ADD_LIBS([xvmc],[-lXxf86vm]) - ac_cv_have_xf86vidmode="yes" - ]) - ]) - ],[true], -[#ifdef HAVE_X11_XLIB_H -# include -#endif] - ) - AS_IF([test "${ac_cv_have_xf86vidmode}" = "yes"], - [AC_DEFINE(HAVE_XF86VIDMODE, 1, [Define this if you have libXxf86vm installed]) + VLC_ADD_LIBS([xvmc],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext -lXvMCW -lXv ${LIBMPEG2_LIBS}]) + VLC_ADD_CPPFLAGS([xvmc],[${X_CFLAGS} ${LIBMPEG2_CFLAGS}]) + ], [ + AC_MSG_ERROR([XVideo-MotionCompensation extension not found!]) ]) - CFLAGS="${CFLAGS_save}" ]) dnl End of Xlib tests @@ -4171,27 +3527,56 @@ CPPFLAGS="${CPPFLAGS_save}" dnl dnl X C Bindings modules -dnl (work in progress) dnl AC_ARG_ENABLE(xcb, - [ --enable-xcb X C Bindings work-in-progress (default disabled)], - ,[enable_xcb="no"]) + [ --enable-xcb X11 support with XCB (default enabled)],, [ + AS_IF([test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"], [ + enable_xcb="yes" + ], [ + enable_xcb="no" + ]) +]) +AC_ARG_ENABLE(xvideo, + [ --enable-xvideo XVideo support (default enabled)],, [ + enable_xvideo="$enable_xcb" +]) + AS_IF([test "${enable_xcb}" != "no"], [ PKG_CHECK_MODULES(XPROTO, [xproto]) dnl libxcb PKG_CHECK_MODULES(XCB, [xcb]) PKG_CHECK_MODULES(XCB_SHM, [xcb-shm]) + VLC_ADD_PLUGIN([xcb_x11]) + VLC_ADD_PLUGIN([xcb_screen]) + + AS_IF([test "${enable_xvideo}" != "no"], [ + PKG_CHECK_MODULES(XCB_XV, [xcb-xv >= 1.1.90.1], [ + VLC_ADD_PLUGIN([xcb_xv]) + ], [ + PKG_CHECK_MODULES(XCB_XV, [xcb-xv], [ + VLC_ADD_PLUGIN([xcb_xv]) + VLC_ADD_CFLAGS([xcb_xv], [-DXCB_XV_OLD]) + ]) + ]) + ]) + + PKG_CHECK_MODULES(XCB_RANDR, [xcb-randr >= 1.3], [ + VLC_ADD_PLUGIN([panoramix]) + VLC_ADD_LIBS([panoramix],[${XCB_RANDR_LIBS} ${XCB_LIBS}]) + VLC_ADD_CFLAGS([panoramix],[${XCB_RANDR_CFLAGS} ${XCB_CFLAGS}]) + ], [true]) dnl xcb-utils - PKG_CHECK_MODULES(XCB_AUX, [xcb-aux]) - PKG_CHECK_MODULES(XCB_IMAGE, [xcb-image]) PKG_CHECK_MODULES(XCB_KEYSYMS, [xcb-keysyms]) - VLC_ADD_PLUGIN([xcb]) VLC_ADD_PLUGIN([xcb_window]) + VLC_ADD_PLUGIN([globalhotkeys]) + VLC_ADD_CFLAGS([globalhotkeys],[${XCB_KEYSYMS_CFLAGS} ${XCB_CFLAGS}] ) + VLC_ADD_LIBS([globalhotkeys],[${XCB_KEYSYMS_LIBS} ${XCB_LIBS}] ) ]) + dnl dnl OpenGL module dnl (enabled by default except on beos) @@ -4262,7 +3647,7 @@ then if test "${SDL_CONFIG}" != "no" then # SDL on Darwin is heavily patched and can only run SDL_image - if test "${SYS}" != "darwin" -a "${SYS}" != "mingw32"; then + if test "${SYS}" != "darwin"; then VLC_ADD_PLUGIN([vout_sdl]) VLC_ADD_PLUGIN([aout_sdl]) fi @@ -4325,11 +3710,10 @@ then VLC_ADD_PLUGIN([freetype]) have_freetype=yes VLC_ADD_CPPFLAGS([freetype skins2],[${FREETYPE_CFLAGS}]) - VLC_ADD_LIBS([freetype skins2],[${FREETYPE_LIBS}]) if test "${SYS}" = "mingw32"; then - VLC_ADD_LIBS([freetype skins2],[-lxml2]) - VLC_ADD_LIBS([freetype],[-liconv]) + VLC_ADD_LIBS([freetype],[-liconv -lz]) fi + VLC_ADD_LIBS([freetype skins2],[${FREETYPE_LIBS}]) if test "${enable_fontconfig}" != "no" then AC_CHECK_HEADERS(fontconfig/fontconfig.h, @@ -4338,6 +3722,16 @@ then AC_CHECK_HEADERS(Carbon/Carbon.h, [VLC_ADD_LDFLAGS([freetype],[-Wl,-framework,Carbon])]) fi + + dnl fribidi support + if test "${enable_fribidi}" != "no" + then + PKG_CHECK_MODULES(FRIBIDI, fribidi, [ + VLC_ADD_CPPFLAGS([freetype skins2], [${FRIBIDI_CFLAGS} -DHAVE_FRIBIDI]) + VLC_ADD_LIBS([freetype skins2], [${FRIBIDI_LIBS}]) + ]) + fi + ],[ have_freetype=no AS_IF([ test "${enable_freetype}" = "yes"],[ @@ -4347,48 +3741,17 @@ from http://www.freetype.org/, or configure with --disable-freetype. Have a nice ]) ]) - dnl fribidi support - if test "${enable_fribidi}" != "no" - then - PKG_CHECK_MODULES(FRIBIDI, fribidi, [ - VLC_ADD_CPPFLAGS([freetype skins2], [${FRIBIDI_CFLAGS} -DHAVE_FRIBIDI]) - VLC_ADD_LIBS([freetype skins2], [${FRIBIDI_LIBS}]) - ]) - fi fi dnl dnl libxml2 module dnl -AC_ARG_ENABLE(libxml2, - [ --enable-libxml2 libxml2 support (default enabled)]) -AS_IF([test "${enable_libxml2}" != "no"], [ - PKG_CHECK_MODULES([XML2], [libxml-2.0 >= 2.5], [ - VLC_ADD_CPPFLAGS([xml],[${XML2_CFLAGS}]) - VLC_ADD_LIBS([xml],[${XML2_LIBS}]) - VLC_ADD_PLUGIN([xml]) - ], [ - AS_IF([test "x${enable_xml2}" != "x"], [ - AC_MSG_ERROR([Could not find libxml version 2.5 or higher]) - ]) - ]) -]) +PKG_ENABLE_MODULES_VLC([libxml2], [xml], [libxml-2.0 >= 2.5], [libxml2 support],[auto]) dnl dnl SVG module dnl -AC_ARG_ENABLE(svg, - [ --enable-svg SVG support (default disabled)]) -if test "${enable_svg}" = "yes" -then - PKG_CHECK_MODULES(SVG, - librsvg-2.0 >= 2.9.0, - [ - VLC_ADD_LIBS([svg],[$SVG_LIBS]) - VLC_ADD_CFLAGS([svg],[$SVG_CFLAGS]) - VLC_ADD_PLUGIN([svg]) ], - [AC_MSG_WARN(SVG library not found)]) -fi +PKG_ENABLE_MODULES_VLC([SVG], [], [librsvg-2.0 >= 2.9.0], [SVG rendering library],[auto]) dnl dnl Snapshot vout module (with cache) @@ -4472,9 +3835,9 @@ then if test -z "${with_directx}" then AC_CHECK_HEADERS(ddraw.h, - [ VLC_ADD_PLUGIN([vout_directx]) + [ VLC_ADD_PLUGIN([directx]) VLC_ADD_PLUGIN([aout_directx]) - VLC_ADD_LIBS([vout_directx],[-lgdi32]) + VLC_ADD_LIBS([directx],[-lgdi32]) ]) AC_CHECK_HEADERS(GL/gl.h, [ VLC_ADD_PLUGIN([glwin32]) @@ -4488,10 +3851,10 @@ then AC_MSG_CHECKING(for directX headers in ${with_directx}) if test -f ${with_directx}/ddraw.h then - VLC_ADD_PLUGIN([vout_directx]) + VLC_ADD_PLUGIN([directx]) VLC_ADD_PLUGIN([aout_directx]) - VLC_ADD_CPPFLAGS([vout_directx aout_directx],[-I${with_directx}]) - VLC_ADD_LIBS([vout_directx],[-lgdi32]) + VLC_ADD_CPPFLAGS([directx aout_directx],[-I${with_directx}]) + VLC_ADD_LIBS([directx],[-lgdi32]) AC_MSG_RESULT(yes) else AC_MSG_RESULT(no) @@ -4658,32 +4021,7 @@ fi dnl dnl libcaca plugin dnl -AC_ARG_ENABLE(caca, - [ --enable-caca libcaca output (default disabled)]) -if test "${enable_caca}" = "yes" -then - CACA_PATH="${PATH}" - AC_ARG_WITH(caca-config-path, - [ --with-caca-config-path=PATH caca-config path (default search in \$PATH)], - [ if test "${with_caca_config_path}" != "no" - then - CACA_PATH="${with_caca_config_path}:${PATH}" - fi ]) - AC_PATH_PROG(CACA_CONFIG, caca-config, no, ${CACA_PATH}) - if test "${CACA_CONFIG}" != "no" - then - VLC_ADD_PLUGIN([caca]) - VLC_ADD_CFLAGS([caca],[`${CACA_CONFIG} --cflags`]) - VLC_ADD_LIBS([caca],[`${CACA_CONFIG} --plugin-libs`]) - AC_COMPILE_IFELSE( [AC_LANG_PROGRAM([[#include - caca_event_t ev;]], - [[ev.type = 0;]] - )], - [], - [AC_DEFINE(CACA_EVENT_OPAQUE, [1], ["Define if struct caca_event is opaque and must not be accessed directly"])] - ) - fi -fi +PKG_ENABLE_MODULES_VLC([caca], [], [caca >= 0.99.beta1], [libcaca output],[auto]) dnl dnl win32 GDI plugin @@ -4719,69 +4057,28 @@ if test "${enable_oss}" != "no" && (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" || test "${enable_oss}" = "yes") then - AC_CHECK_HEADERS(soundcard.h sys/soundcard.h machine/soundcard.h, [ + 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])) + AC_CHECK_LIB(ossaudio,main,[VLC_ADD_LIBS([oss],[-lossaudio])]) ]) fi dnl dnl Pulseaudio module dnl -AC_ARG_ENABLE(pulse, - [ --enable-pulse Pulseaudio support (default enabled)]) - if test "${enable_pulse}" != "no" - then - PKG_CHECK_MODULES(PULSE, libpulse >= 0.9.8, - [ VLC_ADD_PLUGIN([pulse]) - VLC_ADD_CFLAGS([pulse],[${PULSE_CFLAGS}]) - VLC_ADD_LDFLAGS([pulse],[${PULSE_LIBS}])], - [AC_MSG_WARN(pulseaudio library not found)]) - fi +PKG_ENABLE_MODULES_VLC([PULSE], [], [libpulse >= 0.9.11], [Pulseaudio support], [auto]) dnl dnl Portaudio module dnl -AC_ARG_ENABLE(portaudio, - [ --enable-portaudio Portaudio library support (default disabled)], - [if test "${enable_portaudio}" = "yes" - then - VLC_ADD_PLUGIN([portaudio]) - VLC_ADD_CXXFLAGS([portaudio],[]) - if test "${SYS}" = "mingw32"; then - VLC_ADD_LIBS([portaudio],[-lportaudio -lwinmm -lole32]) - else - VLC_ADD_LIBS([portaudio],[-lportaudio]) - fi - fi]) +PKG_ENABLE_MODULES_VLC([PORTAUDIO], [], [portaudio-2.0], [Portaudio library support], [auto]) dnl dnl ALSA module dnl -AC_ARG_ENABLE(alsa, - [ --enable-alsa ALSA sound support for Linux (default enabled)]) -if test "${enable_alsa}" != "no" -then - AC_CHECK_HEADER(alsa/asoundlib.h, AC_CHECK_LIB(asound, main, have_alsa="true", have_alsa="false"),have_alsa="false") - if test "${have_alsa}" = "true" - then - CFLAGS="${CFLAGS_save}" - AC_TRY_COMPILE([#define ALSA_PCM_NEW_HW_PARAMS_API - #define ALSA_PCM_NEW_SW_PARAMS_API - #include ], - [snd_pcm_hw_params_get_period_time(0,0,0);], - AC_DEFINE(HAVE_ALSA_NEW_API, 1, Define if ALSA is at least rc4)) - VLC_ADD_PLUGIN([alsa]) - VLC_ADD_LIBS([alsa],[-lasound -lm -ldl]) - VLC_ADD_PLUGIN([access_alsa]) - VLC_ADD_LIBS([access_alsa],[-lasound -lm -ldl]) - else - if test "${enable_alsa}" = "yes"; then - AC_MSG_ERROR([Could not find ALSA development headers]) - fi - fi -fi +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]) dnl dnl win32 waveOut plugin @@ -4831,17 +4128,9 @@ fi dnl dnl JACK modules dnl -AC_ARG_ENABLE(jack, - [ --enable-jack JACK audio I/O modules (default disabled)],, - [enable_jack="no"]) +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]) -AS_IF([test "${enable_jack}" != "no"], [ - AC_CHECK_HEADERS(jack/jack.h, [ - VLC_ADD_PLUGIN([access_jack]) - VLC_ADD_PLUGIN([jack]) - VLC_ADD_LIBS([access_jack jack],[-ljack]) - ],[AC_MSG_ERROR([cannot find JACK headers])]) -]) dnl dnl CyberLink for C++ UPnP stack @@ -4918,25 +4207,7 @@ class testclass : public SearchResponseListener, public MediaPlayer dnl dnl UPnP Plugin (Intel SDK) dnl -AC_ARG_ENABLE(upnp, - AS_HELP_STRING([--enable-upnp],[Intel UPnP SDK (default enabled)])) - -VLC_ADD_CXXFLAGS([upnp_intel], [ ]) -AS_IF([test "x${enable_upnp}" != "xno"], [ - AC_CHECK_LIB([upnp], [UpnpInit], [has_upnp="yes"], [has_upnp="no"], [-lpthread]) - AS_IF([test "x${enable_upnp}" != "x" && test "${has_upnp}" = "no"], [ - AC_MSG_ERROR([cannot find Intel UPnP SDK (libupnp)]) - ]) - AS_IF([test "${has_upnp}" = "yes"], [ - VLC_ADD_LIBS([upnp_intel], [-lupnp -lixml]) - ]) -], [ - has_upnp="no" -]) - -AS_IF([test "${has_upnp}" = "yes"], [ - VLC_ADD_PLUGIN([upnp_intel]) -]) +PKG_ENABLE_MODULES_VLC([UPNP], [upnp_intel], [libupnp], [Intel UPnp SDK],[auto]) dnl @@ -5032,7 +4303,7 @@ then VLC_ADD_LIBS([maemo],[${HILDON_LIBS}]) VLC_ADD_PLUGIN([maemo]) VLC_ADD_PLUGIN([swscale_maemo]) - AC_DEFINE([BUILD_MAEMO], 1, [Define if you're using Maemo interfaces]) + AC_DEFINE([BUILD_MAEMO], 1, [Define if you are using Maemo interfaces]) ALIASES="${ALIASES} mvlc" ], [ AS_IF([test "${enable_maemo}" = "yes"],[ @@ -5051,14 +4322,14 @@ AC_ARG_ENABLE(qt4, AS_IF([test "${SYS}" = "darwin"], [enable_qt4=no]) ]) AS_IF([test "${enable_qt4}" != "no"], [ - PKG_CHECK_MODULES(QT4, [QtCore QtGui >= 4.3.0], [ + PKG_CHECK_MODULES(QT4, [QtCore QtGui >= 4.4.0], [ VLC_ADD_PLUGIN([qt4]) AC_DEFINE([HAVE_QT4], 1, [Define to 1 if you have QT4 library.]) ALIASES="${ALIASES} qvlc" AS_IF([test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" -a "${SYS}" != "cygwin" -a "${SYS}" != "darwin"], [ VLC_ADD_LIBS([qt4],[$QT4_LIBS -lX11]) ], [ - VLC_ADD_LIBS([qt4],[$QT4_LIBS]) + VLC_ADD_LIBS([qt4],[$QT4_LIBS -lole32]) ]) QT4LOCALEDIR="$($PKG_CONFIG --variable=prefix QtCore)/share/qt4/translations/" AC_SUBST(QT4LOCALEDIR) @@ -5149,9 +4420,11 @@ then 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,Carbon]) + VLC_ADD_LDFLAGS([macosx minimal_macosx], [-Wl,-framework,CoreServices]) VLC_ADD_LDFLAGS([macosx minimal_macosx], [-Wl,-framework,AGL]) VLC_ADD_LDFLAGS([macosx], [-Wl,-framework,IOKit]) - VLC_ADD_LDFLAGS([macosx], [-Wl,-framework,QuickTime]) + VLC_ADD_LDFLAGS([macosx], [-F\\\${top_srcdir}/extras/contrib/Sparkle -Wl,-framework,Sparkle]) + VLC_ADD_OBJCFLAGS([macosx], [-F\\\${top_srcdir}/extras/contrib/Sparkle]) dnl For bug report VLC_ADD_LDFLAGS([macosx], [-Wl,-framework,AddressBook]) VLC_ADD_LDFLAGS([macosx qtcapture], [-Wl,-framework,QTKit]) @@ -5159,19 +4432,13 @@ then 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 opengllayer growl opengllayer], [-fobjc-exceptions] ) VLC_ADD_PLUGIN([access_eyetv]) VLC_ADD_PLUGIN([qtcapture]) VLC_ADD_PLUGIN([macosx]) VLC_ADD_PLUGIN([minimal_macosx]) - - ORIGCFLAGS=$CFLAGS - CFLAGS="$CFLAGS -x objective-c" - AC_TRY_COMPILE([#import ],, - [VLC_ADD_PLUGIN([opengllayer]) - VLC_ADD_OBJCFLAGS([opengllayer])],[]) - CFLAGS=$ORIGCFLAGS + VLC_ADD_PLUGIN([opengllayer]) fi dnl @@ -5234,19 +4501,12 @@ AC_ARG_ENABLE(xosd, [ --enable-xosd xosd interface support (default disabled)]) if test "${enable_xosd}" = "yes" then - AC_CHECK_HEADER(xosd.h, have_xosd="true", have_xosd="false") - AC_CHECK_LIB(xosd,xosd_set_offset, - AC_DEFINE(HAVE_XOSD_VERSION_1, 1, Define if is 1.0.x), - AC_CHECK_LIB(xosd,xosd_set_horizontal_offset, - AC_DEFINE(HAVE_XOSD_VERSION_2, 1, Define if is 2.0.x), - AC_TRY_COMPILE([#include ], - [xosd_init("foo","bar",12,XOSD_top,2,12,42);],, - AC_DEFINE(HAVE_XOSD_VERSION_0, 1, Define if is pre-1.0.0)))) - if test "${have_xosd}" = "true" - then - VLC_ADD_PLUGIN([xosd]) - VLC_ADD_LIBS([xosd],[-lxosd]) - fi + AC_CHECK_HEADERS(xosd.h, + AC_CHECK_LIB(xosd, xosd_set_horizontal_offset, [ + VLC_ADD_PLUGIN([xosd]) + VLC_ADD_LIBS([xosd],[-lxosd]) + ]) + ) fi dnl @@ -5272,106 +4532,40 @@ then fi dnl -dnl OpenGL visualisation plugin +dnl goom visualization plugin dnl -AC_ARG_ENABLE(galaktos, - [ --enable-galaktos OpenGL visualisation plugin (default disabled)]) -if test "${enable_galaktos}" = "yes" -then - AC_CHECK_HEADERS(GL/gl.h GL/glu.h, [ - VLC_ADD_PLUGIN([galaktos]) - if test "${SYS}" != "mingw32"; then - VLC_ADD_LIBS([galaktos],[${X_LIBS} -lGL -lGLU]) - else - VLC_ADD_LIBS([galaktos],[-lopengl32]) - fi - ]) -fi +PKG_ENABLE_MODULES_VLC([goom], [], [libgoom2], [goom visualization plugin], [auto]) dnl -dnl goom visualization plugin +dnl libprojectM visualization plugin dnl -AC_ARG_ENABLE(goom, -[ --enable-goom goom visualisation plugin (default disabled)]) -if test "${enable_goom}" = "yes" -then - AC_ARG_WITH(goom-tree, - [ --with-goom-tree=PATH goom tree for static linking (required)]) - - dnl - dnl test for --with-goom-tree - dnl - if test "${with_goom_tree}" != "no" -a -n "${with_goom_tree}"; then - AC_MSG_CHECKING(for libgoom2.a in ${with_goom_tree}) - real_goom_tree="`cd ${with_goom_tree} 2>/dev/null && pwd`" - if test -z "${real_goom_tree}"; then - dnl The given directory can't be found - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot cd to ${with_goom_tree}]) - fi - if test -f "${real_goom_tree}/src/.libs/libgoom2.a"; then - AC_MSG_RESULT(${real_goom_tree}/src/.libs/libgoom2.a) - VLC_ADD_PLUGIN([goom]) - VLC_ADD_LIBS([goom],[-L${real_goom_tree}/src/.libs -lgoom2]) - VLC_ADD_CPPFLAGS([goom],[-I${real_goom_tree}/src -DUSE_GOOM_TREE]) - else - dnl The given libgoom2 wasn't built, try to look for the old goom - AC_MSG_RESULT(no) - AC_MSG_CHECKING(for libgoom.a in ${with_goom_tree}) - if test -f "${real_goom_tree}/libgoom.a"; then - AC_MSG_RESULT(${real_goom_tree}/libgoom.a) - VLC_ADD_PLUGIN([goom]) - VLC_ADD_LIBS([goom],[-L${real_goom_tree} -lgoom]) - VLC_ADD_CPPFLAGS([goom],[-I${real_goom_tree} -DUSE_GOOM_TREE -DOLD_GOOM]) - else - dnl The given libgoom wasn't built - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot find ${real_goom_tree}/src/.libs/libgoom2.a, make sure you compiled goom in ${with_goom_tree}]) - fi - fi - else - AC_CHECK_HEADERS(goom/goom.h, [ - LDFLAGS="${LDFLAGS_save} ${LIBS_goom}" - AC_CHECK_LIB(goom2, goom_init, [ - VLC_ADD_PLUGIN([goom]) - VLC_ADD_LIBS([goom],[-lgoom2]) - ],[ - AC_MSG_ERROR([Could not find goom on your system: you may get it from http://www.ios-software.com/.]) - ]) - LDFLAGS="${LDFLAGS_save}" - ]) - fi -fi +PKG_ENABLE_MODULES_VLC([projectm], [], [libprojectM], [projectM visualization plugin], [auto]) dnl dnl AtmoLight (homebrew AmbiLight) dnl -if test "${SYS}" = "mingw32" -o "${SYS}" = "linux"; then - AC_ARG_ENABLE(atmo, -AS_HELP_STRING([--disable-atmo],[AtmoLight (homebrew philips ambilight) - (default enabled)])) - if test "${enable_atmo}" != "no"; then - AC_LANG_PUSH(C++) - VLC_ADD_PLUGIN([atmo]) - AC_LANG_POP(C++) - fi -fi +AC_ARG_ENABLE(atmo, +AS_HELP_STRING([--disable-atmo],[AtmoLight (homebrew Philips ambilight) + (broken, default disabled)]),, [enable_atmo="no"]) +AS_IF([test "${enable_atmo}" != no], [ + AS_IF([test "${SYS}" = "mingw32" -o "${SYS}" = "linux"], [ + AC_LANG_PUSH(C++) + VLC_ADD_PLUGIN([atmo]) + AC_LANG_POP(C++) + ]) +]) dnl dnl Bonjour services discovery +PKG_ENABLE_MODULES_VLC([BONJOUR], [], [avahi-client >= 0.6], [Bonjour services discovery], [auto]) + dnl -AC_ARG_ENABLE(bonjour, - [ --enable-bonjour Bonjour services discovery (default enabled)]) -AS_IF([test "${enable_bonjour}" != "no"], [ - PKG_CHECK_MODULES(BONJOUR, avahi-client >= 0.6, [ - AC_DEFINE(HAVE_AVAHI_CLIENT, 1, [Define to 1 if you have libavahi-client]) - VLC_ADD_LIBS([bonjour access_output_http],[$BONJOUR_LIBS]) - VLC_ADD_CFLAGS([bonjour access_output_http],[$BONJOUR_CFLAGS]) - VLC_ADD_PLUGIN([bonjour]) - ], [ - AC_MSG_WARN(avahi-client library not found) - ]) -]) +dnl HAL services discovery +PKG_ENABLE_MODULES_VLC([HAL], [], [hal >= 0.5.0], [Linux HAL services discovery], [auto]) + +dnl +dnl MTP devices services discovery +PKG_ENABLE_MODULES_VLC([MTP], [], [libmtp >= 0.3.0],[MTP devices support],[auto]) dnl dnl Lirc plugin @@ -5388,18 +4582,6 @@ then fi fi -dnl -dnl Global hotkeys using XCB -dnl -PKG_CHECK_MODULES(XCB, [xcb], [ - PKG_CHECK_MODULES(XCB_KEYSYMS, [xcb-keysyms], [ - PKG_CHECK_MODULES(XPROTO, [xproto], [ - VLC_ADD_PLUGIN([globalhotkeys]) - VLC_ADD_CFLAGS([globalhotkeys],[${XCB_KEYSYMS_CFLAGS} ${XCB_CFLAGS}] ) - VLC_ADD_LIBS([globalhotkeys],[${XCB_KEYSYMS_LIBS} ${XCB_LIBS}] ) - ], [ AC_MSG_WARN( [Xproto not found] ) ]) - ], [ AC_MSG_WARN( [XCB keysyms was not found]) ]) -], [ AC_MSG_WARN( [XCB was not found]) ]) AC_ARG_WITH(,[Misc options:]) @@ -5425,7 +4607,7 @@ AC_ARG_ENABLE(gnutls, [ --enable-gnutls gnutls TLS/SSL support (default enabled)]) AS_IF([test "${enable_gnutls}" != "no"], [ - PKG_CHECK_MODULES(GNUTLS, [gnutls >= 1.3.3], [ + PKG_CHECK_MODULES(GNUTLS, [gnutls >= 1.7.4], [ VLC_ADD_PLUGIN([gnutls]) VLC_ADD_CFLAGS([gnutls], [$GNUTLS_CFLAGS]) AS_IF([test "${SYS}" = "mingw32"], [ @@ -5471,7 +4653,7 @@ AC_MSG_CHECKING([whether to enable RAOP plugin]) AS_IF([test "${have_libgcrypt}" = "yes"], [ AC_MSG_RESULT(yes) VLC_ADD_PLUGIN([stream_out_raop]) - VLC_ADD_LIBS([stream_out_raop], [${LIBGCRYPT_LIBS}]) + VLC_ADD_LIBS([stream_out_raop], [${LIBGCRYPT_LIBS} -lgpg-error]) VLC_ADD_CFLAGS([stream_out_raop], [${LIBGCRYPT_CFLAGS}]) ], [ AC_MSG_RESULT(no) @@ -5490,8 +4672,8 @@ then then AC_MSG_ERROR([libgcrypt is required for update checking system]) fi - VLC_ADD_LIBS([libvlc], [${LIBGCRYPT_LIBS}]) - VLC_ADD_CFLAGS([libvlc], [${LIBGCRYPT_CFLAGS}]) + VLC_ADD_LIBS([libvlccore], [${LIBGCRYPT_LIBS}]) + VLC_ADD_CFLAGS([libvlccore], [${LIBGCRYPT_CFLAGS}]) AC_DEFINE([UPDATE_CHECK], 1, [Define if you want to use the VLC update mechanism]) fi @@ -5665,8 +4847,8 @@ then [ AC_PATH_PROGS(MOZILLA_CONFIG, [mozilla-config seamonkey-config xulrunner-config], - AC_MSG_ERROR([Please install the Mozilla development tools. mozilla-config was not found.]) - ) + [no]) + test "${MOZILLA_CONFIG}" = "no" && AC_MSG_ERROR([Please install the Mozilla development tools. mozilla-config was not found.]) ] ) dnl pkg-config failed but we might have found a mozilla-config @@ -5760,13 +4942,13 @@ AM_CONDITIONAL(BUILD_MOZILLA,${mozilla}) dnl Tests for Osso and Xsp AC_CHECK_LIB(osso, osso_display_blanking_pause, [ PKG_CHECK_MODULES(GLIB2, glib-2.0, [ - VLC_ADD_CPPFLAGS([x11 xvideo xvmc glx omapfb],[-DHAVE_OSSO ${DBUS_CFLAGS} ${GLIB2_CFLAGS}]) - VLC_ADD_LIBS([x11 xvideo xvmc glx omapfb],[-losso]) + VLC_ADD_CPPFLAGS([xvmc glx omapfb],[-DHAVE_OSSO ${DBUS_CFLAGS} ${GLIB2_CFLAGS}]) + VLC_ADD_LIBS([xvmc glx omapfb],[-losso]) ]) ]) AC_CHECK_LIB(Xsp, XSPSetPixelDoubling,[ - VLC_ADD_CPPFLAGS([x11 xvideo xvmc glx],[-DHAVE_XSP]) - VLC_ADD_LIBS([x11 xvideo xvmc glx],[-lXsp]) + VLC_ADD_CPPFLAGS([xvmc glx],[-DHAVE_XSP]) + VLC_ADD_LIBS([xvmc glx],[-lXsp]) ]) dnl @@ -5964,6 +5146,7 @@ AC_CONFIG_FILES([ share/Makefile share/vlc_win32_rc.rc share/libvlc_win32_rc.rc + compat/Makefile src/Makefile src/test/Makefile bin/Makefile @@ -5977,7 +5160,6 @@ AC_CONFIG_FILES([ modules/access/cdda/Makefile modules/access/rtp/Makefile modules/access/rtsp/Makefile - modules/access/rtmp/Makefile modules/access/vcd/Makefile modules/access/vcdx/Makefile modules/access/screen/Makefile @@ -6038,10 +5220,8 @@ AC_CONFIG_FILES([ modules/services_discovery/Makefile modules/stream_filter/Makefile modules/stream_out/Makefile - modules/stream_out/transrate/Makefile modules/video_chroma/Makefile modules/video_filter/Makefile - modules/video_filter/atmo/Makefile modules/video_filter/dynamicoverlay/Makefile modules/video_output/Makefile modules/video_output/msw/Makefile @@ -6049,7 +5229,6 @@ AC_CONFIG_FILES([ modules/video_output/x11/Makefile modules/visualization/Makefile modules/visualization/visual/Makefile - modules/visualization/galaktos/Makefile ]) dnl Generate makefiles @@ -6069,7 +5248,7 @@ echo '#! /bin/sh' >compile echo rm -f .error\$\$ >>compile echo ERROR=0 >>compile echo export PATH=$PATH LANG=C >>compile -echo "(make \$@ 2>&1 || touch .error\$\$)| \\" >>compile +echo "(make V=1 \$@ 2>&1 || touch .error\$\$)| \\" >>compile echo '`sed -ne "s/^top_srcdir *= *//p" < Makefile`/extras/buildsystem/make.pl' >>compile echo test -f .error\$\$ \&\& ERROR=1 >>compile echo rm -f .error\$\$ >>compile