X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=configure.ac;h=0580ab21094a0ab4eca7605c3d380e2bc721cbab;hb=4d4f72b82d2f1ae4209e0118791275e83488468c;hp=d317080d0b53929947c4dea2cf660faf539dd727;hpb=246a4e235ac1c30b79318ffd627e1cfe7d8c1ad6;p=vlc diff --git a/configure.ac b/configure.ac index d317080d0b..0580ab2109 100644 --- a/configure.ac +++ b/configure.ac @@ -1,18 +1,19 @@ dnl Autoconf settings for vlc -AC_INIT(vlc,0.8.6-svn) +AC_INIT(vlc,0.9.0-svn) VERSION_MAJOR="0" -VERSION_MINOR="8" -VERSION_REVISION="6" +VERSION_MINOR="9" +VERSION_REVISION="0" VERSION_EXTRA="svn" -CONFIGURE_LINE="$0 $*" -CODENAME="Janus" +CONFIGURE_LINE="$0 $ac_configure_args" +CODENAME="Grishenko" AC_PREREQ(2.59) AC_CONFIG_SRCDIR(src/libvlc.c) AC_CONFIG_AUX_DIR(autotools) -AC_CANONICAL_SYSTEM +AC_CANONICAL_BUILD +AC_CANONICAL_HOST AM_INIT_AUTOMAKE([1.7 check-news dist-bzip2]) AM_CONFIG_HEADER(config.h) @@ -139,7 +140,7 @@ LDFLAGS_vlc="${LDFLAGS}" dnl dnl Check the operating system dnl -case "${target_os}" in +case "${host_os}" in "") SYS=unknown ;; @@ -152,9 +153,9 @@ case "${target_os}" in VLC_ADD_LDFLAGS([dvd dvdcss vcd cdda vcdx cddax],[-ldvd]) ;; *bsd*) - SYS="${target_os}" + SYS="${host_os}" CFLAGS_save="${CFLAGS_save} -pthread"; CFLAGS="${CFLAGS_save}" - case "${target_os}" in + case "${host_os}" in freebsd*) CPPFLAGS_save="${CPPFLAGS_save} -I/usr/local/include" CPPFLAGS="${CPPFLAGS_save}" @@ -188,7 +189,7 @@ case "${target_os}" in AC_CHECK_TOOL(WINDRES, windres, :) enable_libtool="no" - case "${target_os}" in + case "${host_os}" in *mingw32*) SYS=mingw32 ;; @@ -257,7 +258,7 @@ case "${target_os}" in fi ;; *) - SYS="${target_os}" + SYS="${host_os}" ;; esac AM_CONDITIONAL(HAVE_BEOS, test "${SYS}" = "beos") @@ -273,6 +274,8 @@ dnl AC_DISABLE_STATIC AC_LIBTOOL_DLOPEN dnl AC_LIBTOOL_WIN32_DLL - couldn't get libtool to work on Win32 so far +m4_undefine([AC_PROG_F77]) +m4_defun([AC_PROG_F77],[]) AC_PROG_LIBTOOL AC_ARG_ENABLE(libtool, @@ -297,7 +300,7 @@ fi dnl dnl Gettext stuff dnl -ALL_LINGUAS="ca cs da de en_GB es fr gl he hi hu it ja ka ko nl oc pt_BR ro ru sv tr zh_CN zh_TW" +ALL_LINGUAS="ca cs da de en_GB es fr gl he hi hu it ja ka ko ms nl oc pt_BR ro ru sk sl sv tr zh_CN zh_TW" AM_GNU_GETTEXT_VERSION(0.11.5) AM_GNU_GETTEXT AS_IF([test "${nls_cv_force_use_gnu_gettext}" = "yes"], [ @@ -561,13 +564,13 @@ AM_CONDITIONAL(BUILD_GETOPT, ${need_getopt}) if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then AC_TYPE_SIGNAL AC_CHECK_LIB(m,cos,[ - VLC_ADD_LDFLAGS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom visual],[-lm]) + VLC_ADD_LDFLAGS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom visual panoramix rotate noise],[-lm]) ]) AC_CHECK_LIB(m,pow,[ - VLC_ADD_LDFLAGS([ffmpeg ffmpegaltivec stream_out_transrate i420_rgb faad twolame equalizer param_eq vlc freetype mpc dmo quicktime realaudio galaktos],[-lm]) + VLC_ADD_LDFLAGS([ffmpeg ffmpegaltivec stream_out_transrate i420_rgb faad twolame equalizer param_eq vlc vorbis freetype mod mpc dmo quicktime realaudio galaktos opengl],[-lm]) ]) AC_CHECK_LIB(m,sqrt,[ - VLC_ADD_LDFLAGS([headphone_channel_mixer normvol speex],[-lm]) + VLC_ADD_LDFLAGS([headphone_channel_mixer normvol speex mono],[-lm]) ]) AC_CHECK_LIB(m,ceil,[ VLC_ADD_LDFLAGS([mosaic],[-lm]) @@ -772,6 +775,7 @@ fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" AC_HEADER_TIME +AC_CHECK_TYPE(ssize_t, int) AC_SEARCH_LIBS(poll, [poll], [AC_DEFINE(HAVE_POLL, 1, [Define to 1 if the OS is usabl... err, has poll().])]) dnl Check for dirent @@ -879,87 +883,28 @@ AC_CACHE_CHECK([for ntohl in sys/param.h], [ac_cv_c_ntohl_sys_param_h], [CFLAGS="${CFLAGS_save} -Wall -Werror" AC_TRY_COMPILE([#include ], - [void foo() { int meuh; ntohl(meuh); }], + [int meuh; ntohl(meuh);], ac_cv_c_ntohl_sys_param_h=yes, ac_cv_c_ntohl_sys_param_h=no)]) if test "${ac_cv_c_ntohl_sys_param_h}" != "no"; then AC_DEFINE(NTOHL_IN_SYS_PARAM_H, 1, Define if defines ntohl.) fi +CFLAGS="${CFLAGS_save}" -# XXX: do this with an M4 macro? -#dnl Check for various -W flags -#for flag in "" all unreachable-code conversion sign-compare disabled-optimization -#do -# AC_CACHE_CHECK([if \$CC accepts -W${flag}], -# [ac_cv_c_W${flag}], -# [CFLAGS="-W${flag} ${CFLAGS_save}" -# AC_TRY_COMPILE([],,ac_cv_c_W${flag}=yes, ac_cv_c_W${flag}=no)]) -# if test "${ac_cv_c_W${flag}}" != "no"; then -# CFLAGS_save="-W${flag} ${CFLAGS_save}"; CFLAGS="${CFLAGS_save}" -# CXXFLAGS_save="-W${flag} ${CFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}" -# OBJCFLAGS_save="-W${flag} ${OBJCFLAGS_save}"; OBJCFLAGS="${OBJCFLAGS_save}" -# fi -#done - -AC_CACHE_CHECK([if $CC accepts -Wall], - [ac_cv_c_Wall], - [CFLAGS="-Wall ${CFLAGS_save}" - AC_TRY_COMPILE([],,ac_cv_c_Wall=yes, ac_cv_c_Wall=no)]) - -AC_CACHE_CHECK([if $CC accepts -Wextra], - [ac_cv_c_Werror], - [CFLAGS="-Werror ${CFLAGS_save}" - AC_TRY_COMPILE([],,ac_cv_c_Werror=yes, ac_cv_c_Werror=no)]) - -AC_CACHE_CHECK([if $CC accepts -Wconversion], - [ac_cv_c_Wconversion], - [CFLAGS="-Wconversion ${CFLAGS_save}" - AC_TRY_COMPILE([],,ac_cv_c_Wconversion=yes, ac_cv_c_Wconversion=no)]) - -AC_CACHE_CHECK([if $CC accepts -Wunreachable-code], - [ac_cv_c_Wunreachable_code], - [CFLAGS="-Wunreachable-code ${CFLAGS_save}" - AC_TRY_COMPILE([],,ac_cv_c_Wunreachable_code=yes, ac_cv_c_Wunreachable_code=no)]) - -AC_CACHE_CHECK([if $CC accepts -Wsign-compare], - [ac_cv_c_Wsign_compare], - [CFLAGS="-Wsign-compare ${CFLAGS_save}" - AC_TRY_COMPILE([],,ac_cv_c_Wsign_compare=yes, ac_cv_c_Wsign_compare=no)]) - -if test "${ac_cv_c_Wall}" != "no"; then - CFLAGS_save="-Wall ${CFLAGS_save}"; CFLAGS="${CFLAGS_save}" - CXXFLAGS_save="-Wall ${CFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}" - OBJCFLAGS_save="-Wall ${OBJCFLAGS_save}"; OBJCFLAGS="${OBJCFLAGS_save}" -fi - -if test "${ac_cv_c_Wextra}" != "no"; then - CFLAGS_save="-Wextra ${CFLAGS_save}"; CFLAGS="${CFLAGS_save}" - CXXFLAGS_save="-Wextra ${CFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}" - OBJCFLAGS_save="-Wextra ${OBJCFLAGS_save}"; OBJCFLAGS="${OBJCFLAGS_save}" -fi - -if test "${ac_cv_c_Wsign_compare}" != "no"; then - CFLAGS_save="-Wsign-compare ${CFLAGS_save}"; CFLAGS="${CFLAGS_save}" - CXXFLAGS_save="-Wsign-compare ${CFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}" - OBJCFLAGS_save="-Wsign-compare ${OBJCFLAGS_save}"; OBJCFLAGS="${OBJCFLAGS_save}" -fi - -dnl Check for -pipe -AC_CACHE_CHECK([if \$CC accepts -pipe], - [ac_cv_c_pipe], - [CFLAGS="${CFLAGS_save} -pipe" - AC_TRY_COMPILE([],,ac_cv_c_pipe=yes, ac_cv_c_pipe=no)]) -if test "${ac_cv_c_pipe}" != "no"; then - CFLAGS_save="${CFLAGS_save} -pipe"; CFLAGS="${CFLAGS_save}" - CXXFLAGS_save="${CXXFLAGS_save} -pipe"; CXXFLAGS="${CXXFLAGS_save}" - OBJCFLAGS_save="${OBJCFLAGS_save} -pipe"; OBJCFLAGS="${OBJCFLAGS_save}" -fi +RDC_PROG_CC_WFLAGS([all extra no-unused-parameter sign-compare undef pointer-arith bad-function-cast cast-align write-strings old-style-definition missing-prototypes packed volatile-register-var]) +RDC_PROG_CC_FLAGS_IFELSE([-pipe]) + +dnl This helps detect broken plugins with undefined symbols +dnl Better fail loudly at build-time than silenty at run-time. +RDC_PROG_LINK_FLAGS_IFELSE([-Wl,-z,defs], [ + VLC_ADD_LDFLAGS([plugin],[-Wl,-z,defs]) +]) dnl Check for various optimization flags AC_CACHE_CHECK([if \$CC accepts -Os], [ac_cv_c_os], [CFLAGS="${CFLAGS_save} -Os" AC_TRY_COMPILE([],,ac_cv_c_os=yes, ac_cv_c_os=no)]) -if test "${ac_cv_c_os}" != "no" -a "${target_cpu}" = "mipsel"; then +if test "${ac_cv_c_os}" != "no" -a "${host_cpu}" = "mipsel"; then CFLAGS_OPTIM="${CFLAGS_OPTIM} -Os" fi @@ -967,7 +912,7 @@ AC_CACHE_CHECK([if \$CC accepts -O3], [ac_cv_c_o3], [CFLAGS="${CFLAGS_save} -O3" AC_TRY_COMPILE([],,ac_cv_c_o3=yes, ac_cv_c_o3=no)]) -if test "${ac_cv_c_o3}" != "no" -a "${target_cpu}" != "mipsel"; then +if test "${ac_cv_c_o3}" != "no" -a "${host_cpu}" != "mipsel"; then CFLAGS_OPTIM="${CFLAGS_OPTIM} -O3" fi @@ -975,7 +920,7 @@ AC_CACHE_CHECK([if \$CC accepts -O2], [ac_cv_c_o2], [CFLAGS="${CFLAGS_save} -O2" AC_TRY_COMPILE([],,ac_cv_c_o2=yes, ac_cv_c_o2=no)]) -if test "${ac_cv_c_o2}" != "no" -a "${target_cpu}" != "mipsel"; then +if test "${ac_cv_c_o2}" != "no" -a "${host_cpu}" != "mipsel"; then if test "${ac_cv_c_o3}" = "no"; then CFLAGS_OPTIM="${CFLAGS_OPTIM} -O2" fi @@ -985,7 +930,7 @@ else [ac_cv_c_o], [CFLAGS="${CFLAGS_save} -O" AC_TRY_COMPILE([],,ac_cv_c_o=yes, ac_cv_c_o=no)]) - if test "${ac_cv_c_o}" != "no" -a "${target_cpu}" != "mipsel"; then + if test "${ac_cv_c_o}" != "no" -a "${host_cpu}" != "mipsel"; then if test "${ac_cv_c_o3}" = "no"; then CFLAGS_OPTIM="${CFLAGS_OPTIM} -O" fi @@ -1115,12 +1060,12 @@ fi dnl dnl Check the CPU dnl -case "${target_cpu}" in +case "${host_cpu}" in "") ARCH=unknown ;; *) - ARCH="${target_cpu}" + ARCH="${host_cpu}" ;; esac @@ -1138,9 +1083,9 @@ dnl dnl default modules dnl VLC_ADD_PLUGINS([dummy logger memcpy]) -VLC_ADD_PLUGINS([mpgv mpga m4v m4a h264 ps pva avi asf mp4 rawdv nsv real aiff mjpeg demuxdump flac]) -VLC_ADD_PLUGINS([cvdsub svcdsub spudec subsdec dvbsub mpeg_audio lpcm a52 dts cinepak flacdec]) -VLC_ADD_PLUGINS([deinterlace invert adjust transform wave ripple psychedelic gradient motionblur rv32]) +VLC_ADD_PLUGINS([mpgv mpga m4v m4a h264 ps pva avi asf mp4 rawdv nsv real aiff mjpeg demuxdump flacsys tta]) +VLC_ADD_PLUGINS([cvdsub svcdsub spudec subsdec dvbsub mpeg_audio lpcm a52 dts cinepak flac]) +VLC_ADD_PLUGINS([deinterlace invert adjust transform wave ripple psychedelic gradient motionblur rv32 rotate noise]) VLC_ADD_PLUGINS([fixed32tos16 s16tofixed32 u8tofixed32 mono]) VLC_ADD_PLUGINS([trivial_resampler ugly_resampler]) VLC_ADD_PLUGINS([trivial_channel_mixer trivial_mixer]) @@ -1156,7 +1101,7 @@ VLC_ADD_PLUGINS([packetizer_mpeg4video packetizer_mpeg4audio]) if test "${SYS}" != "mingwce"; then dnl VLC_ADD_PLUGINS([externrun]) VLC_ADD_PLUGINS([access_fake access_filter_timeshift access_filter_record]) - VLC_ADD_PLUGINS([gestures rc telnet hotkeys netsync showintf time marq podcast shout sap fake]) + VLC_ADD_PLUGINS([gestures rc telnet hotkeys netsync showintf marq podcast shout sap fake folder]) VLC_ADD_PLUGINS([rss mosaic wall motiondetect clone crop]) VLC_ADD_PLUGINS([i420_yuy2 i422_yuy2 i420_ymga]) VLC_ADD_PLUGINS([aout_file linear_resampler bandlimited_resampler]) @@ -1306,12 +1251,12 @@ AC_CACHE_CHECK([if \$CC groks AltiVec C extensions], [ac_cv_c_altivec], [# OS X/PPC test (gcc 4.x) CFLAGS="${CFLAGS_save} -mpim-altivec -force_cpusubtype_ALL" - AC_TRY_COMPILE([], + AC_TRY_COMPILE([vector unsigned char foo;], [vec_ld(0, (unsigned char *)0);], [ac_cv_c_altivec="-mpim-altivec -force_cpusubtype_ALL"], [# OS X/PPC test (gcc 3.x) CFLAGS="${CFLAGS_save} -faltivec" - AC_TRY_COMPILE([], + AC_TRY_COMPILE([vector unsigned char foo;], [vec_ld(1 * sizeof(vector float), (unsigned char *)0);], [ac_cv_c_altivec="-faltivec"], dnl Below this are the Linux tests @@ -1380,11 +1325,13 @@ if test -n "${with_tuning}"; then CFLAGS_TUNING="-mtune=${with_tuning}" fi else - if test "${target_cpu}" = "i686" -o "${target_cpu}" = "i586" -o "${target_cpu}" = "i486" -o "${target_cpu}" = "i386"; then + if test "${SYS}" = "darwin" -a "${host_cpu}" = "i686"; then + CFLAGS_TUNING="-march=pentium-m -mtune=prescott" + elif test "${host_cpu}" = "i686" -o "${host_cpu}" = "i586" -o "${host_cpu}" = "i486" -o "${host_cpu}" = "i386"; then CFLAGS_TUNING="-mtune=pentium2" - elif test "${target_cpu}" = "x86_64"; then + elif test "${host_cpu}" = "x86_64"; then CFLAGS_TUNING="-mtune=athlon64" - elif test "${target_cpu}" = "powerpc"; then + elif test "${host_cpu}" = "powerpc"; then CFLAGS_TUNING="-mtune=G4"; fi fi @@ -1408,7 +1355,7 @@ AS_IF([test "${CFLAGS_TUNING}"], dnl dnl x86 accelerations dnl -if test "${target_cpu}" = "i686" -o "${target_cpu}" = "i586" -o "${target_cpu}" = "x86" -o "${target_cpu}" = "i386" -o "${target_cpu}" = "x86_64" +if test "${host_cpu}" = "i686" -o "${host_cpu}" = "i586" -o "${host_cpu}" = "x86" -o "${host_cpu}" = "i386" -o "${host_cpu}" = "x86_64" then ARCH="${ARCH} mmx" VLC_ADD_BUILTINS([${ACCEL_MODULES}]) @@ -1437,7 +1384,7 @@ AC_ARG_ENABLE(altivec, [ --disable-altivec disable AltiVec optimizations (default enabled on PPC)], [ if test "${enable_altivec}" = "yes"; then ARCH="${ARCH} altivec"; VLC_ADD_BUILTINS([${ACCEL_MODULES}]) fi ], -[ if test "${target_cpu}" = "powerpc"; then ARCH="${ARCH} altivec"; +[ if test "${host_cpu}" = "powerpc"; then ARCH="${ARCH} altivec"; VLC_ADD_BUILTINS([${ACCEL_MODULES}]) fi ]) dnl @@ -1537,7 +1484,7 @@ dnl AC_ARG_ENABLE(notify, [ --enable-notify libnotify notification plugin (default enabled)]) -AS_IF([test "${enable_notify}" != "no"], [ +AS_IF([test "${enable_notify}" != "no" -a "${SYS}" != "mingw32"], [ PKG_CHECK_MODULES(NOTIFY, libnotify, [ VLC_ADD_PLUGINS([notify]) @@ -1559,6 +1506,34 @@ AS_IF([test "${enable_audioscrobbler}" != "no"], [ VLC_ADD_PLUGINS([audioscrobbler]) ]) +dnl +dnl Musicbrainz plugin +dnl +AC_ARG_ENABLE(musicbrainz, + [ --enable-musicbrainz MusicBrainz support (default disabled) ]) + AS_IF([test "${enable_musicbrainz}" = "yes"],[ + PKG_CHECK_MODULES(MUSICBRAINZ, libmusicbrainz, + [ VLC_ADD_PLUGINS([musicbrainz]) + VLC_ADD_LDFLAGS([musicbrainz],[$MUSICBRAINZ_LIBS]) + VLC_ADD_CFLAGS([musicbrainz],[$MUSICBRAINZ_CFLAGS]) ], + [AC_MSG_WARN(MusicBrainz library not found)]) + ]) + + +dnl +dnl Taglibplugin +dnl +AC_ARG_ENABLE(taglib, + [ --enable-taglib Taglib support (default disabled) ]) + AS_IF([test "${enable_taglib}" = "yes"],[ + PKG_CHECK_MODULES(TAGLIB, taglib, + [ VLC_ADD_PLUGINS([taglib]) + VLC_ADD_LDFLAGS([taglib],[$TAGLIB_LIBS]) + VLC_ADD_CXXFLAGS([taglib],[$TAGLIB_CFLAGS]) ], + [AC_MSG_WARN(TagLib library not found)]) + ]) + + dnl dnl Input plugins dnl @@ -1572,13 +1547,13 @@ then AC_MSG_WARN(--{en|dis}able-livedotcom is deprecated. Use --{en|dis}able-live555 instead.) fi -if test "${enable_livedotcom}" = "yes" +if test "${enable_livedotcom}" = "no" then - enable_live555="yes" + enable_live555="no" fi AC_ARG_ENABLE(live555, -[ --enable-live555 live555 RTSP input plugin (default disabled)]) -if test "${enable_live555}" = "yes"; then +[ --enable-live555 live555 RTSP input plugin (default enabled)]) +if test "${enable_live555}" != "no"; then AC_ARG_WITH(live555-tree, [ --with-live555-tree=PATH live.com tree for static linking]) @@ -1651,8 +1626,10 @@ if test "${enable_live555}" = "yes"; then fi else dnl The given live555 wasn't built - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot find ${real_live555_tree}/liveMedia/libliveMedia.a, make sure you compiled live555 in ${with_live555_tree}]) + AC_MSG_RESULT(no) + if test "${enable_live555}" = "yes"; then + AC_MSG_ERROR([cannot find ${real_live555_tree}/liveMedia/libliveMedia.a, make sure you compiled live555 in ${with_live555_tree}]) + fi fi fi fi @@ -2477,8 +2454,8 @@ then dnl Use a custom mod AC_MSG_RESULT(${real_mod_tree}/src/.libs/libmodplug.a) VLC_ADD_PLUGINS([mod]) - VLC_ADD_LDFLAGS([mod],[${real_mod_tree}/src/.libs/libmodplug.a]) - VLC_ADD_CFLAGS([mod],[-I${real_mod_tree}/include]) + VLC_ADD_LDFLAGS([mod],[${real_mod_tree}/src/.libs/libmodplug.a -lstdc++]) + VLC_ADD_CXXFLAGS([mod],[-I${real_mod_tree}/include]) else dnl The given mod wasn't built AC_MSG_RESULT(no) @@ -2488,7 +2465,7 @@ then AC_CHECK_HEADERS(libmodplug/modplug.h, [ VLC_ADD_PLUGINS([mod]) VLC_ADD_CXXFLAGS([mod],[]) - VLC_ADD_LDFLAGS([mod],[-lmodplug])]) + VLC_ADD_LDFLAGS([mod],[-lmodplug -lstdc++])]) fi fi @@ -2780,10 +2757,10 @@ dnl Look for a ffmpeg-config (we are on debian ) AC_PATH_PROG(FFMPEG_CONFIG, ffmpeg-config, no, ${FFMPEG_PATH}) if test "${FFMPEG_CONFIG}" != "no" then - AC_CHECK_HEADERS(ffmpeg/avcodec.h) + AC_CHECK_HEADERS(ffmpeg/avcodec.h, [], [AC_MSG_ERROR([Missing header file ffmpeg/avcodec.h.])] ) AC_CHECK_HEADERS(ffmpeg/avformat.h) AC_CHECK_HEADERS(ffmpeg/avutil.h) - AC_CHECK_HEADERS(postproc/postprocess.h) + AC_CHECK_HEADERS(postproc/postprocess.h, [], [AC_MSG_ERROR([Missing header file postproc/postprocess.h.])] ) VLC_ADD_PLUGINS([ffmpeg]) if test "${enable_sout}" != "no" -a "${enable_switcher}" = "yes"; then VLC_ADD_PLUGINS([stream_out_switcher]) @@ -2796,10 +2773,10 @@ dnl Look for a ffmpeg-config (we are on debian ) dnl Trying with pkg-config PKG_CHECK_MODULES(FFMPEG,[libavcodec, libavformat], [ - AC_CHECK_HEADERS(ffmpeg/avcodec.h) + AC_CHECK_HEADERS(ffmpeg/avcodec.h, [], [AC_MSG_ERROR([Missing header file ffmpeg/avcodec.h.])] ) AC_CHECK_HEADERS(ffmpeg/avformat.h) AC_CHECK_HEADERS(ffmpeg/avutil.h) - AC_CHECK_HEADERS(postproc/postprocess.h) + AC_CHECK_HEADERS(postproc/postprocess.h, [], [AC_MSG_ERROR([Missing header file postproc/postprocess.h.])] ) if test "${SYS}" = "darwin"; then VLC_ADD_BUILTINS([ffmpeg]) else @@ -2834,9 +2811,6 @@ dnl Trying with pkg-config VLC_ADD_LDFLAGS([ffmpeg],[-lavutil]) LDAVUTIL="-lavutil"]) - AC_CHECK_LIB(postproc, pp_postprocess, [ - VLC_ADD_LDFLAGS([ffmpeg],[-lpostproc])]) - AC_CHECK_LIB(avcodec, avcodec_init, [ VLC_ADD_BUILTINS([ffmpeg]) VLC_ADD_LDFLAGS([ffmpeg],[-lavcodec]) @@ -2846,6 +2820,11 @@ dnl Trying with pkg-config [ AC_MSG_ERROR([Could not find ffmpeg on your system: you may get it from http://ffmpeg.sf.net/ (svn version is recommended). Alternatively you can use --disable-ffmpeg to disable the ffmpeg plugins.]) ], [$LDAVUTIL]) + AC_CHECK_LIB(postproc, pp_postprocess, [ + VLC_ADD_LDFLAGS([ffmpeg],[-lpostproc])], + AC_MSG_ERROR([Could not find libpostproc inside FFmpeg. You should configure FFmpeg with --enable-gpl --enable-pp.]), + [$LDAVUTIL]) + AC_CHECK_LIB(avformat, av_open_input_stream, [ VLC_ADD_LDFLAGS([ffmpeg],[-lavformat -lz]) ], [], [-lavcodec -lz $LDAVUTIL]) LDFLAGS="${LDFLAGS_save}" @@ -3109,7 +3088,9 @@ then VLC_ADD_CPPFLAGS([a52tofloat32],[${CPPFLAGS_test}]) ],[ AC_MSG_ERROR([Could not find liba52 on your system: you may get it from http://liba52.sf.net/. Alternatively you can use --disable-a52 to disable the a52 plugin.]) - ]) + ]) + ],[ + AC_MSG_ERROR([Could not find liba52 on your system: you may get it from http://liba52.sf.net/. Alternatively you can use --disable-a52 to disable the a52 plugin.]) ]) CPPFLAGS="${CPPFLAGS_save}" LDFLAGS="${LDFLAGS_save}" @@ -3148,7 +3129,7 @@ if test "${enable_dts}" != "no"; then LDFLAGS="${LDFLAGS_save} ${LDFLAGS_dtstofloat32}" AC_CHECK_LIB(dts_pic, dts_free, [ VLC_ADD_PLUGINS([dtstofloat32]) - VLC_ADD_LDFLAGS([dtstofloat32],[-ldts_pic]) + VLC_ADD_LDFLAGS([dtstofloat32],[-ldts_pic -lm]) ],[ AC_CHECK_LIB(dts, dts_free, [ VLC_ADD_BUILTINS([dtstofloat32]) @@ -3161,7 +3142,7 @@ if test "${enable_dts}" != "no"; then AC_MSG_ERROR([the specified tree hasn't been compiled]) fi ]) - ]) + ], [-lm]) LDFLAGS="${LDFLAGS_save}" else AC_MSG_RESULT(no) @@ -3172,7 +3153,7 @@ if test "${enable_dts}" != "no"; then AC_CHECK_HEADERS(dts.h, [ AC_CHECK_LIB(dts_pic, dts_free, [ VLC_ADD_PLUGINS([dtstofloat32]) - VLC_ADD_LDFLAGS([dtstofloat32],[-ldts_pic]) + VLC_ADD_LDFLAGS([dtstofloat32],[-ldts_pic -lm]) ],[ AC_CHECK_LIB(dts, dts_free, [ VLC_ADD_BUILTINS([dtstofloat32]) @@ -3182,7 +3163,7 @@ if test "${enable_dts}" != "no"; then AC_MSG_ERROR([Could not find libdts on your system: you may get it from http://www.videolan.org/dtsdec.html]) fi ]) - ]) + ], [-lm]) ]) LDFLAGS="${LDFLAGS_save}" fi @@ -3192,7 +3173,7 @@ dnl dnl Flac plugin dnl AC_ARG_ENABLE(flac, - [ --enable-flac flac decoder support (default disabled)]) + [ --enable-flac libflac decoder/encoder support (default disabled)]) if test "${enable_flac}" = "yes" then AC_ARG_WITH(flac-tree, @@ -3211,8 +3192,8 @@ then then dnl Use a custom flac AC_MSG_RESULT(${real_flac_tree}/src/libFLAC/.libs/libFLAC.a) - VLC_ADD_LDFLAGS([flacdec],[${real_flac_tree}/src/libFLAC/.libs/libFLAC.a]) - VLC_ADD_CFLAGS([flacdec],[-I${real_flac_tree}/include]) + VLC_ADD_LDFLAGS([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 @@ -3221,7 +3202,7 @@ then fi else AC_CHECK_HEADERS(FLAC/stream_decoder.h, [ - VLC_ADD_LDFLAGS([flacdec],[-lFLAC]) + VLC_ADD_LDFLAGS([flac],[-lFLAC]) ],[]) fi fi @@ -3313,10 +3294,10 @@ then else AC_CHECK_HEADERS(vorbis/codec.h, [ VLC_ADD_PLUGINS([vorbis]) - VLC_ADD_LDFLAGS([vorbis],[-lvorbis -logg]) ],[]) + VLC_ADD_LDFLAGS([vorbis],[-lvorbis -logg -lm]) ],[]) AC_CHECK_HEADERS(vorbis/vorbisenc.h, [ - VLC_ADD_LDFLAGS([vorbis],[-lvorbisenc]) ],[]) + VLC_ADD_LDFLAGS([vorbis],[-lvorbisenc -lm]) ],[]) fi fi @@ -3554,9 +3535,9 @@ if test "${enable_x11}" != "no" && test "${enable_x11}" = "yes"); then CPPFLAGS="${CPPFLAGS_save} ${X_FLAGS}" AC_CHECK_HEADERS(X11/Xlib.h, [ - VLC_ADD_PLUGINS([x11]) - VLC_ADD_LDFLAGS([x11],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext]) - VLC_ADD_CPPFLAGS([x11],[${X_CFLAGS}]) + VLC_ADD_PLUGINS([x11 panoramix]) + VLC_ADD_LDFLAGS([x11 panoramix],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext]) + VLC_ADD_CPPFLAGS([x11 panoramix],[${X_CFLAGS}]) ]) CPPFLAGS="${CPPFLAGS_save}" fi @@ -3615,6 +3596,24 @@ if test "${enable_glx}" != "no" && CPPFLAGS="${CPPFLAGS_save}" fi +dnl +dnl XVMC module +dnl (enabled by default except on win32) +dnl +AC_ARG_ENABLE(xvmc, + [ --enable-xvmc XVMC support (default disabled)]) +if test "${enable_xvmc}" = "yes" && + (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" || + test "${enable_xvmc}" = "yes"); then + CPPFLAGS="${CPPFLAGS_save} ${X_FLAGS}" + AC_CHECK_HEADERS(X11/extensions/vldXvMC.h, [ + VLC_ADD_PLUGINS([xvmc]) + VLC_ADD_LDFLAGS([xvmc],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext]) + VLC_ADD_CPPFLAGS([xvmc],[${X_CFLAGS}]) + ]) + CPPFLAGS="${CPPFLAGS_save}" +fi + dnl dnl Check for the Xinerama extension dnl @@ -3992,6 +3991,12 @@ fi dnl dnl Windows DirectX module dnl + +if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce" -o "${SYS}" = "cygwin" +then + VLC_ADD_PLUGINS([panoramix]) +fi + AC_ARG_ENABLE(directx, [ --enable-directx Win32 DirectX support (default enabled on Win32)]) if test "${enable_directx}" != "no" @@ -4280,7 +4285,7 @@ then AC_TRY_COMPILE([#define ALSA_PCM_NEW_HW_PARAMS_API #define ALSA_PCM_NEW_SW_PARAMS_API #include ], - [void foo() { snd_pcm_hw_params_get_period_time(0,0,0); }], + [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_PLUGINS([alsa]) VLC_ADD_LDFLAGS([alsa],[-lasound -lm -ldl]) @@ -4433,7 +4438,7 @@ AS_IF([test "x${enable_upnp}" != "xno"], [ AC_MSG_ERROR([cannot find Intel UPnP SDK (libupnp)]) ]) AS_IF([test "${has_upnp}" = "yes"], [ - VLC_ADD_LDFLAGS([upnp_intel], [-lupnp]) + VLC_ADD_LDFLAGS([upnp_intel], [-lupnp -lixml]) ]) ], [ has_upnp="no" @@ -4667,9 +4672,9 @@ then AC_PATH_PROG(WX_CONFIG, ${WXWIDGETS_NAME}, no, ${WXWIDGETS_PATH}) if test "${WX_CONFIG}" != "no" -a "${CXX}" != "" then - if expr 2.3.0 \> `${WX_CONFIG} --version` >/dev/null + if expr 2.6.0 \> `${WX_CONFIG} --version` >/dev/null || expr 2.7.0 \<= `${WX_CONFIG} --version` >/dev/null then - AC_MSG_ERROR([Your development package for wxWidgets is too old, you need at least version 2.3.0. Please upgrade and try again. Alternatively you can also configure with --disable-wxwidgets.]) + AC_MSG_ERROR([You need wxWidgets of the 2.6 branch. Please upgrade and try again. Alternatively you can also configure with --disable-wxwidgets.]) fi AC_LANG_PUSH(C++) # Turn this error: @@ -4685,6 +4690,18 @@ then fi VLC_ADD_LDFLAGS([wxwidgets],[`${WX_CONFIG} --libs`]) VLC_ADD_CXXFLAGS([wxwidgets],[`${WX_CONFIG} --cxxflags`]) + # check if we must link against gtk2 libs + # if __WXGTK20__ && __WXGTK__ are defined + # for modules/gui/wxwidgets/video.cpp + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([ +#include +#ifdef __WXGTK20__ +#error ok, we need to link against gtk2 +#endif + ])],[WXGTK=no],[WXGTK=yes]) + if test "$WXGTK" = "yes"; then + ${PKG_CONFIG} --exists gtk+-2.0 && VLC_ADD_LDFLAGS([wxwidgets],[`$PKG_CONFIG --libs gtk+-2.0`]) + fi if ${WX_CONFIG} --unicode then # wxwidgets should provide the following flags but does not @@ -4722,6 +4739,8 @@ then CPPFLAGS="${CPPFLAGS_save}" AC_LANG_POP(C++) fi + dnl WxWidgets plugin will yield incorrect code without this + VLC_ADD_CXXFLAGS([wxwidgets], [-fno-strict-aliasing]) fi dnl @@ -4921,7 +4940,7 @@ then 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 ], - [void foo() { xosd_init("foo","bar",12,XOSD_top,2,12,42); }],, + [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 @@ -5059,30 +5078,6 @@ then fi -dnl -dnl corba (ORBit) plugin -dnl -dnl Default: do not enable corba -enablecorba=false -AC_ARG_ENABLE(corba, - [ --enable-corba corba interface support (default disabled)]) -if test "${enable_corba}" = "yes"; then - GLIB_VERSION=2.3.2 - PKG_CHECK_MODULES(CORBA, - ORBit-2.0 >= 2.8.0 \ - glib-2.0 >= $GLIB_VERSION \ - gobject-2.0 >= $GLIB_VERSION \ - gthread-2.0 >= $GLIB_VERSION, - [ - enablecorba=true - VLC_ADD_LDFLAGS([corba],[$CORBA_LIBS]) - VLC_ADD_CFLAGS([corba],[$CORBA_CFLAGS]) - VLC_ADD_PLUGINS([corba snapshot]) ], - [ enablecorba=false - AC_MSG_WARN(corba library not found) ]) -fi -AM_CONDITIONAL(ENABLE_CORBA, test "$enablecorba" = "true") - AC_ARG_WITH(,[Misc options:]) dnl @@ -5103,6 +5098,9 @@ AS_IF([test "${enable_gnutls}" != "no"], [ AC_MSG_ERROR([gnutls not present or too old (version 1.2.9 required)]) ]) ]) + AC_CHECK_LIB([gcrypt], [gcry_control], [ + VLC_ADD_LDFLAGS([gnutls], [-lgcrypt]) + ]) ]) @@ -5173,13 +5171,13 @@ AC_ARG_ENABLE(loader, [ --enable-loader build DLL loader for ELF i386 platforms (default disabled)]) AM_CONDITIONAL(LOADER, [test "${enable_loader}" = "yes"]) AS_IF([test "${enable_loader}" = "yes"], - [ VLC_ADD_PLUGINS([dmo quicktime]) + [ VLC_ADD_PLUGINS([dmo]) VLC_ADD_CPPFLAGS([dmo],[-I../../../@top_srcdir@/loader]) - VLC_ADD_LDFLAGS([dmo],[../../../loader/libloader.la]) + VLC_ADD_LDFLAGS([dmo],[../../../loader/libloader.la -lpthread]) VLC_ADD_CPPFLAGS([quicktime],[-I../../@top_srcdir@/loader]) - VLC_ADD_LDFLAGS([quicktime],[../../loader/libloader.la]) + VLC_ADD_LDFLAGS([quicktime],[../../loader/libloader.la -lpthread]) VLC_ADD_CPPFLAGS([realaudio],[-I../../@top_srcdir@/loader -DLOADER]) - VLC_ADD_LDFLAGS([realaudio],[../../loader/libloader.la]) + VLC_ADD_LDFLAGS([realaudio],[../../loader/libloader.la -ldl -lpthread]) ]) dnl @@ -5200,11 +5198,7 @@ then WINE_SDK_PATH=${with_wine_sdk_path} AC_PATH_PROG(WIDL, widl, no, [$WINE_SDK_PATH/bin:$WINE_SDK_PATH/tools/widl]) else - AC_CHECK_PROGS(WIDL, [widl], no) - if test "${WIDL}" != "no" - then - WINE_SDK_PATH="`dirname ${WIDL}`"/.. - fi + WIDL=no fi AC_LANG_PUSH(C++) AC_CHECK_HEADERS(ole2.h olectl.h, @@ -5242,7 +5236,7 @@ if test "${enable_mozilla}" = "yes" then dnl currently vlc plugin only needs headers, no xpcom support apis are actually used need_xpcom_libs=false - if test "${with_mozilla_sdk_path}" = "" + if test "${with_mozilla_sdk_path}" = "" -o "${with_mozilla_sdk_path}" = "no" then AC_PATH_PROG(MOZILLA_CONFIG, mozilla-config, no) if test "${MOZILLA_CONFIG}" = "no" @@ -5348,10 +5342,10 @@ AM_CONDITIONAL(BUILD_MOZILLA,${mozilla}) dnl dnl Mediacontrol Python bindings dnl -AC_ARG_ENABLE(mediacontrol-python-bindings, - [ --enable-mediacontrol-python-bindings Enable Python bindings for MediaControl (default disabled)]) +AC_ARG_ENABLE(python-bindings, + [ --enable-python-bindings Enable Python bindings (default disabled)]) dnl TODO: look for python dev headers -AM_CONDITIONAL(BUILD_PYTHON, [test "${enable_mediacontrol_python_bindings}" = "yes"]) +AM_CONDITIONAL(BUILD_PYTHON, [test "${enable_python_bindings}" = "yes"]) dnl dnl Java bindings @@ -5465,29 +5459,12 @@ then plugin_support=false fi -dnl Export automake variables -if ${plugin_support} -then +AS_IF([${plugin_support}], [ AC_DEFINE(HAVE_DYNAMIC_PLUGINS, 1, Define if we have support for dynamic plugins) - for plugin in `echo ${PLUGINS}` - do - eval "${plugin}_p=yes" - done -else +], [ VLC_ADD_BUILTINS([${PLUGINS}]) PLUGINS="" -fi -AM_CONDITIONAL(HAVE_PLUGINS, ${plugin_support}) - -[if echo "${BUILTINS}" | grep '[^ ]' >/dev/null 2>&1 -then - builtin_support=: - for builtin in `echo ${BUILTINS}` - do - eval "${builtin}_b=yes" - done -fi] -AM_CONDITIONAL(HAVE_BUILTINS, ${builtin_support}) +]) dnl dnl Pic and shared libvlc stuff @@ -5496,10 +5473,14 @@ AS_IF([test "x${enable_shared_libvlc}" = "x"], [enable_shared_libvlc=no]) AM_CONDITIONAL(BUILD_SHARED, [test "${enable_shared_libvlc}" != "no"]) AS_IF([test "${enable_shared_libvlc}" != "no" || test "${enable_libtool}" != "no"], [ AC_DEFINE(HAVE_SHARED_LIBVLC, 1, [Define to 1 if libvlc is built as a shared library.]) - FILE_LIBVLC_DLL="!define LIBVLC_DLL libvlc.dll"], - FILE_LIBVLC_DLL="" ) + FILE_LIBVLC_DLL="!define LIBVLC_DLL libvlc.dll" + VLC_ADD_PLUGINS([${BUILTINS}]) + BUILTINS="" +], [ + FILE_LIBVLC_DLL="" +]) -dnl Import conditional variables generated by bootstrap + dnl Import conditional variables generated by bootstrap VLC_CONDITIONALS dnl @@ -5585,7 +5566,7 @@ AC_CONFIG_FILES([ bindings/Makefile bindings/java/Makefile bindings/java/src/Makefile - bindings/mediacontrol-python/Makefile + bindings/python/Makefile doc/Makefile intl/Makefile ipkg/Makefile @@ -5623,14 +5604,12 @@ AC_CONFIG_FILES([ modules/codec/spudec/Makefile modules/control/Makefile modules/control/http/Makefile - modules/control/corba/Makefile modules/demux/Makefile modules/demux/asf/Makefile modules/demux/avi/Makefile modules/demux/mp4/Makefile modules/demux/mpeg/Makefile modules/demux/playlist/Makefile - modules/demux/util/Makefile modules/gui/Makefile modules/gui/beos/Makefile modules/gui/pda/Makefile @@ -5640,6 +5619,7 @@ AC_CONFIG_FILES([ modules/gui/skins2/Makefile modules/gui/wxwidgets/Makefile modules/gui/wince/Makefile + modules/meta_engine/Makefile modules/misc/Makefile modules/misc/dummy/Makefile modules/misc/memcpy/Makefile