X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=configure.ac;h=d551d2aa6b90b393cfe19f6177af753e40fa28bc;hb=33ab35590dddde6e752df3e25dcff4e43fecc79a;hp=635cd5811d63bf2cc78cc0414ead61ba2a392c09;hpb=a6f87e12b5c3a0bea2739094531abced578c4233;p=vlc diff --git a/configure.ac b/configure.ac index 635cd5811d..d551d2aa6b 100644 --- a/configure.ac +++ b/configure.ac @@ -1,11 +1,11 @@ dnl Autoconf settings for vlc dnl $Id$ -AC_INIT(vlc,0.8.4-test1) +AC_INIT(vlc,0.8.5-svn) VERSION_MAJOR="0" VERSION_MINOR="8" -VERSION_REVISION="4" -VERSION_EXTRA="test1" +VERSION_REVISION="5" +VERSION_EXTRA="svn" CONFIGURE_LINE="$0 $*" CODENAME="Janus" @@ -17,7 +17,7 @@ AC_CANONICAL_SYSTEM dnl XXX: we don't put any flags here, because automake 1.5 doesn't support dnl them. And we need the comma otherwize automake will choke on it. -AM_INIT_AUTOMAKE(vlc,0.8.4-test1) +AM_INIT_AUTOMAKE(vlc,0.8.5-svn) AM_CONFIG_HEADER(config.h) dnl HA! HA! @@ -87,6 +87,8 @@ AC_ARG_WITH(contrib, if test -d ${topdir}/extras/contrib/lib; then export PATH=${topdir}/extras/contrib/bin:$PATH +dnl kludge because only the debian package provides a ffmpeg-config + with_ffmpeg_config_path=${topdir}/extras/contrib/bin CPPFLAGS="${CPPFLAGS} -I${topdir}/extras/contrib/include" CPPFLAGS_save="${CPPFLAGS_save} -I${topdir}/extras/contrib/include" CFLAGS="${CFLAGS} -I${topdir}/extras/contrib/include" @@ -95,6 +97,11 @@ AC_ARG_WITH(contrib, CXXFLAGS_save="${CXXFLAGS_save} -I${topdir}/extras/contrib/include" OBJCFLAGS="${OBJCFLAGS} -I${topdir}/extras/contrib/include" OBJCFLAGS_save="${OBJCFLAGS_save} -I${topdir}/extras/contrib/include" + if test $build = $host; then + export PKG_CONFIG_PATH=${topdir}/extras/contrib/lib/pkgconfig:$PKG_CONFIG_PATH + else + export PKG_CONFIG_LIBDIR=${topdir}/extras/contrib/lib/pkgconfig + fi if test -d ${topdir}/extras/contrib/vlc-lib; then LDFLAGS="${LDFLAGS} -L${topdir}/extras/contrib/vlc-lib" LDFLAGS_save="${LDFLAGS_save} -L${topdir}/extras/contrib/vlc-lib" @@ -228,7 +235,7 @@ AM_CONDITIONAL(HAVE_WINCE, test "${SYS}" = "mingwce") dnl dnl Gettext stuff dnl -ALL_LINGUAS="ca da de en_GB es fr it ja ko nl pt_BR ro ru tr zh_CN zh_TW" +ALL_LINGUAS="ca da de en_GB es fr it ja ko nl pt_BR ro ru sv tr zh_CN zh_TW" AM_GNU_GETTEXT_VERSION(0.11.5) AM_GNU_GETTEXT if test "${nls_cv_force_use_gnu_gettext}" = "yes"; then @@ -724,12 +731,21 @@ AC_ARG_ENABLE(hal, if test "${enable_hal}" != "no" -a "${SYS}" = "linux" then - PKG_CHECK_MODULES(HAL, hal >= 0.2.97, - [AC_DEFINE(HAVE_HAL, [], [Define if you have the HAL library]) - VLC_ADD_PLUGINS([hal]) - VLC_ADD_LDFLAGS([vlc hal],[$HAL_LIBS]) - VLC_ADD_CFLAGS([vlc hal],[$HAL_CFLAGS])], - [AC_MSG_WARN(HAL library not found)]) + PKG_CHECK_MODULES(HAL, hal >= 0.5.0, + [ AC_DEFINE( HAVE_HAL_1, [] , [Define if you have the new HAL library API]) + AC_DEFINE( HAVE_HAL, [], [Define if you have the HAL library] ) + VLC_ADD_PLUGINS([hal]) + VLC_ADD_LDFLAGS([vlc hal],[$HAL_LIBS]) + VLC_ADD_CFLAGS([vlc hal],[$HAL_CFLAGS])], + dnl No hal 0.5 Test for 0.2 + [ PKG_CHECK_MODULES( HAL, hal >= 0.2.97, + [AC_DEFINE(HAVE_HAL, [], [Define if you have the HAL library]) + VLC_ADD_PLUGINS([hal]) + VLC_ADD_LDFLAGS([vlc hal],[$HAL_LIBS]) + VLC_ADD_CFLAGS([vlc hal],[$HAL_CFLAGS])], + [AC_MSG_WARN(HAL library not found)]) + ] + ) fi dnl Build the gtk_main plugins? @@ -1004,7 +1020,7 @@ VLC_ADD_PLUGINS([fixed32tos16 s16tofixed32 u8tofixed32]) VLC_ADD_PLUGINS([trivial_resampler ugly_resampler]) VLC_ADD_PLUGINS([trivial_channel_mixer trivial_mixer]) VLC_ADD_PLUGINS([playlist export sgimb m3u nsc xtag]) -VLC_ADD_PLUGINS([i420_rgb rawvideo blend scale image logo]) +VLC_ADD_PLUGINS([i420_rgb rawvideo blend scale image logo magnify]) VLC_ADD_PLUGINS([wav araw subtitle vobsub adpcm a52sys dtssys au ty voc xa nuv]) VLC_ADD_PLUGINS([access_directory access_file access_udp access_tcp]) VLC_ADD_PLUGINS([access_http access_mms access_ftp ipv4]) @@ -1014,7 +1030,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 shout sap fake]) + VLC_ADD_PLUGINS([gestures rc telnet hotkeys netsync showintf time marq podcast shout sap fake]) 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]) @@ -1039,7 +1055,7 @@ dnl if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then VLC_ADD_PLUGINS([screensaver]) elif test "${SYS}" != "mingwce"; then - VLC_ADD_PLUGINS([ntservice access_smb dmo]) + VLC_ADD_PLUGINS([ntservice access_smb dmo msn]) VLC_ADD_LDFLAGS([dmo],[-lole32]) else VLC_ADD_PLUGINS([win32text]) @@ -1153,19 +1169,20 @@ fi dnl The AltiVec C extensions dnl dnl There are several possible cases: -dnl - OS X PPC, gcc 4.x: use -mpim-altivec, don't need +dnl - OS X PPC, gcc 4.x: use -mpim-altivec -force_cpusubtype_ALL, don't +dnl need dnl - OS X PPC, gcc 3.x: need -faltivec, don't need -dnl - Linux PPC, gcc 4.x: need which itself requires -maltivec +dnl - Linux PPC, gcc 3.4, 4.x: need which requires -maltivec dnl - Linux PPC, gcc 3.3: need and -maltivec -mabi=altivec dnl - Linux PPC, gcc 3.x: need and -fvec dnl - Others: test should fail 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" + CFLAGS="${CFLAGS_save} -mpim-altivec -force_cpusubtype_ALL" AC_TRY_COMPILE([], [vec_ld(0, (unsigned char *)0);], - [ac_cv_c_altivec="-mpim-altivec"], + [ac_cv_c_altivec="-mpim-altivec -force_cpusubtype_ALL"], [# OS X/PPC test (gcc 3.x) CFLAGS="${CFLAGS_save} -faltivec" AC_TRY_COMPILE([], @@ -1231,7 +1248,9 @@ AC_ARG_WITH(tuning, [ --with-tuning=ARCH enable special tuning for an architecture (default Pentium 2 on IA-32 and 750 on PPC)]) if test -n "${with_tuning}"; then - CFLAGS_TUNING="-mtune=${with_tuning}" + if test "${with_tuning}" != "no"; 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 CFLAGS_TUNING="-mtune=pentium2" @@ -1307,6 +1326,15 @@ AC_ARG_ENABLE(release, [ --enable-release activate extra optimizations (default disabled)]) test "${enable_release}" != "yes" && enable_release="no" +dnl +dnl Is the shared libvlc forced ? +dnl +build_pic=no +AC_ARG_ENABLE(shared-libvlc, + [ --enable-shared-libvlc shared libvlc (default disabled EXPERIMENTAL)], + ,[shared_libvlc=no]) + + dnl dnl Stream output dnl @@ -1468,6 +1496,128 @@ if test "${enable_livedotcom}" = "yes"; then fi 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_PLUGINS([access_dv]) + VLC_ADD_LDFLAGS([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_PLUGINS([access_dv]) + VLC_ADD_LDFLAGS([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_BUILTINS([access_dv]) + VLC_ADD_LDFLAGS([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_LDFLAGS([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_LDFLAGS([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_LDFLAGS([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 dnl dnl dvdread module: check for libdvdread @@ -1729,7 +1879,7 @@ dnl gnomeVFS access module dnl AC_ARG_ENABLE(gnomevfs, [ --enable-gnomevfs GnomeVFS access module (default enabled)]) -if test "${enable_gnomevfs}" != "no" +if test "${enable_gnomevfs}" != "no" -a "${SYS}" = "linux" then PKG_CHECK_MODULES(GNOMEVFS, gnome-vfs-2.0, VLC_ADD_LDFLAGS([access_gnomevfs],[$GNOMEVFS_LIBS]) @@ -1949,7 +2099,7 @@ AC_CHECK_FUNCS(inet_pton,[have_ipv6=yes],[ VLC_ADD_LDFLAGS([ipv6 vlc],[-lresolv])]) ]) -AS_IF([test "${have_ipv6}" == "yes"], [ +AS_IF([test "${have_ipv6}" = "yes"], [ AC_DEFINE(HAVE_INET_PTON, 1, [Define to 1 if you have inet_pton().])]) if test "${SYS}" != "nto" && @@ -1975,14 +2125,43 @@ AC_ARG_ENABLE(ogg, [ --enable-ogg Ogg demux support (default enabled)]) if test "${enable_ogg}" != "no" then - AC_CHECK_HEADERS(ogg/ogg.h, [ - AC_CHECK_LIB( ogg, oggpack_read, [ + 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_PLUGINS([ogg]) if test "${enable_sout}" != "no"; then VLC_ADD_PLUGINS([mux_ogg]) fi - VLC_ADD_LDFLAGS([ogg mux_ogg],[-logg])]) - ],[]) + VLC_ADD_LDFLAGS([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_PLUGINS([ogg]) + if test "${enable_sout}" != "no"; then + VLC_ADD_PLUGINS([mux_ogg]) + fi + VLC_ADD_LDFLAGS([ogg mux_ogg],[-logg])]) + ],[]) + fi fi dnl @@ -2048,10 +2227,36 @@ AC_ARG_ENABLE(mod, [ --enable-mod Mod demux support (default enabled)]) if test "${enable_mod}" != "no" then - AC_CHECK_HEADERS(libmodplug/modplug.h, [ - VLC_ADD_PLUGINS([mod]) - VLC_ADD_CXXFLAGS([mod],[]) - VLC_ADD_LDFLAGS([mod],[-lmodplug])]) + AC_ARG_WITH(mod-tree, + [ --with-mod-tree=PATH mod tree for static linking]) + if test -n "${with_mod_tree}" + then + AC_MSG_CHECKING(for libmodplug.a in ${with_mod_tree}) + real_mod_tree="`cd ${with_mod_tree} 2>/dev/null && pwd`" + if test -z "${real_mod_tree}" + then + dnl The given directory can't be found + AC_MSG_RESULT(no) + AC_MSG_ERROR([cannot cd to ${with_mod_tree}]) + fi + if test -f "${real_mod_tree}/src/.libs/libmodplug.a" + 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]) + else + dnl The given mod wasn't built + AC_MSG_RESULT(no) + AC_MSG_ERROR([cannot find ${real_mod_tree}/src/.libs/libmodplug.a, make sure you compiled mod in ${with_mod_tree}]) + fi + else + AC_CHECK_HEADERS(libmodplug/modplug.h, [ + VLC_ADD_PLUGINS([mod]) + VLC_ADD_CXXFLAGS([mod],[]) + VLC_ADD_LDFLAGS([mod],[-lmodplug])]) + fi fi dnl @@ -2179,8 +2384,7 @@ dnl Those options have to be here because the .pc can be bogus for ffmpeg previo [ if test "$with_ffmpeg_mp3lame" = "yes"; then VLC_ADD_LDFLAGS([ffmpeg],[-lmp3lame]) - fi - ]) + fi]) AC_ARG_WITH(ffmpeg-faac, [ --with-ffmpeg-faac specify if ffmpeg has been compiled with faac support], @@ -2193,7 +2397,11 @@ dnl Those options have to be here because the .pc can be bogus for ffmpeg previo [ --with-ffmpeg-dts specify if ffmpeg has been compiled with dts support], [ if test "$with_ffmpeg_dts" = "yes"; then - VLC_ADD_LDFLAGS([ffmpeg],[-ldts]) + LDFLAGS="${LDFLAGS_save} ${LDFLAGS_ffmpeg}" + AC_CHECK_LIB(dts_pic, dts_free, + [ VLC_ADD_LDFLAGS([ffmpeg],[-ldts_pic]) ], + [ VLC_ADD_LDFLAGS([ffmpeg],[-ldts]) ]) + LDFLAGS="${LDFLAGS_save}" fi]) AC_ARG_WITH(ffmpeg-zlib, @@ -2288,7 +2496,11 @@ dnl Trying with pkg-config fi if fgrep -s "CONFIG_DTS=yes" "${real_ffmpeg_tree}/config.mak"; then if test "${with_ffmpeg_dts}" != "yes"; then - VLC_ADD_LDFLAGS([ffmpeg],[-ldts]) + LDFLAGS="${LDFLAGS_save} ${LDFLAGS_ffmpeg}" + AC_CHECK_LIB(dts_pic, dts_free, + [ VLC_ADD_LDFLAGS([ffmpeg],[-ldts_pic]) ], + [ VLC_ADD_LDFLAGS([ffmpeg],[-ldts]) ]) + LDFLAGS="${LDFLAGS_save}" fi fi if fgrep -s "CONFIG_VORBIS=yes" "${real_ffmpeg_tree}/config.mak"; then @@ -2332,7 +2544,7 @@ dnl ffmpeg decoder/demuxer plugin dnl AC_ARG_ENABLE(ffmpegaltivec, [ --enable-ffmpegaltivec ffmpegaltivec codec (DO NOT USE)]) -if test "${enable_ffmpegaltivec}" == "yes" +if test "${enable_ffmpegaltivec}" = "yes" then if test "${with_ffmpeg_tree}" != "no" -a -n "${with_ffmpeg_tree}"; then AC_MSG_CHECKING(for libavcodecaltivec.a in ${with_ffmpeg_tree}) @@ -2667,9 +2879,35 @@ AC_ARG_ENABLE(flac, [ --enable-flac flac decoder support (default disabled)]) if test "${enable_flac}" = "yes" then - AC_CHECK_HEADERS(FLAC/stream_decoder.h, [ - VLC_ADD_LDFLAGS([flacdec],[-lFLAC]) - ],[]) + 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_LDFLAGS([flacdec],[${real_flac_tree}/src/libFLAC/.libs/libFLAC.a]) + VLC_ADD_CFLAGS([flacdec],[-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_LDFLAGS([flacdec],[-lFLAC]) + ],[]) + fi fi dnl @@ -2732,12 +2970,38 @@ AC_ARG_ENABLE(vorbis, [ --enable-vorbis Vorbis decoder support (default enabled)]) if test "${enable_vorbis}" != "no" then - AC_CHECK_HEADERS(vorbis/codec.h, [ - VLC_ADD_PLUGINS([vorbis]) - VLC_ADD_LDFLAGS([vorbis],[-lvorbis -logg]) ],[]) + 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_PLUGINS([vorbis]) + VLC_ADD_LDFLAGS([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_PLUGINS([vorbis]) + VLC_ADD_LDFLAGS([vorbis],[-lvorbis -logg]) ],[]) - AC_CHECK_HEADERS(vorbis/vorbisenc.h, [ - VLC_ADD_LDFLAGS([vorbis],[-lvorbisenc]) ],[]) + AC_CHECK_HEADERS(vorbis/vorbisenc.h, [ + VLC_ADD_LDFLAGS([vorbis],[-lvorbisenc]) ],[]) + fi fi dnl @@ -2760,16 +3024,42 @@ AC_ARG_ENABLE(speex, [ --enable-speex Speex decoder support (default enabled)]) if test "${enable_speex}" != "no" then - AC_CHECK_HEADERS(speex/speex.h, [ - LDFLAGS="${LDFLAGS_save} ${LDFLAGS_speex}" - AC_CHECK_LIB(speex, speex_decode_int, [ + 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_PLUGINS([speex]) - VLC_ADD_LDFLAGS([speex],[-lspeex]) ], - [ AC_MSG_RESULT([no]) - AC_MSG_WARN([Your libspeex is too old, please get the development - version.]) ],[]) - LDFLAGS="${LDFLAGS_save}" - ],[]) + VLC_ADD_LDFLAGS([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} ${LDFLAGS_speex}" + AC_CHECK_LIB(speex, speex_decode_int, [ + VLC_ADD_PLUGINS([speex]) + VLC_ADD_LDFLAGS([speex],[-lspeex]) ], + [ AC_MSG_RESULT([no]) + AC_MSG_WARN([Your libspeex is too old, please get the development + version.]) ],[]) + LDFLAGS="${LDFLAGS_save}" + ],[]) + fi fi dnl @@ -2879,7 +3169,7 @@ if test "${enable_x264}" != "no"; then AC_MSG_RESULT(yes) VLC_ADD_CPPFLAGS([x264],[-I${real_x264_tree}]) VLC_ADD_LDFLAGS([x264],[-L${real_x264_tree}]) - LDFLAGS="${LDFLAGS_save} ${LDFLAGS_x264}" + LDFLAGS="${LDFLAGS_save} ${LDFLAGS_x264} ${THREAD_LIB}" AC_CHECK_LIB(x264, x264_encoder_open, [ VLC_ADD_BUILTINS([x264]) VLC_ADD_LDFLAGS([x264],[-lx264]) @@ -2892,7 +3182,7 @@ if test "${enable_x264}" != "no"; then AC_MSG_ERROR([the specified tree doesn't have x264.h]) fi else - LDFLAGS="${LDFLAGS_save} ${LDFLAGS_x264}" + LDFLAGS="${LDFLAGS_save} ${LDFLAGS_x264} ${THREAD_LIB}" AC_CHECK_HEADERS(x264.h, [ AC_CHECK_LIB(x264, x264_encoder_open, [ VLC_ADD_PLUGINS([x264]) @@ -3259,7 +3549,7 @@ dnl SVG module dnl AC_ARG_ENABLE(svg, [ --enable-svg SVG support (default disabled)]) -if test "${enable_svg}" == "yes" +if test "${enable_svg}" = "yes" then PKG_CHECK_MODULES(SVG, librsvg-2.0 >= 2.5.0, @@ -4313,14 +4603,6 @@ then fi fi -dnl -dnl Joystick plugin -dnl -AC_ARG_ENABLE(joystick, - [ --enable-joystick joystick control (default enabled)]) -if test "${enable_joystick}" = "yes"; then - AC_CHECK_HEADER(linux/joystick.h, [VLC_ADD_PLUGINS([joystick])]) -fi dnl dnl corba (ORBit) plugin @@ -4524,6 +4806,34 @@ AS_IF([test "${MOZILLA_CONFIG}"], [ fi ]) AM_CONDITIONAL(BUILD_MOZILLA,${mozilla}) +if test "${mozilla}" != "false" +then + build_pic=yes +fi + +dnl +dnl Python bindings +dnl +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_python_bindings}" = "yes"] ) +if test "${enable_python_bindings}" = "yes" +then + build_pic=yes +fi + +dnl +dnl Java bindings +dnl +AC_ARG_ENABLE(java-bindings, + [ --enable-java-bindings Enable Java bindings (default disabled)]) +AM_CONDITIONAL( BUILD_JAVA, [test "${enable_java_bindings}" = "yes"] ) +if test "${enable_java_bindings}" = "yes" +then + build_pic=yes +fi + dnl dnl test plugins @@ -4637,20 +4947,18 @@ then fi] AM_CONDITIONAL(HAVE_BUILTINS, ${builtin_support}) -AC_ARG_ENABLE(shared-libvlc, - [ --enable-shared-libvlc shared libvlc (default disabled EXPERIMENTAL)], - ,[shared_libvlc=no]) - +dnl +dnl Pic and shared libvlc stuff +dnl AM_CONDITIONAL(BUILD_SHARED, [test "${shared_libvlc}" != "no"]) +AM_CONDITIONAL(BUILD_PIC, [test "${build_pic}" = "yes" -o "${shared_libvlc}" != "no"] ) AS_IF([test "${shared_libvlc}" != "no"], [ AC_DEFINE(HAVE_SHARED_LIBVLC, 1, [Define to 1 if libvlc is built as a shared library.]) ]) pic=no -AS_IF([test "${shared_libvlc}" != "no"], [pic=pic]) -AS_IF([${mozilla}], [pic=pic]) +AS_IF([test "${shared_libvlc}" != "no" -o "${build_pic}" = "yes"], [pic=pic]) AS_IF([test "${SYS}" = "mingw32"], [pic=no]) - AS_IF([test "${pic}" = "no"], [pic=]) AC_SUBST(pic) @@ -4735,6 +5043,9 @@ AC_CONFIG_FILES([ Makefile activex/Makefile activex/axvlc.inf + bindings/Makefile + bindings/java/Makefile + bindings/python/Makefile debian/Makefile doc/Makefile intl/Makefile @@ -4830,6 +5141,12 @@ dnl for a in `./vlc-config --target builtin` ; do echo $a; done | sed -e 's,modu dnl echo "Enabled plugin modules :" dnl for a in `./vlc-config --target plugin` ; do echo $a; done | sed -e 's,modules\/\(.*\)\/lib\(.*\)_plugin,\2 (\1),' +dnl Shortcut to nice compile message +rm -f compile +echo '#! /bin/sh' >compile +echo "PATH=$PATH LANG=C make \$* 2>&1| ${srcdir}/extras/make.pl" >>compile +chmod a+x compile + printf " vlc configuration -------------------- @@ -4846,6 +5163,6 @@ echo " vlc aliases :${ALIASES} You can tune the compiler flags in vlc-config. -To build vlc and its plugins, type \`make'. +To build vlc and its plugins, type \`./compile' or \`make'. "