X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=configure.ac;h=f53dd11d2cfa3c4edcc9748197633f7ae150f9c4;hb=8a5846afcfc01e8f8e315ec1baee3cc6abc85e70;hp=34ffa0d7da7f1cc9152a51d0ed89586d6a927276;hpb=962d839d267f719ab9b273c953369e0024bb9cc3;p=vlc diff --git a/configure.ac b/configure.ac index 34ffa0d7da..f53dd11d2c 100644 --- a/configure.ac +++ b/configure.ac @@ -1,16 +1,16 @@ dnl Autoconf settings for vlc -AC_INIT(vlc,0.9.0-svn) +AC_INIT(vlc,0.9.0-git) VERSION_MAJOR="0" VERSION_MINOR="9" VERSION_REVISION="0" -VERSION_EXTRA="svn" +VERSION_EXTRA="git" CONFIGURE_LINE="`echo "$0 $ac_configure_args" | sed -e 's/\\\/\\\\\\\/g'`" CODENAME="Grishenko" COPYRIGHT_YEARS="1996-2008" -AC_PREREQ(2.59) dnl this really should be 2.59c +AC_PREREQ(2.59c) AC_CONFIG_SRCDIR(src/libvlc.c) AC_CONFIG_AUX_DIR(autotools) AC_CANONICAL_BUILD @@ -305,6 +305,7 @@ case "${host_os}" in VLC_ADD_CPPFLAGS([libvlc vlc],[-Dmain(a,b)=maince(a,b)]) VLC_ADD_LDFLAGS([libvlc vlc],[-e WinMainCRTStartup]) VLC_ADD_LIBS([libvlc access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp sap http netsync],[-lws2]) + VLC_ADD_LIBS([libvlc],[-lmmtimer]) fi ;; *nto*) @@ -392,7 +393,7 @@ lt_cv_deplibs_check_method=pass_all dnl dnl Gettext stuff dnl -AM_GNU_GETTEXT_VERSION(0.16.1) +AM_GNU_GETTEXT_VERSION([0.17]) AM_GNU_GETTEXT([external]) VLC_ADD_LIBS([libvlc vlc], [${LTLIBINTL}]) @@ -1062,6 +1063,10 @@ if test "${ac_cv_c_omit_frame_pointer}" != "no"; then fi dnl Check for -fvisibility=hidden +dnl Don't test on mingw32, because it is going to work with just a warning +dnl even if it doesn't support it +if test "${SYS}" != "mingw32" +then AC_CACHE_CHECK([if \$CC accepts -fvisibility=hidden], [ac_cv_c_visibility_hidden], [CFLAGS="${CFLAGS_save} -fvisibility=hidden" @@ -1069,6 +1074,7 @@ AC_CACHE_CHECK([if \$CC accepts -fvisibility=hidden], if test "${ac_cv_c_visibility_hidden}" != "no"; then VLC_ADD_CFLAGS([libvlc plugin],[-fvisibility=hidden]) fi +fi AM_CONDITIONAL(HAVE_COMPILER_EXPORT, [test "$SYS" = "mingw32" -o "${ac_cv_c_visibility_hidden}" != "no"]) @@ -1194,12 +1200,12 @@ dnl VLC_ADD_PLUGINS([dummy logger memcpy]) VLC_ADD_PLUGINS([mpgv mpga m4v m4a h264 vc1 demux_cdg cdg ps pva avi asf mp4 rawdv rawvid nsv real aiff mjpeg demuxdump flacsys tta]) VLC_ADD_PLUGINS([cvdsub svcdsub spudec subsdec subsusf t140 dvbsub cc mpeg_audio lpcm a52 dts cinepak flac]) -VLC_ADD_PLUGINS([deinterlace invert adjust transform wave ripple psychedelic gradient motionblur rv32 rotate noise grain extract sharpen seamcarving]) +VLC_ADD_PLUGINS([deinterlace invert adjust transform wave ripple psychedelic gradient motionblur rv32 rotate noise grain extract sharpen seamcarving croppadd]) VLC_ADD_PLUGINS([converter_fixed mono]) VLC_ADD_PLUGINS([trivial_resampler ugly_resampler]) VLC_ADD_PLUGINS([trivial_channel_mixer trivial_mixer]) VLC_ADD_PLUGINS([playlist export nsc xtag]) -VLC_ADD_PLUGINS([i420_rgb grey_yuv rawvideo blend scale image logo magnify puzzle colorthres]) +VLC_ADD_PLUGINS([i420_rgb grey_yuv rawvideo blend scale image vmem logo magnify puzzle colorthres]) VLC_ADD_PLUGINS([wav araw subtitle vobsub adpcm a52sys dtssys au ty voc xa nuv smf]) VLC_ADD_PLUGINS([access_directory access_file access_udp access_tcp]) VLC_ADD_PLUGINS([access_http access_mms access_ftp access_rtmp]) @@ -3004,9 +3010,9 @@ dnl Those options have to be here because the .pc can be bogus for ffmpeg previo VLC_ADD_LIBS([ffmpeg],[-L${real_ffmpeg_tree}/libpostproc ${real_ffmpeg_tree}/libpostproc/libpostproc.a]) VLC_ADD_CPPFLAGS([ffmpeg stream_out_switcher],[-I${real_ffmpeg_tree}]) else - dnl The given libavcodec wasn't built with --enable-pp + dnl The given libavcodec wasn't built with --enable-postproc AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot find libpostproc.a in ${real_ffmpeg_tree}/[libavcodec/]libpostproc/. Make sure you configured ffmpeg with --enable-pp]) + AC_MSG_ERROR([cannot find libpostproc.a in ${real_ffmpeg_tree}/[libavcodec/]libpostproc/. Make sure you configured ffmpeg with --enable-postproc]) fi fi dnl Use a custom libffmpeg @@ -3017,11 +3023,28 @@ dnl Those options have to be here because the .pc can be bogus for ffmpeg previo PKG_CONFIG_LIBDIR_save="$PKG_CONFIG_LIBDIR" export PKG_CONFIG_PATH="" export PKG_CONFIG_LIBDIR="${real_ffmpeg_tree}" + VLC_SAVE_FLAGS - PKG_CHECK_MODULES( [FFMPEG],[libavcodec libavformat libpostproc], [ + PKG_CHECK_MODULES( [FFMPEG],[libavformat libavcodec libpostproc], [ VLC_ADD_CPPFLAGS([ffmpeg stream_out_switcher], ${FFMPEG_CFLAGS}) VLC_ADD_LIBS([ffmpeg stream_out_switcher], ${FFMPEG_LIBS})] - ,[]) + AC_DEFINE(HAVE_LIBAVFORMAT_TREE, 1, [Define if you have ffmpeg's libavformat.]) + ) + AS_IF([ test -f "${real_ffmpeg_tree}/libswscale/libswscale.a"],[ + AC_DEFINE(HAVE_LIBSWSCALE_TREE, 1, [Define if you have ffmpeg's libswscale.]) + PKG_CHECK_MODULES( [SWSCALE],[libswscale], [ + VLC_ADD_LIBS([ffmpeg],[${SWSCALE_LIBS}]) + VLC_ADD_CPPFLAGS([ffmpeg stream_out_switcher],[${SWSCALE_CFLAGS}])]) + ]) + CPPFLAGS="${CPPFLAGS} ${FFMPEG_CFLAGS} ${SWSCALE_CFLAGS}" + CFLAGS="${CFLAGS} ${FFMPEG_CFLAGS} ${SWSCALE_CFLAGS}" + + AC_CHECK_HEADERS(ffmpeg/avcodec.h libavcodec/avcodec.h) + AC_CHECK_HEADERS(ffmpeg/avformat.h libavformat/avformat.h) + AC_CHECK_HEADERS(ffmpeg/avutil.h libavutil/avutil.h) + AC_CHECK_HEADERS([ffmpeg/swscale.h libswscale/swscale.h]) + + VLC_RESTORE_FLAGS AS_IF([test -n "${PKG_CONFIG_PATH_save}"],[ export PKG_CONFIG_PATH="${PKG_CONFIG_PATH_save}" ],[ @@ -3038,17 +3061,7 @@ dnl Those options have to be here because the .pc can be bogus for ffmpeg previo VLC_ADD_BUILTINS([stream_out_switcher]) fi - if test -f "${real_ffmpeg_tree}/libswscale/libswscale.a"; then - AC_DEFINE(HAVE_LIBSWSCALE_TREE, 1, [Define if you have ffmpeg's libswscale.]) - VLC_ADD_LIBS([ffmpeg],[-L${real_ffmpeg_tree}/libswscale ${real_ffmpeg_tree}/libswscale/libswscale.a]) - VLC_ADD_CPPFLAGS([ffmpeg stream_out_switcher],[-I${real_ffmpeg_tree}/libswscale]) - fi - if test -f "${real_ffmpeg_tree}/libavformat/libavformat.a"; then - AC_DEFINE(HAVE_LIBAVFORMAT_TREE, 1, [Define if you have ffmpeg's libavformat.]) - VLC_ADD_LIBS([ffmpeg],[-L${real_ffmpeg_tree}/libavformat -lavformat -lz]) - VLC_ADD_CPPFLAGS([ffmpeg],[-I${real_ffmpeg_tree}/libavformat]) - fi else @@ -3118,7 +3131,7 @@ dnl Trying with pkg-config AC_CHECK_LIB(postproc, pp_postprocess, [ VLC_ADD_LIBS([ffmpeg],[-lpostproc])], - AC_MSG_ERROR([Could not find libpostproc inside FFmpeg. You should configure FFmpeg with --enable-gpl --enable-pp.]), + AC_MSG_ERROR([Could not find libpostproc inside FFmpeg. You should configure FFmpeg with --enable-gpl --enable-postproc.]), [$LDAVUTIL]) AC_CHECK_LIB(avformat, av_open_input_stream, [ @@ -3156,9 +3169,9 @@ then AC_MSG_ERROR([cannot find ${real_ffmpeg_tree}/libavcodec/libavcodecaltivec.a, make sure you compiled libavcodecaltivec in ${with_ffmpeg_tree}]) fi if ! fgrep -s "pp_get_context" "${real_ffmpeg_tree}/libavcodec/libavcodecaltivec.a"; then - dnl The given libavcodecaltivec wasn't built with --enable-pp + dnl The given libavcodecaltivec wasn't built with --enable-postproc AC_MSG_RESULT(no) - AC_MSG_ERROR([${real_ffmpeg_tree}/libavcodec/libavcodecaltivec.a was not compiled with postprocessing support, make sure you configured ffmpeg with --enable-pp]) + AC_MSG_ERROR([${real_ffmpeg_tree}/libavcodec/libavcodecaltivec.a was not compiled with postprocessing support, make sure you configured ffmpeg with --enable-postproc]) fi dnl Use a custom libffmpeg AC_MSG_RESULT(${real_ffmpeg_tree}/libavcodec/libavcodecaltivec.a) @@ -3801,7 +3814,7 @@ dnl AC_ARG_ENABLE(zvbi, [ --enable-zvbi VBI (inc. Teletext) decoding support with libzvbi (default enabled)]) AC_ARG_ENABLE(telx, - [ --enable-telx, Teletext decoding module (conflicting with zvbi) (default disabled)]) + [ --enable-telx Teletext decoding module (conflicting with zvbi) (default disabled)]) AS_IF( [test "${enable_zvbi}" != "no"],[ AS_IF( [test "${enable_telx}" = "yes"],[ @@ -4036,12 +4049,14 @@ dnl 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" ]) ]) @@ -5207,17 +5222,21 @@ AM_CONDITIONAL(ENABLE_QT4, test "$enableqt4" = "true") dnl dnl WinCE GUI module dnl -if test "${SYS}" = "mingwce"; then - VLC_ADD_BUILTINS([wince]) - VLC_ADD_CXXFLAGS([wince],[]) - VLC_ADD_LIBS([wince],[-lcommctrl -lcommdlg -laygshell]) - dnl Gross hack - VLC_ADD_LIBS([wince],[\\\${top_builddir}modules/gui/wince/wince_rc.o]) -elif test "${SYS}" = "mingw32"; then - VLC_ADD_CXXFLAGS([wince],[]) - VLC_ADD_LIBS([wince],[-lcomctl32 -lcomdlg32 -lgdi32 -lole32]) - dnl Gross hack - VLC_ADD_LIBS([wince],[\\\${top_builddir}modules/gui/wince/wince_rc.o]) +AC_ARG_ENABLE(wince, + [ --enable-wince Windows CE interface (default enabled with MinGW)]) +if test "${enable_wince}" != "no"; then + if test "${SYS}" = "mingwce"; then + VLC_ADD_BUILTINS([wince]) + VLC_ADD_CXXFLAGS([wince],[]) + VLC_ADD_LIBS([wince],[-lcommctrl -lcommdlg -laygshell]) + dnl Gross hack + VLC_ADD_LIBS([wince],[\\\${top_builddir}modules/gui/wince/wince_rc.o]) + elif test "${SYS}" = "mingw32"; then + VLC_ADD_CXXFLAGS([wince],[]) + VLC_ADD_LIBS([wince],[-lcomctl32 -lcomdlg32 -lgdi32 -lole32]) + dnl Gross hack + VLC_ADD_LIBS([wince],[\\\${top_builddir}modules/gui/wince/wince_rc.o]) + fi fi dnl @@ -5378,11 +5397,26 @@ AC_ARG_ENABLE(ncurses, VLC_ADD_LIBS([ncurses],[-lncursesw]) ALIASES="${ALIASES} nvlc" AC_DEFINE([HAVE_NCURSESW], 1, [Define to 1 if you have libncursesw.]) + AC_CHECK_LIB(ncursesw, tgetent, [], + AC_CHECK_LIB(tinfow, tgetent, [VLC_ADD_LIBS([ncurses],[-ltinfow])], + [AC_CHECK_LIB(tinfo, tgetent, [VLC_ADD_LIBS([ncurses],[-ltinfo])], + [AS_IF([test "x${enable_ncurses}" != "x"], + [AC_MSG_ERROR([tgetent not found in ncursesw tinfow tinfo] + )])]) + ] + ) + ) ], [AC_CHECK_LIB( ncurses, mvprintw, [VLC_ADD_PLUGINS([ncurses]) ALIASES="${ALIASES} nvlc" - VLC_ADD_LIBS([ncurses],[-lncurses])], + VLC_ADD_LIBS([ncurses],[-lncurses]) + AC_CHECK_LIB(ncurses, tgetent, [], + [AC_CHECK_LIB(tinfo, tgetent, [VLC_ADD_LIBS([ncurses],[-ltinfo])], + [AS_IF([test "x${enable_ncurses}" != "x"], + [AC_MSG_ERROR([tgetent not found in ncurses tinfo])])] + )] + )], [AS_IF([test "x${enable_ncurses}" != "x"], [ AC_MSG_ERROR([libncurses not found])])] )] @@ -5707,6 +5741,15 @@ AS_IF([test "${enable_loader}" = "yes"], VLC_ADD_LIBS([realaudio],[../../libs/loader/libloader.la]) ]) +AC_ARG_WITH(,[Components:]) + +dnl +dnl the VLC binary +dnl +AC_ARG_ENABLE(vlc, + [ --enable-vlc build the VLC media player (default enabled)]) +AM_CONDITIONAL(BUILD_VLC, [test "${enable_vlc}" != "no"]) + dnl dnl Microsoft ActiveX support dnl @@ -5959,10 +6002,17 @@ dnl Mediacontrol Python bindings dnl AC_ARG_ENABLE(python-bindings, [ --enable-python-bindings Enable Python bindings (default disabled)]) -dnl TODO: look for python dev headers -AS_IF([test "${enable_python_bindings}" = "yes"], - PLUGINS_BINDINGS="${PLUGINS_BINDINGS} python" - ) + +if test "${enable_python_bindings}" = "yes"; then + AC_PATH_PROG(PYTHON_CONFIG, python-config, no) + CFLAGS="${CFLAGS_save} `${PYTHON_CONFIG} --cflags`" + AC_CHECK_HEADER([Python.h], + PLUGINS_BINDINGS="${PLUGINS_BINDINGS} python", + AC_MSG_ERROR([You have to install python-dev to build the bindings]), + [] + ) + CFLAGS="${CFLAGS_save}" +fi AM_CONDITIONAL(BUILD_PYTHON, [test "${enable_python_bindings}" = "yes"]) @@ -5973,17 +6023,16 @@ AC_ARG_ENABLE(java-bindings, [ --enable-java-bindings Enable Java bindings (default disabled)]) if test "${enable_java_bindings}" = "yes" then - AS_IF([test "x${JAVA_HOME}" == "x"], - [AC_MSG_ERROR([Please set the JAVA_HOME variable to your JDK environment])]) - AC_PROG_JAVAC - AC_PROG_JAVA - PLUGINS_BINDINGS="${PLUGINS_BINDINGS} java" - if test "${JAVAC}" == "javac${EXEEXT}" - then - JAVAC="javac${EXEEXT} -cp ./ " - fi + echo "" + echo "****** WARNING **** WARNING ***** WARNING *************" + echo "*** To compile the java bindings go to the " + echo "*** bindings/java folder and run mvn install. " + echo "*** You need maven2 installed. " + echo "*** This configuration will continue, so you will be " + echo "*** able to compile VideoLAN as usual. " + echo "*******************************************************" + echo "" fi -AM_CONDITIONAL(BUILD_JAVA, [test "${enable_java_bindings}" = "yes"]) dnl dnl test plugins @@ -6162,8 +6211,6 @@ AC_CONFIG_FILES([ projects/activex/Makefile projects/activex/axvlc.inf bindings/Makefile - bindings/java/Makefile - bindings/java/src/Makefile bindings/python/Makefile doc/Makefile extras/package/ipkg/Makefile @@ -6271,15 +6318,20 @@ dnl for a in `./vlc-config --target plugin` ; do echo $a; done | sed -e 's,modul dnl Shortcut to nice compile message rm -f compile echo '#! /bin/sh' >compile - -echo "PATH=$PATH LANG=C make \$@ 2>&1| \\" >> compile -echo '`sed -ne "s/^top_srcdir *= *//p" < Makefile`/extras/buildsystem/make.pl' >> 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 '`sed -ne "s/^top_srcdir *= *//p" < Makefile`/extras/buildsystem/make.pl' >>compile +echo test -f .error\$\$ \&\& ERROR=1 >>compile +echo rm -f .error\$\$ >>compile +echo exit \$ERROR >>compile chmod a+x compile printf " -vlc configuration +libvlc configuration -------------------- -vlc version : ${VERSION} +version : ${VERSION} system : ${SYS} architecture : ${ARCH} build flavour : " @@ -6288,9 +6340,13 @@ test "${enable_cprof}" = "yes" && printf "cprof " test "${enable_gprof}" = "yes" && printf "gprof " test "${enable_optimizations}" = "yes" && printf "optim " test "${enable_release}" = "yes" && printf "release " || printf "devel " -echo " -vlc aliases :${ALIASES} -plugins/bindings :${PLUGINS_BINDINGS} +echo "" +if test "${enable_vlc}" != "no"; then +echo "vlc aliases :${ALIASES}" +else +echo "build vlc executable : no" +fi +echo "plugins/bindings :${PLUGINS_BINDINGS} You can check which modules have been enabled with \`./vlc-config --list plugin'.