1 dnl Autoconf settings for vlc
9 CONFIGURE_LINE="`echo "$0 $ac_configure_args" | sed -e 's/\\\/\\\\\\\/g'`"
11 COPYRIGHT_YEARS="1996-2008"
14 AC_CONFIG_SRCDIR(src/libvlc.c)
15 AC_CONFIG_AUX_DIR(autotools)
19 AM_INIT_AUTOMAKE(tar-ustar)
20 AM_CONFIG_HEADER(config.h)
22 dnl Too many people are not aware of maintainer mode:
23 dnl If you want to use it, you definitely know what you are doing, so
24 dnl you can specify "--disable-maintainer-mode". But if you want the default
25 dnl automake behavior, you've likely never heard of maintainer mode, so we
26 dnl can't expect you to enable it manually.
28 AS_IF([test "x${enable_maintainer_mode}" != "xno"],
29 [enable_maintainer_mode="yes"])
33 dnl Deprecated options
34 dnl to notify packagers that stuff has changed
36 AC_ARG_ENABLE(python-bindings,
37 [ --enable-python-bindings Always fails for historical reasons)],,
38 [enable_python_bindings="no"])
39 AS_IF([test "${enable_python_bindings}" != "no"], [
40 AC_MSG_ERROR([Python bindings are now built from a separate source package])
43 AC_ARG_ENABLE(java-bindings,
44 [ --enable-java-bindings Always fails for historical reasons],,
45 [enable_java_bindings="no"])
46 AS_IF([test "${enable_java_bindings}" != "no"], [
47 AC_MSG_ERROR([Java bindings are now built from a separate source package])
59 AC_USE_SYSTEM_EXTENSIONS
60 AC_DEFINE([_FORTIFY_SOURCE], 2, [Define to `2' to get glibc warnings.])
65 _AM_DEPENDENCIES([OBJC])
71 dnl Find the right ranlib, even when cross-compiling
72 AC_CHECK_TOOL(RANLIB, ranlib, :)
73 AC_CHECK_TOOL(STRIP, strip, :)
74 AC_CHECK_TOOL(AR, ar, :)
75 AC_CHECK_TOOL(LD, ld, :)
76 AC_CHECK_TOOL(DLLTOOL, dlltool, :)
78 dnl Check for compiler properties
84 dnl Check for the contrib directory
87 [ --without-contrib do not use the libraries in extras/contrib],[],[])
88 if test "${with_contrib}" != "no"; then
89 AC_MSG_CHECKING([for libs in extras/contrib])
91 if test "`echo \"$topdir\" | cut -c 1`" != "/"; then
92 topdir="`pwd`/$topdir"
94 if test "`grep HOST ${topdir}/extras/contrib/config.mak 2>/dev/null|awk '{print $3}'`" != "`$CC -dumpmachine`"; then
95 if test "${with_contrib}" = "yes"; then
97 AC_MSG_ERROR([ not using the libs in extras/contrib as it is not the same host])
100 AC_MSG_WARN([ not using the libs in extras/contrib as it is not the same host])
103 if test -d ${topdir}/extras/contrib/lib; then
105 export PATH=${topdir}/extras/contrib/bin:$PATH
106 CPPFLAGS="${CPPFLAGS} -I${topdir}/extras/contrib/include"
107 CPPFLAGS_save="${CPPFLAGS_save} -I${topdir}/extras/contrib/include"
108 CFLAGS="${CFLAGS} -I${topdir}/extras/contrib/include"
109 CFLAGS_save="${CFLAGS_save} -I${topdir}/extras/contrib/include"
110 CXXFLAGS="${CXXFLAGS} -I${topdir}/extras/contrib/include"
111 CXXFLAGS_save="${CXXFLAGS_save} -I${topdir}/extras/contrib/include"
112 OBJCFLAGS="${OBJCFLAGS} -I${topdir}/extras/contrib/include"
113 OBJCFLAGS_save="${OBJCFLAGS_save} -I${topdir}/extras/contrib/include"
114 if test $build = $host -o "$PKG_CONFIG_LIBDIR"; then
115 export PKG_CONFIG_PATH=${topdir}/extras/contrib/lib/pkgconfig:$PKG_CONFIG_PATH
117 export PKG_CONFIG_LIBDIR=${topdir}/extras/contrib/lib/pkgconfig
119 LDFLAGS="${LDFLAGS} -L${topdir}/extras/contrib/lib"
120 LDFLAGS_save="${LDFLAGS_save} -L${topdir}/extras/contrib/lib"
122 if test -z $with_live555_tree; then
123 with_live555_tree=${topdir}/extras/contrib/src/live
125 if test -z $with_goom_tree; then
126 with_goom_tree=${topdir}/extras/contrib/src/goom
128 if test -z $with_mozilla_sdk_path; then
129 with_mozilla_sdk_path=${topdir}/extras/contrib/gecko-sdk
131 if test -z $with_cyberlink_tree; then
132 with_cyberlink_tree=${topdir}/extras/contrib/src/clinkcc
134 if test -z $with_libmpeg2_tree; then
135 with_libmpeg2_tree=${topdir}/extras/contrib/src/mpeg2dec
137 if test -z $with_a52_tree; then
138 with_a52_tree=${topdir}/extras/contrib/src/a52dec
141 if test ".`uname -s`" = ".Darwin"; then
142 export LD_LIBRARY_PATH=${topdir}/extras/contrib/lib:$LD_LIBRARY_PATH
143 export DYLD_LIBRARY_PATH=${topdir}/extras/contrib/lib:$DYLD_LIBRARY_PATH
144 elif test ".`uname -s`" = ".BeOS"; then
145 export LIBRARY_PATH=${topdir}/extras/contrib/lib:$LIBRARY_PATH
146 export BELIBRARIES=${topdir}/extras/contrib/lib:$BELIBRARIES
154 dnl Set default values
156 LDFLAGS_vlc="${LDFLAGS}"
159 dnl Check the operating system
170 CFLAGS_save="${CFLAGS_save} -pthread"; CFLAGS="${CFLAGS_save}"
171 VLC_ADD_LIBS([dvd dvdcss vcd cdda vcdx cddax],[-ldvd])
175 CFLAGS_save="${CFLAGS_save} -pthread"; CFLAGS="${CFLAGS_save}"
178 CPPFLAGS_save="${CPPFLAGS_save} -I/usr/local/include"
179 CPPFLAGS="${CPPFLAGS_save}"
180 LDFLAGS_save="${LDFLAGS_save} -L/usr/local/lib"
181 LDFLAGS="${LDFLAGS_save}"
187 CFLAGS_save="${CFLAGS_save} -D_INTL_REDIRECT_MACROS"; CFLAGS="${CFLAGS_save}"
188 CXXFLAGS_save="${CXXFLAGS_save} -D_INTL_REDIRECT_MACROS"; CXXFLAGS="${CXXFLAGS_save}"
189 OBJCFLAGS_save="${OBJCFLAGS_save} -D_INTL_REDIRECT_MACROS -std=gnu99"; OBJCFLAGS="${OBJCFLAGS_save}"
190 LDFLAGS_save="${LDFLAGS_save} -Wl,-headerpad_max_install_names"; LDFLAGS="${LDFLAGS_save}"
191 VLC_ADD_LDFLAGS([mp4], [-Wl,-framework,IOKit,-framework,CoreFoundation])
192 VLC_ADD_LDFLAGS([mkv mp4], [-Wl,-framework,IOKit,-framework,CoreFoundation])
193 VLC_ADD_LDFLAGS([vlc],[-Wl,-undefined,dynamic_lookup])
194 VLC_ADD_LDFLAGS([libvlc_control],[-Wl,dynamic_lookup])
195 VLC_ADD_LDFLAGS([ffmpeg i420_rgb_mmx x264],[-Wl,-read_only_relocs,suppress])
196 VLC_ADD_CFLAGS([motion],[-fconstant-cfstrings])
197 VLC_ADD_LDFLAGS([libvlc],[-Wl,-framework,Cocoa,-framework,CoreFoundation])
198 VLC_ADD_LDFLAGS([motion],[-Wl,-framework,IOKit,-framework,CoreFoundation])
199 AC_ARG_ENABLE(macosx-defaults,
200 [ --enable-macosx-defaults Build the default configuration on Mac OS X (default enabled)])
201 if test "x${enable_macosx_defaults}" != "xno"
204 echo "Building with Mac OS X defaults:"
205 with_macosx_version_min="10.4"
206 echo " Assuming --with-macosx-version-min=10.4"
208 echo " Assuming --prefix=${build_dir}/vlc_install_dir"
209 ac_default_prefix="${build_dir}/vlc_install_dir"
211 echo " Assuming --enable-macosx"
213 echo " Assuming --enable-faad"
215 echo " Assuming --enable-flac"
217 echo " Assuming --enable-theora"
219 echo " Assuming --enable-shout"
221 echo " Assuming --enable-cddax"
223 echo " Assuming --enable-vcdx"
225 echo " Assuming --enable-caca"
227 echo " Assuming --enable-goom"
229 echo " Assuming --enable-ncurses"
231 echo " Assuming --enable-twolame"
232 enable_realrtsp="yes"
233 echo " Assuming --enable-realrtsp"
236 echo " Assuming --disable-skins2"
238 echo " Assuming --disable-x11"
240 echo " Assuming --disable-glx"
242 echo " Assuming --disable-xvideo"
244 if test ".`uname -p`" = ".i386"; then
245 dnl Due to a ld(64) bug in 10.5 we cannot use our mmx code
246 dnl without hacking it a lot, we disable mmx and sse.
247 dnl (that bug is about ld being unable to handle
249 save_cflags="$CFLAGS"
250 CFLAGS="$CFLAGS -dynamiclib -single_module -read_only_relocs suppress"
252 [int a;], [asm("movq _a,%mm0\n");],
253 ac_ld_does_not_support_text_reloc=no,
254 ac_ld_does_not_support_text_reloc=yes)
255 CFLAGS="$save_cflags"
257 if test "x$ac_ld_does_not_support_text_reloc" = "xyes"; then
259 echo " Assuming --disable-mmx (due to a bug in ld)"
261 echo " Assuming --disable-sse (due to a bug in ld)"
265 dnl Check for Mac OS X SDK settings
267 AC_ARG_WITH(macosx-sdk,
268 [ --with-macosx-sdk=DIR compile using the SDK in DIR])
269 if test "${with_macosx_sdk}" != "" ; then
270 CC="${CC} -isysroot ${with_macosx_sdk}"
271 CXX="${CXX} -isysroot ${with_macosx_sdk}"
272 OBJC="${OBJC} -isysroot ${with_macosx_sdk}"
273 LD="${LD} -syslibroot ${with_macosx_sdk}"
275 AC_ARG_WITH(macosx-version-min,
276 [ --with-macosx-version-min=VERSION compile for MacOSX VERSION and above])
277 if test "${with_macosx_version_min}" != "" ; then
278 CC="${CC} -mmacosx-version-min=${with_macosx_version_min}"
279 CXX="${CXX} -mmacosx-version-min=${with_macosx_version_min}"
280 OBJC="${OBJC} -mmacosx-version-min=${with_macosx_version_min}"
281 LD="${LD} -macosx_version_min=${with_macosx_version_min}"
282 CFLAGS_save="${CFLAGS_save} -DMACOSX_DEPLOYMENT_TARGET=${with_macosx_version_min}"; CFLAGS="${CFLAGS_save}"
283 CXXFLAGS_save="${CXXFLAGS_save} -DMACOSX_DEPLOYMENT_TARGET=${with_macosx_version_min}"; CXXFLAGS="${CXXFLAGS_save}"
284 OBJCFLAGS_save="${OBJCFLAGS_save} -DMACOSX_DEPLOYMENT_TARGET=${with_macosx_version_min}"; OBJCFLAGS="${OBJCFLAGS_save}"
285 MACOSX_DEPLOYMENT_TARGET=${with_macosx_version_min}
286 export MACOSX_DEPLOYMENT_TARGET
289 *mingw32* | *cygwin* | *wince* | *mingwce* | *pe*)
290 AC_CHECK_TOOL(WINDRES, windres, :)
293 *wince* | *mingwce* | *mingw32ce* | *pe*)
300 dnl Check if we are using the mno-cygwin mode in which case we are
301 dnl actually dealing with a mingw32 compiler.
306 SYS=mingw32, SYS=cygwin)
310 if test "${SYS}" = "mingw32"; then
311 # add ws2_32 for closesocket, select, recv
312 VLC_ADD_LIBS([libvlc],[-lws2_32 -lnetapi32 -lwinmm])
313 VLC_ADD_LDFLAGS([vlc],[-mwindows])
314 VLC_ADD_LIBS([activex mozilla],[-lgdi32])
315 VLC_ADD_LIBS([cdda vcdx cddax sdl_image],[-lwinmm])
316 VLC_ADD_LIBS([access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp access_output_shout sap slp http stream_out_standard stream_out_rtp vod_rtsp access_realrtsp telnet rc netsync gnutls growl_udp flac ts audioscrobbler lua],[-lws2_32])
318 if test "${SYS}" = "mingwce"; then
319 # add ws2 for closesocket, select, recv
320 VLC_ADD_CPPFLAGS([libvlc vlc],[-Dmain(a,b)=maince(a,b)])
321 VLC_ADD_LDFLAGS([libvlc vlc],[-e WinMainCRTStartup])
322 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],[-lws2])
323 VLC_ADD_LIBS([libvlc],[-lmmtimer])
328 VLC_ADD_LIBS([x11 xvideo],[-lsocket])
332 # _POSIX_PTHREAD_SEMANTICS is needed to get the POSIX ctime_r
333 # Perhaps it is useful other places as well?
334 CFLAGS_save="${CFLAGS_save} -D_POSIX_PTHREAD_SEMANTICS"; CFLAGS="${CFLAGS_save}"
341 CFLAGS_save="${CFLAGS_save} -Wno-multichar"; CFLAGS="${CFLAGS_save}"
342 CXXFLAGS_save="${CXXFLAGS_save} -Wno-multichar"; CXXFLAGS="${CXXFLAGS_save}"
343 VLC_ADD_CXXFLAGS([beos],[])
344 VLC_ADD_LIBS([vlc libvlc logger],[-lbe])
345 VLC_ADD_LIBS([beos],[-lbe -lmedia -ltranslation -ltracker -lgame])
346 VLC_ADD_LIBS([dvdnav dvdread],[-ldl])
347 VLC_ADD_LIBS([access_file],[-lpoll])
348 LDFLAGS_save="${LDFLAGS_save} -lintl"; LDFLAGS="${LDFLAGS_save}"
350 if test -f /boot/beos/system/lib/libbind.so; then
351 VLC_ADD_LIBS([access_file access_ftp access_mms access_output_udp telnet netsync sap libvlc growl_udp],[-lbind -lsocket])
353 VLC_ADD_LIBS([access_file access_ftp access_mms access_output_udp telnet netsync sap libvlc growl_udp],[-lnet])
356 dnl Ugly check for Zeta
357 if test -f /boot/beos/system/lib/libzeta.so; then
358 VLC_ADD_LIBS([beos],[-lzeta])
365 AM_CONDITIONAL(HAVE_BEOS, test "${SYS}" = "beos")
366 AM_CONDITIONAL(HAVE_DARWIN, test "${SYS}" = "darwin")
367 AM_CONDITIONAL(HAVE_LINUX, [test "${SYS}" = "linux"])
368 AM_CONDITIONAL(HAVE_WIN32, test "${SYS}" = "mingw32")
369 AM_CONDITIONAL(HAVE_WINCE, test "${SYS}" = "mingwce")
372 dnl Sadly autoconf doesn't think about testing foo.exe when ask to test
373 dnl for program foo on win32
375 case "${build_os}" in
377 ac_executable_extensions=".exe"
385 dnl It's very bad, but our former custom system was worst
389 dnl override platform specific check for dependent libraries
390 dnl otherwise libtool linking of shared libraries will
391 dnl fail on anything other than pass_all.
392 AC_CACHE_VAL(lt_cv_deplibs_check_method,
393 [lt_cv_deplibs_check_method=pass_all])
396 AC_DISABLE_FAST_INSTALL
399 m4_undefine([AC_PROG_F77])
400 m4_defun([AC_PROG_F77],[])
403 m4_undefine([AC_DEPLIBS_CHECK_METHOD])
404 m4_defun([AC_DEPLIBS_CHECK_METHOD],[])
406 lt_cv_deplibs_check_method=pass_all
412 AM_GNU_GETTEXT_VERSION([0.17])
413 AM_GNU_GETTEXT([external])
414 VLC_ADD_LIBS([libvlc vlc], [${LTLIBINTL}])
420 AS_IF([test "$am_cv_func_iconv" != "yes"],
421 [AC_MSG_ERROR([libiconv is needed for VLC to work properly])])
422 VLC_ADD_CFLAGS([libvlc],[${INCICONV}])
423 VLC_ADD_LIBS([libvlc],[${LTLIBICONV}])
425 dnl Check for the need to include the mingwex lib for mingw32
426 if test "${SYS}" = "mingw32"
428 AC_CHECK_LIB(mingwex,opendir,
429 AC_CHECK_LIB(mingw32,opendir,,
430 [VLC_ADD_LIBS([libvlc gtk],[-lmingwex])])
434 dnl Check for fnative-struct or mms-bitfields support for mingw32
435 if test "${SYS}" = "mingw32"
437 AC_CACHE_CHECK([if \$CC accepts -mms-bitfields],
438 [ac_cv_c_mms_bitfields],
439 [CFLAGS="${CFLAGS_save} -mms-bitfields"
440 AC_TRY_COMPILE([],,ac_cv_c_mms_bitfields=yes, ac_cv_c_mms_bitfields=no)])
441 if test "${ac_cv_c_mms_bitfields}" != "no"; then
442 CFLAGS_save="${CFLAGS_save} -mms-bitfields";
443 CXXFLAGS_save="${CXXFLAGS_save} -mms-bitfields";
445 AC_CACHE_CHECK([if \$CC accepts -fnative-struct],
446 [ac_cv_c_fnative_struct],
447 [CFLAGS="${CFLAGS_save} -fnative-struct"
448 AC_TRY_COMPILE([],,ac_cv_c_fnative_struct=yes, ac_cv_c_fnative_struct=no)])
449 if test "${ac_cv_c_fnative_struct}" != "no"; then
450 CFLAGS_save="${CFLAGS_save} -fnative-struct";
451 CXXFLAGS_save="${CXXFLAGS_save} -fnative-struct";
455 CFLAGS="${CFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}"
458 dnl Check for fvtable-thunks support for mingw32
459 if test "${SYS}" = "mingw32" -a "${CXX}" != ""
462 AC_CACHE_CHECK([if \$CXX accepts -fvtable-thunks],
463 [ac_cv_cxx_fvtable_thunks],
464 [CXXFLAGS="${CXXFLAGS_save} -Wall -Werror -fvtable-thunks"
465 AC_TRY_COMPILE([],,ac_cv_cxx_fvtable_thunks=yes,
466 ac_cv_cxx_fvtable_thunks=no)])
467 if test "${ac_cv_cxx_fvtable_thunks}" = "yes"; then
468 CXXFLAGS_mingw32_special="-fvtable-thunks"
471 CXXFLAGS_save="${CXXFLAGS_save} ${CXXFLAGS_mingw32_special}"; CXXFLAGS="${CXXFLAGS_save}"
475 dnl Plugin compilation stuff
479 dnl The -DSYS_FOO flag
480 CPPFLAGS_save="${CPPFLAGS_save} -DSYS_`echo ${SYS} | sed -e 's/-.*//' | tr 'abcdefghijklmnopqrstuvwxyz.' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ_'`"; CPPFLAGS="${CPPFLAGS_save}"
482 dnl Check for system libs needed
485 dnl Check for usual libc functions
486 AC_CHECK_FUNCS([gettimeofday strtod strtol strtof strtoll strtoull strsep isatty vasprintf asprintf swab sigrelse getpwuid_r memalign posix_memalign if_nametoindex atoll getenv putenv setenv gmtime_r ctime_r localtime_r lrintf daemon scandir fork bsearch lstat strlcpy strdup strndup strnlen atof lldiv posix_fadvise posix_madvise uselocale])
487 AC_CHECK_FUNCS(strcasecmp,,[AC_CHECK_FUNCS(stricmp)])
488 AC_CHECK_FUNCS(strncasecmp,,[AC_CHECK_FUNCS(strnicmp)])
489 AC_CHECK_FUNCS(strcasestr,,[AC_CHECK_FUNCS(stristr)])
492 AH_BOTTOM([#include <vlc_fixups.h>])
494 AC_CHECK_FUNCS(mmap, [VLC_ADD_PLUGIN([access_mmap])])
496 dnl Check for setlocal and langinfo
497 AC_CHECK_FUNCS(setlocale)
498 AC_CHECK_HEADERS(langinfo.h)
499 AC_CHECK_FUNCS(nl_langinfo)
501 AC_CACHE_CHECK([for nl_langinfo and CODESET], ac_cv_langinfo_codeset,
502 [AC_TRY_LINK([#include <langinfo.h>],
503 [char* cs = nl_langinfo(CODESET);],
504 ac_cv_langinfo_codeset=yes,
505 ac_cv_langinfo_codeset=no)
507 if test ${ac_cv_langinfo_codeset} = yes; then
508 AC_DEFINE(HAVE_LANGINFO_CODESET, 1,
509 [Define if you have <langinfo.h> and nl_langinfo(CODESET).])
512 AC_CHECK_FUNCS(connect,,[
513 AC_CHECK_LIB(socket,connect,[
514 VLC_ADD_LIBS([libvlc cdda cddax],-lsocket)
515 LIBS_socket="-lsocket"
519 AC_CHECK_FUNCS(send,,[
520 AC_CHECK_LIB(socket,send,[
521 VLC_ADD_LIBS([access_http access_mms access_udp access_tcp access_ftp access_rtmp sap access_output_udp access_output_rtmp stream_out_standard growl_udp],[-lsocket])
525 AC_CHECK_FUNCS(gethostbyname,,[
526 AC_CHECK_LIB(nsl,gethostbyname,[
527 VLC_ADD_LIBS([cdda cddax libvlc],[-lnsl])
529 AC_CHECK_LIB(bind,gethostbyname,[
530 VLC_ADD_LIBS([access_mms],[-lbind])
535 AC_CHECK_HEADERS(zlib.h, [
536 VLC_ADD_LIBS([access_http],[-lz])
539 dnl Check for socklen_t
540 AH_TEMPLATE(socklen_t, [Define to `int' if <sys/socket.h> does not define.])
541 AC_CACHE_CHECK([for socklen_t in sys/socket.h],
542 ac_cv_type_socklen_t,
543 [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
544 [#include <sys/types.h>
546 # include <winsock2.h>
547 # include <ws2tcpip.h>
549 # include <sys/socket.h>
550 #endif]], [[socklen_t len; len = 0;]])],
551 ac_cv_type_socklen_t=yes,
552 ac_cv_type_socklen_t=no)])
553 AS_IF([test "$ac_cv_type_socklen_t" = no],
554 [AC_DEFINE(socklen_t, int)])
556 dnl Check for struct sockaddr_storage
557 AH_TEMPLATE(sockaddr_storage, [Define to `sockaddr' if <sys/socket.h> does not define.])
558 AH_TEMPLATE(ss_family, [Define to `sa_family' if <sys/socket.h> does not define.])
559 AC_CACHE_CHECK([for struct sockaddr_storage], ac_cv_struct_sockaddr_storage,
561 [#include <sys/types.h>
562 #if defined( UNDER_CE )
563 # include <winsock.h>
564 #elif defined( WIN32 )
565 # include <winsock2.h>
567 # include <sys/socket.h>
568 #endif], [struct sockaddr_storage addr;],
569 ac_cv_struct_sockaddr_storage=yes,
570 ac_cv_struct_sockaddr_storage=no)])
571 AS_IF([test "${ac_cv_struct_sockaddr_storage}" = no], [
572 AC_DEFINE(sockaddr_storage, sockaddr)
573 AC_DEFINE(ss_family, sa_family)
576 dnl getaddrinfo, getnameinfo and gai_strerror check
577 dnl -lnsl and -lsocket are needed on Solaris;
578 dnl we purposedly make the test fail on Windows
580 AH_TEMPLATE(HAVE_GETADDRINFO, [Define to 1 if you have the `getaddrinfo' function.])
581 AC_SEARCH_LIBS([getaddrinfo], [nsl], [AC_DEFINE(HAVE_GETADDRINFO)],, [${LIBS_socket}])
583 dnl NOTE: we assume getaddrinfo will be present if getnameinfo or gai_strerro
586 AC_CHECK_FUNCS([getnameinfo gai_strerror])
589 AH_TEMPLATE(HAVE_ADDRINFO, [Define to 1 if <netdb.h> defines `struct addrinfo'.])
590 AC_CHECK_TYPES([struct addrinfo],[AC_DEFINE(HAVE_ADDRINFO)],,
591 [#include <sys/types.h>
592 #if defined( WIN32 ) || defined( UNDER_CE )
593 # if defined(UNDER_CE) && defined(sockaddr_storage)
594 # undef sockaddr_storage
596 # include <winsock2.h>
597 # include <ws2tcpip.h>
602 dnl Check for va_copy
603 AC_CACHE_CHECK([for va_copy], ac_cv_c_va_copy,
605 [#include <stdarg.h>],
606 [va_list ap1, ap2; va_copy(ap1,ap2);],
607 [ac_cv_c_va_copy="yes"],
608 [ac_cv_c_va_copy="no"]))
609 if test "${ac_cv_c_va_copy}" = "yes"; then
610 AC_DEFINE(HAVE_VA_COPY, 1, [Define if <stdarg.h> defines va_copy.])
612 AC_CACHE_CHECK([for __va_copy], ac_cv_c___va_copy,
614 [#include <stdarg.h>],
615 [va_list ap1, ap2; __va_copy(ap1,ap2);],
616 [ac_cv_c___va_copy="yes"],
617 [ac_cv_c___va_copy="no"]))
618 if test "${ac_cv_c___va_copy}" = "yes"; then
619 AC_DEFINE(HAVE___VA_COPY, 1, [Define if <stdarg.h> defines __va_copy.])
622 AC_CHECK_FUNCS(inet_aton,,[
623 AC_CHECK_LIB(resolv,inet_aton,[
624 VLC_ADD_LIBS([libvlc],[-lresolv])
628 dnl Check for getopt (always use builtin one on win32)
629 if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"; then
633 AC_CHECK_FUNCS(getopt_long,[AC_DEFINE(HAVE_GETOPT_LONG,1,long getopt support)],
634 [ # FreeBSD has a gnugetopt library for this:
635 AC_CHECK_LIB([gnugetopt],[getopt_long],
636 [AC_DEFINE(HAVE_GETOPT_LONG,1,getopt support)
637 VLC_ADD_LIBS([libvlc],[-lgnugetopt])],
640 AM_CONDITIONAL(BUILD_GETOPT, ${need_getopt})
642 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
645 VLC_ADD_LIBS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom visual panoramix rotate noise grain],[-lm])
648 VLC_ADD_LIBS([ffmpeg ffmpegaltivec stream_out_transrate i420_rgb faad twolame equalizer spatializer param_eq libvlc vorbis freetype mod mpc dmo quicktime realaudio galaktos opengl],[-lm])
650 AC_CHECK_LIB(m,sqrt,[
651 VLC_ADD_LIBS([headphone_channel_mixer normvol speex mono colorthres extract],[-lm])
653 AC_CHECK_LIB(m,ceil,[
654 VLC_ADD_LIBS([mosaic],[-lm])
657 VLC_ADD_LIBS([gaussianblur],[-lm])
659 AC_CHECK_LIB(m,round,[
660 VLC_ADD_LIBS([dbus],[-lm])
662 AC_CHECK_LIB(mx,sqrtf,[
663 VLC_ADD_LIBS([x264],[-lmx])
665 fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
667 dnl Check for dynamic plugins
668 ac_cv_have_plugins=no
671 AC_CHECK_HEADERS(mach-o/dyld.h,
672 [AC_CHECK_FUNCS(NSLinkModule,
673 [AC_DEFINE(HAVE_DL_DYLD, 1, [Define if you have the Darwin dyld API])
674 ac_cv_have_plugins=yes])])
677 if test "${ac_cv_have_plugins}" = "no"; then
678 AC_CHECK_HEADERS(dl.h)
679 ac_cv_my_have_shl_load=no
680 AC_CHECK_FUNC(shl_load,
681 [ac_cv_my_have_shl_load=yes,
682 AC_CHECK_LIB(dld, shl_load,
683 [ac_cv_my_have_shl_load=yes
684 VLC_ADD_LIBS([libvlc],[-ldld])])])
685 if test "${ac_cv_my_have_shl_load}" = "yes"; then
686 AC_DEFINE(HAVE_DL_SHL_LOAD, 1, [Define if you have the shl_load API])
687 ac_cv_have_plugins=yes
692 if test "${ac_cv_have_plugins}" = "no"; then
693 AC_CHECK_LIB(dld, dld_link,
694 [VLC_ADD_LIBS([libvlc],[-ldld])
695 AC_DEFINE(HAVE_DL_DLD_LINK, 1, [Define if you have the GNU dld library])
696 ac_cv_have_plugins=yes])
700 if test "${ac_cv_have_plugins}" = "no"; then
701 if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"; then
702 AC_CHECK_LIB(kernel32, main,
703 [VLC_ADD_LIBS([libvlc],[-lkernel32])
704 AC_DEFINE(HAVE_DL_WINDOWS, 1, [Define if you have Windows' LoadLibrary])
705 ac_cv_have_plugins=yes])
710 if test "${ac_cv_have_plugins}" = "no"; then
711 if test "${SYS}" = "mingwce"; then
712 AC_DEFINE(HAVE_DL_WINDOWS, 1, [Define if you have Windows' LoadLibrary])
713 ac_cv_have_plugins=yes
718 if test "${ac_cv_have_plugins}" = "no"; then
719 AC_CHECK_HEADERS(image.h)
720 AC_CHECK_FUNCS(load_add_on,
721 [AC_DEFINE(HAVE_DL_BEOS, 1, [Define if you have the BeOS dl])
722 ac_cv_have_plugins=yes])
725 # Only test for dlopen() if the others didn't work
726 if test "${ac_cv_have_plugins}" = "no"; then
727 AC_CHECK_HEADERS(dlfcn.h sys/dl.h)
728 ac_cv_my_have_dlopen=no
729 AC_CHECK_FUNC(dlopen,
730 ac_cv_my_have_dlopen=yes,
731 AC_CHECK_LIB(dl, dlopen,
732 ac_cv_my_have_dlopen=yes
733 VLC_ADD_LIBS([libvlc realaudio],[-ldl]),
734 AC_CHECK_LIB(svld, dlopen,
735 ac_cv_my_have_dlopen=yes
736 VLC_ADD_LIBS([libvlc],[-lsvld]))))
737 if test "${ac_cv_my_have_dlopen}" = "yes"; then
738 AC_DEFINE(HAVE_DL_DLOPEN, 1, [Define if you have the dlopen API])
739 ac_cv_have_plugins=yes
743 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
744 dnl Check for pthreads - borrowed from XMMS
746 if test "${THREAD_LIB}" = "error"; then
747 AC_CHECK_LIB(pthread,main,THREAD_LIB="-lpthread")
749 if test "${THREAD_LIB}" = "error"; then
750 AC_CHECK_LIB(pthreads,main,THREAD_LIB="-lpthreads")
752 if test "${THREAD_LIB}" = "error"; then
753 AC_CHECK_LIB(c_r,main,THREAD_LIB="-lc_r")
755 if test "${THREAD_LIB}" = "error"; then
756 AC_CHECK_FUNCS(pthread_mutex_lock)
760 VLC_ADD_LIBS([libvlc plugin],[${THREAD_LIB}])
762 AC_CHECK_LIB(rt, clock_nanosleep, [
763 VLC_ADD_LIBS([libvlc],[-lrt])
764 AC_DEFINE(HAVE_CLOCK_NANOSLEEP, 1, [Define to 1 if you have clock_nanosleep.])
767 AC_CHECK_LIB(rt,sem_init, [VLC_ADD_LIBS([libvlc],[-lrt])])
771 AC_CHECK_FUNCS(nanosleep,have_nanosleep=:,[
772 AC_CHECK_LIB(rt,nanosleep,
773 [VLC_ADD_LIBS([libvlc],[-lrt]) have_nanosleep=:],
774 [AC_CHECK_LIB(posix4,nanosleep,
775 [VLC_ADD_LIBS([libvlc],[-lposix4]) have_nanosleep=:])]
778 if ${have_nanosleep}; then
779 AC_DEFINE(HAVE_NANOSLEEP, 1, [Define if nanosleep is available.])
781 fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
783 dnl Check for misc headers
784 AC_MSG_CHECKING(for strncasecmp in strings.h)
785 AC_EGREP_HEADER(strncasecmp,strings.h,[
787 AC_DEFINE(STRNCASECMP_IN_STRINGS_H, 1,
788 Define if <strings.h> defines strncasecmp.)],[
791 dnl Check for headers
792 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)
793 AC_CHECK_HEADERS(sys/sockio.h fcntl.h sys/types.h sys/time.h sys/times.h sys/ioctl.h sys/stat.h)
794 AC_CHECK_HEADERS([arpa/inet.h netinet/in.h netinet/udplite.h])
795 AC_CHECK_HEADERS([net/if.h], [], [],
797 #include <sys/socket.h>
799 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
800 AC_CHECK_HEADERS(machine/param.h sys/shm.h)
801 AC_CHECK_HEADERS([linux/version.h linux/dccp.h])
802 AC_CHECK_HEADERS(syslog.h)
803 fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
807 dnl LP64 adn LLP64 architectures had better define ssize_t by themselves...
808 AH_TEMPLATE(ssize_t, [Define to `int' if <stddef.h> does not define.])
809 AC_CHECK_TYPE(ssize_t,, [
810 AC_DEFINE(ssize_t, int)
813 dnl don't attemp to use poll on darwin, it can't poll a tty. select will do a better job.
814 if test "${SYS}" != "darwin"; then
815 AC_SEARCH_LIBS(poll, [poll], [AC_DEFINE(HAVE_POLL, 1, [Define to 1 if the OS is usabl... err, has poll().])])
820 AC_CHECK_HEADERS(dirent.h,,[need_dirent=:])
821 AM_CONDITIONAL(BUILD_DIRENT, ${need_dirent})
823 dnl Mac OS X and other OSes don't have declaration for nanosleep
824 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
825 AC_MSG_CHECKING(for nanosleep in time.h)
826 AC_EGREP_HEADER(nanosleep,time.h,[
828 AC_DEFINE(HAVE_DECL_NANOSLEEP, 1,
829 Define if <time.h> defines nanosleep.)
833 fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
835 dnl Make sure we have timespecs
836 AC_MSG_CHECKING(for timespec in sys/time.h)
837 AC_EGREP_HEADER(timespec,sys/time.h,[
839 AC_DEFINE(HAVE_STRUCT_TIMESPEC, 1,
840 Define if <sys/time.h> defines struct timespec.)
845 dnl Check for threads library
846 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
847 AC_CHECK_HEADERS(pthread.h kernel/scheduler.h kernel/OS.h)
848 fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
850 dnl Find where are the X headers and libraries
853 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.
855 PKG_PROG_PKG_CONFIG()
859 [ --enable-hal Linux HAL services discovery (default enabled)])
861 if test "${enable_hal}" != "no"
863 PKG_CHECK_MODULES(HAL, hal >= 0.5.0,
864 [ AC_DEFINE( HAVE_HAL_1, 1 , [Define if you have the new HAL library API])
865 AC_DEFINE( HAVE_HAL, 1, [Define if you have the HAL library] )
866 VLC_ADD_PLUGIN([hal])
867 VLC_ADD_PLUGIN([probe_hal])
868 VLC_ADD_LIBS([libvlc hal probe_hal],[$HAL_LIBS])
869 VLC_ADD_CFLAGS([libvlc hal probe_hal],[$HAL_CFLAGS])],
870 dnl No hal 0.5 Test for 0.2
871 [ PKG_CHECK_MODULES( HAL, hal >= 0.2.97,
872 [AC_DEFINE(HAVE_HAL, 1, [Define if you have the HAL library])
873 VLC_ADD_PLUGIN([hal])
874 VLC_ADD_LIBS([libvlc hal],[$HAL_LIBS])
875 VLC_ADD_CFLAGS([libvlc hal],[$HAL_CFLAGS])],
876 [AC_MSG_WARN(HAL library not found)])
883 [ --enable-dbus Linux D-BUS message bus system (default enabled)])
886 if test "${enable_dbus}" != "no"
889 PKG_CHECK_MODULES(DBUS, dbus-1 >= 1.0.0,
890 [ AC_DEFINE( HAVE_DBUS_3, 1, [Define if you have the D-BUS library API >= 1.0.0] )
891 AC_DEFINE( HAVE_DBUS_2, 1, [Define if you have the D-BUS library API >= 0.92] )
892 AC_DEFINE( HAVE_DBUS_1, 1, [Define if you have the D-BUS library API >= 0.30] )
893 AC_DEFINE( HAVE_DBUS, 1, [Define if you have the D-BUS library] )
894 VLC_ADD_LIBS([screensaver libvlc],[$DBUS_LIBS])
895 VLC_ADD_CFLAGS([screensaver libvlc],[$DBUS_CFLAGS])
896 dnl Check for dbus control interface
897 AC_ARG_ENABLE(dbus-control, [ --disable-dbus-control D-BUS control interface (default enabled)])
898 if test "${enable_dbus_control}" != "no"
900 VLC_ADD_PLUGIN([dbus])
901 VLC_ADD_LIBS([dbus],[$DBUS_LIBS])
902 VLC_ADD_CFLAGS([dbus],[$DBUS_CFLAGS])
904 dnl Check for Telepathy
905 AC_ARG_ENABLE(telepathy, [ --enable-telepathy Telepathy Presence plugin through DBus(default enabled)])
906 if test "${enable_telepathy}" != "no"; then
907 VLC_ADD_PLUGIN([telepathy])
908 VLC_ADD_LIBS([telepathy],[$DBUS_LIBS])
909 VLC_ADD_CFLAGS([telepathy],[$DBUS_CFLAGS])
911 dnl Power Management Inhibiter
912 VLC_ADD_PLUGIN([inhibit])
913 VLC_ADD_LIBS([inhibit],[$DBUS_LIBS])
914 VLC_ADD_CFLAGS([inhibit],[$DBUS_CFLAGS])
916 if ${PKG_CONFIG} --exists dbus-1
918 [AC_ARG_ENABLE(old-dbus,
919 [ --enable-old-dbus Deprecated D-Bus support (default disabled)])]
921 if test "${enable_old_dbus}" != "yes"
924 echo "****** WARNING **** WARNING ***** WARNING *************"
925 echo "*** Your D-Bus version is < 1.0.0"
926 echo "*** You are using old and buggy software and so"
927 echo "*** D-Bus support has been disabled."
928 echo "*** Please upgrade D-Bus : http://dbus.freedesktop.org"
929 echo "*** Alternatively you can force the use of your old and"
930 echo "*** buggy D-Bus version by specifying --enable-old-dbus"
931 echo "*******************************************************"
935 [ PKG_CHECK_MODULES(DBUS, dbus-1 >= 0.92,
936 [ AC_DEFINE( HAVE_DBUS_2, 1, [Define if you have the D-BUS library API >= 0.92] )
937 AC_DEFINE( HAVE_DBUS_1, 1, [Define if you have the D-BUS library API >= 0.30] )
938 AC_DEFINE( HAVE_DBUS, 1, [Define if you have the D-BUS library] )
939 VLC_ADD_LIBS([screensaver],[$DBUS_LIBS])
940 VLC_ADD_CFLAGS([screensaver],[$DBUS_CFLAGS])],
942 [ PKG_CHECK_MODULES(DBUS, dbus-1 >= 0.30,
943 [ AC_DEFINE( HAVE_DBUS_1, 1, [Define if you have the D-BUS library API >= 0.30 ] )
944 AC_DEFINE( HAVE_DBUS, 1, [Define if you have the D-BUS library] )
945 VLC_ADD_LIBS([screensaver],[$DBUS_LIBS])
946 VLC_ADD_CFLAGS([screensaver],[$DBUS_CFLAGS])],
948 [ PKG_CHECK_MODULES( DBUS, dbus-1,
949 [AC_DEFINE(HAVE_DBUS, 1, [Define if you have the D-BUS library])
950 VLC_ADD_LIBS([screensaver],[$DBUS_LIBS])
951 VLC_ADD_CFLAGS([screensaver],[$DBUS_CFLAGS])],
952 [AC_MSG_WARN(DBUS library not found)])
963 dnl Build the gtk_main plugins?
969 dnl build the qte plugin ?
972 dnl Check for ntohl, etc.
973 AC_CACHE_CHECK([for ntohl in sys/param.h],
974 [ac_cv_c_ntohl_sys_param_h],
975 [CFLAGS="${CFLAGS_save} -Wall -Werror"
976 AC_TRY_COMPILE([#include <sys/param.h>],
977 [int meuh; ntohl(meuh);],
978 ac_cv_c_ntohl_sys_param_h=yes, ac_cv_c_ntohl_sys_param_h=no)])
979 if test "${ac_cv_c_ntohl_sys_param_h}" != "no"; then
980 AC_DEFINE(NTOHL_IN_SYS_PARAM_H, 1, Define if <sys/param.h> defines ntohl.)
982 CFLAGS="${CFLAGS_save}"
984 RDC_PROG_CC_WFLAGS([all extra sign-compare undef pointer-arith bad-function-cast cast-align write-strings missing-prototypes volatile-register-var])
985 RDC_PROG_CC_FLAGS_IFELSE([-pipe])
987 dnl Check for various optimization flags
988 AC_CACHE_CHECK([if \$CC accepts -Os],
990 [CFLAGS="${CFLAGS_save} -Os"
991 AC_TRY_COMPILE([],,ac_cv_c_os=yes, ac_cv_c_os=no)])
992 if test "${ac_cv_c_os}" != "no"; then
993 CFLAGS_OPTIM_SIZE="${CFLAGS_OPTIM_SIZE} -Os"
995 AC_CACHE_CHECK([if \$CC accepts -O],
997 [CFLAGS="${CFLAGS_save} -O"
998 AC_TRY_COMPILE([],,ac_cv_c_o=yes, ac_cv_c_o=no)])
999 if test "${ac_cv_c_o}" != "no"; then
1000 if test "${ac_cv_c_o3}" = "no"; then
1001 CFLAGS_OPTIM_SIZE="${CFLAGS_OPTIM_SIZE} -O"
1006 AC_CACHE_CHECK([if \$CC accepts -O3],
1008 [CFLAGS="${CFLAGS_save} -O3"
1009 AC_TRY_COMPILE([],,ac_cv_c_o3=yes, ac_cv_c_o3=no)])
1010 if test "${ac_cv_c_o3}" != "no" -a "x${enable_debug}" = "xno"; then
1011 CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -O3"
1013 AC_CACHE_CHECK([if \$CC accepts -O2],
1015 [CFLAGS="${CFLAGS_save} -O2"
1016 AC_TRY_COMPILE([],,ac_cv_c_o2=yes, ac_cv_c_o2=no)])
1017 if test "${ac_cv_c_o2}" != "no"; then
1018 CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -O2"
1020 AC_CACHE_CHECK([if \$CC accepts -O],
1022 [CFLAGS="${CFLAGS_save} -O"
1023 AC_TRY_COMPILE([],,ac_cv_c_o=yes, ac_cv_c_o=no)])
1024 if test "${ac_cv_c_o}" != "no"; then
1025 CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -O"
1030 AC_CACHE_CHECK([if \$CC accepts -O0],
1032 [CFLAGS="${CFLAGS_save} -O0"
1033 AC_TRY_COMPILE([],,ac_cv_c_o0=yes, ac_cv_c_o0=no)])
1034 if test "${ac_cv_c_o0}" != "no"; then
1035 CFLAGS_NOOPTIM="${CFLAGS_NOOPTIM} -O0"
1038 dnl Check for -ffast-math
1039 AC_CACHE_CHECK([if \$CC accepts -ffast-math],
1040 [ac_cv_c_fast_math],
1041 [CFLAGS="${CFLAGS_save} -ffast-math"
1042 AC_TRY_COMPILE([],,ac_cv_c_fast_math=yes, ac_cv_c_fast_math=no)])
1043 if test "${ac_cv_c_fast_math}" != "no"; then
1044 CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -ffast-math"
1047 dnl Check for -funroll-loops
1048 dnl Disabled on BeOS because BeOS' gcc is buggy and may crash with it
1049 if test "${SYS}" != "beos"
1051 AC_CACHE_CHECK([if \$CC accepts -funroll-loops],
1052 [ac_cv_c_unroll_loops],
1053 [CFLAGS="${CFLAGS_save} -funroll-loops"
1054 AC_TRY_COMPILE([],,ac_cv_c_unroll_loops=yes, ac_cv_c_unroll_loops=no)])
1055 if test "${ac_cv_c_unroll_loops}" != "no"; then
1056 CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -funroll-loops"
1060 dnl Check for -fomit-frame-pointer
1061 AC_CACHE_CHECK([if \$CC accepts -fomit-frame-pointer],
1062 [ac_cv_c_omit_frame_pointer],
1063 [CFLAGS="${CFLAGS_save} -fomit-frame-pointer"
1064 AC_TRY_COMPILE([],,ac_cv_c_omit_frame_pointer=yes, ac_cv_c_omit_frame_pointer=no)])
1065 if test "${ac_cv_c_omit_frame_pointer}" != "no"; then
1066 CFLAGS_OPTIM_NODEBUG="${CFLAGS_OPTIM_NODEBUG} -fomit-frame-pointer"
1069 dnl Check for -mdynamic-no-pic
1070 dnl AC_CACHE_CHECK([if \$CC accepts -mdynamic-no-pic],
1071 dnl [ac_cv_c_dynamic_no_pic],
1072 dnl [CFLAGS="${CFLAGS_save} -mdynamic-no-pic"
1073 dnl AC_TRY_COMPILE([],,ac_cv_c_dynamic_no_pic=yes, ac_cv_c_dynamic_no_pic=no)])
1074 dnl AS_IF([test "${ac_cv_c_dynamic_no_pic}" != "no"], [
1075 dnl VLC_ADD_CFLAGS([builtin],[-mdynamic-no-pic])
1076 dnl VLC_ADD_CFLAGS([libvlc],[-mdynamic-no-pic])
1079 dnl Check for Darwin plugin linking flags
1080 AC_CACHE_CHECK([if \$CC accepts -bundle -undefined error],
1082 [CFLAGS="${CFLAGS_save} -bundle -undefined error"
1083 AC_TRY_COMPILE([],,ac_cv_ld_darwin=yes, ac_cv_ld_darwin=no)])
1084 if test "${ac_cv_ld_darwin}" != "no"; then
1085 VLC_ADD_LDFLAGS([plugin],[-bundle -undefined error])
1088 dnl Check for standard plugin linking flags
1089 dnl BeOS' gcc needs -nostart instead of -shared, even if -shared isn't harmful (just a warning)
1090 dnl AS_IF([test "${SYS}" = "beos"], [
1091 dnl VLC_ADD_LDFLAGS([plugin mozilla],[-nostart])
1093 dnl AC_CACHE_CHECK([if \$CC accepts -shared],
1094 dnl [ac_cv_ld_plugins],
1095 dnl [CFLAGS="${CFLAGS_save} -shared"
1096 dnl AC_TRY_COMPILE([],, ac_cv_ld_plugins=yes, ac_cv_ld_plugins=no)])
1097 dnl AS_IF([test "${ac_cv_ld_plugins}" != "no"], [
1098 dnl VLC_ADD_LDFLAGS([plugin mozilla],[-shared])
1102 dnl Checks for __attribute__(aligned()) directive
1103 AC_CACHE_CHECK([__attribute__ ((aligned ())) support],
1104 [ac_cv_c_attribute_aligned],
1105 [ac_cv_c_attribute_aligned=0
1106 CFLAGS="${CFLAGS_save} -Werror"
1107 for ac_cv_c_attr_align_try in 2 4 8 16 32 64; do
1109 [static char c __attribute__ ((aligned(${ac_cv_c_attr_align_try}))) = 0; return c;],
1110 [ac_cv_c_attribute_aligned="${ac_cv_c_attr_align_try}"])
1112 CFLAGS="${CFLAGS_save}"])
1113 if test "${ac_cv_c_attribute_aligned}" != "0"; then
1114 AC_DEFINE_UNQUOTED([ATTRIBUTE_ALIGNED_MAX],
1115 [${ac_cv_c_attribute_aligned}],[Maximum supported data alignment])
1118 dnl Check for __attribute__((packed))
1119 AC_CACHE_CHECK([for __attribute__((packed))],
1120 [ac_cv_c_attribute_packed],
1121 [ac_cv_c_attribute_packed=no
1122 AC_TRY_COMPILE(, [struct __attribute__((__packed__)) foo { int a; } b;],
1123 [ac_cv_c_attribute_packed=yes])])
1124 if test "${ac_cv_c_attribute_packed}" != "no"; then
1125 AC_DEFINE(HAVE_ATTRIBUTE_PACKED, 1, Support for __attribute__((packed)) for structs)
1131 case "${host_cpu}" in
1141 dnl Enable profiling
1143 AC_ARG_ENABLE(gprof,
1144 [ --enable-gprof gprof profiling (default disabled)])
1145 AC_ARG_ENABLE(cprof,
1146 [ --enable-cprof cprof profiling (default disabled)])
1147 test "${enable_gprof}" != "yes" && enable_gprof="no"
1148 test "${enable_cprof}" != "yes" && enable_cprof="no"
1153 VLC_ADD_PLUGIN([dummy])
1154 VLC_ADD_PLUGIN([logger])
1155 VLC_ADD_PLUGIN([memcpy])
1157 VLC_ADD_PLUGIN([mpgv])
1158 VLC_ADD_PLUGIN([mpga])
1159 VLC_ADD_PLUGIN([m4v])
1160 VLC_ADD_PLUGIN([m4a])
1161 VLC_ADD_PLUGIN([h264])
1162 VLC_ADD_PLUGIN([vc1])
1163 VLC_ADD_PLUGIN([demux_cdg])
1164 VLC_ADD_PLUGIN([cdg])
1165 VLC_ADD_PLUGIN([ps])
1166 VLC_ADD_PLUGIN([pva])
1167 VLC_ADD_PLUGIN([avi])
1168 VLC_ADD_PLUGIN([asf])
1169 VLC_ADD_PLUGIN([mp4])
1170 VLC_ADD_PLUGIN([rawdv])
1171 VLC_ADD_PLUGIN([rawvid])
1172 VLC_ADD_PLUGIN([nsv])
1173 VLC_ADD_PLUGIN([real])
1174 VLC_ADD_PLUGIN([aiff])
1175 VLC_ADD_PLUGIN([mjpeg])
1176 VLC_ADD_PLUGIN([wav])
1177 VLC_ADD_PLUGIN([voc])
1178 VLC_ADD_PLUGIN([smf])
1179 VLC_ADD_PLUGIN([demuxdump])
1180 VLC_ADD_PLUGIN([flacsys])
1181 VLC_ADD_PLUGIN([tta])
1182 VLC_ADD_PLUGIN([subtitle])
1183 VLC_ADD_PLUGIN([vobsub])
1184 VLC_ADD_PLUGIN([a52sys])
1185 VLC_ADD_PLUGIN([dtssys])
1186 VLC_ADD_PLUGIN([au])
1187 VLC_ADD_PLUGIN([ty])
1188 VLC_ADD_PLUGIN([xa])
1189 VLC_ADD_PLUGIN([nuv])
1191 VLC_ADD_PLUGIN([cvdsub])
1192 VLC_ADD_PLUGIN([svcdsub])
1193 VLC_ADD_PLUGIN([spudec])
1194 VLC_ADD_PLUGIN([subsdec])
1195 VLC_ADD_PLUGIN([subsusf])
1196 VLC_ADD_PLUGIN([t140])
1197 VLC_ADD_PLUGIN([dvbsub])
1198 VLC_ADD_PLUGIN([cc])
1200 VLC_ADD_PLUGIN([cinepak])
1202 VLC_ADD_PLUGIN([araw])
1203 VLC_ADD_PLUGIN([adpcm])
1204 VLC_ADD_PLUGIN([mpeg_audio])
1205 VLC_ADD_PLUGIN([lpcm])
1206 VLC_ADD_PLUGIN([a52])
1207 VLC_ADD_PLUGIN([dts])
1208 VLC_ADD_PLUGIN([flac])
1210 VLC_ADD_PLUGIN([deinterlace])
1211 VLC_ADD_PLUGIN([invert])
1212 VLC_ADD_PLUGIN([adjust])
1213 VLC_ADD_PLUGIN([transform])
1214 VLC_ADD_PLUGIN([wave])
1215 VLC_ADD_PLUGIN([ripple])
1216 VLC_ADD_PLUGIN([psychedelic])
1217 VLC_ADD_PLUGIN([gradient])
1218 VLC_ADD_PLUGIN([motionblur])
1219 VLC_ADD_PLUGIN([rv32])
1220 VLC_ADD_PLUGIN([rotate])
1221 VLC_ADD_PLUGIN([noise])
1222 VLC_ADD_PLUGIN([grain])
1223 VLC_ADD_PLUGIN([extract])
1224 VLC_ADD_PLUGIN([sharpen])
1225 VLC_ADD_PLUGIN([seamcarving])
1226 VLC_ADD_PLUGIN([croppadd])
1227 VLC_ADD_PLUGIN([blendbench])
1228 VLC_ADD_PLUGIN([blend])
1229 VLC_ADD_PLUGIN([scale])
1230 VLC_ADD_PLUGIN([image])
1231 VLC_ADD_PLUGIN([vmem])
1232 VLC_ADD_PLUGIN([logo])
1233 VLC_ADD_PLUGIN([magnify])
1234 VLC_ADD_PLUGIN([puzzle])
1235 VLC_ADD_PLUGIN([colorthres])
1237 VLC_ADD_PLUGIN([playlist])
1238 VLC_ADD_PLUGIN([export])
1239 VLC_ADD_PLUGIN([nsc])
1240 VLC_ADD_PLUGIN([xtag])
1241 dnl Channel mixing audio filters:
1242 VLC_ADD_PLUGIN([converter_fixed])
1243 VLC_ADD_PLUGIN([mono])
1244 VLC_ADD_PLUGIN([trivial_channel_mixer])
1245 dnl Resampling audio filters:
1246 VLC_ADD_PLUGIN([trivial_resampler])
1247 VLC_ADD_PLUGIN([ugly_resampler])
1249 VLC_ADD_PLUGIN([trivial_mixer])
1251 VLC_ADD_PLUGIN([i420_rgb])
1252 VLC_ADD_PLUGIN([grey_yuv])
1254 VLC_ADD_PLUGIN([rawvideo])
1256 VLC_ADD_PLUGIN([access_filter_timeshift])
1257 VLC_ADD_PLUGIN([access_filter_record])
1258 VLC_ADD_PLUGIN([access_filter_dump])
1259 VLC_ADD_PLUGIN([access_filter_bandwidth])
1261 ALIASES="${ALIASES} cvlc"
1264 dnl default modules that need g++
1267 VLC_ADD_PLUGIN([spatializer])
1270 if test "${SYS}" != "mingwce"; then
1271 VLC_ADD_PLUGIN([gestures])
1272 VLC_ADD_PLUGIN([rc])
1273 VLC_ADD_PLUGIN([telnet])
1274 VLC_ADD_PLUGIN([hotkeys])
1275 VLC_ADD_PLUGIN([showintf])
1276 VLC_ADD_PLUGIN([marq])
1277 VLC_ADD_PLUGIN([podcast])
1278 VLC_ADD_PLUGIN([shout])
1279 VLC_ADD_PLUGIN([sap])
1280 VLC_ADD_PLUGIN([fake])
1281 VLC_ADD_PLUGIN([folder])
1282 VLC_ADD_PLUGIN([rss])
1283 VLC_ADD_PLUGIN([mosaic])
1284 VLC_ADD_PLUGIN([wall])
1285 VLC_ADD_PLUGIN([motiondetect])
1286 VLC_ADD_PLUGIN([clone])
1287 VLC_ADD_PLUGIN([crop])
1288 VLC_ADD_PLUGIN([erase])
1289 VLC_ADD_PLUGIN([bluescreen])
1290 VLC_ADD_PLUGIN([alphamask])
1291 VLC_ADD_PLUGIN([gaussianblur])
1292 VLC_ADD_PLUGIN([i420_yuy2])
1293 VLC_ADD_PLUGIN([i422_yuy2])
1294 VLC_ADD_PLUGIN([i420_ymga])
1295 VLC_ADD_PLUGIN([i422_i420])
1296 VLC_ADD_PLUGIN([yuy2_i422])
1297 VLC_ADD_PLUGIN([yuy2_i420])
1298 VLC_ADD_PLUGIN([chroma_chain])
1299 VLC_ADD_PLUGIN([aout_file])
1300 VLC_ADD_PLUGIN([linear_resampler])
1301 VLC_ADD_PLUGIN([bandlimited_resampler])
1302 VLC_ADD_PLUGIN([float32_mixer])
1303 VLC_ADD_PLUGIN([spdif_mixer])
1304 VLC_ADD_PLUGIN([simple_channel_mixer])
1305 VLC_ADD_PLUGIN([dolby_surround_decoder])
1306 VLC_ADD_PLUGIN([headphone_channel_mixer])
1307 VLC_ADD_PLUGIN([normvol])
1308 VLC_ADD_PLUGIN([equalizer])
1309 VLC_ADD_PLUGIN([param_eq])
1310 VLC_ADD_PLUGIN([converter_float])
1311 VLC_ADD_PLUGIN([a52tospdif])
1312 VLC_ADD_PLUGIN([dtstospdif])
1313 VLC_ADD_PLUGIN([audio_format])
1314 ALIASES="${ALIASES} rvlc"
1318 dnl Some plugins aren't useful on some platforms
1320 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
1321 VLC_ADD_PLUGIN([screensaver])
1322 VLC_ADD_PLUGIN([motion])
1323 VLC_ADD_PLUGIN([dynamicoverlay])
1324 elif test "${SYS}" != "mingwce"; then
1325 VLC_ADD_PLUGIN([ntservice])
1326 VLC_ADD_PLUGIN([access_smb])
1327 VLC_ADD_PLUGIN([dmo])
1328 VLC_ADD_PLUGIN([msn])
1329 VLC_ADD_LIBS([dmo],[-lole32 -luuid])
1331 VLC_ADD_PLUGIN([win32text])
1333 if test "${SYS}" = "darwin"; then
1334 VLC_ADD_PLUGIN([quartztext])
1335 VLC_ADD_LDFLAGS([quartztext],[-Wl,-framework,Carbon,-framework,ApplicationServices])
1339 dnl Accelerated modules
1342 AC_ARG_WITH(,[Optimization options:])
1344 dnl Check for fully working MMX intrinsics
1345 dnl We need support for -mmmx, we need <mmintrin.h>, and we also need a
1346 dnl working compiler (http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23963)
1348 [ --disable-mmx disable MMX optimizations (default auto)],,[
1349 case "${host_cpu}" in
1358 AS_IF([test "${enable_mmx}" != "no"], [
1361 AC_CACHE_CHECK([if $CC groks MMX intrinsics],
1362 [ac_cv_c_mmx_intrinsics],
1363 [CFLAGS="${CFLAGS_save} -O -mmmx"
1364 AC_TRY_COMPILE([#include <mmintrin.h>
1368 a = b = c = (__m64)frobzor;
1369 a = _mm_slli_pi16(a, 3);
1370 a = _mm_adds_pi16(a, b);
1371 c = _mm_srli_pi16(c, 8);
1372 c = _mm_slli_pi16(c, 3);
1373 b = _mm_adds_pi16(b, c);
1374 a = _mm_unpacklo_pi8(a, b);
1375 frobzor = (uint64_t)a;],
1376 [ac_cv_c_mmx_intrinsics=yes],
1377 [ac_cv_c_mmx_intrinsics=no])])
1378 AS_IF([test "${ac_cv_c_mmx_intrinsics}" != "no"], [
1379 AC_DEFINE(HAVE_MMX_INTRINSICS, 1,
1380 [Define to 1 if MMX intrinsics are available.])
1381 VLC_ADD_CFLAGS([memcpymmx i420_rgb_mmx i420_yuy2_mmx i422_yuy2_mmx i420_ymga_mmx],[-mmmx])
1384 AC_CACHE_CHECK([if $CC groks MMX inline assembly],
1386 [CFLAGS="${CFLAGS_save}"
1387 AC_TRY_COMPILE(,[void *p;asm volatile("packuswb %%mm1,%%mm2"::"r"(p));],
1388 ac_cv_mmx_inline=yes, ac_cv_mmx_inline=no)])
1389 AS_IF([test "${ac_cv_mmx_inline}" != "no"], [
1390 AC_DEFINE(CAN_COMPILE_MMX, 1,
1391 [Define to 1 inline MMX assembly is available.])
1392 VLC_ADD_PLUGIN([memcpymmx])
1393 VLC_ADD_PLUGIN([i420_rgb_mmx])
1394 VLC_ADD_PLUGIN([i420_yuy2_mmx])
1395 VLC_ADD_PLUGIN([i422_yuy2_mmx])
1396 VLC_ADD_PLUGIN([i420_ymga_mmx])
1399 AC_CACHE_CHECK([if $CC groks MMX EXT inline assembly],
1400 [ac_cv_mmxext_inline],
1401 [CFLAGS="${CFLAGS_save}"
1402 AC_TRY_COMPILE(,[void *p;asm volatile("maskmovq %%mm1,%%mm2"::"r"(p));],
1403 ac_cv_mmxext_inline=yes, ac_cv_mmxext_inline=no)])
1404 AS_IF([test "${ac_cv_mmxext_inline}" != "no"], [
1405 AC_DEFINE(CAN_COMPILE_MMXEXT, 1,
1406 [Define to 1 if MMX EXT inline assembly is available.])
1407 VLC_ADD_PLUGIN([memcpymmxext])
1411 dnl Check for fully workin SSE2 intrinsics
1412 dnl We need support for -mmmx, we need <emmintrin.h>, and we also need a
1413 dnl working compiler (http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23963)
1415 [ --disable-sse disable SSE (1 and 2) optimizations (default auto)],, [
1416 case "${host_cpu}" in
1425 AS_IF([test "${enable_sse}" != "no"], [
1426 ARCH="${ARCH} sse sse2"
1428 AC_CACHE_CHECK([if $CC groks SSE2 intrinsics],
1429 [ac_cv_c_sse2_intrinsics],
1430 [CFLAGS="${CFLAGS_save} -O -msse2"
1431 AC_TRY_COMPILE([#include <emmintrin.h>
1435 a = b = c = _mm_set1_epi64((__m64)frobzor);
1436 a = _mm_slli_epi16(a, 3);
1437 a = _mm_adds_epi16(a, b);
1438 c = _mm_srli_epi16(c, 8);
1439 c = _mm_slli_epi16(c, 3);
1440 b = _mm_adds_epi16(b, c);
1441 a = _mm_unpacklo_epi8(a, b);
1442 frobzor = (uint64_t)_mm_movepi64_pi64(a);],
1443 [ac_cv_c_sse2_intrinsics=yes],
1444 [ac_cv_c_sse2_intrinsics=no])])
1445 AS_IF([test "${ac_cv_c_sse2_intrinsics}" != "no"], [
1446 AC_DEFINE(HAVE_SSE2_INTRINSICS, 1,
1447 [Define to 1 if SSE2 intrinsics are available.])
1448 VLC_ADD_CFLAGS([i420_rgb_sse2 i420_yuy2_sse2 i422_yuy2_sse2],[-msse2])
1451 AC_CACHE_CHECK([if $CC groks SSE inline assembly],
1453 [CFLAGS="${CFLAGS_save}"
1454 AC_TRY_COMPILE(,[void *p;asm volatile("xorps %%xmm1,%%xmm2"::"r"(p));],
1455 ac_cv_sse_inline=yes, ac_cv_sse_inline=no)])
1456 AS_IF([test "${ac_cv_sse_inline}" != "no" -a "${SYS}" != "solaris"], [
1457 AC_DEFINE(CAN_COMPILE_SSE, 1,
1458 [Define to 1 if SSE inline assembly is available.])
1461 AC_CACHE_CHECK([if $CC groks SSE2 inline assembly],
1462 [ac_cv_sse2_inline],
1463 [CFLAGS="${CFLAGS_save}"
1464 AC_TRY_COMPILE(,[void *p;asm volatile("punpckhqdq %%xmm1,%%xmm2"::"r"(p));],
1465 ac_cv_sse2_inline=yes, ac_cv_sse2_inline=no)])
1466 AS_IF([test "${ac_cv_sse2_inline}" != "no" -a "${SYS}" != "solaris"], [
1467 AC_DEFINE(CAN_COMPILE_SSE2, 1,
1468 [Define to 1 if SSE2 inline assembly is available.])
1469 VLC_ADD_PLUGIN([i420_rgb_sse2])
1470 VLC_ADD_PLUGIN([i420_yuy2_sse2])
1471 VLC_ADD_PLUGIN([i422_yuy2_sse2])
1475 AC_CACHE_CHECK([if $CC groks 3D Now! inline assembly],
1476 [ac_cv_3dnow_inline],
1477 [CFLAGS="${CFLAGS_save}"
1478 AC_TRY_COMPILE(,[void *p;asm volatile("pfadd %%mm1,%%mm2"::"r"(p));],
1479 ac_cv_3dnow_inline=yes, ac_cv_3dnow_inline=no)])
1480 AS_IF([test "${ac_cv_3dnow_inline}" != "no"], [
1481 AC_DEFINE(CAN_COMPILE_3DNOW, 1,
1482 [Define to 1 if 3D Now! inline assembly is available.])
1483 VLC_ADD_PLUGIN([memcpy3dn])
1486 AC_ARG_ENABLE(altivec,
1487 [ --disable-altivec disable AltiVec optimizations (default auto)],, [
1488 AS_IF([test "${host_cpu}" = "powerpc"],
1489 [enable_altivec=yes], [enable_altivec=no])
1491 AS_IF([test "${enable_altivec}" = "yes"], [
1492 ARCH="${ARCH} altivec";
1493 AC_CACHE_CHECK([if $CC groks AltiVec inline assembly],
1494 [ac_cv_altivec_inline],
1495 [CFLAGS="${CFLAGS_save}"
1496 AC_TRY_COMPILE(,[asm volatile("vperm 0,1,2,3");],
1497 ac_cv_altivec_inline="yes",
1498 [CFLAGS="${CFLAGS_save} -Wa,-m7400"
1499 AC_TRY_COMPILE(,[asm volatile("vperm 0,1,2,3");],
1500 [ac_cv_altivec_inline="-Wa,-m7400"],
1501 ac_cv_altivec_inline=no)
1503 AS_IF([test "${ac_cv_altivec_inline}" != "no"], [
1504 AC_DEFINE(CAN_COMPILE_ALTIVEC, 1,
1505 [Define to 1 if AltiVec inline assembly is available.])
1506 AS_IF([test "${ac_cv_altivec_inline}" != "yes"], [
1507 VLC_ADD_CFLAGS([idctaltivec],[${ac_cv_altivec_inline}])
1508 VLC_ADD_CFLAGS([motionaltivec],[${ac_cv_altivec_inline}])
1509 VLC_ADD_CFLAGS([memcpyaltivec],[${ac_cv_altivec_inline}])
1510 VLC_ADD_CFLAGS([i420_yuy2_altivec],[${ac_cv_altivec_inline}])
1511 VLC_ADD_CFLAGS([libvlc],[${ac_cv_altivec_inline}])
1513 VLC_ADD_PLUGIN([memcpyaltivec])
1514 VLC_ADD_PLUGIN([i420_yuy2_altivec])
1517 dnl The AltiVec C extensions
1519 dnl There are several possible cases:
1520 dnl - OS X PPC, gcc 4.x: use -mpim-altivec -force_cpusubtype_ALL, don't
1521 dnl need <altivec.h>
1522 dnl - OS X PPC, gcc 3.x: need -faltivec, don't need <altivec.h>
1523 dnl - Linux PPC, gcc 3.4, 4.x: need <altivec.h> which requires -maltivec
1524 dnl - Linux PPC, gcc 3.3: need <altivec.h> and -maltivec -mabi=altivec
1525 dnl - Linux PPC, gcc 3.x: need <altivec.h> and -fvec
1526 dnl - Others: test should fail
1527 AC_CACHE_CHECK([if \$CC groks AltiVec C extensions],
1529 [# OS X/PPC test (gcc 4.x)
1530 CFLAGS="${CFLAGS_save} -mpim-altivec -force_cpusubtype_ALL"
1531 AC_TRY_COMPILE([vector unsigned char foo;],
1532 [vec_ld(0, (unsigned char *)0);],
1533 [ac_cv_c_altivec="-mpim-altivec -force_cpusubtype_ALL"],
1534 [# OS X/PPC test (gcc 3.x)
1535 CFLAGS="${CFLAGS_save} -faltivec"
1536 AC_TRY_COMPILE([vector unsigned char foo;],
1537 [vec_ld(1 * sizeof(vector float), (unsigned char *)0);],
1538 [ac_cv_c_altivec="-faltivec"],
1539 dnl Below this are the Linux tests
1540 [# Linux/PPC test (gcc 4.x)
1541 CFLAGS="${CFLAGS_save} -maltivec"
1542 AC_TRY_COMPILE([#include <altivec.h>],
1543 [vec_ld(0, (unsigned char *)0);],
1544 [ac_cv_c_altivec="-maltivec"],
1545 [# Linux/PPC test (gcc 3.3)
1546 CFLAGS="${CFLAGS_save} -maltivec -mabi=altivec"
1547 AC_TRY_COMPILE([#include <altivec.h>],
1548 [vec_ld(0, (unsigned char *)0);],
1550 ac_cv_c_altivec_abi="-maltivec -mabi=altivec"],
1551 [# Linux/PPC test (gcc 3.3)
1552 CFLAGS="${CFLAGS_save} -fvec"
1553 AC_TRY_COMPILE([#include <altivec.h>],
1554 [vec_ld(0, (unsigned char *)0);],
1555 [ac_cv_c_altivec="-fvec"],
1556 [ac_cv_c_altivec=no])
1561 CFLAGS="${CFLAGS_save}"
1563 AS_IF([test "${ac_cv_c_altivec}" != "no"], [
1564 CPPFLAGS="${CPPFLAGS_save} ${ac_cv_c_altivec}"
1567 AC_CHECK_HEADERS(altivec.h)
1568 CPPFLAGS="${CPPFLAGS_save}"
1570 AS_IF([test "${ac_cv_c_altivec}" != "no"], [
1571 AC_DEFINE(CAN_COMPILE_C_ALTIVEC, 1,
1572 [Define to 1 if C AltiVec extensions are available.])
1573 VLC_ADD_CFLAGS([libvlc],[${ac_cv_c_altivec}])
1574 VLC_ADD_CFLAGS([idctaltivec motionaltivec],[${ac_cv_c_altivec}])
1575 VLC_ADD_CFLAGS([i420_yuy2_altivec memcpyaltivec deinterlace],[${ac_cv_c_altivec} ${ac_cv_c_altivec_abi}])
1576 VLC_ADD_PLUGIN([memcpyaltivec])
1577 VLC_ADD_PLUGIN([i420_yuy2_altivec])
1580 AC_CACHE_CHECK([if linker needs -framework vecLib],
1582 [LDFLAGS="${LDFLAGS_vlc} -Wl,-framework,vecLib"
1583 AC_TRY_LINK([],,ac_cv_ld_altivec=yes,ac_cv_ld_altivec=no)
1584 LDFLAGS="${LDFLAGS_save}"
1586 AS_IF([test "${ac_cv_ld_altivec}" != "no"], [
1587 VLC_ADD_LDFLAGS([libvlc idctaltivec motionaltivec memcpyaltivec],[-Wl,-framework,vecLib])
1592 dnl Special arch tuning
1595 [ --with-tuning=ARCH enable special tuning for an architecture
1596 (default Pentium 2 on IA-32 and G4 on PPC)])
1597 if test -n "${with_tuning}"; then
1598 if test "${with_tuning}" != "no"; then
1599 CFLAGS_TUNING="-mtune=${with_tuning}"
1602 if test "${SYS}" = "darwin" -a "${host_cpu}" != "powerpc"; then
1603 CFLAGS_TUNING="-march=pentium-m -mtune=prescott"
1604 elif test "${host_cpu}" = "i686" -o "${host_cpu}" = "i586" -o "${host_cpu}" = "i486" -o "${host_cpu}" = "i386"; then
1605 CFLAGS_TUNING="-mtune=pentium2"
1606 elif test "${host_cpu}" = "x86_64"; then
1607 CFLAGS_TUNING="-mtune=athlon64"
1608 elif test "${host_cpu}" = "powerpc"; then
1609 CFLAGS_TUNING="-mtune=G4";
1613 dnl NOTE: this can't be cached cleanly
1614 AS_IF([test "${CFLAGS_TUNING}"],
1615 [CFLAGS_save="${CFLAGS}"
1616 CFLAGS="${CFLAGS} ${CFLAGS_TUNING}"
1618 AC_MSG_CHECKING([whether $CC accepts ${CFLAGS_TUNING}])
1619 AC_COMPILE_IFELSE([ ],
1621 [CFLAGS_TUNING=""; tuning="no"
1622 AS_IF([test "${with_tuning}"],
1623 [AC_MSG_ERROR([requested tuning not supported])])])
1625 AC_MSG_RESULT([$tuning])
1626 CFLAGS="${CFLAGS_save}"
1632 AC_ARG_ENABLE(optimize-memory,
1633 [ --enable-optimize-memory optimize memory usage over performance])
1634 if test "${enable_optimize_memory}" = "yes"; then
1635 AC_DEFINE(OPTIMIZE_MEMORY, 1, Define if you want to optimize memory usage over performance)
1639 dnl Enable/disable optimizations
1641 AC_ARG_ENABLE(optimizations,
1642 [ --disable-optimizations disable compiler optimizations (default enabled)])
1643 if test "${enable_optimizations}" != "no"; then
1644 if test "${enable_optimize_memory}" = "yes"; then
1645 enable_optimizations="size"
1647 enable_optimizations="speed"
1654 AC_ARG_ENABLE(debug,
1655 [ --enable-debug debug mode (default disabled)])
1656 test "${enable_debug}" != "yes" && enable_debug="no"
1658 [Define to 1 if debug code should NOT be compiled])
1659 AS_IF([test "x${enable_debug}" = "xno"], [AC_DEFINE(NDEBUG)])
1664 AC_ARG_ENABLE(coverage,
1665 [ --enable-coverage build for test coverage (default disabled)],,
1666 [enable_coverage="no"])
1667 AS_IF([test "${enable_coverage}" != "no"], [
1668 CFLAGS="-fprofile-arcs -ftest-coverage ${CFLAGS}"
1669 CXXFLAGS="-fprofile-arcs -ftest-coverage ${CXXFLAGS}"
1670 LDFLAGS="-lgcov ${LDFLAGS}"
1672 CFLAGS_save="${CFLAGS}"
1673 CXXFLAGS_save="${CXXFLAGS}"
1674 LDFLAGS_save="${LDFLAGS}"
1678 dnl Enable release-specific flags
1680 AC_ARG_ENABLE(release,
1681 [ --enable-release activate extra optimizations (default disabled)])
1682 test "${enable_release}" != "yes" && enable_release="no"
1688 [ --enable-sout Stream output modules (default enabled)])
1689 AS_IF([test "${enable_sout}" != "no"], [
1690 AC_DEFINE(ENABLE_SOUT, 1, [Define to 1 for stream output support.])
1692 AM_CONDITIONAL(ENABLE_SOUT, [test "${enable_sout}" != "no"])
1694 AC_ARG_ENABLE(switcher,
1695 [ --enable-switcher Stream-out switcher plugin (default disabled)])
1697 dnl Check for libshout
1698 AC_ARG_ENABLE(shout,
1699 [ --enable-shout libshout output plugin (default disabled)])
1700 if test "${enable_shout}" = "yes"; then
1701 PKG_CHECK_MODULES(SHOUT, shout >= 2.1,
1702 [AC_DEFINE(HAVE_SHOUT, 1, [Define if you have the libshout library])
1703 VLC_ADD_PLUGIN([access_output_shout])
1704 VLC_ADD_LIBS([access_output_shout],[$SHOUT_LIBS])
1705 VLC_ADD_CFLAGS([access_output_shout],[$SHOUT_CFLAGS])],
1706 [AC_MSG_WARN(libshout library not found)])
1711 [ --enable-lua lua playlist, metafetcher and interface plugins (default enabled)])
1712 if test "${enable_lua}" != "no"
1714 PKG_CHECK_MODULES(LUA, lua5.1,
1717 AC_MSG_WARN([lua5.1 not found, trying lua >= 5.1 instead])
1718 PKG_CHECK_MODULES(LUA, lua >= 5.1,
1722 AC_CHECK_HEADERS([lua.h lauxlib.h lualib.h],
1725 AC_CHECK_LIB( lua5.1 , luaL_newstate,
1726 [LUA_LIBS="-llua5.1"],
1727 AC_CHECK_LIB( lua51 , luaL_newstate,
1728 [LUA_LIBS="-llua51"],
1729 AC_CHECK_LIB( lua , luaL_newstate,
1732 AC_MSG_WARN([lua >= 5.1 not found!])
1738 if test "x${have_lua}" = "xyes" ; then
1739 AC_DEFINE(HAVE_LUA, 1, [Define if you have the lua library])
1740 VLC_ADD_LIBS([lua],[$LUA_LIBS])
1741 VLC_ADD_CFLAGS([lua],[$LUA_CFLAGS])
1744 AM_CONDITIONAL(BUILD_LUA, [test "${have_lua}" = "yes"])
1749 AC_ARG_ENABLE(httpd,
1750 [ --enable-httpd HTTP daemon (default enabled)])
1751 if test "${enable_httpd}" != "no"
1753 VLC_ADD_PLUGIN([http])
1754 AC_DEFINE(ENABLE_HTTPD, 1, Define if you want the HTTP dameon support)
1756 AM_CONDITIONAL(BUILD_HTTPD, [test "${enable_httpd}" != "no"])
1759 dnl VideoLAN manager
1762 [ --enable-vlm VideoLAN manager (default enabled)])
1763 if test "${enable_vlm}" != "no"
1765 AC_DEFINE(ENABLE_VLM, 1, Define if you want the VideoLAN manager support)
1769 dnl Growl notification plugin
1771 AC_ARG_ENABLE(growl,
1772 [ --enable-growl growl notification plugin (default enabled)])
1773 AS_IF([test "${enable_growl}" != "no"], [
1774 VLC_ADD_PLUGIN([growl_udp])
1775 AC_CHECK_HEADERS(Growl/GrowlDefines.h, [
1776 VLC_ADD_PLUGIN([growl])
1777 VLC_ADD_LDFLAGS([growl], [-Wl,-framework,Growl,-framework,AppKit])
1783 dnl Libnotify notification plugin
1786 AC_ARG_ENABLE(notify,
1787 [ --enable-notify libnotify notification plugin (default enabled)])
1788 AS_IF([test "${enable_notify}" != "no" -a "${SYS}" != "mingw32"], [
1789 PKG_CHECK_MODULES(NOTIFY, libnotify,
1791 VLC_ADD_PLUGIN([notify])
1792 VLC_ADD_CFLAGS(notify, [$NOTIFY_CFLAGS])
1793 VLC_ADD_LIBS(notify, [$NOTIFY_LIBS])
1795 AS_IF([test "${enable_notify}" = "yes"],[
1796 AC_MSG_WARN( libnotify not found) ])
1801 dnl Audioscrobbler plugin
1804 AC_ARG_ENABLE(audioscrobbler,
1805 [ --disable-audioscrobbler Last.fm submission plugin (default enabled)])
1806 AS_IF([test "${enable_audioscrobbler}" != "no"], [
1807 VLC_ADD_PLUGIN([audioscrobbler])
1811 dnl Musicbrainz plugin
1813 AC_ARG_ENABLE(musicbrainz,
1814 [ --enable-musicbrainz MusicBrainz support (default disabled) ])
1815 AS_IF([test "${enable_musicbrainz}" = "yes"],[
1816 PKG_CHECK_MODULES(MUSICBRAINZ, libmusicbrainz,
1817 [ VLC_ADD_PLUGIN([musicbrainz])
1818 VLC_ADD_LIBS([musicbrainz],[$MUSICBRAINZ_LIBS])
1819 VLC_ADD_CFLAGS([musicbrainz],[$MUSICBRAINZ_CFLAGS]) ],
1820 [AC_MSG_WARN(MusicBrainz library not found)])
1827 AC_ARG_ENABLE(taglib,
1828 [ --disable-taglib Taglib support (default enabled) ])
1829 AS_IF([test "${enable_taglib}" != "no"],[
1830 PKG_CHECK_MODULES(TAGLIB, taglib,
1831 [ AC_DEFINE( HAVE_TAGLIB, 1, [Define if you have taglib plugin built] )
1832 VLC_ADD_PLUGIN([taglib])
1833 VLC_ADD_LIBS([taglib],[$TAGLIB_LIBS -lz])
1834 VLC_ADD_CXXFLAGS([taglib],[$TAGLIB_CFLAGS]) ],
1835 [AC_MSG_WARN(TagLib library not found)])
1843 AC_ARG_WITH(,[Input plugins:])
1847 if test "${enable_livedotcom}"
1849 AC_MSG_WARN(--{en|dis}able-livedotcom is deprecated. Use --{en|dis}able-live555 instead.)
1852 if test "${enable_livedotcom}" = "no"
1856 AC_ARG_ENABLE(live555,
1857 [ --enable-live555 live555 RTSP input plugin (default enabled)])
1858 if test "${enable_live555}" != "no"; then
1859 AC_ARG_WITH(live555-tree,
1860 [ --with-live555-tree=PATH live.com tree for static linking])
1863 dnl test for --with-live555-tree
1865 if test "${with_livedotcom_tree}"
1867 AC_MSG_WARN(--with-livedotcom-tree is deprecated. Use --with-live555-tree instead.)
1868 with_live555_tree="${with_livedotcom_tree}"
1871 if test -z "${with_live555_tree}" -a "${CXX}" != ""; then
1873 CPPFLAGS_save="${CPPFLAGS}"
1874 CPPFLAGS_live555="-I/usr/include/liveMedia -I/usr/include/groupsock -I/usr/include/BasicUsageEnvironment -I/usr/include/UsageEnvironment"
1875 if test "${SYS}" = "solaris"; then
1876 CPPFLAGS_live555="${CPPFLAGS_live555} -DSOLARIS"
1878 CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_live555}"
1879 AC_CHECK_HEADERS(liveMedia.hh, [
1880 VLC_ADD_CXXFLAGS([live555], [${CPPFLAGS_live555}])
1881 AC_CHECK_LIB(liveMedia_pic, main, [
1882 # We have -lliveMedia_pic, build plugins
1883 VLC_ADD_PLUGIN([live555])
1884 VLC_ADD_LIBS([live555], [-lliveMedia_pic -lgroupsock_pic -lBasicUsageEnvironment_pic -lUsageEnvironment_pic])
1886 AC_CHECK_LIB(liveMedia, main, [
1887 # We only have -lliveMedia, do builtins
1888 VLC_ADD_PLUGIN([live555])
1889 VLC_ADD_LIBS([live555], [-lliveMedia -lgroupsock -lBasicUsageEnvironment -lUsageEnvironment])
1892 if test "${SYS}" = "mingw32"; then
1893 # add ws2_32 for closesocket, select, recv
1894 VLC_ADD_LIBS([live555],[-lws2_32])
1897 CPPFLAGS="${CPPFLAGS_save}"
1900 AC_MSG_CHECKING(for liveMedia/libliveMedia.a in ${with_live555_tree})
1901 real_live555_tree="`cd ${with_live555_tree} 2>/dev/null && pwd`"
1902 if test -z "${real_live555_tree}"; then
1903 dnl The given directory can't be found
1905 AC_MSG_ERROR([cannot cd to ${with_live555_tree}])
1907 if test -f "${real_live555_tree}/liveMedia/libliveMedia.a"; then
1908 AC_MSG_RESULT(${real_live555_tree}/liveMedia/libliveMedia.a)
1910 VLC_ADD_PLUGIN([live555])
1912 if test "${SYS}" = "mingw32"; then
1913 # add ws2_32 for closesocket, select, recv
1914 VLC_ADD_LIBS([live555],[-lws2_32])
1917 VLC_ADD_LIBS([live555],[-L${real_live555_tree}/liveMedia -lliveMedia])
1918 VLC_ADD_LIBS([live555],[-L${real_live555_tree}/BasicUsageEnvironment -lBasicUsageEnvironment])
1919 VLC_ADD_LIBS([live555],[-L${real_live555_tree}/groupsock -lgroupsock])
1920 VLC_ADD_LIBS([live555],[-L${real_live555_tree}/UsageEnvironment -lUsageEnvironment])
1922 VLC_ADD_CXXFLAGS([live555],[-I${real_live555_tree}/BasicUsageEnvironment/include])
1923 VLC_ADD_CXXFLAGS([live555],[-I${real_live555_tree}/groupsock/include])
1924 VLC_ADD_CXXFLAGS([live555],[-I${real_live555_tree}/liveMedia/include])
1925 VLC_ADD_CXXFLAGS([live555],[-I${real_live555_tree}/UsageEnvironment/include ])
1926 if test "${SYS}" = "solaris"; then
1927 VLC_ADD_CXXFLAGS([live555],[-DSOLARIS])
1930 dnl The given live555 wasn't built
1932 if test "${enable_live555}" = "yes"; then
1933 AC_MSG_ERROR([cannot find ${real_live555_tree}/liveMedia/libliveMedia.a, make sure you compiled live555 in ${with_live555_tree}])
1940 dnl special access module for dc1394 input
1942 AC_ARG_ENABLE(dc1394,
1943 [ --enable-dc1394 dc1394 access module (default disabled)])
1944 if test "${enable_dc1394}" = "yes"
1946 AC_CHECK_HEADERS(libraw1394/raw1394.h, [
1947 AC_CHECK_LIB( raw1394, raw1394_get_nodecount, [
1948 AC_CHECK_HEADERS(libdc1394/dc1394_control.h , [
1949 dnl AC_CHECK_LIB( dc1394_control, dc1394_setup_capture, [
1950 VLC_ADD_PLUGIN([dc1394])
1951 VLC_ADD_LIBS([dc1394],[-ldc1394_control -lraw1394])
1954 dnl AC_MSG_ERROR([libdc1394 is mandatory for the dc1394 input module. try --disable-dc1394 or install this library])
1958 AC_MSG_ERROR([libdc1394 is mandatory for the dc1394 input module. try --disable-dc1394 or install this library])
1962 AC_MSG_ERROR([libraw1394 is mandatory for the dc1394 input module. try --disable-dc1394 or install this library])
1966 AC_MSG_ERROR([libraw1394 is mandatory for the dc1394 input module. try --disable-dc1394 or install this library])
1971 dnl dv module: digital video module check for libraw1394
1974 [ --enable-dv dv input module (default disabled)])
1975 if test "${enable_dv}" = "yes"
1977 AC_ARG_WITH(dv-raw1394,
1978 [ --with-dv-raw1394=PATH libraw1394 headers and libraries])
1979 AC_ARG_WITH(dv-raw1394-tree,
1980 [ --with-dv-raw1394=PATH libraw1394 tree for static linking])
1982 if test -z "${with_dv_raw1394}" -a "${with_dv_raw1394}" != ""
1984 AC_MSG_CHECKING(for raw1394 headers in ${with_dv_raw1394})
1985 if test -f ${with_dv_raw1394}/include/libraw1394/raw1394.h
1987 dnl Use ${with_dv_raw1394}/include/libraw1394/raw1394.h
1989 VLC_ADD_PLUGIN([access_dv])
1990 VLC_ADD_LIBS([access_dv],[-L${with_dv_raw1394}/lib -lraw1394 -lpthread])
1991 VLC_ADD_CPPFLAGS([access_dv],[-I${with_dv_raw1394}/include])
1993 dnl No libraw1394 could be found, sorry
1995 AC_MSG_ERROR([cannot find ${with_dv_raw1394}/include/libraw1394/raw1394.h])
1998 AC_CHECK_HEADERS(libraw1394/raw1394.h,
1999 [ VLC_ADD_PLUGIN([access_dv])
2000 VLC_ADD_LIBS([access_dv],[-lraw1394 -lavc1394])
2002 if test -n "${enable_dv}"
2004 AC_MSG_ERROR([cannot find libraw1394 headers])
2009 dnl Check for static linking of libraw1394
2010 if test -z "${with_dv_raw1394_tree}" -a "${with_dv_raw1394_tree}" != ""
2012 AC_MSG_CHECKING(for libraw1394.a in ${with_dv_raw1394_tree})
2013 real_dv_raw1394_tree="`cd ${with_dv_raw1394_tree} 2>/dev/null && pwd`"
2014 if test -z "${real_dv_raw1394_tree}"
2016 dnl The given directory can't be found
2018 AC_MSG_ERROR([cannot cd to ${real_dv_raw1394_tree}])
2020 if test -f "${real_dv_raw1394_tree}/src/.libs/libraw1394.a"
2022 dnl Use a custom libraw1394
2023 AC_MSG_RESULT(${real_dv_raw1394_tree}/src/.libs/libraw1394.a)
2024 VLC_ADD_BUILTINS([access_dv])
2025 VLC_ADD_LIBS([access_dv],[-L${real_dv_raw1394_tree}/src/.libs -lraw1394])
2026 VLC_ADD_CPPFLAGS([access_dv],[-I${real_dv_raw1394_tree}])
2028 dnl The given libraw1394 wasn't built
2030 AC_MSG_ERROR([cannot find ${real_dv_raw1394_tree}/src/.libs/libraw1394.a, make sure you compiled libraw1394 in ${with_dv_raw1394_tree}])
2035 dnl Check for libavc1394
2038 AC_ARG_WITH(dv-avc1394,
2039 [ --with-dv-avc1394=PATH libavc1394 headers and libraries])
2040 AC_ARG_WITH(dv-avc1394-tree,
2041 [ --with-dv-avc1394=PATH libavc1394 tree for static linking])
2043 if test -z "${with_dv_avc1394}" -a "${with_dv_avc1394}" != ""
2045 AC_MSG_CHECKING(for avc1394 headers in ${with_dv_avc1394})
2046 if test -f ${with_dv_avc1394}/include/libavc1394/avc1394.h
2048 dnl Use ${with_dv_avc1394}/include/libavc1394/avc1394.h
2050 VLC_ADD_LIBS([access_dv],[-L${with_dv_avc1394}/lib -lavc1394 -lrom1394 -lpthread])
2051 VLC_ADD_CPPFLAGS([access_dv],[-I${with_avc1394}/include])
2053 dnl No libavc1394 could be found, sorry
2055 AC_MSG_ERROR([cannot find ${with_dv_avc1394}/include/libavc1394/avc1394.h])
2058 AC_CHECK_HEADERS(libavc1394/avc1394.h,
2059 [ VLC_ADD_LIBS([access_dv],[-lavc1394 -lrom1394 -lpthread])
2061 if test -n "${enable_dv}"
2063 AC_MSG_ERROR([cannot find libavc1394 headers])
2068 dnl Check for static linking of libavc1394
2069 if test -z "${with_dv_avc1394_tree}" -a "${with_dv_avc1394_tree}" != ""
2071 AC_MSG_CHECKING(for libavc1394.a in ${with_dv_avc1394_tree})
2072 real_dv_avc1394_tree="`cd ${with_dv_avc1394_tree} 2>/dev/null && pwd`"
2073 if test -z "${real_dv_avc1394_tree}"
2075 dnl The given directory can't be found
2077 AC_MSG_ERROR([cannot cd to ${real_dv_avc1394_tree}])
2079 if test -f "${real_dv_avc1394_tree}/src/.libs/libavc1394.a"
2081 dnl Use a custom libavc1394
2082 AC_MSG_RESULT(${real_dv_avc1394_tree}/src/.libs/libavc1394.a)
2083 VLC_ADD_LIBS([access_dv],[-L${real_dv_avc1394_tree}/src/.libs -lavc1394 -lrom1394 -lpthread])
2084 VLC_ADD_CPPFLAGS([access_dv],[-I${real_dv_avc1394_tree}])
2086 dnl The given libavc1394 wasn't built
2088 AC_MSG_ERROR([cannot find ${real_dv_avc1394_tree}/src/.libs/libavc1394.a, make sure you compiled libavc1394 in ${with_dv_avc1394_tree}])
2094 dnl dvdread module: check for libdvdread
2096 AC_ARG_ENABLE(dvdread,
2097 [ --enable-dvdread dvdread input module (default disabled)])
2098 if test "${enable_dvdread}" != "no"
2100 AC_ARG_WITH(dvdread,
2101 [ --with-dvdread=PATH libdvdread headers and libraries])
2102 AC_ARG_WITH(dvdread-tree,
2103 [ --with-dvdread-tree=PATH libdvdread tree for static linking])
2105 dnl Temporary hack (yeah, sure ;)
2106 if test "${SYS}" = "mingw32" || test "${SYS}" = "darwin" || test "${SYS}" = "beos" ; then
2107 VLC_ADD_LIBS([dvdread],[-ldvdcss])
2110 if test -z "${with_dvdread}"
2112 if test -z "${with_dvdread_tree}"
2114 AC_CHECK_HEADERS(dvdread/dvd_reader.h,
2115 [ VLC_ADD_PLUGIN([dvdread])
2116 VLC_ADD_LIBS([dvdread],[-ldvdread ${LIBS_dvdcss}])
2118 if test -n "${enable_dvdread}"
2120 AC_MSG_ERROR([cannot find libdvdread headers])
2124 AC_MSG_CHECKING(for libdvdread.a in ${with_dvdread_tree})
2125 real_dvdread_tree="`cd ${with_dvdread_tree} 2>/dev/null && pwd`"
2126 if test -z "${real_dvdread_tree}"
2128 dnl The given directory can't be found
2130 AC_MSG_ERROR([cannot cd to ${with_dvdread_tree}])
2132 if test -f "${real_dvdread_tree}/dvdread/.libs/libdvdread.a"
2134 dnl Use a custom libdvdread
2135 AC_MSG_RESULT(${real_dvdread_tree}/dvdread/.libs/libdvdread.a)
2136 VLC_ADD_BUILTINS([dvdread])
2137 VLC_ADD_LIBS([dvdread],[-L${real_dvdread_tree}/dvdread/.libs -ldvdread ${LIBS_dvdcss}])
2138 VLC_ADD_CPPFLAGS([dvdread],[-I${real_dvdread_tree}])
2140 dnl The given libdvdread wasn't built
2142 AC_MSG_ERROR([cannot find ${real_dvdread_tree}/dvdread/.libs/libdvdread.a, make sure you compiled libdvdread in ${with_dvdread_tree}])
2146 AC_MSG_CHECKING(for dvdread headers in ${with_dvdread})
2147 if test -f ${with_dvdread}/include/dvdread/dvd_reader.h
2149 dnl Use ${with_dvdread}/include/dvdread/dvd_reader.h
2151 VLC_ADD_PLUGIN([dvdread])
2152 VLC_ADD_LIBS([dvdread],[-L${with_dvdread}/lib -ldvdread ${LIBS_dvdcss}])
2153 VLC_ADD_CPPFLAGS([dvdread],[-I${with_dvdread}/include])
2155 dnl No libdvdread could be found, sorry
2157 AC_MSG_ERROR([cannot find ${with_dvdread}/include/dvdread/dvd_reader.h])
2163 dnl libdvdnav plugin
2165 AC_ARG_ENABLE(dvdnav,
2166 [ --enable-dvdnav dvdnav input module (default enabled)])
2167 if test "${enable_dvdnav}" != "no"
2169 dnl Same hack than dvdread
2170 if test "${SYS}" = "mingw32" || test "${SYS}" = "darwin" || test "${SYS}" = "beos" ; then
2171 VLC_ADD_LIBS([dvdnav],[-ldvdcss])
2174 DVDNAV_PATH="${PATH}"
2175 AC_ARG_WITH(dvdnav-config-path,
2176 [ --with-dvdnav-config-path=PATH dvdnav-config path (default search in \$PATH)],
2177 [ if test "${with_dvdnav_config_path}" != "no"
2179 DVDNAV_PATH="${with_dvdnav_config_path}:${PATH}"
2181 AC_PATH_PROG(DVDNAV_CONFIG, dvdnav-config, no, ${DVDNAV_PATH})
2182 if test "${DVDNAV_CONFIG}" != "no"
2184 VLC_ADD_PLUGIN([dvdnav])
2185 VLC_ADD_CFLAGS([dvdnav],[`${DVDNAV_CONFIG} --cflags`])
2186 VLC_ADD_LIBS([dvdnav],[`${DVDNAV_CONFIG} --libs`])
2191 dnl Windows DirectShow access module
2193 AC_ARG_ENABLE(dshow,
2194 [ --enable-dshow Win32 DirectShow support (default enabled on Win32)])
2195 if test "${enable_dshow}" != "no"
2197 if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"
2200 AC_CHECK_HEADERS(dshow.h,
2201 [ VLC_ADD_PLUGIN([dshow])
2202 VLC_ADD_CXXFLAGS([dshow],[])
2203 VLC_ADD_LIBS([dshow],[-lole32 -loleaut32 -luuid]) ])
2209 dnl Windows DirectShow BDA access module
2212 [ --enable-bda Win32 DirectShow BDA support (default enabled on Win32)])
2213 if test "${enable_bda}" != "no"
2215 if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"
2217 AC_CHECK_HEADERS(dshow.h,
2218 [ VLC_ADD_PLUGIN([bda])
2219 VLC_ADD_CXXFLAGS([bda],[])
2220 VLC_ADD_LIBS([bda],[-lstrmiids -lole32 -loleaut32 -luuid]) ])
2226 dnl OpenCV wrapper and example filters
2228 AC_ARG_ENABLE(opencv,
2229 [ --enable-opencv OpenCV (computer vision) filter (default disabled)])
2230 if test "${enable_opencv}" = "yes" -a "${CXX}" != "";
2232 AC_ARG_WITH(opencv-tree,
2233 [ --with-opencv-tree=PATH opencv tree for linking])
2234 if test -n "${with_opencv_tree}"
2236 if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"
2238 AC_MSG_CHECKING(for opencv in ${with_opencv_tree})
2239 if test -f ${with_opencv_tree}/cv/include/cv.h -a -f ${with_opencv_tree}/cxcore/include/cxcore.h \
2240 -a -f ${with_opencv_tree}/cvaux/include/cvaux.h -a -f ${with_opencv_tree}/otherlibs/highgui/highgui.h
2243 VLC_ADD_PLUGIN([opencv_wrapper])
2244 VLC_ADD_LIBS([opencv_wrapper],[-L${with_opencv_tree}/lib -lcv -lcxcore -lcvaux -lhighgui])
2245 VLC_ADD_CFLAGS([opencv_wrapper],[-I${with_opencv_tree}/cv/include -I${with_opencv_tree}/cxcore/include -I${with_opencv_tree}/cvaux/include -I${with_opencv_tree}/otherlibs/highgui])
2247 VLC_ADD_PLUGIN([opencv_example])
2248 VLC_ADD_LIBS([opencv_example],[-L${with_opencv_tree}/lib -lcv -lcxcore -lcvaux -lhighgui])
2249 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])
2252 dnl No opencv could be found, sorry
2254 AC_MSG_ERROR([cannot find opencv in ${with_opencv_tree}])
2257 AC_MSG_WARN([--enable-opencv currently only works on windows])
2264 dnl libsmbclient plugin
2267 [ --enable-smb smb input module (default enabled)])
2268 if test "${enable_smb}" != "no"; then
2269 AC_CHECK_HEADERS(libsmbclient.h,
2270 [ VLC_ADD_PLUGIN([access_smb])
2271 VLC_ADD_LIBS([access_smb],[-lsmbclient]) ],
2272 [ if test -n "${enable_smb}"; then
2273 AC_MSG_ERROR([cannot find libsmbclient headers])
2275 AC_CHECK_MEMBER([struct _SMBCCTX.close_fn],
2276 AC_DEFINE([HAVE__SMBCCTX_CLOSE_FN], 1, [Define if samba has _SMBCCTX.close_fn]),,
2277 [#include <libsmbclient.h>])
2281 dnl libdvbpsi ts demux/mux
2283 AC_ARG_ENABLE(dvbpsi,
2284 [ --enable-dvbpsi dvbpsi ts mux and demux module (default enabled)])
2285 if test "${enable_dvbpsi}" != "no"
2288 [ --with-dvbpsi=PATH libdvbpsi headers and libraries])
2290 [ --with-dvbpsi-tree=PATH libdvbpsi tree for static linking])
2291 case "${with_dvbpsi}" in
2293 if test -z "${with_dvbpsi_tree}"
2295 AC_CHECK_HEADERS(dvbpsi/dr.h,
2296 [ VLC_ADD_PLUGIN([ts])
2297 if test "${enable_sout}" != "no"; then
2298 VLC_ADD_PLUGIN([mux_ts])
2300 VLC_ADD_LIBS([mux_ts ts dvb],[-ldvbpsi]) ],
2301 [ AC_MSG_WARN([cannot find libdvbpsi headers]) ],
2302 [#if defined( HAVE_STDINT_H )
2303 # include <stdint.h>
2304 #elif defined( HAVE_INTTYPES_H )
2305 # include <inttypes.h>
2307 #include <dvbpsi/dvbpsi.h>
2308 #include <dvbpsi/descriptor.h>
2309 #include <dvbpsi/pat.h>
2310 #include <dvbpsi/pmt.h>])
2312 AC_MSG_CHECKING(for libdvbpsi.a in ${with_dvbpsi_tree})
2313 real_dvbpsi_tree="`cd ${with_dvbpsi_tree} 2>/dev/null && pwd`"
2314 if test -z "${real_dvbpsi_tree}"
2316 dnl The given directory can't be found
2318 AC_MSG_ERROR([cannot cd to ${with_dvbpsi_tree}])
2320 if test -f "${real_dvbpsi_tree}/src/.libs/libdvbpsi.a"
2322 dnl Use a custom libdvbpsi
2323 AC_MSG_RESULT(${real_dvbpsi_tree}/src/.libs/libdvbpsi.a)
2324 VLC_ADD_BUILTINS([ts])
2325 if test "${enable_sout}" != "no"; then
2326 VLC_ADD_BUILTINS([mux_ts])
2328 VLC_ADD_CPPFLAGS([mux_ts ts dvb],[-I${real_dvbpsi_tree}/src])
2329 VLC_ADD_LIBS([mux_ts ts dvb],[${real_dvbpsi_tree}/src/.libs/libdvbpsi.a])
2331 dnl The given libdvbpsi wasn't built
2333 AC_MSG_ERROR([cannot find ${real_dvbpsi_tree}/src/.libs/libdvbpsi.a, make sure you compiled libdvbpsi in ${with_dvbpsi_tree}])
2338 dnl Compile without dvbpsi
2341 AC_MSG_CHECKING(for dvbpsi headers in ${with_dvbpsi})
2342 if test -z "${with_dvbpsi}"
2347 LDFLAGS_test="-L${with_dvbpsi}/lib"
2348 CPPFLAGS_test="-I${with_dvbpsi}/include"
2350 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_test}"
2351 AC_CHECK_HEADERS([dvbpsi/dr.h],[
2352 VLC_ADD_PLUGIN([ts])
2353 if test "${enable_sout}" != "no"; then
2354 VLC_ADD_PLUGIN([mux_ts])
2356 VLC_ADD_CPPFLAGS([mux_ts ts dvb],[${CPPFLAGS_test}])
2357 VLC_ADD_LIBS([mux_ts ts dvb],[${LDFLAGS_test} -ldvbpsi])
2360 if test -n "${enable_dvbpsi}"
2362 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])
2365 CPPFLAGS="${CPPFLAGS_save}"
2368 AC_CHECK_LIB(dvbpsi, dvbpsi_GenSDTSections, [
2369 AC_DEFINE(HAVE_DVBPSI_SDT, 1, [Define if you have dvbpsi_GenSDTSections.])
2370 ], [], [${LIBS_ts}])
2375 dnl Video4Linux plugin
2378 [ --enable-v4l Video4Linux input support (default disabled)])
2379 if test "${enable_v4l}" = "yes"
2382 [ --with-v4l=PATH path to a v4l-enabled kernel tree],[],[])
2383 if test "${with_v4l}" != "no" -a -n "${with_v4l}"
2385 VLC_ADD_CPPFLAGS([v4l],[-I${with_v4l}/include])
2388 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_v4l}"
2389 AC_CHECK_HEADERS(linux/videodev.h, [
2390 VLC_ADD_PLUGIN([v4l])
2392 CPPFLAGS="${CPPFLAGS_save}"
2396 dnl Video4Linux2 plugin
2399 [ --enable-v4l2 Video4Linux2 input support (default disabled)])
2400 if test "${enable_v4l2}" = "yes"
2403 [ --with-v4l2=PATH path to a v4l2-enabled kernel tree],[],[])
2404 if test "${with_v4l2}" != "no" -a -n "${with_v4l2}"
2406 VLC_ADD_CPPFLAGS([v4l2],[-I${with_v4l2}/include])
2409 AC_CHECK_HEADER(alsa/asoundlib.h, AC_CHECK_LIB(asound, main, have_v4l2_alsa="true", have_v4l2_alsa="false"),have_v4l2_alsa="false")
2410 if test "${have_v4l2_alsa}" = "true"
2412 CFLAGS="${CFLAGS_save}"
2413 AC_TRY_COMPILE([#define ALSA_PCM_NEW_HW_PARAMS_API
2414 #define ALSA_PCM_NEW_SW_PARAMS_API
2415 #include <alsa/asoundlib.h>],
2416 [snd_pcm_hw_params_get_period_time(0,0,0);],
2417 AC_DEFINE(HAVE_ALSA_NEW_API, 1, Define if ALSA is at least rc4))
2418 VLC_ADD_LDFLAGS([v4l2],[-lasound -lm -ldl])
2419 AC_DEFINE(HAVE_ALSA, 1, Define if ALSA is present.)
2422 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_v4l2}"
2423 AC_CHECK_HEADERS(linux/videodev2.h, [
2424 VLC_ADD_PLUGIN([v4l2])
2426 CPPFLAGS="${CPPFLAGS_save}"
2431 dnl special access module for Hauppauge PVR cards
2434 [ --enable-pvr PVR cards access module (default disabled)])
2435 if test "${enable_pvr}" = "yes"
2437 VLC_ADD_PLUGIN([pvr])
2438 AC_ARG_WITH(videodev2,
2439 [ --with-videodev2=FILE Location of videodev2.h file (default /usr/include/linux/videodev2.h)],[],[])
2440 if test "${with_videodev2}" != "no" -a -n "${with_videodev2}"
2442 AC_DEFINE_UNQUOTED(VIDEODEV2_H_FILE, "${with_videodev2}", [Location of videodev2.h])
2446 AC_CACHE_CHECK([for new linux/videodev2.h],
2447 [new_linux_videodev2_h],
2449 #include <sys/types.h>
2450 # ifdef VIDEODEV2_H_FILE
2451 # include VIDEODEV2_H_FILE
2453 # include <linux/videodev2.h>
2456 [struct v4l2_ext_controls ctrls; ctrls.ctrl_class = V4L2_CTRL_CLASS_MPEG; ],
2457 new_linux_videodev2_h=yes,
2458 new_linux_videodev2_h=no)])
2459 if test "${new_linux_videodev2_h}" != "no"; then
2460 AC_DEFINE(HAVE_NEW_LINUX_VIDEODEV2_H, 1, [Define if new linux/videodev2.h present])
2465 dnl gnomeVFS access module
2467 AC_ARG_ENABLE(gnomevfs,
2468 [ --enable-gnomevfs GnomeVFS access module (default disabled)])
2469 if test "${enable_gnomevfs}" = "yes"
2471 PKG_CHECK_MODULES(GNOMEVFS, gnome-vfs-2.0,
2472 VLC_ADD_LIBS([access_gnomevfs],[$GNOMEVFS_LIBS])
2473 VLC_ADD_CPPFLAGS([access_gnomevfs],[$GNOMEVFS_CPPFLAGS])
2474 VLC_ADD_CFLAGS([access_gnomevfs],[$GNOMEVFS_CFLAGS])
2475 VLC_ADD_PLUGIN([access_gnomevfs]),
2476 AC_MSG_WARN([GnomeVFS support disabled because GnomeVFS development headers not found]))
2479 dnl Need to test libcdio and libvcdinfo for a number of things. Do it now.
2480 AC_ARG_ENABLE(libcdio,
2481 [ --enable-libcdio CD input and control library support (default enabled)])
2486 if test "${enable_libcdio}" != "no"
2488 PKG_CHECK_MODULES(LIBCDIO, libcdio >= 0.78.2,
2490 AC_DEFINE(HAVE_LIBCDIO, 1,
2491 [Define if you have libcdio 0.78.2 or greater installed]),
2492 [AC_MSG_WARN(CD Reading and information library not found)])
2494 PKG_CHECK_MODULES(VCDINFO, libvcdinfo >= 0.7.22,
2495 [have_libvcdinfo=yes
2496 AC_DEFINE(HAVE_VCDINFO, 1,
2497 [Define if you have libvcdinfo 0.7.22 or greater installed])],
2498 [AC_MSG_WARN(VCD information library not found)])
2502 dnl VCDX and CDDAX modules
2504 AC_ARG_ENABLE(cddax,
2505 [ --enable-cddax audio CD plugin with CD Text and CD paranoia via libcdio (default disabled)])
2507 AC_ARG_ENABLE(libcddb,
2508 [ --enable-libcddb CDDB support for libcdio audio CD (default enabled)])
2510 if test "${enable_cddax}" = "yes"
2512 if test "$have_libcdio" = "yes"
2514 AC_DEFINE(HAVE_CDDAX, 1, [Define for the audio CD plugin using libcdio])
2515 VLC_ADD_LIBS([cddax],[$LIBCDIO_LIBS])
2516 VLC_ADD_CFLAGS([cddax],[$LIBCDIO_CFLAGS])
2517 VLC_ADD_PLUGIN([cddax])
2518 PKG_CHECK_MODULES(LIBCDIO_PARANOIA, libcdio_paranoia >= 0.72, [
2519 VLC_ADD_LIBS([cddax],[$LIBCDIO_CDDA_LIBS $LIBCDIO_CDDA_LIBS $LIBCDIO_PARANOIA_LIBS])],
2520 AC_MSG_WARN([CD Paranoia support disabled because no libcdio >= 0.72 found]))
2522 AC_MSG_WARN([cddax plugin disabled because ok libcdio library not found or disabled])
2526 if test "$enable_libcddb" != "no"; then
2527 PKG_CHECK_MODULES(LIBCDDB, libcddb >= 0.9.5, [
2529 AC_DEFINE(HAVE_LIBCDDB, 1, [Define this if you have libcddb installed])
2530 VLC_ADD_LIBS([cddax],[$LIBCDDB_LIBS])
2531 VLC_ADD_CFLAGS([cddax],[$LIBCDDB_CFLAGS])
2533 [AC_MSG_WARN(new enough libcddb not found. CDDB access disabled)
2540 [ --enable-vcdx VCD with navigation via libvcdinfo (default disabled)])
2542 if test "${enable_vcdx}" = "yes"
2544 if test "${have_libvcdinfo}" = "yes"
2546 VLC_ADD_LIBS([vcdx],[$VCDINFO_LIBS])
2547 VLC_ADD_CFLAGS([vcdx],[$VCDINFO_CFLAGS])
2549 AC_MSG_WARN([vcdx plugin disabled because ok libvcdinfo library not found or disabled])
2553 PKG_CHECK_MODULES(LIBCDIO, libiso9660 >= 0.72,
2554 [VLC_ADD_LIBS([vcdx],[$LIBISO9660_LIBS])
2555 VLC_ADD_CFLAGS([vcdx],[$LIBISO9660_CFLAGS])],
2556 [AC_MSG_WARN([vcdx plugin disabled because ok libiso9660 library not found])
2559 if test "$have_libvcdinfo" = "yes"
2561 AC_DEFINE(HAVE_VCDX, 1,
2562 [Define for the VCD plugin using libcdio/libvcdinfo])
2563 VLC_ADD_LIBS([vcdx],[$VCDINFO_LIBS])
2564 VLC_ADD_CFLAGS([vcdx],[$VCDINFO_CFLAGS])
2565 VLC_ADD_PLUGIN([vcdx])
2567 AC_MSG_WARN([vcdx plugin disabled because ok libvcdinfo library not found])
2573 dnl Built-in CD-DA and VCD module
2576 [ --enable-cdda audio CD via built-in VCD (default enabled)])
2579 [ --enable-vcd built-in VCD (default enabled)])
2581 if test "${enable_vcd}" != "no"
2583 AC_MSG_CHECKING(for cdrom_msf0 in linux/cdrom.h)
2584 AC_EGREP_HEADER(cdrom_msf0,linux/cdrom.h,[
2586 VLC_ADD_PLUGIN([vcd])
2587 VLC_ADD_PLUGIN([cdda])
2592 AC_MSG_CHECKING(for scsireq in sys/scsiio.h)
2593 AC_EGREP_HEADER(scsireq,sys/scsiio.h,[
2595 VLC_ADD_PLUGIN([vcd])
2596 VLC_ADD_PLUGIN([cdda])
2597 AC_DEFINE(HAVE_SCSIREQ_IN_SYS_SCSIIO_H, 1, For NetBSD VCD support)
2602 AC_MSG_CHECKING(for ioc_toc_header in sys/cdio.h)
2603 AC_EGREP_HEADER(ioc_toc_header ,sys/cdio.h,[
2605 VLC_ADD_PLUGIN([vcd])
2606 VLC_ADD_PLUGIN([cdda])
2607 AC_DEFINE(HAVE_IOC_TOC_HEADER_IN_SYS_CDIO_H, 1, For FreeBSD VCD support)
2612 if test "${SYS}" = "bsdi" -o "${SYS}" = "mingw32"
2614 VLC_ADD_PLUGIN([vcd])
2615 VLC_ADD_PLUGIN([cdda])
2618 if test "${SYS}" = "darwin"
2620 VLC_ADD_PLUGIN([vcd])
2621 VLC_ADD_PLUGIN([cdda])
2622 VLC_ADD_LDFLAGS([vcd vcdx cdda cddax],[-Wl,-framework,IOKit,-framework,CoreFoundation])
2623 VLC_ADD_LIBS([vcdx cddax cdda],[-liconv])
2626 if test "$enable_libcddb" != "no"; then
2627 PKG_CHECK_MODULES(LIBCDDB, libcddb >= 0.9.5, [
2629 AC_DEFINE(HAVE_LIBCDDB, 1, [Define this if you have libcddb installed])
2630 VLC_ADD_LIBS([cdda],[$LIBCDDB_LIBS])
2631 VLC_ADD_CFLAGS([cdda],[$LIBCDDB_CFLAGS])
2633 [AC_MSG_WARN(new enough libcddb not found. CDDB access disabled)
2639 dnl DVB-S/DVB-T/DVB-C satellite/teresterial/cable input using v4l2
2642 [ --enable-dvb DVB-S/T/C card support (default disabled)])
2644 if test "${enable_dvb}" = "yes"
2647 [ --with-dvb=PATH path to a dvb- and v4l2-enabled kernel tree],[],[])
2648 if test "${with_dvb}" != "no" -a -n "${with_dvb}"
2650 VLC_ADD_CFLAGS([dvb],[-I${with_dvb}/include])
2652 CPPFLAGS="${CPPFLAGS_save} -I${with_dvb}/include"
2653 AC_CHECK_HEADERS(linux/dvb/version.h linux/dvb/frontend.h, [
2654 if test -z "${with_dvbpsi_tree}"
2656 VLC_ADD_PLUGIN([dvb])
2658 VLC_ADD_BUILTINS([dvb])
2660 ],[AC_MSG_WARN(linux-dvb headers not found, dvb disabled)])
2661 CPPFLAGS="${CPPFLAGS_save}"
2665 dnl Screen capture module
2667 AC_ARG_ENABLE(screen,
2668 [ --enable-screen Screen capture support (default enabled)])
2669 if test "${enable_screen}" != "no"; then
2670 if test "${SYS}" = "darwin"; then
2671 AC_CHECK_HEADERS(OpenGL/gl.h, [
2672 AC_CHECK_HEADERS(ApplicationServices/ApplicationServices.h, [
2673 VLC_ADD_PLUGIN([screen])
2674 VLC_ADD_LDFLAGS([screen],[-Wl,-framework,OpenGL,-framework,ApplicationServices])
2677 elif test "${SYS}" = "mingw32"; then
2678 VLC_ADD_PLUGIN([screen])
2679 VLC_ADD_LIBS([screen],[-lgdi32])
2680 elif test "${SYS}" = "mingwce"; then
2681 CPPFLAGS="${CPPFLAGS_save}"
2682 elif test "${SYS}" = "beos"; then
2683 VLC_ADD_PLUGIN([screen])
2684 VLC_ADD_CXXFLAGS([screen],[])
2685 VLC_ADD_LIBS([screen],[-lbe])
2687 CPPFLAGS="${CPPFLAGS_save} ${X_CFLAGS}"
2688 AC_CHECK_HEADERS(X11/Xlib.h, [
2689 VLC_ADD_PLUGIN([screen])
2690 VLC_ADD_LIBS([screen],[${X_LIBS} ${X_PRE_LIBS} -lX11])
2691 VLC_ADD_CPPFLAGS([screen],[${X_CFLAGS}])
2693 CPPFLAGS="${CPPFLAGS_save}"
2698 dnl ipv6 plugin - not for QNX yet
2701 AC_CHECK_FUNCS(inet_pton,[have_ipv6=yes],[
2702 AC_CHECK_LIB(nsl,inet_pton, [have_ipv6=yes])
2705 AS_IF([test "${have_ipv6}" = "yes"], [
2706 AC_DEFINE(HAVE_INET_PTON, 1, [Define to 1 if you have inet_pton().])])
2709 AC_CHECK_FUNCS(inet_ntop,[
2710 AC_DEFINE(HAVE_INET_NTOP, 1, [Define to 1 if you have inet_ntop().])])
2714 dnl ogg demux plugin
2717 [ --enable-ogg Ogg demux support (default enabled)])
2718 if test "${enable_ogg}" != "no"
2720 AC_ARG_WITH(ogg-tree,
2721 [ --with-ogg-tree=PATH ogg tree for static linking])
2722 if test -n "${with_ogg_tree}"
2724 AC_MSG_CHECKING(for libogg.a in ${with_ogg_tree})
2725 real_ogg_tree="`cd ${with_ogg_tree} 2>/dev/null && pwd`"
2726 if test -z "${real_ogg_tree}"
2728 dnl The given directory can't be found
2730 AC_MSG_ERROR([cannot cd to ${with_ogg_tree}])
2732 if test -f "${real_ogg_tree}/src/.libs/libogg.a"
2734 dnl Use a custom ogg
2735 AC_MSG_RESULT(${real_ogg_tree}/src/.libs/libogg.a)
2736 VLC_ADD_PLUGIN([ogg])
2737 if test "${enable_sout}" != "no"; then
2738 VLC_ADD_PLUGIN([mux_ogg])
2740 VLC_ADD_LIBS([ogg mux_ogg speex vorbis],[${real_ogg_tree}/src/.libs/libogg.a])
2741 VLC_ADD_CFLAGS([ogg mux_ogg speex vorbis],[-I${real_ogg_tree}/include])
2743 dnl The given ogg wasn't built
2745 AC_MSG_ERROR([cannot find ${real_ogg_tree}/src/.libs/libogg.a, make sure you compiled ogg in ${with_ogg_tree}])
2748 AC_CHECK_HEADERS(ogg/ogg.h, [
2749 AC_CHECK_LIB( ogg, oggpack_read, [
2750 VLC_ADD_PLUGIN([ogg])
2751 if test "${enable_sout}" != "no"; then
2752 VLC_ADD_PLUGIN([mux_ogg])
2754 VLC_ADD_LIBS([ogg mux_ogg],[-logg])])
2760 dnl matroska demux plugin
2763 [ --enable-mkv Matroska demux support (default enabled)])
2764 if test "${enable_mkv}" != "no" -a "${CXX}" != ""; then
2766 AC_CHECK_HEADERS(ebml/EbmlVersion.h, [
2767 AC_MSG_CHECKING(for libebml version >= 0.7.6)
2769 [#include <ebml/EbmlVersion.h>
2770 #ifdef LIBEBML_VERSION
2771 #if LIBEBML_VERSION >= 0x000706
2775 [AC_MSG_RESULT([yes])
2776 AC_CHECK_HEADERS(matroska/KaxVersion.h, [
2777 AC_MSG_CHECKING(for libmatroska version >= 0.7.7)
2779 [#include <matroska/KaxVersion.h>
2780 #ifdef LIBMATROSKA_VERSION
2781 #if LIBMATROSKA_VERSION >= 0x000705
2785 [AC_MSG_RESULT([yes])
2786 AC_CHECK_HEADERS(matroska/KaxAttachments.h)
2787 VLC_ADD_CXXFLAGS([mkv],[])
2788 if test "${SYS}" = "darwin"; then
2789 VLC_ADD_CXXFLAGS([mkv],[-O1])
2791 AC_CHECK_LIB(ebml_pic, main, [
2792 VLC_ADD_PLUGIN([mkv])
2793 VLC_ADD_LIBS([mkv],[-lmatroska -lebml_pic])
2795 AC_CHECK_LIB(ebml, main, [
2796 VLC_ADD_PLUGIN([mkv])
2797 VLC_ADD_LIBS([mkv],[-lmatroska -lebml])
2801 [AC_MSG_RESULT([no])
2802 AC_MSG_ERROR([Your libmatroska is too old: you may get a more recent one from http://dl.matroska.org/downloads/libmatroska/. Alternatively you can use --disable-mkv to disable the matroska plugin.])
2806 [AC_MSG_RESULT([no])
2807 AC_MSG_ERROR([Your libebml is too old: you may get a more recent one from http://dl.matroska.org/downloads/libebml/. Alternatively you can use --disable-mkv to disable the matroska plugin.])
2814 dnl modplug demux plugin
2817 [ --enable-mod Mod demux support (default enabled)])
2818 if test "${enable_mod}" != "no"
2820 AC_ARG_WITH(mod-tree,
2821 [ --with-mod-tree=PATH mod tree for static linking])
2822 if test -n "${with_mod_tree}"
2824 AC_MSG_CHECKING(for libmodplug.a in ${with_mod_tree})
2825 real_mod_tree="`cd ${with_mod_tree} 2>/dev/null && pwd`"
2826 if test -z "${real_mod_tree}"
2828 dnl The given directory can't be found
2830 AC_MSG_ERROR([cannot cd to ${with_mod_tree}])
2832 if test -f "${real_mod_tree}/src/.libs/libmodplug.a"
2834 dnl Use a custom mod
2835 AC_MSG_RESULT(${real_mod_tree}/src/.libs/libmodplug.a)
2836 VLC_ADD_PLUGIN([mod])
2837 VLC_ADD_LIBS([mod],[${real_mod_tree}/src/.libs/libmodplug.a -lstdc++])
2838 VLC_ADD_CXXFLAGS([mod],[-I${real_mod_tree}/include])
2840 dnl The given mod wasn't built
2842 AC_MSG_ERROR([cannot find ${real_mod_tree}/src/.libs/libmodplug.a, make sure you compiled mod in ${with_mod_tree}])
2845 AC_CHECK_HEADERS(libmodplug/modplug.h, [
2846 VLC_ADD_PLUGIN([mod])
2847 VLC_ADD_CXXFLAGS([mod],[])
2848 VLC_ADD_LIBS([mod],[-lmodplug -lstdc++])])
2853 dnl mpc demux plugin
2856 [ --enable-mpc Mpc demux support (default enabled)])
2857 if test "${enable_mpc}" != "no"
2859 AC_CHECK_HEADERS(mpcdec/mpcdec.h, [
2860 VLC_ADD_PLUGIN([mpc])
2861 VLC_ADD_LIBS([mpc],[-lmpcdec])])
2865 dnl game music emu demux plugin
2868 [ --enable-gme Game Music Emu demux support (default enabled)])
2869 if test "${enable_gme}" != "no" -a "${CXX}" != "";
2872 AC_ARG_WITH(gme-tree,
2873 [ --with-gme-tree=PATH gme tree for static linking])
2874 if test -n "${with_gme_tree}"
2876 AC_MSG_CHECKING(for libgme.a in ${with_mod_tree})
2877 real_gme_tree="`cd ${with_gme_tree} 2>/dev/null && pwd`"
2878 if test -z "${real_gme_tree}"
2880 dnl The given directory can't be found
2882 AC_MSG_ERROR([cannot cd to ${with_gme_tree}])
2884 if test -f "${real_gme_tree}/gme/libgme.a"
2886 dnl Use a custom gme
2887 AC_MSG_RESULT(${real_gme_tree}/gme/libgme.a)
2888 VLC_ADD_PLUGIN([gme])
2889 VLC_ADD_LIBS([gme],[${real_gme_tree}/gme/libgme.a])
2890 VLC_ADD_CXXFLAGS([gme],[-I${real_gme_tree}/gme])
2892 dnl The given gme wasn't built
2894 AC_MSG_ERROR([cannot find ${real_mod_tree}/gme/libgme.a, make sure you compiled gme in ${with_gme_tree}])
2897 AC_MSG_WARN([only static linking is available, you must provide a gme-tree])
2906 AC_ARG_WITH(,[Codec plugins:])
2912 [ --enable-mad libmad module (default enabled)])
2913 if test "${enable_mad}" != "no"
2916 [ --with-mad=PATH path to libmad],[],[])
2917 if test "${with_mad}" != "no" -a -n "${with_mad}"
2919 VLC_ADD_CPPFLAGS([mpgatofixed32],[-I${with_mad}/include])
2920 VLC_ADD_LIBS([mpgatofixed32],[-L${with_mad}/lib])
2923 AC_ARG_WITH(mad-tree,
2924 [ --with-mad-tree=PATH mad tree for static linking],[],[])
2925 if test "${with_mad_tree}" != "no" -a -n "${with_mad_tree}"
2927 real_mad_tree="`cd ${with_mad_tree} 2>/dev/null && pwd`"
2928 if test -z "${real_mad_tree}"
2930 dnl The given directory can't be found
2932 AC_MSG_ERROR([${with_mad_tree} directory doesn't exist])
2934 dnl Use a custom libmad
2935 AC_MSG_CHECKING(for mad.h in ${real_mad_tree})
2936 if test -f ${real_mad_tree}/mad.h
2939 VLC_ADD_CPPFLAGS([mpgatofixed32],[-I${real_mad_tree}])
2940 VLC_ADD_LIBS([mpgatofixed32],[-L${real_mad_tree}/.libs])
2941 LDFLAGS="${LDFLAGS_save} ${LIBS_mpgatofixed32}"
2942 AC_CHECK_LIB(mad, mad_bit_init, [
2943 VLC_ADD_BUILTINS([mpgatofixed32])
2944 VLC_ADD_LIBS([mpgatofixed32],[-lmad])
2945 ],[ AC_MSG_ERROR([the specified tree hasn't been compiled ])
2947 LDFLAGS="${LDFLAGS_save}"
2950 AC_MSG_ERROR([the specified tree doesn't have mad.h])
2953 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_mpgatofixed32}"
2954 LDFLAGS="${LDFLAGS_save} ${LIBS_mpgatofixed32}"
2955 AC_CHECK_HEADERS(mad.h, ,
2956 [ 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.]) ])
2957 AC_CHECK_LIB(mad, mad_bit_init, [
2958 VLC_ADD_PLUGIN([mpgatofixed32])
2959 VLC_ADD_LIBS([mpgatofixed32],[-lmad])],
2960 [ AC_MSG_ERROR([Cannot find libmad library...]) ])
2961 CPPFLAGS="${CPPFLAGS_save}"
2962 LDFLAGS="${LDFLAGS_save}"
2967 dnl libid3tag support (FIXME!!! doesn't work with new input)
2969 AC_ARG_ENABLE( id3tag,
2970 [ --disable-id3tag id3tag metadata reader plugin (default enabled)])
2971 AS_IF([test "${enable_id3tag}" != "no"], [
2972 AC_CHECK_HEADERS(id3tag.h, [
2973 AC_CHECK_HEADERS(zlib.h, [
2974 VLC_ADD_LIBS([id3tag],[-lid3tag -lz])
2975 VLC_ADD_PLUGIN([id3tag])
2981 dnl ffmpeg decoder/demuxer plugin
2983 dnl we try to find ffmpeg using : 1- given tree, 2- pkg-config
2984 dnl 3- default place,
2986 AC_ARG_ENABLE(ffmpeg,
2987 [ --enable-ffmpeg ffmpeg codec (default enabled)])
2988 if test "${enable_ffmpeg}" != "no"
2991 dnl Trying with pkg-config
2992 PKG_CHECK_MODULES(FFMPEG,[libavcodec, libavformat],
2995 CPPFLAGS="${CPPFLAGS} ${FFMPEG_CFLAGS}"
2996 CFLAGS="${CFLAGS} ${FFMPEG_CFLAGS}"
2997 AC_CHECK_HEADERS(ffmpeg/avcodec.h libavcodec/avcodec.h)
2998 AC_CHECK_HEADERS(ffmpeg/avformat.h libavformat/avformat.h)
2999 AC_CHECK_HEADERS(ffmpeg/avutil.h libavutil/avutil.h)
3000 dnl newer ffmpeg have a separate libpostproc
3001 PKG_CHECK_MODULES(POSTPROC, libpostproc,[
3002 VLC_ADD_CFLAGS([ffmpeg],[${POSTPROC_CFLAGS}])
3003 VLC_ADD_LIBS([ffmpeg],[${POSTPROC_LIBS}])
3005 CPPFLAGS="${CPPFLAGS} ${POSTPROC_CFLAGS}"
3006 CFLAGS="${CFLAGS} ${POSTPROC_CFLAGS}"
3007 AC_CHECK_HEADERS(postproc/postprocess.h)
3008 VLC_ADD_PLUGIN([ffmpeg])
3009 if test "${enable_sout}" != "no" -a "${enable_switcher}" = "yes"; then
3010 VLC_ADD_PLUGIN([stream_out_switcher])
3012 VLC_ADD_CFLAGS([ffmpeg stream_out_switcher],[${FFMPEG_CFLAGS}])
3013 VLC_ADD_LIBS([ffmpeg stream_out_switcher],[${FFMPEG_LIBS}])
3015 dnl even newer ffmpeg has a libswscale
3016 PKG_CHECK_MODULES(SWSCALE,[libswscale],[
3017 VLC_ADD_CFLAGS([ffmpeg],[${SWSCALE_CFLAGS}])
3018 VLC_ADD_LIBS([ffmpeg],[${SWSCALE_LIBS}])
3019 AC_CHECK_LIB(swscale, sws_getContext,
3020 [AC_CHECK_HEADERS([ffmpeg/swscale.h libswscale/swscale.h])],
3021 [AC_CHECK_LIB(avcodec,img_resample,[],
3022 [AC_MSG_ERROR([Your FFmpeg library doesn't have the needed img_resample() function. You should rebuild it with software scaler disabled, or install the swscale headers.])],
3026 ],[AC_CHECK_LIB(avcodec,img_resample,[],
3027 [AC_MSG_ERROR([Your FFmpeg library doesn't have the needed img_resample() function. You should rebuild it with software scaler disabled, or install the swscale headers.])],
3035 dnl last chance: at the default place
3037 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_ffmpeg}"
3038 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_ffmpeg} ${LIBS_ffmpeg}"
3039 AC_CHECK_HEADERS(ffmpeg/avcodec.h libavcodec/avcodec.h)
3040 AC_CHECK_HEADERS(ffmpeg/avformat.h libavformat/avformat.h)
3041 AC_CHECK_HEADERS(ffmpeg/avutil.h libavutil/avutil.h)
3042 AC_CHECK_HEADERS(postproc/postprocess.h)
3044 AC_CHECK_LIB(avutil, av_crc_init, [
3045 VLC_ADD_LIBS([ffmpeg],[-lavutil])
3046 LDAVUTIL="-lavutil"])
3048 AC_CHECK_LIB(avcodec, avcodec_init, [
3049 VLC_ADD_BUILTINS([ffmpeg])
3050 VLC_ADD_LIBS([ffmpeg],[-lavcodec])
3051 if test "${enable_sout}" != "no" -a "${enable_switcher}" = "yes"; then
3052 VLC_ADD_BUILTINS([stream_out_switcher])
3054 [ AC_MSG_ERROR([Could not find ffmpeg on your system: you may get it from http://ffmpeg.sf.net/ (svn version is recommended). Alternatively you can use --disable-ffmpeg to disable the ffmpeg plugins.]) ], [$LDAVUTIL])
3056 AC_CHECK_LIB(postproc, pp_postprocess, [
3057 VLC_ADD_LIBS([ffmpeg],[-lpostproc])],
3058 AC_MSG_ERROR([Could not find libpostproc inside FFmpeg. You should configure FFmpeg with --enable-gpl --enable-postproc.]),
3061 AC_CHECK_LIB(avformat, av_open_input_stream, [
3062 VLC_ADD_LIBS([ffmpeg],[-lavformat -lz]) ], [], [-lavcodec -lz $LDAVUTIL])
3063 LDFLAGS="${LDFLAGS_save}"
3064 CPPFLAGS="${CPPFLAGS_save}"
3066 AC_CHECK_LIB(swscale, sws_getContext, [
3067 AC_CHECK_HEADERS(ffmpeg/swscale.h libswscale/swscale.h)
3068 VLC_ADD_LIBS([ffmpeg],[-lswscale]) ],
3069 [AC_CHECK_LIB(avcodec,img_resample,[],
3070 [AC_MSG_ERROR([Your FFmpeg library doesn't have the needed img_resample() function. You should rebuild it with software scaler disabled, or install the swscale headers.])],
3071 [-lavcodec $LDAVUTIL])
3072 LDFLAGS="${LDFLAGS_save}"
3073 CPPFLAGS="${CPPFLAGS_save}"
3079 dnl faad decoder plugin
3082 [ --enable-faad faad codec (default disabled)])
3083 if test "${enable_faad}" = "yes"
3085 AC_ARG_WITH(faad-tree,
3086 [ --with-faad-tree=PATH faad tree for static linking])
3087 if test -n "${with_faad_tree}"
3089 AC_MSG_CHECKING(for libfaad.a in ${with_faad_tree})
3090 real_faad_tree="`cd ${with_faad_tree} 2>/dev/null && pwd`"
3091 if test -z "${real_faad_tree}"
3093 dnl The given directory can't be found
3095 AC_MSG_ERROR([cannot cd to ${with_faad_tree}])
3097 if test -f "${real_faad_tree}/libfaad/.libs/libfaad.a"
3099 dnl Use a custom faad
3100 AC_MSG_RESULT(${real_faad_tree}/libfaad/.libs/libfaad.a)
3101 VLC_ADD_BUILTINS([faad])
3102 VLC_ADD_LIBS([faad],[${real_faad_tree}/libfaad/.libs/libfaad.a])
3103 VLC_ADD_CPPFLAGS([faad],[-I${real_faad_tree}/include])
3105 dnl The given libfaad wasn't built
3107 AC_MSG_ERROR([cannot find ${real_faad_tree}/libfaad/.libs/libfaad.a, make sure you compiled libfaad in ${with_faad_tree}])
3110 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_faad}"
3111 LDFLAGS="${LDFLAGS_save} ${LIBS_faad}"
3112 AC_CHECK_HEADERS(faad.h, ,
3113 [ AC_MSG_ERROR([Cannot find development headers for libfaad...]) ])
3114 AC_CHECK_LIB(faad, faacDecOpen, [
3115 VLC_ADD_PLUGIN([faad])
3116 VLC_ADD_LIBS([faad],[-lfaad]) ],
3117 AC_CHECK_LIB(faad, NeAACDecOpen, [
3118 VLC_ADD_PLUGIN([faad])
3119 VLC_ADD_LIBS([faad],[-lfaad]) ],
3120 [ AC_MSG_ERROR([Cannot find libfaad library...]) ]))
3121 LDFLAGS="${LDFLAGS_save}"
3122 CPPFLAGS="${CPPFLAGS_save}"
3127 dnl twolame encoder plugin
3129 AC_ARG_ENABLE(twolame,
3130 [ --enable-twolame twolame codec (default disabled)])
3131 if test "${enable_twolame}" = "yes"
3133 AC_ARG_WITH(twolame-tree,
3134 [ --with-twolame-tree=PATH twolame tree for static linking])
3135 if test -n "${with_twolame_tree}"
3137 AC_MSG_CHECKING(for libtwolame.a in ${with_twolame_tree})
3138 real_twolame_tree="`cd ${with_twolame_tree} 2>/dev/null && pwd`"
3139 if test -z "${real_twolame_tree}"
3141 dnl The given directory can't be found
3143 AC_MSG_ERROR([cannot cd to ${with_twolame_tree}])
3145 if test -f "${real_twolame_tree}/libtwolame/.libs/libtwolame.a"
3147 dnl Use a custom twolame
3148 AC_MSG_RESULT(${real_twolame_tree}/libtwolame/.libs/libtwolame.a)
3149 VLC_ADD_BUILTINS([twolame])
3150 VLC_ADD_LIBS([twolame],[${real_twolame_tree}/libtwolame/.libs/libtwolame.a])
3151 VLC_ADD_CPPFLAGS([twolame],[-I${real_twolame_tree}/libtwolame -DLIBTWOLAME_STATIC])
3153 dnl The given libtwolame wasn't built
3155 AC_MSG_ERROR([cannot find ${real_twolame_tree}/libtwolame/.libs/libtwolame.a, make sure you compiled libtwolame in ${with_twolame_tree}])
3158 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_twolame} -DLIBTWOLAME_STATIC"
3159 LDFLAGS="${LDFLAGS_save} ${LIBS_twolame}"
3160 AC_CHECK_HEADERS(twolame.h, ,
3161 [ AC_MSG_ERROR([Cannot find development header for libtwolame...]) ])
3162 AC_CHECK_LIB(twolame, twolame_init, [
3163 VLC_ADD_PLUGIN([twolame])
3164 VLC_ADD_CPPFLAGS([twolame],[-DLIBTWOLAME_STATIC])
3165 VLC_ADD_LIBS([twolame],[-ltwolame]) ],
3166 [ AC_MSG_ERROR([Cannot find libtwolame library...]) ])
3167 LDFLAGS="${LDFLAGS_save}"
3168 CPPFLAGS="${CPPFLAGS_save}"
3173 dnl QuickTime plugin
3175 AC_ARG_ENABLE(quicktime,
3176 [ --enable-quicktime QuickTime module (default enabled on MacOS X)])
3177 if test "${enable_quicktime}" != "no" &&
3178 (test "${SYS}" = "darwin" || test "${enable_quicktime}" = "yes")
3180 if test "${SYS}" = "mingw32"; then
3181 VLC_ADD_BUILTINS([quicktime])
3183 AC_CHECK_HEADERS(QuickTime/QuickTime.h,
3184 [ VLC_ADD_PLUGIN([quicktime])
3185 VLC_ADD_LDFLAGS([quicktime],[-Wl,-framework,QuickTime,-framework,Carbon])
3186 ], [ AC_MSG_ERROR([cannot find QuickTime headers]) ])
3194 [ --enable-real Real audio module (default disabled)])
3195 if test "${enable_real}" = "yes"; then
3196 VLC_ADD_PLUGIN([realaudio])
3200 dnl Real RTSP plugin
3202 AC_ARG_ENABLE(realrtsp,
3203 [ --enable-realrtsp Real RTSP module (default disabled)])
3204 if test "${enable_realrtsp}" = "yes"; then
3205 VLC_ADD_PLUGIN([access_realrtsp])
3211 AC_CHECK_HEADERS(zlib.h, [
3212 VLC_ADD_LIBS([mp4 skins2 sap mkv gme],[-lz])
3215 AC_CHECK_HEADERS(sysfs/libsysfs.h, [
3216 VLC_ADD_LIBS([mp4 mkv],[-lsysfs])
3222 AC_ARG_ENABLE(libtar,
3223 [ --enable-libtar support for skins2 (default enabled)])
3225 AS_IF([test "${enable_libtar}" != "no"],[
3226 AC_CHECK_HEADERS(libtar.h, [
3227 VLC_ADD_LIBS([skins2],[-ltar])
3232 dnl A52/AC3 decoder plugin
3235 [ --enable-a52 A/52 support with liba52 (default enabled)])
3236 if test "${enable_a52}" != "no"
3239 [ --with-a52=PATH a52 headers and libraries])
3240 AC_ARG_WITH(a52-tree,
3241 [ --with-a52-tree=PATH a52dec tree for static linking ],[],[])
3242 if test "${with_a52_tree}" != "no" -a -n "${with_a52_tree}"
3244 real_a52_tree="`cd ${with_a52_tree} 2>/dev/null && pwd`"
3245 if test -z "${real_a52_tree}"
3247 dnl The given directory can't be found
3249 AC_MSG_ERROR([${with_a52_tree} directory doesn't exist])
3251 dnl Use a custom a52dec
3252 AC_MSG_CHECKING(for a52.h in ${real_a52_tree}/include)
3253 if test -f ${real_a52_tree}/include/a52.h
3256 VLC_ADD_CPPFLAGS([a52tofloat32],[-I${real_a52_tree}])
3257 VLC_ADD_LIBS([a52tofloat32],[-L${real_a52_tree}/liba52/.libs])
3258 LDFLAGS="${LDFLAGS_save} ${LIBS_a52tofloat32}"
3259 AC_CHECK_LIB(a52, a52_free, [
3260 VLC_ADD_BUILTINS([a52tofloat32])
3261 VLC_ADD_CPPFLAGS([a52tofloat32],[-DUSE_A52DEC_TREE])
3262 VLC_ADD_LIBS([a52tofloat32],[-la52])
3264 if test -f ${real_a52_tree}/liba52/.libs/liba52.a
3266 AC_MSG_ERROR([make sure you have at least a52dec-0.7.3 ($real_a52_tree)])
3268 AC_MSG_ERROR([the specified tree hasn't been compiled])
3271 LDFLAGS="${LDFLAGS_save}"
3274 AC_MSG_ERROR([the specified tree doesn't have a52.h])
3277 if test -z "${with_a52}"
3282 LDFLAGS_test="-L${with_a52}/lib"
3283 CPPFLAGS_test="-I${with_a52}/include"
3285 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_test} ${CPPFLAGS_a52tofloat32}"
3286 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_test} ${LIBS_a52tofloat32}"
3287 AC_CHECK_HEADERS(a52dec/a52.h, [
3288 AC_CHECK_LIB(a52, a52_free, [
3289 VLC_ADD_PLUGIN([a52tofloat32])
3290 VLC_ADD_LIBS([a52tofloat32],[${LDFLAGS_test} -la52])
3291 VLC_ADD_CPPFLAGS([a52tofloat32],[${CPPFLAGS_test}])
3293 AC_MSG_ERROR([Could not find liba52 on your system: you may get it from http://liba52.sf.net/. Alternatively you can use --disable-a52 to disable the a52 plugin.])
3296 AC_MSG_ERROR([Could not find liba52 on your system: you may get it from http://liba52.sf.net/. Alternatively you can use --disable-a52 to disable the a52 plugin.])
3298 CPPFLAGS="${CPPFLAGS_save}"
3299 LDFLAGS="${LDFLAGS_save}"
3303 AC_ARG_WITH(a52-fixed,
3304 [ --with-a52-fixed specify if liba52 has been compiled with fixed point support],
3306 VLC_ADD_CPPFLAGS([a52tofloat32],[-DLIBA52_FIXED]) ])
3309 dnl DTS Coherent Acoustics decoder plugin
3311 AS_IF([test "x${enable_dts}" != "x"], [
3312 AC_MSG_ERROR([--enable-dts is obsolete. Please use libdca and --enable-dca.])
3314 AS_IF([test "x${with_dts_tree}" != "x"], [
3315 AC_MSG_ERROR([--with-dts-tree is obsolete. Please use libdca and --with-dca-tree.])
3319 [ --enable-dca DTS Coherent Acoustics support with libdca (default enabled)])
3320 AS_IF([test "${enable_dca}" != "no"], [
3321 AC_ARG_WITH(dca-tree,
3322 [ --with-dca-tree=PATH libdca tree for static linking],,
3323 [with_dca_tree="no"])
3324 AS_IF([test "${with_dca_tree}" != "no"], [
3325 real_dca_tree="`cd ${with_dca_tree} 2>/dev/null && pwd`"
3326 AS_IF([test -z "${real_dca_tree}"], [
3327 dnl The given directory can't be found
3329 AC_MSG_ERROR([${with_dca_tree} directory doesn't exist])
3331 dnl Use a custom libdca
3332 AC_MSG_CHECKING(for libdca in ${real_dca_tree})
3333 AS_IF([test -f "${real_dca_tree}/libdca/.libs/libdca.a"], [
3335 VLC_ADD_LIBS([dtstofloat32],[${real_dca_tree}/libdca/.libs/libdca.a])
3336 AS_IF([test -f "${real_dca_tree}/include/dca.h"], [
3337 VLC_ADD_CPPFLAGS([dtstofloat32],[-I${real_dca_tree}/include])
3339 VLC_ADD_CPPFLAGS([dtstofloat32],[-I${real_dca_tree}/../include])
3343 AC_MSG_ERROR([the specified tree doesn't have libdca/.libs/libdca.a])
3346 PKG_CHECK_MODULES([DCA], [libdca >= 0.0.5], [
3347 VLC_ADD_PLUGIN([dtstofloat32])
3348 VLC_ADD_CPPFLAGS([dtstofloat32], [${DCA_CFLAGS}])
3349 VLC_ADD_LIBS([dtstofloat32], [${DCA_LIBS}])
3351 AS_IF([test "x${enable_dca}" != "x"], [
3352 AC_MSG_ERROR([${DCA_PKG_ERRORS}])
3362 [ --enable-flac libflac decoder/encoder support (default disabled)])
3363 if test "${enable_flac}" = "yes"
3365 AC_ARG_WITH(flac-tree,
3366 [ --with-flac-tree=PATH flac tree for static linking])
3367 if test -n "${with_flac_tree}"
3369 AC_MSG_CHECKING(for libFLAC.a in ${with_flac_tree})
3370 real_flac_tree="`cd ${with_flac_tree} 2>/dev/null && pwd`"
3371 if test -z "${real_flac_tree}"
3373 dnl The given directory can't be found
3375 AC_MSG_ERROR([cannot cd to ${with_flac_tree}])
3377 if test -f "${real_flac_tree}/src/libFLAC/.libs/libFLAC.a"
3379 dnl Use a custom flac
3380 AC_MSG_RESULT(${real_flac_tree}/src/libFLAC/.libs/libFLAC.a)
3381 VLC_ADD_LIBS([flac],[${real_flac_tree}/src/libFLAC/.libs/libFLAC.a])
3382 VLC_ADD_CFLAGS([flac],[-I${real_flac_tree}/include])
3383 AC_DEFINE(HAVE_FLAC_STREAM_DECODER_H, 1, [Define if you have FLAC])
3385 dnl The given flac wasn't built
3387 AC_MSG_ERROR([cannot find ${real_flac_tree}/src/libFLAC/.libs/libFLAC.a, make sure you compiled flac in ${with_flac_tree}])
3390 AC_CHECK_HEADERS(FLAC/stream_decoder.h, [
3391 VLC_ADD_LIBS([flac],[-lFLAC -logg])
3399 AC_ARG_ENABLE(libmpeg2,
3400 [ --enable-libmpeg2 libmpeg2 decoder support (default enabled)])
3401 if test "${enable_libmpeg2}" != "no"
3403 AC_ARG_WITH(libmpeg2-tree,
3404 [ --with-libmpeg2-tree=PATH libmpeg2 tree for static linking])
3405 if test -n "${with_libmpeg2_tree}"
3407 AC_MSG_CHECKING(for libmpeg2.a in ${with_libmpeg2_tree})
3408 real_libmpeg2_tree="`cd ${with_libmpeg2_tree} 2>/dev/null && pwd`"
3409 if test -z "${real_libmpeg2_tree}"
3411 dnl The given directory can't be found
3413 AC_MSG_ERROR([cannot cd to ${with_libmpeg2_tree}])
3415 if test -f "${real_libmpeg2_tree}/libmpeg2/.libs/libmpeg2.a"
3417 dnl Use a custom libmpeg2
3418 AC_MSG_RESULT(${real_libmpeg2_tree}/libmpeg2/.libs/libmpeg2.a)
3419 VLC_ADD_BUILTINS([libmpeg2])
3420 VLC_ADD_LIBS([libmpeg2],[-L${real_libmpeg2_tree}/libmpeg2/.libs -lmpeg2])
3421 VLC_ADD_CFLAGS([libmpeg2],[-I${real_libmpeg2_tree}/include])
3422 eval "`cd ${real_libmpeg2_tree}/include && ln -sf . mpeg2dec 2>/dev/null`"
3424 dnl The given libmpeg2 wasn't built
3426 AC_MSG_ERROR([cannot find ${real_libmpeg2_tree}/libmpeg2/.libs/libmpeg2.a, make sure you compiled libmpeg2 in ${with_libmpeg2_tree}])
3429 AC_CHECK_HEADERS(mpeg2dec/mpeg2.h, [
3430 AC_MSG_CHECKING(for libmpeg2 version >= 0.3.2)
3432 [#include <mpeg2dec/mpeg2.h>
3433 #ifdef MPEG2_RELEASE
3434 #if MPEG2_RELEASE >= MPEG2_VERSION(0,3,2)
3438 [AC_MSG_RESULT([yes])
3439 VLC_ADD_PLUGIN([libmpeg2])
3440 VLC_ADD_LIBS([libmpeg2],[-lmpeg2])],
3441 [AC_MSG_RESULT([no])
3442 AC_MSG_ERROR([Your libmpeg2 is too old (you need the cvs version): you may get a more recent one from http://libmpeg2.sf.net/. Alternatively you can use --disable-libmpeg2 to disable the libmpeg2 plugin.])])],
3444 [AC_MSG_ERROR([Could not find libmpeg2 on your system: you may get it from http://libmpeg2.sf.net/ (you need the cvs version). Alternatively you can use --disable-libmpeg2 to disable the libmpeg2 plugin.])]
3452 AC_ARG_ENABLE(vorbis,
3453 [ --enable-vorbis Vorbis decoder support (default enabled)])
3454 if test "${enable_vorbis}" != "no"
3456 AC_ARG_WITH(vorbis-tree,
3457 [ --with-vorbis-tree=PATH vorbis tree for static linking])
3458 if test -n "${with_vorbis_tree}"
3460 AC_MSG_CHECKING(for libvorbis.a in ${with_vorbis_tree})
3461 real_vorbis_tree="`cd ${with_vorbis_tree} 2>/dev/null && pwd`"
3462 if test -z "${real_vorbis_tree}"
3464 dnl The given directory can't be found
3466 AC_MSG_ERROR([cannot cd to ${with_vorbis_tree}])
3468 if test -f "${real_vorbis_tree}/lib/.libs/libvorbis.a"
3470 dnl Use a custom vorbis
3471 AC_MSG_RESULT(${real_vorbis_tree}/lib/.libs/libvorbis.a)
3472 VLC_ADD_PLUGIN([vorbis])
3473 VLC_ADD_LIBS([vorbis],[${real_vorbis_tree}/lib/.libs/libvorbis.a ${real_vorbis_tree}/lib/.libs/libvorbisenc.a])
3474 VLC_ADD_CFLAGS([vorbis],[-I${real_vorbis_tree}/include])
3476 dnl The given vorbis wasn't built
3478 AC_MSG_ERROR([cannot find ${real_vorbis_tree}/lib/.libs/libvorbis.a, make sure you compiled vorbis in ${with_vorbis_tree}])
3481 AC_CHECK_HEADERS(vorbis/codec.h, [
3482 VLC_ADD_PLUGIN([vorbis])
3483 VLC_ADD_LIBS([vorbis],[-lvorbis -logg -lm]) ],[])
3485 AC_CHECK_HEADERS(vorbis/vorbisenc.h, [
3486 VLC_ADD_LIBS([vorbis],[-lvorbisenc -lm]) ],[])
3493 AC_ARG_ENABLE(tremor,
3494 [ --enable-tremor Tremor decoder support (default disabled)])
3495 if test "${enable_tremor}" = "yes"
3497 AC_CHECK_HEADERS(tremor/ivorbiscodec.h, [
3498 VLC_ADD_PLUGIN([tremor])
3499 VLC_ADD_LIBS([tremor],[-lvorbisidec -logg])
3506 AC_ARG_ENABLE(speex,
3507 [ --enable-speex Speex decoder support (default enabled)])
3508 if test "${enable_speex}" != "no"
3510 AC_ARG_WITH(speex-tree,
3511 [ --with-speex-tree=PATH speex tree for static linking])
3512 if test -n "${with_speex_tree}"
3514 AC_MSG_CHECKING(for libspeex.a in ${with_speex_tree})
3515 real_speex_tree="`cd ${with_speex_tree} 2>/dev/null && pwd`"
3516 if test -z "${real_speex_tree}"
3518 dnl The given directory can't be found
3520 AC_MSG_ERROR([cannot cd to ${with_speex_tree}])
3522 if test -f "${real_speex_tree}/libspeex/.libs/libspeex.a"
3524 dnl Use a custom speex
3525 AC_MSG_RESULT(${real_speex_tree}/libspeex/.libs/libspeex.a)
3526 VLC_ADD_PLUGIN([speex])
3527 VLC_ADD_LIBS([speex],[${real_speex_tree}/libspeex/.libs/libspeex.a])
3528 VLC_ADD_CFLAGS([speex],[-I${real_speex_tree}/include])
3530 dnl The given speex wasn't built
3532 AC_MSG_ERROR([cannot find ${real_speex_tree}/libspeex/.libs/libspeex.a, make sure you compiled speex in ${with_speex_tree}])
3535 AC_CHECK_HEADERS(speex/speex.h, [
3536 LDFLAGS="${LDFLAGS_save} ${LIBS_speex}"
3537 AC_CHECK_LIB(speex, speex_decode_int, [
3538 VLC_ADD_PLUGIN([speex])
3539 VLC_ADD_LIBS([speex],[-lspeex]) ],
3540 [ AC_MSG_RESULT([no])
3541 AC_MSG_WARN([Your libspeex is too old, please get the development
3543 LDFLAGS="${LDFLAGS_save}"
3549 dnl tarkin decoder plugin
3551 AC_ARG_ENABLE(tarkin,
3552 [ --enable-tarkin experimental tarkin codec (default disabled)])
3553 if test "${enable_tarkin}" = "yes"
3555 AC_ARG_WITH(tarkin-tree,
3556 [ --with-tarkin-tree=PATH tarkin tree for static linking])
3557 if test -n "${with_tarkin_tree}"
3559 AC_MSG_CHECKING(for tarkin.o in ${with_tarkin_tree})
3560 real_tarkin_tree="`cd ${with_tarkin_tree} 2>/dev/null && pwd`"
3561 if test -f "${real_tarkin_tree}/tarkin.o"
3563 VLC_ADD_BUILTINS([tarkin])
3564 VLC_ADD_CPPFLAGS([tarkin],[-I${real_tarkin_tree}])
3565 VLC_ADD_LIBS([tarkin],[${real_tarkin_tree}/mem.o ${real_tarkin_tree}/pnm.o ${real_tarkin_tree}/wavelet.o ${real_tarkin_tree}/wavelet_xform.o ${real_tarkin_tree}/wavelet_coeff.o ${real_tarkin_tree}/yuv.o ${real_tarkin_tree}/tarkin.o ${real_tarkin_tree}/info.o -logg])
3568 dnl The given tarkin tree wasn't built
3570 AC_MSG_ERROR([cannot find ${real_tarkin_tree}/tarkin.o,
3571 make sure you compiled tarkin in ${with_tarkin_tree}])
3577 dnl theora decoder plugin
3579 AC_ARG_ENABLE(theora,
3580 [ --enable-theora experimental theora codec (default disabled)])
3581 if test "${enable_theora}" = "yes"
3583 AC_CHECK_HEADERS(theora/theora.h, [
3584 AC_CHECK_LIB(theora, theora_granule_time, [
3585 VLC_ADD_PLUGIN([theora])
3586 theora_libs="-ltheora -logg"
3587 VLC_ADD_LIBS([theora],[${theora_libs}]) ],[
3588 AC_MSG_ERROR([libtheora doesn't appear to be installed on your system.
3589 You also need to check that you have a libogg posterior to the 1.0 release.])],
3595 dnl dirac decoder plugin
3597 AC_ARG_ENABLE(dirac,
3598 [ --enable-dirac experimental dirac codec (default disabled)])
3599 if test "${enable_dirac}" = "yes"; then
3600 PKG_CHECK_MODULES(DIRAC,[dirac >= 0.9.0], [
3601 VLC_ADD_PLUGIN([dirac])
3602 VLC_ADD_CFLAGS([dirac],[$DIRAC_CFLAGS])
3603 VLC_ADD_LIBS([dirac],[$DIRAC_LIBS -lstdc++]) ],[
3604 AC_MSG_ERROR([libdirac doesn't appear to be installed on you system.])
3609 dnl PNG decoder module
3612 [ --enable-png PNG support (default enabled)])
3613 if test "${enable_png}" != "no"; then
3614 AC_CHECK_HEADERS(png.h, [
3615 LDFLAGS="${LDFLAGS_save} -lz"
3616 AC_CHECK_LIB(png, png_set_rows, [
3617 VLC_ADD_LIBS([png],[-lpng -lz])
3618 VLC_ADD_PLUGIN([png])
3619 VLC_ADD_PLUGIN([osdmenu])
3620 VLC_ADD_PLUGIN([osd_parser])
3621 AC_DEFINE(HAVE_LIBPNG, 1, [Define if you have the PNG library: libpng])],
3623 LDFLAGS="${LDFLAGS_save}"
3626 AM_CONDITIONAL(BUILD_OSDMENU, [test "${enable_png}" != "no"])
3629 dnl H264 encoder plugin (using libx264)
3632 [ --enable-x264 H264 encoding support with libx264 (default enabled)])
3633 if test "${enable_x264}" != "no"; then
3634 AC_ARG_WITH(x264-tree,
3635 [ --with-x264-tree=PATH x264 tree for static linking ],[],[])
3636 if test "${with_x264_tree}" != "no" -a -n "${with_x264_tree}"
3638 real_x264_tree="`cd ${with_x264_tree} 2>/dev/null && pwd`"
3639 if test -z "${real_x264_tree}"
3641 dnl The given directory can't be found
3643 AC_MSG_ERROR([${with_x264_tree} directory doesn't exist])
3645 dnl Use a custom libx264
3646 AC_MSG_CHECKING(for x264.h in ${real_x264_tree})
3647 if test -f ${real_x264_tree}/x264.h
3650 VLC_ADD_CPPFLAGS([x264],[-I${real_x264_tree}])
3651 VLC_ADD_LIBS([x264],[-L${real_x264_tree}])
3652 PKG_CHECK_MODULES(X264,x264, [
3653 VLC_ADD_PLUGIN([x264])
3654 VLC_ADD_LDFLAGS([x264],[${X264_LIBS}])
3655 VLC_ADD_CFLAGS([x264],[${X264_CFLAGS}])
3657 AC_MSG_ERROR([the specified tree hasn't been compiled])
3659 LDFLAGS="${LDFLAGS_save}"
3662 AC_MSG_ERROR([the specified tree doesn't have x264.h])
3665 PKG_CHECK_MODULES(X264,x264, [
3666 VLC_ADD_PLUGIN([x264])
3667 VLC_ADD_LDFLAGS([x264],[${X264_LIBS}])
3668 VLC_ADD_CFLAGS([x264],[${X264_CFLAGS}])
3670 if test "${enable_x264}" = "yes"; then
3671 AC_MSG_ERROR([Could not find libx264 on your system: you may get it from http://www.videolan.org/x264.html])
3674 LDFLAGS="${LDFLAGS_save}"
3679 dnl libfluidsynth (MIDI synthetizer) plugin
3681 AC_ARG_ENABLE(fluidsynth,
3682 [ --enable-fluidsynth MIDI synthesisr with libfluidsynth (default enabled)])
3683 AS_IF([test "x${enable_fluidsynth}" != "xno"], [
3684 PKG_CHECK_MODULES(FLUIDSYNTH, fluidsynth, [
3685 VLC_ADD_PLUGIN(fluidsynth)
3686 VLC_ADD_CFLAGS(fluidsynth, [${FLUIDSYNTH_CFLAGS}])
3687 VLC_ADD_LIBS(fluidsynth, [${FLUIDSYNTH_LIBS}])
3689 AS_IF([test "x${enable_fluidsynth}" != "x"], [
3690 AC_MSG_ERROR([${FLUIDSYNTH_PKG_ERRORS}])
3696 dnl Teletext Modules
3697 dnl vbi decoder plugin (using libzbvi)
3702 [ --enable-zvbi VBI (inc. Teletext) decoding support with libzvbi (default enabled)])
3704 [ --enable-telx Teletext decoding module (conflicting with zvbi) (default disabled)])
3706 AS_IF( [test "${enable_zvbi}" != "no"],[
3707 AS_IF( [test "${enable_telx}" = "yes"],[
3708 AC_MSG_ERROR([The zvbi and telx modules are uncompatibles. Disable the other if you enable one.])
3710 PKG_CHECK_MODULES(ZVBI,
3713 VLC_ADD_LIBS([zvbi],[$ZVBI_LIBS])
3714 VLC_ADD_CFLAGS([zvbi],[$ZVBI_CFLAGS])
3715 VLC_ADD_PLUGIN([zvbi])
3716 AC_DEFINE(ZVBI_COMPILED, 1, [Define if the zvbi module is built])
3718 AC_MSG_WARN(ZVBI library not found. Enabling the telx module instead)
3723 AS_IF( [test "${enable_telx}" = "yes"],[
3724 VLC_ADD_PLUGIN([telx])
3728 dnl asa/csri subtitle rendering module
3731 [ --enable-csri Subtitle support using CSRI / asa (default disabled)])
3732 AS_IF( [test "${enable_csri}" = "yes"], [
3733 PKG_CHECK_MODULES(CSRI,
3736 VLC_ADD_LDFLAGS([csri],[$CSRI_LIBS])
3737 VLC_ADD_CFLAGS([csri],[$CSRI_CFLAGS])
3738 VLC_ADD_PLUGIN([csri])
3740 AC_MSG_WARN([CSRI helper library not found])
3747 AC_ARG_ENABLE(asademux,
3748 [ --enable-asademux asa subtitle demuxing (default disabled)])
3749 AS_IF( [test "${enable_asademux}" = "yes"], [
3750 PKG_CHECK_MODULES(PCRE,
3753 VLC_ADD_LDFLAGS([asademux],[$PCRE_LIBS])
3754 VLC_ADD_CFLAGS([asademux],[$PCRE_CFLAGS])
3755 VLC_ADD_PLUGIN([asademux])
3757 AC_MSG_WARN([PCRE library not found (required for asademux)])
3765 [ --enable-cmml CMML support (default enabled)])
3766 if test "${enable_cmml}" != "no"
3768 VLC_ADD_PLUGIN([cmml])
3772 dnl kate decoder plugin
3775 [ --enable-kate kate codec (default enabled)])
3776 AS_IF([test "${enable_kate}" != "no"], [
3777 PKG_CHECK_MODULES(KATE,[kate >= 0.1.1], [
3778 VLC_ADD_PLUGIN([kate])
3779 VLC_ADD_CFLAGS([kate],[$KATE_CFLAGS])
3780 VLC_ADD_LIBS([kate],[$KATE_LIBS]) ],[
3781 AC_CHECK_HEADERS(kate/kate.h, [
3782 AC_CHECK_LIB(kate, kate_decode_init, [
3783 VLC_ADD_PLUGIN([kate])
3784 kate_libs="-lkate -logg"
3785 VLC_ADD_LDFLAGS([kate],[${kate_libs}]) ],[
3786 AS_IF([test "x${enable_kate}" != "x"], [
3787 AC_MSG_ERROR([libkate doesn't appear to be installed on your system.
3788 You also need to check that you have a libogg posterior to the 1.0 release.])
3792 AS_IF([test "x${enable_kate}" != "x"], [
3793 AC_MSG_ERROR([libkate headers do not appear to be installed on your system.
3794 You also need to check that you have a libogg posterior to the 1.0 release.])
3805 AC_ARG_WITH(,[Video plugins:])
3808 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
3809 CPPFLAGS="${CPPFLAGS_save} ${X_CFLAGS}"
3810 AC_CHECK_HEADERS(X11/extensions/dpms.h, [
3811 AC_MSG_CHECKING(for DPMSInfo in X11/extensions/dpms.h)
3812 AC_EGREP_HEADER(DPMSInfo,X11/extensions/dpms.h,[
3814 AC_DEFINE(DPMSINFO_IN_DPMS_H, 1,
3815 Define if <X11/extensions/dpms.h> defines DPMSInfo.)
3820 #include <X11/Xlib.h>
3822 CPPFLAGS="${CPPFLAGS_save}"
3827 dnl (enabled by default except on win32)
3830 [ --enable-x11 X11 support (default enabled)])
3831 if test "${enable_x11}" != "no" &&
3832 (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
3833 test "${enable_x11}" = "yes"); then
3834 CPPFLAGS="${CPPFLAGS_save} ${X_FLAGS}"
3835 AC_CHECK_HEADERS(X11/Xlib.h, [
3836 VLC_ADD_PLUGIN([panoramix])
3837 VLC_ADD_LIBS([panoramix],[${X_LIBS} ${X_PRE_LIBS} -lX11])
3838 VLC_ADD_CPPFLAGS([panoramix],[${X_CFLAGS}])
3839 AC_CHECK_LIB(Xext, XShmAttach, [
3840 VLC_ADD_PLUGIN([x11])
3841 VLC_ADD_LIBS([x11],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext])
3842 VLC_ADD_CPPFLAGS([x11],[${X_CFLAGS}])
3845 CPPFLAGS="${CPPFLAGS_save}"
3850 dnl (enabled by default except on win32)
3852 AC_ARG_ENABLE(xvideo,
3853 [ --enable-xvideo XVideo support (default enabled)])
3854 if test "${enable_xvideo}" != "no" &&
3855 (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
3856 test "${enable_xvideo}" = "yes"); then
3857 CPPFLAGS="${CPPFLAGS_save} ${X_CFLAGS}"
3858 AC_CHECK_HEADERS(X11/extensions/Xv.h, [
3859 CFLAGS="${CFLAGS_save} ${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext"
3860 AC_CHECK_LIB(Xv,XvPutImage,[
3861 # If libXv.so is available, xvideo can be a plugin. Otherwise, we
3862 # test for libXv_pic.
3863 if test -f /usr/X11R6/lib/libXv.so -o -f /usr/lib/libXv.so -o -f "${x_libraries}"/libXv.so; then
3864 VLC_ADD_PLUGIN([xvideo])
3865 VLC_ADD_CPPFLAGS([xvideo],[${X_CFLAGS}])
3866 VLC_ADD_LIBS([xvideo],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext -lXv])
3868 AC_CHECK_LIB(Xv_pic,XvPutImage,[
3869 VLC_ADD_PLUGIN([xvideo])
3870 VLC_ADD_CPPFLAGS([xvideo],[${X_CFLAGS}])
3871 VLC_ADD_LIBS([xvideo],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext -lXv_pic])
3873 VLC_ADD_BUILTINS([xvideo])
3874 VLC_ADD_LIBS([xvideo],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext -lXv])
3875 VLC_ADD_CPPFLAGS([xvideo],[${X_CFLAGS}])
3879 CFLAGS="${CFLAGS_save}"
3881 CPPFLAGS="${CPPFLAGS_save}")
3886 dnl (enabled by default except on win32)
3889 [ --enable-glx X11 OpenGL (GLX) support (default enabled)])
3890 if test "${enable_glx}" != "no" &&
3891 (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
3892 test "${enable_glx}" = "yes"); then
3893 CPPFLAGS="${CPPFLAGS_save} ${X_CFLAGS}"
3894 AC_CHECK_HEADERS(X11/Xlib.h GL/glu.h GL/glx.h)
3895 AC_COMPILE_IFELSE(AC_LANG_PROGRAM(
3896 [[#if !defined(HAVE_X11_XLIB_H) || !defined(HAVE_GL_GLU_H) || !defined(HAVE_GL_GLX_H)
3900 VLC_ADD_PLUGIN([glx])
3901 VLC_ADD_LIBS([glx],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext -lGL -lGLU])
3902 VLC_ADD_CPPFLAGS([glx],[${X_CFLAGS}])
3903 ],[AC_MSG_ERROR([Please install GL development package. Alternatively you can also configure with --disable-glx.])])
3904 CPPFLAGS="${CPPFLAGS_save}"
3909 dnl (disabled by default except on win32)
3912 [ --enable-xvmc XVMC support (default disabled)])
3913 if test "${enable_xvmc}" = "yes" &&
3914 (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
3915 test "${enable_xvmc}" = "yes"); then
3916 CPPFLAGS="${CPPFLAGS_save} ${X_FLAGS}"
3917 AC_CHECK_HEADERS(X11/extensions/vldXvMC.h, [
3918 VLC_ADD_PLUGIN([xvmc])
3919 VLC_ADD_LIBS([xvmc],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext -lXvMCW -lXv -lXinerama])
3920 VLC_ADD_CPPFLAGS([xvmc],[${X_CFLAGS}])
3922 CPPFLAGS="${CPPFLAGS_save}"
3926 dnl Check for the Xinerama extension
3928 AC_ARG_ENABLE(xinerama,
3929 [ --enable-xinerama Xinerama support (default enabled)])
3930 if test "${enable_xvideo}" != "no" && test "${enable_xinerama}" != "no" &&
3931 (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
3932 test "${enable_xvideo}" = "yes"); then
3933 ac_cv_have_xinerama="no"
3934 CPPFLAGS="${CPPFLAGS_save} ${X_CFLAGS}"
3935 CFLAGS="${CFLAGS_save} ${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext"
3936 AC_CHECK_HEADERS(X11/extensions/Xinerama.h,[
3937 AC_CHECK_LIB(Xinerama_pic, XineramaQueryExtension,[
3938 VLC_ADD_LIBS([xvideo],[-lXinerama_pic])
3939 VLC_ADD_LIBS([x11],[-lXinerama_pic])
3940 VLC_ADD_LIBS([glx],[-lXinerama_pic])
3941 ac_cv_have_xinerama="yes"
3943 AC_CHECK_LIB(Xinerama, XineramaQueryExtension,[
3944 VLC_ADD_LIBS([xvideo],[-lXinerama])
3945 VLC_ADD_LIBS([x11],[-lXinerama])
3946 VLC_ADD_LIBS([glx],[-lXinerama])
3947 ac_cv_have_xinerama="yes"
3951 if test "${ac_cv_have_xinerama}" = "yes"; then
3952 AC_DEFINE(HAVE_XINERAMA, 1, [Define this if you have libXinerama installed])
3954 CFLAGS="${CFLAGS_save}"
3955 CPPFLAGS="${CPPFLAGS_save}"
3958 dnl Check for XF86VidMode extension
3960 ac_cv_have_xf86vidmode="no"
3961 CPPFLAGS="${CPPFLAGS_save} ${X_CFLAGS}"
3962 CFLAGS="${CFLAGS_save} ${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext"
3963 AC_CHECK_HEADERS(X11/extensions/xf86vmode.h,[
3964 AC_CHECK_LIB(Xxf86vm_pic, XF86VidModeGetViewPort,[
3965 VLC_ADD_LIBS([xvideo],[-lXxf86vm_pic])
3966 VLC_ADD_LIBS([x11],[-lXxf86vm_pic])
3967 VLC_ADD_LIBS([glx],[-lXxf86vm_pic])
3968 VLC_ADD_LIBS([xvmc],[-lXxf86vm_pic])
3969 ac_cv_have_xf86vidmode="yes"
3971 AC_CHECK_LIB(Xxf86vm, XF86VidModeGetViewPort,[
3972 VLC_ADD_LIBS([xvideo],[-lXxf86vm])
3973 VLC_ADD_LIBS([x11],[-lXxf86vm])
3974 VLC_ADD_LIBS([glx],[-lXxf86vm])
3975 VLC_ADD_LIBS([xvmc],[-lXxf86vm])
3976 ac_cv_have_xf86vidmode="yes"
3980 [#ifdef HAVE_X11_XLIB_H
3981 # include <X11/Xlib.h>
3984 AS_IF([test "${ac_cv_have_xf86vidmode}" = "yes"],
3985 [AC_DEFINE(HAVE_XF86VIDMODE, 1, [Define this if you have libXxf86vm installed])
3987 CFLAGS="${CFLAGS_save}"
3988 CPPFLAGS="${CPPFLAGS_save}"
3994 dnl (enabled by default except on beos)
3996 AC_ARG_ENABLE(opengl,
3997 [ --enable-opengl OpenGL support (default enabled)])
3998 if test "${enable_opengl}" != "no" &&
3999 test "${SYS}" != "beos" -a "${SYS}" != "mingwce"; then
4000 if test "${SYS}" != "darwin"; then
4001 AC_CHECK_HEADERS(GL/gl.h GL/glu.h, [
4002 VLC_ADD_PLUGIN([opengl])
4003 if test "${SYS}" != "mingw32"; then
4004 VLC_ADD_LIBS([opengl],[${X_LIBS} -lGL -lGLU])
4006 VLC_ADD_LIBS([opengl],[-lopengl32 -lglu32])
4010 dnl OS X special case (no GL/gl.h but OpenGL/gl.h)
4011 VLC_ADD_PLUGIN([opengl])
4012 VLC_ADD_LIBS([opengl],[-Wl,-framework,OpenGL])
4020 [ --enable-sdl SDL support (default enabled)])
4021 AC_ARG_ENABLE(sdl-image,
4022 [ --enable-sdl-image SDL image support (default enabled)])
4023 if test "${enable_sdl}" != "no"
4026 AC_ARG_WITH(sdl-config-path,
4027 [ --with-sdl-config-path=PATH sdl-config path (default search in \$PATH)],
4028 [ if test "${with_sdl_config_path}" != "no"
4030 SDL_PATH="${with_sdl_config_path}:${PATH}"
4032 AC_PATH_PROG(SDL12_CONFIG, sdl12-config, no, ${SDL_PATH})
4033 SDL_CONFIG="${SDL12_CONFIG}"
4034 SDL_HEADER="SDL12/SDL.h"
4035 SDL_IMAGE="SDL12/SDL_image.h"
4036 if test "${SDL_CONFIG}" = "no"
4038 AC_PATH_PROG(SDL11_CONFIG, sdl11-config, no, ${SDL_PATH})
4039 SDL_CONFIG=${SDL11_CONFIG}
4040 SDL_HEADER="SDL11/SDL.h"
4041 SDL_IMAGE="SDL11/SDL_image.h"
4043 if test "${SDL_CONFIG}" = "no"
4045 AC_PATH_PROG(SDL_CONFIG, sdl-config, no, ${SDL_PATH})
4046 SDL_HEADER="SDL/SDL.h"
4047 SDL_IMAGE="SDL/SDL_image.h"
4049 # check for cross-compiling
4051 AC_ARG_WITH(sdl-prefix,
4052 [ --with-sdl-prefix=PATH path to libsdl (needed for cross-compiling),
4054 --with-sdl-prefix=/usr/local/arm/2.95.3/arm-linux/usr)],[],[])
4055 if test "${with_sdl_prefix}" != "no" -a -n "${with_sdl_prefix}"
4057 SDL_PREFIX="--prefix=${with_sdl_prefix}"
4059 if test "${SDL_CONFIG}" != "no"
4061 # SDL on Darwin is heavily patched and can only run SDL_image
4062 if test "${SYS}" != "darwin" -a "${SYS}" != "mingw32"; then
4063 VLC_ADD_PLUGIN([vout_sdl])
4064 VLC_ADD_PLUGIN([aout_sdl])
4066 VLC_ADD_CFLAGS([vout_sdl aout_sdl sdl_image],[`${SDL_CONFIG} ${SDL_PREFIX} --cflags | sed 's,SDL,,'`])
4067 VLC_ADD_LIBS([vout_sdl aout_sdl sdl_image],[`${SDL_CONFIG} ${SDL_PREFIX} --libs | sed 's,-rdynamic,,'`])
4068 CPPFLAGS="${CPPFLAGS_save} ${CFLAGS_vout_sdl}"
4069 AC_CHECK_HEADERS(${SDL_HEADER}, AC_DEFINE_UNQUOTED(SDL_INCLUDE_FILE,
4070 <${SDL_HEADER}>, Indicate whether we should use SDL/SDL.h or SDL11/SDL.h),
4071 [ AC_CHECK_HEADERS(SDL.h, AC_DEFINE(SDL_INCLUDE_FILE, <SDL.h>,
4072 As a last resort we also test for SDL.h presence),
4073 [ AC_MSG_ERROR([The development package for SDL is not installed.
4074 Please install it and try again. Alternatively you can also configure with
4077 AS_IF([ test "${enable_sdl_image}" != "no"],[
4078 AC_CHECK_HEADERS(${SDL_IMAGE}, [AC_DEFINE_UNQUOTED(SDL_IMAGE_INCLUDE_FILE,
4079 <${SDL_IMAGE}>, Indicate the path of SDL_image.h)
4080 VLC_ADD_PLUGIN([sdl_image])
4081 AC_CHECK_LIB(png, png_set_rows,
4082 [VLC_ADD_LIBS([sdl_image],[-lpng -lz])],[],[-lz])
4083 AC_CHECK_LIB(jpeg, jpeg_start_decompress,
4084 [VLC_ADD_LIBS([sdl_image],[-ljpeg])])
4085 AC_CHECK_LIB(tiff, TIFFClientOpen,
4086 [VLC_ADD_LIBS([sdl_image],[-ltiff])])
4087 VLC_ADD_LIBS([sdl_image], [-lSDL_image])],
4088 [ AC_CHECK_HEADERS(SDL_image.h, AC_DEFINE(SDL_IMAGE_INCLUDE_FILE, <SDL_image.h>,
4089 As a last resort we also test for SDL_image.h presence),
4090 [ AC_MSG_WARN([The development package for SDL_image is not installed.
4091 You should install it alongside your SDL package.])
4094 CPPFLAGS="${CPPFLAGS_save}"
4095 if expr 1.1.5 \> `${SDL_CONFIG} --version` >/dev/null
4097 AC_MSG_ERROR([The development package for SDL is not installed.
4098 Please install it and try again. Alternatively you can also configure with
4102 elif test "${enable_sdl}" = "yes"
4104 AC_MSG_ERROR([I couldn't find the SDL package. You can download libSDL
4105 from http://www.libsdl.org/, or configure with --disable-sdl. Have a nice day.
4113 AC_ARG_ENABLE(freetype,
4114 [ --enable-freetype freetype support (default enabled)])
4115 AC_ARG_ENABLE(fribidi,
4116 [ --enable-fribidi fribidi support (default enabled)])
4117 if test "${enable_freetype}" != "no"
4119 PKG_CHECK_MODULES(FREETYPE, freetype2,[
4120 VLC_ADD_PLUGIN([freetype])
4122 VLC_ADD_CPPFLAGS([freetype skins2],[${FREETYPE_CFLAGS}])
4123 VLC_ADD_LIBS([freetype skins2],[${FREETYPE_LIBS}])
4124 if test "${SYS}" = "mingw32"; then
4125 VLC_ADD_LIBS([freetype skins2],[-lxml2])
4127 AC_CHECK_HEADERS(fontconfig/fontconfig.h,
4128 [VLC_ADD_CPPFLAGS([freetype],[-DHAVE_FONTCONFIG])
4129 VLC_ADD_LIBS([freetype],[-lfontconfig])])
4130 AC_CHECK_HEADERS(Carbon/Carbon.h,
4131 [VLC_ADD_LDFLAGS([freetype],[-Wl,-framework,Carbon])])
4134 AS_IF([ test "${enable_freetype}" = "yes"],[
4135 AC_MSG_ERROR([I couldn't find the freetype package. You can download libfreetype2
4136 from http://www.freetype.org/, or configure with --disable-freetype. Have a nice day.
4142 if test "${enable_fribidi}" != "no"
4144 PKG_CHECK_MODULES(FRIBIDI, fribidi, [
4145 VLC_ADD_CPPFLAGS([freetype skins2], [${FRIBIDI_CFLAGS} -DHAVE_FRIBIDI])
4146 VLC_ADD_LIBS([freetype skins2], [${FRIBIDI_LIBS}])
4154 AC_ARG_ENABLE(libxml2,
4155 [ --enable-libxml2 libxml2 support (default enabled)])
4156 if test "${enable_libxml2}" != "no"
4159 AC_ARG_WITH(xml2-config-path,
4160 [ --with-xml2-config-path=PATH xml2-config path (default search in \$PATH)],
4161 [ if test "${with_xml2_config_path}" != "no"; then
4162 XML2_PATH="${with_xml2_config_path}:${PATH}"
4164 AC_PATH_PROG(XML2_CONFIG, xml2-config, no, ${XML2_PATH})
4165 if test "${XML2_CONFIG}" != "no"; then
4166 VLC_ADD_CPPFLAGS([xml],[`${XML2_CONFIG} --cflags`])
4167 VLC_ADD_LIBS([xml],[`${XML2_CONFIG} --libs`])
4168 dnl depends on the xmlTextReader extension
4169 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_xml}"
4170 LDFLAGS="${LDFLAGS_save} ${LIBS_xml}"
4171 AC_CHECK_LIB(xml2,xmlTextReaderConstName,[
4172 AC_EGREP_HEADER(xmlTextReaderConstName,libxml/xmlreader.h,[
4173 VLC_ADD_PLUGIN([xml]) ],[
4174 AC_MSG_WARN([libxml2 missing the xmlTextReader extension, you should update your version])
4175 if test "${enable_xml2}" = "yes"; then
4176 AC_MSG_ERROR([libxml2 missing the xmlTextReader extension])
4179 AC_MSG_WARN([libxml2 missing the xmlTextReader extension, you should update your version])
4180 if test "${enable_xml2}" = "yes"; then
4181 AC_MSG_ERROR([libxml2 missing the xmlTextReader extension])
4183 LDFLAGS="${LDFLAGS_save}"
4184 CPPFLAGS="${CPPFLAGS_save}"
4186 if test "${enable_xml2}" = "yes"; then
4187 AC_MSG_ERROR([Could not find libxml2])
4196 [ --enable-svg SVG support (default disabled)])
4197 if test "${enable_svg}" = "yes"
4199 PKG_CHECK_MODULES(SVG,
4200 librsvg-2.0 >= 2.9.0,
4202 VLC_ADD_LIBS([svg],[$SVG_LIBS])
4203 VLC_ADD_CFLAGS([svg],[$SVG_CFLAGS])
4204 VLC_ADD_PLUGIN([svg]) ],
4205 [AC_MSG_WARN(SVG library not found)])
4209 dnl Snapshot vout module (with cache)
4211 AC_ARG_ENABLE(snapshot,
4212 [ --enable-snapshot snapshot module (default disabled)])
4213 if test "${enable_snapshot}" = "yes"
4215 VLC_ADD_PLUGIN([snapshot])
4219 dnl Qt Embedded module
4220 dnl (disabled by default)
4223 [ --enable-qte QT Embedded support (default disabled)])
4224 if test "${enable_qte}" = "yes"
4227 [ --with-qte=PATH Qt Embedded headers and libraries])
4228 if test "${with_qte}" != "no" -a -n "${with_qte}"
4230 VLC_ADD_LIBS([qte],[-L${with_qte}/lib `echo -L${with_qte}/lib | sed 's,opt/QtPalmtop,usr,'` -ljpeg -lqte])
4231 VLC_ADD_CXXFLAGS([qte],[-I${with_qte}/include `echo -I${with_qte}/include | sed 's,opt/QtPalmtop,usr,'` -DQT_QWS_IPAQ -DQWS -fno-exceptions -fno-rtti])
4233 VLC_ADD_LIBS([qte],[-L${QTDIR}/lib `echo -L${QTDIR}/lib | sed 's,opt/QtPalmtop,usr,'` -ljpeg -lqte])
4234 VLC_ADD_CXXFLAGS([qte],[-I${QTDIR}/include `echo -I${QTDIR}/include | sed 's,opt/QtPalmtop,usr,'` -DQT_QWS_IPAQ -DQWS -fno-exceptions -fno-rtti])
4236 VLC_ADD_PLUGIN([qte])
4238 CPPFLAGS="${CPPFLAGS_save} ${CXXFLAGS_qte}"
4239 AC_CHECK_HEADERS(qt.h jpeglib.h, ,[
4240 AC_MSG_ERROR([echo "Cannot find QT Embedded development headers."])
4242 CPPFLAGS="${CPPFLAGS_save}"
4246 dnl Qt Video output module
4247 dnl (disabled by default)
4249 dnl AC_ARG_ENABLE(qt_video,
4250 dnl [ --enable-qt_video QT Video Output support (default disabled)])
4251 dnl if test "${enable_qt_video}" = "yes"
4253 dnl VLC_ADD_PLUGIN([qt_video])
4254 dnl VLC_ADD_LIBS([qt_video],[-L${QTDIR}/lib])
4255 dnl LDFLAGS="${LDFLAGS_save} ${LDFLAGS_qt_video}"
4256 dnl AC_CHECK_LIB(qt-mt,main,[
4257 dnl VLC_ADD_LIBS([qt_video],[-lqt-mt])
4259 dnl AC_CHECK_LIB(qt,main,[
4260 dnl VLC_ADD_LIBS([qt_video],[-lqt])
4263 dnl NEED_QTE_MAIN=yes
4264 dnl LDFLAGS="${LDFLAGS_save}"
4265 dnl VLC_ADD_CXXFLAGS([qt_video],[-I/usr/include/qt3 -I/usr/include/qt -I${QTDIR}/include])
4269 dnl Roku HD1000 Video output module
4271 AC_ARG_ENABLE(hd1000v,
4272 [ --enable-hd1000v HD1000 Video Output module (default enabled on HD1000)])
4273 if test "${enable_hd1000v}" != "no" -a "${CXX}" != "" &&
4274 (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
4275 test "${enable_hd1000v}" = "yes"); then
4277 AC_CHECK_HEADERS([cascade/graphics/CascadeScreen.h cascade/graphics/CascadeBitmap.h],
4279 can_build_roku="yes"
4283 AC_MSG_WARN([Not building Roku HD1000 compatible video output])
4285 if test "$can_build_roku" = "yes"
4287 VLC_ADD_PLUGIN([hd1000v])
4288 VLC_ADD_LIBS([hd1000v],[-lCascade -ldvbpsi -lmad])
4294 dnl Windows DirectX module
4297 if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce" -o "${SYS}" = "cygwin"
4299 VLC_ADD_PLUGIN([panoramix])
4302 AC_ARG_ENABLE(directx,
4303 [ --enable-directx Win32 DirectX support (default enabled on Win32)])
4304 if test "${enable_directx}" != "no"
4306 if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce" -o "${SYS}" = "cygwin"
4308 AC_ARG_WITH(directx,
4309 [ --with-directx=PATH Win32 DirectX headers])
4310 if test -z "${with_directx}"
4312 AC_CHECK_HEADERS(ddraw.h,
4313 [ VLC_ADD_PLUGIN([vout_directx])
4314 VLC_ADD_PLUGIN([aout_directx])
4315 VLC_ADD_LIBS([vout_directx],[-lgdi32])
4317 AC_CHECK_HEADERS(GL/gl.h,
4318 [ VLC_ADD_PLUGIN([glwin32])
4319 VLC_ADD_LIBS([glwin32],[-lopengl32 -lgdi32])
4321 AC_CHECK_HEADERS(d3d9.h,
4322 [ VLC_ADD_PLUGIN([direct3d])
4323 VLC_ADD_LIBS([direct3d],[-lgdi32])
4326 AC_MSG_CHECKING(for directX headers in ${with_directx})
4327 if test -f ${with_directx}/ddraw.h
4329 VLC_ADD_PLUGIN([vout_directx])
4330 VLC_ADD_PLUGIN([aout_directx])
4331 VLC_ADD_CPPFLAGS([vout_directx aout_directx],[-I${with_directx}])
4332 VLC_ADD_LIBS([vout_directx],[-lgdi32])
4336 AC_MSG_ERROR([Cannot find ${with_directx}/ddraw.h!])
4343 dnl Linux framebuffer module
4346 [ --enable-fb Linux framebuffer support (default enabled on Linux)])
4347 if test "${enable_fb}" != "no"
4349 AC_CHECK_HEADERS(linux/fb.h, [
4350 VLC_ADD_PLUGIN([fb])
4355 dnl Linux MGA module
4358 [ --enable-mga Linux kernel Matrox support (default disabled)],
4359 [ if test "${enable_mga}" = "yes"
4361 VLC_ADD_PLUGIN([mga])
4367 AC_ARG_ENABLE(svgalib,
4368 [ --enable-svgalib SVGAlib support (default disabled)])
4369 if test "${enable_svgalib}" = "yes"
4371 VLC_ADD_PLUGIN([svgalib])
4372 VLC_ADD_LIBS([svgalib],[-lvgagl -lvga])
4377 dnl try to find using: 1 - given location; 2 - directfb-config; 3 - pkg-config
4378 dnl TODO: support for static linking
4380 AC_ARG_ENABLE(directfb,
4381 [ --enable-directfb DirectFB support (default disabled)])
4382 AC_ARG_WITH(directfb,
4383 [ --with-directfb=PATH path to DirectFB headers and libraries])
4385 if test "${enable_directfb}" = "yes"; then
4386 have_directfb="false"
4387 CPPFLAGS_mydirectfb=
4389 if test "${with_directfb}" != "no" -a -n "${with_directfb}"; then
4390 dnl Trying the given location
4391 CPPFLAGS_save="${CPPFLAGS}"
4394 CPPFLAGS_new="-I${with_directfb}/include -D_REENTRANT -D_GNU_SOURCE"
4395 LIBS_new="-L${with_directfb}/lib/fusion/.libs/ -L${with_directfb}/lib/direct/.libs/"
4396 LIBS_new="${LIBS_new} -L${with_directfb}/src/.libs/"
4398 CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_new}"
4399 LIBS="${LIBS} ${LIBS_new}"
4401 dnl FIXME: too obscure
4402 AC_CHECK_HEADER([directfb.h], [
4403 AC_CHECK_LIB([direct],[direct_initialize], [
4404 AC_CHECK_LIB([fusion], [fusion_enter], [
4405 AC_CHECK_LIB([directfb], [DirectFBInit], have_directfb="true", have_directfb="false")
4406 ], have_directfb="false")
4407 ], have_directfb="false")
4408 ], have_directfb="false")
4411 CPPFLAGS="${CPPFLAGS_save}"
4414 if test "${have_directfb}" = "true"; then
4415 LIBS_mydirectfb="${LIBS_new} -lz -ldl -ldirectfb -lfusion -ldirect -lpthread"
4416 CPPFLAGS_mydirectfb="${CPPFLAGS_new}"
4419 dnl Look for directfb-config
4420 AC_PATH_PROG(DIRECTFB_CONFIG, directfb-config, no, ${PATH})
4421 if test "${DIRECTFB_CONFIG}" != "no"; then
4422 CPPFLAGS_mydirectfb="`${DIRECTFB_CONFIG} --cflags`"
4423 LIBS_mydirectfb="`${DIRECTFB_CONFIG} --libs`"
4424 have_directfb="true"
4426 dnl Trying with pkg-config
4427 PKG_CHECK_MODULES(DIRECTFB, directfb, [
4428 CPPFLAGS_mydirectfb="${DIRECTFB_CFLAGS}"
4429 LIBS_mydirectfb="${DIRECTFB_LIBS}"
4430 have_directfb="true"
4431 ], [have_directfb="false"])
4434 if test "${have_directfb}" = "true"; then
4435 VLC_ADD_PLUGIN([directfb])
4436 VLC_ADD_CPPFLAGS([directfb],[${CPPFLAGS_mydirectfb}])
4437 VLC_ADD_LIBS([directfb],[${LIBS_mydirectfb}])
4439 AC_MSG_ERROR([cannot find directfb headers and/or libraries ])
4449 [ --enable-ggi GGI support (default disabled)])
4450 if test "${enable_ggi}" = "yes"
4452 VLC_ADD_PLUGIN([ggi])
4453 VLC_ADD_LIBS([ggi],[-lggi])
4455 [ --with-ggi=PATH path to libggi],
4456 [ if test "${with_ggi}" != "no" -a -n "${with_ggi}"
4458 VLC_ADD_CPPFLAGS([ggi],[-I${with_ggi}/include])
4459 VLC_ADD_LIBS([ggi],[-L${with_ggi}/lib])
4466 AC_ARG_ENABLE(glide,
4467 [ --enable-glide Glide (3dfx) support (default disabled)])
4468 if test "${enable_glide}" = "yes"
4470 CFLAGS_save="${CFLAGS}"
4472 [ --with-glide=PATH path to libglide],
4473 [ if test "${with_glide}" != "no" -a -n "${with_glide}"
4475 VLC_ADD_CPPFLAGS([glide],[-I${with_glide}/include])
4476 VLC_ADD_LIBS([glide],[-L${with_glide}/lib])
4477 CFLAGS="$CFLAGS -I${with_glide}/include"
4479 CFLAGS="$CFLAGS -I/usr/include/glide"
4480 AC_CHECK_HEADER(glide.h,[
4481 VLC_ADD_PLUGIN([glide])
4482 VLC_ADD_LIBS([glide],[-lglide2x -lm])
4483 VLC_ADD_CPPFLAGS([glide],[-I/usr/include/glide])
4485 AC_MSG_ERROR([You don't have libglide. Install it or do not use --enable-glide])
4487 CFLAGS="${CFLAGS_save}"
4494 [ --enable-aa aalib output (default disabled)])
4495 if test "${enable_aa}" = "yes"
4497 AC_CHECK_HEADER(aalib.h,have_aa="true",have_aa="false")
4498 if test "${have_aa}" = "true"
4500 VLC_ADD_PLUGIN([aa])
4501 VLC_ADD_LIBS([aa],[-laa])
4509 [ --enable-caca libcaca output (default disabled)])
4510 if test "${enable_caca}" = "yes"
4513 AC_ARG_WITH(caca-config-path,
4514 [ --with-caca-config-path=PATH caca-config path (default search in \$PATH)],
4515 [ if test "${with_caca_config_path}" != "no"
4517 CACA_PATH="${with_caca_config_path}:${PATH}"
4519 AC_PATH_PROG(CACA_CONFIG, caca-config, no, ${CACA_PATH})
4520 if test "${CACA_CONFIG}" != "no"
4522 VLC_ADD_PLUGIN([caca])
4523 VLC_ADD_CFLAGS([caca],[`${CACA_CONFIG} --cflags`])
4524 VLC_ADD_LIBS([caca],[`${CACA_CONFIG} --plugin-libs`])
4525 AC_COMPILE_IFELSE( [AC_LANG_PROGRAM([[#include <caca.h>
4530 [AC_DEFINE(CACA_EVENT_OPAQUE, [1], ["Define if struct caca_event is opaque and must not be accessed directly"])]
4536 dnl win32 GDI plugin
4538 AC_ARG_ENABLE(wingdi,
4539 [ --enable-wingdi Win32 GDI module (default enabled on Win32)])
4540 if test "${enable_wingdi}" != "no"; then
4541 if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"; then
4542 VLC_ADD_PLUGIN([wingdi])
4543 VLC_ADD_LIBS([wingdi],[-lgdi32])
4545 if test "${SYS}" = "mingwce"; then
4546 VLC_ADD_PLUGIN([wingdi])
4547 VLC_ADD_PLUGIN([wingapi])
4555 AC_ARG_WITH(,[Audio plugins:])
4558 dnl OSS /dev/dsp module (enabled by default except on win32)
4561 [ --enable-oss Linux OSS /dev/dsp support (enabled on Linux)])
4563 if test "${enable_oss}" != "no" &&
4564 (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
4565 test "${enable_oss}" = "yes")
4567 AC_CHECK_HEADERS(soundcard.h sys/soundcard.h machine/soundcard.h, [
4568 VLC_ADD_PLUGIN([oss])
4569 AC_CHECK_LIB(ossaudio,main,VLC_ADD_LIBS([oss],[-lossaudio]))
4577 [ --enable-esd Esound library support (default disabled)],
4578 [if test "${enable_esd}" = "yes"
4580 AC_PATH_PROG(ESD_CONFIG, esd-config, no)
4581 if test "${ESD_CONFIG}" != "no"
4583 VLC_ADD_PLUGIN([esd])
4584 VLC_ADD_CFLAGS([esd],[`${ESD_CONFIG} --cflags`])
4585 VLC_ADD_LIBS([esd],[`${ESD_CONFIG} --libs`])
4590 dnl Pulseaudio module
4592 AC_ARG_ENABLE(pulse,
4593 [ --enable-pulse Pulseaudio support (default enabled)])
4594 if test "${enable_pulse}" != "no"
4596 PKG_CHECK_MODULES(PULSE, libpulse >= 0.9.8,
4597 [ VLC_ADD_PLUGIN([pulse])
4598 VLC_ADD_CFLAGS([pulse],[${PULSE_CFLAGS}])
4599 VLC_ADD_LDFLAGS([pulse],[${PULSE_LIBS}])],
4600 [AC_MSG_WARN(pulsaudio library not found)])
4604 dnl Portaudio module
4606 AC_ARG_ENABLE(portaudio,
4607 [ --enable-portaudio Portaudio library support (default disabled)],
4608 [if test "${enable_portaudio}" = "yes"
4610 VLC_ADD_PLUGIN([portaudio])
4611 VLC_ADD_CXXFLAGS([portaudio],[])
4612 if test "${SYS}" = "mingw32"; then
4613 VLC_ADD_LIBS([portaudio],[-lportaudio -lwinmm -lole32])
4615 VLC_ADD_LIBS([portaudio],[-lportaudio])
4620 dnl aRts module -- broken (freeze wxWidgets)
4623 [ --enable-arts aRts sound server (default disabled)],
4624 [if test "${enable_arts}" = "yes"
4626 AC_PATH_PROG(ARTS_CONFIG, artsc-config, no)
4627 if test "${ARTS_CONFIG}" != "no"
4629 VLC_ADD_PLUGIN([arts])
4630 VLC_ADD_CFLAGS([arts],[`${ARTS_CONFIG} --cflags`])
4631 VLC_ADD_LIBS([arts],[`${ARTS_CONFIG} --libs `])
4639 [ --enable-alsa ALSA sound support for Linux (default enabled)])
4640 if test "${enable_alsa}" != "no"
4642 AC_CHECK_HEADER(alsa/asoundlib.h, AC_CHECK_LIB(asound, main, have_alsa="true", have_alsa="false"),have_alsa="false")
4643 if test "${have_alsa}" = "true"
4645 CFLAGS="${CFLAGS_save}"
4646 AC_TRY_COMPILE([#define ALSA_PCM_NEW_HW_PARAMS_API
4647 #define ALSA_PCM_NEW_SW_PARAMS_API
4648 #include <alsa/asoundlib.h>],
4649 [snd_pcm_hw_params_get_period_time(0,0,0);],
4650 AC_DEFINE(HAVE_ALSA_NEW_API, 1, Define if ALSA is at least rc4))
4651 VLC_ADD_PLUGIN([alsa])
4652 VLC_ADD_LIBS([alsa],[-lasound -lm -ldl])
4654 if test "${enable_alsa}" = "yes"; then
4655 AC_MSG_ERROR([Could not find ALSA development headers])
4661 dnl win32 waveOut plugin
4663 AC_ARG_ENABLE(waveout,
4664 [ --enable-waveout Win32 waveOut module (default enabled on Win32)])
4665 if test "${enable_waveout}" != "no"; then
4666 if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"; then
4667 VLC_ADD_PLUGIN([waveout])
4668 VLC_ADD_LIBS([waveout],[-lwinmm])
4670 if test "${SYS}" = "mingwce"; then
4671 VLC_ADD_PLUGIN([waveout])
4676 dnl CoreAudio plugin
4678 AC_ARG_ENABLE(macosx-audio,
4679 [ --enable-macosx-audio Mac OS X audio module (default enabled on MacOS X)])
4680 if test "${enable_macosx-audio}" != "no" &&
4681 (test "${SYS}" = "darwin" || test "${enable_macosx-audio}" = "yes")
4683 AC_CHECK_HEADERS(CoreAudio/CoreAudio.h,
4684 [ VLC_ADD_PLUGIN([auhal])
4685 VLC_ADD_LDFLAGS([auhal],[-Wl,-framework,CoreAudio,-framework,AudioUnit,-framework,AudioToolbox,-framework,Carbon])
4686 ], [ AC_MSG_ERROR([cannot find CoreAudio headers]) ])
4690 dnl Roku HD1000 audio
4692 AC_ARG_ENABLE(hd1000a,
4693 [ --enable-hd1000a HD1000 audio module (default enabled on HD1000)])
4694 if test "${enable_hd1000a}" != "no" -a "${CXX}" != "" &&
4695 (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
4696 test "${enable_hd1000a}" = "yes")
4699 AC_CHECK_HEADERS(deschutes/libraries/hdmachinex225/PCMAudioPlayer.h, [
4700 VLC_ADD_PLUGIN([hd1000a])
4701 AC_CHECK_LIB(HDMachineX225,main,VLC_ADD_LIBS([hd1000a],[-lHDMachineX225])) ])
4709 [ --enable-jack JACK audio I/O modules (default disabled)],,
4712 AS_IF([test "${enable_jack}" != "no"], [
4713 AC_CHECK_HEADERS(jack/jack.h, [
4714 VLC_ADD_PLUGIN([access_jack])
4715 VLC_ADD_PLUGIN([jack])
4716 VLC_ADD_LIBS([access_jack jack],[-ljack])
4717 ],[AC_MSG_ERROR([cannot find JACK headers])])
4721 dnl CyberLink for C++ UPnP stack
4723 AC_ARG_ENABLE(cyberlink,
4724 [ --enable-cyberlink CyberLink for C++ UPnP stack (default disabled)])
4725 AS_IF([test "${enable_cyberlink}" = "yes" ], [
4726 AC_ARG_WITH(cyberlink-tree,
4727 [ --with-cyberlink-tree=PATH CyberLink for C++ tree for static linking])
4730 dnl test for --with-cyberlink-tree
4732 AS_IF([test ! -z "${with_cyberlink_tree}" -a "${CXX}" != ""], [
4734 real_cyberlink_tree="`cd ${with_cyberlink_tree} 2>/dev/null && pwd`"
4735 AS_IF([test -z "${real_cyberlink_tree}"], [
4736 dnl The given directory can't be found
4738 AC_MSG_ERROR([cannot cd to ${with_cyberlink_tree}])
4740 CPPFLAGS_save="${CPPFLAGS}"
4741 CPPFLAGS_cyberlink="-I${real_cyberlink_tree}/include"
4742 CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_cyberlink}"
4743 AC_CHECK_HEADERS([cybergarage/upnp/MediaServer.h],
4744 [ VLC_ADD_CXXFLAGS([upnp_cc], [${CPPFLAGS_cyberlink}])
4745 VLC_ADD_PLUGIN([upnp_cc])
4747 AC_MSG_ERROR([cannot find CyberLink for C++ headers])
4749 AC_MSG_CHECKING(for libclink.a in ${with_cyberlink_tree})
4750 AS_IF([test -f "${real_cyberlink_tree}/lib/unix/libclink.a"], [
4751 AC_MSG_RESULT(${real_cyberlink_tree}/lib/unix/libclink.a)
4752 dnl The mere fact that we have to make such an ugly check sucks
4753 AC_MSG_CHECKING(for XML parser to link CyberLink with)
4756 for l in "`xml2-config --libs`" -lexpat -lxerces-c; do
4757 LIBS="$LIBS_save ${real_cyberlink_tree}/lib/unix/libclink.a -lpthread $l"
4758 AC_LINK_IFELSE([AC_LANG_PROGRAM([
4759 #include <cybergarage/upnp/media/player/MediaPlayer.h>
4760 using namespace CyberLink;
4762 class testclass : public SearchResponseListener, public MediaPlayer
4764 virtual void deviceSearchResponseReceived( SSDPPacket *)
4771 addSearchResponseListener (this);
4775 ],[testclass l;])],[LIBS_cclink="$l"])
4778 dnl should not happen - otherwise this needs fixing - hence FAILURE
4779 AS_IF([test "${LIBS_cclink}" = "no"],
4780 [AC_MSG_FAILURE([cannot find XML parser for CyberLink])])
4781 AC_MSG_RESULT([${LIBS_cclink}])
4782 VLC_ADD_LIBS([upnp_cc], [${real_cyberlink_tree}/lib/unix/libclink.a -lpthread ${LIBS_cclink}])
4785 AC_MSG_ERROR([cannot find ${real_cyberlink_tree}/lib/unix/libclink.a, make sure you compiled CyberLink for C++ in ${with_cyberlink_tree}])
4787 CPPFLAGS="${CPPFLAGS_save}"
4793 dnl UPnP Plugin (Intel SDK)
4796 [ --enable-upnp Intel UPnP SDK (default enabled)])
4798 VLC_ADD_CXXFLAGS([upnp_intel], [ ])
4799 AS_IF([test "x${enable_upnp}" != "xno"], [
4800 AC_CHECK_LIB([upnp], [UpnpInit], [has_upnp="yes"], [has_upnp="no"], [-lpthread])
4801 AS_IF([test "x${enable_upnp}" != "x" && test "${has_upnp}" = "no"], [
4802 AC_MSG_ERROR([cannot find Intel UPnP SDK (libupnp)])
4804 AS_IF([test "${has_upnp}" = "yes"], [
4805 VLC_ADD_LIBS([upnp_intel], [-lupnp -lixml])
4811 AS_IF([test "${has_upnp}" = "yes"], [
4812 VLC_ADD_PLUGIN([upnp_intel])
4817 dnl Interface plugins
4820 AC_ARG_WITH(,[Interface plugins:])
4822 dnl special case for BeOS
4823 if test "${SYS}" = "beos"
4825 VLC_ADD_BUILTINS([beos])
4831 AC_ARG_ENABLE(skins2,
4832 [ --enable-skins2 Skins2 interface module (default disabled)])
4833 if test "${enable_skins2}" = "yes" ||
4834 (test "${SYS}" != "darwin" && test "${SYS}" != "beos" &&
4835 test "${SYS}" != "mingwce" && test "${enable_skins2}" != "no"); then
4837 dnl test for the required libraries
4838 skins2_missing_lib="no"
4841 if test "${have_freetype}" != "yes"; then
4842 skins2_missing_lib="yes"
4843 if test "${enable_skins2}" = "yes"; then
4844 AC_MSG_ERROR([Could not find freetype (required for skins2)])
4848 if test "${skins2_missing_lib}" = "no" && (test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"); then
4849 VLC_ADD_PLUGIN([skins2])
4850 ALIASES="${ALIASES} svlc"
4851 VLC_ADD_CPPFLAGS([skins2],[-U_OFF_T_ -U_off_t -Imodules/gui/skins2 -DWIN32_SKINS])
4852 VLC_ADD_CXXFLAGS([skins2],[-O2 -fno-rtti])
4853 VLC_ADD_LIBS([skins2],[-loleaut32 -lwinspool -lwinmm -lshell32 -lctl3d32 -ladvapi32 -lwsock32 -lgdi32 -lcomdlg32 -lole32 -luuid -lcomctl32])
4855 else if test "${skins2_missing_lib}" = "no" && (test "${SYS}" = "darwin"); then
4856 VLC_ADD_PLUGIN([skins2])
4857 ALIASES="${ALIASES} svlc"
4858 VLC_ADD_CPPFLAGS([skins2],[-Imodules/gui/skins2 -DMACOSX_SKINS])
4859 VLC_ADD_CXXFLAGS([skins2],[-O2 -fno-rtti])
4860 VLC_ADD_LDFLAGS([skins2],[-Wl,-framework,Carbon])
4862 else if test "${skins2_missing_lib}" = "no"; then
4863 VLC_ADD_PLUGIN([skins2])
4864 ALIASES="${ALIASES} svlc"
4865 VLC_ADD_CPPFLAGS([skins2],[-Imodules/gui/skins2 ${X_CFLAGS} -DX11_SKINS])
4866 VLC_ADD_CXXFLAGS([skins2],[-O2 -fno-rtti])
4867 VLC_ADD_LIBS([skins2],[${X_LIBS} ${X_PRE_LIBS} -lXext -lX11])
4870 AM_CONDITIONAL(BUILD_SKINS, [test "${enable_skins2}" = "yes"])
4875 dnl AC_ARG_ENABLE(gtk,
4876 dnl [ --enable-gtk Gtk+ support (default enabled)])
4877 dnl if test "${enable_gtk}" != "no"
4879 dnl GTK_PATH="${PATH}"
4880 dnl AC_ARG_WITH(gtk-config-path,
4881 dnl [ --with-gtk-config-path=PATH gtk-config path (default search in \$PATH)],
4882 dnl [ if test "${with_gtk_config_path}" != "no"
4884 dnl GTK_PATH="${with_gtk_config_path}:${PATH}"
4886 dnl # look for gtk-config
4887 dnl AC_PATH_PROG(GTK12_CONFIG, gtk12-config, no, ${GTK_PATH})
4888 dnl GTK_CONFIG=${GTK12_CONFIG}
4889 dnl if test "${GTK_CONFIG}" = "no"
4891 dnl AC_PATH_PROG(GTK_CONFIG, gtk-config, no, ${GTK_PATH})
4893 dnl if test "${GTK_CONFIG}" != "no"
4895 dnl if expr 1.2.0 \> `${GTK_CONFIG} --version` >/dev/null
4897 dnl AC_MSG_ERROR([Your development package for Gtk+ is too old, you need at least version 1.2.0. Please upgrade and try again. Alternatively you can also configure with --disable-gtk.])
4899 dnl if test "${SYS}" != "mingw32"; then
4900 dnl VLC_ADD_CFLAGS([gtk],[`${GTK_CONFIG} --cflags gtk gthread`])
4901 dnl VLC_ADD_LIBS([gtk],[`${GTK_CONFIG} --libs gtk gthread | sed 's,-rdynamic,,'`])
4903 dnl VLC_ADD_CFLAGS([gtk],[`${GTK_CONFIG} --cflags gtk`])
4904 dnl VLC_ADD_LIBS([gtk],[`${GTK_CONFIG} --libs gtk | sed 's,-rdynamic,,'`])
4906 dnl # now look for the gtk.h header
4907 dnl CPPFLAGS="${CPPFLAGS_save} ${CFLAGS_gtk}"
4908 dnl ac_cv_gtk_headers=yes
4909 dnl AC_CHECK_HEADERS(gtk/gtk.h glib.h gdk/gdk.h, , [
4910 dnl ac_cv_gtk_headers=no
4911 dnl echo "Cannot find gtk development headers."
4913 dnl if test "${ac_cv_gtk_headers}" = "yes"
4915 dnl VLC_ADD_PLUGIN([gtk])
4916 dnl if test "${SYS}" != "mingw32"; then
4917 dnl NEED_GTK_MAIN=yes
4919 dnl ALIASES="${ALIASES} gvlc"
4921 dnl CPPFLAGS="${CPPFLAGS_save}"
4926 dnl Gtk+2 module ! Disabled for now as it is unusable and confuses users
4928 dnl AC_ARG_ENABLE(gtk2,
4929 dnl [ --enable-gtk2 Gtk2 support (default disabled)])
4930 dnl if test "${enable_gtk2}" = "yes"
4932 dnl PKG_CHECK_MODULES(GTK2, [gtk+-2.0 >= 2.0.0, gthread-2.0])
4933 dnl VLC_ADD_CFLAGS([gtk2],[${GTK2_CFLAGS}])
4934 dnl VLC_ADD_LIBS([gtk2],[${GTK2_LIBS}])
4935 dnl VLC_ADD_PLUGIN([gtk2])
4936 dnl if test "${SYS}" != "mingw32"; then
4937 dnl NEED_GTK2_MAIN=yes
4942 dnl PDA Gtk+2 module
4945 [ --enable-pda PDA interface needs Gtk2 support (default disabled)])
4946 if test "${enable_pda}" = "yes"
4948 PKG_CHECK_MODULES(GTK2, [gtk+-2.0 >= 2.0.0, gthread-2.0])
4949 VLC_ADD_CFLAGS([gtk2],[${GTK2_CFLAGS}])
4950 VLC_ADD_LIBS([gtk2],[${GTK2_LIBS}])
4951 VLC_ADD_CFLAGS([pda],[${GTK2_CFLAGS} ${CFLAGS_pda}])
4952 VLC_ADD_LIBS([pda],[${LDFLAGS_pda}])
4953 VLC_ADD_LIBS([pda],[${GTK2_LIBS}])
4954 VLC_ADD_PLUGIN([pda])
4955 if test "${SYS}" != "mingw32"; then
4957 VLC_ADD_CFLAGS([gtk2_main],[$GTK2_CFLAGS])
4958 VLC_ADD_LIBS([gtk2_main],[$GTK2_LIBS])
4961 AM_CONDITIONAL(BUILD_PDA, [test "${enable_pda}" = "yes"])
4964 dnl dnl Gnome module
4966 dnl AC_ARG_ENABLE(gnome,
4967 dnl [ --enable-gnome Gnome interface support (default disabled)],
4968 dnl [if test "${enable_gnome}" = "yes"; then
4969 dnl # look for gnome-config
4970 dnl AC_PATH_PROG(GNOME_CONFIG, gnome-config, no)
4971 dnl if test -x ${GNOME_CONFIG}
4973 dnl VLC_ADD_CFLAGS([gnome],[`${GNOME_CONFIG} --cflags gtk gnomeui`])
4974 dnl VLC_ADD_LIBS([gnome],[`${GNOME_CONFIG} --libs gnomeui | sed 's,-rdynamic,,'`])
4976 dnl # now look for the gnome.h header
4977 dnl CPPFLAGS="${CPPFLAGS_save} ${CFLAGS_gnome}"
4978 dnl AC_CHECK_HEADERS(gnome.h, [
4979 dnl VLC_ADD_PLUGIN([gnome])
4980 dnl NEED_GTK_MAIN=yes
4981 dnl NEED_GNOME_MAIN=yes
4982 dnl ALIASES="${ALIASES} gnome-vlc"
4983 dnl dnl We need this because of some moronic gnomesupport.h flavours
4984 dnl AC_MSG_CHECKING(for strndup in gnome.h)
4985 dnl AC_EGREP_HEADER(strndup,gnome.h,[
4986 dnl AC_MSG_RESULT(yes)
4987 dnl AC_DEFINE(STRNDUP_IN_GNOME_H, 1,
4988 dnl Define if <gnome.h> defines strndup.)],[
4989 dnl AC_MSG_RESULT(no)])
4991 dnl AC_MSG_ERROR([Can't find gnome headers. Please install the gnome
4992 dnl developement tools or remove the --enable-gnome option])
4994 dnl CPPFLAGS="${CPPFLAGS_save}"
4998 dnl Gnome2 module ! Disabled for know as it is unuseable and confuses users
5000 dnl AC_ARG_ENABLE(gnome2,
5001 dnl [ --enable-gnome2 Gnome2 support (default disabled)])
5002 dnl if test "${enable_gnome2}" = "yes"
5004 dnl PKG_CHECK_MODULES(GNOME2, [libgnomeui-2.0])
5005 dnl VLC_ADD_CFLAGS([gnome2],[${GNOME2_CFLAGS}])
5006 dnl VLC_ADD_LIBS([gnome2],[${GNOME2_LIBS}])
5007 dnl VLC_ADD_PLUGIN([gnome2])
5008 dnl if test "${SYS}" != "mingw32"; then
5009 dnl NEED_GNOME2_MAIN=yes
5014 dnl wxWidgets module
5016 AC_ARG_ENABLE(wxwidgets,
5017 [ --enable-wxwidgets wxWidgets support (default disabled)])
5019 if test "${enable_wxwidgets}" = "yes"
5021 AC_MSG_WARN([wxWidgets support is deprecated and will be removed. Consider using Qt4 instead.])
5022 WXWIDGETS_PATH="${PATH}"
5023 AC_ARG_WITH(wx-config-path,
5024 [ --with-wx-config-path=PATH wx-config path (default search in \$PATH)],
5025 [ if test "${with_wx_config_path}" != "no"
5027 WXWIDGETS_PATH="${with_wx_config_path}:${PATH}"
5029 WXWIDGETS_NAME="wx-config"
5030 AC_ARG_WITH(wx-config,
5031 [ --with-wx-config=NAME wx-config name (default is wx-config)],
5032 [ if test "${with_wx_config}" != "no"
5034 WXWIDGETS_NAME="${with_wx_config}"
5036 # look for wx-config
5037 AC_PATH_PROG(WX_CONFIG, ${WXWIDGETS_NAME}, no, ${WXWIDGETS_PATH})
5038 if test "${WX_CONFIG}" != "no" -a "${CXX}" != ""
5040 if expr 2.6.0 \> `${WX_CONFIG} --version` >/dev/null
5042 AC_MSG_ERROR([You need wxWidgets version 2.6.0 or upwards. Please upgrade and try again.])
5046 # playlist.cpp:1351: error: ISO C++ forbids cast to non-reference type
5047 # into a warning. However better would be to fix playlist.cpp
5048 AC_CACHE_CHECK([if \$CXX accepts -fpermissive],
5049 [ac_cv_cxx_fpermissive],
5050 [CXXFLAGS="${CXXFLAGS_save} -fpermissive"
5051 AC_TRY_COMPILE([],,ac_cv_cxx_fpermissive=yes,
5052 ac_cv_cxx_fpermissive=no)])
5053 if test "${ac_cv_cxx_fpermissive}" = "yes"; then
5054 VLC_ADD_CXXFLAGS([wxwidgets],-fpermissive)
5056 VLC_ADD_LIBS([wxwidgets],[`${WX_CONFIG} --libs`])
5057 VLC_ADD_CXXFLAGS([wxwidgets],[`${WX_CONFIG} --cxxflags`])
5058 # check if we must link against gtk2 libs
5059 # if __WXGTK20__ && __WXGTK__ are defined
5060 # for modules/gui/wxwidgets/video.cpp
5061 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
5064 #error ok, we need to link against gtk2
5066 ])],[WXGTK=no],[WXGTK=yes])
5067 if test "$WXGTK" = "yes"; then
5068 ${PKG_CONFIG} --exists gtk+-2.0 && VLC_ADD_LIBS([wxwidgets],[`$PKG_CONFIG --libs gtk+-2.0`])
5070 if ${WX_CONFIG} --unicode
5072 # wxwidgets should provide the following flags but does not
5073 # the following is required to compile for win32
5074 VLC_ADD_CXXFLAGS([wxwidgets],[-D_UNICODE -DUNICODE])
5076 AC_MSG_ERROR([You need a unicode build of wxWidgets. Please fix that and try again. Better yet, you can configure with --disable-wxwidgets.])
5078 if test "$have_libcdio" = "yes"
5080 VLC_ADD_LIBS([wxwidgets],[$LIBCDIO_LIBS])
5081 VLC_ADD_CXXFLAGS([wxwidgets],[$LIBCDIO_CFLAGS])
5083 AC_MSG_WARN([Probe disc disabled because ok libcdio library not found])
5086 if test "$have_libvcdinfo" = "yes"
5088 VLC_ADD_LIBS([wxwidgets],[$VCDINFO_LIBS])
5089 VLC_ADD_CXXFLAGS([wxwidgets],[$VCDINFO_CFLAGS])
5091 AC_MSG_WARN([VCD information on Probe disc disabled because ok libvcdinfo not found])
5094 # now look for the wxprec.h header
5095 CPPFLAGS="${CPPFLAGS_save} ${CXXFLAGS_wxwidgets}"
5096 ac_cv_wx_headers=yes
5097 AC_CHECK_HEADERS(wx/wxprec.h, , [
5099 echo "Cannot find wxWidgets development headers."
5101 if test "${ac_cv_wx_headers}" = "yes"
5103 VLC_ADD_PLUGIN([wxwidgets])
5104 AC_DEFINE([HAVE_WX], 1, [Define to 1 if you have WxWidgets library.])
5105 ALIASES="${ALIASES} wxvlc"
5107 CPPFLAGS="${CPPFLAGS_save}"
5110 dnl WxWidgets plugin will yield incorrect code without this
5111 VLC_ADD_CXXFLAGS([wxwidgets], [-fno-strict-aliasing])
5119 [ --enable-qt4 QT 4 support (default enabled) ])
5120 AS_IF([test "${enable_qt4}" != "no" &&
5121 (test "${SYS}" != "darwin" || test "${enable_qt4}" = "yes")], [
5122 PKG_CHECK_MODULES(QT4, [QtCore QtGui >= 4.2.0],
5123 [ VLC_ADD_PLUGIN([qt4])
5124 AC_DEFINE([HAVE_QT4], 1, [Define to 1 if you have QT4 library.])
5125 ALIASES="${ALIASES} qvlc"
5127 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" -a "${SYS}" != "cygwin" -a "${SYS}" != "darwin"; then
5128 VLC_ADD_LIBS([qt4],[$QT4_LIBS -lX11])
5130 VLC_ADD_LIBS([qt4],[$QT4_LIBS])
5132 VLC_ADD_CXXFLAGS([qt4],[$QT4_CFLAGS -DQT4LOCALEDIR=\\\\\\\"$($PKG_CONFIG --variable=prefix QtCore)/share/qt4/translations/\\\\\\\"])
5133 AC_PATH_PROGS(MOC, [moc-qt4 moc], moc,`$PKG_CONFIG --variable=exec_prefix QtCore`/bin)
5134 AC_PATH_PROG(RCC, rcc, rcc,`$PKG_CONFIG --variable=exec_prefix QtCore`/bin)
5135 AC_PATH_PROGS(UIC, [uic-qt4 uic], uic,`$PKG_CONFIG --variable=exec_prefix QtCore`/bin)
5137 AS_IF([test "${enable_qt4}" = "yes"],[
5138 AC_MSG_ERROR(QT4 library not found)
5140 AC_MSG_WARN(QT4 library not found)
5144 AM_CONDITIONAL(ENABLE_QT4, test "$enableqt4" = "true")
5147 dnl WinCE GUI module
5149 AC_ARG_ENABLE(wince,
5150 [ --enable-wince Windows CE interface (default enabled with MinGW)])
5151 if test "${enable_wince}" != "no"; then
5152 if test "${SYS}" = "mingwce"; then
5153 VLC_ADD_BUILTINS([wince])
5154 VLC_ADD_CXXFLAGS([wince],[])
5155 VLC_ADD_LIBS([wince],[-lcommctrl -lcommdlg -laygshell])
5157 VLC_ADD_LIBS([wince],[\\\${top_builddir}modules/gui/wince/wince_rc.o])
5158 elif test "${SYS}" = "mingw32"; then
5159 VLC_ADD_CXXFLAGS([wince],[])
5160 VLC_ADD_LIBS([wince],[-lcomctl32 -lcomdlg32 -lgdi32 -lole32])
5162 VLC_ADD_LIBS([wince],[\\\${top_builddir}modules/gui/wince/wince_rc.o])
5167 dnl Simple test for skins2 dependency
5169 if test "${enable_skins2}" != "no"
5171 if test "${WX_CONFIG}" = "no"
5173 AC_MSG_ERROR([The skins2 module depends on the wxWidgets development package. Without it you won't be able to open any dialog box from the interface, which makes the skins2 interface rather useless. Install the wxWidgets development package or alternatively you can also configure with: --disable-wxwidgets --disable-skins2.])
5180 dnl AC_ARG_ENABLE(qt,
5181 dnl [ --enable-qt Qt interface support (default disabled)],
5182 dnl [if test "${enable_qt}" = "yes"; then
5183 dnl VLC_ADD_PLUGIN([qt])
5184 dnl ALIASES="${ALIASES} qvlc"
5185 dnl VLC_ADD_LIBS([qt],[-L${QTDIR}/lib])
5186 dnl LDFLAGS="${LDFLAGS_save} ${LDFLAGS_qt}"
5187 dnl AC_CHECK_LIB(qt-mt,main,[
5188 dnl VLC_ADD_LIBS([qt],[-lqt-mt])
5190 dnl AC_CHECK_LIB(qt,main,[
5191 dnl VLC_ADD_LIBS([qt],[-lqt])
5194 dnl LDFLAGS="${LDFLAGS_save}"
5195 dnl VLC_ADD_CXXFLAGS([qt],[-I/usr/include/qt3 -I/usr/include/qt -I${QTDIR}/include])
5196 dnl if test -x ${QTDIR}/bin/moc
5198 dnl MOC=${QTDIR}/bin/moc
5207 dnl AC_ARG_ENABLE(kde,
5208 dnl [ --enable-kde KDE interface support (default disabled)],
5209 dnl [if test "${enable_kde}" = "yes"; then
5210 dnl VLC_ADD_PLUGIN([kde])
5211 dnl ALIASES="${ALIASES} kvlc"
5212 dnl VLC_ADD_LIBS([kde],[-L${KDEDIR}/lib])
5213 dnl dnl Check for -lkfile (only in KDE 2) or -lkdeui -lkio (KDE 3)
5214 dnl LDFLAGS="${LDFLAGS_save} ${LDFLAGS_kde}"
5215 dnl AC_CHECK_LIB(kfile,main,[
5216 dnl VLC_ADD_LIBS([kde],[-lkfile])
5218 dnl LDFLAGS="${LDFLAGS_save} ${LDFLAGS_kde}"
5219 dnl AC_CHECK_LIB(kdeui,main,[
5220 dnl VLC_ADD_LIBS([kde],[-lkdeui])
5222 dnl LDFLAGS="${LDFLAGS_save} ${LDFLAGS_kde}"
5223 dnl AC_CHECK_LIB(kio,main,[
5224 dnl VLC_ADD_LIBS([kde],[-lkio])
5226 dnl LDFLAGS="${LDFLAGS_save}"
5227 dnl VLC_ADD_CXXFLAGS([kde],[-I/usr/include/kde -I/usr/include/qt3 -I/usr/include/qt])
5228 dnl VLC_ADD_CXXFLAGS([kde],[-I${KDEDIR}/include -I${QTDIR}/include])
5229 dnl if test -x ${QTDIR}/bin/moc
5231 dnl MOC=${QTDIR}/bin/moc
5238 dnl Opie QT embedded module
5241 [ --enable-opie Qt embedded interface support (default disabled)],
5242 [if test "${enable_opie}" = "yes"; then
5244 [ --with-qte=PATH Qt Embedded headers and libraries])
5245 if test "${with_qte}" != "no" -a -n "${with_qte}"
5247 VLC_ADD_LIBS([qte],[-L${with_qte}/lib `echo -L${with_qte}/lib | sed 's,opt/QtPalmtop,usr,'` -ljpeg -lqte])
5248 VLC_ADD_CXXFLAGS([qte],[-I${with_qte}/include `echo -I${with_qte}/include | sed 's,opt/QtPalmtop,usr,'` -DQT_QWS_IPAQ -DQWS -fno-exceptions -fno-rtti])
5250 VLC_ADD_LIBS([qte],[-L${QTDIR}/lib `echo -L${QTDIR}/lib | sed 's,opt/QtPalmtop,usr,'`])
5251 VLC_ADD_CXXFLAGS([qte],[-I${QTDIR}/include `echo -I${QTDIR}/include | sed 's,opt/QtPalmtop,usr,'`])
5253 CPPFLAGS="${CPPFLAGS_save} ${CXXFLAGS_qte}"
5254 AC_CHECK_HEADERS(qt.h jpeglib.h, ,[
5255 AC_MSG_ERROR([echo "Cannot find QT Embedded development headers."])
5257 CPPFLAGS="${CPPFLAGS_save}"
5259 VLC_ADD_PLUGIN([opie])
5261 VLC_ADD_LIBS([opie],[-lqpe ${LDFLAGS_qte}])
5262 VLC_ADD_CXXFLAGS([opie],[${CXXFLAGS_qte}])
5263 if test "${with_qte}" != "no" -a -n "${with_qte}"
5265 MOC=${with_qte}/bin/moc
5267 MOC=${QTDIR}/bin/moc
5272 dnl MacOS X video output/gui modules
5274 AC_ARG_ENABLE(macosx,
5275 [ --enable-macosx MacOS X support (default enabled on MacOS X)])
5276 if test "x${enable_macosx}" = "xyes"
5278 # VLC_ADD_LDFLAGS([access_eyetv], [-Wl,-framework,Foundation])
5279 VLC_ADD_LDFLAGS([macosx minimal_macosx opengllayer qtcapture],[-Wl,-framework,Cocoa])
5280 VLC_ADD_LDFLAGS([macosx minimal_macosx opengllayer],[-Wl,-framework,OpenGL])
5281 VLC_ADD_LDFLAGS([macosx minimal_macosx], [-Wl,-framework,Carbon])
5282 VLC_ADD_LDFLAGS([macosx minimal_macosx], [-Wl,-framework,AGL])
5283 VLC_ADD_LDFLAGS([macosx], [-Wl,-framework,IOKit])
5284 VLC_ADD_LDFLAGS([macosx], [-Wl,-framework,QuickTime])
5285 VLC_ADD_LDFLAGS([macosx qtcapture], [-Wl,-framework,QTKit])
5286 VLC_ADD_LDFLAGS([macosx], [-Wl,-framework,WebKit])
5287 VLC_ADD_LDFLAGS([opengllayer qtcapture], [-Wl,-framework,QuartzCore])
5288 VLC_ADD_LDFLAGS([qtcapture], [-Wl,-framework,CoreVideo])
5289 VLC_ADD_OBJCFLAGS([macosx minimal_macosx opengllayer growl], [-fobjc-exceptions] )
5291 # VLC_ADD_PLUGIN([access_eyetv])
5292 VLC_ADD_PLUGIN([qtcapture])
5293 VLC_ADD_PLUGIN([macosx])
5294 VLC_ADD_PLUGIN([minimal_macosx])
5297 CFLAGS="$CFLAGS -x objective-c"
5298 AC_CHECK_HEADER(QuartzCore/CALayer.h,
5299 [VLC_ADD_PLUGIN([opengllayer])
5300 VLC_ADD_OBJCFLAGS([opengllayer], [-isysroot /Developer/SDKs/MacOSX10.5.sdk -mmacosx-version-min=10.5])])
5308 [ --enable-qnx QNX RTOS support (default enabled on QNX RTOS)])
5309 if test "${enable_qnx}" != "no"
5311 AC_CHECK_HEADERS(Ph.h, [
5312 VLC_ADD_PLUGIN([qnx])
5313 VLC_ADD_LIBS([qnx],[-lasound -lph])
5320 AC_ARG_ENABLE(ncurses,
5321 [ --disable-ncurses ncurses interface support (default enabled)],
5322 [if test "${enable_ncurses}" != "no"; then
5323 AC_CHECK_HEADER(ncurses.h,
5324 [AC_CHECK_LIB(ncursesw, mvprintw,
5325 [VLC_ADD_PLUGIN([ncurses])
5326 VLC_ADD_LIBS([ncurses],[-lncursesw])
5327 ALIASES="${ALIASES} nvlc"
5328 AC_DEFINE([HAVE_NCURSESW], 1, [Define to 1 if you have libncursesw.])
5329 AC_CHECK_LIB(ncursesw, tgetent, [],
5330 AC_CHECK_LIB(tinfow, tgetent, [VLC_ADD_LIBS([ncurses],[-ltinfow])],
5331 [AC_CHECK_LIB(tinfo, tgetent, [VLC_ADD_LIBS([ncurses],[-ltinfo])],
5332 [AS_IF([test "x${enable_ncurses}" != "x"],
5333 [AC_MSG_ERROR([tgetent not found in ncursesw tinfow tinfo]
5339 [AC_CHECK_LIB( ncurses, mvprintw,
5340 [VLC_ADD_PLUGIN([ncurses])
5341 ALIASES="${ALIASES} nvlc"
5342 VLC_ADD_LIBS([ncurses],[-lncurses])
5343 AC_CHECK_LIB(ncurses, tgetent, [],
5344 [AC_CHECK_LIB(tinfo, tgetent, [VLC_ADD_LIBS([ncurses],[-ltinfo])],
5345 [AS_IF([test "x${enable_ncurses}" != "x"],
5346 [AC_MSG_ERROR([tgetent not found in ncurses tinfo])])]
5349 [AS_IF([test "x${enable_ncurses}" != "x"], [
5350 AC_MSG_ERROR([libncurses not found])])]
5361 [ --enable-xosd xosd interface support (default disabled)])
5362 if test "${enable_xosd}" = "yes"
5364 AC_CHECK_HEADER(xosd.h, have_xosd="true", have_xosd="false")
5365 AC_CHECK_LIB(xosd,xosd_set_offset,
5366 AC_DEFINE(HAVE_XOSD_VERSION_1, 1, Define if <xosd.h> is 1.0.x),
5367 AC_CHECK_LIB(xosd,xosd_set_horizontal_offset,
5368 AC_DEFINE(HAVE_XOSD_VERSION_2, 1, Define if <xosd.h> is 2.0.x),
5369 AC_TRY_COMPILE([#include <xosd.h>],
5370 [xosd_init("foo","bar",12,XOSD_top,2,12,42);],,
5371 AC_DEFINE(HAVE_XOSD_VERSION_0, 1, Define if <xosd.h> is pre-1.0.0))))
5372 if test "${have_xosd}" = "true"
5374 VLC_ADD_PLUGIN([xosd])
5375 VLC_ADD_LIBS([xosd],[-lxosd])
5380 dnl Framebuffer (overlay) plugin
5382 AC_ARG_ENABLE(fbosd,
5383 [ --enable-fbosd fbosd interface support (default disabled)])
5384 if test "${enable_fbosd}" = "yes"
5386 AC_CHECK_HEADERS(linux/fb.h, [
5387 VLC_ADD_PLUGIN([fbosd])
5392 dnl Visualisation plugin
5394 AC_ARG_ENABLE(visual,
5395 [ --enable-visual visualisation plugin (default enabled)])
5396 if test "${enable_visual}" != "no"
5398 VLC_ADD_PLUGIN([visual])
5402 dnl OpenGL visualisation plugin
5404 AC_ARG_ENABLE(galaktos,
5405 [ --enable-galaktos OpenGL visualisation plugin (default disabled)])
5406 if test "${enable_galaktos}" = "yes"
5408 AC_CHECK_HEADERS(GL/gl.h GL/glu.h, [
5409 VLC_ADD_PLUGIN([galaktos])
5410 if test "${SYS}" != "mingw32"; then
5411 VLC_ADD_LIBS([galaktos],[${X_LIBS} -lGL -lGLU])
5413 VLC_ADD_LIBS([galaktos],[-lopengl32])
5419 dnl goom visualization plugin
5422 [ --enable-goom goom visualisation plugin (default disabled)])
5423 if test "${enable_goom}" = "yes"
5425 AC_ARG_WITH(goom-tree,
5426 [ --with-goom-tree=PATH goom tree for static linking (required)])
5429 dnl test for --with-goom-tree
5431 if test "${with_goom_tree}" != "no" -a -n "${with_goom_tree}"; then
5432 AC_MSG_CHECKING(for libgoom2.a in ${with_goom_tree})
5433 real_goom_tree="`cd ${with_goom_tree} 2>/dev/null && pwd`"
5434 if test -z "${real_goom_tree}"; then
5435 dnl The given directory can't be found
5437 AC_MSG_ERROR([cannot cd to ${with_goom_tree}])
5439 if test -f "${real_goom_tree}/src/.libs/libgoom2.a"; then
5440 AC_MSG_RESULT(${real_goom_tree}/src/.libs/libgoom2.a)
5441 VLC_ADD_PLUGIN([goom])
5442 VLC_ADD_LIBS([goom],[-L${real_goom_tree}/src/.libs -lgoom2])
5443 VLC_ADD_CPPFLAGS([goom],[-I${real_goom_tree}/src -DUSE_GOOM_TREE])
5445 dnl The given libgoom2 wasn't built, try to look for the old goom
5447 AC_MSG_CHECKING(for libgoom.a in ${with_goom_tree})
5448 if test -f "${real_goom_tree}/libgoom.a"; then
5449 AC_MSG_RESULT(${real_goom_tree}/libgoom.a)
5450 VLC_ADD_PLUGIN([goom])
5451 VLC_ADD_LIBS([goom],[-L${real_goom_tree} -lgoom])
5452 VLC_ADD_CPPFLAGS([goom],[-I${real_goom_tree} -DUSE_GOOM_TREE -DOLD_GOOM])
5454 dnl The given libgoom wasn't built
5456 AC_MSG_ERROR([cannot find ${real_goom_tree}/src/.libs/libgoom2.a, make sure you compiled goom in ${with_goom_tree}])
5460 AC_CHECK_HEADERS(goom/goom.h, [
5461 LDFLAGS="${LDFLAGS_save} ${LIBS_goom}"
5462 AC_CHECK_LIB(goom2, goom_init, [
5463 VLC_ADD_PLUGIN([goom])
5464 VLC_ADD_LIBS([goom],[-lgoom2])
5466 AC_MSG_ERROR([Could not find goom on your system: you may get it from http://www.ios-software.com/.])
5468 LDFLAGS="${LDFLAGS_save}"
5474 dnl AtmoLight (homebrew AmbiLight)
5476 if test "${SYS}" = "mingw32" -o "${SYS}" = "linux"; then
5478 [ --disable-atmo AtmoLight (homebrew philips ambilight) (default enabled)])
5479 if test "${enable_atmo}" != "no"; then
5481 VLC_ADD_PLUGIN([atmo])
5487 dnl Bonjour services discovery
5489 AC_ARG_ENABLE(bonjour,
5490 [ --enable-bonjour Bonjour services discovery (default enabled)])
5491 if test "${enable_bonjour}" != "no"
5493 PKG_CHECK_MODULES(BONJOUR, avahi-client >= 0.3,
5494 [PKG_CHECK_MODULES(BONJOUR, avahi-client >= 0.6,
5495 [AC_DEFINE(HAVE_AVAHI_06, 1, [Define if you have avahi-client 0.6 or greater])],)
5496 AC_DEFINE(HAVE_AVAHI_CLIENT, 1, [Define if you have the avahi-client library])
5497 VLC_ADD_LIBS([bonjour access_output_http],[$BONJOUR_LIBS])
5498 VLC_ADD_CFLAGS([bonjour access_output_http],[$BONJOUR_CFLAGS])
5499 VLC_ADD_PLUGIN([bonjour]) ],
5500 [AC_MSG_WARN(avahi-client library not found)])
5507 [ --enable-lirc lirc support (default disabled)])
5508 if test "${enable_lirc}" = "yes"
5510 AC_CHECK_HEADER(lirc/lirc_client.h, AC_CHECK_LIB(lirc_client, lirc_init, have_lirc="true", have_lirc="false"),have_lirc="false")
5511 if test "${have_lirc}" = "true"
5513 VLC_ADD_PLUGIN([lirc])
5514 VLC_ADD_LIBS([lirc],[-llirc_client])
5519 AC_ARG_WITH(,[Misc options:])
5524 AC_ARG_ENABLE(libgcrypt,
5525 [ --enable-libgcrypt libgcrypts support (default enabled)])
5527 GCRYPT_PATH="${PATH}"
5528 AC_ARG_WITH(libgcrypt-config-path,
5529 [ --with-libgcrypt-config-path=PATH libgcrypt-config path (default search in \$PATH)],
5530 [ if test "${with_libgcrypt_config_path}" != "no"
5532 GCRYPT_PATH="${with_libgcrypt_config_path}:${PATH}"
5535 if test "${enable_libgcrypt}" != "no"
5537 dnl Workaround for cross-compiling since AM_PATH_LIBGRYPT doesn't dectect
5538 dnl it and looks for libgcrypt headers in the wrong place.
5539 if test "${host_cpu}" = "${build_cpu}"
5541 AM_PATH_LIBGCRYPT([1:1.1.94], [have_libgcrypt="yes"], [have_libgcrypt="no"])
5543 AC_CHECK_HEADERS(gcrypt.h,have_libgcrypt="yes",have_libgcrypt="no")
5546 AM_CONDITIONAL([HAVE_LIBGCRYPT], [test "${have_libgcrypt}" = "yes"])
5547 AS_IF([test "${have_libgcrypt}" = "yes"],[
5548 # look for libgcrypt-config
5549 AC_PATH_PROG(GCRYPT_CONFIG, "libgcrypt-config", no, ${GCRYPT_PATH})
5550 GCRYPT_CFLAGS=`${GCRYPT_CONFIG} --cflags`
5551 GCRYPT_LIBS=`${GCRYPT_CONFIG} --libs`
5557 AC_ARG_ENABLE(gnutls,
5558 [ --enable-gnutls gnutls TLS/SSL support (default enabled)])
5560 AS_IF([test "${enable_gnutls}" != "no"], [
5561 PKG_CHECK_MODULES(GNUTLS, [gnutls >= 1.3.3], [
5562 VLC_ADD_PLUGIN([gnutls])
5563 VLC_ADD_CFLAGS([gnutls], [$GNUTLS_CFLAGS])
5564 AS_IF([test "${SYS}" = "mingw32"], [
5565 dnl pkg-config --libs gnutls omits these
5566 VLC_ADD_LIBS([gnutls], [-lz])
5567 VLC_ADD_LIBS([gnutls], [${LTLIBINTL}])
5569 AS_IF([test "${have_libgcrypt}" = "yes"],[
5570 VLC_ADD_LIBS([gnutls], ${GCRYPT_LIBS})
5571 VLC_ADD_CFLAGS([gnutls], ${GCRYPT_CFLAGS})
5573 VLC_ADD_LIBS([gnutls], [$GNUTLS_LIBS])
5575 AS_IF([test "${enable_gnutls}" = "yes"], [
5576 AC_MSG_ERROR([gnutls not present or too old (version 1.2.9 required)])
5582 dnl update checking system
5584 AC_ARG_ENABLE(update-check,
5585 [ --enable-update-check update checking system (default disabled)])
5586 if test "${enable_update_check}" = "yes"
5588 if test "${have_libgcrypt}" != "yes"
5590 AC_MSG_ERROR([libgcrypt is required for update checking system])
5592 VLC_ADD_LIBS([libvlc], ${GCRYPT_LIBS})
5593 VLC_ADD_CFLAGS([libvlc], ${GCRYPT_CFLAGS})
5594 AC_DEFINE([UPDATE_CHECK], 1, [Define if you want to use the VLC update mechanism])
5598 dnl Endianness check, AC_C_BIGENDIAN doesn't work if we are cross-compiling
5600 dnl We give the user the opportunity to specify
5601 dnl --with-words=big or --with-words=little ; otherwise, try to guess
5604 [ --with-words=endianness set endianness (big or little)])
5605 case "${with_words}" in
5607 ac_cv_c_bigendian=yes
5610 ac_cv_c_bigendian=no
5613 dnl Try to guess endianness by matching patterns on a compiled
5614 dnl binary, by looking for an ASCII or EBCDIC string
5615 AC_CACHE_CHECK([whether the byte order is big-endian],
5616 [ac_cv_c_bigendian],
5617 [ac_cv_c_bigendian="unknown"
5618 [cat >conftest.c <<EOF
5619 short am[] = { 0x4249, 0x4765, 0x6e44, 0x6961, 0x6e53, 0x7953, 0 };
5620 short ai[] = { 0x694c, 0x5454, 0x656c, 0x6e45, 0x6944, 0x6e61, 0 };
5621 void _a(void) { char*s = (char*)am; s = (char *)ai; }
5622 short ei[] = { 0x89D3, 0xe3e3, 0x8593, 0x95c5, 0x89c4, 0x9581, 0 };
5623 short em[] = { 0xc2c9, 0xc785, 0x95c4, 0x8981, 0x95e2, 0xa8e2, 0 };
5624 void _e(void) { char*s = (char*)em; s = (char*)ei; }
5625 int main(void) { _a(); _e(); return 0; }
5628 if test -f conftest.c
5630 if ${CC-cc} -c conftest.c -o conftest.o >>config.log 2>&1 \
5631 && test -f conftest.o
5633 if test "`strings conftest.o | grep BIGenDianSyS`"
5635 ac_cv_c_bigendian="yes"
5637 if test "`strings conftest.o | grep LiTTleEnDian`"
5639 ac_cv_c_bigendian="no"
5644 if test "${ac_cv_c_bigendian}" = "unknown"
5646 AC_MSG_ERROR([Could not guess endianness, please use --with-words])
5650 dnl Now we know what to use for endianness, just put it in the header
5651 if test "${ac_cv_c_bigendian}" = "yes"
5653 AC_DEFINE(WORDS_BIGENDIAN, 1, big endian system)
5657 dnl DLL loader copied from MPlayer copied from somewhere else (WINE ?)
5660 AC_ARG_ENABLE(loader,
5661 [ --enable-loader build DLL loader for ELF i386 platforms (default disabled)])
5662 AM_CONDITIONAL(LOADER, [test "${enable_loader}" = "yes"])
5663 AS_IF([test "${enable_loader}" = "yes"],
5664 [ VLC_ADD_PLUGIN([dmo])
5665 VLC_ADD_CPPFLAGS([dmo],[-I../../../@top_srcdir@/libs/loader])
5666 VLC_ADD_LIBS([dmo],[../../../libs/loader/libloader.la -lpthread])
5667 VLC_ADD_CPPFLAGS([quicktime],[-I../../@top_srcdir@/libs/loader])
5668 VLC_ADD_LIBS([quicktime],[../../libs/loader/libloader.la -lpthread])
5669 VLC_ADD_CPPFLAGS([realaudio],[-I../../@top_srcdir@/libs/loader -DLOADER])
5670 VLC_ADD_LIBS([realaudio],[../../libs/loader/libloader.la])
5673 AC_ARG_WITH(,[Components:])
5679 [ --enable-vlc build the VLC media player (default enabled)])
5680 AM_CONDITIONAL(BUILD_VLC, [test "${enable_vlc}" != "no"])
5683 dnl Microsoft ActiveX support
5686 AC_ARG_ENABLE(activex,
5687 [ --enable-activex build a vlc-based ActiveX control (default enabled on Win32)])
5688 AC_ARG_WITH(wine-sdk-path,
5689 [ --with-wine-sdk-path=PATH path to wine sdk])
5690 if test "${enable_activex}" != "no"
5692 if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"
5694 AC_CHECK_PROGS(MIDL, [midl], no)
5695 if test "${with_wine_sdk_path}" != ""
5697 WINE_SDK_PATH=${with_wine_sdk_path}
5698 AC_PATH_PROG(WIDL, widl, no, [$WINE_SDK_PATH/bin:$WINE_SDK_PATH/tools/widl])
5703 AC_CHECK_HEADERS(ole2.h,
5704 [AC_CHECK_HEADERS(olectl.h,
5705 [ VLC_ADD_CPPFLAGS([activex],[-DUNICODE -D_UNICODE -D_MIDL_USE_GUIDDEF_])
5706 VLC_ADD_CXXFLAGS([activex],[-fno-exceptions])
5707 VLC_ADD_LIBS([activex],[-lole32 -loleaut32 -luuid -lshlwapi])
5708 AC_CHECK_HEADERS(objsafe.h,
5709 VLC_ADD_CXXFLAGS([activex],[-DHAVE_OBJSAFE_HEADER]),,
5717 PLUGINS_BINDINGS="${PLUGINS_BINDINGS} activex"
5719 [ AC_MSG_ERROR([required OLE headers are missing from your system]) ]
5721 [ AC_MSG_ERROR([required OLE headers are missing from your system]) ]
5726 AC_ARG_VAR(MIDL, [Microsoft IDL compiler (Win32 platform only)])
5727 AM_CONDITIONAL(HAS_MIDL_COMPILER, test "${MIDL}" != "no")
5728 AC_ARG_VAR(WIDL, [Wine IDL compiler (requires Wine SDK)])
5729 AM_CONDITIONAL(HAS_WIDL_COMPILER, test "${WIDL}" != "no")
5730 AM_CONDITIONAL(BUILD_ACTIVEX,${activex})
5736 AC_ARG_ENABLE(mozilla,
5737 [ --enable-mozilla build a vlc-based Firefox/Mozilla plugin (default disabled)])
5738 AC_ARG_WITH(mozilla-sdk-path,
5739 [ --with-mozilla-sdk-path=PATH path to mozilla sdk])
5741 if test "${enable_mozilla}" = "yes"
5743 dnl currently vlc plugin only needs headers, no xpcom support apis are actually used
5744 need_xpcom_libs=false
5746 if test "${with_mozilla_sdk_path}" = "" -o "${with_mozilla_sdk_path}" = "no"
5748 dnl New firefox-1.5 SDK api
5749 PKG_CHECK_MODULES([FIREFOX], [firefox-plugin],
5751 PKG_CHECK_MODULES([FIREFOX_XPCOM], [firefox-xpcom],
5754 PKG_CHECK_MODULES([MOZILLA_NSPR], [mozilla-nspr],
5757 PKG_CHECK_MODULES([NSPR], [nspr],
5760 AC_MSG_ERROR([Please install the nspr development tools.])
5766 CPPFLAGS="${CPPFLAGS_save} ${FIREFOX_CFLAGS} ${FIREFOX_XPCOM_CFLAGS} ${MOZILLA_NSPR_CFLAGS} ${NSPR_CFLAGS} ${MOZILLA_CPPFLAGS}"
5767 MOZILLA_REQUIRED_HEADERS=1
5768 AC_CHECK_HEADERS(mozilla-config.h,,MOZILLA_REQUIRED_HEADERS=0)
5769 AC_CHECK_HEADERS(npapi.h,,MOZILLA_REQUIRED_HEADERS=0)
5770 AC_CHECK_HEADERS(npruntime.h,,MOZILLA_REQUIRED_HEADERS=0,
5775 if test "${MOZILLA_REQUIRED_HEADERS}" = "0"; then
5776 AC_MSG_ERROR([Please install the Firefox development tools; mozilla-config.h, plugin/npapi.h and plugin/npruntime.h were not found.])
5778 MOZILLA_REQUIRED_HEADERS=
5780 firefox_include=`pkg-config --variable=includedir firefox-plugin`
5781 if test -f "${firefox_include}/mozilla-config.h" -a -f "${firefox_include}/mozilla-config32.h"; then
5782 MOZILLA_CONFIG_H="${firefox_include}/mozilla-config32.h"
5783 elif test -f "${firefox_include}/mozilla-config.h" -a -f "${firefox_include}/mozilla-config64.h"; then
5784 MOZILLA_CONFIG_H="${firefox_include}/mozilla-config64.h"
5786 MOZILLA_CONFIG_H="${firefox_include}/mozilla-config.h"
5788 if grep '^#define MOZ_X11 1' ${MOZILLA_CONFIG_H} 2>&1 > /dev/null ; then
5789 AC_CHECK_HEADERS(X11/xpm.h,,AC_MSG_ERROR([Please install libXpm-devel library for required X11/xpm.h]))
5790 VLC_ADD_LIBS([mozilla], [${X_LIBS} ${X_PRE_LIBS} -lX11 -lXt -lXpm])
5792 VLC_ADD_CPPFLAGS([mozilla],[${CPPFLAGS}])
5793 VLC_ADD_LDFLAGS([mozilla],[${MOZILLA_LDFLAGS}])
5794 VLC_ADD_LIBS([mozilla],[${FIREFOX_LIBS} ${MOZILLA_NSPR_LIBS} ${NSPR_LIBS}])
5795 VLC_ADD_PLUGIN([mozilla])
5797 CPPFLAGS="${CPPFLAGS_save}"
5800 AC_PATH_PROG(MOZILLA_CONFIG, mozilla-config, no)
5801 if test "${MOZILLA_CONFIG}" = "no"
5803 AC_PATH_PROG(SEAMONKEY_CONFIG, seamonkey-config, no)
5804 if test "${SEAMONKEY_CONFIG}" = "no"
5806 AC_PATH_PROG(XULRUNNER_CONFIG, xulrunner-config, no)
5807 if test "${XULRUNNER_CONFIG}" = "no"
5809 AC_MSG_ERROR([Please install the Mozilla development tools, mozilla-config was not found.])
5812 MOZILLA_CONFIG="${XULRUNNER_CONFIG}"
5815 MOZILLA_CONFIG="${SEAMONKEY_CONFIG}"
5820 if test ! -z "${MOZILLA_CONFIG}"
5822 if ${MOZILLA_CONFIG} --defines | grep -q 'MOZ_X11=1'; then
5823 LDFLAGS="${LDFLAGS_save} ${X_LIBS} ${X_PRE_LIBS}"
5824 AC_CHECK_LIB(Xt,XtStrings,
5826 VLC_ADD_CPPFLAGS([mozilla],[${X_CFLAGS}])
5827 VLC_ADD_LIBS([mozilla],[${X_LIBS} ${X_PRE_LIBS} -lXt -lX11 -lSM -lICE -lXpm])
5830 [[${X_LIBS} ${X_PRE_LIBS} -lX11 -lSM -lICE -lXpm]
5832 AC_CHECK_HEADERS(X11/xpm.h,,AC_MSG_ERROR([Please install libXpm-devel library for required X11/xpm.h]))
5833 LDFLAGS="${LDFLAGS_save}"
5837 PLUGINS_BINDINGS="${PLUGINS_BINDINGS} mozilla"
5838 dnl Workaround for http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=150490
5839 VLC_ADD_CPPFLAGS([mozilla],[[`${MOZILLA_CONFIG} --cflags plugin xpcom java | sed 's,-I\([^ ]*\)/mozilla/\([^ ]*\),-I\1/\2 -I\1/mozilla/\2,g' | xargs`]])
5840 if ${need_xpcom_libs}; then
5841 VLC_ADD_LIBS([mozilla],[`${MOZILLA_CONFIG} --libs plugin xpcom`])
5843 VLC_ADD_LIBS([mozilla],[`${MOZILLA_CONFIG} --libs plugin`])
5845 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_mozilla}"
5846 MOZILLA_REQUIRED_HEADERS=1
5847 AC_CHECK_HEADERS(mozilla-config.h,,MOZILLA_REQUIRED_HEADERS=0)
5848 AC_CHECK_HEADERS(npapi.h,,MOZILLA_REQUIRED_HEADERS=0)
5849 AC_CHECK_HEADERS(npruntime.h,,MOZILLA_REQUIRED_HEADERS=0,
5854 if test "${MOZILLA_REQUIRED_HEADERS}" = "0"
5856 AC_MSG_ERROR([Please install the Mozilla development tools, required headers were not found.])
5858 MOZILLA_REQUIRED_HEADERS=
5859 CPPFLAGS="${CPPFLAGS_save}"
5860 MOZILLA_SDK_PATH="`${MOZILLA_CONFIG} --prefix`"
5862 dnl End of moz_sdk = ""
5864 dnl special case for mingw32
5865 if test "${SYS}" = "mingw32"
5867 AC_CHECK_TOOL(CYGPATH, cygpath, "")
5868 dnl latest gecko sdk does not have an xpcom directory
5869 if test -d "${with_mozilla_sdk_path}/xpcom"; then
5870 mozilla_sdk_xpcom="/xpcom"
5874 real_mozilla_sdk="`cd ${with_mozilla_sdk_path} 2>/dev/null && pwd`"
5875 CPPFLAGS="${CPPFLAGS_save} -I${real_mozilla_sdk} -I${real_mozilla_sdk}/include"
5876 MOZILLA_REQUIRED_HEADERS=1
5877 AC_CHECK_HEADERS(mozilla-config.h,,MOZILLA_REQUIRED_HEADERS=0)
5878 AC_CHECK_HEADERS(npapi.h,,MOZILLA_REQUIRED_HEADERS=0)
5879 AC_CHECK_HEADERS(npruntime.h,,MOZILLA_REQUIRED_HEADERS=0,
5884 if test "${MOZILLA_REQUIRED_HEADERS}" = "0"
5886 AC_MSG_ERROR([Please install the Mozilla development tools, required headers were not found.])
5888 MOZILLA_REQUIRED_HEADERS=
5890 PLUGINS_BINDINGS="${PLUGINS_BINDINGS} mozilla"
5891 VLC_ADD_CPPFLAGS([mozilla],[-DXPCOM_GLUE -DHAVE_CPP_MODERN_SPECIALIZE_TEMPLATE_SYNTAX -I${real_mozilla_sdk} -I${real_mozilla_sdk}/include -I${real_mozilla_sdk}/embedstring/include -I${real_mozilla_sdk}/xpcom/include -I${real_mozilla_sdk}/nspr/include -I${real_mozilla_sdk}/string/include -I${real_mozilla_sdk}/plugin/include -I${real_mozilla_sdk}/java/include])
5892 if ${need_xpcom_libs}; then
5893 VLC_ADD_LIBS([mozilla],[-L${real_mozilla_sdk}/embedstring/bin -L${real_mozilla_sdk}/xpcom/bin -L${real_mozilla_sdk}/nspr/bin -L${real_mozilla_sdk}/string/bin -L${real_mozilla_sdk}/lib -lnspr4 -lplds4 -lplc4 -lxpcomglue])
5894 if test "${SYS}" = "mingw32"; then
5895 dnl latest gecko sdk does not have embedstring
5896 if test -d "${real_mozilla_sdk}/embedstring/bin"
5898 VLC_ADD_LIBS([mozilla],[-lembedstring])
5902 MOZILLA_SDK_PATH="${real_mozilla_sdk}"
5904 if test -n "${CYGPATH}"; then
5905 real_mozilla_sdk="`${CYGPATH} -w ${real_mozilla_sdk}`"
5907 CPPFLAGS="${CPPFLAGS_save}"
5911 AM_CONDITIONAL(BUILD_MOZILLA,${mozilla})
5913 dnl Tests for Osso and Xsp
5914 AC_CHECK_LIB(osso, osso_display_blanking_pause, [
5915 PKG_CHECK_MODULES(GLIB2, glib-2.0, [
5916 VLC_ADD_CPPFLAGS([x11 xvideo xvmc glx],[-DHAVE_OSSO ${DBUS_CFLAGS} ${GLIB2_CFLAGS}])
5917 VLC_ADD_LIBS([x11 xvideo xvmc glx],[-losso])
5920 AC_CHECK_LIB(Xsp, XSPSetPixelDoubling,[
5921 VLC_ADD_CPPFLAGS([x11 xvideo xvmc glx],[-DHAVE_XSP])
5922 VLC_ADD_LIBS([x11 xvideo xvmc glx],[-lXsp])
5928 AC_ARG_ENABLE(testsuite,
5929 [ --enable-testsuite build test modules (default disabled)])
5930 if test "${enable_testsuite}" = "yes"
5932 TESTS="test1 test2 test3 test4"
5934 dnl we define those so that bootstrap sets the right linker
5935 VLC_ADD_CXXFLAGS([test2],[])
5936 VLC_ADD_OBJCFLAGS([test3],[])
5937 dnl this one is needed until automake knows what to do
5938 VLC_ADD_LIBS([test3],[-lobjc])
5940 VLC_ADD_PLUGIN([test1])
5941 VLC_ADD_PLUGIN([test2])
5942 VLC_ADD_PLUGIN([test3])
5943 VLC_ADD_PLUGIN([test4])
5947 dnl Microsoft Layer for Unicode for WIN9x/ME
5949 if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"
5951 AC_CHECK_LIB(unicows, LoadUnicowsSymbol, [
5952 VLC_ADD_LDFLAGS([vlc libvlc],[-Wl,--exclude-libs,libunicows.a -lunicows])
5959 if test "${NEED_GTK_MAIN}" != "no"
5961 VLC_ADD_PLUGIN([gtk_main])
5962 VLC_ADD_CFLAGS([gtk_main],[${CFLAGS_gtk}])
5963 VLC_ADD_LDFLAGS([gtk_main],[${LDFLAGS_gtk}])
5966 if test "${NEED_GNOME_MAIN}" != "no"
5968 VLC_ADD_PLUGIN([gnome_main])
5969 VLC_ADD_CFLAGS([gnome_main],[${CFLAGS_gtk} ${CFLAGS_gnome}])
5970 VLC_ADD_LDFLAGS([gnome_main],[${LDFLAGS_gtk} ${LDFLAGS_gnome}])
5973 if test "${NEED_GTK2_MAIN}" != "no"
5975 VLC_ADD_PLUGIN([gtk2_main])
5976 VLC_ADD_CFLAGS([gtk2],[-DNEED_GTK2_MAIN])
5977 VLC_ADD_CFLAGS([pda],[-DNEED_GTK2_MAIN])
5978 VLC_ADD_CFLAGS([gtk2_main],[${CFLAGS_gtk2} ${CFLAGS_pda}])
5979 VLC_ADD_LDFLAGS([gtk2_main],[${LDFLAGS_gtk2} ${LDFLAGS_pda}])
5982 if test "${NEED_GNOME2_MAIN}" != "no"
5984 VLC_ADD_PLUGIN([gnome2_main])
5985 VLC_ADD_CFLAGS([gnome2_main],[${CFLAGS_gtk2} ${CFLAGS_gnome2}])
5986 VLC_ADD_LDFLAGS([gnome2_main],[${LDFLAGS_gtk2} ${LDFLAGS_gnome2}])
5992 if test "${NEED_QTE_MAIN}" != "no"
5994 VLC_ADD_PLUGIN([qte_main])
5995 VLC_ADD_CXXFLAGS([opie qte qt_video],[-DNEED_QTE_MAIN])
5996 VLC_ADD_CXXFLAGS([qte_main],[${CXXFLAGS_qte} ${CXXFLAGS_qt_video}])
5997 VLC_ADD_LDFLAGS([qte_main],[${LDFLAGS_qte} ${LDFLAGS_qt_video}])
6001 dnl Plugin and builtin checks
6005 dnl Automagically disable plugins if there is no system support for
6006 dnl dynamically loadable files (.so, .dll, .dylib).
6007 dnl don't forget vlc-win32 still can load .dll as plugins
6008 AS_IF([test "${ac_cv_have_plugins}" = "no"], [
6009 AC_MSG_WARN([*** No plugin support! Building statically! ***])
6013 AS_IF([test "${enable_shared}" = "no"], [
6017 AS_IF([test "${plugin_support}" != "no"], [
6018 AC_DEFINE(HAVE_DYNAMIC_PLUGINS, 1, Define if we have support for dynamic plugins)
6020 AM_CONDITIONAL(HAVE_PLUGINS, [test "${plugin_support}" != "no"])
6022 dnl Temporary(?) hack for plugins/builtins transition
6023 dnl VLC_ADD_PLUGIN([${BUILTINS}])
6027 dnl Pic and shared libvlc stuff
6029 AS_IF([test "${SYS}" = "mingw32"], [
6030 FILE_LIBVLCCORE_DLL="!define LIBVLCCORE_DLL libvlccore.dll"
6031 FILE_LIBVLC_DLL="!define LIBVLC_DLL libvlc.dll"
6035 dnl Stuff used by the program
6037 AC_DEFINE_UNQUOTED(VERSION_MESSAGE, "${VERSION} ${CODENAME}", [Simple version string])
6038 AC_DEFINE_UNQUOTED(COPYRIGHT_MESSAGE, "VLC media player - version ${VERSION} ${CODENAME} - (c) ${COPYRIGHT_YEARS} the VideoLAN team", [Copyright string])
6039 AC_DEFINE_UNQUOTED(COPYRIGHT_YEARS, "${COPYRIGHT_YEARS}", [The copyright years])
6040 AC_DEFINE_UNQUOTED(CONFIGURE_LINE, "${CONFIGURE_LINE}", [The ./configure command line])
6041 AC_DEFINE_UNQUOTED(PACKAGE_VERSION_MAJOR,"${VERSION_MAJOR}", [version major number])
6042 AC_DEFINE_UNQUOTED(PACKAGE_VERSION_MINOR,"${VERSION_MINOR}", [version minor number])
6043 AC_DEFINE_UNQUOTED(PACKAGE_VERSION_REVISION,"${VERSION_REVISION}", [version minor number])
6044 AC_DEFINE_UNQUOTED(PACKAGE_VERSION_EXTRA,"${VERSION_EXTRA}", [version minor number])
6045 AC_SUBST(VERSION_MAJOR)
6046 AC_SUBST(VERSION_MINOR)
6047 AC_SUBST(VERSION_REVISION)
6048 AC_DEFINE_UNQUOTED(VLC_COMPILE_BY, "`whoami`", [user who ran configure])
6049 if test "${build_os}" = "cygwin"
6051 AC_DEFINE_UNQUOTED(VLC_COMPILE_HOST, "`hostname`", [host which ran configure])
6053 AC_DEFINE_UNQUOTED(VLC_COMPILE_HOST, "`hostname -s`", [host which ran configure])
6055 AC_DEFINE_UNQUOTED(VLC_COMPILE_DOMAIN, "`dnsdomainname 2>/dev/null || domainname 2>/dev/null || echo unknown`", [domain of the host which ran configure])
6056 AC_DEFINE_UNQUOTED(VLC_COMPILER, "`$CC -v 2>&1 | tail -n 1`", [compiler])
6059 dnl Handle substvars that use $(top_srcdir)
6061 VLC_CONFIG="top_builddir=\"\$(top_builddir)\" \$(top_builddir)/vlc-config"
6062 AC_SUBST(VLC_CONFIG)
6063 CPPFLAGS_save="${CPPFLAGS_save} -I\$(top_srcdir)/include -I\$(top_builddir)/include"
6071 dnl Create the vlc-config script
6073 LDFLAGS_libvlc="${LDFLAGS_libvlc} ${LDFLAGS_builtin}"
6076 dnl Configuration is finished
6086 AC_SUBST(MOZILLA_SDK_PATH)
6087 AC_SUBST(WINE_SDK_PATH)
6089 AC_SUBST(AM_CPPFLAGS)
6090 AC_SUBST(MACOSX_DEPLOYMENT_TARGET)
6091 AC_SUBST(FILE_LIBVLCCORE_DLL)
6092 AC_SUBST(FILE_LIBVLC_DLL)
6094 dnl Create vlc-config.in
6095 VLC_OUTPUT_VLC_CONFIG_IN
6098 extras/package/win32/vlc.win32.nsi
6100 projects/activex/Makefile
6101 projects/activex/axvlc.inf
6103 extras/package/ipkg/Makefile
6104 libs/loader/Makefile
6107 projects/mozilla/Makefile
6116 modules/access/Makefile
6117 modules/access/bda/Makefile
6118 modules/access/dshow/Makefile
6119 modules/access/dvb/Makefile
6120 modules/access/mms/Makefile
6121 modules/access/cdda/Makefile
6122 modules/access/rtsp/Makefile
6123 modules/access/rtmp/Makefile
6124 modules/access/v4l2/Makefile
6125 modules/access/vcd/Makefile
6126 modules/access/vcdx/Makefile
6127 modules/access/screen/Makefile
6128 modules/access_filter/Makefile
6129 modules/access_output/Makefile
6130 modules/audio_filter/Makefile
6131 modules/audio_filter/channel_mixer/Makefile
6132 modules/audio_filter/converter/Makefile
6133 modules/audio_filter/resampler/Makefile
6134 modules/audio_filter/spatializer/Makefile
6135 modules/audio_mixer/Makefile
6136 modules/audio_output/Makefile
6137 modules/codec/Makefile
6138 modules/codec/cmml/Makefile
6139 modules/codec/dmo/Makefile
6140 modules/codec/ffmpeg/Makefile
6141 modules/codec/subtitles/Makefile
6142 modules/codec/spudec/Makefile
6143 modules/codec/xvmc/Makefile
6144 modules/control/Makefile
6145 modules/control/http/Makefile
6146 modules/demux/Makefile
6147 modules/demux/asf/Makefile
6148 modules/demux/avi/Makefile
6149 modules/demux/mp4/Makefile
6150 modules/demux/mpeg/Makefile
6151 modules/demux/playlist/Makefile
6152 modules/gui/Makefile
6153 modules/gui/beos/Makefile
6154 modules/gui/pda/Makefile
6155 modules/gui/macosx/Makefile
6156 modules/gui/minimal_macosx/Makefile
6157 modules/gui/qnx/Makefile
6158 modules/gui/qt4/Makefile
6159 modules/gui/skins2/Makefile
6160 modules/gui/wxwidgets/Makefile
6161 modules/gui/wince/Makefile
6162 modules/meta_engine/Makefile
6163 modules/misc/Makefile
6164 modules/misc/dummy/Makefile
6165 modules/misc/lua/Makefile
6166 modules/misc/memcpy/Makefile
6167 modules/misc/notify/Makefile
6168 modules/misc/testsuite/Makefile
6169 modules/misc/playlist/Makefile
6170 modules/misc/osd/Makefile
6171 modules/misc/xml/Makefile
6172 modules/misc/probe/Makefile
6173 modules/mux/Makefile
6174 modules/mux/mpeg/Makefile
6175 modules/mux/rtp/Makefile
6176 modules/packetizer/Makefile
6177 modules/services_discovery/Makefile
6178 modules/stream_out/Makefile
6179 modules/stream_out/transrate/Makefile
6180 modules/video_chroma/Makefile
6181 modules/video_filter/Makefile
6182 modules/video_filter/atmo/Makefile
6183 modules/video_filter/dynamicoverlay/Makefile
6184 modules/video_output/Makefile
6185 modules/video_output/msw/Makefile
6186 modules/video_output/qte/Makefile
6187 modules/video_output/x11/Makefile
6188 modules/visualization/Makefile
6189 modules/visualization/visual/Makefile
6190 modules/visualization/galaktos/Makefile
6193 dnl Generate makefiles
6196 # Cannot use AC_CONFIG_FILES([vlc-config]) as is automatically built,
6197 # not provided with the source
6198 ${SHELL} ./config.status --file=vlc-config
6199 chmod 0755 vlc-config
6201 dnl echo "Enabled builtin modules :"
6202 dnl for a in `./vlc-config --target builtin` ; do echo $a; done | sed -e 's,modules\/\(.*\)\/lib\(.*\)\.a,\2 (\1),'
6204 dnl echo "Enabled plugin modules :"
6205 dnl for a in `./vlc-config --target plugin` ; do echo $a; done | sed -e 's,modules\/\(.*\)\/lib\(.*\)_plugin,\2 (\1),'
6207 dnl Shortcut to nice compile message
6209 echo '#! /bin/sh' >compile
6210 echo rm -f .error\$\$ >>compile
6211 echo ERROR=0 >>compile
6212 echo export PATH=$PATH LANG=C >>compile
6213 echo "(make \$@ 2>&1 || touch .error\$\$)| \\" >>compile
6214 echo '`sed -ne "s/^top_srcdir *= *//p" < Makefile`/extras/buildsystem/make.pl' >>compile
6215 echo test -f .error\$\$ \&\& ERROR=1 >>compile
6216 echo rm -f .error\$\$ >>compile
6217 echo exit \$ERROR >>compile
6221 libvlc configuration
6222 --------------------
6223 version : ${VERSION}
6225 architecture : ${ARCH}
6227 test "${enable_debug}" = "yes" && printf "debug "
6228 test "${enable_cprof}" = "yes" && printf "cprof "
6229 test "${enable_gprof}" = "yes" && printf "gprof "
6230 test "${enable_optimizations}" = "yes" && printf "optim "
6231 test "${enable_release}" = "yes" && printf "release " || printf "devel "
6233 if test "${enable_vlc}" != "no"; then
6234 echo "vlc aliases :${ALIASES}"
6236 echo "build vlc executable : no"
6238 echo "plugins/bindings :${PLUGINS_BINDINGS}
6240 You can check which modules have been enabled
6241 with \`./vlc-config --list plugin'.
6242 You can tune the compiler flags in vlc-config.
6243 To build vlc and its plugins, type \`./compile' or \`make'.
6245 if test "x$ac_ld_does_not_support_text_reloc" = "xyes"; then
6247 echo "Warning: Due to a bug in ld, mmx/sse support has been"
6249 echo " FFmpeg will be REALLY slow."
6250 echo " VLC WILL NOT PERFORM AS EXPECTED."