X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=configure.ac;h=40b46c7fb93efe1af74336af88883a5db5660ac0;hb=1a445678f08f85d712b4593bc826f8814b742e0e;hp=3e4ddb00931590ac51931cd6b683d8339c723bc0;hpb=2d15a4ba3fcbbdba0251766f43963cc2f7a6a75d;p=vlc diff --git a/configure.ac b/configure.ac index 3e4ddb0093..40b46c7fb9 100644 --- a/configure.ac +++ b/configure.ac @@ -343,7 +343,7 @@ case "${host_os}" in [#ifdef WIN32 yes #endif], - SYS=mingw32, SYS=cygwin) + SYS=mingw32, AC_MSG_ERROR([VLC requires -mno-cygwin])) ;; esac @@ -355,10 +355,19 @@ case "${host_os}" in 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]) + dnl + dnl DEP and ASLR options + dnl + AC_ARG_ENABLE(peflags, + [ --enable-peflags peflags use (default enabled)]) + if test "${enable_peflags}" != "no" + then + AC_CHECK_TOOL(PEFLAGS, peflags, :) + fi 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],[-lws2]) + 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],[-lws2]) VLC_ADD_LIBS([libvlccore],[-lmmtimer]) fi ;; @@ -402,6 +411,7 @@ AM_CONDITIONAL(HAVE_DARWIN, test "${SYS}" = "darwin") AM_CONDITIONAL(HAVE_LINUX, [test "${SYS}" = "linux"]) AM_CONDITIONAL(HAVE_WIN32, test "${SYS}" = "mingw32") AM_CONDITIONAL(HAVE_WINCE, test "${SYS}" = "mingwce") +AM_CONDITIONAL(USE_PEFLAGS, [test "${enable_peflags}" = "yes"]) dnl dnl Sadly autoconf doesn't think about testing foo.exe when ask to test @@ -440,6 +450,9 @@ m4_defun([AC_DEPLIBS_CHECK_METHOD],[]) lt_cv_deplibs_check_method=pass_all +AS_IF([test "${enable_shared}" = "no"], [ + AC_MSG_ERROR([VLC is based on plugins. Shared libraries cannot be disabled.]) +]) dnl dnl Gettext stuff @@ -479,7 +492,7 @@ if test "${SYS}" = "mingw32" then AC_CHECK_LIB(mingwex,opendir, AC_CHECK_LIB(mingw32,opendir,, - [VLC_ADD_LIBS([libvlccore gtk],[-lmingwex])]) + [VLC_ADD_LIBS([libvlccore],[-lmingwex])]) ) fi @@ -562,7 +575,6 @@ 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_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]) @@ -715,7 +727,7 @@ AM_CONDITIONAL(BUILD_GETOPT, ${need_getopt}) if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then AC_TYPE_SIGNAL AC_CHECK_LIB(m,cos,[ - VLC_ADD_LIBS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom visual panoramix rotate noise grain scene kate flac lua],[-lm]) + 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 swscale postproc ffmpegaltivec i420_rgb faad twolame equalizer spatializer param_eq libvlccore freetype mod mpc dmo quicktime realaudio realvideo opengl],[-lm]) @@ -724,7 +736,7 @@ 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([hotkeys mosaic],[-lm]) + VLC_ADD_LIBS([hotkeys mosaic swscale_omap],[-lm]) ]) AC_CHECK_LIB(m,exp,[ VLC_ADD_LIBS([gaussianblur],[-lm]) @@ -762,7 +774,7 @@ fi # Win32 style if test "${ac_cv_have_plugins}" = "no"; then - if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"; then + if test "${SYS}" = "mingw32" ; then AC_CHECK_LIB(kernel32, main, [VLC_ADD_LIBS([libvlccore],[-lkernel32]) AC_DEFINE(HAVE_DL_WINDOWS, 1, [Define if you have Windows' LoadLibrary]) @@ -863,7 +875,7 @@ AC_CHECK_HEADERS([net/if.h], [], [], ]) 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 scsi/scsi.h]) +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" @@ -915,12 +927,20 @@ if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then AC_CHECK_HEADERS(pthread.h) fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" -dnl it seems that autoconf do the pkg-config detection only for the first PKG_CHECK_MODULES in the configure.ac ( which is logical) but in our case it is nested in a if so it was not working if you're not on linux or have disable hal. +dnl It seems that autoconf detects pkg-config only during the first +dnl PKG_CHECK_MODULES from configure.ac - which makes sense. But in our case, +dnl it is nested within a conditional block, so it was not working right. dnl Make PKG_CONFIG_PATH precious so that it appears in the help and get saved AC_ARG_VAR(PKG_CONFIG_PATH, [Paths where to find .pc not at the default location]) PKG_PROG_PKG_CONFIG() +dnl On some OS we need static linking +AS_IF([test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce" -o "${SYS}" = "darwin" ],[ + PKG_CONFIG="${PKG_CONFIG} --static" + ]) + + dnl dnl Check for zlib.h and -lz along with system -lminizip if available dnl @@ -958,8 +978,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 libvlccore],[$DBUS_LIBS]) - VLC_ADD_CFLAGS([screensaver libvlccore],[$DBUS_CFLAGS]) + VLC_ADD_LIBS([libvlccore],[$DBUS_LIBS]) + VLC_ADD_CFLAGS([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" @@ -987,12 +1007,6 @@ fi ;; esac -dnl Build the gtk_main plugins? -NEED_GTK_MAIN=no -NEED_GNOME_MAIN=no -NEED_GTK2_MAIN=no -NEED_GNOME2_MAIN=no - dnl build the qte plugin ? NEED_QTE_MAIN=no @@ -1008,11 +1022,11 @@ if test "${ac_cv_c_ntohl_sys_param_h}" != "no"; then fi CFLAGS="${CFLAGS_save}" -RDC_PROG_CC_WFLAGS([all extra sign-compare undef pointer-arith bad-function-cast cast-align write-strings missing-prototypes volatile-register-var error-implicit-function-declaration]) +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 in debug)]),, [enable_warnings_as_error="$enable_debug"]) + 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 \ @@ -1261,10 +1275,8 @@ if test "${SYS}" != "mingwce"; then VLC_ADD_PLUGIN([equalizer]) VLC_ADD_PLUGIN([param_eq]) VLC_ADD_PLUGIN([scaletempo]) - VLC_ADD_PLUGIN([converter_float]) VLC_ADD_PLUGIN([a52tospdif]) VLC_ADD_PLUGIN([dtstospdif]) - VLC_ADD_PLUGIN([audio_format]) ALIASES="${ALIASES} rvlc" fi @@ -1278,10 +1290,8 @@ if test "${SYS}" = "mingwce"; then VLC_ADD_PLUGIN([simple_channel_mixer]) VLC_ADD_PLUGIN([headphone_channel_mixer]) VLC_ADD_PLUGIN([normvol]) - VLC_ADD_PLUGIN([converter_float]) VLC_ADD_PLUGIN([a52tospdif]) VLC_ADD_PLUGIN([dtstospdif]) - VLC_ADD_PLUGIN([audio_format]) VLC_ADD_PLUGIN([i420_yuy2]) VLC_ADD_PLUGIN([i422_yuy2]) VLC_ADD_PLUGIN([i420_ymga]) @@ -1310,7 +1320,7 @@ else fi if test "${SYS}" = "darwin"; then VLC_ADD_PLUGIN([quartztext]) - VLC_ADD_LDFLAGS([quartztext],[-Wl,-framework,Carbon,-framework,ApplicationServices]) + VLC_ADD_LDFLAGS([quartztext],[-Wl,-framework,ApplicationServices]) fi dnl @@ -1390,7 +1400,7 @@ dnl Check for fully workin SSE2 intrinsics dnl We need support for -mmmx, we need , and we also need a dnl working compiler (http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23963) AC_ARG_ENABLE(sse, -[ --disable-sse disable SSE (1 and 2) optimizations (default auto)] +[ --disable-sse disable SSE (1, 2, 3 and 4) optimizations (default auto)] ,, [ case "${host_cpu}" in i686|x86_64) @@ -1449,6 +1459,42 @@ AS_IF([test "${enable_sse}" != "no"], [ VLC_ADD_PLUGIN([i420_yuy2_sse2]) VLC_ADD_PLUGIN([i422_yuy2_sse2]) ]) + + # SSE3 + AC_CACHE_CHECK([if $CC groks SSE3 inline assembly], + [ac_cv_sse3_inline], + [CFLAGS="${CFLAGS_save} -O -msse3" + AC_TRY_COMPILE(,[void *p;asm volatile("movsldup %%xmm1,%%xmm0"::"r"(p));], + ac_cv_sse3_inline=yes, ac_cv_sse3_inline=no) + ARCH="${ARCH} sse3" + ]) + AS_IF([test "${ac_cv_sse3_inline}" != "no"], [ + AC_DEFINE(CAN_COMPILE_SSE3, 1, + [Define to 1 if SSE3 inline assembly is available.]) ]) + # SSSE3 + AC_CACHE_CHECK([if $CC groks SSSE3 inline assembly], + [ac_cv_ssse3_inline], + [CFLAGS="${CFLAGS_save} -O -mssse3" + AC_TRY_COMPILE(,[void *p;asm volatile("pabsw %%xmm0,%%xmm0"::"r"(p));], + ac_cv_ssse3_inline=yes, ac_cv_ssse3_inline=no) + ARCH="${ARCH} ssse3" + ]) + + AS_IF([test "${ac_cv_ssse3_inline}" != "no"], [ + AC_DEFINE(CAN_COMPILE_SSSE3, 1, + [Define to 1 if SSSE3 inline assembly is available.]) ]) + + # SSE4 + AC_CACHE_CHECK([if $CC groks SSE4 inline assembly], + [ac_cv_sse4_inline], + [CFLAGS="${CFLAGS_save} -O -msse4" + AC_TRY_COMPILE(,[void *p;asm volatile("pmaxsb %%xmm1,%%xmm0"::"r"(p));], + ac_cv_sse4_inline=yes, ac_cv_sse4_inline=no) + ARCH="${ARCH} sse4" + ]) + AS_IF([test "${ac_cv_sse4_inline}" != "no"], [ + AC_DEFINE(CAN_COMPILE_SSE4, 1, + [Define to 1 if SSE4 inline assembly is available.]) ]) ]) AC_CACHE_CHECK([if $CC groks 3D Now! inline assembly], @@ -1462,6 +1508,24 @@ AS_IF([test "${ac_cv_3dnow_inline}" != "no"], [ VLC_ADD_PLUGIN([memcpy3dn]) ]) + +AC_ARG_ENABLE(neon, +[ --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], [ + AC_COMPILE_IFELSE([ + AC_LANG_PROGRAM(,[[asm volatile("vqmovun.s64 d0, q1":::"d0");]]) + ], [ + ac_cv_neon_inline="yes" + ], [ + ac_cv_neon_inline="no" + ]) + ]) +]) +AM_CONDITIONAL(HAVE_NEON, [test "${ac_cv_neon_inline}" = "yes"]) + AC_ARG_ENABLE(altivec, [ --disable-altivec disable AltiVec optimizations (default auto)],, [ AS_IF([test "${host_cpu}" = "powerpc"], @@ -1708,14 +1772,15 @@ then AC_CHECK_LIB( lua , luaL_newstate, [LUA_LIBS="-llua"], [ have_lua=no - AC_MSG_WARN([lua >= 5.1 not found!]) - ]) + AS_IF([test "x${enable_lua}" = "xyes"], + [AC_MSG_ERROR([lua >= 5.1 not found!])], + [AC_MSG_WARN([lua >= 5.1 not found!])]) + ], [-lm]) ) ) ]) ]) if test "x${have_lua}" = "xyes" ; then - AC_DEFINE(HAVE_LUA, 1, [Define if you have the lua library]) VLC_ADD_LIBS([lua],[$LUA_LIBS]) VLC_ADD_CFLAGS([lua],[$LUA_CFLAGS]) fi @@ -1804,8 +1869,7 @@ AC_ARG_ENABLE(taglib, [ --disable-taglib Taglib support (default enabled) ]) AS_IF([test "${enable_taglib}" != "no"],[ PKG_CHECK_MODULES(TAGLIB, taglib >= 1.5, - [ AC_DEFINE( HAVE_TAGLIB, 1, [Define if you have taglib plugin built] ) - VLC_ADD_PLUGIN([taglib]) + [ VLC_ADD_PLUGIN([taglib]) VLC_ADD_LIBS([taglib],[$TAGLIB_LIBS -lz]) VLC_ADD_CXXFLAGS([taglib],[$TAGLIB_CFLAGS]) ], [AC_MSG_WARN(TagLib library not found)]) @@ -1952,8 +2016,8 @@ dnl dnl - special access module for dc1394 input dnl - dv module: digital video module check for libraw1394 dnl -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]) +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 @@ -2064,7 +2128,7 @@ AC_ARG_ENABLE(dshow, [ --enable-dshow Win32 DirectShow support (default enabled on Win32)]) if test "${enable_dshow}" != "no" then - if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin" + if test "${SYS}" = "mingw32" then AC_LANG_PUSH(C++) AC_CHECK_HEADERS(dshow.h, @@ -2083,7 +2147,7 @@ AC_ARG_ENABLE(bda, enabled on Win32)])) if test "${enable_bda}" != "no" then - if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin" + if test "${SYS}" = "mingw32" then AC_CHECK_HEADERS(dshow.h, [ VLC_ADD_PLUGIN([bda]) @@ -2102,7 +2166,7 @@ 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" -o "${SYS}" = "cygwin" + 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}) @@ -2152,6 +2216,19 @@ if test "${enable_smb}" != "no"; then fi ]) fi + +dnl +dnl sftp access support +dnl +AC_ARG_ENABLE(sftp, + [ --enable-sftp sftp input access module (default disable)]) +if test "${enable_sftp}" = "yes"; then + AC_CHECK_HEADERS(libssh2.h, [ + VLC_ADD_PLUGIN([access_sftp]) + VLC_ADD_LIBS([access_sftp], [-lssh2]) + ]) +fi + dnl dnl libdvbpsi ts demux/mux dnl @@ -2239,7 +2316,16 @@ then 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]) fi - ]) + ], + [#if defined( HAVE_STDINT_H ) +# include +#elif defined( HAVE_INTTYPES_H ) +# include +#endif +#include +#include +#include +#include ]) CPPFLAGS="${CPPFLAGS_save}" ;; esac @@ -2350,7 +2436,7 @@ AC_ARG_ENABLE(libcdio, [ --enable-libcdio CD input and control library support (default enabled)]) AC_ARG_ENABLE(vcdinfo, - [ --enable-libvcdinfo VCD information library support (default enabled)]) + [ --enable-vcdinfo VCD information library support (default enabled)]) have_libcdio=no have_libvcdinfo=no @@ -2365,9 +2451,7 @@ then if test "${enable_vcdinfo}" != "no" then PKG_CHECK_MODULES(VCDINFO, libvcdinfo >= 0.7.22, - [have_libvcdinfo=yes - AC_DEFINE(HAVE_VCDINFO, 1, - [Define if you have libvcdinfo 0.7.22 or greater installed])], + [have_libvcdinfo=yes], [AC_MSG_WARN(VCD information library not found)]) fi fi @@ -2582,15 +2666,11 @@ 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]) -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) +PKG_ENABLE_MODULES_VLC([SHOUT], [access_output_shout], [shout >= 2.1], [libshout output plugin], [auto]) fi dnl @@ -2837,6 +2917,12 @@ AS_IF([test "${enable_id3tag}" = "yes"], [ ]) ]) +AC_ARG_ENABLE(merge-ffmpeg, +[ --enable-merged-ffmpeg merge FFmpeg-based plugins (default disabled)],, [ + enable_merge_ffmpeg="no" +]) +AM_CONDITIONAL([MERGE_FFMPEG], [test "$enable_merge_ffmpeg" != "no"]) + dnl dnl avcodec decoder/encoder plugin dnl @@ -2867,6 +2953,26 @@ then ]) fi +dnl +dnl libva needs avcodec +dnl +AC_ARG_ENABLE(libva, + [ --enable-libva libva VAAPI support (default disabled)]) +AS_IF([test "${enable_libva}" = "yes"], [ + 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.]) + ],[ + AC_MSG_ERROR([Could not find libva.]) + ]) + ],[ + AC_MSG_ERROR([libva VAAPI support depends on libavcodec.]) + ]) +]) + dnl dnl stream_out switcher needs libavcodec dnl @@ -2875,8 +2981,8 @@ AC_ARG_ENABLE(switcher, 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]) + VLC_ADD_LIBS([stream_out_switcher],[$AVCODEC_LIBS $AVUTIL_LIBS]) + VLC_ADD_CFLAGS([stream_out_switcher],[$AVCODEC_CFLAGS $AVUTIL_CFLAGS]) ],[AC_MSG_ERROR([Stream_out switcher depends on avcodec]) ]) ]) @@ -2897,9 +3003,14 @@ then CFLAGS="${CFLAGS} ${AVFORMAT_CFLAGS}" AC_CHECK_HEADERS(libavformat/avformat.h ffmpeg/avformat.h) AC_CHECK_HEADERS(libavutil/avutil.h ffmpeg/avutil.h) - VLC_ADD_PLUGIN([avformat]) - VLC_ADD_LIBS([avformat],[$AVFORMAT_LIBS]) - VLC_ADD_CFLAGS([avformat],[$AVFORMAT_CFLAGS]) + 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_LIBS([avcodec],[$AVFORMAT_LIBS $AVUTIL_LIBS]) + VLC_ADD_CFLAGS([avcodec],[$AVFORMAT_CFLAGS $AVUTIL_CFLAGS]) + ]) VLC_RESTORE_FLAGS ],[ AC_MSG_ERROR([Could not find libavformat or libavutil. Use --disable-avformat to ignore this error.]) @@ -2943,10 +3054,10 @@ then VLC_SAVE_FLAGS CPPFLAGS="${CPPFLAGS} ${POSTPROC_CFLAGS}" CFLAGS="${CFLAGS} ${POSTPROC_CFLAGS}" - AC_CHECK_HEADERS(libpostproc/postproc.h postproc/postprocess.h) + AC_CHECK_HEADERS(postproc/postprocess.h) VLC_ADD_PLUGIN([postproc]) - VLC_ADD_LIBS([postproc],[$POSTPROC_LIBS]) - VLC_ADD_CFLAGS([postproc],[$POSTPROC_CFLAGS]) + VLC_ADD_LIBS([postproc],[$POSTPROC_LIBS $AVUTIL_LIBS]) + VLC_ADD_CFLAGS([postproc],[$POSTPROC_CFLAGS $AVUTIL_CFLAGS]) VLC_RESTORE_FLAGS ],[ AC_MSG_ERROR([Could not find libpostproc. Use --disable-postproc to ignore this error.]) @@ -3004,7 +3115,7 @@ fi dnl dnl twolame encoder plugin dnl -PKG_ENABLE_MODULES_VLC([twolame], [], [twolame], [MPEG Audio Layer 2 encoder], [auto], [], [], [ -DLIBTWOLAME_STATIC]) +PKG_ENABLE_MODULES_VLC([TWOLAME], [], [twolame], [MPEG Audio Layer 2 encoder], [auto], [], [], [ -DLIBTWOLAME_STATIC]) dnl dnl QuickTime plugin @@ -3235,8 +3346,7 @@ AC_CHECK_HEADERS(png.h, [ VLC_ADD_LIBS([png],[-lpng -lz]) VLC_ADD_PLUGIN([png]) VLC_ADD_PLUGIN([osdmenu]) - VLC_ADD_PLUGIN([osd_parser]) - AC_DEFINE(HAVE_LIBPNG, 1, [Define if you have the PNG library: libpng])], + VLC_ADD_PLUGIN([osd_parser])], [],[-lz]) LDFLAGS="${LDFLAGS_save}" ]) @@ -3283,7 +3393,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, [ + PKG_CHECK_MODULES(X264,x264 >= 0.76, [ VLC_ADD_PLUGIN([x264]) VLC_ADD_LDFLAGS([x264],[${X264_LIBS}]) @@ -3303,7 +3413,7 @@ if test "${enable_x264}" != "no"; then fi ],[ if test "${enable_x264}" = "yes"; then - AC_MSG_ERROR([Could not find libx264 on your system: you may get it from http://www.videolan.org/x264.html]) + AC_MSG_ERROR([Could not find libx264 >= 0.76 on your system: you may get it from http://www.videolan.org/x264.html]) fi ]) LDFLAGS="${LDFLAGS_save}" @@ -3355,21 +3465,17 @@ 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"], [ + [ --enable-libass Subtitle support using libass (default enabled)]) +AS_IF( [test "${enable_libass}" != "no"], [ PKG_CHECK_MODULES(LIBASS, libass >= 0.9.6, [ - VLC_ADD_LDFLAGS([libass],[$LIBASS_LIBS]) + VLC_ADD_LIBS([libass],[$LIBASS_LIBS]) VLC_ADD_CFLAGS([libass],[$LIBASS_CFLAGS]) VLC_ADD_PLUGIN([libass]) AC_CHECK_HEADERS(fontconfig/fontconfig.h, [VLC_ADD_CPPFLAGS([libass],[-DHAVE_FONTCONFIG]) - if test "${SYS}" = "mingw32"; then - VLC_ADD_LIBS([libass],[-lfontconfig -lfreetype -liconv -lz]) - else VLC_ADD_LIBS([libass],[-lfontconfig]) - fi ]) ],[ AC_MSG_WARN([LIBASS library not found]) @@ -3513,9 +3619,13 @@ AC_ARG_ENABLE(xvmc, ]) 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 ${LIBMPEG2_LIBS}]) - VLC_ADD_CPPFLAGS([xvmc],[${X_CFLAGS} ${LIBMPEG2_CFLAGS}]) + AS_IF([test "${enable_libmpeg2}" = "yes"], [ + VLC_ADD_PLUGIN([xvmc]) + 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 needs libmpeg2 which isn't available]) + ]) ], [ AC_MSG_ERROR([XVideo-MotionCompensation extension not found!]) ]) @@ -3541,14 +3651,15 @@ AC_ARG_ENABLE(xvideo, enable_xvideo="$enable_xcb" ]) +need_xid_provider="no" 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]) + 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 AS_IF([test "${enable_xvideo}" != "no"], [ PKG_CHECK_MODULES(XCB_XV, [xcb-xv >= 1.1.90.1], [ @@ -3568,12 +3679,26 @@ AS_IF([test "${enable_xcb}" != "no"], [ ], [true]) dnl xcb-utils - PKG_CHECK_MODULES(XCB_KEYSYMS, [xcb-keysyms]) + PKG_CHECK_MODULES(XCB_KEYSYMS, [xcb-keysyms >= 0.3.4], [ + have_xcb_keysyms="yes" + ], [ + PKG_CHECK_MODULES(XCB_KEYSYMS, [xcb-keysyms], [ + have_xcb_keysyms="yes" + VLC_ADD_CFLAGS([globalhotkeys], [-DXCB_KEYSYM_OLD_API]) + ], [ + have_xcb_keysyms="no" + need_xid_provider="yes" + ]) + ]) - 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}] ) + AS_IF([test "${have_xcb_keysyms}" = "yes"], [ + PKG_CHECK_MODULES(XPROTO, [xproto]) + 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}]) + ]) + VLC_ADD_PLUGIN([xdg_screensaver]) ]) @@ -3617,81 +3742,41 @@ then then SDL_PATH="${with_sdl_config_path}:${PATH}" fi ]) - AC_PATH_PROG(SDL12_CONFIG, sdl12-config, no, ${SDL_PATH}) - SDL_CONFIG="${SDL12_CONFIG}" - SDL_HEADER="SDL12/SDL.h" - SDL_IMAGE="SDL12/SDL_image.h" - if test "${SDL_CONFIG}" = "no" - then - AC_PATH_PROG(SDL11_CONFIG, sdl11-config, no, ${SDL_PATH}) - SDL_CONFIG=${SDL11_CONFIG} - SDL_HEADER="SDL11/SDL.h" - SDL_IMAGE="SDL11/SDL_image.h" - fi - if test "${SDL_CONFIG}" = "no" - then - AC_PATH_PROG(SDL_CONFIG, sdl-config, no, ${SDL_PATH}) - SDL_HEADER="SDL/SDL.h" - SDL_IMAGE="SDL/SDL_image.h" - fi - # check for cross-compiling - SDL_PREFIX= - AC_ARG_WITH(sdl-prefix, - [ --with-sdl-prefix=PATH path to libsdl (needed for cross-compiling), - e.g use as: - --with-sdl-prefix=/usr/local/arm/2.95.3/arm-linux/usr)],[],[]) - if test "${with_sdl_prefix}" != "no" -a -n "${with_sdl_prefix}" - then - SDL_PREFIX="--prefix=${with_sdl_prefix}" - fi - if test "${SDL_CONFIG}" != "no" - then - # 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} ${SDL_PREFIX} --cflags | sed 's,SDL,,'`]) - VLC_ADD_LIBS([vout_sdl aout_sdl sdl_image],[`${SDL_CONFIG} ${SDL_PREFIX} --libs | sed 's,-rdynamic,,'`]) - CPPFLAGS="${CPPFLAGS_save} ${CFLAGS_vout_sdl}" - AC_CHECK_HEADERS(${SDL_HEADER}, AC_DEFINE_UNQUOTED(SDL_INCLUDE_FILE, - <${SDL_HEADER}>, Indicate whether we should use SDL/SDL.h or SDL11/SDL.h), - [ AC_CHECK_HEADERS(SDL.h, AC_DEFINE(SDL_INCLUDE_FILE, , - As a last resort we also test for SDL.h presence), - [ AC_MSG_ERROR([The development package for SDL is not installed. -Please install it and try again. Alternatively you can also configure with ---disable-sdl.]) - ])]) - AS_IF([ test "${enable_sdl_image}" != "no"],[ - AC_CHECK_HEADERS(${SDL_IMAGE}, [AC_DEFINE_UNQUOTED(SDL_IMAGE_INCLUDE_FILE, - <${SDL_IMAGE}>, Indicate the path of 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_CHECK_HEADERS(SDL_image.h, AC_DEFINE(SDL_IMAGE_INCLUDE_FILE, , - As a last resort we also test for SDL_image.h presence), - [ AC_MSG_WARN([The development package for SDL_image is not installed. - You should install it alongside your SDL package.]) - ])]) - ]) - CPPFLAGS="${CPPFLAGS_save}" - if expr 1.1.5 \> `${SDL_CONFIG} --version` >/dev/null - then - AC_MSG_ERROR([The development package for SDL is not installed. -Please install it and try again. Alternatively you can also configure with ---disable-sdl.]) - fi - - elif test "${enable_sdl}" = "yes" - then - AC_MSG_ERROR([I couldn't find the SDL package. You can download libSDL + 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. ]) + fi fi fi @@ -3746,7 +3831,7 @@ fi dnl dnl libxml2 module dnl -PKG_ENABLE_MODULES_VLC([libxml2], [xml], [libxml-2.0 >= 2.5], [libxml2 support],[auto]) +PKG_ENABLE_MODULES_VLC([LIBXML2], [xml], [libxml-2.0 >= 2.5], [libxml2 support],[auto]) dnl dnl SVG module @@ -3819,7 +3904,7 @@ dnl dnl Windows DirectX module dnl -if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce" -o "${SYS}" = "cygwin" +if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce" then VLC_ADD_PLUGIN([panoramix]) fi @@ -3828,17 +3913,14 @@ AC_ARG_ENABLE(directx, [ --enable-directx Win32 DirectX support (default enabled on Win32)]) if test "${enable_directx}" != "no" then - if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce" -o "${SYS}" = "cygwin" + if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce" then - AC_ARG_WITH(directx, - [ --with-directx=PATH Win32 DirectX headers]) - if test -z "${with_directx}" - then AC_CHECK_HEADERS(ddraw.h, [ VLC_ADD_PLUGIN([directx]) VLC_ADD_PLUGIN([aout_directx]) VLC_ADD_LIBS([directx],[-lgdi32]) - ]) + ],[AC_MSG_ERROR([Cannot find DirectX headers!])] + ) AC_CHECK_HEADERS(GL/gl.h, [ VLC_ADD_PLUGIN([glwin32]) VLC_ADD_LIBS([glwin32],[-lopengl32 -lgdi32]) @@ -3847,23 +3929,29 @@ then [ VLC_ADD_PLUGIN([direct3d]) VLC_ADD_LIBS([direct3d],[-lgdi32]) ]) - else - AC_MSG_CHECKING(for directX headers in ${with_directx}) - if test -f ${with_directx}/ddraw.h - then - VLC_ADD_PLUGIN([directx]) - VLC_ADD_PLUGIN([aout_directx]) - VLC_ADD_CPPFLAGS([directx aout_directx],[-I${with_directx}]) - VLC_ADD_LIBS([directx],[-lgdi32]) - AC_MSG_RESULT(yes) - else - AC_MSG_RESULT(no) - AC_MSG_ERROR([Cannot find ${with_directx}/ddraw.h!]) - fi - fi + VLC_ADD_LIBS([direct3d directx glwin32],[-lole32]) fi fi +dnl +dnl win32 GDI plugin +dnl +AC_ARG_ENABLE(wingdi, + [ --enable-wingdi Win32 GDI module (default enabled on Win32)]) +if test "${enable_wingdi}" != "no"; then + if test "${SYS}" = "mingw32"; then + VLC_ADD_PLUGIN([wingdi]) + VLC_ADD_LIBS([wingdi],[-lgdi32 -lole32]) + fi + if test "${SYS}" = "mingwce"; then + VLC_ADD_PLUGIN([wingdi]) + VLC_ADD_PLUGIN([wingapi]) + VLC_ADD_LIBS([wingdi],[-laygshell]) + VLC_ADD_LIBS([wingapi],[-laygshell]) + fi +fi + + dnl dnl Linux framebuffer module dnl @@ -3898,6 +3986,7 @@ AC_ARG_ENABLE(omapfb, AC_CHECK_HEADERS(X11/Xlib.h, [ VLC_ADD_LIBS([omapfb],[${X_LIBS} ${X_PRE_LIBS} -lX11]) ]) ]) + VLC_ADD_PLUGIN([swscale_omap]) fi dnl @@ -4021,25 +4110,7 @@ fi dnl dnl libcaca plugin dnl -PKG_ENABLE_MODULES_VLC([caca], [], [caca >= 0.99.beta1], [libcaca output],[auto]) - -dnl -dnl win32 GDI plugin -dnl -AC_ARG_ENABLE(wingdi, - [ --enable-wingdi Win32 GDI module (default enabled on Win32)]) -if test "${enable_wingdi}" != "no"; then - if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"; then - VLC_ADD_PLUGIN([wingdi]) - VLC_ADD_LIBS([wingdi],[-lgdi32]) - fi - if test "${SYS}" = "mingwce"; then - VLC_ADD_PLUGIN([wingdi]) - VLC_ADD_PLUGIN([wingapi]) - VLC_ADD_LIBS([wingdi],[-laygshell]) - VLC_ADD_LIBS([wingapi],[-laygshell]) - fi -fi +PKG_ENABLE_MODULES_VLC([CACA], [], [caca >= 0.99.beta1], [libcaca output],[auto]) dnl dnl Audio plugins @@ -4086,7 +4157,7 @@ dnl AC_ARG_ENABLE(waveout, [ --enable-waveout Win32 waveOut module (default enabled on Win32)]) if test "${enable_waveout}" != "no"; then - if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"; then + if test "${SYS}" = "mingw32"; then VLC_ADD_PLUGIN([waveout]) VLC_ADD_LIBS([waveout],[-lwinmm]) fi @@ -4243,7 +4314,7 @@ if test "${enable_skins2}" = "yes" || fi fi - if test "${skins2_missing_lib}" = "no" && (test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"); then + if test "${skins2_missing_lib}" = "no" && (test "${SYS}" = "mingw32"); then VLC_ADD_PLUGIN([skins2]) ALIASES="${ALIASES} svlc" VLC_ADD_CPPFLAGS([skins2],[-U_OFF_T_ -U_off_t -Imodules/gui/skins2 -DWIN32_SKINS]) @@ -4263,6 +4334,7 @@ if test "${enable_skins2}" = "yes" || VLC_ADD_CPPFLAGS([skins2],[-Imodules/gui/skins2 ${X_CFLAGS} -DX11_SKINS]) VLC_ADD_CXXFLAGS([skins2],[-O2 -fno-rtti]) VLC_ADD_LIBS([skins2],[${X_LIBS} ${X_PRE_LIBS} -lXext -lX11]) + need_xid_provider="no" fi fi fi fi AM_CONDITIONAL(BUILD_SKINS, [test "${enable_skins2}" = "yes" || @@ -4270,49 +4342,25 @@ AM_CONDITIONAL(BUILD_SKINS, [test "${enable_skins2}" = "yes" || test "${SYS}" != "mingwce" && test "${enable_skins2}" != "no")]) dnl -dnl PDA Gtk+2 module +dnl Hildon UI dnl -AC_ARG_ENABLE(pda, - [ --enable-pda PDA interface needs Gtk2 support (default disabled)]) -if test "${enable_pda}" = "yes" -then - PKG_CHECK_MODULES(GTK2, [gtk+-2.0 >= 2.0.0, gthread-2.0]) - VLC_ADD_CFLAGS([gtk2],[${GTK2_CFLAGS}]) - VLC_ADD_LIBS([gtk2],[${GTK2_LIBS}]) - VLC_ADD_CFLAGS([pda],[${GTK2_CFLAGS} ${CFLAGS_pda}]) - VLC_ADD_LIBS([pda],[${LDFLAGS_pda}]) - VLC_ADD_LIBS([pda],[${GTK2_LIBS}]) - VLC_ADD_PLUGIN([pda]) - if test "${SYS}" != "mingw32"; then - NEED_GTK2_MAIN=yes - VLC_ADD_CFLAGS([gtk2_main],[$GTK2_CFLAGS]) - VLC_ADD_LIBS([gtk2_main],[$GTK2_LIBS]) - fi -fi -AM_CONDITIONAL(BUILD_PDA, [test "${enable_pda}" = "yes"]) - -dnl -dnl Maemo -dnl -AC_ARG_ENABLE(maemo, - [ --enable-maemo Internet tablets based on Maemo SDK (default disabled)]) -if test "${enable_maemo}" = "yes" -then +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([maemo],[${HILDON_CFLAGS}]) - VLC_ADD_LIBS([maemo],[${HILDON_LIBS}]) - VLC_ADD_PLUGIN([maemo]) - VLC_ADD_PLUGIN([swscale_maemo]) - AC_DEFINE([BUILD_MAEMO], 1, [Define if you are using Maemo interfaces]) + VLC_ADD_CFLAGS([hildon],[${HILDON_CFLAGS}]) + VLC_ADD_LIBS([hildon],[${HILDON_LIBS}]) + VLC_ADD_PLUGIN([hildon]) ALIASES="${ALIASES} mvlc" + need_xid_provider="no" ], [ - AS_IF([test "${enable_maemo}" = "yes"],[ + AS_IF([test "${enable_hildon}" = "yes"],[ AC_MSG_ERROR([Hildon libraries not found]) ]) - enable_maemo="no" + enable_hildon="no" ]) -fi -AM_CONDITIONAL(BUILD_MAEMO, [test "${enable_maemo}" = "yes"]) +]) +AM_CONDITIONAL(BUILD_HILDON, [test "${enable_hildon}" = "yes"]) dnl dnl QT 4 @@ -4324,19 +4372,19 @@ AC_ARG_ENABLE(qt4, AS_IF([test "${enable_qt4}" != "no"], [ 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"], [ + AS_IF([test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" -a "${SYS}" != "darwin"], [ VLC_ADD_LIBS([qt4],[$QT4_LIBS -lX11]) + need_xid_provider="no" ], [ VLC_ADD_LIBS([qt4],[$QT4_LIBS -lole32]) ]) - QT4LOCALEDIR="$($PKG_CONFIG --variable=prefix QtCore)/share/qt4/translations/" + 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,`$PKG_CONFIG --variable=exec_prefix QtCore`/bin) - AC_PATH_PROG(RCC, rcc, rcc,`$PKG_CONFIG --variable=exec_prefix QtCore`/bin) - AC_PATH_PROGS(UIC, [uic-qt4 uic], uic,`$PKG_CONFIG --variable=exec_prefix QtCore`/bin) + 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) ], [ AS_IF([test "${enable_qt4}" = "yes"],[ AC_MSG_ERROR([Qt 4 library not found]) @@ -4427,7 +4475,7 @@ then 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]) + 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]) @@ -4521,6 +4569,13 @@ then ]) fi +dnl +dnl Post-interface configuration checks +dnl +AS_IF([test "$need_xid_provider" = "yes"], [ + AC_MSG_ERROR([X11 video outputs need a window provider (Qt4, Skins2, Hildon or xcb-utils), but none were found. Please install xcb-keysyms.]) +]) + dnl dnl Visualisation plugin dnl @@ -4534,12 +4589,12 @@ fi dnl dnl goom visualization plugin dnl -PKG_ENABLE_MODULES_VLC([goom], [], [libgoom2], [goom visualization plugin], [auto]) +PKG_ENABLE_MODULES_VLC([GOOM], [], [libgoom2], [goom visualization plugin], [auto]) dnl dnl libprojectM visualization plugin dnl -PKG_ENABLE_MODULES_VLC([projectm], [], [libprojectM], [projectM visualization plugin], [auto]) +PKG_ENABLE_MODULES_VLC([PROJECTM], [], [libprojectM], [projectM visualization plugin], [auto]) dnl dnl AtmoLight (homebrew AmbiLight) @@ -4560,8 +4615,8 @@ dnl Bonjour services discovery PKG_ENABLE_MODULES_VLC([BONJOUR], [], [avahi-client >= 0.6], [Bonjour services discovery], [auto]) dnl -dnl HAL services discovery -PKG_ENABLE_MODULES_VLC([HAL], [], [hal >= 0.5.0], [Linux HAL services discovery], [auto]) +dnl libudev services discovery +PKG_ENABLE_MODULES_VLC([UDEV], [], [libudev >= 142], [Linux udev services discovery], [auto]) dnl dnl MTP devices services discovery @@ -4589,16 +4644,32 @@ dnl dnl libgcrypt dnl AC_ARG_ENABLE(libgcrypt, - [ --disable-libgcrypt libgcrypts support (default enabled)]) + [ --disable-libgcrypt gcrypt support (default enabled)]) AS_IF([test "${enable_libgcrypt}" != "no"], [ - AM_PATH_LIBGCRYPT([1:1.1.94], [have_libgcrypt="yes"], [have_libgcrypt="no"]) + AC_CHECK_DECL([GCRYCTL_SET_THREAD_CBS], [ + libgcrypt-config --version >/dev/null || \ + AC_MSG_ERROR([gcrypt.h present but libgcrypt-config could not be found]) + AC_CHECK_LIB(gcrypt, gcry_control, [ + have_libgcrypt="yes" + GCRYPT_CFLAGS="`libgcrypt-config --cflags`" + GCRYPT_LIBS="`libgcrypt-config --libs`" + ], [ + AC_MSG_ERROR([libgcrypt not found. Install libgcrypt or use --disable-libgcrypt. Have a nice day.]) + ], [`libgcrypt-config --libs`]) + ], [ + AC_MSG_ERROR([libgcrypt version 1.1.94 or higher not found. Install libgcrypt or use --disable-libgcrypt. Have a nice day.]) + ], [#include ] + ) ]) + if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"; then AS_IF([test "${have_libgcrypt}" = "yes"],[ - VLC_ADD_LIBS([rtp stream_out_rtp], [${LIBGCRYPT_LIBS}]) + VLC_ADD_LIBS([rtp stream_out_rtp], [${GCRYPT_LIBS}]) ]) fi -AM_CONDITIONAL([HAVE_LIBGCRYPT], [test "${have_libgcrypt}" = "yes"]) +AC_SUBST(GCRYPT_CFLAGS) +AC_SUBST(GCRYPT_LIBS) +AM_CONDITIONAL([HAVE_GCRYPT], [test "${have_libgcrypt}" = "yes"]) dnl dnl TLS/SSL @@ -4617,8 +4688,8 @@ AS_IF([test "${enable_gnutls}" != "no"], [ ]) dnl The GnuTLS plugin invokes gcry_control directly. AS_IF([test "${have_libgcrypt}" = "yes"],[ - VLC_ADD_LIBS([gnutls], [${LIBGCRYPT_LIBS}]) - VLC_ADD_CFLAGS([gnutls], [${LIBGCRYPT_CFLAGS}]) + VLC_ADD_LIBS([gnutls], [${GCRYPT_LIBS}]) + VLC_ADD_CFLAGS([gnutls], [${GCRYPT_CFLAGS}]) ]) VLC_ADD_LIBS([gnutls], [$GNUTLS_LIBS]) ], [ @@ -4638,8 +4709,8 @@ AC_ARG_ENABLE(remoteosd, AS_IF([test "${enable_remoteosd}" != "no"], [ AS_IF([test "${have_libgcrypt}" = "yes"],[ VLC_ADD_PLUGIN([remoteosd]) - VLC_ADD_LIBS([remoteosd], ${LIBGCRYPT_LIBS}) - VLC_ADD_CFLAGS([remoteosd], ${LIBGCRYPT_CFLAGS}) + VLC_ADD_LIBS([remoteosd], ${GCRYPT_LIBS}) + VLC_ADD_CFLAGS([remoteosd], ${GCRYPT_CFLAGS}) ], [ AC_MSG_ERROR([libgcrypt support required for RemoteOSD plugin]) ]) @@ -4653,14 +4724,24 @@ 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} -lgpg-error]) - VLC_ADD_CFLAGS([stream_out_raop], [${LIBGCRYPT_CFLAGS}]) + VLC_ADD_LIBS([stream_out_raop], [${GCRYPT_LIBS} -lgpg-error]) + VLC_ADD_CFLAGS([stream_out_raop], [${GCRYPT_CFLAGS}]) ], [ AC_MSG_RESULT(no) AC_MSG_WARN([libgcrypt support required for RAOP plugin]) ]) +dnl +dnl OSSO (Maemo screen blanking) plugin +dnl +PKG_ENABLE_MODULES_VLC([OSSO], [], [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.]) +]) + + dnl dnl update checking system dnl @@ -4672,8 +4753,8 @@ then then AC_MSG_ERROR([libgcrypt is required for update checking system]) fi - VLC_ADD_LIBS([libvlccore], [${LIBGCRYPT_LIBS}]) - VLC_ADD_CFLAGS([libvlccore], [${LIBGCRYPT_CFLAGS}]) + VLC_ADD_LIBS([libvlccore], [${GCRYPT_LIBS}]) + VLC_ADD_CFLAGS([libvlccore], [${GCRYPT_CFLAGS}]) AC_DEFINE([UPDATE_CHECK], 1, [Define if you want to use the VLC update mechanism]) fi @@ -4729,7 +4810,7 @@ AC_ARG_WITH(wine-sdk-path, [ --with-wine-sdk-path=PATH path to wine sdk]) if test "${enable_activex}" != "no" then - if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin" + if test "${SYS}" = "mingw32" then AC_CHECK_PROGS(MIDL, [midl], no) if test "${with_wine_sdk_path}" != "" @@ -4805,8 +4886,8 @@ then echo "Using $i.pc files." >&5 echo "Using $i.pc files." >&6 found=1 - MOZILLA_CFLAGS=$( $PKG_CONFIG --cflags "$i" ) - MOZILLA_LIBS=$( $PKG_CONFIG --libs "$i" ) + MOZILLA_CFLAGS=$(eval $PKG_CONFIG --cflags "$i" ) + MOZILLA_LIBS=$(eval $PKG_CONFIG --libs "$i" ) break fi done @@ -4939,13 +5020,7 @@ fi AC_LANG_POP(C++) 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([xvmc glx omapfb],[-DHAVE_OSSO ${DBUS_CFLAGS} ${GLIB2_CFLAGS}]) - VLC_ADD_LIBS([xvmc glx omapfb],[-losso]) - ]) -]) +dnl Tests for Xsp AC_CHECK_LIB(Xsp, XSPSetPixelDoubling,[ VLC_ADD_CPPFLAGS([xvmc glx],[-DHAVE_XSP]) VLC_ADD_LIBS([xvmc glx],[-lXsp]) @@ -4972,39 +5047,6 @@ then VLC_ADD_PLUGIN([test4]) fi -dnl -dnl gtk_main plugin -dnl -if test "${NEED_GTK_MAIN}" != "no" -then - VLC_ADD_PLUGIN([gtk_main]) - VLC_ADD_CFLAGS([gtk_main],[${CFLAGS_gtk}]) - VLC_ADD_LDFLAGS([gtk_main],[${LDFLAGS_gtk}]) -fi - -if test "${NEED_GNOME_MAIN}" != "no" -then - VLC_ADD_PLUGIN([gnome_main]) - VLC_ADD_CFLAGS([gnome_main],[${CFLAGS_gtk} ${CFLAGS_gnome}]) - VLC_ADD_LDFLAGS([gnome_main],[${LDFLAGS_gtk} ${LDFLAGS_gnome}]) -fi - -if test "${NEED_GTK2_MAIN}" != "no" -then - VLC_ADD_PLUGIN([gtk2_main]) - VLC_ADD_CFLAGS([gtk2],[-DNEED_GTK2_MAIN]) - VLC_ADD_CFLAGS([pda],[-DNEED_GTK2_MAIN]) - VLC_ADD_CFLAGS([gtk2_main],[${CFLAGS_gtk2} ${CFLAGS_pda}]) - VLC_ADD_LDFLAGS([gtk2_main],[${LDFLAGS_gtk2} ${LDFLAGS_pda}]) -fi - -if test "${NEED_GNOME2_MAIN}" != "no" -then - VLC_ADD_PLUGIN([gnome2_main]) - VLC_ADD_CFLAGS([gnome2_main],[${CFLAGS_gtk2} ${CFLAGS_gnome2}]) - VLC_ADD_LDFLAGS([gnome2_main],[${LDFLAGS_gtk2} ${LDFLAGS_gnome2}]) -fi - dnl dnl qte_main plugin dnl @@ -5194,9 +5236,8 @@ AC_CONFIG_FILES([ modules/demux/playlist/Makefile modules/gui/Makefile modules/gui/beos/Makefile - modules/gui/pda/Makefile modules/gui/macosx/Makefile - modules/gui/maemo/Makefile + modules/gui/hildon/Makefile modules/gui/minimal_macosx/Makefile modules/gui/qnx/Makefile modules/gui/qt4/Makefile @@ -5213,7 +5254,6 @@ AC_CONFIG_FILES([ modules/misc/osd/Makefile modules/misc/stats/Makefile modules/misc/xml/Makefile - modules/misc/probe/Makefile modules/mux/Makefile modules/mux/mpeg/Makefile modules/packetizer/Makefile