configure.ac
上传用户:riyaled888
上传日期:2009-03-27
资源大小:7338k
文件大小:137k
- dnl Autoconf settings for vlc
- dnl $Id: configure.ac 9313 2004-11-14 13:59:36Z fkuehne $
-
- AC_INIT(vlc,0.8.1)
- CONFIGURE_LINE="$0 $*"
- CODENAME="Janus"
- AC_PREREQ(2.50)
- AC_CONFIG_SRCDIR(src/libvlc.c)
- AC_CONFIG_AUX_DIR(autotools)
- 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.1)
- AM_CONFIG_HEADER(config.h)
- dnl
- dnl Save *FLAGS
- dnl
- VLC_SAVE_FLAGS
- dnl
- dnl Check for tools
- dnl
- AC_PROG_CC
- AM_PROG_CC_C_O
- AC_PROG_CPP
- AC_PROG_CXX
- AC_PROG_CXXCPP
- AC_PROG_MAKE_SET
- AC_PROG_INSTALL
- dnl AC_PROG_EGREP only exists in autoconf 2.54+, so we use AC_EGREP_CPP right
- dnl now otherwise it might be set in an obscure if statement.
- AC_EGREP_CPP(foo,foo)
- dnl AC_PROG_OBJC doesn't seem to exist, this is the KDE workaround
- AC_MSG_CHECKING(for an Objective-C compiler)
- OBJC="${CXX}"
- AC_SUBST(OBJC)
- OBJCFLAGS="${CXXFLAGS} -fgnu-runtime -fconstant-string-class=NSConstantString"
- AC_SUBST(OBJCFLAGS)
- dnl _AM_DEPENDENCIES(OBJC) doesn't work, so hard code OBJCDEPMODE here
- #OBJCDEPMODE="depmode=gcc3"
- #AC_SUBST(OBJCDEPMODE)
- _AM_DEPENDENCIES(OBJC)
- AC_MSG_RESULT(not implemented yet)
- dnl Find the right ranlib, even when cross-compiling
- AC_CHECK_TOOL(RANLIB, ranlib, :)
- AC_CHECK_TOOL(STRIP, strip, :)
- AC_CHECK_TOOL(AR, ar, :)
- AC_CHECK_TOOL(LD, ld, :)
- dnl Sam, if you think I didn't see that... --Meuuh
- dnl AM_PROG_LIBTOOL
- AC_PROG_INSTALL
- dnl Check for compiler properties
- AC_C_CONST
- AC_C_INLINE
- dnl
- dnl Check for the contrib directory
- dnl
- topdir="`pwd`"
- if test -d ${topdir}/extras/contrib/lib; then
- export PATH=${topdir}/extras/contrib/bin:$PATH
- CPPFLAGS="${CPPFLAGS} -I${topdir}/extras/contrib/include"
- CPPFLAGS_save="${CPPFLAGS_save} -I${topdir}/extras/contrib/include"
- CFLAGS="${CFLAGS} -I${topdir}/extras/contrib/include"
- CFLAGS_save="${CFLAGS_save} -I${topdir}/extras/contrib/include"
- CXXFLAGS="${CXXFLAGS} -I${topdir}/extras/contrib/include"
- 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 -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"
- fi
- LDFLAGS="${LDFLAGS} -L${topdir}/extras/contrib/lib"
- LDFLAGS_save="${LDFLAGS_save} -L${topdir}/extras/contrib/lib"
- with_livedotcom_tree=${topdir}/extras/contrib/src/live
- with_goom_tree=${topdir}/extras/contrib/src/goom
- if test ".`uname -s`" = ".Darwin"; then
- export LD_LIBRARY_PATH=${topdir}/extras/contrib/lib:$LD_LIBRARY_PATH
- export DYLD_LIBRARY_PATH=${topdir}/extras/contrib/lib:$DYLD_LIBRARY_PATH
- elif test ".`uname -s`" = ".BeOS"; then
- export LIBRARY_PATH=${topdir}/extras/contrib/lib:$LIBRARY_PATH
- export BELIBRARIES=${topdir}/extras/contrib/lib:$BELIBRARIES
- fi
- fi
- dnl
- dnl Set default values
- dnl
- LDFLAGS_vlc="${LDFLAGS}"
- dnl
- dnl Check the operating system
- dnl
- case "${target_os}" in
- "")
- SYS=unknown
- ;;
- linux*)
- SYS=linux
- ;;
- bsdi*)
- SYS=bsdi
- CFLAGS_save="${CFLAGS_save} -pthread"; CFLAGS="${CFLAGS_save}"
- VLC_ADD_LDFLAGS([dvd dvdcss vcd cdda vcdx cddax],[-ldvd])
- ;;
- *bsd*)
- SYS="${target_os}"
- CFLAGS_save="${CFLAGS_save} -pthread"; CFLAGS="${CFLAGS_save}"
- ;;
- darwin*)
- SYS=darwin
- CFLAGS_save="${CFLAGS_save} -no-cpp-precomp -D_INTL_REDIRECT_MACROS"; CFLAGS="${CFLAGS_save}"
- CXXFLAGS_save="${CXXFLAGS_save} -no-cpp-precomp -D_INTL_REDIRECT_MACROS"; CXXFLAGS="${CXXFLAGS_save}"
- OBJCFLAGS_save="${OBJCFLAGS_save} -no-cpp-precomp -D_INTL_REDIRECT_MACROS"; OBJCFLAGS="${OBJCFLAGS_save}"
- VLC_ADD_LDFLAGS([vlc ffmpeg ffmpegaltivec],[-all_load])
- VLC_ADD_LDFLAGS([mp4], [-framework IOKit -framework CoreFoundation])
- VLC_ADD_CFLAGS([libvlc],[-x objective-c])
- VLC_ADD_CFLAGS([vlc],[-x objective-c])
- VLC_ADD_LDFLAGS([vlc],[-Wl,-multiply_defined,suppress])
- ;;
- *mingw32* | *cygwin*)
- AC_CHECK_TOOL(WINDRES, windres, :)
- case "${target_os}" in
- *mingw32*)
- SYS=mingw32
- ;;
- *cygwin*)
- dnl Check if we are using the mno-cygwin mode in which case we are
- dnl actually dealing with a mingw32 compiler.
- AC_EGREP_CPP(yes,
- [#ifdef WIN32
- yes
- #endif],
- SYS=mingw32, SYS=cygwin)
- ;;
- esac
- if test "${SYS}" = "mingw32"; then
- # add ws2_32 for closesocket, select, recv
- CPPFLAGS_save="${CPPFLAGS_save} -D_OFF_T_ -D_off_t=long"; CPPFLAGS="${CPPFLAGS_save}"
- VLC_ADD_LDFLAGS([vlc],[-lws2_32 -lnetapi32 -lwinmm -mwindows])
- VLC_ADD_LDFLAGS([vcdx cddax],[-lwinmm])
- VLC_ADD_LDFLAGS([ipv4 ipv6 access_http access_mms access_udp access_tcp access_ftp access_output_udp sap slp http stream_out_standard telnet netsync],[-lws2_32])
- fi
- ;;
- *nto*)
- SYS=nto
- VLC_ADD_LDFLAGS([x11 xvideo],[-lsocket])
- ;;
- solaris*)
- SYS=solaris
- # _POSIX_PTHREAD_SEMANTICS is needed to get the POSIX ctime_r
- # Perhaps it is useful other places as well?
- CFLAGS_save="${CFLAGS_save} -D_POSIX_PTHREAD_SEMANTICS"; CFLAGS="${CFLAGS_save}"
- ;;
- hpux*)
- SYS=hpux
- ;;
- beos)
- SYS=beos
- CFLAGS_save="${CFLAGS_save} -Wno-multichar"; CFLAGS="${CFLAGS_save}"
- CXXFLAGS_save="${CXXFLAGS_save} -Wno-multichar"; CXXFLAGS="${CXXFLAGS_save}"
- VLC_ADD_CXXFLAGS([beos],[])
- VLC_ADD_LDFLAGS([vlc beos],[-lbe])
- VLC_ADD_LDFLAGS([beos],[-lmedia -ltranslation -ltracker -lgame])
- VLC_ADD_LDFLAGS([access_file access_mms access_output_udp telnet netsync sap ipv4 vlc],[-lnet])
- dnl Ugly check for Zeta
- if test -f /boot/beos/system/lib/libzeta.so; then
- VLC_ADD_LDFLAGS([beos],[-lzeta])
- fi
- ;;
- *)
- SYS="${target_os}"
- ;;
- esac
- AM_CONDITIONAL(HAVE_BEOS, test "${SYS}" = "beos")
- AM_CONDITIONAL(HAVE_DARWIN, test "${SYS}" = "darwin")
- AM_CONDITIONAL(HAVE_WIN32, test "${SYS}" = "mingw32")
- dnl
- dnl Gettext stuff
- dnl
- ALL_LINGUAS="da de en_GB es fr hu it ja nl no pl pt_BR ru sv"
- AM_GNU_GETTEXT_VERSION(0.11.5)
- AM_GNU_GETTEXT
- if test "${nls_cv_force_use_gnu_gettext}" = "yes"; then
- AC_DEFINE(HAVE_INCLUDED_GETTEXT, 1, Define if we use the local libintl)
- INCLUDES="${INCLUDES} -I$(top_builddir)/intl"
- else
- AC_CHECK_FUNCS(textdomain,,[
- AC_CHECK_LIB(intl,textdomain,
- VLC_ADD_LDFLAGS([vlc],[${LIBINTL}]),,
- ${LIBINTL}
- )
- ])
- fi
- AM_CONDITIONAL(BUILD_INTL, test "${nls_cv_force_use_gnu_gettext}" = "yes")
- XGETTEXT="${XGETTEXT} --keyword=_NS --keyword=_ANS"
- AC_ARG_ENABLE(utf8,
- [ --enable-utf8 unicode utf8 support (default enabled on darwin/beos/win32)])
- if test "${enable_utf8}" = "yes" || (test "${enable_utf8}" != "no" && (test "${SYS}" = "mingw32" || test "${SYS}" = "beos" || test "${SYS}" = "darwin" ) )
- then
- AC_DEFINE(ENABLE_UTF8, 1,
- Define if you want utf8 support)
- fi
- dnl
- dnl Iconv stuff
- dnl
- VLC_ADD_CFLAGS([vlc],[${INCICONV}])
- VLC_ADD_LDFLAGS([vlc],[${LIBICONV}])
- dnl Check for the need to include the mingwex lib for mingw32
- if test "${SYS}" = "mingw32"
- then
- AC_CHECK_LIB(mingwex,opendir,
- AC_CHECK_LIB(mingw32,opendir,VLC_ADD_LDFLAGS([vlc],[]),
- [VLC_ADD_LDFLAGS([vlc gtk],[-lmingwex])])
- )
- fi
- dnl Check for fnative-struct or mms-bitfields support for mingw32
- if test "${SYS}" = "mingw32"
- then
- AC_CACHE_CHECK([if $CC accepts -mms-bitfields],
- [ac_cv_c_mms_bitfields],
- [CFLAGS="${CFLAGS_save} -mms-bitfields"
- AC_TRY_COMPILE([],,ac_cv_c_mms_bitfields=yes, ac_cv_c_mms_bitfields=no)])
- if test "${ac_cv_c_mms_bitfields}" != "no"; then
- CFLAGS_save="${CFLAGS_save} -mms-bitfields";
- CXXFLAGS_save="${CXXFLAGS_save} -mms-bitfields";
- else
- AC_CACHE_CHECK([if $CC accepts -fnative-struct],
- [ac_cv_c_fnative_struct],
- [CFLAGS="${CFLAGS_save} -fnative-struct"
- AC_TRY_COMPILE([],,ac_cv_c_fnative_struct=yes, ac_cv_c_fnative_struct=no)])
- if test "${ac_cv_c_fnative_struct}" != "no"; then
- CFLAGS_save="${CFLAGS_save} -fnative-struct";
- CXXFLAGS_save="${CXXFLAGS_save} -fnative-struct";
- fi
- fi
- CFLAGS="${CFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}"
- fi
- dnl Check for fvtable-thunks support for mingw32
- if test "${SYS}" = "mingw32"
- then
- AC_LANG_PUSH(C++)
- AC_CACHE_CHECK([if $CXX accepts -fvtable-thunks],
- [ac_cv_cxx_fvtable_thunks],
- [CXXFLAGS="${CXXFLAGS_save} -Wall -Werror -fvtable-thunks"
- AC_TRY_COMPILE([],,ac_cv_cxx_fvtable_thunks=yes,
- ac_cv_cxx_fvtable_thunks=no)])
- if test "${ac_cv_cxx_fvtable_thunks}" = "yes"; then
- CXXFLAGS_mingw32_special="-fvtable-thunks"
- fi
- CXXFLAGS_save="${CXXFLAGS_save} ${CXXFLAGS_mingw32_special}"; CXXFLAGS="${CXXFLAGS_save}"
- AC_LANG_POP(C++)
- fi
- dnl Plugin compilation stuff
- VLC_LIBRARY_SUFFIX
- case "${SYS}" in
- mingw32|cygwin)
- VLC_ADD_CFLAGS([pic plugin mozilla],[${CFLAGS_mingw32_special}])
- VLC_ADD_CXXFLAGS([pic plugin mozilla],[${CFLAGS_mingw32_special} ${CXXFLAGS_mingw32_special}])
- VLC_ADD_OBJCFLAGS([pic plugin mozilla],[${CFLAGS_mingw32_special}])
- ;;
- *)
- VLC_ADD_CFLAGS([pic plugin mozilla],[-fpic -fPIC])
- VLC_ADD_CXXFLAGS([pic plugin mozilla],[-fpic -fPIC])
- VLC_ADD_OBJCFLAGS([pic plugin mozilla],[-fpic -fPIC])
- VLC_ADD_LDFLAGS([plugin mozilla],[-fpic -fPIC])
- ;;
- esac
- dnl The -DSYS_FOO flag
- CPPFLAGS_save="${CPPFLAGS_save} -DSYS_`echo ${SYS} | sed -e 's/-.*//' | tr 'abcdefghijklmnopqrstuvwxyz.' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ_'`"; CPPFLAGS="${CPPFLAGS_save}"
- dnl Check for system libs needed
- need_libc=false
- AC_CHECK_FUNCS(gettimeofday select strerror strtod strtol strtof strtoll isatty vasprintf asprintf swab sigrelse getpwuid memalign posix_memalign gethostbyname2 if_nametoindex atoll getenv putenv setenv gmtime_r ctime_r localtime_r lrintf daemon)
- dnl Check for usual libc functions
- AC_CHECK_FUNCS(strdup strndup atof lseek)
- AC_CHECK_FUNCS(strcasecmp,,[AC_CHECK_FUNCS(stricmp)])
- AC_CHECK_FUNCS(strncasecmp,,[AC_CHECK_FUNCS(strnicmp)])
- AC_CHECK_FUNCS(strcasestr,,[AC_CHECK_FUNCS(stristr)])
- dnl Check for setlocal and langinfo
- AC_CHECK_FUNCS(setlocale)
- AC_CHECK_HEADERS(langinfo.h)
- AC_CHECK_FUNCS(nl_langinfo)
- AC_CACHE_CHECK([for nl_langinfo and CODESET], ac_cv_langinfo_codeset,
- [AC_TRY_LINK([#include <langinfo.h>],
- [char* cs = nl_langinfo(CODESET);],
- ac_cv_langinfo_codeset=yes,
- ac_cv_langinfo_codeset=no)
- ])
- if test ${ac_cv_langinfo_codeset} = yes; then
- AC_DEFINE(HAVE_LANGINFO_CODESET, 1,
- [Define if you have <langinfo.h> and nl_langinfo(CODESET).])
- fi
- AC_CHECK_FUNCS(connect,,[
- AC_CHECK_LIB(socket,connect,[
- VLC_ADD_LDFLAGS([vlc ipv4 cddax],-lsocket)
- ])
- ])
- AC_CHECK_FUNCS(send,,[
- AC_CHECK_LIB(socket,send,[
- VLC_ADD_LDFLAGS([access_http access_mms access_udp access_tcp access_ftp sap access_output_udp stream_out_standard],[-lsocket])
- ])
- ])
- AC_CHECK_FUNCS(gethostbyname,,[
- AC_CHECK_LIB(nsl,gethostbyname,[
- VLC_ADD_LDFLAGS([cddax ipv4 vlc],[-lnsl])
- ],[
- AC_CHECK_LIB(bind,gethostbyname,[
- VLC_ADD_LDFLAGS([ipv4 access_mms],[-lbind])
- ])
- ])
- ])
- dnl Check for socklen_t
- AC_CACHE_CHECK([for socklen_t], ac_cv_type_socklen_t,
- [AC_TRY_COMPILE(
- [#include <sys/types.h>
- #include <sys/socket.h>],
- [socklen_t len = 42; return len;],
- ac_cv_type_socklen_t=yes,
- ac_cv_type_socklen_t=no)])
- if test "${ac_cv_type_socklen_t}" != "no"; then
- AC_DEFINE(HAVE_SOCKLEN_T, 1, [Define if <sys/socket.h> defines socklen_t.])
- fi
- dnl Check for struct sockaddr_storage
- AH_TEMPLATE(sockaddr_storage, [Define to `sockaddr' if <sys/socket.h> does not define.])
- AH_TEMPLATE(ss_family, [Define to `sa_family' if <sys/socket.h> does not define.])
- AC_CACHE_CHECK([for struct sockaddr_storage], ac_cv_struct_sockaddr_storage,
- [AC_TRY_COMPILE(
- [#include <sys/types.h>
- #if defined( UNDER_CE )
- # include <winsock.h>
- #elif defined( WIN32 )
- # include <winsock2.h>
- #else
- # include <sys/socket.h>
- #endif], [struct sockaddr_storage addr;],
- ac_cv_struct_sockaddr_storage=yes,
- ac_cv_struct_sockaddr_storage=no)])
- if test $ac_cv_struct_sockaddr_storage = no; then
- AC_DEFINE(sockaddr_storage, sockaddr)
- AC_DEFINE(ss_family, sa_family)
- fi
- dnl getnameinfo, which implies {get,free}addrinfo, but not gai_strerror,
- dnl -lws2_32 required with Mingw32, -lresolv NOT needed on Solaris.
- dnl AC_SEARCH_LIBS won't work with Mingw32
- AH_TEMPLATE(HAVE_GETNAMEINFO,
- [Define to 1 if you have the `getnameinfo' function.])
- ac_func_getnameinfo_save_LIBS=$LIBS
- AS_IF([test "${SYS}" = "mingw32"],
- [LIBS="-lws2_32 $LIBS"])
- AC_CACHE_CHECK([for getnameinfo], ac_cv_func_getnameinfo,
- [AC_LINK_IFELSE([AC_LANG_PROGRAM([
- [#include <sys/types.h>
- #if defined( UNDER_CE )
- # include <winsock.h>
- #elif defined( WIN32 )
- # include <winsock2.h>
- #else
- # include <sys/socket.h>
- # include <netdb.h>
- #endif]
- ], [[getnameinfo(0,0,0,0,0,0,0);]])],
- ac_cv_func_getnameinfo=yes,
- ac_cv_func_getnameinfo=no)])
- AS_IF([test $ac_cv_func_getnameinfo = yes],
- [AC_DEFINE(HAVE_GETNAMEINFO)])
- LIBS=$ac_func_getnameinfo_save_LIBS
- dnl Check for va_copy
- AC_CACHE_CHECK([for va_copy], ac_cv_c_va_copy,
- AC_TRY_LINK(
- [#include <stdarg.h>],
- [va_list ap1, ap2; va_copy(ap1,ap2);],
- [ac_cv_c_va_copy="yes"],
- [ac_cv_c_va_copy="no"]))
- if test "${ac_cv_c_va_copy}" = "yes"; then
- AC_DEFINE(HAVE_VA_COPY, 1, [Define if <stdarg.h> defines va_copy.])
- fi
- AC_CACHE_CHECK([for __va_copy], ac_cv_c___va_copy,
- AC_TRY_LINK(
- [#include <stdarg.h>],
- [va_list ap1, ap2; __va_copy(ap1,ap2);],
- [ac_cv_c___va_copy="yes"],
- [ac_cv_c___va_copy="no"]))
- if test "${ac_cv_c___va_copy}" = "yes"; then
- AC_DEFINE(HAVE___VA_COPY, 1, [Define if <stdarg.h> defines __va_copy.])
- fi
- AC_CHECK_FUNCS(inet_aton,,[
- AC_CHECK_LIB(resolv,inet_aton,[
- VLC_ADD_LDFLAGS([ipv4 vlc],[-lresolv])
- ])
- ])
- dnl Check for getopt (always use builtin one on win32)
- if test "${SYS}" = "mingw32"; then
- need_getopt=:
- else
- need_getopt=false
- AC_CHECK_FUNCS(getopt_long,[AC_DEFINE(HAVE_GETOPT_LONG,1,long getopt support)],
- [ # FreeBSD has a gnugetopt library for this:
- AC_CHECK_LIB([gnugetopt],[getopt_long],
- [AC_DEFINE(HAVE_GETOPT_LONG,1,getopt support)
- VLC_ADD_LDFLAGS([vlc],[-lgnugetopt])],
- [need_getopt=:])])
- fi
- AM_CONDITIONAL(BUILD_GETOPT, ${need_getopt})
- if test "${SYS}" != "mingw32"; then
- AC_TYPE_SIGNAL
- AC_CHECK_LIB(m,cos,[
- VLC_ADD_LDFLAGS([adjust distort a52tofloat32 dtstofloat32 x264],[-lm])
- ])
- AC_CHECK_LIB(m,pow,[
- VLC_ADD_LDFLAGS([ffmpeg ffmpegaltivec stream_out_transrate i420_rgb faad toolame equalizer vlc],[-lm])
- ])
- AC_CHECK_LIB(m,sqrt,[
- VLC_ADD_LDFLAGS([headphone_channel_mixer normvol],[-lm])
- ])
- fi # end "${SYS}" != "mingw32"
- dnl Check for dynamic plugins
- ac_cv_have_plugins=no
- # OS X style
- AC_CHECK_HEADERS(mach-o/dyld.h,
- [AC_CHECK_FUNCS(NSLinkModule,
- [AC_DEFINE(HAVE_DL_DYLD, 1, [Define if you have the Darwin dyld API])
- ac_cv_have_plugins=yes])])
- # HP-UX style
- if test "${ac_cv_have_plugins}" = "no"; then
- AC_CHECK_HEADERS(dl.h)
- ac_cv_my_have_shl_load=no
- AC_CHECK_FUNC(shl_load,
- [ac_cv_my_have_shl_load=yes,
- AC_CHECK_LIB(dld, shl_load,
- [ac_cv_my_have_shl_load=yes
- VLC_ADD_LDFLAGS([vlc],[-ldld])])])
- if test "${ac_cv_my_have_shl_load}" = "yes"; then
- AC_DEFINE(HAVE_DL_SHL_LOAD, 1, [Define if you have the shl_load API])
- ac_cv_have_plugins=yes
- fi
- fi
- # Whatever style
- if test "${ac_cv_have_plugins}" = "no"; then
- AC_CHECK_LIB(dld, dld_link,
- [VLC_ADD_LDFLAGS([vlc],[-ldld])
- AC_DEFINE(HAVE_DL_DLD_LINK, 1, [Define if you have the GNU dld library])
- ac_cv_have_plugins=yes])
- fi
- # Win32 style
- if test "${ac_cv_have_plugins}" = "no"; then
- if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"; then
- AC_CHECK_LIB(kernel32, main,
- [VLC_ADD_LDFLAGS([vlc],[-lkernel32])
- AC_DEFINE(HAVE_DL_WINDOWS, 1, [Define if you have Windows' LoadLibrary])
- ac_cv_have_plugins=yes])
- fi
- fi
- # BeOS style
- if test "${ac_cv_have_plugins}" = "no"; then
- AC_CHECK_HEADERS(image.h)
- AC_CHECK_FUNCS(load_add_on,
- [AC_DEFINE(HAVE_DL_BEOS, 1, [Define if you have the BeOS dl])
- ac_cv_have_plugins=yes])
- fi
- # Only test for dlopen() if the others didn't work
- if test "${ac_cv_have_plugins}" = "no"; then
- AC_CHECK_HEADERS(dlfcn.h sys/dl.h)
- ac_cv_my_have_dlopen=no
- AC_CHECK_FUNC(dlopen,
- ac_cv_my_have_dlopen=yes,
- AC_CHECK_LIB(dl, dlopen,
- ac_cv_my_have_dlopen=yes
- VLC_ADD_LDFLAGS([vlc],[-ldl]),
- AC_CHECK_LIB(svld, dlopen,
- ac_cv_my_have_dlopen=yes
- VLC_ADD_LDFLAGS([vlc],[-lsvld]))))
- if test "${ac_cv_my_have_dlopen}" = "yes"; then
- AC_DEFINE(HAVE_DL_DLOPEN, 1, [Define if you have the dlopen API])
- ac_cv_have_plugins=yes
- fi
- fi
- if test "${SYS}" != "mingw32"; then
- dnl Check for pthreads - borrowed from XMMS
- THREAD_LIB=error
- if test "${THREAD_LIB}" = "error"; then
- AC_CHECK_LIB(pthread,main,THREAD_LIB="-lpthread")
- fi
- if test "${THREAD_LIB}" = "error"; then
- AC_CHECK_LIB(pthreads,main,THREAD_LIB="-lpthreads")
- fi
- if test "${THREAD_LIB}" = "error"; then
- AC_CHECK_LIB(c_r,main,THREAD_LIB="-lc_r")
- fi
- if test "${THREAD_LIB}" = "error"; then
- AC_CHECK_FUNCS(pthread_mutex_lock)
- THREAD_LIB=""
- fi
- dnl Check for cthreads under GNU/Hurd for instance
- AC_CHECK_LIB(threads,cthread_fork,THREAD_LIB="-lthreads")
- dnl
- dnl GNU portable threads
- dnl
- AC_ARG_ENABLE(pth,
- [ --enable-pth GNU Pth support (default disabled)],
- [ if test "${enable_pth}" = "yes"; then
- AC_CHECK_LIB(pth,pth_init)
- AC_MSG_CHECKING(for pth_init in pth.h)
- AC_EGREP_HEADER(pth_init,pth.h,[
- AC_MSG_RESULT(yes)
- AC_DEFINE(PTH_INIT_IN_PTH_H, 1,
- Define if <pth.h> defines pth_init)
- THREAD_LIB="-lpth"
- ],[
- AC_MSG_RESULT(no)
- ])
- fi
- ])
- dnl
- dnl State Threads
- dnl
- AC_ARG_ENABLE(st,
- [ --enable-st State Threads (default disabled)],
- [ if test "${enable_st}" = "yes"; then
- AC_CHECK_LIB(st,st_init)
- AC_MSG_CHECKING(for st_init in st.h)
- AC_EGREP_HEADER(st_init,st.h,[
- AC_MSG_RESULT(yes)
- AC_DEFINE(ST_INIT_IN_ST_H, 1,
- Define if <st.h> defines st_init)
- THREAD_LIB="-lst"
- ],[
- AC_MSG_RESULT(yes)
- ])
- fi
- ])
- VLC_ADD_LDFLAGS([vlc plugin],[${THREAD_LIB}])
- dnl Don't link with rt when using GNU-pth
- if test "${THREAD_LIB}" != "-lpth" && test "${THREAD_LIB}" != "-lst"; then
- dnl HP/UX port
- AC_CHECK_LIB(rt,sem_init, [VLC_ADD_LDFLAGS([vlc],[-lrt])])
- have_nanosleep=false
- AC_CHECK_FUNCS(nanosleep,have_nanosleep=:,[
- AC_CHECK_LIB(rt,nanosleep,
- [VLC_ADD_LDFLAGS([vlc],[-lrt]) have_nanosleep=:],
- [AC_CHECK_LIB(posix4,nanosleep,
- [VLC_ADD_LDFLAGS([vlc],[-lposix4]) have_nanosleep=:])]
- )
- ])
- if ${have_nanosleep}; then
- AC_DEFINE(HAVE_NANOSLEEP, 1,
- Define if nanosleep is available.)
- fi
- fi
- dnl Check for misc headers
- AC_MSG_CHECKING(for pthread_cond_t in pthread.h)
- AC_EGREP_HEADER(pthread_cond_t,pthread.h,[
- AC_MSG_RESULT(yes)
- AC_DEFINE(PTHREAD_COND_T_IN_PTHREAD_H, 1,
- Define if <pthread.h> defines pthread_cond_t.)],[
- AC_MSG_RESULT(no)])
- AC_MSG_CHECKING(for pthread_once in pthread.h)
- AC_EGREP_HEADER(pthread_once,pthread.h,[
- AC_MSG_RESULT(yes)
- AC_DEFINE(PTHREAD_ONCE_IN_PTHREAD_H, 1,
- Define if <pthread.h> defines pthread_once.)],[
- AC_MSG_RESULT(no)])
- fi # end "${SYS}" != "mingw32"
- AC_MSG_CHECKING(for strncasecmp in strings.h)
- AC_EGREP_HEADER(strncasecmp,strings.h,[
- AC_MSG_RESULT(yes)
- AC_DEFINE(STRNCASECMP_IN_STRINGS_H, 1,
- Define if <strings.h> defines strncasecmp.)],[
- AC_MSG_RESULT(no)])
- 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)
- AC_CHECK_HEADERS(sys/sockio.h fcntl.h sys/types.h sys/time.h sys/times.h sys/ioctl.h sys/stat.h)
- AC_CHECK_HEADERS(arpa/inet.h net/if.h netinet/in.h sys/socket.h)
- if test "${SYS}" != "mingw32"; then
- AC_CHECK_HEADERS(machine/param.h sys/shm.h altivec.h)
- AC_CHECK_HEADERS(linux/version.h)
- fi # end "${SYS}" != "mingw32"
- AC_HEADER_TIME
- dnl Check for dirent
- need_dirent=false
- AC_CHECK_HEADERS(dirent.h,,[need_dirent=:])
- AM_CONDITIONAL(BUILD_DIRENT, ${need_dirent})
- dnl Mac OS X and other OSes don't have declaration for nanosleep
- if test "${SYS}" != "mingw32"; then
- AC_MSG_CHECKING(for nanosleep in time.h)
- AC_EGREP_HEADER(nanosleep,time.h,[
- AC_MSG_RESULT(yes)
- AC_DEFINE(HAVE_DECL_NANOSLEEP, 1,
- Define if <time.h> defines nanosleep.)
- ],[
- AC_MSG_RESULT(no)
- ])
- fi # end "${SYS}" != "mingw32"
- dnl Make sure we have timespecs
- AC_MSG_CHECKING(for timespec in sys/time.h)
- AC_EGREP_HEADER(timespec,sys/time.h,[
- AC_MSG_RESULT(yes)
- AC_DEFINE(HAVE_STRUCT_TIMESPEC, 1,
- Define if <sys/time.h> defines struct timespec.)
- ],[
- AC_MSG_RESULT(no)
- ])
- dnl Check for threads library
- if test "${SYS}" != "mingw32"; then
- AC_CHECK_HEADERS(cthreads.h pthread.h kernel/scheduler.h kernel/OS.h)
- fi # end "${SYS}" != "mingw32"
- dnl Default X headers and libraries
- if test "${x_includes}" = "NONE"; then
- x_includes="/usr/X11R6/include"
- fi
- if test "${x_libraries}" = "NONE"; then
- x_libraries="/usr/X11R6/lib"
- fi
- dnl Check for hal
- PKG_CHECK_MODULES(HAL, hal >= 0.2.97,
- [AC_DEFINE(HAVE_HAL, [], [Define if you have the HAL library])
- VLC_ADD_LDFLAGS([vlc],[$HAL_LIBS])
- VLC_ADD_CFLAGS([vlc],[$HAL_CFLAGS])],
- [AC_MSG_WARN(HAL library not found)])
- dnl Build the gtk_main plugins?
- NEED_GTK_MAIN=no
- NEED_GNOME_MAIN=no
- NEED_GTK2_MAIN=no
- NEED_GNOME2_MAIN=no
- dnl build the qte plugin ?
- NEED_QTE_MAIN=no
- dnl Check for ntohl, etc.
- AC_CACHE_CHECK([for ntohl in sys/param.h],
- [ac_cv_c_ntohl_sys_param_h],
- [CFLAGS="${CFLAGS_save} -Wall -Werror"
- AC_TRY_COMPILE([#include <sys/param.h>],
- [void foo() { int meuh; ntohl(meuh); }],
- ac_cv_c_ntohl_sys_param_h=yes, ac_cv_c_ntohl_sys_param_h=no)])
- if test "${ac_cv_c_ntohl_sys_param_h}" != "no"; then
- AC_DEFINE(NTOHL_IN_SYS_PARAM_H, 1, Define if <sys/param.h> defines ntohl.)
- fi
- # XXX: do this with an M4 macro?
- #dnl Check for various -W flags
- #for flag in "" all unreachable-code conversion sign-compare disabled-optimization
- #do
- # AC_CACHE_CHECK([if $CC accepts -W${flag}],
- # [ac_cv_c_W${flag}],
- # [CFLAGS="-W${flag} ${CFLAGS_save}"
- # AC_TRY_COMPILE([],,ac_cv_c_W${flag}=yes, ac_cv_c_W${flag}=no)])
- # if test "${ac_cv_c_W${flag}}" != "no"; then
- # CFLAGS_save="-W${flag} ${CFLAGS_save}"; CFLAGS="${CFLAGS_save}"
- # CXXFLAGS_save="-W${flag} ${CFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}"
- # OBJCFLAGS_save="-W${flag} ${OBJCFLAGS_save}"; OBJCFLAGS="${OBJCFLAGS_save}"
- # fi
- #done
- AC_CACHE_CHECK([if $CC accepts -Wall],
- [ac_cv_c_Wall],
- [CFLAGS="-Wall ${CFLAGS_save}"
- AC_TRY_COMPILE([],,ac_cv_c_Wall=yes, ac_cv_c_Wall=no)])
- AC_CACHE_CHECK([if $CC accepts -Wconversion],
- [ac_cv_c_Wconversion],
- [CFLAGS="-Wconversion ${CFLAGS_save}"
- AC_TRY_COMPILE([],,ac_cv_c_Wconversion=yes, ac_cv_c_Wconversion=no)])
- AC_CACHE_CHECK([if $CC accepts -Wunreachable-code],
- [ac_cv_c_Wunreachable_code],
- [CFLAGS="-Wunreachable-code ${CFLAGS_save}"
- AC_TRY_COMPILE([],,ac_cv_c_Wunreachable_code=yes, ac_cv_c_Wunreachable_code=no)])
- AC_CACHE_CHECK([if $CC accepts -Wsign-compare],
- [ac_cv_c_Wsign_compare],
- [CFLAGS="-Wsign-compare ${CFLAGS_save}"
- AC_TRY_COMPILE([],,ac_cv_c_Wsign_compare=yes, ac_cv_c_Wsign_compare=no)])
- if test "${ac_cv_c_Wall}" != "no"; then
- CFLAGS_save="-Wall ${CFLAGS_save}"; CFLAGS="${CFLAGS_save}"
- CXXFLAGS_save="-Wall ${CFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}"
- OBJCFLAGS_save="-Wall ${OBJCFLAGS_save}"; OBJCFLAGS="${OBJCFLAGS_save}"
- fi
- if test "${ac_cv_c_Wsign_compare}" != "no"; then
- CFLAGS_save="-Wsign-compare ${CFLAGS_save}"; CFLAGS="${CFLAGS_save}"
- CXXFLAGS_save="-Wsign-compare ${CFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}"
- OBJCFLAGS_save="-Wsign-compare ${OBJCFLAGS_save}"; OBJCFLAGS="${OBJCFLAGS_save}"
- fi
- dnl Check for -pipe
- AC_CACHE_CHECK([if $CC accepts -pipe],
- [ac_cv_c_pipe],
- [CFLAGS="${CFLAGS_save} -pipe"
- AC_TRY_COMPILE([],,ac_cv_c_pipe=yes, ac_cv_c_pipe=no)])
- if test "${ac_cv_c_pipe}" != "no"; then
- CFLAGS_save="${CFLAGS_save} -pipe"; CFLAGS="${CFLAGS_save}"
- CXXFLAGS_save="${CXXFLAGS_save} -pipe"; CXXFLAGS="${CXXFLAGS_save}"
- OBJCFLAGS_save="${OBJCFLAGS_save} -pipe"; OBJCFLAGS="${OBJCFLAGS_save}"
- fi
- dnl Check for various optimization flags
- AC_CACHE_CHECK([if $CC accepts -Os],
- [ac_cv_c_os],
- [CFLAGS="${CFLAGS_save} -Os"
- AC_TRY_COMPILE([],,ac_cv_c_os=yes, ac_cv_c_os=no)])
- if test "${ac_cv_c_os}" != "no" -a "${target_cpu}" = "mipsel"; then
- CFLAGS_OPTIM="${CFLAGS_OPTIM} -Os"
- 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 "${target_cpu}" != "mipsel"; then
- CFLAGS_OPTIM="${CFLAGS_OPTIM} -O3"
- fi
- AC_CACHE_CHECK([if $CC accepts -O2],
- [ac_cv_c_o2],
- [CFLAGS="${CFLAGS_save} -O2"
- AC_TRY_COMPILE([],,ac_cv_c_o2=yes, ac_cv_c_o2=no)])
- if test "${ac_cv_c_o2}" != "no" -a "${target_cpu}" != "mipsel"; then
- if test "${ac_cv_c_o3}" = "no"; then
- CFLAGS_OPTIM="${CFLAGS_OPTIM} -O2"
- fi
- CFLAGS_NOOPTIM="${CFLAGS_NOOPTIM} -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" -a "${target_cpu}" != "mipsel"; then
- if test "${ac_cv_c_o3}" = "no"; then
- CFLAGS_OPTIM="${CFLAGS_OPTIM} -O"
- fi
- CFLAGS_NOOPTIM="${CFLAGS_NOOPTIM} -O"
- fi
- fi
- dnl Check for -ffast-math
- AC_CACHE_CHECK([if $CC accepts -ffast-math],
- [ac_cv_c_fast_math],
- [CFLAGS="${CFLAGS_save} -ffast-math"
- AC_TRY_COMPILE([],,ac_cv_c_fast_math=yes, ac_cv_c_fast_math=no)])
- if test "${ac_cv_c_fast_math}" != "no"; then
- CFLAGS_OPTIM="${CFLAGS_OPTIM} -ffast-math"
- fi
- dnl Check for -funroll-loops
- dnl Disabled on BeOS because BeOS' gcc is buggy and may crash with it
- if test "${SYS}" != "beos"
- then
- AC_CACHE_CHECK([if $CC accepts -funroll-loops],
- [ac_cv_c_unroll_loops],
- [CFLAGS="${CFLAGS_save} -funroll-loops"
- AC_TRY_COMPILE([],,ac_cv_c_unroll_loops=yes, ac_cv_c_unroll_loops=no)])
- if test "${ac_cv_c_unroll_loops}" != "no"; then
- CFLAGS_OPTIM="${CFLAGS_OPTIM} -funroll-loops"
- fi
- fi
- dnl Check for -fomit-frame-pointer
- AC_CACHE_CHECK([if $CC accepts -fomit-frame-pointer],
- [ac_cv_c_omit_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
- CFLAGS_OPTIM_NODEBUG="${CFLAGS_OPTIM_NODEBUG} -fomit-frame-pointer"
- # this plugin does not compile without -fomit-frame-pointer, damn gcc!
- VLC_ADD_CFLAGS([i420_yuy2_mmx],[-fomit-frame-pointer])
- fi
- dnl Check for -mdynamic-no-pic
- AC_CACHE_CHECK([if $CC accepts -mdynamic-no-pic],
- [ac_cv_c_dynamic_no_pic],
- [CFLAGS="${CFLAGS_save} -mdynamic-no-pic"
- AC_TRY_COMPILE([],,ac_cv_c_dynamic_no_pic=yes, ac_cv_c_dynamic_no_pic=no)])
- if test "${ac_cv_c_dynamic_no_pic}" != "no"; then
- VLC_ADD_CFLAGS([builtin],[-mdynamic-no-pic])
- VLC_ADD_CFLAGS([libvlc],[-mdynamic-no-pic])
- fi
- dnl Check for Darwin plugin linking flags
- AC_CACHE_CHECK([if $CC accepts -bundle -undefined error -lcc_dynamic],
- [ac_cv_ld_darwin],
- [CFLAGS="${CFLAGS_save} -bundle -undefined error -lcc_dynamic"
- AC_TRY_COMPILE([],,ac_cv_ld_darwin=yes, ac_cv_ld_darwin=no)])
- if test "${ac_cv_ld_darwin}" != "no"; then
- VLC_ADD_LDFLAGS([plugin],[-bundle -undefined error -lcc_dynamic])
- fi
- dnl Check for standard plugin linking flags
- dnl BeOS' gcc needs -nostart instead of -shared, even if -shared isn't harmful (just a warning)
- if test "${SYS}" = "beos"; then
- VLC_ADD_LDFLAGS([plugin mozilla],[-nostart])
- else
- AC_CACHE_CHECK([if $CC accepts -shared],
- [ac_cv_ld_plugins],
- [CFLAGS="${CFLAGS_save} -shared"
- AC_TRY_COMPILE([],, ac_cv_ld_plugins=yes, ac_cv_ld_plugins=no)])
- if test "${ac_cv_ld_plugins}" != "no"; then
- VLC_ADD_LDFLAGS([plugin mozilla],[-shared])
- fi
- fi
- dnl Check for variadic macros
- AC_CACHE_CHECK([for variadic cpp macros],
- [ac_cv_cpp_variadic_macros],
- [CFLAGS="${CFLAGS_save}"
- AC_TRY_COMPILE(
- [#include <stdio.h>
- #define a(b,c...) printf(b,##c)],
- [a("foo");a("%s","bar");a("%s%s","baz","quux");],
- ac_cv_cpp_variadic_macros=yes,
- ac_cv_cpp_variadic_macros=no)])
- if test "${ac_cv_cpp_variadic_macros}" != "no"; then
- AC_DEFINE(HAVE_VARIADIC_MACROS, 1, Support for variadic macros)
- fi
- dnl Checks for __attribute__(aligned()) directive
- AC_CACHE_CHECK([__attribute__ ((aligned ())) support],
- [ac_cv_c_attribute_aligned],
- [ac_cv_c_attribute_aligned=0
- CFLAGS="${CFLAGS_save} -Werror"
- for ac_cv_c_attr_align_try in 2 4 8 16 32 64; do
- AC_TRY_COMPILE([],
- [static char c __attribute__ ((aligned(${ac_cv_c_attr_align_try}))) = 0; return c;],
- [ac_cv_c_attribute_aligned="${ac_cv_c_attr_align_try}"])
- done
- CFLAGS="${CFLAGS_save}"])
- if test "${ac_cv_c_attribute_aligned}" != "0"; then
- AC_DEFINE_UNQUOTED([ATTRIBUTE_ALIGNED_MAX],
- [${ac_cv_c_attribute_aligned}],[Maximum supported data alignment])
- fi
- dnl Checks for __attribute__(format()) directive
- AC_CACHE_CHECK([__attribute__ ((format ())) support with function pointers],
- [ac_cv_c_attribute_format],
- [ac_cv_c_attribute_format=no
- CFLAGS="${CFLAGS_save} -Werror"
- AC_TRY_COMPILE([],
- [static void (*pf_printf)(const char *, ...) __attribute__ ((format(printf,1,2)));(void)pf_printf;],
- [ac_cv_c_attribute_format=yes])
- CFLAGS="${CFLAGS_save}"])
- if test "${ac_cv_c_attribute_format}" != "no"; then
- AC_DEFINE(HAVE_ATTRIBUTE_FORMAT, 1, Support for __attribute__((format())) with function pointers)
- fi
- dnl Check for __attribute__(())
- AC_CACHE_CHECK([for __attribute__((packed))],
- [ac_cv_c_attribute_packed],
- [ac_cv_c_attribute_packed=no
- AC_TRY_COMPILE(, [struct __attribute__((__packed__)) foo { int a; } b;],
- [ac_cv_c_attribute_packed=yes])])
- if test "${ac_cv_c_attribute_packed}" != "no"; then
- AC_DEFINE(HAVE_ATTRIBUTE_PACKED, 1, Support for __attribute__((packed)) for structs)
- fi
- dnl
- dnl Check the CPU
- dnl
- case "${target_cpu}" in
- "")
- ARCH=unknown
- ;;
- *)
- ARCH="${target_cpu}"
- ;;
- esac
- dnl
- dnl Enable profiling
- dnl
- AC_ARG_ENABLE(gprof,
- [ --enable-gprof gprof profiling (default disabled)])
- AC_ARG_ENABLE(cprof,
- [ --enable-cprof cprof profiling (default disabled)])
- test "${enable_gprof}" != "yes" && enable_gprof="no"
- test "${enable_cprof}" != "yes" && enable_cprof="no"
- dnl
- dnl default modules
- dnl
- VLC_ADD_PLUGINS([dummy rc telnet logger gestures memcpy hotkeys netsync showintf])
- VLC_ADD_PLUGINS([mpgv mpga m4v m4a h264 ps pva avi asf aac mp4 rawdv nsv real aiff mjpeg demuxdump])
- VLC_ADD_PLUGINS([cvdsub svcdsub spudec subsdec dvbsub mpeg_audio lpcm a52 dts cinepak])
- VLC_ADD_PLUGINS([deinterlace invert adjust wall transform distort clone crop motionblur])
- VLC_ADD_PLUGINS([float32tos16 float32tos8 float32tou16 float32tou8 a52tospdif dtstospdif fixed32tofloat32 fixed32tos16 s16tofixed32 s16tofloat32 s16tofloat32swab s8tofloat32 u8tofixed32 u8tofloat32 audio_format])
- VLC_ADD_PLUGINS([trivial_resampler ugly_resampler linear_resampler bandlimited_resampler])
- VLC_ADD_PLUGINS([trivial_channel_mixer simple_channel_mixer headphone_channel_mixer normvol])
- VLC_ADD_PLUGINS([trivial_mixer spdif_mixer float32_mixer])
- VLC_ADD_PLUGINS([aout_file equalizer])
- VLC_ADD_PLUGINS([i420_rgb i420_yuy2 i422_yuy2 i420_ymga])
- VLC_ADD_PLUGINS([m3u id3 playlist export sgimb])
- VLC_ADD_PLUGINS([rawvideo blend scale time marq])
- VLC_ADD_PLUGINS([wav araw subtitle vobsub adpcm a52sys dtssys au])
- VLC_ADD_PLUGINS([access_file access_udp access_tcp access_http ipv4 access_mms])
- VLC_ADD_PLUGINS([access_ftp access_directory sap http])
- dnl
- dnl Switch to enable a version of VLC where most modules will be builtin
- dnl
- AC_ARG_ENABLE(mostly-builtin,
- [ --enable-mostly-builtin most modules will be built-in (default disabled)])
- if test "${enable_mostly_builtin}" = "yes"; then
- VLC_ADD_BUILTINS([${PLUGINS}])
- PLUGINS=""
- fi
- dnl
- dnl Some plugins aren't useful on some platforms
- dnl
- if test "${SYS}" != "mingw32"; then
- VLC_ADD_PLUGINS([screensaver])
- else
- VLC_ADD_PLUGINS([ntservice])
- VLC_ADD_PLUGINS([dmo])
- VLC_ADD_LDFLAGS([dmo],[-lole32])
- fi
- dnl
- dnl Accelerated modules
- dnl
- MMX_MODULES="memcpymmx i420_rgb_mmx i422_yuy2_mmx i420_ymga_mmx"
- #MMX_MODULES="${MMX_MODULES} idctmmx motionmmx"
- MMXEXT_MODULES="memcpymmxext"
- #MMXEXT_MODULES="${MMXEXT_MODULES} idctmmxext motionmmxext"
- THREEDNOW_MODULES="memcpy3dn"
- SSE_MODULES=""
- ALTIVEC_MODULES="memcpyaltivec i420_yuy2_altivec"
- #ALTIVEC_MODULES="${ALTIVEC_MODULES} idctaltivec motionaltivec"
- if test "${enable_gprof}" != "yes"
- then
- MMX_MODULES="${MMX_MODULES} i420_yuy2_mmx"
- fi
- AC_CACHE_CHECK([if $CC groks MMX inline assembly],
- [ac_cv_mmx_inline],
- [CFLAGS="${CFLAGS_save}"
- AC_TRY_COMPILE(,[void *p;asm volatile("packuswb %%mm1,%%mm2"::"r"(p));],
- ac_cv_mmx_inline=yes, ac_cv_mmx_inline=no)])
- if test "${ac_cv_mmx_inline}" != "no"; then
- AC_DEFINE(CAN_COMPILE_MMX, 1, Define if $CC groks MMX inline assembly.)
- ACCEL_MODULES="${ACCEL_MODULES} ${MMX_MODULES}"
- fi
- AC_CACHE_CHECK([if $CC groks MMX EXT inline assembly],
- [ac_cv_mmxext_inline],
- [CFLAGS="${CFLAGS_save}"
- AC_TRY_COMPILE(,[void *p;asm volatile("maskmovq %%mm1,%%mm2"::"r"(p));],
- ac_cv_mmxext_inline=yes, ac_cv_mmxext_inline=no)])
- if test "${ac_cv_mmxext_inline}" != "no"; then
- AC_DEFINE(CAN_COMPILE_MMXEXT, 1, Define if $CC groks MMX EXT inline assembly.)
- ACCEL_MODULES="${ACCEL_MODULES} ${MMXEXT_MODULES}"
- fi
- AC_CACHE_CHECK([if $CC groks 3D Now! inline assembly],
- [ac_cv_3dnow_inline],
- [CFLAGS="${CFLAGS_save}"
- AC_TRY_COMPILE(,[void *p;asm volatile("pfadd %%mm1,%%mm2"::"r"(p));],
- ac_cv_3dnow_inline=yes, ac_cv_3dnow_inline=no)])
- if test "${ac_cv_3dnow_inline}" != "no"; then
- AC_DEFINE(CAN_COMPILE_3DNOW, 1, Define if $CC groks 3D Now! inline assembly.)
- ACCEL_MODULES="${ACCEL_MODULES} ${THREEDNOW_MODULES}"
- fi
- AC_CACHE_CHECK([if $CC groks SSE inline assembly],
- [ac_cv_sse_inline],
- [CFLAGS="${CFLAGS_save}"
- AC_TRY_COMPILE(,[void *p;asm volatile("xorps %%xmm1,%%xmm2"::"r"(p));],
- ac_cv_sse_inline=yes, ac_cv_sse_inline=no)])
- if test "${ac_cv_sse_inline}" != "no" -a "${SYS}" != "mingw32" -a "${SYS}" != "solaris"; then
- AC_DEFINE(CAN_COMPILE_SSE, 1, Define if $CC groks SSE inline assembly.)
- ACCEL_MODULES="${ACCEL_MODULES} ${SSE_MODULES}"
- fi
- if test "${SYS}" != "mingw32"; then
- AC_CACHE_CHECK([if $CC groks AltiVec inline assembly],
- [ac_cv_altivec_inline],
- [CFLAGS="${CFLAGS_save}"
- AC_TRY_COMPILE(,[asm volatile("vperm 0,1,2,3");],
- ac_cv_altivec_inline=yes,
- [CFLAGS="${CFLAGS_save} -Wa,-m7400"
- AC_TRY_COMPILE(,[asm volatile("vperm 0,1,2,3");],
- [ac_cv_altivec_inline="-Wa,-m7400"],
- ac_cv_altivec_inline=no)
- ])])
- if test "${ac_cv_altivec_inline}" != "no"; then
- AC_DEFINE(CAN_COMPILE_ALTIVEC, 1, Define if $CC groks AltiVec inline assembly.)
- if test "${ac_cv_altivec_inline}" != "yes"; then
- VLC_ADD_CFLAGS([idctaltivec],[${ac_cv_altivec_inline}])
- VLC_ADD_CFLAGS([motionaltivec],[${ac_cv_altivec_inline}])
- VLC_ADD_CFLAGS([memcpyaltivec],[${ac_cv_altivec_inline}])
- VLC_ADD_CFLAGS([i420_yuy2_altivec],[${ac_cv_altivec_inline}])
- VLC_ADD_CFLAGS([vlc],[${ac_cv_altivec_inline}])
- fi
- ACCEL_MODULES="${ACCEL_MODULES} ${ALTIVEC_MODULES}"
- fi
- AC_CACHE_CHECK([if $CC groks AltiVec C extensions],
- [ac_cv_c_altivec],
- [# Darwin test
- CFLAGS="${CFLAGS_save} -faltivec"
- AC_TRY_COMPILE([],
- [vec_ld(0, (unsigned char *)0);],
- [ac_cv_c_altivec="-faltivec"],
- [# Linux/PPC test (no flags)
- CFLAGS="${CFLAGS_save} ${CFLAGS_idctaltivec} -maltivec -mabi=altivec"
- AC_TRY_COMPILE([#ifdef HAVE_ALTIVEC_H
- #include <altivec.h>
- #endif],
- [vec_ld(0, (unsigned char *)0);],
- [ac_cv_c_altivec=""
- ac_cv_c_altivec_abi="-maltivec -mabi=altivec"],
- [# Linux/PPC test (old GCC versions)
- CFLAGS="${CFLAGS_save} ${CFLAGS_idctaltivec} -fvec"
- AC_TRY_COMPILE([#ifdef HAVE_ALTIVEC_H
- #include <altivec.h>
- #endif],
- [vec_ld(0, (unsigned char *)0);],
- [ac_cv_c_altivec="-fvec"],
- [ac_cv_c_altivec=no])
- ])
- ])
- CFLAGS="${CFLAGS_save}"])
- if test "${ac_cv_c_altivec}" != "no"; then
- AC_DEFINE(CAN_COMPILE_C_ALTIVEC, 1, Define if your compiler groks C AltiVec extensions.)
- VLC_ADD_CFLAGS([vlc],[${ac_cv_c_altivec}])
- VLC_ADD_CFLAGS([idctaltivec motionaltivec],[${ac_cv_c_altivec}])
- VLC_ADD_CFLAGS([i420_yuy2_altivec memcpyaltivec deinterlace],[${ac_cv_c_altivec} ${ac_cv_c_altivec_abi}])
- ACCEL_MODULES="${ACCEL_MODULES} ${ALTIVEC_MODULES}"
- fi
- AC_CACHE_CHECK([if linker needs -framework vecLib],
- [ac_cv_ld_altivec],
- [LDFLAGS="${LDFLAGS_vlc} -framework vecLib"
- AC_TRY_LINK([],,ac_cv_ld_altivec=yes,ac_cv_ld_altivec=no)
- LDFLAGS="${LDFLAGS_save}"
- ])
- if test "${ac_cv_ld_altivec}" != "no"; then
- VLC_ADD_LDFLAGS([vlc idctaltivec motionaltivec memcpyaltivec],[-framework vecLib])
- fi
- fi # end "${SYS}" != "mingw32"
- AC_ARG_WITH(,[])
- AC_ARG_WITH(,[Optimization options:])
- dnl
- dnl Special arch tuning
- dnl
- AC_ARG_WITH(tuning,
- [ --with-tuning=ARCH enable special tuning for an architecture
- (default i686 on IA-32 and 750 on PPC)])
- if test -n "${with_tuning}"; then
- if test "${target_cpu}" = "powerpc"; then
- CFLAGS_TUNING="-mtune=${with_tuning}"
- else
- CFLAGS_TUNING="-mcpu=${with_tuning}"
- fi
- else
- if test "${target_cpu}" = "i686" -o "${target_cpu}" = "i586" -o "${target_cpu}" = "i486" -o "${target_cpu}" = "i386"; then
- CFLAGS_TUNING="-mcpu=pentiumpro"
- else
- if test "${target_cpu}" = "powerpc"; then CFLAGS_TUNING="-mtune=750"; fi
- fi
- fi
- dnl
- dnl x86 accelerations
- dnl
- if test "${target_cpu}" = "i686" -o "${target_cpu}" = "i586" -o "${target_cpu}" = "x86" -o "${target_cpu}" = "i386"
- then
- ARCH="${ARCH} mmx"
- VLC_ADD_BUILTINS([${ACCEL_MODULES}])
- fi
- dnl
- dnl Enable/disable optimizations
- dnl
- AC_ARG_ENABLE(optimizations,
- [ --disable-optimizations disable compiler optimizations (default enabled)])
- test "${enable_optimizations}" != "no" && enable_optimizations="yes"
- dnl
- dnl AltiVec acceleration
- dnl
- AC_ARG_ENABLE(altivec,
- [ --disable-altivec disable AltiVec optimizations (default enabled on PPC)],
- [ if test "${enable_altivec}" = "yes"; then ARCH="${ARCH} altivec";
- VLC_ADD_BUILTINS([${ACCEL_MODULES}]) fi ],
- [ if test "${target_cpu}" = "powerpc"; then ARCH="${ARCH} altivec";
- VLC_ADD_BUILTINS([${ACCEL_MODULES}]) fi ])
- dnl
- dnl Debugging mode
- dnl
- AC_ARG_ENABLE(debug,
- [ --enable-debug debug mode (default disabled)])
- test "${enable_debug}" != "yes" && enable_debug="no"
- dnl
- dnl Enable release-specific flags
- dnl
- AC_ARG_ENABLE(release,
- [ --enable-release activate extra optimizations (default disabled)])
- test "${enable_release}" != "yes" && enable_release="no"
- dnl
- dnl Stream output
- dnl
- AC_ARG_ENABLE(sout,
- [ --enable-sout Stream output modules (default enabled)])
- if test "${enable_sout}" != "no"
- then
- VLC_ADD_PLUGINS([access_output_dummy access_output_udp access_output_file access_output_http])
- VLC_ADD_PLUGINS([mux_ps mux_avi mux_mp4 mux_asf mux_dummy mux_wav mux_mpjpeg])
- VLC_ADD_PLUGINS([packetizer_mpegvideo packetizer_h264])
- VLC_ADD_PLUGINS([packetizer_mpeg4video packetizer_mpeg4audio])
- VLC_ADD_PLUGINS([packetizer_copy])
- VLC_ADD_PLUGINS([stream_out_dummy stream_out_standard stream_out_es stream_out_rtp stream_out_description vod_rtsp])
- VLC_ADD_PLUGINS([stream_out_duplicate stream_out_gather stream_out_display stream_out_transcode])
- # VLC_ADD_PLUGINS([stream_out_transrate])
- AC_DEFINE(ENABLE_SOUT, 1, Define if you want the stream output support)
- fi
- dnl
- dnl HTTP daemon
- dnl
- AC_ARG_ENABLE(httpd,
- [ --enable-httpd HTTP daemon (default enabled)])
- if test "${enable_httpd}" != "no"
- then
- AC_DEFINE(ENABLE_HTTPD, 1, Define if you want the HTTP dameon support)
- fi
- dnl
- dnl VideoLAN manager
- dnl
- AC_ARG_ENABLE(vlm,
- [ --enable-vlm VideoLAN manager (default enabled)])
- if test "${enable_vlm}" != "no"
- then
- AC_DEFINE(ENABLE_VLM, 1, Define if you want the VideoLAN manager support)
- fi
- dnl
- dnl TLS/SSL
- dnl
- AC_ARG_ENABLE(gnutls,
- [ --enable-gnutls gnutls TLS/SSL support (default disabled)])
- AS_IF([test "${enable_gnutls}" == "yes"], VLC_ADD_PLUGINS([gnutls]))
- dnl
- dnl Input plugins
- dnl
- AC_ARG_WITH(,[Input plugins:])
- dnl
- dnl live.com input
- dnl
- AC_ARG_ENABLE(livedotcom,
- [ --enable-livedotcom live.com input plugin (default disabled)])
- if test "${enable_livedotcom}" = "yes"; then
- AC_ARG_WITH(livedotcom-tree,
- [ --with-livedotcom-tree=PATH live.com tree for static linking])
- dnl
- dnl test for --with-livedotcom-tree
- dnl
- if test -z "${with_livedotcom_tree}"; then
- AC_LANG_PUSH(C++)
- CPPFLAGS_save="${CPPFLAGS}"
- CPPFLAGS_livedotcom="-I/usr/include/liveMedia -I/usr/include/groupsock -I/usr/include/BasicUsageEnvironment -I/usr/include/UsageEnvironment"
- CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_livedotcom}"
- AC_CHECK_HEADERS(liveMedia.hh, [
- VLC_ADD_CXXFLAGS([livedotcom], [${CPPFLAGS_livedotcom}])
- AC_CHECK_LIB(liveMedia_pic, main, [
- # We have -lliveMedia_pic, build plugins
- VLC_ADD_PLUGINS([livedotcom])
- VLC_ADD_LDFLAGS([livedotcom], [-lliveMedia_pic -lgroupsock_pic -lBasicUsageEnvironment_pic -lUsageEnvironment_pic])
- ], [
- AC_CHECK_LIB(liveMedia, main, [
- # We only have -lliveMedia, do builtins
- VLC_ADD_BUILTINS([livedotcom])
- VLC_ADD_LDFLAGS([livedotcom], [-lliveMedia -lgroupsock -lBasicUsageEnvironment -lUsageEnvironment])
- ])
- ])
- if test "${SYS}" = "mingw32"; then
- # add ws2_32 for closesocket, select, recv
- VLC_ADD_LDFLAGS([livedotcom],[-lws2_32])
- fi
- ])
- CPPFLAGS="${CPPFLAGS_save}"
- AC_LANG_POP(C++)
- else
- AC_MSG_CHECKING(for liveMedia/libliveMedia.a in ${with_livedotcom_tree})
- real_livedotcom_tree="`cd ${with_livedotcom_tree} 2>/dev/null && pwd`"
- if test -z "${real_livedotcom_tree}"; then
- dnl The given directory can't be found
- AC_MSG_RESULT(no)
- AC_MSG_ERROR([cannot cd to ${with_livedotcom_tree}])
- fi
- if test -f "${real_livedotcom_tree}/liveMedia/libliveMedia.a"; then
- AC_MSG_RESULT(${real_livedotcom_tree}/liveMedia/libliveMedia.a)
- VLC_ADD_BUILTINS([livedotcom])
- if test "${SYS}" = "mingw32"; then
- # add ws2_32 for closesocket, select, recv
- VLC_ADD_LDFLAGS([livedotcom],[-lws2_32])
- fi
- VLC_ADD_LDFLAGS([livedotcom],[-L${real_livedotcom_tree}/liveMedia -lliveMedia])
- VLC_ADD_LDFLAGS([livedotcom],[-L${real_livedotcom_tree}/BasicUsageEnvironment -lBasicUsageEnvironment])
- VLC_ADD_LDFLAGS([livedotcom],[-L${real_livedotcom_tree}/groupsock -lgroupsock])
- VLC_ADD_LDFLAGS([livedotcom],[-L${real_livedotcom_tree}/UsageEnvironment -lUsageEnvironment])
- VLC_ADD_CXXFLAGS([livedotcom],[-I${real_livedotcom_tree}/BasicUsageEnvironment/include])
- VLC_ADD_CXXFLAGS([livedotcom],[-I${real_livedotcom_tree}/groupsock/include])
- VLC_ADD_CXXFLAGS([livedotcom],[-I${real_livedotcom_tree}/liveMedia/include])
- VLC_ADD_CXXFLAGS([livedotcom],[-I${real_livedotcom_tree}/UsageEnvironment/include ])
- else
- dnl The given live.com wasn't built
- AC_MSG_RESULT(no)
- AC_MSG_ERROR([cannot find ${real_livedotcom_tree}/liveMedia/libliveMedia.a, make sure you compiled live.com in ${with_livedotcom_tree}])
- fi
- fi
- fi
- dnl
- dnl dvdread module: check for libdvdread
- dnl
- AC_ARG_ENABLE(dvdread,
- [ --enable-dvdread dvdread input module (default disabled)])
- if test "${enable_dvdread}" != "no"
- then
- AC_ARG_WITH(dvdread,
- [ --with-dvdread=PATH libdvdread headers and libraries])
- AC_ARG_WITH(dvdread-tree,
- [ --with-dvdread-tree=PATH libdvdread tree for static linking])
- dnl Temporary hack (yeah, sure ;)
- if test "${SYS}" = "mingw32" || test "${SYS}" = "darwin" || test "${SYS}" = "beos" ; then
- VLC_ADD_LDFLAGS([dvdread],[-ldvdcss])
- fi
- if test -z "${with_dvdread}"
- then
- if test -z "${with_dvdread_tree}"
- then
- AC_CHECK_HEADERS(dvdread/dvd_reader.h,
- [ VLC_ADD_PLUGINS([dvdread])
- VLC_ADD_LDFLAGS([dvdread],[-ldvdread ${LDFLAGS_dvdcss}])
- ],[
- if test -n "${enable_dvdread}"
- then
- AC_MSG_ERROR([cannot find libdvdread headers])
- fi
- ])
- else
- AC_MSG_CHECKING(for libdvdread.a in ${with_dvdread_tree})
- real_dvdread_tree="`cd ${with_dvdread_tree} 2>/dev/null && pwd`"
- if test -z "${real_dvdread_tree}"
- then
- dnl The given directory can't be found
- AC_MSG_RESULT(no)
- AC_MSG_ERROR([cannot cd to ${with_dvdread_tree}])
- fi
- if test -f "${real_dvdread_tree}/dvdread/.libs/libdvdread.a"
- then
- dnl Use a custom libdvdread
- AC_MSG_RESULT(${real_dvdread_tree}/dvdread/.libs/libdvdread.a)
- VLC_ADD_BUILTINS([dvdread])
- VLC_ADD_LDFLAGS([dvdread],[-L${real_dvdread_tree}/dvdread/.libs -ldvdread ${LDFLAGS_dvdcss}])
- VLC_ADD_CPPFLAGS([dvdread],[-I${real_dvdread_tree}])
- else
- dnl The given libdvdread wasn't built
- AC_MSG_RESULT(no)
- AC_MSG_ERROR([cannot find ${real_dvdread_tree}/dvdread/.libs/libdvdread.a, make sure you compiled libdvdread in ${with_dvdread_tree}])
- fi
- fi
- else
- AC_MSG_CHECKING(for dvdread headers in ${with_dvdread})
- if test -f ${with_dvdread}/include/dvdread/dvd_reader.h
- then
- dnl Use ${with_dvdread}/include/dvdread/dvd_reader.h
- AC_MSG_RESULT(yes)
- VLC_ADD_PLUGINS([dvdread])
- VLC_ADD_LDFLAGS([dvdread],[-L${with_dvdread}/lib -ldvdread ${LDFLAGS_dvdcss}])
- VLC_ADD_CPPFLAGS([dvdread],[-I${with_dvdread}/include])
- else
- dnl No libdvdread could be found, sorry
- AC_MSG_RESULT(no)
- AC_MSG_ERROR([cannot find ${with_dvdread}/include/dvdread/dvd_reader.h])
- fi
- fi
- fi
- dnl
- dnl libdvdnav plugin
- dnl
- AC_ARG_ENABLE(dvdnav,
- [ --enable-dvdnav dvdnav input module (default enabled)])
- if test "${enable_dvdnav}" != "no"
- then
- dnl Same hack than dvdread
- if test "${SYS}" = "mingw32" || test "${SYS}" = "darwin" || test "${SYS}" = "beos" ; then
- VLC_ADD_LDFLAGS([dvdnav],[-ldvdcss])
- fi
- DVDNAV_PATH="${PATH}"
- AC_ARG_WITH(dvdnav-config-path,
- [ --with-dvdnav-config-path=PATH dvdnav-config path (default search in $PATH)],
- [ if test "${with_dvdnav_config_path}" != "no"
- then
- DVDNAV_PATH="${with_dvdnav_config_path}:${PATH}"
- fi ])
- AC_PATH_PROG(DVDNAV_CONFIG, dvdnav-config, no, ${DVDNAV_PATH})
- if test "${DVDNAV_CONFIG}" != "no"
- then
- VLC_ADD_PLUGINS([dvdnav])
- VLC_ADD_CFLAGS([dvdnav],[`${DVDNAV_CONFIG} --cflags`])
- VLC_ADD_LDFLAGS([dvdnav],[`${DVDNAV_CONFIG} --libs`])
- fi
- fi
- dnl
- dnl Windows DirectShow access module
- dnl
- AC_ARG_ENABLE(dshow,
- [ --enable-dshow Win32 DirectShow support (default enabled on Win32)])
- if test "${enable_dshow}" != "no"
- then
- if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"
- then
- AC_CHECK_HEADERS(dshow.h,
- [ VLC_ADD_PLUGINS([dshow])
- VLC_ADD_CXXFLAGS([dshow],[])
- VLC_ADD_LDFLAGS([dshow],[-lole32 -loleaut32]) ])
- fi
- fi
- dnl
- dnl libdvbpsi ts demux/mux
- dnl
- AC_ARG_ENABLE(dvbpsi,
- [ --enable-dvbpsi dvbpsi ts mux and demux module (default enabled)])
- if test "${enable_dvbpsi}" != "no"
- then
- AC_ARG_WITH(dvbpsi,
- [ --with-dvbpsi=PATH libdvbpsi headers and libraries])
- AC_ARG_WITH(dvbpsi,
- [ --with-dvbpsi-tree=PATH libdvbpsi tree for static linking])
- case "${with_dvbpsi}" in
- ""|yes)
- if test -z "${with_dvbpsi_tree}"
- then
- AC_CHECK_HEADERS(dvbpsi/dr.h,
- [ VLC_ADD_PLUGINS([mux_ts ts])
- VLC_ADD_LDFLAGS([mux_ts ts],[-ldvbpsi]) ],
- [ AC_MSG_WARN([cannot find libdvbpsi headers]) ],
- [#if defined( HAVE_STDINT_H )
- # include <stdint.h>
- #elif defined( HAVE_INTTYPES_H )
- # include <inttypes.h>
- #endif
- #include <dvbpsi/dvbpsi.h>
- #include <dvbpsi/descriptor.h>
- #include <dvbpsi/pat.h>
- #include <dvbpsi/pmt.h>])
- else
- AC_MSG_CHECKING(for libdvbpsi.a in ${with_dvbpsi_tree})
- real_dvbpsi_tree="`cd ${with_dvbpsi_tree} 2>/dev/null && pwd`"
- if test -z "${real_dvbpsi_tree}"
- then
- dnl The given directory can't be found
- AC_MSG_RESULT(no)
- AC_MSG_ERROR([cannot cd to ${with_dvbpsi_tree}])
- fi
- if test -f "${real_dvbpsi_tree}/src/.libs/libdvbpsi.a"
- then
- dnl Use a custom libdvbpsi
- AC_MSG_RESULT(${real_dvbpsi_tree}/src/.libs/libdvbpsi.a)
- VLC_ADD_BUILTINS([mux_ts ts])
- VLC_ADD_CPPFLAGS([mux_ts ts],[-I${real_dvbpsi_tree}/src])
- VLC_ADD_LDFLAGS([mux_ts ts],[-L${real_dvbpsi_tree}/src/.libs -ldvbpsi])
- else
- dnl The given libdvbpsi wasn't built
- AC_MSG_RESULT(no)
- AC_MSG_ERROR([cannot find ${real_dvbpsi_tree}/src/.libs/libdvbpsi.a, make sure you compiled libdvbpsi in ${with_dvbpsi_tree}])
- fi
- fi
- ;;
- no)
- dnl Compile without dvbpsi
- ;;
- *)
- AC_MSG_CHECKING(for dvbpsi headers in ${with_dvbpsi})
- if test -z "${with_dvbpsi}"
- then
- LDFLAGS_test=""
- CPPFLAGS_test=""
- else
- LDFLAGS_test="-L${with_dvbpsi}/lib"
- CPPFLAGS_test="-I${with_dvbpsi}/include"
- fi
- CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_test}"
- AC_CHECK_HEADERS([dvbpsi/dr.h],[
- VLC_ADD_PLUGINS([mux_ts ts])
- VLC_ADD_CPPFLAGS([mux_ts ts],[${CPPFLAGS_test}])
- VLC_ADD_LDFLAGS([mux_ts ts],[${LDFLAGS_test} -ldvbpsi])
- ],[
- if test -n "${enable_dvbpsi}"
- then
- AC_MSG_ERROR([Could not find libdvbpsi on your system: you may get it from www.videolan.org, you'll need at least version 0.1.1])
- fi
- ])
- CPPFLAGS="${CPPFLAGS_save}"
- ;;
- esac
- fi
- dnl
- dnl Video4Linux plugin
- dnl
- AC_ARG_ENABLE(v4l,
- [ --enable-v4l Video4Linux input support (default disabled)])
- if test "${enable_v4l}" = "yes"
- then
- AC_ARG_WITH(v4l,
- [ --with-v4l=PATH path to a v4l-enabled kernel tree],[],[])
- if test "${with_v4l}" != "no" -a -n "${with_v4l}"
- then
- VLC_ADD_CPPFLAGS([v4l],[-I${with_v4l}/include])
- fi
- CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_v4l}"
- AC_CHECK_HEADERS(linux/videodev.h, [
- VLC_ADD_PLUGINS([v4l])
- ],[])
- CPPFLAGS="${CPPFLAGS_save}"
- fi
- dnl
- dnl special access module for Hauppauge PVR cards
- dnl
- AC_ARG_ENABLE(pvr,
- [ --enable-pvr PVR cards access module (default disabled)])
- if test "${enable_pvr}" = "yes"
- then
- VLC_ADD_PLUGINS([pvr])
- fi
- dnl
- dnl VCDX and CDDAX modules
- dnl
- AC_ARG_ENABLE(libcdio,
- [ --enable-libcdio CDDA support via libcdio (default enabled)])
-
- AC_ARG_ENABLE(libcddb,
- [ --enable-libcddb CDDB support for CDDAX (default enabled)])
-
- dnl AC_ARG_ENABLE(vcdx,
- dnl [ --enable-vcdx VCD support with Navigation (default enabled)])
-
- AC_ARG_ENABLE(cdda,
- [ --enable-cdda CDDA plugin support (default enabled)])
-
- AC_ARG_ENABLE(cddax,
- [ --enable-cddax CDDAX plugin support (default enabled)])
-
- if test "${enable_cddax}" != "no"
- then
- PKG_CHECK_MODULES(LIBCDIO, libcdio >= 0.70,
- [enable_cddax="no"
- AC_DEFINE(HAVE_CDDAX, [], [Define for the CD-DA plugin using libcdio])
- VLC_ADD_LDFLAGS([cddax],[$LIBCDIO_LIBS])
- VLC_ADD_CFLAGS([cddax],[$LIBCDIO_CFLAGS])
- VLC_ADD_PLUGINS([cddax])],
- [AC_MSG_WARN(libcdio library not found)
- HAVE_CDDAX=no])
- if test "$enable_libcddb" != "no"; then
- PKG_CHECK_MODULES(LIBCDDB, libcddb >= 0.9.4, [
- HAVE_LIBCDDB=yes
- AC_DEFINE(HAVE_LIBCDDB, [], [Define this if you have libcddb installed])
- VLC_ADD_LDFLAGS([cddax],[$LIBCDDB_LIBS])
- VLC_ADD_CFLAGS([cddax],[$LIBCDDB_CFLAGS])
- ],
- [AC_MSG_WARN(new enough libcddb not found. CDDB access disabled)
- HAVE_LIBCDDB=no])
- fi
-
- dnl if test "${enable_vcdx}" != "no"
- dnl then
- dnl PKG_CHECK_MODULES(VCDINFO, libvcdinfo >= 0.7.20,
- dnl [enable_vcd="no"
- dnl AC_DEFINE(HAVE_VCDX, [],
- dnl [Define for the VCD plugin using libcdio/libvcdinfo])
- dnl VLC_ADD_LDFLAGS([vcdx],[$VCDINFO_LIBS])
- dnl VLC_ADD_CFLAGS([vcdx],[$VCDINFO_CFLAGS])
- dnl VLC_ADD_PLUGINS([vcdx])],
- dnl [AC_MSG_WARN(vcdinfo library not found)
- dnl HAVE_VCDX=no])
- dnl fi
- fi
- dnl
- dnl VCD module
- dnl
- AC_ARG_ENABLE(vcd,
- [ --enable-vcd VCD support for Linux, FreeBSD, MacOS X and Win32 (default enabled)])
- if test "${enable_vcd}" != "no"
- then
- AC_MSG_CHECKING(for cdrom_msf0 in linux/cdrom.h)
- AC_EGREP_HEADER(cdrom_msf0,linux/cdrom.h,[
- AC_MSG_RESULT(yes)
- VLC_ADD_PLUGINS([vcd cdda])
- ],[
- AC_MSG_RESULT(no)
- ])
- AC_MSG_CHECKING(for scsireq in sys/scsiio.h)
- AC_EGREP_HEADER(scsireq,sys/scsiio.h,[
- AC_MSG_RESULT(yes)
- VLC_ADD_PLUGINS([vcd cdda])
- AC_DEFINE(HAVE_SCSIREQ_IN_SYS_SCSIIO_H, 1, For NetBSD VCD support)
- ],[
- AC_MSG_RESULT(no)
- ])
- AC_MSG_CHECKING(for ioc_toc_header in sys/cdio.h)
- AC_EGREP_HEADER(ioc_toc_header ,sys/cdio.h,[
- AC_MSG_RESULT(yes)
- VLC_ADD_PLUGINS([vcd cdda])
- AC_DEFINE(HAVE_IOC_TOC_HEADER_IN_SYS_CDIO_H, 1, For FreeBSD VCD support)
- ],[
- AC_MSG_RESULT(no)
- ])
- if test "${SYS}" = "bsdi" -o "${SYS}" = "mingw32"
- then
- VLC_ADD_PLUGINS([vcd cdda])
- fi
- if test "${SYS}" = "darwin"
- then
- VLC_ADD_PLUGINS([vcd cdda])
- VLC_ADD_LDFLAGS([vcd vcdx cdda],[-framework IOKit -framework CoreFoundation])
- fi
- fi
- dnl
- dnl Satellite input module
- dnl
- AC_ARG_ENABLE(satellite,
- [ --enable-satellite satellite card support (default disabled)],
- [ if test "${enable_satellite}" = "yes"
- then
- AC_DEFINE(HAVE_SATELLITE, [],
- [Define for the VCD plugin using libcdio/libvcdinfo])
- VLC_ADD_PLUGINS([satellite])
- fi])
- dnl
- dnl DVB-S/DVB-T/DVB-C satellite/teresterial/cable input using v4l2
- dnl
- AC_ARG_ENABLE(dvb,
- [ --enable-dvb DVB-S/T/C card support (default disabled)])
- if test "${enable_dvb}" = "yes"
- 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_PLUGINS([dvb])
- ],[])
- CPPFLAGS="${CPPFLAGS_save}"
- fi
- dnl
- dnl Screen capture module
- dnl
- AC_ARG_ENABLE(screen,
- [ --enable-screen Screen capture support (default enabled)])
- if test "${enable_screen}" != "no"; then
- if test "${SYS}" = "darwin"; then
- AC_CHECK_HEADERS(ApplicationServices/ApplicationServices.h, [
- VLC_ADD_PLUGINS([screen])
- VLC_ADD_LDFLAGS([screen],[-framework ApplicationServices])
- ])
- elif test "${SYS}" = "mingw32"; then
- VLC_ADD_PLUGINS([screen])
- VLC_ADD_LDFLAGS([screen],[-lgdi32])
- elif test "${SYS}" = "beos"; then
- VLC_ADD_PLUGINS([screen])
- VLC_ADD_CXXFLAGS([screen],[])
- VLC_ADD_LDFLAGS([screen],[-lbe])
- else
- CPPFLAGS="${CPPFLAGS_save} -I${x_includes}"
- AC_CHECK_HEADERS(X11/Xlib.h, [
- VLC_ADD_PLUGINS([screen])
- VLC_ADD_LDFLAGS([screen],[-L${x_libraries} -lX11 -lXext])
- VLC_ADD_CPPFLAGS([screen],[-I${x_includes}])
- ])
- CPPFLAGS="${CPPFLAGS_save}"
- fi
- fi
- dnl
- dnl ipv6 plugin - not for QNX yet
- dnl
- if test "${SYS}" != "nto" && test "${SYS}" != "mingw32"
- then
- have_ipv6=false
- AC_CHECK_FUNCS(inet_pton,[have_ipv6=:],[
- AC_CHECK_LIB(resolv,inet_pton,
- [have_ipv6=:
- VLC_ADD_LDFLAGS([ipv6],[-lresolv])])
- ])
- AC_MSG_CHECKING(for sockaddr_in6 in netinet/in.h)
- AC_EGREP_HEADER(sockaddr_in6,netinet/in.h,
- [AC_MSG_RESULT(yes)], [AC_MSG_RESULT(no) have_ipv6=false])
- if ${have_ipv6}; then
- VLC_ADD_PLUGINS([ipv6])
- fi
- fi
- if test "${SYS}" = "mingw32"
- then
- AC_MSG_CHECKING(for getaddrinfo in ws2tcpip.h)
- AC_EGREP_HEADER(addrinfo,ws2tcpip.h,[AC_MSG_RESULT(yes)
- VLC_ADD_PLUGINS([ipv6])],[AC_MSG_RESULT(no)])
- fi
- dnl
- dnl ogg demux plugin
- dnl
- 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, [
- VLC_ADD_PLUGINS([ogg mux_ogg])
- VLC_ADD_LDFLAGS([ogg mux_ogg],[-logg])])
- ],[])
- fi
- dnl
- dnl matroska demux plugin
- dnl
- AC_ARG_ENABLE(mkv,
- [ --enable-mkv Matroska demux support (default enabled)])
- if test "${enable_mkv}" != "no"; then
- AC_LANG_PUSH(C++)
- AC_CHECK_HEADERS(ebml/EbmlVersion.h, [
- AC_CHECK_HEADERS(matroska/KaxVersion.h, [
- AC_CHECK_HEADERS(matroska/KaxAttachments.h)
- VLC_ADD_CXXFLAGS([mkv],[])
- AC_CHECK_LIB(ebml_pic, main, [
- # We have ebml_pic, that's good, we can build an mkv.so plugin !
- VLC_ADD_PLUGINS([mkv])
- VLC_ADD_LDFLAGS([mkv],[-lmatroska_pic -lebml_pic])
- ], [
- AC_CHECK_LIB(ebml, main, [
- # We only have libebml, make mkv.a a builtin
- VLC_ADD_BUILTINS([mkv])
- VLC_ADD_LDFLAGS([mkv],[-lmatroska -lebml])
- ])
- ])
- ])
- ])
- AC_LANG_POP(C++)
- fi
- dnl
- dnl modplug demux plugin
- dnl
- 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])])
- fi
- dnl
- dnl Codec plugins
- dnl
- AC_ARG_WITH(,[Codec plugins:])
- dnl
- dnl mad plugin
- dnl
- AC_ARG_ENABLE(mad,
- [ --enable-mad libmad module (default enabled)])
- if test "${enable_mad}" != "no"
- then
- AC_ARG_WITH(mad,
- [ --with-mad=PATH path to libmad],[],[])
- if test "${with_mad}" != "no" -a -n "${with_mad}"
- then
- VLC_ADD_CPPFLAGS([mpgatofixed32],[-I${with_mad}/include])
- VLC_ADD_LDFLAGS([mpgatofixed32],[-L${with_mad}/lib])
- fi
- AC_ARG_WITH(mad-tree,
- [ --with-mad-tree=PATH mad tree for static linking],[],[])
- if test "${with_mad_tree}" != "no" -a -n "${with_mad_tree}"
- then
- real_mad_tree="`cd ${with_mad_tree} 2>/dev/null && pwd`"
- if test -z "${real_mad_tree}"
- then
- dnl The given directory can't be found
- AC_MSG_RESULT(no)
- AC_MSG_ERROR([${with_mad_tree} directory doesn't exist])
- fi
- dnl Use a custom libmad
- AC_MSG_CHECKING(for mad.h in ${real_mad_tree})
- if test -f ${real_mad_tree}/mad.h
- then
- AC_MSG_RESULT(yes)
- VLC_ADD_CPPFLAGS([mpgatofixed32],[-I${real_mad_tree}])
- VLC_ADD_LDFLAGS([mpgatofixed32],[-L${real_mad_tree}/.libs])
- LDFLAGS="${LDFLAGS_save} ${LDFLAGS_mpgatofixed32}"
- AC_CHECK_LIB(mad, mad_bit_init, [
- VLC_ADD_BUILTINS([mpgatofixed32])
- VLC_ADD_LDFLAGS([mpgatofixed32],[-lmad])
- ],[ AC_MSG_ERROR([the specified tree hasn't been compiled ])
- ],[])
- LDFLAGS="${LDFLAGS_save}"
- else
- AC_MSG_RESULT(no)
- AC_MSG_ERROR([the specified tree doesn't have mad.h])
- fi
- else
- CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_mpgatofixed32}"
- LDFLAGS="${LDFLAGS_save} ${LDFLAGS_mpgatofixed32}"
- AC_CHECK_HEADERS(mad.h, ,
- [ AC_MSG_ERROR([Could not find libmad on your system: you may get it from http://www.underbit.com/products/mad/. Alternatively you can use --disable-mad to disable the mad plugin.]) ])
- AC_CHECK_LIB(mad, mad_bit_init, [
- VLC_ADD_PLUGINS([mpgatofixed32])
- VLC_ADD_LDFLAGS([mpgatofixed32],[-lmad])],
- [ AC_MSG_ERROR([Cannot find libmad library...]) ])
- CPPFLAGS="${CPPFLAGS_save}"
- LDFLAGS="${LDFLAGS_save}"
- fi
- fi
- dnl
- dnl libid3tag support (FIXME!!! doesn't work with new input)
- dnl
- AC_CHECK_HEADERS(id3tag.h, [
- AC_CHECK_HEADERS(zlib.h, [
- VLC_ADD_LDFLAGS([id3tag],[-lid3tag -lz])
- VLC_ADD_PLUGINS([id3tag])]) ])
- dnl
- dnl ffmpeg decoder/demuxer plugin
- dnl
- AC_ARG_ENABLE(ffmpeg,
- [ --enable-ffmpeg ffmpeg codec (default enabled)])
- if test "${enable_ffmpeg}" != "no"
- then
- FFMPEG_PATH="${PATH}"
- AC_ARG_WITH(ffmpeg-config-path,
- [ --with-ffmpeg-config-path=PATH ffmpeg-config path (default search in $PATH)],
- [ if test "${with_ffmpeg_config_path}" != "no"
- then
- FFMPEG_PATH="${with_ffmpeg_config_path}:${PATH}"
- fi ])
- AC_PATH_PROG(FFMPEG_CONFIG, ffmpeg-config, no, ${FFMPEG_PATH})
- if test "${FFMPEG_CONFIG}" != "no"
- then
- AC_CHECK_HEADERS(ffmpeg/avcodec.h)
- AC_CHECK_HEADERS(postproc/postprocess.h)
- VLC_ADD_PLUGINS([ffmpeg])
- VLC_ADD_CFLAGS([ffmpeg],[`${FFMPEG_CONFIG} --cflags`])
- VLC_ADD_LDFLAGS([ffmpeg],[`${FFMPEG_CONFIG} --plugin-libs avcodec avformat postproc`])
- else
- AC_ARG_WITH(ffmpeg-mp3lame,
- [ --with-ffmpeg-mp3lame if ffmpeg has been compiled with mp3lame support],
- [
- VLC_ADD_LDFLAGS([ffmpeg],[-lmp3lame]) ])
- AC_ARG_WITH(ffmpeg-faac,
- [ --with-ffmpeg-faac if ffmpeg has been compiled with faac support],
- [
- VLC_ADD_LDFLAGS([ffmpeg],[-lfaac]) ])
- AC_ARG_WITH(ffmpeg-dts,
- [ --with-ffmpeg-dts if ffmpeg has been compiled with dts support],
- [
- VLC_ADD_LDFLAGS([ffmpeg],[-ldts]) ])
- AC_ARG_WITH(ffmpeg-zlib,
- [ --with-ffmpeg-zlib if ffmpeg has been compiled with zlib support],
- [
- VLC_ADD_LDFLAGS([ffmpeg],[-lz]) ])
- AC_ARG_WITH(ffmpeg-tree,
- [ --with-ffmpeg-tree=PATH ffmpeg tree for static linking])
- dnl
- dnl test for !(--with-ffmpeg-tree)
- dnl
- if test "${with_ffmpeg_tree}" = "no" -o -z "${with_ffmpeg_tree}"; then
- CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_ffmpeg}"
- LDFLAGS="${LDFLAGS_save} ${LDFLAGS_ffmpeg}"
- AC_CHECK_HEADERS(ffmpeg/avcodec.h, [], [AC_MSG_ERROR([Missing header file ffmpeg/avcodec.h.])] )
- AC_CHECK_HEADERS(postproc/postprocess.h, [], [AC_MSG_ERROR([Missing header file postproc/postprocess.h.])] )
- AC_CHECK_LIB(avcodec, avcodec_init, [
- VLC_ADD_BUILTINS([ffmpeg])
- VLC_ADD_LDFLAGS([ffmpeg],[-lavcodec])],
- [ AC_MSG_ERROR([Could not find ffmpeg on your system: you may get it from http://ffmpeg.sf.net/ (cvs version is recommended). Alternatively you can use --disable-ffmpeg to disable the ffmpeg plugins.]) ])
- AC_CHECK_LIB(avformat, av_open_input_stream, [
- AC_DEFINE(HAVE_LIBAVFORMAT, 1,
- [Define if you have ffmpeg's libavformat.])
- VLC_ADD_LDFLAGS([ffmpeg],[-lavformat -lz]) ], [], [-lavcodec -lz])
- LDFLAGS="${LDFLAGS_save}"
- CPPFLAGS="${CPPFLAGS_save}"
- fi
- dnl
- dnl test for --with-ffmpeg-tree
- dnl
- if test "${with_ffmpeg_tree}" != "no" -a -n "${with_ffmpeg_tree}"; then
- AC_MSG_CHECKING(for libavcodec.a in ${with_ffmpeg_tree})
- real_ffmpeg_tree="`cd ${with_ffmpeg_tree} 2>/dev/null && pwd`"
- if test -z "${real_ffmpeg_tree}"; then
- dnl The given directory can't be found
- AC_MSG_RESULT(no)
- AC_MSG_ERROR([cannot cd to ${with_ffmpeg_tree}])
- fi
- if ! test -f "${real_ffmpeg_tree}/libavcodec/libavcodec.a"; then
- dnl The given libavcodec wasn't built
- AC_MSG_RESULT(no)
- AC_MSG_ERROR([cannot find ${real_ffmpeg_tree}/libavcodec/libavcodec.a, make sure you compiled libavcodec in ${with_ffmpeg_tree}])
- fi
- if ! fgrep -s "pp_get_context" "${real_ffmpeg_tree}/libavcodec/libavcodec.a"; then
- dnl The given libavcodec wasn't built with --enable-pp
- AC_MSG_RESULT(no)
- AC_MSG_ERROR([${real_ffmpeg_tree}/libavcodec/libavcodec.a was not compiled with postprocessing support, make sure you configured ffmpeg with --enable-pp])
- fi
- dnl Use a custom libffmpeg
- AC_MSG_RESULT(${real_ffmpeg_tree}/libavcodec/libavcodec.a)
- if fgrep -s "CONFIG_ZLIB=yes" "${real_ffmpeg_tree}/config.mak"; then
- if test "${with_ffmpeg_zlib}" != "yes"; then
- VLC_ADD_LDFLAGS([ffmpeg],[-lz])
- fi
- fi
- if fgrep -s "CONFIG_MP3LAME=yes" "${real_ffmpeg_tree}/config.mak"; then
- if test "${with_ffmpeg_mp3lame}" != "yes"; then
- VLC_ADD_LDFLAGS([ffmpeg],[-lmp3lame])
- fi
- fi
- if fgrep -s "CONFIG_FAAC=yes" "${real_ffmpeg_tree}/config.mak"; then
- if test "${with_ffmpeg_faac}" != "yes"; then
- VLC_ADD_LDFLAGS([ffmpeg],[-lfaac])
- fi
- 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])
- fi
- fi
- if fgrep -s "CONFIG_VORBIS=yes" "${real_ffmpeg_tree}/config.mak"; then
- VLC_ADD_LDFLAGS([ffmpeg],[-lvorbis -lvorbisenc])
- fi
- if fgrep -s "CONFIG_FAAD=yes" "${real_ffmpeg_tree}/config.mak"; then
- VLC_ADD_LDFLAGS([ffmpeg],[-lfaad])
- fi
- if fgrep -s "CONFIG_XVID=yes" "${real_ffmpeg_tree}/config.mak"; then
- VLC_ADD_LDFLAGS([ffmpeg],[-lxvidcore])
- fi
- VLC_ADD_BUILTINS([ffmpeg])
- VLC_ADD_LDFLAGS([ffmpeg],[-L${real_ffmpeg_tree}/libavcodec ${real_ffmpeg_tree}/libavcodec/libavcodec.a])
- VLC_ADD_CPPFLAGS([ffmpeg],[-I${real_ffmpeg_tree}/libavcodec])
- if test -f "${real_ffmpeg_tree}/libavformat/libavformat.a"; then
- AC_DEFINE(HAVE_LIBAVFORMAT, 1, [Define if you have ffmpeg's libavformat.])
- VLC_ADD_LDFLAGS([ffmpeg],[-L${real_ffmpeg_tree}/libavformat ${real_ffmpeg_tree}/libavformat/libavformat.a])
- VLC_ADD_CPPFLAGS([ffmpeg],[-I${real_ffmpeg_tree}/libavformat])
- fi
- fi
- fi
- fi
- dnl
- dnl ffmpeg decoder/demuxer plugin
- dnl
- AC_ARG_ENABLE(ffmpegaltivec,
- [ --enable-ffmpegaltivec ffmpegaltivec codec (DO NOT USE)])
- 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})
- real_ffmpeg_tree="`cd ${with_ffmpeg_tree} 2>/dev/null && pwd`"
- if test -z "${real_ffmpeg_tree}"; then
- dnl The given directory can't be found
- AC_MSG_RESULT(no)
- AC_MSG_ERROR([cannot cd to ${with_ffmpeg_tree}])
- fi
- if ! test -f "${real_ffmpeg_tree}/libavcodec/libavcodecaltivec.a"; then
- dnl The given libavcodecaltivec wasn't built
- AC_MSG_RESULT(no)
- AC_MSG_ERROR([cannot find ${real_ffmpeg_tree}/libavcodec/libavcodecaltivec.a, make sure you compiled libavcodecaltivec in ${with_ffmpeg_tree}])
- fi
- if ! fgrep -s "pp_get_context" "${real_ffmpeg_tree}/libavcodec/libavcodecaltivec.a"; then
- dnl The given libavcodecaltivec wasn't built with --enable-pp
- AC_MSG_RESULT(no)
- AC_MSG_ERROR([${real_ffmpeg_tree}/libavcodec/libavcodecaltivec.a was not compiled with postprocessing support, make sure you configured ffmpeg with --enable-pp])
- fi
- dnl Use a custom libffmpeg
- AC_MSG_RESULT(${real_ffmpeg_tree}/libavcodec/libavcodecaltivec.a)
- VLC_ADD_BUILTINS([ffmpegaltivec])
- VLC_ADD_LDFLAGS([ffmpegaltivec],[-L${real_ffmpeg_tree}/libavcodec -lavcodecaltivec])
- VLC_ADD_CPPFLAGS([ffmpeg],[-DNO_ALTIVEC_IN_FFMPEG])
- VLC_ADD_CPPFLAGS([ffmpegaltivec],[-I${real_ffmpeg_tree}/libavcodec -I${real_ffmpeg_tree}/libavformat])
- if test -f "${real_ffmpeg_tree}/libavformat/libavformat.a"; then
- AC_DEFINE(HAVE_LIBAVFORMAT, 1, [Define if you have ffmpeg's libavformat.])
- VLC_ADD_LDFLAGS([ffmpegaltivec],[-L${real_ffmpeg_tree}/libavformat -lavformataltivec -lz])
- VLC_ADD_CPPFLAGS([ffmpegaltivec],[-I${real_ffmpeg_tree}/libavformat])
- fi
- fi
- fi
- dnl
- dnl faad decoder plugin
- dnl
- AC_ARG_ENABLE(faad,
- [ --enable-faad faad codec (default disabled)])
- if test "${enable_faad}" = "yes"
- then
- AC_ARG_WITH(faad-tree,
- [ --with-faad-tree=PATH faad tree for static linking])
- if test -n "${with_faad_tree}"
- then
- AC_MSG_CHECKING(for libfaad.a in ${with_faad_tree})
- real_faad_tree="`cd ${with_faad_tree} 2>/dev/null && pwd`"
- if test -z "${real_faad_tree}"
- then
- dnl The given directory can't be found
- AC_MSG_RESULT(no)
- AC_MSG_ERROR([cannot cd to ${with_faad_tree}])
- fi
- if test -f "${real_faad_tree}/libfaad/.libs/libfaad.a"
- then
- dnl Use a custom faad
- AC_MSG_RESULT(${real_faad_tree}/libfaad/.libs/libfaad.a)
- VLC_ADD_BUILTINS([faad])
- VLC_ADD_LDFLAGS([faad],[${real_faad_tree}/libfaad/.libs/libfaad.a])
- VLC_ADD_CPPFLAGS([faad],[-I${real_faad_tree}/include])
- else
- dnl The given libfaad wasn't built
- AC_MSG_RESULT(no)
- AC_MSG_ERROR([cannot find ${real_faad_tree}/libfaad/.libs/libfaad.a, make sure you compiled libfaad in ${with_faad_tree}])
- fi
- else
- CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_faad}"
- LDFLAGS="${LDFLAGS_save} ${LDFLAGS_faad}"
- AC_CHECK_HEADERS(faad.h, ,
- [ AC_MSG_ERROR([Cannot find development headers for libfaad...]) ])
- AC_CHECK_LIB(faad, faacDecOpen, [
- VLC_ADD_PLUGINS([faad])
- VLC_ADD_LDFLAGS([faad],[-lfaad]) ],
- AC_CHECK_LIB(faad, NeAACDecOpen, [
- VLC_ADD_PLUGINS([faad])
- VLC_ADD_LDFLAGS([faad],[-lfaad]) ],
- [ AC_MSG_ERROR([Cannot find libfaad library...]) ]))
- LDFLAGS="${LDFLAGS_save}"
- CPPFLAGS="${CPPFLAGS_save}"
- fi
- fi
- dnl
- dnl toolame encoder plugin
- dnl
- AC_ARG_ENABLE(toolame,
- [ --enable-toolame toolame codec (default disabled)])
- if test "${enable_toolame}" = "yes"
- then
- AC_ARG_WITH(toolame-tree,
- [ --with-toolame-tree=PATH toolame tree for static linking])
- if test -n "${with_toolame_tree}"
- then
- AC_MSG_CHECKING(for libtoolame.a in ${with_toolame_tree})
- real_toolame_tree="`cd ${with_toolame_tree} 2>/dev/null && pwd`"
- if test -z "${real_toolame_tree}"
- then
- dnl The given directory can't be found
- AC_MSG_RESULT(no)
- AC_MSG_ERROR([cannot cd to ${with_toolame_tree}])
- fi
- if test -f "${real_toolame_tree}/libtoolame/libtoolame.a"
- then
- dnl Use a custom toolame
- AC_MSG_RESULT(${real_toolame_tree}/libtoolame/libtoolame.a)
- VLC_ADD_BUILTINS([toolame])
- VLC_ADD_LDFLAGS([toolame],[${real_faad_tree}/libtoolame/libtoolame.a])
- VLC_ADD_CPPFLAGS([toolame],[-I${real_toolame_tree}/libtoolame])
- else
- dnl The given libtoolame wasn't built
- AC_MSG_RESULT(no)
- AC_MSG_ERROR([cannot find ${real_toolame_tree}/libtoolame/libtoolame.a, make sure you compiled libtoolame in ${with_toolame_tree}])
- fi
- else
- CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_toolame}"
- LDFLAGS="${LDFLAGS_save} ${LDFLAGS_toolame}"
- AC_CHECK_HEADERS(toolame.h, ,
- [ AC_MSG_ERROR([Cannot find development header for libtoolame...]) ])
- AC_CHECK_LIB(toolame, toolame_init, [
- VLC_ADD_PLUGINS([toolame])
- VLC_ADD_LDFLAGS([toolame],[-ltoolame]) ],
- [ AC_MSG_ERROR([Cannot find libtoolame library...]) ])
- LDFLAGS="${LDFLAGS_save}"
- CPPFLAGS="${CPPFLAGS_save}"
- fi
- fi
- dnl dnl
- dnl dnl xvid decoder plugin
- dnl dnl
- dnl AC_ARG_ENABLE(xvid,
- dnl [ --enable-xvid xvid codec (default disabled)])
- dnl if test "${enable_xvid}" = "yes"
- dnl then
- dnl AC_ARG_WITH(xvid,
- dnl [ --with-xvid=PATH path to xvid installation],[],[])
- dnl if test "${with_xvid}" != "no" -a -n "${with_xvid}"
- dnl then
- dnl VLC_ADD_CPPFLAGS([xvid],[-I${with_xvid}/include])
- dnl VLC_ADD_LDFLAGS([xvid],[-L${with_xvid}/lib])
- dnl fi
- dnl
- dnl AC_ARG_WITH(xvid-tree,
- dnl [ --with-xvid-tree=PATH xvid tree for static linking])
- dnl if test -n "${with_xvid_tree}"
- dnl then
- dnl AC_MSG_CHECKING(for libxvidcore.a in ${with_xvid_tree})
- dnl real_xvid_tree="`cd ${with_xvid_tree} 2>/dev/null && pwd`"
- dnl if test -z "${real_xvid_tree}"
- dnl then
- dnl dnl The given directory can't be found
- dnl AC_MSG_RESULT(no)
- dnl AC_MSG_ERROR([cannot cd to ${with_xvid_tree}])
- dnl fi
- dnl if test -f "${real_xvid_tree}/build/generic/libxvidcore.a"
- dnl then
- dnl dnl Use a custom xvid
- dnl AC_MSG_RESULT(${real_xvid_tree}/build/generic/libxvidcore.a)
- dnl VLC_ADD_BUILTINS([xvid])
- dnl VLC_ADD_LDFLAGS([xvid],[-L${real_xvid_tree}/build/generic -lxvidcore])
- dnl VLC_ADD_CPPFLAGS([xvid],[-I${real_xvid_tree}/src])