X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=configure.ac;h=acd04688757f5ea773b9bebcbbf86c91f14275db;hb=352cbd7c4f1750641c7daa3308631b74029449e7;hp=718f0e5394584e0805a46f1c4641505b9e5bf588;hpb=43f84f851e32c70350c55396a3b43bce37c8dff8;p=vlc diff --git a/configure.ac b/configure.ac index 718f0e5394..acd0468875 100644 --- a/configure.ac +++ b/configure.ac @@ -1,18 +1,23 @@ dnl Autoconf settings for vlc -AC_INIT(vlc, 0.9.0) -VERSION_MAJOR="0" -VERSION_MINOR="9" +AC_COPYRIGHT([Copyright 2002-2009 the VideoLAN team]) + +AC_INIT(vlc, 1.0.0-git) +VERSION_MAJOR="1" +VERSION_MINOR="0" VERSION_REVISION="0" -VERSION_EXTRA="" +VERSION_EXTRA="-git" +PKGDIR="vlc" +AC_SUBST(PKGDIR) CONFIGURE_LINE="`echo "$0 $ac_configure_args" | sed -e 's/\\\/\\\\\\\/g'`" -CODENAME="Grishenko" -COPYRIGHT_YEARS="1996-2008" +CODENAME="Goldeneye" +COPYRIGHT_YEARS="1996-2009" AC_PREREQ(2.59c) AC_CONFIG_SRCDIR(src/libvlc.c) AC_CONFIG_AUX_DIR(autotools) +AC_CONFIG_MACRO_DIR(m4) AC_CANONICAL_BUILD AC_CANONICAL_HOST @@ -26,9 +31,19 @@ dnl automake behavior, you've likely never heard of maintainer mode, so we dnl can't expect you to enable it manually. AS_IF([test "x${enable_maintainer_mode}" != "xno"], - [enable_maintainer_mode="yes"]) + [enable_maintainer_mode="yes"]) AM_MAINTAINER_MODE +dnl +dnl Directories +dnl +dnl vlcincludedir="\${includedir}/\${PKGDIR}" +dnl AC_SUBST(vlcincludedir) +vlcdatadir="\${datadir}/\${PKGDIR}" +AC_SUBST(vlcdatadir) +vlclibdir="\${libdir}/\${PKGDIR}" +AC_SUBST(vlclibdir) + dnl dnl Deprecated options dnl to notify packagers that stuff has changed @@ -58,6 +73,7 @@ dnl AC_PROG_CC_C99 AC_USE_SYSTEM_EXTENSIONS AC_DEFINE([_FORTIFY_SOURCE], 2, [Define to '2' to get glibc warnings.]) + AM_PROG_CC_C_O AC_PROG_CXX AC_PROG_CPP @@ -80,9 +96,9 @@ AC_C_CONST AC_C_INLINE AC_C_RESTRICT -dnl Allow binary package maintainer to pass a custom string to avoid +dnl Allow binary package maintainer to pass a custom string to avoid dnl cache problem -AC_ARG_WITH(binary-version, +AC_ARG_WITH(binary-version, AS_HELP_STRING([--with-binary-version=STRING], [To avoid plugins cache problem between binary version]),[],[]) AS_IF([test -n "${with_binary_version}"],[ @@ -96,13 +112,14 @@ dnl Check for the contrib directory dnl AC_ARG_WITH(contrib, [ --without-contrib do not use the libraries in extras/contrib],[],[]) - if test "${with_contrib}" != "no"; then + AS_IF([test "${with_contrib}" != "no"],[ AC_MSG_CHECKING([for libs in extras/contrib]) topdir="`dirname $0`" if test "`echo \"$topdir\" | cut -c 1`" != "/"; then topdir="`pwd`/$topdir" fi - if test "`grep HOST ${topdir}/extras/contrib/config.mak 2>/dev/null|awk '{print $3}'`" != "`$CC -dumpmachine`"; then + AS_IF([test -d ${topdir}/extras/contrib/lib],[ + AS_IF([test "`grep HOST ${topdir}/extras/contrib/config.mak 2>/dev/null|awk '{print $3}'`" != "`$CC -dumpmachine`"],[ if test "${with_contrib}" = "yes"; then AC_MSG_RESULT([no]) AC_MSG_ERROR([ not using the libs in extras/contrib as it is not the same host]) @@ -110,8 +127,7 @@ AC_ARG_WITH(contrib, AC_MSG_RESULT([no]) AC_MSG_WARN([ not using the libs in extras/contrib as it is not the same host]) fi - else - if test -d ${topdir}/extras/contrib/lib; then + ],[ AC_MSG_RESULT([yes]) export PATH=${topdir}/extras/contrib/bin:$PATH CPPFLAGS="${CPPFLAGS} -I${topdir}/extras/contrib/include" @@ -144,11 +160,11 @@ AC_ARG_WITH(contrib, export LIBRARY_PATH=${topdir}/extras/contrib/lib:$LIBRARY_PATH export BELIBRARIES=${topdir}/extras/contrib/lib:$BELIBRARIES fi - else - AC_MSG_RESULT([no]) - fi - fi -fi + ]) + ],[ + AC_MSG_RESULT([no]) + ]) +]) dnl dnl Set default values dnl @@ -196,14 +212,15 @@ case "${host_os}" in VLC_ADD_LDFLAGS([libvlc],[-Wl,-framework,CoreFoundation]) VLC_ADD_LDFLAGS([motion],[-Wl,-framework,IOKit,-framework,CoreFoundation]) AC_ARG_ENABLE(macosx-defaults, - AS_HELP_STRING([--enable-macosx-defaults],[Build the default configuration - on Mac OS X (default enabled)])) + AS_HELP_STRING([--enable-macosx-defaults],[Build the default configuration on Mac OS X (default enabled)])) if test "x${enable_macosx_defaults}" != "xno" then echo "" echo "Building with Mac OS X defaults:" - with_macosx_version_min="10.4" - echo " Assuming --with-macosx-version-min=10.4" + with_macosx_version_min="10.5" + echo " Assuming --with-macosx-version-min=10.5" + with_macosx_sdk="/Developer/SDKs/MacOSX${with_macosx_version_min}.sdk" + echo " Assuming --with-macosx-sdk=/Developer/SDKs/MacOSX${with_macosx_version_min}.sdk" build_dir=`pwd` echo " Assuming --prefix=${build_dir}/vlc_install_dir" ac_default_prefix="${build_dir}/vlc_install_dir" @@ -233,6 +250,10 @@ case "${host_os}" in echo " Assuming --enable-realrtsp" enable_update_check="yes" echo " Assuming --enable-update-check" + enable_libass="yes" + echo " Assuming --enable-libass" + enable_asademux="yes" + echo " Assuming --enable-asademux" enable_skins2="no" echo " Assuming --disable-skins2" @@ -269,7 +290,8 @@ case "${host_os}" in AC_ARG_WITH(macosx-sdk, [ --with-macosx-sdk=DIR compile using the SDK in DIR]) if test "${with_macosx_sdk}" != "" ; then - CC="${CC} -isysroot ${with_macosx_sdk}" + CPP="${CPP} -isysroot ${with_macosx_sdk}" + CC="${CC} -isysroot ${with_macosx_sdk}" CXX="${CXX} -isysroot ${with_macosx_sdk}" OBJC="${OBJC} -isysroot ${with_macosx_sdk}" LD="${LD} -syslibroot ${with_macosx_sdk}" @@ -277,7 +299,8 @@ case "${host_os}" in AC_ARG_WITH(macosx-version-min, [ --with-macosx-version-min=VERSION compile for MacOSX VERSION and above]) if test "${with_macosx_version_min}" != "" ; then - CC="${CC} -mmacosx-version-min=${with_macosx_version_min}" + CPP="${CPP} -mmacosx-version-min=${with_macosx_version_min}" + CC="${CC} -mmacosx-version-min=${with_macosx_version_min}" CXX="${CXX} -mmacosx-version-min=${with_macosx_version_min}" OBJC="${OBJC} -mmacosx-version-min=${with_macosx_version_min}" LD="${LD} -macosx_version_min=${with_macosx_version_min}" @@ -290,17 +313,22 @@ case "${host_os}" in ;; *mingw32* | *cygwin* | *wince* | *mingwce* | *pe*) AC_CHECK_TOOL(WINDRES, windres, :) + AC_CHECK_TOOL(OBJCOPY, objcopy, :) case "${host_os}" in *wince* | *mingwce* | *mingw32ce* | *pe*) SYS=mingwce + dnl Sadly CeGCC still needs non-wince macros + AC_DEFINE([_WIN32_WINNT], 0x0501, [Define to '0x0500' for Windows 2000 APIs.]) ;; *mingw32*) SYS=mingw32 + AC_DEFINE([_WIN32_WINNT], 0x0500, [Define to '0x0500' for Windows 2000 APIs.]) ;; *cygwin*) dnl Check if we are using the mno-cygwin mode in which case we are dnl actually dealing with a mingw32 compiler. + AC_DEFINE([_WIN32_WINNT], 0x0500, [Define to '0x0500' for Windows 2000 APIs.]) AC_EGREP_CPP(yes, [#ifdef WIN32 yes @@ -315,12 +343,10 @@ case "${host_os}" in VLC_ADD_LDFLAGS([vlc],[-mwindows]) VLC_ADD_LIBS([activex mozilla],[-lgdi32]) VLC_ADD_LIBS([cdda vcdx cddax sdl_image],[-lwinmm]) - VLC_ADD_LIBS([access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp access_output_shout access_output_rtmp sap slp http stream_out_standard stream_out_rtp vod_rtsp access_realrtsp rtp telnet rc netsync gnutls growl_udp flac ts audioscrobbler lua remoteosd],[-lws2_32]) + VLC_ADD_LIBS([access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp access_output_shout access_output_rtmp sap slp http stream_out_standard stream_out_rtp stream_out_raop vod_rtsp access_realrtsp rtp telnet rc netsync gnutls growl_udp flac ts audioscrobbler lua remoteosd],[-lws2_32]) fi if test "${SYS}" = "mingwce"; then # add ws2 for closesocket, select, recv - 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 audioscrobbler growl rtp stream_out_rtp remoteosd],[-lws2]) VLC_ADD_LIBS([libvlc],[-lmmtimer]) fi @@ -332,7 +358,7 @@ case "${host_os}" in solaris*) SYS=solaris # _POSIX_PTHREAD_SEMANTICS is needed to get the POSIX ctime_r - # Perhaps it is useful other places as well? + # Perhaps it is useful other places as well? CFLAGS_save="${CFLAGS_save} -D_POSIX_PTHREAD_SEMANTICS"; CFLAGS="${CFLAGS_save}" ;; hpux*) @@ -371,7 +397,7 @@ AM_CONDITIONAL(HAVE_WIN32, test "${SYS}" = "mingw32") AM_CONDITIONAL(HAVE_WINCE, test "${SYS}" = "mingwce") dnl -dnl Sadly autoconf doesn't think about testing foo.exe when ask to test +dnl Sadly autoconf doesn't think about testing foo.exe when ask to test dnl for program foo on win32 case "${build_os}" in @@ -382,7 +408,7 @@ case "${build_os}" in ;; esac -dnl +dnl dnl Libtool dnl It's very bad, but our former custom system was worst dnl -- Courmisch @@ -395,7 +421,7 @@ AC_CACHE_VAL(lt_cv_deplibs_check_method, [lt_cv_deplibs_check_method=pass_all]) AC_DISABLE_STATIC -AC_DISABLE_FAST_INSTALL +dnl AC_DISABLE_FAST_INSTALL AC_LIBTOOL_DLOPEN AC_LIBTOOL_WIN32_DLL m4_undefine([AC_PROG_F77]) @@ -488,6 +514,10 @@ AC_CHECK_FUNCS(strcasecmp,,[AC_CHECK_FUNCS(stricmp)]) AC_CHECK_FUNCS(strncasecmp,,[AC_CHECK_FUNCS(strnicmp)]) AC_CHECK_FUNCS(strcasestr,,[AC_CHECK_FUNCS(stristr)]) AC_FUNC_ALLOCA +AC_CHECK_FUNCS(fcntl) + +dnl Check for Linux system calls +AC_CHECK_FUNCS([vmsplice]) AH_BOTTOM([#include ]) @@ -522,19 +552,6 @@ AC_CHECK_FUNCS(send,,[ ]) ]) -AC_CHECK_FUNCS(gethostbyname,,[ - AC_CHECK_LIB(nsl,gethostbyname,[ - VLC_ADD_LIBS([cdda cddax libvlc],[-lnsl]) - ],[ - AC_CHECK_LIB(bind,gethostbyname,[ - VLC_ADD_LIBS([access_mms],[-lbind]) - ]) - ]) -]) - -AC_CHECK_HEADERS(zlib.h, [ - VLC_ADD_LIBS([access_http],[-lz]) -]) dnl Check for socklen_t AH_TEMPLATE(socklen_t, [Define to `int' if does not define.]) @@ -560,7 +577,7 @@ AC_CACHE_CHECK([for struct sockaddr_storage], ac_cv_struct_sockaddr_storage, [AC_TRY_COMPILE( [#include #if defined( UNDER_CE ) - # include + # include #elif defined( WIN32 ) # include #else @@ -642,7 +659,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],[-lm]) + VLC_ADD_LIBS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom visual panoramix rotate noise grain scene],[-lm]) ]) AC_CHECK_LIB(m,pow,[ VLC_ADD_LIBS([avcodec avformat swscale imgresample postproc ffmpegaltivec stream_out_transrate i420_rgb faad twolame equalizer spatializer param_eq libvlc vorbis freetype mod mpc dmo quicktime realaudio realvideo galaktos opengl],[-lm]) @@ -778,7 +795,7 @@ AC_CHECK_FUNCS(nanosleep,have_nanosleep=:,[ if ${have_nanosleep}; then AC_DEFINE(HAVE_NANOSLEEP, 1, [Define if nanosleep is available.]) fi -fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" +fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" dnl Check for misc headers AC_MSG_CHECKING(for strncasecmp in strings.h) @@ -791,7 +808,7 @@ AC_EGREP_HEADER(strncasecmp,strings.h,[ dnl Check for headers AC_CHECK_HEADERS(signal.h time.h errno.h stdint.h stdbool.h getopt.h strings.h inttypes.h sys/int_types.h wchar.h locale.h) AC_CHECK_HEADERS(sys/sockio.h fcntl.h sys/types.h sys/time.h sys/times.h sys/ioctl.h sys/stat.h xlocale.h) -AC_CHECK_HEADERS([arpa/inet.h netinet/in.h netinet/udplite.h]) +AC_CHECK_HEADERS([arpa/inet.h netinet/in.h netinet/udplite.h sys/eventfd.h]) AC_CHECK_HEADERS([net/if.h], [], [], [ #include @@ -810,10 +827,13 @@ AC_CHECK_TYPE(ssize_t,, [ AC_DEFINE(ssize_t, int) ]) -dnl don't attemp to use poll on darwin, it can't poll a tty. select will do a better job. -if test "${SYS}" != "darwin"; then - AC_SEARCH_LIBS(poll, [poll], [AC_DEFINE(HAVE_POLL, 1, [Define to 1 if the OS is usabl... err, has poll().])]) +dnl Check for poll +AC_SEARCH_LIBS(poll, [poll], [AC_DEFINE(HAVE_POLL, 1, [Define to 1 if the OS is usabl... err, has poll().])], [ +if test ${SYS} != "mingw32" +then + AC_MSG_WARN([Your platform does not support poll(). VLC has it's own poll() implementation, but it is only intended to be used on Windows. VLC might crash or be insecure when you see this message. Either switch to an OS with a proper poll() implementation, or implement one for your OS in VLC]) fi +]) dnl Check for dirent need_dirent=false @@ -844,23 +864,47 @@ AC_EGREP_HEADER(timespec,sys/time.h,[ dnl Check for threads library if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then -AC_CHECK_HEADERS(pthread.h kernel/scheduler.h kernel/OS.h) +AC_CHECK_HEADERS(pthread.h) fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" -dnl Find where are the X headers and libraries -AC_PATH_XTRA() - 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 Make PKG_CONFIG_PATH precious so that it appears in the help and get saved -AC_ARG_VAR(PKG_CONFIG_PATH, +AC_ARG_VAR(PKG_CONFIG_PATH, [Paths where to find .pc not at the default location]) PKG_PROG_PKG_CONFIG() +dnl +dnl Check for zlib.h and -lz along with system -lminizip if available +dnl +AC_CHECK_HEADERS(zlib.h, [ have_zlib=yes ], [ have_zlib=no ]) +AM_CONDITIONAL(HAVE_ZLIB, [ test "${have_zlib}" = "yes" ]) +if test "${have_zlib}" = "yes" +then + VLC_ADD_LIBS([access_http gme mp4 skins2 sap mkv unzip zip],[-lz]) + PKG_CHECK_MODULES([MINIZIP], [minizip] , [ have_minizip=yes ], [ + AC_CHECK_HEADERS([unzip.h], [ + have_minizip=yes + MINIZIP_LIBS="-lminizip -lz" + ], [ + have_minizip=no + MINIZIP_CFLAGS="-I\\\${top_srcdir}/libs/unzip" + MINIZIP_LIBS="\\\${top_builddir}/libs/unzip/libunzip.la" + ]) + ]) + VLC_ADD_CPPFLAGS([skins2],[$MINIZIP_CFLAGS]) + VLC_ADD_CFLAGS([zip],[$MINIZIP_CFLAGS]) + VLC_ADD_LIBS([skins2 zip],[$MINIZIP_LIBS]) + VLC_ADD_PLUGIN([unzip]) + VLC_ADD_PLUGIN([zip]) +fi +AM_CONDITIONAL(HAVE_MINIZIP, [ test "${have_minizip}" = "yes" ]) + + dnl Check for hal AC_ARG_ENABLE(hal, [ --enable-hal Linux HAL services discovery (default enabled)]) - -if test "${enable_hal}" != "no" + +if test "${enable_hal}" != "no" -a "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" then PKG_CHECK_MODULES(HAL, hal >= 0.5.0, [ @@ -873,12 +917,27 @@ then ) fi +dnl Check for mtp +AC_ARG_ENABLE(mtp, + [ --enable-mtp MTP devices support (default enabled)]) + +if test "${enable_mtp}" != "no" -a "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" +then + PKG_CHECK_MODULES(MTP, libmtp >= 0.3.0, + [ VLC_ADD_PLUGIN([mtp]) + VLC_ADD_PLUGIN([access_mtp]) + VLC_ADD_LIBS([mtp access_mtp],[$MTP_LIBS]) + VLC_ADD_CFLAGS([mtp access_mtp],[$MTP_CFLAGS])], + [AC_MSG_WARN(MTP library not found)] + ) +fi + dnl Check for dbus AC_ARG_ENABLE(dbus, [ --enable-dbus Linux D-BUS message bus system (default enabled)]) case "${SYS}" in linux*|*bsd*) -if test "${enable_dbus}" != "no" +if test "${enable_dbus}" != "no" -a "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" then dnl api stable dbus PKG_CHECK_MODULES(DBUS, dbus-1 >= 1.0.0, @@ -933,7 +992,7 @@ 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]) +RDC_PROG_CC_WFLAGS([all extra sign-compare undef pointer-arith bad-function-cast cast-align write-strings missing-prototypes volatile-register-var error-implicit-function-declaration]) RDC_PROG_CC_FLAGS_IFELSE([-pipe]) dnl Check for various optimization flags @@ -943,7 +1002,7 @@ AC_CACHE_CHECK([if \$CC accepts -Os], AC_TRY_COMPILE([],,ac_cv_c_os=yes, ac_cv_c_os=no)]) if test "${ac_cv_c_os}" != "no"; then CFLAGS_OPTIM_SIZE="${CFLAGS_OPTIM_SIZE} -Os" -else +else AC_CACHE_CHECK([if \$CC accepts -O], [ac_cv_c_o], [CFLAGS="${CFLAGS_save} -O" @@ -955,26 +1014,34 @@ else fi fi -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 "x${enable_debug}" = "xno"; then - CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -O3" +AC_CACHE_CHECK([if \$CC accepts -O4], + [ac_cv_c_o4], + [CFLAGS="${CFLAGS_save} -O4" + AC_TRY_COMPILE([],,ac_cv_c_o4=yes, ac_cv_c_o4=no)]) +if test "${ac_cv_c_o4}" != "no" -a "x${enable_debug}" = "xno"; then + CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -O4" else - 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"; then - CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -O2" + 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 "x${enable_debug}" = "xno"; then + CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -O3" else - AC_CACHE_CHECK([if \$CC accepts -O], - [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"; then - CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -O" + 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"; then + CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -O2" + else + AC_CACHE_CHECK([if \$CC accepts -O], + [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"; then + CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -O" + fi fi fi fi @@ -1015,7 +1082,12 @@ AC_CACHE_CHECK([if \$CC accepts -fomit-frame-pointer], [CFLAGS="${CFLAGS_save} -fomit-frame-pointer" AC_TRY_COMPILE([],,ac_cv_c_omit_frame_pointer=yes, ac_cv_c_omit_frame_pointer=no)]) if test "${ac_cv_c_omit_frame_pointer}" != "no"; then + if test "${SYS}" != "darwin"; then CFLAGS_OPTIM_NODEBUG="${CFLAGS_OPTIM_NODEBUG} -fomit-frame-pointer" + else + dnl On darwin we explicitely disable it. + CFLAGS_OPTIM_NODEBUG="${CFLAGS_OPTIM_NODEBUG} -fno-omit-frame-pointer" + fi fi dnl Check for Darwin plugin linking flags @@ -1082,42 +1154,9 @@ test "${enable_cprof}" != "yes" && enable_cprof="no" dnl dnl default modules dnl -VLC_ADD_PLUGIN([dummy]) -VLC_ADD_PLUGIN([stats]) -VLC_ADD_PLUGIN([logger]) -VLC_ADD_PLUGIN([memcpy]) -dnl Demuxers: -VLC_ADD_PLUGIN([mpgv]) -VLC_ADD_PLUGIN([mpga]) -VLC_ADD_PLUGIN([m4v]) -VLC_ADD_PLUGIN([m4a]) -VLC_ADD_PLUGIN([h264]) -VLC_ADD_PLUGIN([cdg]) -VLC_ADD_PLUGIN([ps]) -VLC_ADD_PLUGIN([avi]) -VLC_ADD_PLUGIN([asf]) -VLC_ADD_PLUGIN([mp4]) -dnl Text codecs: -VLC_ADD_PLUGIN([cvdsub]) -VLC_ADD_PLUGIN([svcdsub]) -VLC_ADD_PLUGIN([spudec]) -VLC_ADD_PLUGIN([subsdec]) -VLC_ADD_PLUGIN([subsusf]) -VLC_ADD_PLUGIN([t140]) -VLC_ADD_PLUGIN([dvbsub]) -VLC_ADD_PLUGIN([cc]) -dnl Video codecs: -VLC_ADD_PLUGIN([cinepak]) -dnl Audio codecs: -VLC_ADD_PLUGIN([araw]) -VLC_ADD_PLUGIN([adpcm]) -VLC_ADD_PLUGIN([mpeg_audio]) -VLC_ADD_PLUGIN([lpcm]) -VLC_ADD_PLUGIN([a52]) -VLC_ADD_PLUGIN([dts]) -VLC_ADD_PLUGIN([flac]) dnl Video filters: VLC_ADD_PLUGIN([deinterlace]) +VLC_ADD_PLUGIN([yuvp]) VLC_ADD_PLUGIN([invert]) VLC_ADD_PLUGIN([adjust]) VLC_ADD_PLUGIN([transform]) @@ -1132,42 +1171,18 @@ VLC_ADD_PLUGIN([noise]) VLC_ADD_PLUGIN([grain]) VLC_ADD_PLUGIN([extract]) VLC_ADD_PLUGIN([sharpen]) -VLC_ADD_PLUGIN([seamcarving]) VLC_ADD_PLUGIN([croppadd]) VLC_ADD_PLUGIN([canvas]) VLC_ADD_PLUGIN([blendbench]) VLC_ADD_PLUGIN([blend]) VLC_ADD_PLUGIN([scale]) -VLC_ADD_PLUGIN([image]) VLC_ADD_PLUGIN([vmem]) VLC_ADD_PLUGIN([logo]) VLC_ADD_PLUGIN([magnify]) VLC_ADD_PLUGIN([puzzle]) VLC_ADD_PLUGIN([colorthres]) -dnl Meta demuxers: -VLC_ADD_PLUGIN([playlist]) -VLC_ADD_PLUGIN([export]) -VLC_ADD_PLUGIN([nsc]) -VLC_ADD_PLUGIN([xtag]) -dnl Channel mixing audio filters: -VLC_ADD_PLUGIN([converter_fixed]) -VLC_ADD_PLUGIN([mono]) -VLC_ADD_PLUGIN([trivial_channel_mixer]) -dnl Resampling audio filters: -VLC_ADD_PLUGIN([trivial_resampler]) -VLC_ADD_PLUGIN([ugly_resampler]) -dnl Audio mixers: -VLC_ADD_PLUGIN([trivial_mixer]) -dnl Video chromas: -VLC_ADD_PLUGIN([i420_rgb]) -VLC_ADD_PLUGIN([grey_yuv]) -dnl Video codecs: -VLC_ADD_PLUGIN([rawvideo]) -dnl Access filters: -VLC_ADD_PLUGIN([access_filter_timeshift]) -VLC_ADD_PLUGIN([access_filter_record]) -VLC_ADD_PLUGIN([access_filter_dump]) -VLC_ADD_PLUGIN([access_filter_bandwidth]) +VLC_ADD_PLUGIN([scene]) +VLC_ADD_PLUGIN([yuv]) ALIASES="${ALIASES} cvlc" @@ -1225,6 +1240,28 @@ if test "${SYS}" != "mingwce"; then ALIASES="${ALIASES} rvlc" fi +if test "${SYS}" = "mingwce"; then + VLC_ADD_PLUGIN([chain]) + VLC_ADD_PLUGIN([aout_file]) + VLC_ADD_PLUGIN([linear_resampler]) + VLC_ADD_PLUGIN([bandlimited_resampler]) + VLC_ADD_PLUGIN([float32_mixer]) + VLC_ADD_PLUGIN([spdif_mixer]) + 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]) + VLC_ADD_PLUGIN([i422_i420]) + VLC_ADD_PLUGIN([yuy2_i422]) + VLC_ADD_PLUGIN([yuy2_i420]) +fi + dnl dnl Some plugins aren't useful on some platforms dnl @@ -1239,6 +1276,7 @@ elif test "${SYS}" != "mingwce"; then VLC_ADD_PLUGIN([dmo]) VLC_ADD_PLUGIN([msn]) VLC_ADD_LIBS([dmo],[-lole32 -luuid]) + VLC_ADD_PLUGIN([globalhotkeys]) else VLC_ADD_PLUGIN([win32text]) fi @@ -1479,7 +1517,7 @@ dnl - Others: test should fail AC_CHECK_HEADERS(altivec.h) CPPFLAGS="${CPPFLAGS_save}" - + AS_IF([test "${ac_cv_c_altivec}" != "no"], [ AC_DEFINE(CAN_COMPILE_C_ALTIVEC, 1, [Define to 1 if C AltiVec extensions are available.]) @@ -1569,7 +1607,21 @@ AC_ARG_ENABLE(debug, test "${enable_debug}" != "yes" && enable_debug="no" AH_TEMPLATE(NDEBUG, [Define to 1 if debug code should NOT be compiled]) -AS_IF([test "x${enable_debug}" = "xno"], [AC_DEFINE(NDEBUG)]) +AS_IF([test "x${enable_debug}" = "xno"], [ + AC_DEFINE(NDEBUG) +], [ + AC_CHECK_HEADERS([valgrind/valgrind.h]) +]) + +dnl +dnl Allow runing as root (usefull for people runing on embedded platforms) +dnl +AC_ARG_ENABLE(run-as-root, +[ --enable-run-as-root allow runing VLC as root (default disabled)]) +AS_IF([test "${enable_run_as_root}" = "yes"],[ + AC_DEFINE(ALLOW_RUN_AS_ROOT, 1, + [Define to 1 to allow runing VLC as root (uid 0).]) +]) dnl dnl Test coverage @@ -1621,7 +1673,7 @@ fi dnl Lua modules AC_ARG_ENABLE(lua, - AS_HELP_STRING([--enable-lua],[lua playlist, metafetcher and interface + AS_HELP_STRING([--enable-lua],[lua playlist, metafetcher and interface plugins (default enabled)])) if test "${enable_lua}" != "no" then @@ -1675,8 +1727,10 @@ dnl AC_ARG_ENABLE(libproxy, [ --enable-libproxy libproxy support (default auto)]) AS_IF([test "${enable_libproxy}" != "no"], [ - AC_CHECK_HEADERS(proxy.h, [ - VLC_ADD_LIBS([access_http],[-lproxy]) + PKG_CHECK_MODULES(LIBPROXY, libproxy-1.0, [ + AC_DEFINE(HAVE_LIBPROXY, 1, [Define if libproxy is available]) + VLC_ADD_CFLAGS([access_http],[$LIBPROXY_CFLAGS]) + VLC_ADD_LIBS([access_http],[$LIBPROXY_LIBS]) ], [ AS_IF([test "x${enable_libproxy}" != "x"], [ AC_MSG_ERROR([libproxy could not be found on your system]) @@ -1703,7 +1757,8 @@ dnl dnl Growl notification plugin dnl AC_ARG_ENABLE(growl, - [ --enable-growl growl notification plugin (default enabled)]) + [ --enable-growl growl notification plugin (default disabled)],, + [enable_growl=no]) AS_IF([test "${enable_growl}" != "no"], [ VLC_ADD_PLUGIN([growl_udp]) AC_CHECK_HEADERS(Growl/GrowlDefines.h, [ @@ -1741,27 +1796,13 @@ AS_IF([test "${enable_audioscrobbler}" != "no"], [ VLC_ADD_PLUGIN([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_PLUGIN([musicbrainz]) - VLC_ADD_LIBS([musicbrainz],[$MUSICBRAINZ_LIBS]) - VLC_ADD_CFLAGS([musicbrainz],[$MUSICBRAINZ_CFLAGS]) ], - [AC_MSG_WARN(MusicBrainz library not found)]) - ]) - - dnl dnl Taglibplugin dnl AC_ARG_ENABLE(taglib, - [ --disable-taglib Taglib support (default enabled) ]) + [ --disable-taglib Taglib support (default enabled) ]) AS_IF([test "${enable_taglib}" != "no"],[ - PKG_CHECK_MODULES(TAGLIB, taglib, + 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_LIBS([taglib],[$TAGLIB_LIBS -lz]) @@ -1778,7 +1819,7 @@ AC_ARG_WITH(,[Input plugins:]) dnl live555 input dnl -if test "${enable_livedotcom}" +if test "${enable_livedotcom}" then AC_MSG_WARN(--{en|dis}able-livedotcom is deprecated. Use --{en|dis}able-live555 instead.) fi @@ -1796,7 +1837,7 @@ if test "${enable_live555}" != "no"; then dnl dnl test for --with-live555-tree dnl - if test "${with_livedotcom_tree}" + if test "${with_livedotcom_tree}" then AC_MSG_WARN(--with-livedotcom-tree is deprecated. Use --with-live555-tree instead.) with_live555_tree="${with_livedotcom_tree}" @@ -1821,23 +1862,32 @@ if test "${enable_live555}" != "no"; then #endif #endif], [AC_MSG_RESULT([no]) - AC_MSG_ERROR([Your version of liveMedia is too old: you may get a more recent one from http://www.live555.com/liveMedia. + AC_MSG_ERROR([Your version of liveMedia is too old: you may get a more recent one from http://www.live555.com/liveMedia. lternatively you can use --disable-live555 to disable the liveMedia plugin.]) ],[ AC_MSG_RESULT([yes]) ]) ]) other_libs="-lgroupsock -lBasicUsageEnvironment -lUsageEnvironment" + other_libs_pic="-lgroupsock_pic -lBasicUsageEnvironment_pic -lUsageEnvironment_pic" if test "${SYS}" = "mingw32"; then # add ws2_32 for closesocket, select, recv other_libs="$other_libs -lws2_32" fi + dnl We need to check for pic because live555 don't provide shared libs + dnl and we want to build a plugins so we need -fPIC on some arch. AC_CHECK_HEADERS(liveMedia.hh, [ VLC_ADD_CXXFLAGS([live555], [${CPPFLAGS_live555}]) + AC_CHECK_LIB(liveMedia_pic, main, [ + VLC_ADD_PLUGIN([live555]) + VLC_ADD_LIBS([live555], [-lliveMedia_pic ${other_libs_pic}]) + ],[ AC_CHECK_LIB(liveMedia, main, [ VLC_ADD_PLUGIN([live555]) VLC_ADD_LIBS([live555], [-lliveMedia ${other_libs}]) - ],[],[${other_libs}]) + ],[],[${other_libs}]) ],[${other_libs_pic}]) + ],[ + AC_MSG_WARN([The development files for liveMedia (live555) can't be found]) ]) CPPFLAGS="${CPPFLAGS_save}" AC_LANG_POP(C++) @@ -1862,7 +1912,7 @@ lternatively you can use --disable-live555 to disable the liveMedia plugin.]) #endif #endif], [AC_MSG_RESULT([no]) - AC_MSG_ERROR([Your version of liveMedia is too old: you may get a more recent one from http://www.live555.com/liveMedia. + AC_MSG_ERROR([Your version of liveMedia is too old: you may get a more recent one from http://www.live555.com/liveMedia. lternatively you can use --disable-live555 to disable the liveMedia plugin.]) ],[ AC_MSG_RESULT([yes]) @@ -2176,7 +2226,7 @@ dnl dnl Windows DirectShow BDA access module dnl AC_ARG_ENABLE(bda, - AS_HELP_STRING([--enable-bda],[Win32 DirectShow BDA support (default + AS_HELP_STRING([--enable-bda],[Win32 DirectShow BDA support (default enabled on Win32)])) if test "${enable_bda}" != "no" then @@ -2202,9 +2252,9 @@ then if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin" 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}) - if test -f ${with_opencv_tree}/cv/include/cv.h -a -f ${with_opencv_tree}/cxcore/include/cxcore.h \ - -a -f ${with_opencv_tree}/cvaux/include/cvaux.h -a -f ${with_opencv_tree}/otherlibs/highgui/highgui.h + AC_MSG_CHECKING(for opencv in ${with_opencv_tree}) + if test -f ${with_opencv_tree}/cv/include/cv.h -a -f ${with_opencv_tree}/cxcore/include/cxcore.h \ + -a -f ${with_opencv_tree}/cvaux/include/cvaux.h -a -f ${with_opencv_tree}/otherlibs/highgui/highgui.h then AC_MSG_RESULT(yes) VLC_ADD_PLUGIN([opencv_wrapper]) @@ -2214,7 +2264,7 @@ then VLC_ADD_PLUGIN([opencv_example]) VLC_ADD_LIBS([opencv_example],[-L${with_opencv_tree}/lib -lcv -lcxcore -lcvaux -lhighgui]) VLC_ADD_CXXFLAGS([opencv_example],[-I${with_opencv_tree}/cv/include -I${with_opencv_tree}/cxcore/include -I${with_opencv_tree}/cvaux/include -I${with_opencv_tree}/otherlibs/highgui]) - AC_LANG_POP(C++) + AC_LANG_POP(C++) else dnl No opencv could be found, sorry AC_MSG_RESULT(no) @@ -2257,6 +2307,7 @@ dnl libdvbpsi ts demux/mux dnl AC_ARG_ENABLE(dvbpsi, [ --enable-dvbpsi dvbpsi ts mux and demux module (default enabled)]) +have_dvbpsi=no if test "${enable_dvbpsi}" != "no" then AC_ARG_WITH(dvbpsi, @@ -2272,7 +2323,8 @@ then if test "${enable_sout}" != "no"; then VLC_ADD_PLUGIN([mux_ts]) fi - VLC_ADD_LIBS([mux_ts ts dvb],[-ldvbpsi]) ], + VLC_ADD_LIBS([mux_ts ts dvb],[-ldvbpsi]) + have_dvbpsi=yes], [ AC_MSG_WARN([cannot find libdvbpsi headers]) ], [#if defined( HAVE_STDINT_H ) # include @@ -2302,6 +2354,7 @@ then fi VLC_ADD_CPPFLAGS([mux_ts ts dvb],[-I${real_dvbpsi_tree}/src]) VLC_ADD_LIBS([mux_ts ts dvb],[${real_dvbpsi_tree}/src/.libs/libdvbpsi.a]) + have_dvbpsi=yes else dnl The given libdvbpsi wasn't built AC_MSG_RESULT(no) @@ -2330,7 +2383,7 @@ then fi VLC_ADD_CPPFLAGS([mux_ts ts dvb],[${CPPFLAGS_test}]) VLC_ADD_LIBS([mux_ts ts dvb],[${LDFLAGS_test} -ldvbpsi]) - + have_dvbpsi=yes ],[ if test -n "${enable_dvbpsi}" then @@ -2381,19 +2434,6 @@ then VLC_ADD_CPPFLAGS([v4l2],[-I${with_v4l2}/include]) fi - AC_CHECK_HEADER(alsa/asoundlib.h, AC_CHECK_LIB(asound, main, have_v4l2_alsa="true", have_v4l2_alsa="false"),have_v4l2_alsa="false") - if test "${have_v4l2_alsa}" = "true" - then - CFLAGS="${CFLAGS_save}" - AC_TRY_COMPILE([#define ALSA_PCM_NEW_HW_PARAMS_API - #define ALSA_PCM_NEW_SW_PARAMS_API - #include ], - [snd_pcm_hw_params_get_period_time(0,0,0);], - AC_DEFINE(HAVE_ALSA_NEW_API, 1, Define if ALSA is at least rc4)) - VLC_ADD_LDFLAGS([v4l2],[-lasound -lm -ldl]) - AC_DEFINE(HAVE_ALSA, 1, Define if ALSA is present.) - fi - CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_v4l2}" AC_CHECK_HEADERS(linux/videodev2.h, [ VLC_ADD_PLUGIN([v4l2]) @@ -2401,6 +2441,20 @@ then CPPFLAGS="${CPPFLAGS_save}" fi +dnl +dnl libv4l2 support for video4linux. +dnl +AC_ARG_ENABLE( libv4l2, + [ --enable-libv4l2 Libv4l2 Video4Linux2 support (default enabled)]) +if test "${enable_libv4l2}" != "no" -a "${enable_v4l2}" != "no" +then + PKG_CHECK_MODULES( LIBV4L2, libv4l2, [ + VLC_ADD_LDFLAGS([v4l2],[${LIBV4L2_LIBS}]) + VLC_ADD_CFLAGS([v4l2],[${LIBV4L2_CFLAGS}]) + AC_DEFINE(HAVE_LIBV4L2, 1, Define if libv4l is available)], + AC_MSG_WARN([LibV4L2 support disabled because libv4l2 development headers were not found]) + ) +fi dnl dnl special access module for Hauppauge PVR cards @@ -2416,7 +2470,6 @@ then then AC_DEFINE_UNQUOTED(VIDEODEV2_H_FILE, "${with_videodev2}", [Location of videodev2.h]) fi - AC_CACHE_CHECK([for new linux/videodev2.h], [ac_cv_new_linux_videodev2_h], @@ -2441,7 +2494,7 @@ dnl gnomeVFS access module dnl AC_ARG_ENABLE(gnomevfs, [ --enable-gnomevfs GnomeVFS access module (default disabled)]) -if test "${enable_gnomevfs}" = "yes" +if test "${enable_gnomevfs}" = "yes" then PKG_CHECK_MODULES(GNOMEVFS, gnome-vfs-2.0, VLC_ADD_LIBS([access_gnomevfs],[$GNOMEVFS_LIBS]) @@ -2455,6 +2508,8 @@ dnl Need to test libcdio and libvcdinfo for a number of things. Do it now. 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)]) have_libcdio=no have_libvcdinfo=no @@ -2462,15 +2517,18 @@ if test "${enable_libcdio}" != "no" then PKG_CHECK_MODULES(LIBCDIO, libcdio >= 0.78.2, have_libcdio=yes - AC_DEFINE(HAVE_LIBCDIO, 1, + AC_DEFINE(HAVE_LIBCDIO, 1, [Define if you have libcdio 0.78.2 or greater installed]), [AC_MSG_WARN(CD Reading and information library not found)]) - 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])], - [AC_MSG_WARN(VCD information library not found)]) + 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])], + [AC_MSG_WARN(VCD information library not found)]) + fi fi dnl @@ -2479,10 +2537,10 @@ dnl AC_ARG_ENABLE(cddax, AS_HELP_STRING([--enable-cddax],[audio CD plugin with CD Text and CD paranoia via libcdio (default disabled)])) - + AC_ARG_ENABLE(libcddb, [ --enable-libcddb CDDB support for libcdio audio CD (default enabled)]) - + if test "${enable_cddax}" = "yes" then if test "$have_libcdio" = "yes" @@ -2494,34 +2552,34 @@ then PKG_CHECK_MODULES(LIBCDIO_PARANOIA, libcdio_paranoia >= 0.72, [ VLC_ADD_LIBS([cddax],[$LIBCDIO_CDDA_LIBS $LIBCDIO_CDDA_LIBS $LIBCDIO_PARANOIA_LIBS])], AC_MSG_WARN([CD Paranoia support disabled because no libcdio >= 0.72 found])) - else + else AC_MSG_WARN([cddax plugin disabled because ok libcdio library not found or disabled]) HAVE_CDDAX=no fi if test "$enable_libcddb" != "no"; then PKG_CHECK_MODULES(LIBCDDB, libcddb >= 0.9.5, [ - HAVE_LIBCDDB=yes + HAVE_LIBCDDB=yes AC_DEFINE(HAVE_LIBCDDB, 1, [Define this if you have libcddb installed]) VLC_ADD_LIBS([cddax],[$LIBCDDB_LIBS]) VLC_ADD_CFLAGS([cddax],[$LIBCDDB_CFLAGS]) ], - [AC_MSG_WARN(new enough libcddb not found. CDDB access disabled) + [AC_MSG_WARN(new enough libcddb not found. CDDB access disabled) HAVE_LIBCDDB=no]) fi - + fi AC_ARG_ENABLE(vcdx, [ --enable-vcdx VCD with navigation via libvcdinfo (default disabled)]) - + if test "${enable_vcdx}" = "yes" then if test "${have_libvcdinfo}" = "yes" then VLC_ADD_LIBS([vcdx],[$VCDINFO_LIBS]) VLC_ADD_CFLAGS([vcdx],[$VCDINFO_CFLAGS]) - else + else AC_MSG_WARN([vcdx plugin disabled because ok libvcdinfo library not found or disabled]) HAVE_VCDX=no fi @@ -2534,12 +2592,12 @@ then if test "$have_libvcdinfo" = "yes" then - AC_DEFINE(HAVE_VCDX, 1, + AC_DEFINE(HAVE_VCDX, 1, [Define for the VCD plugin using libcdio/libvcdinfo]) VLC_ADD_LIBS([vcdx],[$VCDINFO_LIBS]) VLC_ADD_CFLAGS([vcdx],[$VCDINFO_CFLAGS]) VLC_ADD_PLUGIN([vcdx]) - else + else AC_MSG_WARN([vcdx plugin disabled because ok libvcdinfo library not found]) HAVE_VCDX=no fi @@ -2548,9 +2606,9 @@ fi dnl dnl Built-in CD-DA and VCD module dnl -AC_ARG_ENABLE(cdda, +AC_ARG_ENABLE(cdda, [ --enable-cdda audio CD via built-in VCD (default enabled)]) - + AC_ARG_ENABLE(vcd, [ --enable-vcd built-in VCD (default enabled)]) @@ -2601,12 +2659,12 @@ then if test "$enable_libcddb" != "no"; then PKG_CHECK_MODULES(LIBCDDB, libcddb >= 0.9.5, [ - HAVE_LIBCDDB=yes + HAVE_LIBCDDB=yes AC_DEFINE(HAVE_LIBCDDB, 1, [Define this if you have libcddb installed]) VLC_ADD_LIBS([cdda],[$LIBCDDB_LIBS]) VLC_ADD_CFLAGS([cdda],[$LIBCDDB_CFLAGS]) ],: - [AC_MSG_WARN(new enough libcddb not found. CDDB access disabled) + [AC_MSG_WARN(new enough libcddb not found. CDDB access disabled) HAVE_LIBCDDB=no]) fi fi @@ -2619,17 +2677,21 @@ AC_ARG_ENABLE(dvb, if test "${enable_dvb}" != "no" then - AC_ARG_WITH(dvb, - [ --with-dvb=PATH path to a dvb- and v4l2-enabled kernel tree],[],[]) - if test "${with_dvb}" != "no" -a -n "${with_dvb}" - then - VLC_ADD_CFLAGS([dvb],[-I${with_dvb}/include]) - fi - CPPFLAGS="${CPPFLAGS_save} -I${with_dvb}/include" - AC_CHECK_HEADERS(linux/dvb/version.h linux/dvb/frontend.h, [ - VLC_ADD_PLUGIN([dvb]) - ],[AC_MSG_WARN(linux-dvb headers not found, dvb disabled)]) - CPPFLAGS="${CPPFLAGS_save}" + AS_IF([test "${have_dvbpsi}" = "yes" ],[ + AC_ARG_WITH(dvb, + [ --with-dvb=PATH path to a dvb- and v4l2-enabled kernel tree],[],[]) + if test "${with_dvb}" != "no" -a -n "${with_dvb}" + then + VLC_ADD_CFLAGS([dvb],[-I${with_dvb}/include]) + fi + CPPFLAGS="${CPPFLAGS_save} -I${with_dvb}/include" + AC_CHECK_HEADERS(linux/dvb/version.h linux/dvb/frontend.h, [ + VLC_ADD_PLUGIN([dvb]) + ],[AC_MSG_WARN(linux-dvb headers not found, dvb disabled)]) + CPPFLAGS="${CPPFLAGS_save}" + ],[ + AC_MSG_WARN([the dvb access module requires libdvbpsi]) + ]) fi dnl @@ -2654,14 +2716,6 @@ if test "${enable_screen}" != "no"; then VLC_ADD_PLUGIN([screen]) VLC_ADD_CXXFLAGS([screen],[]) VLC_ADD_LIBS([screen],[-lbe]) - else - CPPFLAGS="${CPPFLAGS_save} ${X_CFLAGS}" - AC_CHECK_HEADERS(X11/Xlib.h, [ - VLC_ADD_PLUGIN([screen]) - VLC_ADD_LIBS([screen],[${X_LIBS} ${X_PRE_LIBS} -lX11]) - VLC_ADD_CPPFLAGS([screen],[${X_CFLAGS}]) - ]) - CPPFLAGS="${CPPFLAGS_save}" fi fi @@ -2735,7 +2789,7 @@ AC_ARG_ENABLE(mkv, if test "${enable_mkv}" != "no" -a "${CXX}" != ""; then AC_LANG_PUSH(C++) AC_CHECK_HEADERS(ebml/EbmlVersion.h, [ - AC_MSG_CHECKING(for libebml version >= 0.7.6) + AC_MSG_CHECKING(for libebml version >= 0.7.7) AC_EGREP_CPP(yes, [#include #ifdef LIBEBML_VERSION @@ -2745,7 +2799,7 @@ if test "${enable_mkv}" != "no" -a "${CXX}" != ""; then #endif], [AC_MSG_RESULT([yes]) AC_CHECK_HEADERS(matroska/KaxVersion.h, [ - AC_MSG_CHECKING(for libmatroska version >= 0.7.7) + AC_MSG_CHECKING(for libmatroska version >= 0.8.0) AC_EGREP_CPP(yes, [#include #ifdef LIBMATROSKA_VERSION @@ -2766,7 +2820,7 @@ if test "${enable_mkv}" != "no" -a "${CXX}" != ""; then AC_CHECK_LIB(ebml, main, [ VLC_ADD_PLUGIN([mkv]) VLC_ADD_LIBS([mkv],[-lmatroska -lebml]) - ]) + ]) ) ], [AC_MSG_RESULT([no]) @@ -2876,6 +2930,26 @@ dnl AC_ARG_WITH(,[Codec plugins:]) +dnl +dnl wmafixed plugin +dnl +AC_ARG_ENABLE(wma-fixed, + [ --enable-wma-fixed libwma-fixed module (default disabled)]) +if test "${enable_wma_fixed}" = "yes" +then + VLC_ADD_PLUGIN([wma_fixed]) +fi + +dnl +dnl shine fixed point mp3 encoder +dnl +AC_ARG_ENABLE(shine, + [ --enable-shine shine mp3 encoding module (default disabled)]) +if test "${enable_shine}" = "yes" +then + VLC_ADD_PLUGIN([shine]) +fi + dnl dnl mad plugin dnl @@ -2938,14 +3012,14 @@ dnl dnl libid3tag support (FIXME!!! doesn't work with new input) dnl AC_ARG_ENABLE( id3tag, -[ --disable-id3tag id3tag metadata reader plugin (default enabled)]) -AS_IF([test "${enable_id3tag}" != "no"], [ +[ --disable-id3tag id3tag metadata reader plugin (default disabled)]) +AS_IF([test "${enable_id3tag}" = "yes"], [ AC_CHECK_HEADERS(id3tag.h, [ - AC_CHECK_HEADERS(zlib.h, [ - VLC_ADD_LIBS([id3tag],[-lid3tag -lz]) - VLC_ADD_PLUGIN([id3tag]) + AS_IF([test "${have_zlib}" = "yes"],[ + VLC_ADD_LIBS([id3tag],[-lid3tag -lz]) + VLC_ADD_PLUGIN([id3tag]) + ]) ]) - ]) ]) dnl @@ -2973,7 +3047,7 @@ then VLC_ADD_CFLAGS([avcodec],[$AVCODEC_CFLAGS]) VLC_RESTORE_FLAGS ],[ - AC_MSG_ERROR([Could not find libavcodec or libavutil. Use --disable-avcodec to ignore this error.]) + AC_MSG_FAILURE([Could not find libavcodec or libavutil. Use --disable-avcodec to ignore this error.]) ]) fi @@ -2997,7 +3071,7 @@ then VLC_ADD_CFLAGS([avformat],[$AVFORMAT_CFLAGS]) VLC_RESTORE_FLAGS ],[ - AC_MSG_ERROR([Could not find libavformat or libavutil. Use --disable-avformat to ignore this error.]) + AC_MSG_FAILURE([Could not find libavformat or libavutil. Use --disable-avformat to ignore this error.]) ]) fi @@ -3006,7 +3080,7 @@ dnl swscale image scaling and conversion plugin dnl AC_ARG_ENABLE(swscale, - AS_HELP_STRING([--enable-swscale],[libswscale image scaling and conversion + AS_HELP_STRING([--enable-swscale],[libswscale image scaling and conversion (default enabled)])) if test "${enable_swscale}" != "no" then @@ -3035,7 +3109,7 @@ dnl from VLC. dnl AC_ARG_ENABLE(imgresample, - AS_HELP_STRING([--enable-imgresample],[deprecated libavcodec image scaling + AS_HELP_STRING([--enable-imgresample],[deprecated libavcodec image scaling and conversion (default disabled)])) if test "${enable_imgresample}" = "yes" then @@ -3054,7 +3128,7 @@ then AC_MSG_WARN([Could not find img_resample in libavcodec.]) if test "${enable_swscale}" != "no" then - AC_MSG_ERROR([swscale (and its fallback module imgresample) support will be missing. Use --disable-swscale to ignore this error. (This basically means that you will be missing any good software scaling module and some video chroma converters.)]) + AC_MSG_FAILURE([swscale (and its fallback module imgresample) support will be missing. Use --disable-swscale to ignore this error. (This basically means that you will be missing any good software scaling module and some video chroma converters.)]) fi # That sed hack to add -rpath is kind of ugly but at least it fixes # detection when linking against a shared libavcodec with @@ -3179,7 +3253,7 @@ then VLC_ADD_CPPFLAGS([twolame],[-DLIBTWOLAME_STATIC]) VLC_ADD_LIBS([twolame],[-ltwolame]) ], [ AC_MSG_ERROR([Cannot find libtwolame library...]) ]) - LDFLAGS="${LDFLAGS_save}" + LDFLAGS="${LDFLAGS_save}" CPPFLAGS="${CPPFLAGS_save}" fi fi @@ -3221,22 +3295,20 @@ if test "${enable_realrtsp}" = "yes"; then VLC_ADD_PLUGIN([access_realrtsp]) fi -dnl -dnl MP4 module -dnl -AC_CHECK_HEADERS(zlib.h, [ - VLC_ADD_LIBS([mp4 skins2 sap mkv gme],[-lz]) -] ) +AC_ARG_ENABLE(libsysfs, + [ --enable-libsysfs Get user key from firewire connected iPod via libsysfs (default enabled)]) -AC_CHECK_HEADERS(sysfs/libsysfs.h, [ - VLC_ADD_LIBS([mp4 mkv],[-lsysfs]) -] ) +AS_IF([test "${enable_libsysfs}" != "no"],[ + AC_CHECK_HEADERS(sysfs/libsysfs.h, [ + VLC_ADD_LIBS([mp4 mkv],[-lsysfs]) + ] ) +]) dnl dnl skins2 module dnl AC_ARG_ENABLE(libtar, - [ --enable-libtar support for skins2 (default enabled)]) + [ --enable-libtar libtar support for skins2 (default enabled)]) AS_IF([test "${enable_libtar}" != "no"],[ AC_CHECK_HEADERS(libtar.h, [ @@ -3332,7 +3404,7 @@ AS_IF([test "x${with_dts_tree}" != "x"], [ ]) AC_ARG_ENABLE(dca, - AS_HELP_STRING([--enable-dca],[DTS Coherent Acoustics support with libdca + AS_HELP_STRING([--enable-dca],[DTS Coherent Acoustics support with libdca (default enabled)])) AS_IF([test "${enable_dca}" != "no"], [ AC_ARG_WITH(dca-tree, @@ -3441,11 +3513,11 @@ then AC_MSG_ERROR([cannot find ${real_libmpeg2_tree}/libmpeg2/.libs/libmpeg2.a, make sure you compiled libmpeg2 in ${with_libmpeg2_tree}]) fi ],[ - PKG_CHECK_MODULES(LIBMPEG2,[libmpeg2 > 0.3.2],[ + PKG_CHECK_MODULES(LIBMPEG2,[libmpeg2 > 0.3.2],[ VLC_ADD_PLUGIN([libmpeg2]) VLC_ADD_LIBS([libmpeg2], $LIBMPEG2_LIBS) VLC_ADD_CFLAGS([libmpeg2], $LIBMPEG2_CFLAGS) - ], + ], AC_MSG_WARN([Could not find libmpeg2 on your system: you may get it from http://libmpeg2.sf.net/ . Alternatively you can use --disable-libmpeg2 to disable the libmpeg2 plugin.])) ]) fi @@ -3471,7 +3543,7 @@ then fi if test -f "${real_vorbis_tree}/lib/.libs/libvorbis.a" then - dnl Use a custom vorbis + dnl Use a custom vorbis AC_MSG_RESULT(${real_vorbis_tree}/lib/.libs/libvorbis.a) VLC_ADD_PLUGIN([vorbis]) VLC_ADD_LIBS([vorbis],[${real_vorbis_tree}/lib/.libs/libvorbis.a ${real_vorbis_tree}/lib/.libs/libvorbisenc.a]) @@ -3613,7 +3685,7 @@ dnl dnl schroedinger decoder plugin (for dirac format video) dnl AC_ARG_ENABLE(schroedinger, -[ --disable-schroedinger high performance dirac codec (default enabled)]) +[ --disable-schroedinger high performance dirac codec (default enabled)]) if test "${enable_schroedinger}" != "no"; then PKG_CHECK_MODULES(SCHROEDINGER,[schroedinger-1.0 >= 1.0], [ VLC_ADD_PLUGIN([schroedinger]) @@ -3673,6 +3745,9 @@ if test "${enable_x264}" != "no"; then VLC_ADD_PLUGIN([x264]) VLC_ADD_LDFLAGS([x264],[${X264_LIBS}]) VLC_ADD_CFLAGS([x264],[${X264_CFLAGS}]) + if echo ${X264_LIBS} |grep -q 'pthreadGC2'; then + VLC_ADD_CFLAGS([x264], [-DPTW32_STATIC_LIB]) + fi ],[ AC_MSG_ERROR([the specified tree hasn't been compiled]) ]) @@ -3686,6 +3761,9 @@ if test "${enable_x264}" != "no"; then VLC_ADD_PLUGIN([x264]) VLC_ADD_LDFLAGS([x264],[${X264_LIBS}]) VLC_ADD_CFLAGS([x264],[${X264_CFLAGS}]) + if echo ${X264_LIBS} |grep -q 'pthreadGC2'; then + VLC_ADD_CFLAGS([x264], [-DPTW32_STATIC_LIB]) + 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]) @@ -3719,30 +3797,29 @@ dnl telx module dnl uncompatible dnl AC_ARG_ENABLE(zvbi, - AS_HELP_STRING([--enable-zvbi],[VBI (inc. Teletext) decoding support with + AS_HELP_STRING([--enable-zvbi],[VBI (inc. Teletext) decoding support with libzvbi (default enabled)])) AC_ARG_ENABLE(telx, - AS_HELP_STRING([--enable-telx],[Teletext decoding module (conflicting with - zvbi) (default disabled)])) + AS_HELP_STRING([--enable-telx],[Teletext decoding module (conflicting with + zvbi) (default enabled if zvbi is absent)])) AS_IF( [test "${enable_zvbi}" != "no"],[ - AS_IF( [test "${enable_telx}" = "yes"],[ - AC_MSG_ERROR([The zvbi and telx modules are uncompatibles. Disable the other if you enable one.]) - ],[ PKG_CHECK_MODULES(ZVBI, zvbi-0.2 >= 0.2.25, [ VLC_ADD_LIBS([zvbi],[$ZVBI_LIBS]) VLC_ADD_CFLAGS([zvbi],[$ZVBI_CFLAGS]) VLC_ADD_PLUGIN([zvbi]) - AC_DEFINE(ZVBI_COMPILED, 1, [Define if the zvbi module is built]) + AC_DEFINE(ZVBI_COMPILED, 1, [Define if the zvbi module is built]) + AS_IF( [test "${enable_telx}" = "yes"],[ + AC_MSG_WARN([The zvbi and telx modules are uncompatibles. + Using zvbi.]) + ]) ],[ AC_MSG_WARN(ZVBI library not found. Enabling the telx module instead) - enable_telx="yes" ]) - ]) - ]) -AS_IF( [test "${enable_telx}" = "yes"],[ + ]) +AS_IF( [test "${enable_telx}" != "no" ],[ VLC_ADD_PLUGIN([telx]) ]) @@ -3763,6 +3840,31 @@ AS_IF( [test "${enable_csri}" = "yes"], [ ]) ]) +dnl +dnl libass subtitle rendering module +dnl +AC_ARG_ENABLE(libass, + [ --enable-libass Subtitle support using libass (default disabled)]) +AS_IF( [test "${enable_libass}" = "yes"], [ + PKG_CHECK_MODULES(LIBASS, libass >= 0.9.5, + [ + VLC_ADD_LDFLAGS([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 -lxml2]) + else + VLC_ADD_LIBS([libass],[-lfontconfig]) + fi + ]) + ],[ + AC_MSG_WARN([LIBASS library not found]) + ]) + ]) + dnl dnl asa demuxer dnl @@ -3823,15 +3925,63 @@ AS_IF([test "${enable_kate}" != "no"], [ ]) +dnl +dnl tiger decoder plugin +dnl +AC_ARG_ENABLE(tiger, +[ --enable-tiger Tiger rendering library for Kate streams (default enabled)]) +AS_IF([test "${enable_tiger}" != "no"], [ + PKG_CHECK_MODULES(TIGER,[tiger >= 0.3.1], [ + AC_DEFINE(HAVE_TIGER, 1, [Define if libtiger is available.]) + VLC_ADD_CFLAGS([kate],[$TIGER_CFLAGS]) + VLC_ADD_LIBS([kate],[$TIGER_LIBS]) ],[ + AS_IF([test "x${enable_tiger}" != "x"], [ + AC_MSG_ERROR([libtiger does not appear to be installed on your system.]) + ]) + ]) +]) + + dnl dnl Video plugins dnl AC_ARG_WITH(,[Video plugins:]) +dnl +dnl Xlib +dnl + +AC_PATH_XTRA() +AC_ARG_ENABLE(x11, + [ --enable-x11 X11 support (default enabled)],, [ + AS_IF([test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"], [ + enable_x11="yes" + ], [ + enable_x11="no" + ]) +]) + +CPPFLAGS="${CPPFLAGS_save} ${X_CFLAGS}" + +AS_IF([test "${enable_x11}" != "no"], [ + AC_CHECK_HEADERS(X11/Xlib.h, [ + VLC_ADD_PLUGIN([x11_screen]) + VLC_ADD_CPPFLAGS([x11_screen],[${X_CFLAGS}]) + VLC_ADD_LIBS([x11_screen],[${X_LIBS} ${X_PRE_LIBS} -lX11]) + + VLC_ADD_PLUGIN([panoramix]) + VLC_ADD_LIBS([panoramix],[${X_LIBS} ${X_PRE_LIBS} -lX11]) + VLC_ADD_CPPFLAGS([panoramix],[${X_CFLAGS}]) + + VLC_ADD_PLUGIN([x11]) + VLC_ADD_LIBS([x11],[${X_LIBS} ${X_PRE_LIBS} -lX11]) + VLC_ADD_CPPFLAGS([x11],[${X_CFLAGS}]) + + AC_CHECK_LIB(Xext, XShmAttach, [VLC_ADD_LIBS([x11],[-lXext])]) + ]) + dnl Check for DPMS -if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then - CPPFLAGS="${CPPFLAGS_save} ${X_CFLAGS}" AC_CHECK_HEADERS(X11/extensions/dpms.h, [ AC_MSG_CHECKING(for DPMSInfo in X11/extensions/dpms.h) AC_EGREP_HEADER(DPMSInfo,X11/extensions/dpms.h,[ @@ -3844,42 +3994,17 @@ if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then ],,[ #include ]) - CPPFLAGS="${CPPFLAGS_save}" -fi - -dnl -dnl X11 module -dnl (enabled by default except on win32) -dnl -AC_ARG_ENABLE(x11, - [ --enable-x11 X11 support (default enabled)]) -if test "${enable_x11}" != "no" && - (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" || - test "${enable_x11}" = "yes"); then - CPPFLAGS="${CPPFLAGS_save} ${X_FLAGS}" - AC_CHECK_HEADERS(X11/Xlib.h, [ - VLC_ADD_PLUGIN([panoramix]) - VLC_ADD_LIBS([panoramix],[${X_LIBS} ${X_PRE_LIBS} -lX11]) - VLC_ADD_CPPFLAGS([panoramix],[${X_CFLAGS}]) - AC_CHECK_LIB(Xext, XShmAttach, [ - VLC_ADD_PLUGIN([x11]) - VLC_ADD_LIBS([x11],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext]) - VLC_ADD_CPPFLAGS([x11],[${X_CFLAGS}]) - ]) - ]) - CPPFLAGS="${CPPFLAGS_save}" -fi +]) dnl dnl XVideo module dnl (enabled by default except on win32) dnl AC_ARG_ENABLE(xvideo, - [ --enable-xvideo XVideo support (default enabled)]) -if test "${enable_xvideo}" != "no" && - (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" || - test "${enable_xvideo}" = "yes"); then - CPPFLAGS="${CPPFLAGS_save} ${X_CFLAGS}" + [ --enable-xvideo XVideo support (default enabled)],, [ + enable_xvideo="$enable_x11" +]) +AS_IF([test "${enable_xvideo}" != "no"], [ AC_CHECK_HEADERS(X11/extensions/Xv.h, [ CFLAGS="${CFLAGS_save} ${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext" AC_CHECK_LIB(Xv,XvPutImage,[ @@ -3888,20 +4013,18 @@ if test "${enable_xvideo}" != "no" && VLC_ADD_LIBS([xvideo],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext -lXv]) ]) CFLAGS="${CFLAGS_save}" - ] - CPPFLAGS="${CPPFLAGS_save}") -fi + ]) +]) dnl dnl GLX module dnl (enabled by default except on win32) dnl AC_ARG_ENABLE(glx, - [ --enable-glx X11 OpenGL (GLX) support (default enabled)]) -if test "${enable_glx}" != "no" && - (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" || - test "${enable_glx}" = "yes"); then - CPPFLAGS="${CPPFLAGS_save} ${X_CFLAGS}" + [ --enable-glx X11 OpenGL (GLX) support (default enabled)],, [ + enable_glx="$enable_x11" +]) +AS_IF([test "${enable_glx}" != "no"], [ AC_CHECK_HEADERS(X11/Xlib.h GL/glu.h GL/glx.h) AC_COMPILE_IFELSE(AC_LANG_PROGRAM( [[#if !defined(HAVE_X11_XLIB_H) || !defined(HAVE_GL_GLU_H) || !defined(HAVE_GL_GLX_H) @@ -3912,37 +4035,33 @@ if test "${enable_glx}" != "no" && VLC_ADD_LIBS([glx],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext -lGL -lGLU]) VLC_ADD_CPPFLAGS([glx],[${X_CFLAGS}]) ],[AC_MSG_ERROR([Please install GL development package. Alternatively you can also configure with --disable-glx.])]) - CPPFLAGS="${CPPFLAGS_save}" -fi +]) dnl dnl XVMC module dnl (disabled 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}" + [ --enable-xvmc XVMC support (default disabled)],, [ + enable_xvmc="no" +]) +AS_IF([test "${enable_xvmc}" != "no"], [ AC_CHECK_HEADERS(X11/extensions/vldXvMC.h, [ VLC_ADD_PLUGIN([xvmc]) VLC_ADD_LIBS([xvmc],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext -lXvMCW -lXv -lXinerama]) VLC_ADD_CPPFLAGS([xvmc],[${X_CFLAGS}]) ]) - CPPFLAGS="${CPPFLAGS_save}" -fi +]) dnl dnl Check for the Xinerama extension dnl AC_ARG_ENABLE(xinerama, - [ --enable-xinerama Xinerama support (default enabled)]) -if test "${enable_xvideo}" != "no" && test "${enable_xinerama}" != "no" && - (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" || - test "${enable_xvideo}" = "yes"); then + [ --enable-xinerama Xinerama support (default enabled)],, [ + enable_xinerama="$enable_xvideo" +]) +AS_IF([test "$enable_xinerama" != "no"], [ ac_cv_have_xinerama="no" - CPPFLAGS="${CPPFLAGS_save} ${X_CFLAGS}" CFLAGS="${CFLAGS_save} ${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext" AC_CHECK_HEADERS(X11/extensions/Xinerama.h,[ AC_CHECK_LIB(Xinerama_pic, XineramaQueryExtension,[ @@ -3962,15 +4081,11 @@ if test "${enable_xvideo}" != "no" && test "${enable_xinerama}" != "no" && if test "${ac_cv_have_xinerama}" = "yes"; then AC_DEFINE(HAVE_XINERAMA, 1, [Define this if you have libXinerama installed]) fi - CFLAGS="${CFLAGS_save}" - CPPFLAGS="${CPPFLAGS_save}" dnl dnl Check for XF86VidMode extension dnl ac_cv_have_xf86vidmode="no" - CPPFLAGS="${CPPFLAGS_save} ${X_CFLAGS}" - CFLAGS="${CFLAGS_save} ${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext" AC_CHECK_HEADERS(X11/extensions/xf86vmode.h,[ AC_CHECK_LIB(Xxf86vm_pic, XF86VidModeGetViewPort,[ VLC_ADD_LIBS([xvideo],[-lXxf86vm_pic]) @@ -3996,9 +4111,34 @@ dnl [AC_DEFINE(HAVE_XF86VIDMODE, 1, [Define this if you have libXxf86vm installed]) ]) CFLAGS="${CFLAGS_save}" - CPPFLAGS="${CPPFLAGS_save}" +]) + +dnl End of Xlib tests +CPPFLAGS="${CPPFLAGS_save}" -fi + +dnl +dnl X C Bindings modules +dnl (work in progress) +dnl +AC_ARG_ENABLE(xcb, + [ --enable-xcb X C Bindings work-in-progress (default disabled)], + ,[enable_xcb="no"]) +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]) + + dnl xcb-utils + PKG_CHECK_MODULES(XCB_AUX, [xcb-aux]) + PKG_CHECK_MODULES(XCB_IMAGE, [xcb-image]) + PKG_CHECK_MODULES(XCB_KEYSYMS, [xcb-keysyms]) + + VLC_ADD_PLUGIN([xcb]) + VLC_ADD_PLUGIN([xcb_window]) +]) dnl dnl OpenGL module @@ -4125,6 +4265,8 @@ AC_ARG_ENABLE(freetype, [ --enable-freetype freetype support (default enabled)]) AC_ARG_ENABLE(fribidi, [ --enable-fribidi fribidi support (default enabled)]) +AC_ARG_ENABLE(fontconfig, + [ --enable-fontconfig, fontconfig support (default enabled)]) if test "${enable_freetype}" != "no" then PKG_CHECK_MODULES(FREETYPE, freetype2,[ @@ -4134,12 +4276,16 @@ then VLC_ADD_LIBS([freetype skins2],[${FREETYPE_LIBS}]) if test "${SYS}" = "mingw32"; then VLC_ADD_LIBS([freetype skins2],[-lxml2]) - fi - AC_CHECK_HEADERS(fontconfig/fontconfig.h, - [VLC_ADD_CPPFLAGS([freetype],[-DHAVE_FONTCONFIG]) - VLC_ADD_LIBS([freetype],[-lfontconfig])]) - AC_CHECK_HEADERS(Carbon/Carbon.h, - [VLC_ADD_LDFLAGS([freetype],[-Wl,-framework,Carbon])]) + VLC_ADD_LIBS([freetype],[-liconv]) + fi + if test "${enable_fontconfig}" != "no" + then + AC_CHECK_HEADERS(fontconfig/fontconfig.h, + [VLC_ADD_CPPFLAGS([freetype],[-DHAVE_FONTCONFIG]) + VLC_ADD_LIBS([freetype],[-lfontconfig])]) + AC_CHECK_HEADERS(Carbon/Carbon.h, + [VLC_ADD_LDFLAGS([freetype],[-Wl,-framework,Carbon])]) + fi ],[ have_freetype=no AS_IF([ test "${enable_freetype}" = "yes"],[ @@ -4164,41 +4310,17 @@ dnl libxml2 module dnl AC_ARG_ENABLE(libxml2, [ --enable-libxml2 libxml2 support (default enabled)]) -if test "${enable_libxml2}" != "no" -then - XML2_PATH="${PATH}" - AC_ARG_WITH(xml2-config-path, - [ --with-xml2-config-path=PATH xml2-config path (default search in \$PATH)], - [ if test "${with_xml2_config_path}" != "no"; then - XML2_PATH="${with_xml2_config_path}:${PATH}" - fi ]) - AC_PATH_PROG(XML2_CONFIG, xml2-config, no, ${XML2_PATH}) - if test "${XML2_CONFIG}" != "no"; then - VLC_ADD_CPPFLAGS([xml],[`${XML2_CONFIG} --cflags`]) - VLC_ADD_LIBS([xml],[`${XML2_CONFIG} --libs`]) - dnl depends on the xmlTextReader extension - CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_xml}" - LDFLAGS="${LDFLAGS_save} ${LIBS_xml}" - AC_CHECK_LIB(xml2,xmlTextReaderConstName,[ - AC_EGREP_HEADER(xmlTextReaderConstName,libxml/xmlreader.h,[ - VLC_ADD_PLUGIN([xml]) ],[ - AC_MSG_WARN([libxml2 missing the xmlTextReader extension, you should update your version]) - if test "${enable_xml2}" = "yes"; then - AC_MSG_ERROR([libxml2 missing the xmlTextReader extension]) - fi]) - ],[ - AC_MSG_WARN([libxml2 missing the xmlTextReader extension, you should update your version]) - if test "${enable_xml2}" = "yes"; then - AC_MSG_ERROR([libxml2 missing the xmlTextReader extension]) - fi]) - LDFLAGS="${LDFLAGS_save}" - CPPFLAGS="${CPPFLAGS_save}" - else - if test "${enable_xml2}" = "yes"; then - AC_MSG_ERROR([Could not find libxml2]) - fi - fi -fi +AS_IF([test "${enable_libxml2}" != "no"], [ + PKG_CHECK_MODULES([XML2], [libxml-2.0 >= 2.5], [ + VLC_ADD_CPPFLAGS([xml],[${XML2_CFLAGS}]) + VLC_ADD_LIBS([xml],[${XML2_LIBS}]) + VLC_ADD_PLUGIN([xml]) + ], [ + AS_IF([test "x${enable_xml2}" != "x"], [ + AC_MSG_ERROR([Could not find libxml version 2.5 or higher]) + ]) + ]) +]) dnl dnl SVG module @@ -4207,7 +4329,7 @@ AC_ARG_ENABLE(svg, [ --enable-svg SVG support (default disabled)]) if test "${enable_svg}" = "yes" then - PKG_CHECK_MODULES(SVG, + PKG_CHECK_MODULES(SVG, librsvg-2.0 >= 2.9.0, [ VLC_ADD_LIBS([svg],[$SVG_LIBS]) @@ -4349,6 +4471,20 @@ AC_ARG_ENABLE(mga, VLC_ADD_PLUGIN([mga]) fi ]) +dnl +dnl OMAP Framebuffer module +dnl +AC_ARG_ENABLE(omapfb, + [ --enable-omapfb OMAP framebuffer support (default disabled)]) + if test "${enable_omapfb}" = "yes" + then + AC_CHECK_HEADERS(asm/arch-omap/omapfb.h, [ + VLC_ADD_PLUGIN([omapfb]) + AC_CHECK_HEADERS(X11/Xlib.h, [ + VLC_ADD_LIBS([omapfb],[${X_LIBS} ${X_PRE_LIBS} -lX11]) ]) + ]) + fi + dnl dnl SVGAlib module dnl @@ -4367,7 +4503,7 @@ dnl TODO: support for static linking dnl AC_ARG_ENABLE(directfb, [ --enable-directfb DirectFB support (default disabled)]) -AC_ARG_WITH(directfb, +AC_ARG_WITH(directfb, [ --with-directfb=PATH path to DirectFB headers and libraries]) if test "${enable_directfb}" = "yes"; then @@ -4403,14 +4539,14 @@ if test "${enable_directfb}" = "yes"; then LIBS_mydirectfb="${LIBS_new} -lz -ldl -ldirectfb -lfusion -ldirect -lpthread" CPPFLAGS_mydirectfb="${CPPFLAGS_new}" fi - else + else dnl Look for directfb-config AC_PATH_PROG(DIRECTFB_CONFIG, directfb-config, no, ${PATH}) if test "${DIRECTFB_CONFIG}" != "no"; then CPPFLAGS_mydirectfb="`${DIRECTFB_CONFIG} --cflags`" LIBS_mydirectfb="`${DIRECTFB_CONFIG} --libs`" have_directfb="true" - else + else dnl Trying with pkg-config PKG_CHECK_MODULES(DIRECTFB, directfb, [ CPPFLAGS_mydirectfb="${DIRECTFB_CFLAGS}" @@ -4423,11 +4559,11 @@ if test "${enable_directfb}" = "yes"; then VLC_ADD_PLUGIN([directfb]) VLC_ADD_CPPFLAGS([directfb],[${CPPFLAGS_mydirectfb}]) VLC_ADD_LIBS([directfb],[${LIBS_mydirectfb}]) - else + else AC_MSG_ERROR([cannot find directfb headers and/or libraries ]) fi fi - + dnl @@ -4437,15 +4573,19 @@ AC_ARG_ENABLE(ggi, [ --enable-ggi GGI support (default disabled)]) if test "${enable_ggi}" = "yes" then - VLC_ADD_PLUGIN([ggi]) - VLC_ADD_LIBS([ggi],[-lggi]) - AC_ARG_WITH(ggi, - [ --with-ggi=PATH path to libggi], - [ if test "${with_ggi}" != "no" -a -n "${with_ggi}" - then - VLC_ADD_CPPFLAGS([ggi],[-I${with_ggi}/include]) - VLC_ADD_LIBS([ggi],[-L${with_ggi}/lib]) - fi ]) + AC_CHECK_HEADER([ggi/ggi.h],[ + VLC_ADD_PLUGIN([ggi]) + VLC_ADD_LIBS([ggi],[-lggi]) + AC_ARG_WITH(ggi, + [ --with-ggi=PATH path to libggi], + [ if test "${with_ggi}" != "no" -a -n "${with_ggi}" + then + VLC_ADD_CPPFLAGS([ggi],[-I${with_ggi}/include]) + VLC_ADD_LIBS([ggi],[-L${with_ggi}/lib]) + fi ]) + ],[ + AC_MSG_ERROR([LibGGI development files can't be found]) + ]) fi dnl @@ -4506,6 +4646,8 @@ if test "${enable_wingdi}" != "no"; then 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 @@ -4527,26 +4669,11 @@ if test "${enable_oss}" != "no" && then AC_CHECK_HEADERS(soundcard.h sys/soundcard.h machine/soundcard.h, [ VLC_ADD_PLUGIN([oss]) + VLC_ADD_PLUGIN([access_oss]) AC_CHECK_LIB(ossaudio,main,VLC_ADD_LIBS([oss],[-lossaudio])) ]) fi -dnl -dnl Esound module -dnl -AC_ARG_ENABLE(esd, - [ --enable-esd Esound library support (default disabled)], - [if test "${enable_esd}" = "yes" - then - AC_PATH_PROG(ESD_CONFIG, esd-config, no) - if test "${ESD_CONFIG}" != "no" - then - VLC_ADD_PLUGIN([esd]) - VLC_ADD_CFLAGS([esd],[`${ESD_CONFIG} --cflags`]) - VLC_ADD_LIBS([esd],[`${ESD_CONFIG} --libs`]) - fi - fi]) - dnl dnl Pulseaudio module dnl @@ -4577,23 +4704,6 @@ AC_ARG_ENABLE(portaudio, fi fi]) -dnl -dnl aRts module -dnl broken? (froze wxWidgets back then) -dnl -AC_ARG_ENABLE(arts, - [ --enable-arts aRts sound server (default disabled)], - [if test "${enable_arts}" = "yes" - then - AC_PATH_PROG(ARTS_CONFIG, artsc-config, no) - if test "${ARTS_CONFIG}" != "no" - then - VLC_ADD_PLUGIN([arts]) - VLC_ADD_CFLAGS([arts],[`${ARTS_CONFIG} --cflags`]) - VLC_ADD_LIBS([arts],[`${ARTS_CONFIG} --libs `]) - fi - fi]) - dnl dnl ALSA module dnl @@ -4612,6 +4722,8 @@ then AC_DEFINE(HAVE_ALSA_NEW_API, 1, Define if ALSA is at least rc4)) VLC_ADD_PLUGIN([alsa]) VLC_ADD_LIBS([alsa],[-lasound -lm -ldl]) + VLC_ADD_PLUGIN([access_alsa]) + VLC_ADD_LIBS([access_alsa],[-lasound -lm -ldl]) else if test "${enable_alsa}" = "yes"; then AC_MSG_ERROR([Could not find ALSA development headers]) @@ -4642,7 +4754,7 @@ AC_ARG_ENABLE(macosx-audio, if test "${enable_macosx-audio}" != "no" && (test "${SYS}" = "darwin" || test "${enable_macosx-audio}" = "yes") then - AC_CHECK_HEADERS(CoreAudio/CoreAudio.h, + AC_CHECK_HEADERS(CoreAudio/CoreAudio.h, [ VLC_ADD_PLUGIN([auhal]) VLC_ADD_LDFLAGS([auhal],[-Wl,-framework,CoreAudio,-framework,AudioUnit,-framework,AudioToolbox,-framework,Carbon]) ], [ AC_MSG_ERROR([cannot find CoreAudio headers]) ]) @@ -4704,7 +4816,7 @@ AC_ARG_ENABLE(cyberlink, CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_cyberlink}" AC_CHECK_HEADERS([cybergarage/upnp/MediaServer.h], [ VLC_ADD_CXXFLAGS([upnp_cc], [${CPPFLAGS_cyberlink}]) - VLC_ADD_PLUGIN([upnp_cc]) + VLC_ADD_PLUGIN([upnp_cc]) ],[ AC_MSG_ERROR([cannot find CyberLink for C++ headers]) ]) @@ -4856,6 +4968,29 @@ then 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 + 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're using Maemo interfaces]) + ALIASES="${ALIASES} mvlc" + ], [ + AS_IF([test "${enable_maemo}" = "yes"],[ + AC_MSG_ERROR([Hildon libraries not found]) + ]) + enable_maemo="no" + ]) +fi +AM_CONDITIONAL(BUILD_MAEMO, [test "${enable_maemo}" = "yes"]) + dnl dnl QT 4 dnl @@ -4864,7 +4999,7 @@ AC_ARG_ENABLE(qt4, AS_IF([test "${SYS}" = "darwin"], [enable_qt4=no]) ]) AS_IF([test "${enable_qt4}" != "no"], [ - PKG_CHECK_MODULES(QT4, [QtCore QtGui >= 4.2.0], [ + PKG_CHECK_MODULES(QT4, [QtCore QtGui >= 4.3.0], [ VLC_ADD_PLUGIN([qt4]) AC_DEFINE([HAVE_QT4], 1, [Define to 1 if you have QT4 library.]) ALIASES="${ALIASES} qvlc" @@ -4965,6 +5100,8 @@ then VLC_ADD_LDFLAGS([macosx minimal_macosx], [-Wl,-framework,AGL]) VLC_ADD_LDFLAGS([macosx], [-Wl,-framework,IOKit]) VLC_ADD_LDFLAGS([macosx], [-Wl,-framework,QuickTime]) + 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,CoreAudio]) VLC_ADD_LDFLAGS([macosx], [-Wl,-framework,WebKit]) @@ -4976,12 +5113,12 @@ then VLC_ADD_PLUGIN([qtcapture]) VLC_ADD_PLUGIN([macosx]) VLC_ADD_PLUGIN([minimal_macosx]) - + ORIGCFLAGS=$CFLAGS CFLAGS="$CFLAGS -x objective-c" - AC_TRY_COMPILE([#import ], + AC_TRY_COMPILE([#import ],, [VLC_ADD_PLUGIN([opengllayer]) - VLC_ADD_OBJCFLAGS([opengllayer], [-isysroot /Developer/SDKs/MacOSX10.5.sdk -mmacosx-version-min=10.5])]) + VLC_ADD_OBJCFLAGS([opengllayer])],[]) CFLAGS=$ORIGCFLAGS fi @@ -5159,7 +5296,7 @@ dnl AtmoLight (homebrew AmbiLight) dnl if test "${SYS}" = "mingw32" -o "${SYS}" = "linux"; then AC_ARG_ENABLE(atmo, -AS_HELP_STRING([--disable-atmo],[AtmoLight (homebrew philips ambilight) +AS_HELP_STRING([--disable-atmo],[AtmoLight (homebrew philips ambilight) (default enabled)])) if test "${enable_atmo}" != "no"; then AC_LANG_PUSH(C++) @@ -5173,17 +5310,16 @@ dnl Bonjour services discovery dnl AC_ARG_ENABLE(bonjour, [ --enable-bonjour Bonjour services discovery (default enabled)]) -if test "${enable_bonjour}" != "no" -then - PKG_CHECK_MODULES(BONJOUR, avahi-client >= 0.3, - [PKG_CHECK_MODULES(BONJOUR, avahi-client >= 0.6, - [AC_DEFINE(HAVE_AVAHI_06, 1, [Define if you have avahi-client 0.6 or greater])],) - AC_DEFINE(HAVE_AVAHI_CLIENT, 1, [Define if you have the avahi-client library]) - VLC_ADD_LIBS([bonjour access_output_http],[$BONJOUR_LIBS]) - VLC_ADD_CFLAGS([bonjour access_output_http],[$BONJOUR_CFLAGS]) - VLC_ADD_PLUGIN([bonjour]) ], - [AC_MSG_WARN(avahi-client library not found)]) -fi +AS_IF([test "${enable_bonjour}" != "no"], [ + PKG_CHECK_MODULES(BONJOUR, avahi-client >= 0.6, [ + AC_DEFINE(HAVE_AVAHI_CLIENT, 1, [Define to 1 if you have libavahi-client]) + VLC_ADD_LIBS([bonjour access_output_http],[$BONJOUR_LIBS]) + VLC_ADD_CFLAGS([bonjour access_output_http],[$BONJOUR_CFLAGS]) + VLC_ADD_PLUGIN([bonjour]) + ], [ + AC_MSG_WARN(avahi-client library not found) + ]) +]) dnl dnl Lirc plugin @@ -5200,6 +5336,18 @@ then fi fi +dnl +dnl Global hotkeys using XCB +dnl +PKG_CHECK_MODULES(XCB, [xcb], [ + PKG_CHECK_MODULES(XCB_KEYSYMS, [xcb-keysyms], [ + PKG_CHECK_MODULES(XPROTO, [xproto], [ + VLC_ADD_PLUGIN([globalhotkeys]) + VLC_ADD_CFLAGS([globalhotkeys],[${XCB_KEYSYMS_CFLAGS} ${XCB_CFLAGS}] ) + VLC_ADD_LIBS([globalhotkeys],[${XCB_KEYSYMS_LIBS} ${XCB_LIBS}] ) + ], [ AC_MSG_WARN( [Xproto not found] ) ]) + ], [ AC_MSG_WARN( [XCB keysyms was not found]) ]) +], [ AC_MSG_WARN( [XCB was not found]) ]) AC_ARG_WITH(,[Misc options:]) @@ -5207,7 +5355,7 @@ dnl dnl libgcrypt dnl AC_ARG_ENABLE(libgcrypt, - [ --enable-libgcrypt libgcrypts support (default enabled)]) + [ --disable-libgcrypt libgcrypts support (default enabled)]) AS_IF([test "${enable_libgcrypt}" != "no"], [ AM_PATH_LIBGCRYPT([1:1.1.94], [have_libgcrypt="yes"], [have_libgcrypt="no"]) ]) @@ -5264,6 +5412,21 @@ AS_IF([test "${enable_remoteosd}" != "no"], [ ]) +dnl +dnl RAOP plugin +dnl +AC_MSG_CHECKING([whether to enable RAOP plugin]) +AS_IF([test "${have_libgcrypt}" = "yes"], [ + AC_MSG_RESULT(yes) + VLC_ADD_PLUGIN([stream_out_raop]) + VLC_ADD_LIBS([stream_out_raop], [${LIBGCRYPT_LIBS}]) + VLC_ADD_CFLAGS([stream_out_raop], [${LIBGCRYPT_CFLAGS}]) +], [ + AC_MSG_RESULT(no) + AC_MSG_WARN([libgcrypt support required for RAOP plugin]) +]) + + dnl dnl update checking system dnl @@ -5280,6 +5443,7 @@ then AC_DEFINE([UPDATE_CHECK], 1, [Define if you want to use the VLC update mechanism]) fi + dnl dnl Endianness check dnl @@ -5296,19 +5460,19 @@ dnl DLL loader copied from MPlayer copied from somewhere else (WINE ?) dnl loader=false AC_ARG_ENABLE(loader, - AS_HELP_STRING([--enable-loader],[build DLL loader for ELF i386 platforms + AS_HELP_STRING([--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_PLUGIN([dmo]) - VLC_ADD_CPPFLAGS([dmo],[-I../../../@top_srcdir@/libs/loader]) - VLC_ADD_LIBS([dmo],[../../../libs/loader/libloader.la -lpthread]) - VLC_ADD_CPPFLAGS([quicktime],[-I../../@top_srcdir@/libs/loader]) - VLC_ADD_LIBS([quicktime],[../../libs/loader/libloader.la -lpthread]) - VLC_ADD_CPPFLAGS([realaudio],[-I../../@top_srcdir@/libs/loader -DLOADER]) - VLC_ADD_LIBS([realaudio],[../../libs/loader/libloader.la]) - VLC_ADD_CPPFLAGS([realvideo],[-I../../@top_srcdir@/libs/loader -DLOADER]) - VLC_ADD_LIBS([realvideo],[../../libs/loader/libloader.la]) + VLC_ADD_CPPFLAGS([dmo],[-I\\\${top_srcdir}/libs/loader]) + VLC_ADD_LIBS([dmo],[\\\${top_builddir}/libs/loader/libloader.la -lpthread]) + VLC_ADD_CPPFLAGS([quicktime],[-I\\\${top_srcdir}/libs/loader]) + VLC_ADD_LIBS([quicktime],[\\\${top_builddir}/libs/loader/libloader.la -lpthread]) + VLC_ADD_CPPFLAGS([realaudio],[-I\\\${top_srcdir}/libs/loader -DLOADER]) + VLC_ADD_LIBS([realaudio],[\\\${top_builddir}/libs/loader/libloader.la]) + VLC_ADD_CPPFLAGS([realvideo],[-I\\\${top_srcdir}/libs/loader -DLOADER]) + VLC_ADD_LIBS([realvideo],[\\\${top_builddir}/libs/loader/libloader.la]) ]) AC_ARG_WITH(,[Components:]) @@ -5325,7 +5489,7 @@ dnl Microsoft ActiveX support dnl activex=false AC_ARG_ENABLE(activex, - AS_HELP_STRING([--enable-activex],[build a vlc-based ActiveX control + AS_HELP_STRING([--enable-activex],[build a vlc-based ActiveX control (default enabled on Win32)])) AC_ARG_WITH(wine-sdk-path, [ --with-wine-sdk-path=PATH path to wine sdk]) @@ -5342,11 +5506,11 @@ then WIDL=no fi AC_LANG_PUSH(C++) - AC_CHECK_HEADERS(ole2.h, + AC_CHECK_HEADERS(ole2.h, [AC_CHECK_HEADERS(olectl.h, [ VLC_ADD_CPPFLAGS([activex],[-DUNICODE -D_UNICODE -D_MIDL_USE_GUIDDEF_]) VLC_ADD_CXXFLAGS([activex],[-fno-exceptions]) - VLC_ADD_LIBS([activex],[-lole32 -loleaut32 -luuid -lshlwapi]) + VLC_ADD_LIBS([activex],[-lole32 -loleaut32 -luuid -lshlwapi]) AC_CHECK_HEADERS(objsafe.h, VLC_ADD_CXXFLAGS([activex],[-DHAVE_OBJSAFE_HEADER]),, [ @@ -5380,35 +5544,44 @@ AC_ARG_ENABLE(mozilla, (default disabled)])) AC_ARG_WITH(mozilla-sdk-path, [ --with-mozilla-sdk-path=PATH path to mozilla sdk]) +AC_ARG_WITH(mozilla-pkg, + [ --with-mozilla-pkg=PKG look for PKG.pc to build the mozilla plugin.]) AC_LANG_PUSH(C++) -if test "${enable_mozilla}" = "yes" +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}" = "" -o "${with_mozilla_sdk_path}" = "no" - then - dnl New firefox-1.5 SDK api - PKG_CHECK_MODULES([FIREFOX], [firefox-plugin], - [ - PKG_CHECK_MODULES([FIREFOX_XPCOM], [firefox-xpcom], - [], - [ - PKG_CHECK_MODULES([MOZILLA_NSPR], [mozilla-nspr], - [], - [ - PKG_CHECK_MODULES([NSPR], [nspr], - [], - [ - AC_MSG_ERROR([Please install the nspr development tools.]) - ] - ) - ] - ) - ]) - CPPFLAGS="${CPPFLAGS_save} ${FIREFOX_CFLAGS} ${FIREFOX_XPCOM_CFLAGS} ${MOZILLA_NSPR_CFLAGS} ${NSPR_CFLAGS} ${MOZILLA_CPPFLAGS}" + AS_IF([test "${with_mozilla_sdk_path}" = "" -o "${with_mozilla_sdk_path}" = "no"], + [ + dnl pkg-config + dnl As we want to do a loop due to the number of name possible for the .pc + dnl we can't use the pkg-config macros. + + AC_ARG_VAR([MOZILLA_CFLAGS], [C compiler flags for Mozilla, overriding pkg-config]) + AC_ARG_VAR([MOZILLA_LIBS], [linker flags for Mozilla, overriding pkg-config]) + AC_MSG_NOTICE([Checking for Mozilla]) + found=0 + if test -n "$MOZILLA_CFLAGS" -a -n "$MOZILLA_LIBS" + then + found=1 + else + if test -n "$PKG_CONFIG"; then + for i in "${with_mozilla_pkg}" libxul {seamonkey,iceape,xulrunner,firefox,iceweasel,mozilla}-plugin; do + echo "Trying to find $i.pc files" >&5 + if $PKG_CONFIG --exists --print-errors "$i" 2>&5 + 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" ) + break + fi + done + fi + fi + AS_IF( [test $found = 1],[ + CPPFLAGS="${CPPFLAGS_save} ${MOZILLA_CFLAGS}" MOZILLA_REQUIRED_HEADERS=1 - AC_CHECK_HEADERS(mozilla-config.h,,MOZILLA_REQUIRED_HEADERS=0) + AC_CHECK_HEADERS([npfunctions.h]) AC_CHECK_HEADERS(npapi.h,,MOZILLA_REQUIRED_HEADERS=0) AC_CHECK_HEADERS(npruntime.h,,MOZILLA_REQUIRED_HEADERS=0, [#if HAVE_NPAPI_H @@ -5420,94 +5593,32 @@ then fi MOZILLA_REQUIRED_HEADERS= mozilla=: - firefox_include=`pkg-config --variable=includedir firefox-plugin` - if test -f "${firefox_include}/mozilla-config.h" -a -f "${firefox_include}/mozilla-config32.h"; then - MOZILLA_CONFIG_H="${firefox_include}/mozilla-config32.h" - elif test -f "${firefox_include}/mozilla-config.h" -a -f "${firefox_include}/mozilla-config64.h"; then - MOZILLA_CONFIG_H="${firefox_include}/mozilla-config64.h" - else - MOZILLA_CONFIG_H="${firefox_include}/mozilla-config.h" - fi - if grep '^#define MOZ_X11 1' ${MOZILLA_CONFIG_H} 2>&1 > /dev/null ; then - AC_CHECK_HEADERS(X11/xpm.h,,AC_MSG_ERROR([Please install libXpm-devel library for required X11/xpm.h])) - VLC_ADD_LIBS([mozilla], [${X_LIBS} ${X_PRE_LIBS} -lX11 -lXt -lXpm]) - fi - VLC_ADD_CPPFLAGS([mozilla],[${CPPFLAGS}]) - VLC_ADD_LDFLAGS([mozilla],[${MOZILLA_LDFLAGS}]) - VLC_ADD_LIBS([mozilla],[${FIREFOX_LIBS} ${MOZILLA_NSPR_LIBS} ${NSPR_LIBS}]) + AS_IF([ test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"],[ + VLC_ADD_CPPFLAGS([mozilla],[-DXP_UNIX -DOJI]) + AS_IF([ test "${SYS}" != "darwin"],[ + PKG_CHECK_MODULES(XPM, [xpm xt],[ + VLC_ADD_CPPFLAGS([mozilla],[-DMOZ_X11]) + ],[ + AC_MSG_ERROR([Please install the libXpm and libXt development files.]) + ]) + ]) + ]) + VLC_ADD_CPPFLAGS([mozilla],[${CPPFLAGS} ${XPM_CFLAGS}]) + VLC_ADD_LIBS([mozilla],[${MOZILLA_LIBS} ${XPM_LIBS}]) VLC_ADD_PLUGIN([mozilla]) + PLUGINS_BINDINGS="${PLUGINS_BINDINGS} mozilla" MOZILLA_CONFIG= CPPFLAGS="${CPPFLAGS_save}" - ], - [ - PKG_CHECK_MODULES([XULRUNNER], [libxul], - [ - PKG_CHECK_MODULES([FIREFOX_XPCOM], [firefox-xpcom], - [], - [ - PKG_CHECK_MODULES([MOZILLA_NSPR], [mozilla-nspr], - [], - [ - PKG_CHECK_MODULES([NSPR], [nspr], - [], - [ - AC_MSG_ERROR([Please install the nspr development tools.]) - ] - ) - ] - ) - ] - ) - CPPFLAGS="${CPPFLAGS_save} ${XULRUNNER_CFLAGS} ${XULRUNNER_CPPFLAGS} ${FIREFOX_XPCOM_CFLAGS} ${MOZILLA_NSPR_CFLAGS} ${NSPR_CFLAGS} ${MOZILLA_CPPFLAGS}" - MOZILLA_REQUIRED_HEADERS=1 - AC_CHECK_HEADERS(npapi.h,,MOZILLA_REQUIRED_HEADERS=0) - AC_CHECK_HEADERS(npruntime.h,,MOZILLA_REQUIRED_HEADERS=0, - [#if HAVE_NPAPI_H - # include - #endif - ]) - if test "${MOZILLA_REQUIRED_HEADERS}" = "0"; then - AC_MSG_ERROR([Please install the Mozilla runtime package xulrunner-devel; plugplugin/npapi.h and plugin/npruntime.h were not found.]) - fi - MOZILLA_REQUIRED_HEADERS= - mozilla=: - AC_DEFINE([XP_UNIX],[1],[Defined for Mozilla as we are Unix]) - AC_DEFINE([MOZ_X11],[1],[Defined as Unix mozilla uses X11]) - AC_DEFINE([OJI],[1],[Java Runtime Interface]) - AC_CHECK_HEADERS(X11/xpm.h,,AC_MSG_ERROR([Please install libXpm-devel library for required X11/xpm.h])) - VLC_ADD_LIBS([mozilla], [${X_LIBS} ${X_PRE_LIBS} -lX11 -lXt -lXpm]) - VLC_ADD_CPPFLAGS([mozilla],[${CPPFLAGS}]) - VLC_ADD_LDFLAGS([mozilla],[${MOZILLA_LDFLAGS}]) - VLC_ADD_LIBS([mozilla],[${FIREFOX_LIBS} ${MOZILLA_NSPR_LIBS} ${NSPR_LIBS}]) - VLC_ADD_PLUGIN([mozilla]) - MOZILLA_CONFIG= - CPPFLAGS="${CPPFLAGS_save}" ], [ - AC_PATH_PROG(MOZILLA_CONFIG, mozilla-config, no) - if test "${MOZILLA_CONFIG}" = "no" - then - AC_PATH_PROG(SEAMONKEY_CONFIG, seamonkey-config, no) - if test "${SEAMONKEY_CONFIG}" = "no" - then - AC_PATH_PROG(XULRUNNER_CONFIG, xulrunner-config, no) - if test "${XULRUNNER_CONFIG}" = "no" - then - AC_MSG_ERROR([Please install the Mozilla development tools, mozilla-config was not found.]) - else - have_xul=true - MOZILLA_CONFIG="${XULRUNNER_CONFIG}" - fi - else - MOZILLA_CONFIG="${SEAMONKEY_CONFIG}" - fi - fi + AC_PATH_PROGS(MOZILLA_CONFIG, + [mozilla-config seamonkey-config xulrunner-config], + AC_MSG_ERROR([Please install the Mozilla development tools. mozilla-config was not found.]) + ) ] ) - ] - ) - if test ! -z "${MOZILLA_CONFIG}" - then + dnl pkg-config failed but we might have found a mozilla-config + AS_IF( [test ! -z "${MOZILLA_CONFIG}"],[ if ${MOZILLA_CONFIG} --defines | grep -q 'MOZ_X11=1'; then LDFLAGS="${LDFLAGS_save} ${X_LIBS} ${X_PRE_LIBS}" AC_CHECK_LIB(Xt,XtStrings, @@ -5524,13 +5635,8 @@ then mozilla=: PLUGINS_BINDINGS="${PLUGINS_BINDINGS} mozilla" - dnl Workaround for http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=150490 - VLC_ADD_CPPFLAGS([mozilla],[[`${MOZILLA_CONFIG} --cflags plugin xpcom java | sed 's,-I\([^ ]*\)/mozilla/\([^ ]*\),-I\1/\2 -I\1/mozilla/\2,g' | xargs`]]) - if ${need_xpcom_libs}; then - VLC_ADD_LIBS([mozilla],[`${MOZILLA_CONFIG} --libs plugin xpcom`]) - else - VLC_ADD_LIBS([mozilla],[`${MOZILLA_CONFIG} --libs plugin`]) - fi + VLC_ADD_CPPFLAGS([mozilla],[[`${MOZILLA_CONFIG} --cflags plugin java`]]) + VLC_ADD_LIBS([mozilla],[`${MOZILLA_CONFIG} --libs plugin`]) CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_mozilla}" MOZILLA_REQUIRED_HEADERS=1 AC_CHECK_HEADERS(mozilla-config.h,,MOZILLA_REQUIRED_HEADERS=0) @@ -5547,9 +5653,9 @@ then MOZILLA_REQUIRED_HEADERS= CPPFLAGS="${CPPFLAGS_save}" MOZILLA_SDK_PATH="`${MOZILLA_CONFIG} --prefix`" - fi + ]) dnl End of moz_sdk = "" - else + ],[ dnl special case for mingw32 if test "${SYS}" = "mingw32" then @@ -5594,7 +5700,7 @@ then real_mozilla_sdk="`${CYGPATH} -w ${real_mozilla_sdk}`" fi CPPFLAGS="${CPPFLAGS_save}" - fi + ]) fi AC_LANG_POP(C++) AM_CONDITIONAL(BUILD_MOZILLA,${mozilla}) @@ -5602,8 +5708,8 @@ AM_CONDITIONAL(BUILD_MOZILLA,${mozilla}) dnl Tests for Osso and Xsp AC_CHECK_LIB(osso, osso_display_blanking_pause, [ PKG_CHECK_MODULES(GLIB2, glib-2.0, [ - VLC_ADD_CPPFLAGS([x11 xvideo xvmc glx],[-DHAVE_OSSO ${DBUS_CFLAGS} ${GLIB2_CFLAGS}]) - VLC_ADD_LIBS([x11 xvideo xvmc glx],[-losso]) + VLC_ADD_CPPFLAGS([x11 xvideo xvmc glx omapfb],[-DHAVE_OSSO ${DBUS_CFLAGS} ${GLIB2_CFLAGS}]) + VLC_ADD_LIBS([x11 xvideo xvmc glx omapfb],[-losso]) ]) ]) AC_CHECK_LIB(Xsp, XSPSetPixelDoubling,[ @@ -5689,18 +5795,9 @@ AS_IF([test "${ac_cv_have_plugins}" = "no"], [ plugin_support=no ]) -AS_IF([test "${enable_shared}" = "no"], [ - plugin_support=no -]) - AS_IF([test "${plugin_support}" != "no"], [ - AC_DEFINE(HAVE_DYNAMIC_PLUGINS, 1, Define if we have support for dynamic plugins) + AC_DEFINE(HAVE_DYNAMIC_PLUGINS, 1, [Define if dynamic plugins are supported]) ]) -AM_CONDITIONAL(HAVE_PLUGINS, [test "${plugin_support}" != "no"]) - -dnl Temporary(?) hack for plugins/builtins transition -dnl VLC_ADD_PLUGIN([${BUILTINS}]) -dnl BUILTINS="" dnl dnl Pic and shared libvlc stuff @@ -5728,18 +5825,19 @@ AC_SUBST(VERSION_MESSAGE) AC_SUBST(VERSION_MAJOR) AC_SUBST(VERSION_MINOR) AC_SUBST(VERSION_REVISION) +AC_SUBST(VERSION_EXTRA) AC_SUBST(COPYRIGHT_YEARS) -AC_DEFINE_UNQUOTED(VLC_COMPILE_BY, "`whoami`", [user who ran configure]) +AC_DEFINE_UNQUOTED(VLC_COMPILE_BY, "`whoami`", [user who ran configure]) if test "${build_os}" = "cygwin" then AC_DEFINE_UNQUOTED(VLC_COMPILE_HOST, "`hostname`", [host which ran configure]) else AC_DEFINE_UNQUOTED(VLC_COMPILE_HOST, "`hostname -s`", [host which ran configure]) fi -AC_DEFINE_UNQUOTED(VLC_COMPILE_DOMAIN, "`dnsdomainname 2>/dev/null || domainname 2>/dev/null || echo unknown`", [domain of the host which ran configure]) -AC_DEFINE_UNQUOTED(VLC_COMPILER, "`$CC -v 2>&1 | tail -n 1`", [compiler]) +AC_DEFINE_UNQUOTED(VLC_COMPILE_DOMAIN, "`dnsdomainname 2>/dev/null || domainname 2>/dev/null || echo unknown`", [domain of the host which ran configure]) +AC_DEFINE_UNQUOTED(VLC_COMPILER, "`$CC -v 2>&1 | tail -n 1`", [compiler]) dnl Win32 need s a numerical version_extra. -case $( echo ${VERSION_EXTRA}|wc -m ) in +case $( echo ${VERSION_EXTRA}|wc -m ) in "1") VERSION_EXTRA_RC="0";; "2") VERSION_EXTRA_RC=$( echo ${VERSION_EXTRA}|tr "abcdefghi" "123456789") ;; *) VERSION_EXTRA_RC="99" @@ -5748,7 +5846,7 @@ AC_SUBST(VERSION_EXTRA_RC) dnl dnl Handle substvars that use $(top_srcdir) dnl -VLC_CONFIG="top_builddir=\"\$(top_builddir)\" \$(top_builddir)/vlc-config" +VLC_CONFIG="top_srcdir=\"\$(top_srcdir)\" top_builddir=\"\$(top_builddir)\" \$(top_builddir)/vlc-config" AC_SUBST(VLC_CONFIG) CPPFLAGS_save="-I\$(top_srcdir)/include -I\$(top_builddir)/include ${CPPFLAGS_save}" @@ -5759,7 +5857,7 @@ VLC_RESTORE_FLAGS dnl dnl Sort the modules list -dnl +dnl PLUGINS=$( (for i in `echo $PLUGINS`; do echo $i; done)|sort|xargs ) dnl @@ -5795,7 +5893,6 @@ AC_CONFIG_FILES([ extras/package/macosx/Resources/English.lproj/InfoPlist.strings extras/package/macosx/plugin/Info.plist extras/package/macosx/plugin/InstallerInfo.plist - extras/package/macosx/plugin/English.lproj/InfoPlist.strings Makefile projects/activex/Makefile projects/activex/axvlc.inf @@ -5803,33 +5900,36 @@ AC_CONFIG_FILES([ extras/package/ipkg/Makefile libs/loader/Makefile libs/srtp/Makefile + libs/unzip/Makefile modules/Makefile projects/mozilla/Makefile m4/Makefile po/Makefile.in projects/activex/axvlc_rc.rc projects/mozilla/npvlc_rc.rc + projects/mozilla/vlc.r + projects/mozilla/install.js share/Makefile share/vlc_win32_rc.rc share/libvlc_win32_rc.rc src/Makefile + src/test/Makefile + bin/Makefile test/Makefile -]) - -AC_CONFIG_FILES([ modules/access/Makefile + modules/access/bd/Makefile modules/access/bda/Makefile modules/access/dshow/Makefile modules/access/dvb/Makefile modules/access/mms/Makefile modules/access/cdda/Makefile + modules/access/rtp/Makefile modules/access/rtsp/Makefile modules/access/rtmp/Makefile - modules/access/v4l2/Makefile modules/access/vcd/Makefile modules/access/vcdx/Makefile modules/access/screen/Makefile - modules/access_filter/Makefile + modules/access/zip/Makefile modules/access_output/Makefile modules/audio_filter/Makefile modules/audio_filter/channel_mixer/Makefile @@ -5842,15 +5942,19 @@ AC_CONFIG_FILES([ modules/codec/avcodec/Makefile modules/codec/cmml/Makefile modules/codec/dmo/Makefile + modules/codec/shine/Makefile modules/codec/subtitles/Makefile modules/codec/spudec/Makefile + modules/codec/wmafixed/Makefile modules/codec/xvmc/Makefile modules/control/Makefile modules/control/http/Makefile + modules/control/globalhotkeys/Makefile modules/demux/Makefile modules/demux/asf/Makefile modules/demux/avformat/Makefile modules/demux/avi/Makefile + modules/demux/mkv/Makefile modules/demux/mp4/Makefile modules/demux/mpeg/Makefile modules/demux/playlist/Makefile @@ -5858,6 +5962,7 @@ AC_CONFIG_FILES([ modules/gui/beos/Makefile modules/gui/pda/Makefile modules/gui/macosx/Makefile + modules/gui/maemo/Makefile modules/gui/minimal_macosx/Makefile modules/gui/qnx/Makefile modules/gui/qt4/Makefile @@ -5879,6 +5984,7 @@ AC_CONFIG_FILES([ modules/mux/mpeg/Makefile modules/packetizer/Makefile modules/services_discovery/Makefile + modules/stream_filter/Makefile modules/stream_out/Makefile modules/stream_out/transrate/Makefile modules/video_chroma/Makefile