1 dnl Autoconf settings for vlc
9 CONFIGURE_LINE="$0 $ac_configure_args"
13 AC_CONFIG_SRCDIR(src/libvlc.c)
14 AC_CONFIG_AUX_DIR(autotools)
18 AM_INIT_AUTOMAKE([1.7 check-news dist-bzip2])
19 AM_CONFIG_HEADER(config.h)
21 dnl Too many people are not aware of maintainer mode:
22 dnl If you want to use it, you definitely know what you are doing, so
23 dnl you can specify "--disable-maintainer-mode". But if you want the default
24 dnl automake behavior, you've likely never heard of maintainer mode, so we
25 dnl can't expect you to enable it manually.
27 AS_IF([test "x${enable_maintainer_mode}" != "xno"],
28 [enable_maintainer_mode="yes"])
42 AC_USE_SYSTEM_EXTENSIONS
47 _AM_DEPENDENCIES([OBJC])
53 dnl Find the right ranlib, even when cross-compiling
54 AC_CHECK_TOOL(RANLIB, ranlib, :)
55 AC_CHECK_TOOL(STRIP, strip, :)
56 AC_CHECK_TOOL(AR, ar, :)
57 AC_CHECK_TOOL(LD, ld, :)
58 AC_CHECK_TOOL(DLLTOOL, dlltool, :)
60 dnl Check for compiler properties
66 dnl Check for the contrib directory
69 [ --without-contrib do not use the libraries in extras/contrib],[],[])
70 if test "${with_contrib}" != "no"; then
71 AC_MSG_CHECKING([for libs in extras/contrib])
73 if test "`echo \"$topdir\" | cut -c 1`" != "/"; then
74 topdir="`pwd`/$topdir"
76 if test "`grep HOST ${topdir}/extras/contrib/config.mak 2>/dev/null|awk '{print $3}'`" != "`$CC -dumpmachine`"; then
77 if test "${with_contrib}" = "yes"; then
79 AC_MSG_ERROR([ not using the libs in extras/contrib as it is not the same host])
82 AC_MSG_WARN([ not using the libs in extras/contrib as it is not the same host])
85 if test -d ${topdir}/extras/contrib/lib; then
87 export PATH=${topdir}/extras/contrib/bin:$PATH
88 CPPFLAGS="${CPPFLAGS} -I${topdir}/extras/contrib/include"
89 CPPFLAGS_save="${CPPFLAGS_save} -I${topdir}/extras/contrib/include"
90 CFLAGS="${CFLAGS} -I${topdir}/extras/contrib/include"
91 CFLAGS_save="${CFLAGS_save} -I${topdir}/extras/contrib/include"
92 CXXFLAGS="${CXXFLAGS} -I${topdir}/extras/contrib/include"
93 CXXFLAGS_save="${CXXFLAGS_save} -I${topdir}/extras/contrib/include"
94 OBJCFLAGS="${OBJCFLAGS} -I${topdir}/extras/contrib/include"
95 OBJCFLAGS_save="${OBJCFLAGS_save} -I${topdir}/extras/contrib/include"
96 if test $build = $host -o "$PKG_CONFIG_LIBDIR"; then
97 export PKG_CONFIG_PATH=${topdir}/extras/contrib/lib/pkgconfig:$PKG_CONFIG_PATH
99 export PKG_CONFIG_LIBDIR=${topdir}/extras/contrib/lib/pkgconfig
101 LDFLAGS="${LDFLAGS} -L${topdir}/extras/contrib/lib"
102 LDFLAGS_save="${LDFLAGS_save} -L${topdir}/extras/contrib/lib"
104 dnl kludge because only the debian package provides a ffmpeg-config
105 if test -z $with_ffmpeg_config_path; then
106 with_ffmpeg_config_path=${topdir}/extras/contrib/bin;
108 if test -z $with_live555_tree; then
109 with_live555_tree=${topdir}/extras/contrib/src/live
111 if test -z $with_goom_tree; then
112 with_goom_tree=${topdir}/extras/contrib/src/goom
114 if test -z $with_mozilla_sdk_path; then
115 with_mozilla_sdk_path=${topdir}/extras/contrib/gecko-sdk
117 if test -z $with_cyberlink_tree; then
118 with_cyberlink_tree=${topdir}/extras/contrib/src/clinkcc
120 if test -z $with_libmpeg2_tree; then
121 with_libmpeg2_tree=${topdir}/extras/contrib/src/mpeg2dec
124 if test ".`uname -s`" = ".Darwin"; then
125 export LD_LIBRARY_PATH=${topdir}/extras/contrib/lib:$LD_LIBRARY_PATH
126 export DYLD_LIBRARY_PATH=${topdir}/extras/contrib/lib:$DYLD_LIBRARY_PATH
127 elif test ".`uname -s`" = ".BeOS"; then
128 export LIBRARY_PATH=${topdir}/extras/contrib/lib:$LIBRARY_PATH
129 export BELIBRARIES=${topdir}/extras/contrib/lib:$BELIBRARIES
137 dnl Set default values
139 LDFLAGS_vlc="${LDFLAGS}"
142 dnl Check the operating system
153 CFLAGS_save="${CFLAGS_save} -pthread"; CFLAGS="${CFLAGS_save}"
154 VLC_ADD_LDFLAGS([dvd dvdcss vcd cdda vcdx cddax],[-ldvd])
158 CFLAGS_save="${CFLAGS_save} -pthread"; CFLAGS="${CFLAGS_save}"
161 CPPFLAGS_save="${CPPFLAGS_save} -I/usr/local/include"
162 CPPFLAGS="${CPPFLAGS_save}"
163 LDFLAGS_save="${LDFLAGS_save} -L/usr/local/lib"
164 LDFLAGS="${LDFLAGS_save}"
171 CFLAGS_save="${CFLAGS_save} -no-cpp-precomp -D_INTL_REDIRECT_MACROS"; CFLAGS="${CFLAGS_save}"
172 CXXFLAGS_save="${CXXFLAGS_save} -no-cpp-precomp -D_INTL_REDIRECT_MACROS"; CXXFLAGS="${CXXFLAGS_save}"
173 OBJCFLAGS_save="${OBJCFLAGS_save} -no-cpp-precomp -D_INTL_REDIRECT_MACROS -std=gnu99"; OBJCFLAGS="${OBJCFLAGS_save}"
174 VLC_ADD_LDFLAGS([vlc ffmpeg ffmpegaltivec],[-all_load])
175 VLC_ADD_LDFLAGS([mkv mp4], [-framework IOKit -framework CoreFoundation])
176 VLC_ADD_CFLAGS([libvlc],[-x objective-c])
177 VLC_ADD_CFLAGS([vlc],[-x objective-c])
178 VLC_ADD_LDFLAGS([vlc],[-Wl,-m -Wl,-multiply_defined -Wl,suppress])
182 CFLAGS_save="${CFLAGS_save} -D_INTL_REDIRECT_MACROS"; CFLAGS="${CFLAGS_save}"
183 CXXFLAGS_save="${CXXFLAGS_save} -D_INTL_REDIRECT_MACROS"; CXXFLAGS="${CXXFLAGS_save}"
184 OBJCFLAGS_save="${OBJCFLAGS_save} -D_INTL_REDIRECT_MACROS -std=gnu99"; OBJCFLAGS="${OBJCFLAGS_save}"
185 VLC_ADD_LDFLAGS([mp4], [-framework IOKit -framework CoreFoundation])
186 VLC_ADD_LDFLAGS([mkv mp4], [-framework IOKit -framework CoreFoundation])
187 VLC_ADD_CFLAGS([libvlc],[-x objective-c])
188 VLC_ADD_CFLAGS([vlc],[-x objective-c])
190 *mingw32* | *cygwin* | *wince* | *mingwce* | *pe*)
191 AC_CHECK_TOOL(WINDRES, windres, :)
199 dnl Check if we are using the mno-cygwin mode in which case we are
200 dnl actually dealing with a mingw32 compiler.
205 SYS=mingw32, SYS=cygwin)
207 *wince* | *mingwce* | *pe*)
212 if test "${SYS}" = "mingw32"; then
213 # add ws2_32 for closesocket, select, recv
214 CPPFLAGS_save="${CPPFLAGS_save} -D_OFF_T_ -D_off_t=long"; CPPFLAGS="${CPPFLAGS_save}"
215 VLC_ADD_LDFLAGS([vlc],[-lws2_32 -lnetapi32 -lwinmm -mwindows])
216 VLC_ADD_LDFLAGS([cdda vcdx cddax],[-lwinmm])
217 VLC_ADD_LDFLAGS([access_http access_mms access_udp access_tcp access_ftp access_output_udp sap slp http stream_out_standard stream_out_rtp vod_rtsp telnet netsync growl],[-lws2_32])
219 if test "${SYS}" = "mingwce"; then
220 # add ws2 for closesocket, select, recv
221 CPPFLAGS_save="${CPPFLAGS_save} -D_OFF_T_ -D_off_t=long"; CPPFLAGS="${CPPFLAGS_save}"
222 VLC_ADD_CPPFLAGS([vlc],[-Dmain(a,b)=maince(a,b)])
223 VLC_ADD_LDFLAGS([vlc],[-lws2 -e WinMainCRTStartup])
224 VLC_ADD_LDFLAGS([access_http access_mms access_udp access_tcp access_ftp access_output_udp sap http netsync],[-lws2])
229 VLC_ADD_LDFLAGS([x11 xvideo],[-lsocket])
233 # _POSIX_PTHREAD_SEMANTICS is needed to get the POSIX ctime_r
234 # Perhaps it is useful other places as well?
235 CFLAGS_save="${CFLAGS_save} -D_POSIX_PTHREAD_SEMANTICS"; CFLAGS="${CFLAGS_save}"
242 CFLAGS_save="${CFLAGS_save} -Wno-multichar"; CFLAGS="${CFLAGS_save}"
243 CXXFLAGS_save="${CXXFLAGS_save} -Wno-multichar"; CXXFLAGS="${CXXFLAGS_save}"
244 VLC_ADD_CXXFLAGS([beos],[])
245 VLC_ADD_LDFLAGS([vlc logger],[-lbe])
246 VLC_ADD_LDFLAGS([beos],[-lbe -lmedia -ltranslation -ltracker -lgame])
247 VLC_ADD_LDFLAGS([dvdnav dvdread],[-ldl])
248 VLC_ADD_LDFLAGS([access_file],[-lpoll])
249 LDFLAGS_save="${LDFLAGS_save} -lintl"; LDFLAGS="${LDFLAGS_save}"
251 if test -f /boot/beos/system/lib/libbind.so; then
252 VLC_ADD_LDFLAGS([access_file access_ftp access_mms access_output_udp telnet netsync sap vlc growl],[-lbind -lsocket])
254 VLC_ADD_LDFLAGS([access_file access_ftp access_mms access_output_udp telnet netsync sap vlc growl],[-lnet])
257 dnl Ugly check for Zeta
258 if test -f /boot/beos/system/lib/libzeta.so; then
259 VLC_ADD_LDFLAGS([beos],[-lzeta])
266 AM_CONDITIONAL(HAVE_BEOS, test "${SYS}" = "beos")
267 AM_CONDITIONAL(HAVE_DARWIN, test "${SYS}" = "darwin")
268 AM_CONDITIONAL(HAVE_WIN32, test "${SYS}" = "mingw32")
269 AM_CONDITIONAL(HAVE_WINCE, test "${SYS}" = "mingwce")
273 dnl It's very bad, but our former custom system was worst
278 dnl AC_LIBTOOL_WIN32_DLL - couldn't get libtool to work on Win32 so far
279 m4_undefine([AC_PROG_F77])
280 m4_defun([AC_PROG_F77],[])
283 AC_ARG_ENABLE(libtool,
284 [ --enable-libtool use libtool (default disabled)])
285 AM_CONDITIONAL(USE_LIBTOOL, [test "x${enable_libtool}" != "xno"])
289 dnl Check for Mac OS X SDK settings
291 AC_ARG_WITH(macosx-sdk,
292 [ --with-macosx-sdk compile for Mac OS X 10.3 SDK],[], with_macosx_sdk=no)
293 if test "${with_macosx_sdk}" != "no" ; then
294 CFLAGS_save="${CFLAGS_save} -DMACOSX_DEPLOYMENT_TARGET=10.3 -isysroot /Developer/SDKs/MacOSX10.3.9.sdk"; CFLAGS="${CFLAGS_save}"
295 CXXFLAGS_save="${CXXFLAGS_save} -DMACOSX_DEPLOYMENT_TARGET=10.3 -isysroot /Developer/SDKs/MacOSX10.3.9.sdk"; CXXFLAGS="${CXXFLAGS_save}"
296 OBJCFLAGS_save="${OBJCFLAGS_save} -DMACOSX_DEPLOYMENT_TARGET=10.3 -isysroot /Developer/SDKs/MacOSX10.3.9.sdk"; OBJCFLAGS="${OBJCFLAGS_save}"
297 LDFLAGS_save="${LDFLAGS_save} -isysroot /Developer/SDKs/MacOSX10.3.9.sdk -Wl,-syslibroot,/Developer/SDKs/MacOSX10.3.9.sdk"; LDFLAGS="${LDFLAGS_save}"
298 export MACOSX_DEPLOYMENT_TARGET=10.3
299 MACOSX_DEPLOYMENT_TARGET="10.3"
305 ALL_LINGUAS="af ar bn ca co cs da de el en_GB es eu fr fur gl he hi hu it ja ka ko lt lv ms my nb ne nl nn no oc pa pl ps pt_BR pt_PT ro ru sk sl sq sv tet th tl tr zh_CN zh_TW"
306 AM_GNU_GETTEXT_VERSION(0.11.5)
308 AS_IF([test "${nls_cv_force_use_gnu_gettext}" = "yes"], [
309 AC_DEFINE(HAVE_INCLUDED_GETTEXT, 1, [Define if we use the local libintl])
310 AM_CPPFLAGS="${AM_CPPFLAGS} -I\$(top_builddir)/intl"
311 AS_IF([test "${enable_libtool}" != "no"], [
312 INCLUDED_LIBINTL="${LTLIBINTL}"
314 INCLUDED_LIBINTL="${LIBINTL}"
317 AS_IF([test "${enable_libtool}" != "no"], [
318 VLC_ADD_LDFLAGS([vlc], [${LTLIBINTL}])
320 VLC_ADD_LDFLAGS([vlc], [${LIBINTL}])
323 AC_SUBST(INCLUDED_LIBINTL)
324 XGETTEXT="${XGETTEXT} --keyword=_NS --keyword=_ANS"
329 if test "${SYS}" != "mingwce"; then
330 AS_IF([test "$am_cv_func_iconv" != "yes"],
331 [AC_MSG_ERROR([libiconv is needed for VLC to work properly])])
333 VLC_ADD_CFLAGS([vlc],[${INCICONV}])
334 AS_IF([test "${enable_libtool}" != "no"], [
335 VLC_ADD_LDFLAGS([vlc],[${LIBICONV}])
337 VLC_ADD_LDFLAGS([vlc],[${LTLIBICONV}])
340 dnl Check for the need to include the mingwex lib for mingw32
341 if test "${SYS}" = "mingw32"
343 AC_CHECK_LIB(mingwex,opendir,
344 AC_CHECK_LIB(mingw32,opendir,VLC_ADD_LDFLAGS([vlc],[]),
345 [VLC_ADD_LDFLAGS([vlc gtk],[-lmingwex])])
349 dnl Check for fnative-struct or mms-bitfields support for mingw32
350 if test "${SYS}" = "mingw32"
352 AC_CACHE_CHECK([if \$CC accepts -mms-bitfields],
353 [ac_cv_c_mms_bitfields],
354 [CFLAGS="${CFLAGS_save} -mms-bitfields"
355 AC_TRY_COMPILE([],,ac_cv_c_mms_bitfields=yes, ac_cv_c_mms_bitfields=no)])
356 if test "${ac_cv_c_mms_bitfields}" != "no"; then
357 CFLAGS_save="${CFLAGS_save} -mms-bitfields";
358 CXXFLAGS_save="${CXXFLAGS_save} -mms-bitfields";
360 AC_CACHE_CHECK([if \$CC accepts -fnative-struct],
361 [ac_cv_c_fnative_struct],
362 [CFLAGS="${CFLAGS_save} -fnative-struct"
363 AC_TRY_COMPILE([],,ac_cv_c_fnative_struct=yes, ac_cv_c_fnative_struct=no)])
364 if test "${ac_cv_c_fnative_struct}" != "no"; then
365 CFLAGS_save="${CFLAGS_save} -fnative-struct";
366 CXXFLAGS_save="${CXXFLAGS_save} -fnative-struct";
370 CFLAGS="${CFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}"
373 dnl Check for fvtable-thunks support for mingw32
374 if test "${SYS}" = "mingw32" -a "${CXX}" != ""
377 AC_CACHE_CHECK([if \$CXX accepts -fvtable-thunks],
378 [ac_cv_cxx_fvtable_thunks],
379 [CXXFLAGS="${CXXFLAGS_save} -Wall -Werror -fvtable-thunks"
380 AC_TRY_COMPILE([],,ac_cv_cxx_fvtable_thunks=yes,
381 ac_cv_cxx_fvtable_thunks=no)])
382 if test "${ac_cv_cxx_fvtable_thunks}" = "yes"; then
383 CXXFLAGS_mingw32_special="-fvtable-thunks"
386 CXXFLAGS_save="${CXXFLAGS_save} ${CXXFLAGS_mingw32_special}"; CXXFLAGS="${CXXFLAGS_save}"
390 dnl Plugin compilation stuff
397 AS_IF([test "${enable_libtool}" = "no"], [
400 VLC_ADD_CFLAGS([pic plugin mozilla activex],[${CFLAGS_mingw32_special}])
401 VLC_ADD_CXXFLAGS([pic plugin mozilla activex],[${CFLAGS_mingw32_special} ${CXXFLAGS_mingw32_special}])
402 VLC_ADD_OBJCFLAGS([pic plugin mozilla activex],[${CFLAGS_mingw32_special}])
407 VLC_ADD_CFLAGS([pic plugin mozilla],[-fpic -fPIC])
408 VLC_ADD_CXXFLAGS([pic plugin mozilla],[-fpic -fPIC])
409 VLC_ADD_OBJCFLAGS([pic plugin mozilla],[-fpic -fPIC])
410 VLC_ADD_LDFLAGS([plugin mozilla],[-fpic -fPIC])
415 dnl The -DSYS_FOO flag
416 CPPFLAGS_save="${CPPFLAGS_save} -DSYS_`echo ${SYS} | sed -e 's/-.*//' | tr 'abcdefghijklmnopqrstuvwxyz.' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ_'`"; CPPFLAGS="${CPPFLAGS_save}"
418 dnl Check for system libs needed
421 AC_CHECK_FUNCS(gettimeofday strtod strtol strtof strtoll strtoull strsep isatty vasprintf asprintf swab sigrelse getpwuid memalign posix_memalign if_nametoindex atoll getenv putenv setenv gmtime_r ctime_r localtime_r lrintf daemon scandir fork bsearch lstat strlcpy)
423 dnl Check for usual libc functions
424 AC_CHECK_FUNCS(strdup strndup atof)
425 AC_CHECK_FUNCS(strcasecmp,,[AC_CHECK_FUNCS(stricmp)])
426 AC_CHECK_FUNCS(strncasecmp,,[AC_CHECK_FUNCS(strnicmp)])
427 AC_CHECK_FUNCS(strcasestr,,[AC_CHECK_FUNCS(stristr)])
429 dnl Check for setlocal and langinfo
430 AC_CHECK_FUNCS(setlocale)
431 AC_CHECK_HEADERS(langinfo.h)
432 AC_CHECK_FUNCS(nl_langinfo)
434 AC_CACHE_CHECK([for nl_langinfo and CODESET], ac_cv_langinfo_codeset,
435 [AC_TRY_LINK([#include <langinfo.h>],
436 [char* cs = nl_langinfo(CODESET);],
437 ac_cv_langinfo_codeset=yes,
438 ac_cv_langinfo_codeset=no)
440 if test ${ac_cv_langinfo_codeset} = yes; then
441 AC_DEFINE(HAVE_LANGINFO_CODESET, 1,
442 [Define if you have <langinfo.h> and nl_langinfo(CODESET).])
445 AC_CHECK_FUNCS(connect,,[
446 AC_CHECK_LIB(socket,connect,[
447 VLC_ADD_LDFLAGS([vlc cdda cddax],-lsocket)
448 LIBS_socket="-lsocket"
452 AC_CHECK_FUNCS(send,,[
453 AC_CHECK_LIB(socket,send,[
454 VLC_ADD_LDFLAGS([access_http access_mms access_udp access_tcp access_ftp sap access_output_udp stream_out_standard growl],[-lsocket])
458 AC_CHECK_FUNCS(gethostbyname,,[
459 AC_CHECK_LIB(nsl,gethostbyname,[
460 VLC_ADD_LDFLAGS([cdda cddax vlc],[-lnsl])
462 AC_CHECK_LIB(bind,gethostbyname,[
463 VLC_ADD_LDFLAGS([access_mms],[-lbind])
468 dnl Check for socklen_t
469 AC_CACHE_CHECK([for socklen_t], ac_cv_type_socklen_t,
471 [#include <sys/types.h>
472 #include <sys/socket.h>],
473 [socklen_t len = 42; return len;],
474 ac_cv_type_socklen_t=yes,
475 ac_cv_type_socklen_t=no)])
476 if test "${ac_cv_type_socklen_t}" != "no"; then
477 AC_DEFINE(HAVE_SOCKLEN_T, 1, [Define if <sys/socket.h> defines socklen_t.])
480 dnl Check for struct sockaddr_storage
481 AH_TEMPLATE(sockaddr_storage, [Define to `sockaddr' if <sys/socket.h> does not define.])
482 AH_TEMPLATE(ss_family, [Define to `sa_family' if <sys/socket.h> does not define.])
483 AC_CACHE_CHECK([for struct sockaddr_storage], ac_cv_struct_sockaddr_storage,
485 [#include <sys/types.h>
486 #if defined( UNDER_CE )
487 # include <winsock.h>
488 #elif defined( WIN32 )
489 # include <winsock2.h>
491 # include <sys/socket.h>
492 #endif], [struct sockaddr_storage addr;],
493 ac_cv_struct_sockaddr_storage=yes,
494 ac_cv_struct_sockaddr_storage=no)])
495 AS_IF([test "${ac_cv_struct_sockaddr_storage}" = no], [
496 AC_DEFINE(sockaddr_storage, sockaddr)
497 AC_DEFINE(ss_family, sa_family)
500 dnl getaddrinfo, getnameinfo and gai_strerror check
501 dnl -lnsl and -lsocket are needed on Solaris;
502 dnl we purposedly make the test fail on Windows
504 AH_TEMPLATE(HAVE_GETADDRINFO, [Define to 1 if you have the `getaddrinfo' function.])
505 AC_SEARCH_LIBS([getaddrinfo], [nsl], [AC_DEFINE(HAVE_GETADDRINFO)],, [${LIBS_socket}])
507 dnl NOTE: we assume getaddrinfo will be present if getnameinfo or gai_strerro
510 AC_CHECK_FUNCS([getnameinfo gai_strerror])
513 AH_TEMPLATE(HAVE_ADDRINFO, [Define to 1 if <netdb.h> defines `struct addrinfo'.])
514 AC_CHECK_TYPES([struct addrinfo],[AC_DEFINE(HAVE_ADDRINFO)],,
515 [#include <sys/types.h>
516 #if defined( WIN32 ) || defined( UNDER_CE )
517 # if defined(UNDER_CE) && defined(sockaddr_storage)
518 # undef sockaddr_storage
520 # include <winsock2.h>
521 # include <ws2tcpip.h>
526 dnl Check for va_copy
527 AC_CACHE_CHECK([for va_copy], ac_cv_c_va_copy,
529 [#include <stdarg.h>],
530 [va_list ap1, ap2; va_copy(ap1,ap2);],
531 [ac_cv_c_va_copy="yes"],
532 [ac_cv_c_va_copy="no"]))
533 if test "${ac_cv_c_va_copy}" = "yes"; then
534 AC_DEFINE(HAVE_VA_COPY, 1, [Define if <stdarg.h> defines va_copy.])
536 AC_CACHE_CHECK([for __va_copy], ac_cv_c___va_copy,
538 [#include <stdarg.h>],
539 [va_list ap1, ap2; __va_copy(ap1,ap2);],
540 [ac_cv_c___va_copy="yes"],
541 [ac_cv_c___va_copy="no"]))
542 if test "${ac_cv_c___va_copy}" = "yes"; then
543 AC_DEFINE(HAVE___VA_COPY, 1, [Define if <stdarg.h> defines __va_copy.])
546 AC_CHECK_FUNCS(inet_aton,,[
547 AC_CHECK_LIB(resolv,inet_aton,[
548 VLC_ADD_LDFLAGS([vlc],[-lresolv])
552 dnl Check for getopt (always use builtin one on win32)
553 if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"; then
557 AC_CHECK_FUNCS(getopt_long,[AC_DEFINE(HAVE_GETOPT_LONG,1,long getopt support)],
558 [ # FreeBSD has a gnugetopt library for this:
559 AC_CHECK_LIB([gnugetopt],[getopt_long],
560 [AC_DEFINE(HAVE_GETOPT_LONG,1,getopt support)
561 VLC_ADD_LDFLAGS([vlc],[-lgnugetopt])],
564 AM_CONDITIONAL(BUILD_GETOPT, ${need_getopt})
566 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
569 VLC_ADD_LDFLAGS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom visual panoramix rotate noise],[-lm])
572 VLC_ADD_LDFLAGS([ffmpeg ffmpegaltivec stream_out_transrate i420_rgb faad twolame equalizer param_eq vlc vorbis freetype mod mpc dmo quicktime realaudio galaktos opengl],[-lm])
574 AC_CHECK_LIB(m,sqrt,[
575 VLC_ADD_LDFLAGS([headphone_channel_mixer normvol speex mono colorthres],[-lm])
577 AC_CHECK_LIB(m,ceil,[
578 VLC_ADD_LDFLAGS([mosaic],[-lm])
580 AC_CHECK_LIB(mx,sqrtf,[
581 VLC_ADD_LDFLAGS([x264],[-lmx])
583 fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
585 dnl Check for dynamic plugins
586 ac_cv_have_plugins=no
589 AC_CHECK_HEADERS(mach-o/dyld.h,
590 [AC_CHECK_FUNCS(NSLinkModule,
591 [AC_DEFINE(HAVE_DL_DYLD, 1, [Define if you have the Darwin dyld API])
592 ac_cv_have_plugins=yes])])
595 if test "${ac_cv_have_plugins}" = "no"; then
596 AC_CHECK_HEADERS(dl.h)
597 ac_cv_my_have_shl_load=no
598 AC_CHECK_FUNC(shl_load,
599 [ac_cv_my_have_shl_load=yes,
600 AC_CHECK_LIB(dld, shl_load,
601 [ac_cv_my_have_shl_load=yes
602 VLC_ADD_LDFLAGS([vlc],[-ldld])])])
603 if test "${ac_cv_my_have_shl_load}" = "yes"; then
604 AC_DEFINE(HAVE_DL_SHL_LOAD, 1, [Define if you have the shl_load API])
605 ac_cv_have_plugins=yes
610 if test "${ac_cv_have_plugins}" = "no"; then
611 AC_CHECK_LIB(dld, dld_link,
612 [VLC_ADD_LDFLAGS([vlc],[-ldld])
613 AC_DEFINE(HAVE_DL_DLD_LINK, 1, [Define if you have the GNU dld library])
614 ac_cv_have_plugins=yes])
618 if test "${ac_cv_have_plugins}" = "no"; then
619 if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"; then
620 AC_CHECK_LIB(kernel32, main,
621 [VLC_ADD_LDFLAGS([vlc],[-lkernel32])
622 AC_DEFINE(HAVE_DL_WINDOWS, 1, [Define if you have Windows' LoadLibrary])
623 ac_cv_have_plugins=yes])
628 if test "${ac_cv_have_plugins}" = "no"; then
629 if test "${SYS}" = "mingwce"; then
630 AC_DEFINE(HAVE_DL_WINDOWS, 1, [Define if you have Windows' LoadLibrary])
631 ac_cv_have_plugins=yes
636 if test "${ac_cv_have_plugins}" = "no"; then
637 AC_CHECK_HEADERS(image.h)
638 AC_CHECK_FUNCS(load_add_on,
639 [AC_DEFINE(HAVE_DL_BEOS, 1, [Define if you have the BeOS dl])
640 ac_cv_have_plugins=yes])
643 # Only test for dlopen() if the others didn't work
644 if test "${ac_cv_have_plugins}" = "no"; then
645 AC_CHECK_HEADERS(dlfcn.h sys/dl.h)
646 ac_cv_my_have_dlopen=no
647 AC_CHECK_FUNC(dlopen,
648 ac_cv_my_have_dlopen=yes,
649 AC_CHECK_LIB(dl, dlopen,
650 ac_cv_my_have_dlopen=yes
651 VLC_ADD_LDFLAGS([vlc],[-ldl]),
652 AC_CHECK_LIB(svld, dlopen,
653 ac_cv_my_have_dlopen=yes
654 VLC_ADD_LDFLAGS([vlc],[-lsvld]))))
655 if test "${ac_cv_my_have_dlopen}" = "yes"; then
656 AC_DEFINE(HAVE_DL_DLOPEN, 1, [Define if you have the dlopen API])
657 ac_cv_have_plugins=yes
661 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
662 dnl Check for pthreads - borrowed from XMMS
664 if test "${THREAD_LIB}" = "error"; then
665 AC_CHECK_LIB(pthread,main,THREAD_LIB="-lpthread")
667 if test "${THREAD_LIB}" = "error"; then
668 AC_CHECK_LIB(pthreads,main,THREAD_LIB="-lpthreads")
670 if test "${THREAD_LIB}" = "error"; then
671 AC_CHECK_LIB(c_r,main,THREAD_LIB="-lc_r")
673 if test "${THREAD_LIB}" = "error"; then
674 AC_CHECK_FUNCS(pthread_mutex_lock)
678 dnl Check for cthreads under GNU/Hurd for instance
679 AC_CHECK_LIB(threads,cthread_fork,THREAD_LIB="-lthreads")
682 dnl GNU portable threads
685 [ --enable-pth GNU Pth support (default disabled)],
686 [ if test "${enable_pth}" = "yes"; then
687 AC_CHECK_LIB(pth,pth_init)
688 AC_MSG_CHECKING(for pth_init in pth.h)
689 AC_EGREP_HEADER(pth_init,pth.h,[
691 AC_DEFINE(PTH_INIT_IN_PTH_H, 1,
692 Define if <pth.h> defines pth_init)
704 [ --enable-st State Threads (default disabled)],
705 [ if test "${enable_st}" = "yes"; then
706 AC_CHECK_LIB(st,st_init)
707 AC_MSG_CHECKING(for st_init in st.h)
708 AC_EGREP_HEADER(st_init,st.h,[
710 AC_DEFINE(ST_INIT_IN_ST_H, 1,
711 Define if <st.h> defines st_init)
719 VLC_ADD_LDFLAGS([vlc plugin],[${THREAD_LIB}])
721 dnl Don't link with rt when using GNU-pth
722 if test "${THREAD_LIB}" != "-lpth" && test "${THREAD_LIB}" != "-lst"; then
723 AC_CHECK_LIB(rt, clock_nanosleep, [
724 VLC_ADD_LDFLAGS([vlc],[-lrt])
725 AC_DEFINE(HAVE_CLOCK_NANOSLEEP, 1, [Define to 1 if you have clock_nanosleep.])
728 AC_CHECK_LIB(rt,sem_init, [VLC_ADD_LDFLAGS([vlc],[-lrt])])
732 AC_CHECK_FUNCS(nanosleep,have_nanosleep=:,[
733 AC_CHECK_LIB(rt,nanosleep,
734 [VLC_ADD_LDFLAGS([vlc],[-lrt]) have_nanosleep=:],
735 [AC_CHECK_LIB(posix4,nanosleep,
736 [VLC_ADD_LDFLAGS([vlc],[-lposix4]) have_nanosleep=:])]
739 if ${have_nanosleep}; then
740 AC_DEFINE(HAVE_NANOSLEEP, 1,
741 Define if nanosleep is available.)
745 dnl Check for misc headers
746 AC_MSG_CHECKING(for pthread_cond_t in pthread.h)
747 AC_EGREP_HEADER(pthread_cond_t,pthread.h,[
749 AC_DEFINE(PTHREAD_COND_T_IN_PTHREAD_H, 1,
750 Define if <pthread.h> defines pthread_cond_t.)],[
753 AC_MSG_CHECKING(for pthread_once in pthread.h)
754 AC_EGREP_HEADER(pthread_once,pthread.h,[
756 AC_DEFINE(PTHREAD_ONCE_IN_PTHREAD_H, 1,
757 Define if <pthread.h> defines pthread_once.)],[
759 fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
761 AC_MSG_CHECKING(for strncasecmp in strings.h)
762 AC_EGREP_HEADER(strncasecmp,strings.h,[
764 AC_DEFINE(STRNCASECMP_IN_STRINGS_H, 1,
765 Define if <strings.h> defines strncasecmp.)],[
768 dnl Check for headers
769 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)
770 AC_CHECK_HEADERS(sys/sockio.h fcntl.h sys/types.h sys/time.h sys/times.h sys/ioctl.h sys/stat.h)
771 AC_CHECK_HEADERS(arpa/inet.h net/if.h netinet/in.h sys/socket.h)
772 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
773 AC_CHECK_HEADERS(machine/param.h sys/shm.h)
774 AC_CHECK_HEADERS(linux/version.h)
775 AC_CHECK_HEADERS(syslog.h)
776 fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
780 AC_CHECK_TYPE(ssize_t, int)
781 AC_SEARCH_LIBS(poll, [poll], [AC_DEFINE(HAVE_POLL, 1, [Define to 1 if the OS is usabl... err, has poll().])])
785 AC_CHECK_HEADERS(dirent.h,,[need_dirent=:])
786 AM_CONDITIONAL(BUILD_DIRENT, ${need_dirent})
788 dnl Mac OS X and other OSes don't have declaration for nanosleep
789 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
790 AC_MSG_CHECKING(for nanosleep in time.h)
791 AC_EGREP_HEADER(nanosleep,time.h,[
793 AC_DEFINE(HAVE_DECL_NANOSLEEP, 1,
794 Define if <time.h> defines nanosleep.)
798 fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
800 dnl Make sure we have timespecs
801 AC_MSG_CHECKING(for timespec in sys/time.h)
802 AC_EGREP_HEADER(timespec,sys/time.h,[
804 AC_DEFINE(HAVE_STRUCT_TIMESPEC, 1,
805 Define if <sys/time.h> defines struct timespec.)
810 dnl Check for threads library
811 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
812 AC_CHECK_HEADERS(cthreads.h pthread.h kernel/scheduler.h kernel/OS.h)
813 fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
815 dnl Find where are the X headers and libraries
818 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.
820 PKG_PROG_PKG_CONFIG()
824 [ --enable-hal Linux HAL services discovery (default enabled)])
826 if test "${enable_hal}" != "no"
828 PKG_CHECK_MODULES(HAL, hal >= 0.5.0,
829 [ AC_DEFINE( HAVE_HAL_1, [] , [Define if you have the new HAL library API])
830 AC_DEFINE( HAVE_HAL, [], [Define if you have the HAL library] )
831 VLC_ADD_PLUGINS([hal probe_hal])
832 VLC_ADD_LDFLAGS([vlc hal probe_hal],[$HAL_LIBS])
833 VLC_ADD_CFLAGS([vlc hal probe_hal],[$HAL_CFLAGS])],
834 dnl No hal 0.5 Test for 0.2
835 [ PKG_CHECK_MODULES( HAL, hal >= 0.2.97,
836 [AC_DEFINE(HAVE_HAL, [], [Define if you have the HAL library])
837 VLC_ADD_PLUGINS([hal])
838 VLC_ADD_LDFLAGS([vlc hal],[$HAL_LIBS])
839 VLC_ADD_CFLAGS([vlc hal],[$HAL_CFLAGS])],
840 [AC_MSG_WARN(HAL library not found)])
847 [ --enable-dbus Linux D-BUS message bus system (default enabled)])
849 if test "${enable_dbus}" != "no"
852 PKG_CHECK_MODULES(DBUS, dbus-1 >= 1.0.0,
853 [ AC_DEFINE( HAVE_DBUS_3, 1, [Define if you have the D-BUS library API >= 1.0.0] )
854 AC_DEFINE( HAVE_DBUS_2, 1, [Define if you have the D-BUS library API >= 0.92] )
855 AC_DEFINE( HAVE_DBUS_1, 1, [Define if you have the D-BUS library API >= 0.30] )
856 AC_DEFINE( HAVE_DBUS, 1, [Define if you have the D-BUS library] )
857 VLC_ADD_LDFLAGS([screensaver vlc],[$DBUS_LIBS])
858 VLC_ADD_CFLAGS([screensaver vlc],[$DBUS_CFLAGS])
859 dnl Check for dbus control interface
860 AC_ARG_ENABLE(dbus-control, [ --enable-dbus-control D-BUS control interface (default disabled)])
861 if test "${enable_dbus_control}" = "yes"
863 VLC_ADD_PLUGINS([dbus])
864 VLC_ADD_LDFLAGS([dbus],[$DBUS_LIBS])
865 VLC_ADD_CFLAGS([dbus],[$DBUS_CFLAGS])
868 if ${PKG_CONFIG} --exists dbus-1
870 [AC_ARG_ENABLE(old-dbus,
871 [ --enable-old-dbus Deprecated D-Bus support (default disabled)])]
873 if test "${enable_old_dbus}" != "yes"
876 echo "****** WARNING **** WARNING ***** WARNING *************"
877 echo "*** Your D-Bus version is < 1.0.0"
878 echo "*** You are using old and buggy software and so"
879 echo "*** D-Bus support has been disabled."
880 echo "*** Please upgrade D-Bus : http://dbus.freedesktop.org"
881 echo "*** Alternatively you can force the use of your old and"
882 echo "*** buggy D-Bus version by specifying --enable-old-dbus"
883 echo "*******************************************************"
887 [ PKG_CHECK_MODULES(DBUS, dbus-1 >= 0.92,
888 [ AC_DEFINE( HAVE_DBUS_2, 1, [Define if you have the D-BUS library API >= 0.92] )
889 AC_DEFINE( HAVE_DBUS_1, 1, [Define if you have the D-BUS library API >= 0.30] )
890 AC_DEFINE( HAVE_DBUS, 1, [Define if you have the D-BUS library] )
891 VLC_ADD_LDFLAGS([screensaver],[$DBUS_LIBS])
892 VLC_ADD_CFLAGS([screensaver],[$DBUS_CFLAGS])],
894 [ PKG_CHECK_MODULES(DBUS, dbus-1 >= 0.30,
895 [ AC_DEFINE( HAVE_DBUS_1, 1, [Define if you have the D-BUS library API >= 0.30 ] )
896 AC_DEFINE( HAVE_DBUS, 1, [Define if you have the D-BUS library] )
897 VLC_ADD_LDFLAGS([screensaver],[$DBUS_LIBS])
898 VLC_ADD_CFLAGS([screensaver],[$DBUS_CFLAGS])],
900 [ PKG_CHECK_MODULES( DBUS, dbus-1,
901 [AC_DEFINE(HAVE_DBUS, 1, [Define if you have the D-BUS library])
902 VLC_ADD_LDFLAGS([screensaver],[$DBUS_LIBS])
903 VLC_ADD_CFLAGS([screensaver],[$DBUS_CFLAGS])],
904 [AC_MSG_WARN(DBUS library not found)])
913 dnl Build the gtk_main plugins?
919 dnl build the qte plugin ?
922 dnl Check for ntohl, etc.
923 AC_CACHE_CHECK([for ntohl in sys/param.h],
924 [ac_cv_c_ntohl_sys_param_h],
925 [CFLAGS="${CFLAGS_save} -Wall -Werror"
926 AC_TRY_COMPILE([#include <sys/param.h>],
927 [int meuh; ntohl(meuh);],
928 ac_cv_c_ntohl_sys_param_h=yes, ac_cv_c_ntohl_sys_param_h=no)])
929 if test "${ac_cv_c_ntohl_sys_param_h}" != "no"; then
930 AC_DEFINE(NTOHL_IN_SYS_PARAM_H, 1, Define if <sys/param.h> defines ntohl.)
932 CFLAGS="${CFLAGS_save}"
934 RDC_PROG_CC_WFLAGS([all extra no-unused-parameter sign-compare undef pointer-arith bad-function-cast cast-align write-strings old-style-definition missing-prototypes volatile-register-var])
935 RDC_PROG_CC_FLAGS_IFELSE([-pipe])
937 dnl This helps detect broken plugins with undefined symbols
938 dnl Better fail loudly at build-time than silenty at run-time.
939 RDC_PROG_LINK_FLAGS_IFELSE([-Wl,-z,defs], [
940 VLC_ADD_LDFLAGS([plugin],[-Wl,-z,defs])
943 dnl Check for various optimization flags
944 AC_CACHE_CHECK([if \$CC accepts -Os],
946 [CFLAGS="${CFLAGS_save} -Os"
947 AC_TRY_COMPILE([],,ac_cv_c_os=yes, ac_cv_c_os=no)])
948 if test "${ac_cv_c_os}" != "no" -a "${host_cpu}" = "mipsel"; then
949 CFLAGS_OPTIM="${CFLAGS_OPTIM} -Os"
952 AC_CACHE_CHECK([if \$CC accepts -O3],
954 [CFLAGS="${CFLAGS_save} -O3"
955 AC_TRY_COMPILE([],,ac_cv_c_o3=yes, ac_cv_c_o3=no)])
956 if test "${ac_cv_c_o3}" != "no" -a "${host_cpu}" != "mipsel"; then
957 CFLAGS_OPTIM="${CFLAGS_OPTIM} -O3"
960 AC_CACHE_CHECK([if \$CC accepts -O2],
962 [CFLAGS="${CFLAGS_save} -O2"
963 AC_TRY_COMPILE([],,ac_cv_c_o2=yes, ac_cv_c_o2=no)])
964 if test "${ac_cv_c_o2}" != "no" -a "${host_cpu}" != "mipsel"; then
965 if test "${ac_cv_c_o3}" = "no"; then
966 CFLAGS_OPTIM="${CFLAGS_OPTIM} -O2"
968 CFLAGS_NOOPTIM="${CFLAGS_NOOPTIM} -O2"
970 AC_CACHE_CHECK([if \$CC accepts -O],
972 [CFLAGS="${CFLAGS_save} -O"
973 AC_TRY_COMPILE([],,ac_cv_c_o=yes, ac_cv_c_o=no)])
974 if test "${ac_cv_c_o}" != "no" -a "${host_cpu}" != "mipsel"; then
975 if test "${ac_cv_c_o3}" = "no"; then
976 CFLAGS_OPTIM="${CFLAGS_OPTIM} -O"
978 CFLAGS_NOOPTIM="${CFLAGS_NOOPTIM} -O"
982 dnl Check for -ffast-math
983 AC_CACHE_CHECK([if \$CC accepts -ffast-math],
985 [CFLAGS="${CFLAGS_save} -ffast-math"
986 AC_TRY_COMPILE([],,ac_cv_c_fast_math=yes, ac_cv_c_fast_math=no)])
987 if test "${ac_cv_c_fast_math}" != "no"; then
988 CFLAGS_OPTIM="${CFLAGS_OPTIM} -ffast-math"
991 dnl Check for -funroll-loops
992 dnl Disabled on BeOS because BeOS' gcc is buggy and may crash with it
993 if test "${SYS}" != "beos"
995 AC_CACHE_CHECK([if \$CC accepts -funroll-loops],
996 [ac_cv_c_unroll_loops],
997 [CFLAGS="${CFLAGS_save} -funroll-loops"
998 AC_TRY_COMPILE([],,ac_cv_c_unroll_loops=yes, ac_cv_c_unroll_loops=no)])
999 if test "${ac_cv_c_unroll_loops}" != "no"; then
1000 CFLAGS_OPTIM="${CFLAGS_OPTIM} -funroll-loops"
1004 dnl Check for -fomit-frame-pointer
1005 AC_CACHE_CHECK([if \$CC accepts -fomit-frame-pointer],
1006 [ac_cv_c_omit_frame_pointer],
1007 [CFLAGS="${CFLAGS_save} -fomit-frame-pointer"
1008 AC_TRY_COMPILE([],,ac_cv_c_omit_frame_pointer=yes, ac_cv_c_omit_frame_pointer=no)])
1009 if test "${ac_cv_c_omit_frame_pointer}" != "no"; then
1010 CFLAGS_OPTIM_NODEBUG="${CFLAGS_OPTIM_NODEBUG} -fomit-frame-pointer"
1011 # this plugin does not compile without -fomit-frame-pointer, damn gcc!
1012 VLC_ADD_CFLAGS([i420_yuy2_mmx],[-fomit-frame-pointer])
1015 dnl Check for -mdynamic-no-pic
1016 AC_CACHE_CHECK([if \$CC accepts -mdynamic-no-pic],
1017 [ac_cv_c_dynamic_no_pic],
1018 [CFLAGS="${CFLAGS_save} -mdynamic-no-pic"
1019 AC_TRY_COMPILE([],,ac_cv_c_dynamic_no_pic=yes, ac_cv_c_dynamic_no_pic=no)])
1020 AS_IF([test "${enable_libtool}" = "no" && test "${ac_cv_c_dynamic_no_pic}" != "no"], [
1021 VLC_ADD_CFLAGS([builtin],[-mdynamic-no-pic])
1022 VLC_ADD_CFLAGS([libvlc],[-mdynamic-no-pic])
1025 dnl Check for Darwin plugin linking flags
1026 AC_CACHE_CHECK([if \$CC accepts -bundle -undefined error],
1028 [CFLAGS="${CFLAGS_save} -bundle -undefined error"
1029 AC_TRY_COMPILE([],,ac_cv_ld_darwin=yes, ac_cv_ld_darwin=no)])
1030 if test "${ac_cv_ld_darwin}" != "no"; then
1031 VLC_ADD_LDFLAGS([plugin],[-bundle -undefined error])
1034 dnl Check for standard plugin linking flags
1035 dnl BeOS' gcc needs -nostart instead of -shared, even if -shared isn't harmful (just a warning)
1036 AS_IF([test "${enable_libtool}" = "no"], [
1037 AS_IF([test "${SYS}" = "beos"], [
1038 VLC_ADD_LDFLAGS([plugin mozilla],[-nostart])
1040 AC_CACHE_CHECK([if \$CC accepts -shared],
1042 [CFLAGS="${CFLAGS_save} -shared"
1043 AC_TRY_COMPILE([],, ac_cv_ld_plugins=yes, ac_cv_ld_plugins=no)])
1044 AS_IF([test "${ac_cv_ld_plugins}" != "no"], [
1045 VLC_ADD_LDFLAGS([plugin mozilla],[-shared])
1050 dnl Check for variadic macros
1051 AC_CACHE_CHECK([for variadic cpp macros],
1052 [ac_cv_cpp_variadic_macros],
1053 [CFLAGS="${CFLAGS_save}"
1056 #define a(b,c...) printf(b,##c)],
1057 [a("foo");a("%s","bar");a("%s%s","baz","quux");],
1058 ac_cv_cpp_variadic_macros=yes,
1059 ac_cv_cpp_variadic_macros=no)])
1060 if test "${ac_cv_cpp_variadic_macros}" != "no"; then
1061 AC_DEFINE(HAVE_VARIADIC_MACROS, 1, Support for variadic macros)
1064 dnl Checks for __attribute__(aligned()) directive
1065 AC_CACHE_CHECK([__attribute__ ((aligned ())) support],
1066 [ac_cv_c_attribute_aligned],
1067 [ac_cv_c_attribute_aligned=0
1068 CFLAGS="${CFLAGS_save} -Werror"
1069 for ac_cv_c_attr_align_try in 2 4 8 16 32 64; do
1071 [static char c __attribute__ ((aligned(${ac_cv_c_attr_align_try}))) = 0; return c;],
1072 [ac_cv_c_attribute_aligned="${ac_cv_c_attr_align_try}"])
1074 CFLAGS="${CFLAGS_save}"])
1075 if test "${ac_cv_c_attribute_aligned}" != "0"; then
1076 AC_DEFINE_UNQUOTED([ATTRIBUTE_ALIGNED_MAX],
1077 [${ac_cv_c_attribute_aligned}],[Maximum supported data alignment])
1080 dnl Checks for __attribute__(format()) directive
1081 AC_CACHE_CHECK([__attribute__ ((format ())) support with function pointers],
1082 [ac_cv_c_attribute_format],
1083 [ac_cv_c_attribute_format=no
1084 CFLAGS="${CFLAGS_save} -Werror"
1086 [static void (*pf_printf)(const char *, ...) __attribute__ ((format(printf,1,2)));(void)pf_printf;],
1087 [ac_cv_c_attribute_format=yes])
1088 CFLAGS="${CFLAGS_save}"])
1089 if test "${ac_cv_c_attribute_format}" != "no"; then
1090 AC_DEFINE(HAVE_ATTRIBUTE_FORMAT, 1, Support for __attribute__((format())) with function pointers)
1093 dnl Check for __attribute__(())
1094 AC_CACHE_CHECK([for __attribute__((packed))],
1095 [ac_cv_c_attribute_packed],
1096 [ac_cv_c_attribute_packed=no
1097 AC_TRY_COMPILE(, [struct __attribute__((__packed__)) foo { int a; } b;],
1098 [ac_cv_c_attribute_packed=yes])])
1099 if test "${ac_cv_c_attribute_packed}" != "no"; then
1100 AC_DEFINE(HAVE_ATTRIBUTE_PACKED, 1, Support for __attribute__((packed)) for structs)
1106 case "${host_cpu}" in
1116 dnl Enable profiling
1118 AC_ARG_ENABLE(gprof,
1119 [ --enable-gprof gprof profiling (default disabled)])
1120 AC_ARG_ENABLE(cprof,
1121 [ --enable-cprof cprof profiling (default disabled)])
1122 test "${enable_gprof}" != "yes" && enable_gprof="no"
1123 test "${enable_cprof}" != "yes" && enable_cprof="no"
1128 VLC_ADD_PLUGINS([dummy logger memcpy])
1129 VLC_ADD_PLUGINS([mpgv mpga m4v m4a h264 ps pva avi asf mp4 rawdv nsv real aiff mjpeg demuxdump flacsys tta])
1130 VLC_ADD_PLUGINS([cvdsub svcdsub spudec subsdec dvbsub mpeg_audio lpcm a52 dts cinepak flac])
1131 VLC_ADD_PLUGINS([deinterlace invert adjust transform wave ripple psychedelic gradient motionblur rv32 rotate noise])
1132 VLC_ADD_PLUGINS([converter_fixed mono])
1133 VLC_ADD_PLUGINS([trivial_resampler ugly_resampler])
1134 VLC_ADD_PLUGINS([trivial_channel_mixer trivial_mixer])
1135 VLC_ADD_PLUGINS([playlist export sgimb nsc xtag])
1136 VLC_ADD_PLUGINS([i420_rgb rawvideo blend scale image logo magnify puzzle colorthres])
1137 VLC_ADD_PLUGINS([wav araw subtitle vobsub adpcm a52sys dtssys au ty voc xa nuv])
1138 VLC_ADD_PLUGINS([access_directory access_file access_udp access_tcp])
1139 VLC_ADD_PLUGINS([access_http access_mms access_ftp])
1140 VLC_ADD_PLUGINS([packetizer_mpegvideo packetizer_h264])
1141 VLC_ADD_PLUGINS([packetizer_mpeg4video packetizer_mpeg4audio])
1144 if test "${SYS}" != "mingwce"; then
1145 VLC_ADD_PLUGINS([access_fake access_filter_timeshift access_filter_record access_filter_dump])
1146 VLC_ADD_PLUGINS([gestures rc telnet hotkeys netsync showintf marq podcast shout sap fake folder])
1147 VLC_ADD_PLUGINS([rss mosaic wall motiondetect clone crop])
1148 VLC_ADD_PLUGINS([i420_yuy2 i422_yuy2 i420_ymga])
1149 VLC_ADD_PLUGINS([aout_file linear_resampler bandlimited_resampler])
1150 VLC_ADD_PLUGINS([float32_mixer spdif_mixer simple_channel_mixer])
1151 VLC_ADD_PLUGINS([dolby_surround_decoder headphone_channel_mixer normvol equalizer param_eq])
1152 VLC_ADD_PLUGINS([converter_float a52tospdif dtstospdif audio_format])
1156 dnl Switch to enable a version of VLC where most modules will be builtin
1158 AC_ARG_ENABLE(mostly-builtin,
1159 [ --enable-mostly-builtin most modules will be built-in (default disabled)])
1160 if test "${enable_mostly_builtin}" = "yes"; then
1161 VLC_ADD_BUILTINS([${PLUGINS}])
1166 dnl Some plugins aren't useful on some platforms
1168 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
1169 VLC_ADD_PLUGINS([screensaver motion])
1170 elif test "${SYS}" != "mingwce"; then
1171 VLC_ADD_PLUGINS([ntservice access_smb dmo msn])
1172 VLC_ADD_LDFLAGS([dmo],[-lole32])
1174 VLC_ADD_PLUGINS([win32text])
1178 dnl Accelerated modules
1180 MMX_MODULES="memcpymmx i420_rgb_mmx i422_yuy2_mmx i420_ymga_mmx"
1181 #MMX_MODULES="${MMX_MODULES} idctmmx motionmmx"
1182 MMXEXT_MODULES="memcpymmxext"
1183 #MMXEXT_MODULES="${MMXEXT_MODULES} idctmmxext motionmmxext"
1184 THREEDNOW_MODULES="memcpy3dn"
1186 ALTIVEC_MODULES="memcpyaltivec i420_yuy2_altivec"
1187 #ALTIVEC_MODULES="${ALTIVEC_MODULES} idctaltivec motionaltivec"
1189 if test "${enable_gprof}" != "yes"
1191 MMX_MODULES="${MMX_MODULES} i420_yuy2_mmx"
1194 AC_CACHE_CHECK([if \$CC groks MMX inline assembly],
1196 [CFLAGS="${CFLAGS_save}"
1197 AC_TRY_COMPILE(,[void *p;asm volatile("packuswb %%mm1,%%mm2"::"r"(p));],
1198 ac_cv_mmx_inline=yes, ac_cv_mmx_inline=no)])
1199 if test "${ac_cv_mmx_inline}" != "no"; then
1200 AC_DEFINE(CAN_COMPILE_MMX, 1, Define if \$CC groks MMX inline assembly.)
1201 ACCEL_MODULES="${ACCEL_MODULES} ${MMX_MODULES}"
1204 dnl Check for fully workin MMX intrinsics
1205 dnl We need support for -mmmx, we need <mmintrin.h>, and we also need a
1206 dnl working compiler (http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23963)
1207 AC_CACHE_CHECK([if \$CC groks MMX intrinsics],
1208 [ac_cv_c_mmx_intrinsics],
1209 [CFLAGS="${CFLAGS_save} -O -mmmx"
1210 AC_TRY_COMPILE([#include <mmintrin.h>
1214 a = b = c = (__m64)frobzor;
1215 a = _mm_slli_pi16(a, 3);
1216 a = _mm_adds_pi16(a, b);
1217 c = _mm_srli_pi16(c, 8);
1218 c = _mm_slli_pi16(c, 3);
1219 b = _mm_adds_pi16(b, c);
1220 a = _mm_unpacklo_pi8(a, b);
1221 frobzor = (uint64_t)a;],
1222 [ac_cv_c_mmx_intrinsics=yes],
1223 [ac_cv_c_mmx_intrinsics=no])])
1224 if test "${ac_cv_c_mmx_intrinsics}" != "no"; then
1225 AC_DEFINE(HAVE_MMX_INTRINSICS, 1, Define if MMX intrinsics are available.)
1226 VLC_ADD_CFLAGS([i420_rgb_mmx],[-mmmx])
1229 AC_CACHE_CHECK([if \$CC groks MMX EXT inline assembly],
1230 [ac_cv_mmxext_inline],
1231 [CFLAGS="${CFLAGS_save}"
1232 AC_TRY_COMPILE(,[void *p;asm volatile("maskmovq %%mm1,%%mm2"::"r"(p));],
1233 ac_cv_mmxext_inline=yes, ac_cv_mmxext_inline=no)])
1234 if test "${ac_cv_mmxext_inline}" != "no"; then
1235 AC_DEFINE(CAN_COMPILE_MMXEXT, 1, Define if \$CC groks MMX EXT inline assembly.)
1236 ACCEL_MODULES="${ACCEL_MODULES} ${MMXEXT_MODULES}"
1239 AC_CACHE_CHECK([if \$CC groks 3D Now! inline assembly],
1240 [ac_cv_3dnow_inline],
1241 [CFLAGS="${CFLAGS_save}"
1242 AC_TRY_COMPILE(,[void *p;asm volatile("pfadd %%mm1,%%mm2"::"r"(p));],
1243 ac_cv_3dnow_inline=yes, ac_cv_3dnow_inline=no)])
1244 if test "${ac_cv_3dnow_inline}" != "no"; then
1245 AC_DEFINE(CAN_COMPILE_3DNOW, 1, Define if \$CC groks 3D Now! inline assembly.)
1246 ACCEL_MODULES="${ACCEL_MODULES} ${THREEDNOW_MODULES}"
1249 AC_CACHE_CHECK([if \$CC groks SSE inline assembly],
1251 [CFLAGS="${CFLAGS_save}"
1252 AC_TRY_COMPILE(,[void *p;asm volatile("xorps %%xmm1,%%xmm2"::"r"(p));],
1253 ac_cv_sse_inline=yes, ac_cv_sse_inline=no)])
1254 if test "${ac_cv_sse_inline}" != "no" -a "${SYS}" != "solaris"; then
1255 AC_DEFINE(CAN_COMPILE_SSE, 1, Define if \$CC groks SSE inline assembly.)
1256 ACCEL_MODULES="${ACCEL_MODULES} ${SSE_MODULES}"
1259 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
1260 AC_CACHE_CHECK([if \$CC groks AltiVec inline assembly],
1261 [ac_cv_altivec_inline],
1262 [CFLAGS="${CFLAGS_save}"
1263 AC_TRY_COMPILE(,[asm volatile("vperm 0,1,2,3");],
1264 ac_cv_altivec_inline=yes,
1265 [CFLAGS="${CFLAGS_save} -Wa,-m7400"
1266 AC_TRY_COMPILE(,[asm volatile("vperm 0,1,2,3");],
1267 [ac_cv_altivec_inline="-Wa,-m7400"],
1268 ac_cv_altivec_inline=no)
1270 if test "${ac_cv_altivec_inline}" != "no"; then
1271 AC_DEFINE(CAN_COMPILE_ALTIVEC, 1, Define if \$CC groks AltiVec inline assembly.)
1272 if test "${ac_cv_altivec_inline}" != "yes"; then
1273 VLC_ADD_CFLAGS([idctaltivec],[${ac_cv_altivec_inline}])
1274 VLC_ADD_CFLAGS([motionaltivec],[${ac_cv_altivec_inline}])
1275 VLC_ADD_CFLAGS([memcpyaltivec],[${ac_cv_altivec_inline}])
1276 VLC_ADD_CFLAGS([i420_yuy2_altivec],[${ac_cv_altivec_inline}])
1277 VLC_ADD_CFLAGS([vlc],[${ac_cv_altivec_inline}])
1279 ACCEL_MODULES="${ACCEL_MODULES} ${ALTIVEC_MODULES}"
1282 dnl The AltiVec C extensions
1284 dnl There are several possible cases:
1285 dnl - OS X PPC, gcc 4.x: use -mpim-altivec -force_cpusubtype_ALL, don't
1286 dnl need <altivec.h>
1287 dnl - OS X PPC, gcc 3.x: need -faltivec, don't need <altivec.h>
1288 dnl - Linux PPC, gcc 3.4, 4.x: need <altivec.h> which requires -maltivec
1289 dnl - Linux PPC, gcc 3.3: need <altivec.h> and -maltivec -mabi=altivec
1290 dnl - Linux PPC, gcc 3.x: need <altivec.h> and -fvec
1291 dnl - Others: test should fail
1292 AC_CACHE_CHECK([if \$CC groks AltiVec C extensions],
1294 [# OS X/PPC test (gcc 4.x)
1295 CFLAGS="${CFLAGS_save} -mpim-altivec -force_cpusubtype_ALL"
1296 AC_TRY_COMPILE([vector unsigned char foo;],
1297 [vec_ld(0, (unsigned char *)0);],
1298 [ac_cv_c_altivec="-mpim-altivec -force_cpusubtype_ALL"],
1299 [# OS X/PPC test (gcc 3.x)
1300 CFLAGS="${CFLAGS_save} -faltivec"
1301 AC_TRY_COMPILE([vector unsigned char foo;],
1302 [vec_ld(1 * sizeof(vector float), (unsigned char *)0);],
1303 [ac_cv_c_altivec="-faltivec"],
1304 dnl Below this are the Linux tests
1305 [# Linux/PPC test (gcc 4.x)
1306 CFLAGS="${CFLAGS_save} -maltivec"
1307 AC_TRY_COMPILE([#include <altivec.h>],
1308 [vec_ld(0, (unsigned char *)0);],
1309 [ac_cv_c_altivec="-maltivec"],
1310 [# Linux/PPC test (gcc 3.3)
1311 CFLAGS="${CFLAGS_save} -maltivec -mabi=altivec"
1312 AC_TRY_COMPILE([#include <altivec.h>],
1313 [vec_ld(0, (unsigned char *)0);],
1315 ac_cv_c_altivec_abi="-maltivec -mabi=altivec"],
1316 [# Linux/PPC test (gcc 3.3)
1317 CFLAGS="${CFLAGS_save} -fvec"
1318 AC_TRY_COMPILE([#include <altivec.h>],
1319 [vec_ld(0, (unsigned char *)0);],
1320 [ac_cv_c_altivec="-fvec"],
1321 [ac_cv_c_altivec=no])
1326 CFLAGS="${CFLAGS_save}"
1329 if test "${ac_cv_c_altivec}" != "no"; then
1330 CPPFLAGS="${CPPFLAGS_save} ${ac_cv_c_altivec}"
1332 AC_CHECK_HEADERS(altivec.h)
1333 CPPFLAGS="${CPPFLAGS_save}"
1335 if test "${ac_cv_c_altivec}" != "no"; then
1336 AC_DEFINE(CAN_COMPILE_C_ALTIVEC, 1, Define if your compiler groks C AltiVec extensions.)
1337 VLC_ADD_CFLAGS([vlc],[${ac_cv_c_altivec}])
1338 VLC_ADD_CFLAGS([idctaltivec motionaltivec],[${ac_cv_c_altivec}])
1339 VLC_ADD_CFLAGS([i420_yuy2_altivec memcpyaltivec deinterlace],[${ac_cv_c_altivec} ${ac_cv_c_altivec_abi}])
1340 if test "${ac_cv_altivec_inline}" = "no"; then
1341 ACCEL_MODULES="${ACCEL_MODULES} ${ALTIVEC_MODULES}"
1345 AC_CACHE_CHECK([if linker needs -framework vecLib],
1347 [LDFLAGS="${LDFLAGS_vlc} -framework vecLib"
1348 AC_TRY_LINK([],,ac_cv_ld_altivec=yes,ac_cv_ld_altivec=no)
1349 LDFLAGS="${LDFLAGS_save}"
1351 if test "${ac_cv_ld_altivec}" != "no"; then
1352 VLC_ADD_LDFLAGS([vlc idctaltivec motionaltivec memcpyaltivec],[-framework vecLib])
1354 fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
1357 AC_ARG_WITH(,[Optimization options:])
1360 dnl Special arch tuning
1363 [ --with-tuning=ARCH enable special tuning for an architecture
1364 (default Pentium 2 on IA-32 and G4 on PPC)])
1365 if test -n "${with_tuning}"; then
1366 if test "${with_tuning}" != "no"; then
1367 CFLAGS_TUNING="-mtune=${with_tuning}"
1370 if test "${SYS}" = "darwin" -a "${host_cpu}" = "i686"; then
1371 CFLAGS_TUNING="-march=pentium-m -mtune=prescott"
1372 elif test "${host_cpu}" = "i686" -o "${host_cpu}" = "i586" -o "${host_cpu}" = "i486" -o "${host_cpu}" = "i386"; then
1373 CFLAGS_TUNING="-mtune=pentium2"
1374 elif test "${host_cpu}" = "x86_64"; then
1375 CFLAGS_TUNING="-mtune=athlon64"
1376 elif test "${host_cpu}" = "powerpc"; then
1377 CFLAGS_TUNING="-mtune=G4";
1381 dnl NOTE: this can't be cached cleanly
1382 AS_IF([test "${CFLAGS_TUNING}"],
1383 [CFLAGS_save="${CFLAGS}"
1384 CFLAGS="${CFLAGS} ${CFLAGS_TUNING}"
1386 AC_MSG_CHECKING([whether $CC accepts ${CFLAGS_TUNING}])
1387 AC_COMPILE_IFELSE([ ],
1389 [CFLAGS_TUNING=""; tuning="no"
1390 AS_IF([test "${with_tuning}"],
1391 [AC_MSG_ERROR([requested tuning not supported])])])
1393 AC_MSG_RESULT([$tuning])
1394 CFLAGS="${CFLAGS_save}"
1398 dnl x86 accelerations
1400 if test "${host_cpu}" = "i686" -o "${host_cpu}" = "i586" -o "${host_cpu}" = "x86" -o "${host_cpu}" = "i386" -o "${host_cpu}" = "x86_64"
1403 VLC_ADD_BUILTINS([${ACCEL_MODULES}])
1409 AC_ARG_ENABLE(optimize-memory,
1410 [ --enable-optimize-memory optimize memory usage over performance])
1411 if test "${enable_optimize_memory}" = "yes"; then
1412 AC_DEFINE(OPTIMIZE_MEMORY, 1, Define if you want to optimize memory usage over performance)
1416 dnl Enable/disable optimizations
1418 AC_ARG_ENABLE(optimizations,
1419 [ --disable-optimizations disable compiler optimizations (default enabled)])
1420 test "${enable_optimizations}" != "no" && enable_optimizations="yes"
1423 dnl AltiVec acceleration
1425 AC_ARG_ENABLE(altivec,
1426 [ --disable-altivec disable AltiVec optimizations (default enabled on PPC)],
1427 [ if test "${enable_altivec}" = "yes"; then ARCH="${ARCH} altivec";
1428 VLC_ADD_BUILTINS([${ACCEL_MODULES}]) fi ],
1429 [ if test "${host_cpu}" = "powerpc"; then ARCH="${ARCH} altivec";
1430 VLC_ADD_BUILTINS([${ACCEL_MODULES}]) fi ])
1435 AC_ARG_ENABLE(debug,
1436 [ --enable-debug debug mode (default disabled)])
1437 test "${enable_debug}" != "yes" && enable_debug="no"
1439 [Define to 1 if debug code should NOT be compiled])
1440 AS_IF([test "x${enable_debug}" = "xno"], [AC_DEFINE(NDEBUG)])
1443 dnl Enable release-specific flags
1445 AC_ARG_ENABLE(release,
1446 [ --enable-release activate extra optimizations (default disabled)])
1447 test "${enable_release}" != "yes" && enable_release="no"
1450 dnl Is the shared libvlc forced ?
1452 AC_ARG_ENABLE(shared-libvlc,
1453 [ --enable-shared-libvlc Win32 libvlc.dll build (default disabled)])
1454 AS_IF([test "${enable_libtool}" != "no" && test "${enable_shared_libvlc}"], [
1455 AC_MSG_ERROR([--enable-shared-libvlc and --enable-libtool are mutually exclusive])
1462 [ --enable-sout Stream output modules (default enabled)])
1463 if test "${enable_sout}" != "no"
1465 VLC_ADD_PLUGINS([access_output_dummy access_output_udp access_output_file access_output_http])
1466 VLC_ADD_PLUGINS([mux_ps mux_avi mux_mp4 mux_asf mux_dummy mux_wav mux_mpjpeg])
1467 VLC_ADD_PLUGINS([packetizer_copy])
1469 VLC_ADD_PLUGINS([stream_out_dummy stream_out_standard stream_out_es stream_out_rtp stream_out_description vod_rtsp])
1470 VLC_ADD_PLUGINS([stream_out_duplicate stream_out_gather stream_out_display stream_out_transcode stream_out_bridge stream_out_mosaic_bridge stream_out_autodel])
1471 # VLC_ADD_PLUGINS([stream_out_transrate])
1472 # VLC_ADD_PLUGINS([rtcp])
1473 VLC_ADD_PLUGINS([profile_parser])
1475 AC_DEFINE(ENABLE_SOUT, 1, Define if you want the stream output support)
1478 AC_ARG_ENABLE(switcher,
1479 [ --enable-switcher Stream-out switcher plugin (default disabled)])
1481 dnl Check for libshout
1482 AC_ARG_ENABLE(shout,
1483 [ --enable-shout libshout output plugin (default disabled)])
1484 if test "${enable_shout}" = "yes"; then
1485 PKG_CHECK_MODULES(SHOUT, shout >= 2.1,
1486 [AC_DEFINE(HAVE_SHOUT, [], [Define if you have the libshout library])
1487 VLC_ADD_PLUGINS([access_output_shout])
1488 VLC_ADD_LDFLAGS([access_output_shout],[$SHOUT_LIBS])
1489 VLC_ADD_CFLAGS([access_output_shout],[$SHOUT_CFLAGS])],
1490 [AC_MSG_WARN(libshout library not found)])
1496 AC_ARG_ENABLE(httpd,
1497 [ --enable-httpd HTTP daemon (default enabled)])
1498 if test "${enable_httpd}" != "no"
1500 VLC_ADD_PLUGINS([http])
1501 AC_DEFINE(ENABLE_HTTPD, 1, Define if you want the HTTP dameon support)
1505 dnl VideoLAN manager
1508 [ --enable-vlm VideoLAN manager (default enabled)])
1509 if test "${enable_vlm}" != "no"
1511 AC_DEFINE(ENABLE_VLM, 1, Define if you want the VideoLAN manager support)
1515 dnl Growl notification plugin
1517 AC_ARG_ENABLE(growl,
1518 [ --enable-growl growl notification plugin (default enabled)])
1519 AS_IF([test "${enable_growl}" != "no"], [
1520 VLC_ADD_PLUGINS([growl])
1525 dnl Libnotify notification plugin
1528 AC_ARG_ENABLE(notify,
1529 [ --enable-notify libnotify notification plugin (default enabled)])
1530 AS_IF([test "${enable_notify}" != "no" -a "${SYS}" != "mingw32"], [
1531 PKG_CHECK_MODULES(NOTIFY, libnotify,
1533 VLC_ADD_PLUGINS([notify])
1534 VLC_ADD_CFLAGS(notify, [$NOTIFY_CFLAGS])
1535 VLC_ADD_LDFLAGS(notify, [$NOTIFY_LIBS])
1537 AS_IF([test "${enable_notify}" = "yes"],[
1538 AC_MSG_WARN( libnotify not found) ])
1543 dnl Audioscrobbler plugin
1546 AC_ARG_ENABLE(audioscrobbler,
1547 [ --disable-audioscrobbler Last.fm submission plugin (default enabled)])
1548 AS_IF([test "${enable_audioscrobbler}" != "no"], [
1549 VLC_ADD_PLUGINS([audioscrobbler])
1553 dnl Musicbrainz plugin
1555 AC_ARG_ENABLE(musicbrainz,
1556 [ --enable-musicbrainz MusicBrainz support (default disabled) ])
1557 AS_IF([test "${enable_musicbrainz}" = "yes"],[
1558 PKG_CHECK_MODULES(MUSICBRAINZ, libmusicbrainz,
1559 [ VLC_ADD_PLUGINS([musicbrainz])
1560 VLC_ADD_LDFLAGS([musicbrainz],[$MUSICBRAINZ_LIBS])
1561 VLC_ADD_CFLAGS([musicbrainz],[$MUSICBRAINZ_CFLAGS]) ],
1562 [AC_MSG_WARN(MusicBrainz library not found)])
1569 AC_ARG_ENABLE(taglib,
1570 [ --enable-taglib Taglib support (default disabled) ])
1571 AS_IF([test "${enable_taglib}" = "yes"],[
1572 PKG_CHECK_MODULES(TAGLIB, taglib,
1573 [ VLC_ADD_PLUGINS([taglib])
1574 VLC_ADD_LDFLAGS([taglib],[$TAGLIB_LIBS])
1575 VLC_ADD_CXXFLAGS([taglib],[$TAGLIB_CFLAGS]) ],
1576 [AC_MSG_WARN(TagLib library not found)])
1584 AC_ARG_WITH(,[Input plugins:])
1588 if test "${enable_livedotcom}"
1590 AC_MSG_WARN(--{en|dis}able-livedotcom is deprecated. Use --{en|dis}able-live555 instead.)
1593 if test "${enable_livedotcom}" = "no"
1597 AC_ARG_ENABLE(live555,
1598 [ --enable-live555 live555 RTSP input plugin (default enabled)])
1599 if test "${enable_live555}" != "no"; then
1600 AC_ARG_WITH(live555-tree,
1601 [ --with-live555-tree=PATH live.com tree for static linking])
1604 dnl test for --with-live555-tree
1606 if test "${with_livedotcom_tree}"
1608 AC_MSG_WARN(--with-livedotcom-tree is deprecated. Use --with-live555-tree instead.)
1609 with_live555_tree="${with_livedotcom_tree}"
1612 if test -z "${with_live555_tree}" -a "${CXX}" != ""; then
1614 CPPFLAGS_save="${CPPFLAGS}"
1615 CPPFLAGS_live555="-I/usr/include/liveMedia -I/usr/include/groupsock -I/usr/include/BasicUsageEnvironment -I/usr/include/UsageEnvironment"
1616 if test "${SYS}" = "solaris"; then
1617 CPPFLAGS_live555="${CPPFLAGS_live555} -DSOLARIS"
1619 CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_live555}"
1620 AC_CHECK_HEADERS(liveMedia.hh, [
1621 VLC_ADD_CXXFLAGS([live555], [${CPPFLAGS_live555}])
1622 AC_CHECK_LIB(liveMedia_pic, main, [
1623 # We have -lliveMedia_pic, build plugins
1624 VLC_ADD_PLUGINS([live555])
1625 VLC_ADD_LDFLAGS([live555], [-lliveMedia_pic -lgroupsock_pic -lBasicUsageEnvironment_pic -lUsageEnvironment_pic])
1627 AC_CHECK_LIB(liveMedia, main, [
1628 # We only have -lliveMedia, do builtins
1629 VLC_ADD_BUILTINS([live555])
1630 VLC_ADD_LDFLAGS([live555], [-lliveMedia -lgroupsock -lBasicUsageEnvironment -lUsageEnvironment])
1633 if test "${SYS}" = "mingw32"; then
1634 # add ws2_32 for closesocket, select, recv
1635 VLC_ADD_LDFLAGS([live555],[-lws2_32])
1638 CPPFLAGS="${CPPFLAGS_save}"
1641 AC_MSG_CHECKING(for liveMedia/libliveMedia.a in ${with_live555_tree})
1642 real_live555_tree="`cd ${with_live555_tree} 2>/dev/null && pwd`"
1643 if test -z "${real_live555_tree}"; then
1644 dnl The given directory can't be found
1646 AC_MSG_ERROR([cannot cd to ${with_live555_tree}])
1648 if test -f "${real_live555_tree}/liveMedia/libliveMedia.a"; then
1649 AC_MSG_RESULT(${real_live555_tree}/liveMedia/libliveMedia.a)
1651 VLC_ADD_BUILTINS([live555])
1653 if test "${SYS}" = "mingw32"; then
1654 # add ws2_32 for closesocket, select, recv
1655 VLC_ADD_LDFLAGS([live555],[-lws2_32])
1658 VLC_ADD_LDFLAGS([live555],[-L${real_live555_tree}/liveMedia -lliveMedia])
1659 VLC_ADD_LDFLAGS([live555],[-L${real_live555_tree}/BasicUsageEnvironment -lBasicUsageEnvironment])
1660 VLC_ADD_LDFLAGS([live555],[-L${real_live555_tree}/groupsock -lgroupsock])
1661 VLC_ADD_LDFLAGS([live555],[-L${real_live555_tree}/UsageEnvironment -lUsageEnvironment])
1663 VLC_ADD_CXXFLAGS([live555],[-I${real_live555_tree}/BasicUsageEnvironment/include])
1664 VLC_ADD_CXXFLAGS([live555],[-I${real_live555_tree}/groupsock/include])
1665 VLC_ADD_CXXFLAGS([live555],[-I${real_live555_tree}/liveMedia/include])
1666 VLC_ADD_CXXFLAGS([live555],[-I${real_live555_tree}/UsageEnvironment/include ])
1667 if test "${SYS}" = "solaris"; then
1668 VLC_ADD_CXXFLAGS([live555],[-DSOLARIS])
1671 dnl The given live555 wasn't built
1673 if test "${enable_live555}" = "yes"; then
1674 AC_MSG_ERROR([cannot find ${real_live555_tree}/liveMedia/libliveMedia.a, make sure you compiled live555 in ${with_live555_tree}])
1681 dnl special access module for dc1394 input
1683 AC_ARG_ENABLE(dc1394,
1684 [ --enable-dc1394 dc1394 access module (default disabled)])
1685 if test "${enable_dc1394}" = "yes"
1687 AC_CHECK_HEADERS(libraw1394/raw1394.h, [
1688 AC_CHECK_LIB( raw1394, raw1394_get_nodecount, [
1689 AC_CHECK_HEADERS(libdc1394/dc1394_control.h , [
1690 dnl AC_CHECK_LIB( dc1394_control, dc1394_setup_capture, [
1691 VLC_ADD_PLUGINS([dc1394])
1692 VLC_ADD_LDFLAGS([dc1394],[-ldc1394_control -lraw1394])
1695 dnl AC_MSG_ERROR([libdc1394 is mandatory for the dc1394 input module. try --disable-dc1394 or install this library])
1699 AC_MSG_ERROR([libdc1394 is mandatory for the dc1394 input module. try --disable-dc1394 or install this library])
1703 AC_MSG_ERROR([libraw1394 is mandatory for the dc1394 input module. try --disable-dc1394 or install this library])
1707 AC_MSG_ERROR([libraw1394 is mandatory for the dc1394 input module. try --disable-dc1394 or install this library])
1712 dnl dv module: digital video module check for libraw1394
1715 [ --enable-dv dv input module (default disabled)])
1716 if test "${enable_dv}" = "yes"
1718 AC_ARG_WITH(dv-raw1394,
1719 [ --with-dv-raw1394=PATH libraw1394 headers and libraries])
1720 AC_ARG_WITH(dv-raw1394-tree,
1721 [ --with-dv-raw1394=PATH libraw1394 tree for static linking])
1723 if test -z "${with_dv_raw1394}" -a "${with_dv_raw1394}" != ""
1725 AC_MSG_CHECKING(for raw1394 headers in ${with_dv_raw1394})
1726 if test -f ${with_dv_raw1394}/include/libraw1394/raw1394.h
1728 dnl Use ${with_dv_raw1394}/include/libraw1394/raw1394.h
1730 VLC_ADD_PLUGINS([access_dv])
1731 VLC_ADD_LDFLAGS([access_dv],[-L${with_dv_raw1394}/lib -lraw1394 -lpthread])
1732 VLC_ADD_CPPFLAGS([access_dv],[-I${with_dv_raw1394}/include])
1734 dnl No libraw1394 could be found, sorry
1736 AC_MSG_ERROR([cannot find ${with_dv_raw1394}/include/libraw1394/raw1394.h])
1739 AC_CHECK_HEADERS(libraw1394/raw1394.h,
1740 [ VLC_ADD_PLUGINS([access_dv])
1741 VLC_ADD_LDFLAGS([access_dv],[-lraw1394 -lavc1394])
1743 if test -n "${enable_dv}"
1745 AC_MSG_ERROR([cannot find libraw1394 headers])
1750 dnl Check for static linking of libraw1394
1751 if test -z "${with_dv_raw1394_tree}" -a "${with_dv_raw1394_tree}" != ""
1753 AC_MSG_CHECKING(for libraw1394.a in ${with_dv_raw1394_tree})
1754 real_dv_raw1394_tree="`cd ${with_dv_raw1394_tree} 2>/dev/null && pwd`"
1755 if test -z "${real_dv_raw1394_tree}"
1757 dnl The given directory can't be found
1759 AC_MSG_ERROR([cannot cd to ${real_dv_raw1394_tree}])
1761 if test -f "${real_dv_raw1394_tree}/src/.libs/libraw1394.a"
1763 dnl Use a custom libraw1394
1764 AC_MSG_RESULT(${real_dv_raw1394_tree}/src/.libs/libraw1394.a)
1765 VLC_ADD_BUILTINS([access_dv])
1766 VLC_ADD_LDFLAGS([access_dv],[-L${real_dv_raw1394_tree}/src/.libs -lraw1394])
1767 VLC_ADD_CPPFLAGS([access_dv],[-I${real_dv_raw1394_tree}])
1769 dnl The given libraw1394 wasn't built
1771 AC_MSG_ERROR([cannot find ${real_dv_raw1394_tree}/src/.libs/libraw1394.a, make sure you compiled libraw1394 in ${with_dv_raw1394_tree}])
1776 dnl Check for libavc1394
1779 AC_ARG_WITH(dv-avc1394,
1780 [ --with-dv-avc1394=PATH libavc1394 headers and libraries])
1781 AC_ARG_WITH(dv-avc1394-tree,
1782 [ --with-dv-avc1394=PATH libavc1394 tree for static linking])
1784 if test -z "${with_dv_avc1394}" -a "${with_dv_avc1394}" != ""
1786 AC_MSG_CHECKING(for avc1394 headers in ${with_dv_avc1394})
1787 if test -f ${with_dv_avc1394}/include/libavc1394/avc1394.h
1789 dnl Use ${with_dv_avc1394}/include/libavc1394/avc1394.h
1791 VLC_ADD_LDFLAGS([access_dv],[-L${with_dv_avc1394}/lib -lavc1394 -lrom1394 -lpthread])
1792 VLC_ADD_CPPFLAGS([access_dv],[-I${with_avc1394}/include])
1794 dnl No libavc1394 could be found, sorry
1796 AC_MSG_ERROR([cannot find ${with_dv_avc1394}/include/libavc1394/avc1394.h])
1799 AC_CHECK_HEADERS(libavc1394/avc1394.h,
1800 [ VLC_ADD_LDFLAGS([access_dv],[-lavc1394 -lrom1394 -lpthread])
1802 if test -n "${enable_dv}"
1804 AC_MSG_ERROR([cannot find libavc1394 headers])
1809 dnl Check for static linking of libavc1394
1810 if test -z "${with_dv_avc1394_tree}" -a "${with_dv_avc1394_tree}" != ""
1812 AC_MSG_CHECKING(for libavc1394.a in ${with_dv_avc1394_tree})
1813 real_dv_avc1394_tree="`cd ${with_dv_avc1394_tree} 2>/dev/null && pwd`"
1814 if test -z "${real_dv_avc1394_tree}"
1816 dnl The given directory can't be found
1818 AC_MSG_ERROR([cannot cd to ${real_dv_avc1394_tree}])
1820 if test -f "${real_dv_avc1394_tree}/src/.libs/libavc1394.a"
1822 dnl Use a custom libavc1394
1823 AC_MSG_RESULT(${real_dv_avc1394_tree}/src/.libs/libavc1394.a)
1824 VLC_ADD_LDFLAGS([access_dv],[-L${real_dv_avc1394_tree}/src/.libs -lavc1394 -lrom1394 -lpthread])
1825 VLC_ADD_CPPFLAGS([access_dv],[-I${real_dv_avc1394_tree}])
1827 dnl The given libavc1394 wasn't built
1829 AC_MSG_ERROR([cannot find ${real_dv_avc1394_tree}/src/.libs/libavc1394.a, make sure you compiled libavc1394 in ${with_dv_avc1394_tree}])
1835 dnl dvdread module: check for libdvdread
1837 AC_ARG_ENABLE(dvdread,
1838 [ --enable-dvdread dvdread input module (default disabled)])
1839 if test "${enable_dvdread}" != "no"
1841 AC_ARG_WITH(dvdread,
1842 [ --with-dvdread=PATH libdvdread headers and libraries])
1843 AC_ARG_WITH(dvdread-tree,
1844 [ --with-dvdread-tree=PATH libdvdread tree for static linking])
1846 dnl Temporary hack (yeah, sure ;)
1847 if test "${SYS}" = "mingw32" || test "${SYS}" = "darwin" || test "${SYS}" = "beos" ; then
1848 VLC_ADD_LDFLAGS([dvdread],[-ldvdcss])
1851 if test -z "${with_dvdread}"
1853 if test -z "${with_dvdread_tree}"
1855 AC_CHECK_HEADERS(dvdread/dvd_reader.h,
1856 [ VLC_ADD_PLUGINS([dvdread])
1857 VLC_ADD_LDFLAGS([dvdread],[-ldvdread ${LDFLAGS_dvdcss}])
1859 if test -n "${enable_dvdread}"
1861 AC_MSG_ERROR([cannot find libdvdread headers])
1865 AC_MSG_CHECKING(for libdvdread.a in ${with_dvdread_tree})
1866 real_dvdread_tree="`cd ${with_dvdread_tree} 2>/dev/null && pwd`"
1867 if test -z "${real_dvdread_tree}"
1869 dnl The given directory can't be found
1871 AC_MSG_ERROR([cannot cd to ${with_dvdread_tree}])
1873 if test -f "${real_dvdread_tree}/dvdread/.libs/libdvdread.a"
1875 dnl Use a custom libdvdread
1876 AC_MSG_RESULT(${real_dvdread_tree}/dvdread/.libs/libdvdread.a)
1877 VLC_ADD_BUILTINS([dvdread])
1878 VLC_ADD_LDFLAGS([dvdread],[-L${real_dvdread_tree}/dvdread/.libs -ldvdread ${LDFLAGS_dvdcss}])
1879 VLC_ADD_CPPFLAGS([dvdread],[-I${real_dvdread_tree}])
1881 dnl The given libdvdread wasn't built
1883 AC_MSG_ERROR([cannot find ${real_dvdread_tree}/dvdread/.libs/libdvdread.a, make sure you compiled libdvdread in ${with_dvdread_tree}])
1887 AC_MSG_CHECKING(for dvdread headers in ${with_dvdread})
1888 if test -f ${with_dvdread}/include/dvdread/dvd_reader.h
1890 dnl Use ${with_dvdread}/include/dvdread/dvd_reader.h
1892 VLC_ADD_PLUGINS([dvdread])
1893 VLC_ADD_LDFLAGS([dvdread],[-L${with_dvdread}/lib -ldvdread ${LDFLAGS_dvdcss}])
1894 VLC_ADD_CPPFLAGS([dvdread],[-I${with_dvdread}/include])
1896 dnl No libdvdread could be found, sorry
1898 AC_MSG_ERROR([cannot find ${with_dvdread}/include/dvdread/dvd_reader.h])
1904 dnl libdvdnav plugin
1906 AC_ARG_ENABLE(dvdnav,
1907 [ --enable-dvdnav dvdnav input module (default enabled)])
1908 if test "${enable_dvdnav}" != "no"
1910 dnl Same hack than dvdread
1911 if test "${SYS}" = "mingw32" || test "${SYS}" = "darwin" || test "${SYS}" = "beos" ; then
1912 VLC_ADD_LDFLAGS([dvdnav],[-ldvdcss])
1915 DVDNAV_PATH="${PATH}"
1916 AC_ARG_WITH(dvdnav-config-path,
1917 [ --with-dvdnav-config-path=PATH dvdnav-config path (default search in \$PATH)],
1918 [ if test "${with_dvdnav_config_path}" != "no"
1920 DVDNAV_PATH="${with_dvdnav_config_path}:${PATH}"
1922 AC_PATH_PROG(DVDNAV_CONFIG, dvdnav-config, no, ${DVDNAV_PATH})
1923 if test "${DVDNAV_CONFIG}" != "no"
1925 VLC_ADD_PLUGINS([dvdnav])
1926 VLC_ADD_CFLAGS([dvdnav],[`${DVDNAV_CONFIG} --cflags`])
1927 VLC_ADD_LDFLAGS([dvdnav],[`${DVDNAV_CONFIG} --libs`])
1932 dnl Windows DirectShow access module
1934 AC_ARG_ENABLE(dshow,
1935 [ --enable-dshow Win32 DirectShow support (default enabled on Win32)])
1936 if test "${enable_dshow}" != "no"
1938 if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"
1941 AC_CHECK_HEADERS(dshow.h,
1942 [ VLC_ADD_PLUGINS([dshow])
1943 VLC_ADD_CXXFLAGS([dshow],[])
1944 VLC_ADD_LDFLAGS([dshow],[-lole32 -loleaut32 -luuid]) ])
1951 dnl OpenCV wrapper and example filters
1953 AC_ARG_ENABLE(opencv,
1954 [ --enable-opencv OpenCV (computer vision) filter (default disabled)])
1955 if test "${enable_opencv}" = "yes" -a "${CXX}" != "";
1957 AC_ARG_WITH(opencv-tree,
1958 [ --with-opencv-tree=PATH opencv tree for linking])
1959 if test -n "${with_opencv_tree}"
1961 if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"
1963 AC_MSG_CHECKING(for opencv in ${with_opencv_tree})
1964 if test -f ${with_opencv_tree}/cv/include/cv.h -a -f ${with_opencv_tree}/cxcore/include/cxcore.h \
1965 -a -f ${with_opencv_tree}/cvaux/include/cvaux.h -a -f ${with_opencv_tree}/otherlibs/highgui/highgui.h
1968 VLC_ADD_PLUGINS([opencv_wrapper])
1969 VLC_ADD_LDFLAGS([opencv_wrapper],[-L${with_opencv_tree}/lib -lcv -lcxcore -lcvaux -lhighgui])
1970 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])
1972 VLC_ADD_PLUGINS([opencv_example])
1973 VLC_ADD_LDFLAGS([opencv_example],[-L${with_opencv_tree}/lib -lcv -lcxcore -lcvaux -lhighgui])
1974 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])
1977 dnl No opencv could be found, sorry
1979 AC_MSG_ERROR([cannot find opencv in ${with_opencv_tree}])
1982 AC_MSG_WARN([--enable-opencv currently only works on windows])
1989 dnl libsmbclient plugin
1992 [ --enable-smb smb input module (default enabled)])
1993 if test "${enable_smb}" != "no"; then
1994 AC_CHECK_HEADERS(libsmbclient.h,
1995 [ VLC_ADD_PLUGINS([access_smb])
1996 VLC_ADD_LDFLAGS([access_smb],[-lsmbclient]) ],
1997 [ if test -n "${enable_smb}"; then
1998 AC_MSG_ERROR([cannot find libsmbclient headers])
2000 AC_CHECK_MEMBER([struct _SMBCCTX.close_fn],
2001 AC_DEFINE([HAVE__SMBCCTX_CLOSE_FN], [1], [Define if samba has _SMBCCTX.close_fn]),,
2002 [#include <libsmbclient.h>])
2006 dnl libdvbpsi ts demux/mux
2008 AC_ARG_ENABLE(dvbpsi,
2009 [ --enable-dvbpsi dvbpsi ts mux and demux module (default enabled)])
2010 if test "${enable_dvbpsi}" != "no"
2013 [ --with-dvbpsi=PATH libdvbpsi headers and libraries])
2015 [ --with-dvbpsi-tree=PATH libdvbpsi tree for static linking])
2016 case "${with_dvbpsi}" in
2018 if test -z "${with_dvbpsi_tree}"
2020 AC_CHECK_HEADERS(dvbpsi/dr.h,
2021 [ VLC_ADD_PLUGINS([ts])
2022 if test "${enable_sout}" != "no"; then
2023 VLC_ADD_PLUGINS([mux_ts])
2025 VLC_ADD_LDFLAGS([mux_ts ts dvb],[-ldvbpsi]) ],
2026 [ AC_MSG_WARN([cannot find libdvbpsi headers]) ],
2027 [#if defined( HAVE_STDINT_H )
2028 # include <stdint.h>
2029 #elif defined( HAVE_INTTYPES_H )
2030 # include <inttypes.h>
2032 #include <dvbpsi/dvbpsi.h>
2033 #include <dvbpsi/descriptor.h>
2034 #include <dvbpsi/pat.h>
2035 #include <dvbpsi/pmt.h>])
2037 AC_MSG_CHECKING(for libdvbpsi.a in ${with_dvbpsi_tree})
2038 real_dvbpsi_tree="`cd ${with_dvbpsi_tree} 2>/dev/null && pwd`"
2039 if test -z "${real_dvbpsi_tree}"
2041 dnl The given directory can't be found
2043 AC_MSG_ERROR([cannot cd to ${with_dvbpsi_tree}])
2045 if test -f "${real_dvbpsi_tree}/src/.libs/libdvbpsi.a"
2047 dnl Use a custom libdvbpsi
2048 AC_MSG_RESULT(${real_dvbpsi_tree}/src/.libs/libdvbpsi.a)
2049 VLC_ADD_BUILTINS([ts])
2050 if test "${enable_sout}" != "no"; then
2051 VLC_ADD_BUILTINS([mux_ts])
2053 VLC_ADD_CPPFLAGS([mux_ts ts dvb],[-I${real_dvbpsi_tree}/src])
2054 VLC_ADD_LDFLAGS([mux_ts ts dvb],[${real_dvbpsi_tree}/src/.libs/libdvbpsi.a])
2056 dnl The given libdvbpsi wasn't built
2058 AC_MSG_ERROR([cannot find ${real_dvbpsi_tree}/src/.libs/libdvbpsi.a, make sure you compiled libdvbpsi in ${with_dvbpsi_tree}])
2063 dnl Compile without dvbpsi
2066 AC_MSG_CHECKING(for dvbpsi headers in ${with_dvbpsi})
2067 if test -z "${with_dvbpsi}"
2072 LDFLAGS_test="-L${with_dvbpsi}/lib"
2073 CPPFLAGS_test="-I${with_dvbpsi}/include"
2075 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_test}"
2076 AC_CHECK_HEADERS([dvbpsi/dr.h],[
2077 VLC_ADD_PLUGINS([ts])
2078 if test "${enable_sout}" != "no"; then
2079 VLC_ADD_PLUGINS([mux_ts])
2081 VLC_ADD_CPPFLAGS([mux_ts ts dvb],[${CPPFLAGS_test}])
2082 VLC_ADD_LDFLAGS([mux_ts ts dvb],[${LDFLAGS_test} -ldvbpsi])
2085 if test -n "${enable_dvbpsi}"
2087 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])
2090 CPPFLAGS="${CPPFLAGS_save}"
2093 AC_CHECK_LIB(dvbpsi, dvbpsi_GenSDTSections, [
2094 AC_DEFINE(HAVE_DVBPSI_SDT, 1, [Define if you have dvbpsi_GenSDTSections.])
2095 ], [], [${LDFLAGS_ts}])
2100 dnl Video4Linux plugin
2103 [ --enable-v4l Video4Linux input support (default disabled)])
2104 if test "${enable_v4l}" = "yes"
2107 [ --with-v4l=PATH path to a v4l-enabled kernel tree],[],[])
2108 if test "${with_v4l}" != "no" -a -n "${with_v4l}"
2110 VLC_ADD_CPPFLAGS([v4l],[-I${with_v4l}/include])
2113 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_v4l}"
2114 AC_CHECK_HEADERS(linux/videodev.h, [
2115 VLC_ADD_PLUGINS([v4l])
2117 CPPFLAGS="${CPPFLAGS_save}"
2121 dnl Video4Linux plugin
2124 [ --enable-v4l2 Video4Linux2 input support (default disabled)])
2125 if test "${enable_v4l2}" = "yes"
2128 [ --with-v4l2=PATH path to a v4l2-enabled kernel tree],[],[])
2129 if test "${with_v4l2}" != "no" -a -n "${with_v4l2}"
2131 VLC_ADD_CPPFLAGS([v4l2],[-I${with_v4l2}/include])
2134 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_v4l2}"
2135 AC_CHECK_HEADERS(linux/videodev2.h, [
2136 VLC_ADD_PLUGINS([v4l2])
2138 CPPFLAGS="${CPPFLAGS_save}"
2143 dnl special access module for Hauppauge PVR cards
2146 [ --enable-pvr PVR cards access module (default disabled)])
2147 if test "${enable_pvr}" = "yes"
2149 VLC_ADD_PLUGINS([pvr])
2153 dnl gnomeVFS access module
2155 AC_ARG_ENABLE(gnomevfs,
2156 [ --enable-gnomevfs GnomeVFS access module (default enabled)])
2157 if test "${enable_gnomevfs}" != "no"
2159 PKG_CHECK_MODULES(GNOMEVFS, gnome-vfs-2.0,
2160 VLC_ADD_LDFLAGS([access_gnomevfs],[$GNOMEVFS_LIBS])
2161 VLC_ADD_CPPFLAGS([access_gnomevfs],[$GNOMEVFS_CPPFLAGS])
2162 VLC_ADD_CFLAGS([access_gnomevfs],[$GNOMEVFS_CFLAGS])
2163 VLC_ADD_PLUGINS([access_gnomevfs]),
2164 AC_MSG_WARN([GnomeVFS support disabled because GnomeVFS development headers not found]))
2167 dnl Need to test libcdio and libvcdinfo for a number of things. Do it now.
2168 AC_ARG_ENABLE(libcdio,
2169 [ --enable-libcdio CD input and control library support (default enabled)])
2174 if test "${enable_libcdio}" != "no"
2176 PKG_CHECK_MODULES(LIBCDIO, libcdio >= 0.78.2,
2178 AC_DEFINE(HAVE_LIBCDIO, [],
2179 [Define if you have libcdio 0.78.2 or greater installed]),
2180 [AC_MSG_WARN(CD Reading and information library not found)])
2182 PKG_CHECK_MODULES(VCDINFO, libvcdinfo >= 0.7.22,
2183 [have_libvcdinfo=yes
2184 AC_DEFINE(HAVE_VCDINFO, [],
2185 [Define if you have libvcdinfo 0.7.22 or greater installed])],
2186 [AC_MSG_WARN(VCD information library not found)])
2190 dnl VCDX and CDDAX modules
2192 AC_ARG_ENABLE(cddax,
2193 [ --enable-cddax audio CD plugin with CD Text and CD paranoia via libcdio (default disabled)])
2195 AC_ARG_ENABLE(libcddb,
2196 [ --enable-libcddb CDDB support for libcdio audio CD (default enabled)])
2198 if test "${enable_cddax}" = "yes"
2200 if test "$have_libcdio" = "yes"
2202 AC_DEFINE(HAVE_CDDAX, [], [Define for the audio CD plugin using libcdio])
2203 VLC_ADD_LDFLAGS([cddax],[$LIBCDIO_LIBS])
2204 VLC_ADD_CFLAGS([cddax],[$LIBCDIO_CFLAGS])
2205 VLC_ADD_PLUGINS([cddax])
2206 PKG_CHECK_MODULES(LIBCDIO_PARANOIA, libcdio_paranoia >= 0.72, [
2207 VLC_ADD_LDFLAGS([cddax],[$LIBCDIO_CDDA_LIBS $LIBCDIO_CDDA_LIBS $LIBCDIO_PARANOIA_LIBS])],
2208 AC_MSG_WARN([CD Paranoia support disabled because no libcdio >= 0.72 found]))
2210 AC_MSG_WARN([cddax plugin disabled because ok libcdio library not found or disabled])
2214 if test "$enable_libcddb" != "no"; then
2215 PKG_CHECK_MODULES(LIBCDDB, libcddb >= 0.9.5, [
2217 AC_DEFINE(HAVE_LIBCDDB, [], [Define this if you have libcddb installed])
2218 VLC_ADD_LDFLAGS([cddax],[$LIBCDDB_LIBS])
2219 VLC_ADD_CFLAGS([cddax],[$LIBCDDB_CFLAGS])
2221 [AC_MSG_WARN(new enough libcddb not found. CDDB access disabled)
2228 [ --enable-vcdx VCD with navigation via libvcdinfo (default disabled)])
2230 if test "${enable_vcdx}" = "yes"
2232 if test "${have_libvcdinfo}" = "yes"
2234 VLC_ADD_LDFLAGS([vcdx],[$VCDINFO_LIBS])
2235 VLC_ADD_CFLAGS([vcdx],[$VCDINFO_CFLAGS])
2237 AC_MSG_WARN([vcdx plugin disabled because ok libvcdinfo library not found or disabled])
2241 PKG_CHECK_MODULES(LIBCDIO, libiso9660 >= 0.72,
2242 [VLC_ADD_LDFLAGS([vcdx],[$LIBISO9660_LIBS])
2243 VLC_ADD_CFLAGS([vcdx],[$LIBISO9660_CFLAGS])],
2244 [AC_MSG_WARN([vcdx plugin disabled because ok libiso9660 library not found])
2247 if test "$have_libvcdinfo" = "yes"
2249 AC_DEFINE(HAVE_VCDX, [],
2250 [Define for the VCD plugin using libcdio/libvcdinfo])
2251 VLC_ADD_LDFLAGS([vcdx],[$VCDINFO_LIBS])
2252 VLC_ADD_CFLAGS([vcdx],[$VCDINFO_CFLAGS])
2253 VLC_ADD_PLUGINS([vcdx])
2255 AC_MSG_WARN([vcdx plugin disabled because ok libvcdinfo library not found])
2261 dnl Built-in CD-DA and VCD module
2264 [ --enable-cdda audio CD via built-in VCD (default enabled)])
2267 [ --enable-vcd built-in VCD (default enabled)])
2269 if test "${enable_vcd}" != "no"
2271 AC_MSG_CHECKING(for cdrom_msf0 in linux/cdrom.h)
2272 AC_EGREP_HEADER(cdrom_msf0,linux/cdrom.h,[
2274 VLC_ADD_PLUGINS([vcd cdda])
2279 AC_MSG_CHECKING(for scsireq in sys/scsiio.h)
2280 AC_EGREP_HEADER(scsireq,sys/scsiio.h,[
2282 VLC_ADD_PLUGINS([vcd cdda])
2283 AC_DEFINE(HAVE_SCSIREQ_IN_SYS_SCSIIO_H, 1, For NetBSD VCD support)
2288 AC_MSG_CHECKING(for ioc_toc_header in sys/cdio.h)
2289 AC_EGREP_HEADER(ioc_toc_header ,sys/cdio.h,[
2291 VLC_ADD_PLUGINS([vcd cdda])
2292 AC_DEFINE(HAVE_IOC_TOC_HEADER_IN_SYS_CDIO_H, 1, For FreeBSD VCD support)
2297 if test "${SYS}" = "bsdi" -o "${SYS}" = "mingw32"
2299 VLC_ADD_PLUGINS([vcd cdda])
2302 if test "${SYS}" = "darwin"
2304 VLC_ADD_PLUGINS([vcd cdda])
2305 VLC_ADD_LDFLAGS([vcd vcdx cdda cddax],[-framework IOKit -framework CoreFoundation])
2306 VLC_ADD_LDFLAGS([vcdx cddax cdda],[-liconv])
2309 if test "$enable_libcddb" != "no"; then
2310 PKG_CHECK_MODULES(LIBCDDB, libcddb >= 0.9.5, [
2312 AC_DEFINE(HAVE_LIBCDDB, [], [Define this if you have libcddb installed])
2313 VLC_ADD_LDFLAGS([cdda],[$LIBCDDB_LIBS])
2314 VLC_ADD_CFLAGS([cdda],[$LIBCDDB_CFLAGS])
2316 [AC_MSG_WARN(new enough libcddb not found. CDDB access disabled)
2322 dnl DVB-S/DVB-T/DVB-C satellite/teresterial/cable input using v4l2
2325 [ --enable-dvb DVB-S/T/C card support (default disabled)])
2327 if test "${enable_dvb}" = "yes"
2330 [ --with-dvb=PATH path to a dvb- and v4l2-enabled kernel tree],[],[])
2331 if test "${with_dvb}" != "no" -a -n "${with_dvb}"
2333 VLC_ADD_CFLAGS([dvb],[-I${with_dvb}/include])
2335 CPPFLAGS="${CPPFLAGS_save} -I${with_dvb}/include"
2336 AC_CHECK_HEADERS(linux/dvb/version.h linux/dvb/frontend.h, [
2337 if test -z "${with_dvbpsi_tree}"
2339 VLC_ADD_PLUGINS([dvb])
2341 VLC_ADD_BUILTINS([dvb])
2343 ],[AC_MSG_WARN(linux-dvb headers not found, dvb disabled)])
2344 CPPFLAGS="${CPPFLAGS_save}"
2348 dnl Screen capture module
2350 AC_ARG_ENABLE(screen,
2351 [ --enable-screen Screen capture support (default enabled)])
2352 if test "${enable_screen}" != "no"; then
2353 if test "${SYS}" = "darwin"; then
2354 AC_CHECK_HEADERS(ApplicationServices/ApplicationServices.h, [
2355 VLC_ADD_PLUGINS([screen])
2356 VLC_ADD_LDFLAGS([screen],[-framework ApplicationServices])
2358 elif test "${SYS}" = "mingw32"; then
2359 VLC_ADD_PLUGINS([screen])
2360 VLC_ADD_LDFLAGS([screen],[-lgdi32])
2361 elif test "${SYS}" = "mingwce"; then
2362 CPPFLAGS="${CPPFLAGS_save}"
2363 elif test "${SYS}" = "beos"; then
2364 VLC_ADD_PLUGINS([screen])
2365 VLC_ADD_CXXFLAGS([screen],[])
2366 VLC_ADD_LDFLAGS([screen],[-lbe])
2368 CPPFLAGS="${CPPFLAGS_save} ${X_CFLAGS}"
2369 AC_CHECK_HEADERS(X11/Xlib.h, [
2370 VLC_ADD_PLUGINS([screen])
2371 VLC_ADD_LDFLAGS([screen],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext])
2372 VLC_ADD_CPPFLAGS([screen],[${X_CFLAGS}])
2374 CPPFLAGS="${CPPFLAGS_save}"
2379 dnl ipv6 plugin - not for QNX yet
2382 AC_CHECK_FUNCS(inet_pton,[have_ipv6=yes],[
2383 AC_CHECK_LIB(nsl,inet_pton, [have_ipv6=yes])
2386 AS_IF([test "${have_ipv6}" = "yes"], [
2387 AC_DEFINE(HAVE_INET_PTON, 1, [Define to 1 if you have inet_pton().])])
2390 dnl ogg demux plugin
2393 [ --enable-ogg Ogg demux support (default enabled)])
2394 if test "${enable_ogg}" != "no"
2396 AC_ARG_WITH(ogg-tree,
2397 [ --with-ogg-tree=PATH ogg tree for static linking])
2398 if test -n "${with_ogg_tree}"
2400 AC_MSG_CHECKING(for libogg.a in ${with_ogg_tree})
2401 real_ogg_tree="`cd ${with_ogg_tree} 2>/dev/null && pwd`"
2402 if test -z "${real_ogg_tree}"
2404 dnl The given directory can't be found
2406 AC_MSG_ERROR([cannot cd to ${with_ogg_tree}])
2408 if test -f "${real_ogg_tree}/src/.libs/libogg.a"
2410 dnl Use a custom ogg
2411 AC_MSG_RESULT(${real_ogg_tree}/src/.libs/libogg.a)
2412 VLC_ADD_PLUGINS([ogg])
2413 if test "${enable_sout}" != "no"; then
2414 VLC_ADD_PLUGINS([mux_ogg])
2416 VLC_ADD_LDFLAGS([ogg mux_ogg speex vorbis],[${real_ogg_tree}/src/.libs/libogg.a])
2417 VLC_ADD_CFLAGS([ogg mux_ogg speex vorbis],[-I${real_ogg_tree}/include])
2419 dnl The given ogg wasn't built
2421 AC_MSG_ERROR([cannot find ${real_ogg_tree}/src/.libs/libogg.a, make sure you compiled ogg in ${with_ogg_tree}])
2424 AC_CHECK_HEADERS(ogg/ogg.h, [
2425 AC_CHECK_LIB( ogg, oggpack_read, [
2426 VLC_ADD_PLUGINS([ogg])
2427 if test "${enable_sout}" != "no"; then
2428 VLC_ADD_PLUGINS([mux_ogg])
2430 VLC_ADD_LDFLAGS([ogg mux_ogg],[-logg])])
2436 dnl matroska demux plugin
2439 [ --enable-mkv Matroska demux support (default enabled)])
2440 if test "${enable_mkv}" != "no" -a "${CXX}" != ""; then
2442 AC_CHECK_HEADERS(ebml/EbmlVersion.h, [
2443 AC_MSG_CHECKING(for libebml version >= 0.7.6)
2445 [#include <ebml/EbmlVersion.h>
2446 #ifdef LIBEBML_VERSION
2447 #if LIBEBML_VERSION >= 0x000706
2451 [AC_MSG_RESULT([yes])
2452 AC_CHECK_HEADERS(matroska/KaxVersion.h, [
2453 AC_MSG_CHECKING(for libmatroska version >= 0.7.7)
2455 [#include <matroska/KaxVersion.h>
2456 #ifdef LIBMATROSKA_VERSION
2457 #if LIBMATROSKA_VERSION >= 0x000705
2461 [AC_MSG_RESULT([yes])
2462 AC_CHECK_HEADERS(matroska/KaxAttachments.h)
2463 VLC_ADD_CXXFLAGS([mkv],[])
2464 if test "${SYS}" = "darwin"; then
2465 VLC_ADD_CXXFLAGS([mkv],[-O1])
2467 AC_CHECK_LIB(ebml_pic, main, [
2468 VLC_ADD_PLUGINS([mkv])
2469 VLC_ADD_LDFLAGS([mkv],[-lmatroska -lebml_pic])
2471 AC_CHECK_LIB(ebml, main, [
2472 VLC_ADD_PLUGINS([mkv])
2473 VLC_ADD_LDFLAGS([mkv],[-lmatroska -lebml])
2477 [AC_MSG_RESULT([no])
2478 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.])
2482 [AC_MSG_RESULT([no])
2483 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.])
2490 dnl modplug demux plugin
2493 [ --enable-mod Mod demux support (default enabled)])
2494 if test "${enable_mod}" != "no"
2496 AC_ARG_WITH(mod-tree,
2497 [ --with-mod-tree=PATH mod tree for static linking])
2498 if test -n "${with_mod_tree}"
2500 AC_MSG_CHECKING(for libmodplug.a in ${with_mod_tree})
2501 real_mod_tree="`cd ${with_mod_tree} 2>/dev/null && pwd`"
2502 if test -z "${real_mod_tree}"
2504 dnl The given directory can't be found
2506 AC_MSG_ERROR([cannot cd to ${with_mod_tree}])
2508 if test -f "${real_mod_tree}/src/.libs/libmodplug.a"
2510 dnl Use a custom mod
2511 AC_MSG_RESULT(${real_mod_tree}/src/.libs/libmodplug.a)
2512 VLC_ADD_PLUGINS([mod])
2513 VLC_ADD_LDFLAGS([mod],[${real_mod_tree}/src/.libs/libmodplug.a -lstdc++])
2514 VLC_ADD_CXXFLAGS([mod],[-I${real_mod_tree}/include])
2516 dnl The given mod wasn't built
2518 AC_MSG_ERROR([cannot find ${real_mod_tree}/src/.libs/libmodplug.a, make sure you compiled mod in ${with_mod_tree}])
2521 AC_CHECK_HEADERS(libmodplug/modplug.h, [
2522 VLC_ADD_PLUGINS([mod])
2523 VLC_ADD_CXXFLAGS([mod],[])
2524 VLC_ADD_LDFLAGS([mod],[-lmodplug -lstdc++])])
2529 dnl mpc demux plugin
2532 [ --enable-mpc Mpc demux support (default enabled)])
2533 if test "${enable_mpc}" != "no"
2535 AC_CHECK_HEADERS(mpcdec/mpcdec.h, [
2536 VLC_ADD_PLUGINS([mpc])
2537 VLC_ADD_LDFLAGS([mpc],[-lmpcdec])])
2541 dnl game music emu demux plugin
2544 [ --enable-gme Game Music Emu demux support (default enabled)])
2545 if test "${enable_gme}" != "no" -a "${CXX}" != "";
2548 AC_ARG_WITH(gme-tree,
2549 [ --with-gme-tree=PATH gme tree for static linking])
2550 if test -n "${with_gme_tree}"
2552 AC_MSG_CHECKING(for libgme.a in ${with_mod_tree})
2553 real_gme_tree="`cd ${with_gme_tree} 2>/dev/null && pwd`"
2554 if test -z "${real_gme_tree}"
2556 dnl The given directory can't be found
2558 AC_MSG_ERROR([cannot cd to ${with_gme_tree}])
2560 if test -f "${real_gme_tree}/gme/libgme.a"
2562 dnl Use a custom gme
2563 AC_MSG_RESULT(${real_gme_tree}/gme/libgme.a)
2564 VLC_ADD_PLUGINS([gme])
2565 VLC_ADD_LDFLAGS([gme],[${real_gme_tree}/gme/libgme.a])
2566 VLC_ADD_CXXFLAGS([gme],[-I${real_gme_tree}/gme])
2568 dnl The given gme wasn't built
2570 AC_MSG_ERROR([cannot find ${real_mod_tree}/gme/libgme.a, make sure you compiled gme in ${with_gme_tree}])
2573 AC_MSG_WARN([only static linking is available, you must provide a gme-tree])
2582 AC_ARG_WITH(,[Codec plugins:])
2588 [ --enable-mad libmad module (default enabled)])
2589 if test "${enable_mad}" != "no"
2592 [ --with-mad=PATH path to libmad],[],[])
2593 if test "${with_mad}" != "no" -a -n "${with_mad}"
2595 VLC_ADD_CPPFLAGS([mpgatofixed32],[-I${with_mad}/include])
2596 VLC_ADD_LDFLAGS([mpgatofixed32],[-L${with_mad}/lib])
2599 AC_ARG_WITH(mad-tree,
2600 [ --with-mad-tree=PATH mad tree for static linking],[],[])
2601 if test "${with_mad_tree}" != "no" -a -n "${with_mad_tree}"
2603 real_mad_tree="`cd ${with_mad_tree} 2>/dev/null && pwd`"
2604 if test -z "${real_mad_tree}"
2606 dnl The given directory can't be found
2608 AC_MSG_ERROR([${with_mad_tree} directory doesn't exist])
2610 dnl Use a custom libmad
2611 AC_MSG_CHECKING(for mad.h in ${real_mad_tree})
2612 if test -f ${real_mad_tree}/mad.h
2615 VLC_ADD_CPPFLAGS([mpgatofixed32],[-I${real_mad_tree}])
2616 VLC_ADD_LDFLAGS([mpgatofixed32],[-L${real_mad_tree}/.libs])
2617 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_mpgatofixed32}"
2618 AC_CHECK_LIB(mad, mad_bit_init, [
2619 VLC_ADD_BUILTINS([mpgatofixed32])
2620 VLC_ADD_LDFLAGS([mpgatofixed32],[-lmad])
2621 ],[ AC_MSG_ERROR([the specified tree hasn't been compiled ])
2623 LDFLAGS="${LDFLAGS_save}"
2626 AC_MSG_ERROR([the specified tree doesn't have mad.h])
2629 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_mpgatofixed32}"
2630 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_mpgatofixed32}"
2631 AC_CHECK_HEADERS(mad.h, ,
2632 [ 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.]) ])
2633 AC_CHECK_LIB(mad, mad_bit_init, [
2634 VLC_ADD_PLUGINS([mpgatofixed32])
2635 VLC_ADD_LDFLAGS([mpgatofixed32],[-lmad])],
2636 [ AC_MSG_ERROR([Cannot find libmad library...]) ])
2637 CPPFLAGS="${CPPFLAGS_save}"
2638 LDFLAGS="${LDFLAGS_save}"
2643 dnl libid3tag support (FIXME!!! doesn't work with new input)
2645 AC_CHECK_HEADERS(id3tag.h, [
2646 AC_CHECK_HEADERS(zlib.h, [
2647 VLC_ADD_LDFLAGS([id3tag],[-lid3tag -lz])
2648 VLC_ADD_PLUGINS([id3tag])]) ])
2651 dnl ffmpeg decoder/demuxer plugin
2653 dnl we try to find ffmpeg using : 1- given tree 2- ffmpeg-config, 3- pkg-config
2654 dnl 4- default place,
2656 AC_ARG_ENABLE(ffmpeg,
2657 [ --enable-ffmpeg ffmpeg codec (default enabled)])
2658 if test "${enable_ffmpeg}" != "no"
2661 dnl Those options have to be here because the .pc can be bogus for ffmpeg previous nov 05
2663 AC_ARG_WITH(ffmpeg-mp3lame,
2664 [ --with-ffmpeg-mp3lame specify if ffmpeg has been compiled with mp3lame support],
2666 if test "$with_ffmpeg_mp3lame" = "yes"; then
2667 VLC_ADD_LDFLAGS([ffmpeg],[-lmp3lame])
2670 AC_ARG_WITH(ffmpeg-faac,
2671 [ --with-ffmpeg-faac specify if ffmpeg has been compiled with faac support],
2673 if test "$with_ffmpeg_faac" = "yes"; then
2674 VLC_ADD_LDFLAGS([ffmpeg],[-lfaac])
2677 AC_ARG_WITH(ffmpeg-dts,
2678 [ --with-ffmpeg-dts specify if ffmpeg has been compiled with dts support],
2680 if test "$with_ffmpeg_dts" = "yes"; then
2681 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_ffmpeg}"
2682 AC_CHECK_LIB(dts_pic, dts_free,
2683 [ VLC_ADD_LDFLAGS([ffmpeg],[-ldts_pic]) ],
2684 [ VLC_ADD_LDFLAGS([ffmpeg],[-ldts]) ])
2685 LDFLAGS="${LDFLAGS_save}"
2688 AC_ARG_WITH(ffmpeg-vorbis,
2689 [ --with-ffmpeg-vorbis specify if ffmpeg has been compiled with vorbis support],
2691 if test "$with_ffmpeg_vorbis" = "yes"; then
2692 VLC_ADD_LDFLAGS([ffmpeg],[-lvorbisenc -lvorbis])
2695 AC_ARG_WITH(ffmpeg-theora,
2696 [ --with-ffmpeg-theora specify if ffmpeg has been compiled with theora support],
2698 if test "$with_ffmpeg_theora" = "yes"; then
2699 VLC_ADD_LDFLAGS([ffmpeg],[-ltheora])
2702 AC_ARG_WITH(ffmpeg-ogg,
2703 [ --with-ffmpeg-ogg specify if ffmpeg has been compiled with ogg support],
2705 if test "$with_ffmpeg_ogg" = "yes"; then
2706 VLC_ADD_LDFLAGS([ffmpeg],[-logg])
2709 AC_ARG_WITH(ffmpeg-zlib,
2710 [ --with-ffmpeg-zlib specify if ffmpeg has been compiled with zlib support],
2712 if test "$with_ffmpeg_zlib" = "yes"; then
2713 VLC_ADD_LDFLAGS([ffmpeg],[-lz])
2717 dnl test for --with-ffmpeg-tree
2719 AC_ARG_WITH(ffmpeg-tree,
2720 [ --with-ffmpeg-tree=PATH ffmpeg tree for static linking])
2722 if test "${with_ffmpeg_tree}" != "no" -a -n "${with_ffmpeg_tree}"; then
2723 AC_MSG_CHECKING(for libavcodec.a in ${with_ffmpeg_tree})
2724 real_ffmpeg_tree="`cd ${with_ffmpeg_tree} 2>/dev/null && pwd`"
2725 if test -z "${real_ffmpeg_tree}"; then
2726 dnl The given directory can't be found
2728 AC_MSG_ERROR([cannot cd to ${with_ffmpeg_tree}])
2730 if ! test -f "${real_ffmpeg_tree}/libavcodec/libavcodec.a"; then
2731 dnl The given libavcodec wasn't built
2733 AC_MSG_ERROR([cannot find ${real_ffmpeg_tree}/libavcodec/libavcodec.a, make sure you compiled libavcodec in ${with_ffmpeg_tree}])
2735 if ! fgrep -s "pp_get_context" "${real_ffmpeg_tree}/libavcodec/libavcodec.a"; then
2736 if test -f "${real_ffmpeg_tree}/libavcodec/libpostproc/libpostproc.a"; then
2737 VLC_ADD_LDFLAGS([ffmpeg],[-L${real_ffmpeg_tree}/libavcodec/libpostproc ${real_ffmpeg_tree}/libavcodec/libpostproc/libpostproc.a])
2738 elif test -f "${real_ffmpeg_tree}/libpostproc/libpostproc.a"; then
2739 VLC_ADD_LDFLAGS([ffmpeg],[-L${real_ffmpeg_tree}/libpostproc ${real_ffmpeg_tree}/libpostproc/libpostproc.a])
2740 VLC_ADD_CPPFLAGS([ffmpeg stream_out_switcher],[-I${real_ffmpeg_tree}])
2742 dnl The given libavcodec wasn't built with --enable-pp
2744 AC_MSG_ERROR([cannot find libpostproc.a in ${real_ffmpeg_tree}/[libavcodec/]libpostproc/. Make sure you configured ffmpeg with --enable-pp])
2747 dnl Use a custom libffmpeg
2748 AC_MSG_RESULT(${real_ffmpeg_tree}/libavcodec/libavcodec.a)
2750 if fgrep -s "CONFIG_ZLIB=yes" "${real_ffmpeg_tree}/config.mak"; then
2751 if test "${with_ffmpeg_zlib}" != "yes"; then
2752 VLC_ADD_LDFLAGS([ffmpeg],[-lz])
2755 if fgrep -s "CONFIG_MP3LAME=yes" "${real_ffmpeg_tree}/config.mak"; then
2756 if test "${with_ffmpeg_mp3lame}" != "yes"; then
2757 VLC_ADD_LDFLAGS([ffmpeg],[-lmp3lame])
2760 if fgrep -s "CONFIG_FAAC=yes" "${real_ffmpeg_tree}/config.mak"; then
2761 if test "${with_ffmpeg_faac}" != "yes"; then
2762 VLC_ADD_LDFLAGS([ffmpeg],[-lfaac])
2765 if fgrep -s "CONFIG_DTS=yes" "${real_ffmpeg_tree}/config.mak"; then
2766 if test "${with_ffmpeg_dts}" != "yes"; then
2767 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_ffmpeg}"
2768 AC_CHECK_LIB(dts_pic, dts_free,
2769 [ VLC_ADD_LDFLAGS([ffmpeg],[-ldts_pic]) ],
2770 [ VLC_ADD_LDFLAGS([ffmpeg],[-ldts]) ])
2771 LDFLAGS="${LDFLAGS_save}"
2774 if fgrep -s "CONFIG_VORBIS=yes" "${real_ffmpeg_tree}/config.mak"; then
2775 VLC_ADD_LDFLAGS([ffmpeg],[-lvorbis -lvorbisenc])
2777 if fgrep -s "CONFIG_FAAD=yes" "${real_ffmpeg_tree}/config.mak"; then
2778 VLC_ADD_LDFLAGS([ffmpeg],[-lfaad])
2780 if fgrep -s "CONFIG_XVID=yes" "${real_ffmpeg_tree}/config.mak"; then
2781 VLC_ADD_LDFLAGS([ffmpeg],[-lxvidcore])
2784 VLC_ADD_BUILTINS([ffmpeg])
2785 if test "${enable_sout}" != "no" -a "${enable_switcher}" = "yes" ; then
2786 VLC_ADD_BUILTINS([stream_out_switcher])
2789 if test -f "${real_ffmpeg_tree}/libavutil/libavutil.a"; then
2790 VLC_ADD_LDFLAGS([ffmpeg],[-L${real_ffmpeg_tree}/libavutil ${real_ffmpeg_tree}/libavutil/libavutil.a])
2791 VLC_ADD_CPPFLAGS([ffmpeg stream_out_switcher],[-I${real_ffmpeg_tree}/libavutil])
2794 VLC_ADD_LDFLAGS([ffmpeg],[-L${real_ffmpeg_tree}/libavcodec ${real_ffmpeg_tree}/libavcodec/libavcodec.a])
2795 VLC_ADD_CPPFLAGS([ffmpeg stream_out_switcher],[-I${real_ffmpeg_tree}/libavcodec])
2797 if test -f "${real_ffmpeg_tree}/libavformat/libavformat.a"; then
2798 AC_DEFINE(HAVE_LIBAVFORMAT_TREE, 1, [Define if you have ffmpeg's libavformat.])
2799 VLC_ADD_LDFLAGS([ffmpeg],[-L${real_ffmpeg_tree}/libavformat ${real_ffmpeg_tree}/libavformat/libavformat.a])
2800 VLC_ADD_CPPFLAGS([ffmpeg stream_out_switcher],[-I${real_ffmpeg_tree}/libavformat])
2803 if test -f "${real_ffmpeg_tree}/libswscale/libswscale.a"; then
2804 AC_DEFINE(HAVE_LIBSWSCALE_TREE, 1, [Define if you have ffmpeg's libswscale.])
2805 VLC_ADD_LDFLAGS([ffmpeg],[-L${real_ffmpeg_tree}/libswscale ${real_ffmpeg_tree}/libswscale/libswscale.a])
2806 VLC_ADD_CPPFLAGS([ffmpeg stream_out_switcher],[-I${real_ffmpeg_tree}/libswscale])
2810 dnl Look for a ffmpeg-config (we are on debian )
2812 FFMPEG_PATH="${PATH}"
2813 AC_ARG_WITH(ffmpeg-config-path,
2814 [ --with-ffmpeg-config-path=PATH ffmpeg-config path (default search in \$PATH)],
2815 [ if test "${with_ffmpeg_config_path}" != "no"
2817 FFMPEG_PATH="${with_ffmpeg_config_path}"
2819 AC_PATH_PROG(FFMPEG_CONFIG, ffmpeg-config, no, ${FFMPEG_PATH})
2820 if test "${FFMPEG_CONFIG}" != "no"
2822 AC_CHECK_HEADERS(ffmpeg/avcodec.h, [], [AC_MSG_ERROR([Missing header file ffmpeg/avcodec.h.])] )
2823 AC_CHECK_HEADERS(ffmpeg/avformat.h)
2824 AC_CHECK_HEADERS(ffmpeg/avutil.h)
2825 AC_CHECK_HEADERS(postproc/postprocess.h, [], [AC_MSG_ERROR([Missing header file postproc/postprocess.h.])] )
2826 VLC_ADD_PLUGINS([ffmpeg])
2827 if test "${enable_sout}" != "no" -a "${enable_switcher}" = "yes"; then
2828 VLC_ADD_PLUGINS([stream_out_switcher])
2830 VLC_ADD_CFLAGS([ffmpeg stream_out_switcher],[`${FFMPEG_CONFIG} --cflags`])
2831 VLC_ADD_LDFLAGS([ffmpeg stream_out_switcher],[`${FFMPEG_CONFIG} --plugin-libs avcodec avformat postproc`])
2835 dnl Trying with pkg-config
2836 PKG_CHECK_MODULES(FFMPEG,[libavcodec, libavformat],
2839 CPPFLAGS="${CPPFLAGS} ${FFMPEG_CFLAGS}"
2840 CFLAGS="${CFLAGS} ${FFMPEG_CFLAGS}"
2841 AC_CHECK_HEADERS(ffmpeg/avcodec.h, [], [AC_MSG_ERROR([Missing header file ffmpeg/avcodec.h.])] )
2842 AC_CHECK_HEADERS(ffmpeg/avformat.h)
2843 AC_CHECK_HEADERS(ffmpeg/avutil.h)
2844 dnl newer ffmpeg have a separate libpostproc
2845 PKG_CHECK_MODULES(POSTPROC, libpostproc,[
2846 VLC_ADD_CFLAGS([ffmpeg],[${POSTPROC_CFLAGS}])
2847 VLC_ADD_LDFLAGS([ffmpeg],[${POSTPROC_LIBS}])
2849 CPPFLAGS="${CPPFLAGS} ${POSTPROC_CFLAGS}"
2850 CFLAGS="${CFLAGS} ${POSTPROC_CFLAGS}"
2851 AC_CHECK_HEADERS(postproc/postprocess.h, [], [AC_MSG_ERROR([Missing header file postproc/postprocess.h.])] )
2852 if test "${SYS}" = "darwin"; then
2853 VLC_ADD_BUILTINS([ffmpeg])
2855 VLC_ADD_PLUGINS([ffmpeg])
2857 if test "${enable_sout}" != "no" -a "${enable_switcher}" = "yes"; then
2858 if test "${SYS}" = "darwin"; then
2859 VLC_ADD_BUILTINS([stream_out_switcher])
2861 VLC_ADD_PLUGINS([stream_out_switcher])
2864 VLC_ADD_CFLAGS([ffmpeg stream_out_switcher],[${FFMPEG_CFLAGS}])
2865 VLC_ADD_LDFLAGS([ffmpeg stream_out_switcher],[${FFMPEG_LIBS}])
2866 dnl even newer ffmpeg has a libswscale
2867 PKG_CHECK_MODULES(SWSCALE, libswscale,[
2868 VLC_ADD_CFLAGS([ffmpeg],[${SWSCALE_CFLAGS}])
2869 VLC_ADD_LDFLAGS([ffmpeg],[${SWSCALE_LIBS}])
2870 AC_CHECK_HEADERS(ffmpeg/swscale.h)
2876 dnl last chance: at the default place
2878 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_ffmpeg}"
2879 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_ffmpeg}"
2880 AC_CHECK_HEADERS(ffmpeg/avcodec.h, [], [AC_MSG_ERROR([Missing header file ffmpeg/avcodec.h.])] )
2881 AC_CHECK_HEADERS(ffmpeg/avformat.h)
2882 AC_CHECK_HEADERS(ffmpeg/swscale.h)
2883 AC_CHECK_HEADERS(ffmpeg/avutil.h)
2884 AC_CHECK_HEADERS(postproc/postprocess.h, [], [AC_MSG_ERROR([Missing header file postproc/postprocess.h.])] )
2886 AC_CHECK_LIB(avutil, av_crc_init, [
2887 VLC_ADD_LDFLAGS([ffmpeg],[-lavutil])
2888 LDAVUTIL="-lavutil"])
2890 AC_CHECK_LIB(avcodec, avcodec_init, [
2891 VLC_ADD_BUILTINS([ffmpeg])
2892 VLC_ADD_LDFLAGS([ffmpeg],[-lavcodec])
2893 if test "${enable_sout}" != "no" -a "${enable_switcher}" = "yes"; then
2894 VLC_ADD_BUILTINS([stream_out_switcher])
2896 [ 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])
2899 AC_CHECK_LIB(postproc, pp_postprocess, [
2900 VLC_ADD_LDFLAGS([ffmpeg],[-lpostproc])],
2901 AC_MSG_ERROR([Could not find libpostproc inside FFmpeg. You should configure FFmpeg with --enable-gpl --enable-pp.]),
2904 AC_CHECK_LIB(avformat, av_open_input_stream, [
2905 VLC_ADD_LDFLAGS([ffmpeg],[-lavformat -lz]) ], [], [-lavcodec -lz $LDAVUTIL])
2906 LDFLAGS="${LDFLAGS_save}"
2907 CPPFLAGS="${CPPFLAGS_save}"
2909 AC_CHECK_LIB(swscale, sws_getContext, [
2910 VLC_ADD_LDFLAGS([ffmpeg],[-lswscale]) ], [], [-lavcodec $LDAVUTIL])
2911 LDFLAGS="${LDFLAGS_save}"
2912 CPPFLAGS="${CPPFLAGS_save}"
2919 dnl ffmpegaltivec plugin
2921 AC_ARG_ENABLE(ffmpegaltivec,
2922 [ --enable-ffmpegaltivec ffmpegaltivec codec (DO NOT USE)])
2923 if test "${enable_ffmpegaltivec}" = "yes"
2925 if test "${with_ffmpeg_tree}" != "no" -a -n "${with_ffmpeg_tree}"; then
2926 AC_MSG_CHECKING(for libavcodecaltivec.a in ${with_ffmpeg_tree})
2927 real_ffmpeg_tree="`cd ${with_ffmpeg_tree} 2>/dev/null && pwd`"
2928 if test -z "${real_ffmpeg_tree}"; then
2929 dnl The given directory can't be found
2931 AC_MSG_ERROR([cannot cd to ${with_ffmpeg_tree}])
2933 if ! test -f "${real_ffmpeg_tree}/libavcodec/libavcodecaltivec.a"; then
2934 dnl The given libavcodecaltivec wasn't built
2936 AC_MSG_ERROR([cannot find ${real_ffmpeg_tree}/libavcodec/libavcodecaltivec.a, make sure you compiled libavcodecaltivec in ${with_ffmpeg_tree}])
2938 if ! fgrep -s "pp_get_context" "${real_ffmpeg_tree}/libavcodec/libavcodecaltivec.a"; then
2939 dnl The given libavcodecaltivec wasn't built with --enable-pp
2941 AC_MSG_ERROR([${real_ffmpeg_tree}/libavcodec/libavcodecaltivec.a was not compiled with postprocessing support, make sure you configured ffmpeg with --enable-pp])
2943 dnl Use a custom libffmpeg
2944 AC_MSG_RESULT(${real_ffmpeg_tree}/libavcodec/libavcodecaltivec.a)
2945 VLC_ADD_BUILTINS([ffmpegaltivec])
2946 VLC_ADD_LDFLAGS([ffmpegaltivec],[-L${real_ffmpeg_tree}/libavcodec -lavcodecaltivec])
2947 VLC_ADD_CPPFLAGS([ffmpeg],[-DNO_ALTIVEC_IN_FFMPEG])
2948 VLC_ADD_CPPFLAGS([ffmpegaltivec],[-I${real_ffmpeg_tree}/libavcodec -I${real_ffmpeg_tree}/libavformat])
2950 if test -f "${real_ffmpeg_tree}/libavformat/libavformat.a"; then
2951 AC_DEFINE(HAVE_LIBAVFORMAT_TREE, 1, [Define if you have ffmpeg's libavformat.])
2952 VLC_ADD_LDFLAGS([ffmpegaltivec],[-L${real_ffmpeg_tree}/libavformat -lavformataltivec -lz])
2953 VLC_ADD_CPPFLAGS([ffmpegaltivec],[-I${real_ffmpeg_tree}/libavformat])
2955 VLC_ADD_LDFLAGS([stream_out_switcher],[-L${real_ffmpeg_tree}/libavcodec])
2956 VLC_ADD_CPPFLAGS([stream_out_switcher],[-I${real_ffmpeg_tree}/libavcodec -I${real_ffmpeg_tree}/libavformat])
2961 dnl faad decoder plugin
2964 [ --enable-faad faad codec (default disabled)])
2965 if test "${enable_faad}" = "yes"
2967 AC_ARG_WITH(faad-tree,
2968 [ --with-faad-tree=PATH faad tree for static linking])
2969 if test -n "${with_faad_tree}"
2971 AC_MSG_CHECKING(for libfaad.a in ${with_faad_tree})
2972 real_faad_tree="`cd ${with_faad_tree} 2>/dev/null && pwd`"
2973 if test -z "${real_faad_tree}"
2975 dnl The given directory can't be found
2977 AC_MSG_ERROR([cannot cd to ${with_faad_tree}])
2979 if test -f "${real_faad_tree}/libfaad/.libs/libfaad.a"
2981 dnl Use a custom faad
2982 AC_MSG_RESULT(${real_faad_tree}/libfaad/.libs/libfaad.a)
2983 VLC_ADD_BUILTINS([faad])
2984 VLC_ADD_LDFLAGS([faad],[${real_faad_tree}/libfaad/.libs/libfaad.a])
2985 VLC_ADD_CPPFLAGS([faad],[-I${real_faad_tree}/include])
2987 dnl The given libfaad wasn't built
2989 AC_MSG_ERROR([cannot find ${real_faad_tree}/libfaad/.libs/libfaad.a, make sure you compiled libfaad in ${with_faad_tree}])
2992 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_faad}"
2993 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_faad}"
2994 AC_CHECK_HEADERS(faad.h, ,
2995 [ AC_MSG_ERROR([Cannot find development headers for libfaad...]) ])
2996 AC_CHECK_LIB(faad, faacDecOpen, [
2997 VLC_ADD_PLUGINS([faad])
2998 VLC_ADD_LDFLAGS([faad],[-lfaad]) ],
2999 AC_CHECK_LIB(faad, NeAACDecOpen, [
3000 VLC_ADD_PLUGINS([faad])
3001 VLC_ADD_LDFLAGS([faad],[-lfaad]) ],
3002 [ AC_MSG_ERROR([Cannot find libfaad library...]) ]))
3003 LDFLAGS="${LDFLAGS_save}"
3004 CPPFLAGS="${CPPFLAGS_save}"
3009 dnl twolame encoder plugin
3011 AC_ARG_ENABLE(twolame,
3012 [ --enable-twolame twolame codec (default disabled)])
3013 if test "${enable_twolame}" = "yes"
3015 AC_ARG_WITH(twolame-tree,
3016 [ --with-twolame-tree=PATH twolame tree for static linking])
3017 if test -n "${with_twolame_tree}"
3019 AC_MSG_CHECKING(for libtwolame.a in ${with_twolame_tree})
3020 real_twolame_tree="`cd ${with_twolame_tree} 2>/dev/null && pwd`"
3021 if test -z "${real_twolame_tree}"
3023 dnl The given directory can't be found
3025 AC_MSG_ERROR([cannot cd to ${with_twolame_tree}])
3027 if test -f "${real_twolame_tree}/src/libtwolame/.libs/libtwolame.a"
3029 dnl Use a custom twolame
3030 AC_MSG_RESULT(${real_twolame_tree}/src/libtwolame/.libs/libtwolame.a)
3031 VLC_ADD_BUILTINS([twolame])
3032 VLC_ADD_LDFLAGS([twolame],[${real_twolame_tree}/src/libtwolame/.libs/libtwolame.a])
3033 VLC_ADD_CPPFLAGS([twolame],[-I${real_twolame_tree}/src/libtwolame])
3035 dnl The given libtwolame wasn't built
3037 AC_MSG_ERROR([cannot find ${real_twolame_tree}/src/libtwolame/.libs/libtwolame.a, make sure you compiled libtwolame in ${with_twolame_tree}])
3040 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_twolame}"
3041 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_twolame}"
3042 AC_CHECK_HEADERS(twolame.h, ,
3043 [ AC_MSG_ERROR([Cannot find development header for libtwolame...]) ])
3044 AC_CHECK_LIB(twolame, twolame_init, [
3045 VLC_ADD_PLUGINS([twolame])
3046 VLC_ADD_LDFLAGS([twolame],[-ltwolame]) ],
3047 [ AC_MSG_ERROR([Cannot find libtwolame library...]) ])
3048 LDFLAGS="${LDFLAGS_save}"
3049 CPPFLAGS="${CPPFLAGS_save}"
3054 dnl QuickTime plugin
3056 AC_ARG_ENABLE(quicktime,
3057 [ --enable-quicktime QuickTime module (default enabled on MacOS X)])
3058 if test "${enable_quicktime}" != "no" &&
3059 (test "${SYS}" = "darwin" || test "${enable_quicktime}" = "yes")
3061 if test "${SYS}" = "mingw32"; then
3062 VLC_ADD_BUILTINS([quicktime])
3064 AC_CHECK_HEADERS(QuickTime/QuickTime.h,
3065 [ VLC_ADD_BUILTINS([quicktime])
3066 VLC_ADD_LDFLAGS([quicktime],[-framework QuickTime -framework Carbon])
3067 ], [ AC_MSG_ERROR([cannot find QuickTime headers]) ])
3075 [ --enable-real Real audio module (default disabled)])
3076 if test "${enable_real}" = "yes"; then
3077 VLC_ADD_PLUGINS([realaudio])
3081 dnl Real RTSP plugin
3083 AC_ARG_ENABLE(realrtsp,
3084 [ --enable-realrtsp Real RTSP module (default disabled)])
3085 if test "${enable_realrtsp}" = "yes"; then
3086 VLC_ADD_PLUGINS([access_realrtsp])
3092 AC_CHECK_HEADERS(zlib.h, [
3093 VLC_ADD_LDFLAGS([mp4 skins2 sap mkv gme],[-lz])
3096 AC_CHECK_HEADERS(sysfs/libsysfs.h, [
3097 VLC_ADD_LDFLAGS([mp4 mkv],[-lsysfs])
3103 AC_CHECK_HEADERS(libtar.h, [
3104 VLC_ADD_LDFLAGS([skins2],[-ltar])
3110 dnl A52/AC3 decoder plugin
3113 [ --enable-a52 A/52 support with liba52 (default enabled)])
3114 if test "${enable_a52}" != "no"
3117 [ --with-a52=PATH a52 headers and libraries])
3118 AC_ARG_WITH(a52-tree,
3119 [ --with-a52-tree=PATH a52dec tree for static linking ],[],[])
3120 if test "${with_a52_tree}" != "no" -a -n "${with_a52_tree}"
3122 real_a52_tree="`cd ${with_a52_tree} 2>/dev/null && pwd`"
3123 if test -z "${real_a52_tree}"
3125 dnl The given directory can't be found
3127 AC_MSG_ERROR([${with_a52_tree} directory doesn't exist])
3129 dnl Use a custom a52dec
3130 AC_MSG_CHECKING(for a52.h in ${real_a52_tree}/include)
3131 if test -f ${real_a52_tree}/include/a52.h
3134 VLC_ADD_CPPFLAGS([a52tofloat32],[-I${real_a52_tree}])
3135 VLC_ADD_LDFLAGS([a52tofloat32],[-L${real_a52_tree}/liba52/.libs])
3136 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_a52tofloat32}"
3137 AC_CHECK_LIB(a52, a52_free, [
3138 VLC_ADD_BUILTINS([a52tofloat32])
3139 VLC_ADD_CPPFLAGS([a52tofloat32],[-DUSE_A52DEC_TREE])
3140 VLC_ADD_LDFLAGS([a52tofloat32],[-la52])
3142 if test -f ${real_a52_tree}/liba52/.libs/liba52.a
3144 AC_MSG_ERROR([make sure you have at least a52dec-0.7.3])
3146 AC_MSG_ERROR([the specified tree hasn't been compiled])
3149 LDFLAGS="${LDFLAGS_save}"
3152 AC_MSG_ERROR([the specified tree doesn't have a52.h])
3155 if test -z "${with_a52}"
3160 LDFLAGS_test="-L${with_a52}/lib"
3161 CPPFLAGS_test="-I${with_a52}/include"
3163 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_test} ${CPPFLAGS_a52tofloat32}"
3164 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_test} ${LDFLAGS_a52tofloat32}"
3165 AC_CHECK_HEADERS(a52dec/a52.h, [
3166 AC_CHECK_LIB(a52, a52_free, [
3167 VLC_ADD_PLUGINS([a52tofloat32])
3168 VLC_ADD_LDFLAGS([a52tofloat32],[${LDFLAGS_test} -la52])
3169 VLC_ADD_CPPFLAGS([a52tofloat32],[${CPPFLAGS_test}])
3171 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.])
3174 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.])
3176 CPPFLAGS="${CPPFLAGS_save}"
3177 LDFLAGS="${LDFLAGS_save}"
3181 AC_ARG_WITH(a52-fixed,
3182 [ --with-a52-fixed specify if liba52 has been compiled with fixed point support],
3184 VLC_ADD_CPPFLAGS([a52tofloat32],[-DLIBA52_FIXED]) ])
3187 dnl DTS Coherent Acoustics decoder plugin
3190 [ --enable-dts DTS Coherent Acoustics support with libdca (default enabled)])
3191 if test "${enable_dts}" != "no"; then
3192 AC_ARG_WITH(dts-tree,
3193 [ --with-dts-tree=PATH libdts tree for static linking ],[],[])
3194 if test "${with_dts_tree}" != "no" -a -n "${with_dts_tree}"
3196 real_dts_tree="`cd ${with_dts_tree} 2>/dev/null && pwd`"
3197 if test -z "${real_dts_tree}"
3199 dnl The given directory can't be found
3201 AC_MSG_ERROR([${with_dts_tree} directory doesn't exist])
3203 dnl Use a custom libdts
3204 AC_MSG_CHECKING(for dts.h in ${real_dts_tree}/include)
3205 if test -f ${real_dts_tree}/include/dts.h
3208 VLC_ADD_CPPFLAGS([dtstofloat32],[-I${real_dts_tree}/include])
3209 VLC_ADD_LDFLAGS([dtstofloat32],[-L${real_dts_tree}/libdts])
3210 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_dtstofloat32}"
3211 AC_CHECK_LIB(dts_pic, dts_free, [
3212 VLC_ADD_PLUGINS([dtstofloat32])
3213 VLC_ADD_LDFLAGS([dtstofloat32],[-ldts_pic -lm])
3215 AC_CHECK_LIB(dts, dts_free, [
3216 VLC_ADD_BUILTINS([dtstofloat32])
3217 VLC_ADD_LDFLAGS([dtstofloat32],[-ldts])
3219 if test -f ${real_dts_tree}/libdts/libdts.a
3221 AC_MSG_ERROR([make sure you have at least libdts-0.0.2])
3223 AC_MSG_ERROR([the specified tree hasn't been compiled])
3227 LDFLAGS="${LDFLAGS_save}"
3230 AC_MSG_ERROR([the specified tree doesn't have dts.h])
3233 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_dtstofloat32}"
3234 AC_CHECK_HEADERS(dts.h, [
3235 AC_CHECK_LIB(dts_pic, dts_free, [
3236 VLC_ADD_PLUGINS([dtstofloat32])
3237 VLC_ADD_LDFLAGS([dtstofloat32],[-ldts_pic -lm])
3239 AC_CHECK_LIB(dts, dts_free, [
3240 VLC_ADD_BUILTINS([dtstofloat32])
3241 VLC_ADD_LDFLAGS([dtstofloat32],[-ldts])
3243 if test "${enable_dts}" = "yes"; then
3244 AC_MSG_ERROR([Could not find libdts on your system: you may get it from http://www.videolan.org/dtsdec.html])
3249 LDFLAGS="${LDFLAGS_save}"
3257 [ --enable-flac libflac decoder/encoder support (default disabled)])
3258 if test "${enable_flac}" = "yes"
3260 AC_ARG_WITH(flac-tree,
3261 [ --with-flac-tree=PATH flac tree for static linking])
3262 if test -n "${with_flac_tree}"
3264 AC_MSG_CHECKING(for libFLAC.a in ${with_flac_tree})
3265 real_flac_tree="`cd ${with_flac_tree} 2>/dev/null && pwd`"
3266 if test -z "${real_flac_tree}"
3268 dnl The given directory can't be found
3270 AC_MSG_ERROR([cannot cd to ${with_flac_tree}])
3272 if test -f "${real_flac_tree}/src/libFLAC/.libs/libFLAC.a"
3274 dnl Use a custom flac
3275 AC_MSG_RESULT(${real_flac_tree}/src/libFLAC/.libs/libFLAC.a)
3276 VLC_ADD_LDFLAGS([flac],[${real_flac_tree}/src/libFLAC/.libs/libFLAC.a])
3277 VLC_ADD_CFLAGS([flac],[-I${real_flac_tree}/include])
3278 AC_DEFINE(HAVE_FLAC_STREAM_DECODER_H, 1, [Define if you have FLAC])
3280 dnl The given flac wasn't built
3282 AC_MSG_ERROR([cannot find ${real_flac_tree}/src/libFLAC/.libs/libFLAC.a, make sure you compiled flac in ${with_flac_tree}])
3285 AC_CHECK_HEADERS(FLAC/stream_decoder.h, [
3286 VLC_ADD_LDFLAGS([flac],[-lFLAC])
3294 AC_ARG_ENABLE(libmpeg2,
3295 [ --enable-libmpeg2 libmpeg2 decoder support (default enabled)])
3296 if test "${enable_libmpeg2}" != "no"
3298 AC_ARG_WITH(libmpeg2-tree,
3299 [ --with-libmpeg2-tree=PATH libmpeg2 tree for static linking])
3300 if test -n "${with_libmpeg2_tree}"
3302 AC_MSG_CHECKING(for libmpeg2.a in ${with_libmpeg2_tree})
3303 real_libmpeg2_tree="`cd ${with_libmpeg2_tree} 2>/dev/null && pwd`"
3304 if test -z "${real_libmpeg2_tree}"
3306 dnl The given directory can't be found
3308 AC_MSG_ERROR([cannot cd to ${with_libmpeg2_tree}])
3310 if test -f "${real_libmpeg2_tree}/libmpeg2/.libs/libmpeg2.a"
3312 dnl Use a custom libmpeg2
3313 AC_MSG_RESULT(${real_libmpeg2_tree}/libmpeg2/.libs/libmpeg2.a)
3314 VLC_ADD_BUILTINS([libmpeg2])
3315 VLC_ADD_LDFLAGS([libmpeg2],[-L${real_libmpeg2_tree}/libmpeg2/.libs -lmpeg2])
3316 VLC_ADD_CFLAGS([libmpeg2],[-I${real_libmpeg2_tree}/include])
3317 eval "`cd ${real_libmpeg2_tree}/include && ln -sf . mpeg2dec 2>/dev/null`"
3319 dnl The given libmpeg2 wasn't built
3321 AC_MSG_ERROR([cannot find ${real_libmpeg2_tree}/libmpeg2/.libs/libmpeg2.a, make sure you compiled libmpeg2 in ${with_libmpeg2_tree}])
3324 AC_CHECK_HEADERS(mpeg2dec/mpeg2.h, [
3325 AC_MSG_CHECKING(for libmpeg2 version >= 0.3.2)
3327 [#include <mpeg2dec/mpeg2.h>
3328 #ifdef MPEG2_RELEASE
3329 #if MPEG2_RELEASE >= MPEG2_VERSION(0,3,2)
3333 [AC_MSG_RESULT([yes])
3334 VLC_ADD_PLUGINS([libmpeg2])
3335 VLC_ADD_LDFLAGS([libmpeg2],[-lmpeg2])],
3336 [AC_MSG_RESULT([no])
3337 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.])])],
3339 [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.])]
3347 AC_ARG_ENABLE(vorbis,
3348 [ --enable-vorbis Vorbis decoder support (default enabled)])
3349 if test "${enable_vorbis}" != "no"
3351 AC_ARG_WITH(vorbis-tree,
3352 [ --with-vorbis-tree=PATH vorbis tree for static linking])
3353 if test -n "${with_vorbis_tree}"
3355 AC_MSG_CHECKING(for libvorbis.a in ${with_vorbis_tree})
3356 real_vorbis_tree="`cd ${with_vorbis_tree} 2>/dev/null && pwd`"
3357 if test -z "${real_vorbis_tree}"
3359 dnl The given directory can't be found
3361 AC_MSG_ERROR([cannot cd to ${with_vorbis_tree}])
3363 if test -f "${real_vorbis_tree}/lib/.libs/libvorbis.a"
3365 dnl Use a custom vorbis
3366 AC_MSG_RESULT(${real_vorbis_tree}/lib/.libs/libvorbis.a)
3367 VLC_ADD_PLUGINS([vorbis])
3368 VLC_ADD_LDFLAGS([vorbis],[${real_vorbis_tree}/lib/.libs/libvorbis.a ${real_vorbis_tree}/lib/.libs/libvorbisenc.a])
3369 VLC_ADD_CFLAGS([vorbis],[-I${real_vorbis_tree}/include])
3371 dnl The given vorbis wasn't built
3373 AC_MSG_ERROR([cannot find ${real_vorbis_tree}/lib/.libs/libvorbis.a, make sure you compiled vorbis in ${with_vorbis_tree}])
3376 AC_CHECK_HEADERS(vorbis/codec.h, [
3377 VLC_ADD_PLUGINS([vorbis])
3378 VLC_ADD_LDFLAGS([vorbis],[-lvorbis -logg -lm]) ],[])
3380 AC_CHECK_HEADERS(vorbis/vorbisenc.h, [
3381 VLC_ADD_LDFLAGS([vorbis],[-lvorbisenc -lm]) ],[])
3388 AC_ARG_ENABLE(tremor,
3389 [ --enable-tremor Tremor decoder support (default disabled)])
3390 if test "${enable_tremor}" = "yes"
3392 AC_CHECK_HEADERS(tremor/ivorbiscodec.h, [
3393 VLC_ADD_PLUGINS([tremor])
3394 VLC_ADD_LDFLAGS([tremor],[-lvorbisidec -logg])
3401 AC_ARG_ENABLE(speex,
3402 [ --enable-speex Speex decoder support (default enabled)])
3403 if test "${enable_speex}" != "no"
3405 AC_ARG_WITH(speex-tree,
3406 [ --with-speex-tree=PATH speex tree for static linking])
3407 if test -n "${with_speex_tree}"
3409 AC_MSG_CHECKING(for libspeex.a in ${with_speex_tree})
3410 real_speex_tree="`cd ${with_speex_tree} 2>/dev/null && pwd`"
3411 if test -z "${real_speex_tree}"
3413 dnl The given directory can't be found
3415 AC_MSG_ERROR([cannot cd to ${with_speex_tree}])
3417 if test -f "${real_speex_tree}/libspeex/.libs/libspeex.a"
3419 dnl Use a custom speex
3420 AC_MSG_RESULT(${real_speex_tree}/libspeex/.libs/libspeex.a)
3421 VLC_ADD_PLUGINS([speex])
3422 VLC_ADD_LDFLAGS([speex],[${real_speex_tree}/libspeex/.libs/libspeex.a])
3423 VLC_ADD_CFLAGS([speex],[-I${real_speex_tree}/include])
3425 dnl The given speex wasn't built
3427 AC_MSG_ERROR([cannot find ${real_speex_tree}/libspeex/.libs/libspeex.a, make sure you compiled speex in ${with_speex_tree}])
3430 AC_CHECK_HEADERS(speex/speex.h, [
3431 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_speex}"
3432 AC_CHECK_LIB(speex, speex_decode_int, [
3433 VLC_ADD_PLUGINS([speex])
3434 VLC_ADD_LDFLAGS([speex],[-lspeex]) ],
3435 [ AC_MSG_RESULT([no])
3436 AC_MSG_WARN([Your libspeex is too old, please get the development
3438 LDFLAGS="${LDFLAGS_save}"
3444 dnl tarkin decoder plugin
3446 AC_ARG_ENABLE(tarkin,
3447 [ --enable-tarkin experimental tarkin codec (default disabled)])
3448 if test "${enable_tarkin}" = "yes"
3450 AC_ARG_WITH(tarkin-tree,
3451 [ --with-tarkin-tree=PATH tarkin tree for static linking])
3452 if test -n "${with_tarkin_tree}"
3454 AC_MSG_CHECKING(for tarkin.o in ${with_tarkin_tree})
3455 real_tarkin_tree="`cd ${with_tarkin_tree} 2>/dev/null && pwd`"
3456 if test -f "${real_tarkin_tree}/tarkin.o"
3458 VLC_ADD_BUILTINS([tarkin])
3459 VLC_ADD_CPPFLAGS([tarkin],[-I${real_tarkin_tree}])
3460 VLC_ADD_LDFLAGS([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])
3463 dnl The given tarkin tree wasn't built
3465 AC_MSG_ERROR([cannot find ${real_tarkin_tree}/tarkin.o,
3466 make sure you compiled tarkin in ${with_tarkin_tree}])
3472 dnl theora decoder plugin
3474 AC_ARG_ENABLE(theora,
3475 [ --enable-theora experimental theora codec (default disabled)])
3476 if test "${enable_theora}" = "yes"
3478 AC_CHECK_HEADERS(theora/theora.h, [
3479 AC_CHECK_LIB(theora, theora_granule_time, [
3480 VLC_ADD_PLUGINS([theora])
3481 theora_libs="-ltheora -logg"
3482 VLC_ADD_LDFLAGS([theora],[${theora_libs}]) ],[
3483 AC_MSG_ERROR([libtheora doesn't appear to be installed on your system.
3484 You also need to check that you have a libogg posterior to the 1.0 release.])],
3490 dnl dirac decoder plugin
3492 AC_ARG_ENABLE(dirac,
3493 [ --enable-dirac experimental dirac codec (default disabled)])
3494 if test "${enable_dirac}" = "yes"; then
3495 PKG_CHECK_MODULES(DIRAC,dirac, [
3496 VLC_ADD_PLUGINS([dirac])
3497 VLC_ADD_CFLAGS([dirac],[$DIRAC_CFLAGS])
3498 VLC_ADD_LDFLAGS([dirac],[$DIRAC_LIBS -lstdc++]) ],[
3499 AC_MSG_ERROR([libdirac doesn't appear to be installed on you system.])
3504 dnl PNG decoder module
3507 [ --enable-png PNG support (default enabled)])
3508 if test "${enable_png}" != "no"; then
3509 AC_CHECK_HEADERS(png.h, [
3510 LDFLAGS="${LDFLAGS_save} -lz"
3511 AC_CHECK_LIB(png, png_set_rows, [
3512 VLC_ADD_LDFLAGS([png],[-lpng -lz])
3513 VLC_ADD_PLUGINS([png])
3514 VLC_ADD_PLUGINS([osdmenu])
3515 AC_DEFINE(HAVE_LIBPNG, [], [Define if you have the PNG library: libpng])],
3517 LDFLAGS="${LDFLAGS_save}"
3522 dnl H264 encoder plugin (using libx264)
3525 [ --enable-x264 H264 encoding support with libx264 (default enabled)])
3526 if test "${enable_x264}" != "no"; then
3527 AC_ARG_WITH(x264-tree,
3528 [ --with-x264-tree=PATH x264 tree for static linking ],[],[])
3529 if test "${with_x264_tree}" != "no" -a -n "${with_x264_tree}"
3531 real_x264_tree="`cd ${with_x264_tree} 2>/dev/null && pwd`"
3532 if test -z "${real_x264_tree}"
3534 dnl The given directory can't be found
3536 AC_MSG_ERROR([${with_x264_tree} directory doesn't exist])
3538 dnl Use a custom libx264
3539 AC_MSG_CHECKING(for x264.h in ${real_x264_tree})
3540 if test -f ${real_x264_tree}/x264.h
3543 VLC_ADD_CPPFLAGS([x264],[-I${real_x264_tree}])
3544 VLC_ADD_LDFLAGS([x264],[-L${real_x264_tree}])
3545 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_x264} ${THREAD_LIB}"
3546 AC_CHECK_LIB(x264, x264_encoder_open, [
3547 VLC_ADD_BUILTINS([x264])
3548 VLC_ADD_LDFLAGS([x264],[-lx264])
3550 AC_MSG_ERROR([the specified tree hasn't been compiled])
3552 LDFLAGS="${LDFLAGS_save}"
3555 AC_MSG_ERROR([the specified tree doesn't have x264.h])
3558 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_x264} ${THREAD_LIB}"
3559 AC_CHECK_HEADERS(x264.h, [
3560 AC_CHECK_LIB(x264, x264_encoder_open, [
3561 VLC_ADD_PLUGINS([x264])
3562 VLC_ADD_LDFLAGS([x264],[-lx264])
3564 if test "${enable_x264}" = "yes"; then
3565 AC_MSG_ERROR([Could not find libx264 on your system: you may get it from http://www.videolan.org/x264.html])
3569 LDFLAGS="${LDFLAGS_save}"
3577 [ --enable-cmml CMML support (default enabled)])
3578 if test "${enable_cmml}" != "no"
3580 VLC_ADD_PLUGINS([cmml])
3588 AC_ARG_WITH(,[Video plugins:])
3591 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
3592 CPPFLAGS="${CPPFLAGS_save} ${X_CFLAGS}"
3593 AC_CHECK_HEADERS(X11/extensions/dpms.h, [
3594 AC_MSG_CHECKING(for DPMSInfo in X11/extensions/dpms.h)
3595 AC_EGREP_HEADER(DPMSInfo,X11/extensions/dpms.h,[
3597 AC_DEFINE(DPMSINFO_IN_DPMS_H, 1,
3598 Define if <X11/extensions/dpms.h> defines DPMSInfo.)
3603 #include <X11/Xlib.h>
3605 CPPFLAGS="${CPPFLAGS_save}"
3610 dnl (enabled by default except on win32)
3613 [ --enable-x11 X11 support (default enabled)])
3614 if test "${enable_x11}" != "no" &&
3615 (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
3616 test "${enable_x11}" = "yes"); then
3617 CPPFLAGS="${CPPFLAGS_save} ${X_FLAGS}"
3618 AC_CHECK_HEADERS(X11/Xlib.h, [
3619 VLC_ADD_PLUGINS([x11 panoramix])
3620 VLC_ADD_LDFLAGS([x11 panoramix],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext])
3621 VLC_ADD_CPPFLAGS([x11 panoramix],[${X_CFLAGS}])
3623 CPPFLAGS="${CPPFLAGS_save}"
3628 dnl (enabled by default except on win32)
3630 AC_ARG_ENABLE(xvideo,
3631 [ --enable-xvideo XVideo support (default enabled)])
3632 if test "${enable_xvideo}" != "no" &&
3633 (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
3634 test "${enable_xvideo}" = "yes"); then
3635 CPPFLAGS="${CPPFLAGS_save} ${X_CFLAGS}"
3636 AC_CHECK_HEADERS(X11/extensions/Xv.h, [
3637 CFLAGS="${CFLAGS_save} ${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext"
3638 AC_CHECK_LIB(Xv,XvPutImage,[
3639 # If libXv.so is available, xvideo can be a plugin. Otherwise, we
3640 # test for libXv_pic.
3641 if test -f /usr/X11R6/lib/libXv.so -o -f /usr/lib/libXv.so -o -f "${x_libraries}"/libXv.so; then
3642 VLC_ADD_PLUGINS([xvideo])
3643 VLC_ADD_CPPFLAGS([xvideo],[${X_CFLAGS}])
3644 VLC_ADD_LDFLAGS([xvideo],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext -lXv])
3646 AC_CHECK_LIB(Xv_pic,XvPutImage,[
3647 VLC_ADD_PLUGINS([xvideo])
3648 VLC_ADD_CPPFLAGS([xvideo],[${X_CFLAGS}])
3649 VLC_ADD_LDFLAGS([xvideo],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext -lXv_pic])
3651 VLC_ADD_BUILTINS([xvideo])
3652 VLC_ADD_LDFLAGS([xvideo],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext -lXv])
3653 VLC_ADD_CPPFLAGS([xvideo],[${X_CFLAGS}])
3657 CFLAGS="${CFLAGS_save}"
3659 CPPFLAGS="${CPPFLAGS_save}")
3664 dnl (enabled by default except on win32)
3667 [ --enable-glx X11 OpenGL (GLX) support (default enabled)])
3668 if test "${enable_glx}" != "no" &&
3669 (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
3670 test "${enable_glx}" = "yes"); then
3671 CPPFLAGS="${CPPFLAGS_save} ${X_CFLAGS}"
3672 AC_CHECK_HEADERS(X11/Xlib.h GL/glu.h GL/glx.h, [
3673 VLC_ADD_PLUGINS([glx])
3674 VLC_ADD_LDFLAGS([glx],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext -lGL -lGLU])
3675 VLC_ADD_CPPFLAGS([glx],[${X_CFLAGS}])
3676 ],[AC_MSG_ERROR([Please install GL development package. Alternatively you can also configure with --disable-glx.])])
3677 CPPFLAGS="${CPPFLAGS_save}"
3682 dnl (enabled by default except on win32)
3685 [ --enable-xvmc XVMC support (default disabled)])
3686 if test "${enable_xvmc}" = "yes" &&
3687 (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
3688 test "${enable_xvmc}" = "yes"); then
3689 CPPFLAGS="${CPPFLAGS_save} ${X_FLAGS}"
3690 AC_CHECK_HEADERS(X11/extensions/vldXvMC.h, [
3691 VLC_ADD_PLUGINS([xvmc])
3692 VLC_ADD_LDFLAGS([xvmc],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext])
3693 VLC_ADD_CPPFLAGS([xvmc],[${X_CFLAGS}])
3695 CPPFLAGS="${CPPFLAGS_save}"
3699 dnl Check for the Xinerama extension
3701 AC_ARG_ENABLE(xinerama,
3702 [ --enable-xinerama Xinerama support (default enabled)])
3703 if test "${enable_xvideo}" != "no" && test "${enable_xinerama}" != "no" &&
3704 (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
3705 test "${enable_xvideo}" = "yes"); then
3706 ac_cv_have_xinerama="no"
3707 CPPFLAGS="${CPPFLAGS_save} ${X_CFLAGS}"
3708 CFLAGS="${CFLAGS_save} ${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext"
3709 AC_CHECK_HEADERS(X11/extensions/Xinerama.h,[
3710 AC_CHECK_LIB(Xinerama_pic, XineramaQueryExtension,[
3711 VLC_ADD_LDFLAGS([xvideo],[-lXinerama_pic])
3712 VLC_ADD_LDFLAGS([x11],[-lXinerama_pic])
3713 VLC_ADD_LDFLAGS([glx],[-lXinerama_pic])
3714 ac_cv_have_xinerama="yes"
3716 AC_CHECK_LIB(Xinerama, XineramaQueryExtension,[
3717 VLC_ADD_LDFLAGS([xvideo],[-lXinerama])
3718 VLC_ADD_LDFLAGS([x11],[-lXinerama])
3719 VLC_ADD_LDFLAGS([glx],[-lXinerama])
3720 ac_cv_have_xinerama="yes"
3724 if test "${ac_cv_have_xinerama}" = "yes"; then
3725 AC_DEFINE(HAVE_XINERAMA, 1, [Define this if you have libXinerama installed])
3727 CFLAGS="${CFLAGS_save}"
3728 CPPFLAGS="${CPPFLAGS_save}"
3731 dnl Check for XF86VidMode extension
3733 ac_cv_have_xf86vidmode="no"
3734 CPPFLAGS="${CPPFLAGS_save} ${X_CFLAGS}"
3735 CFLAGS="${CFLAGS_save} ${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext"
3736 AC_CHECK_HEADERS(X11/extensions/xf86vmode.h,[
3737 AC_CHECK_LIB(Xxf86vm_pic, XF86VidModeGetViewPort,[
3738 VLC_ADD_LDFLAGS([xvideo],[-lXxf86vm_pic])
3739 VLC_ADD_LDFLAGS([x11],[-lXxf86vm_pic])
3740 VLC_ADD_LDFLAGS([glx],[-lXxf86vm_pic])
3741 ac_cv_have_xf86vidmode="yes"
3743 AC_CHECK_LIB(Xxf86vm, XF86VidModeGetViewPort,[
3744 VLC_ADD_LDFLAGS([xvideo],[-lXxf86vm])
3745 VLC_ADD_LDFLAGS([x11],[-lXxf86vm])
3746 VLC_ADD_LDFLAGS([glx],[-lXxf86vm])
3747 ac_cv_have_xf86vidmode="yes"
3751 [#ifdef HAVE_X11_XLIB_H
3752 # include <X11/Xlib.h>
3755 AS_IF([test "${ac_cv_have_xf86vidmode}" = "yes"],
3756 [AC_DEFINE(HAVE_XF86VIDMODE, 1, [Define this if you have libXxf86vm installed])
3758 CFLAGS="${CFLAGS_save}"
3759 CPPFLAGS="${CPPFLAGS_save}"
3765 dnl (enabled by default except on beos)
3767 AC_ARG_ENABLE(opengl,
3768 [ --enable-opengl OpenGL support (default enabled)])
3769 if test "${enable_opengl}" != "no" &&
3770 test "${SYS}" != "beos" -a "${SYS}" != "mingwce"; then
3771 if test "${SYS}" != "darwin"; then
3772 AC_CHECK_HEADERS(GL/gl.h GL/glu.h, [
3773 VLC_ADD_PLUGINS([opengl])
3774 if test "${SYS}" != "mingw32"; then
3775 VLC_ADD_LDFLAGS([opengl],[${X_LIBS} -lGL -lGLU])
3777 VLC_ADD_LDFLAGS([opengl],[-lopengl32 -lglu32])
3781 dnl OS X special case (no GL/gl.h but OpenGL/gl.h)
3782 VLC_ADD_PLUGINS([opengl])
3783 VLC_ADD_LDFLAGS([opengl],[-framework OpenGL])
3791 [ --enable-sdl SDL support (default enabled)])
3792 if test "${enable_sdl}" != "no"
3795 AC_ARG_WITH(sdl-config-path,
3796 [ --with-sdl-config-path=PATH sdl-config path (default search in \$PATH)],
3797 [ if test "${with_sdl_config_path}" != "no"
3799 SDL_PATH="${with_sdl_config_path}:${PATH}"
3801 AC_PATH_PROG(SDL12_CONFIG, sdl12-config, no, ${SDL_PATH})
3802 SDL_CONFIG="${SDL12_CONFIG}"
3803 SDL_HEADER="SDL12/SDL.h"
3804 SDL_IMAGE="SDL12/SDL_image.h"
3805 if test "${SDL_CONFIG}" = "no"
3807 AC_PATH_PROG(SDL11_CONFIG, sdl11-config, no, ${SDL_PATH})
3808 SDL_CONFIG=${SDL11_CONFIG}
3809 SDL_HEADER="SDL11/SDL.h"
3810 SDL_IMAGE="SDL11/SDL_image.h"
3812 if test "${SDL_CONFIG}" = "no"
3814 AC_PATH_PROG(SDL_CONFIG, sdl-config, no, ${SDL_PATH})
3815 SDL_HEADER="SDL/SDL.h"
3816 SDL_IMAGE="SDL/SDL_image.h"
3818 # check for cross-compiling
3820 AC_ARG_WITH(sdl-prefix,
3821 [ --with-sdl-prefix=PATH path to libsdl (needed for cross-compiling),
3823 --with-sdl-prefix=/usr/local/arm/2.95.3/arm-linux/usr)],[],[])
3824 if test "${with_sdl_prefix}" != "no" -a -n "${with_sdl_prefix}"
3826 SDL_PREFIX="--prefix=${with_sdl_prefix}"
3828 if test "${SDL_CONFIG}" != "no"
3830 # SDL on Darwin is heavily patched and can only run SDL_image
3831 if test "${SYS}" != "darwin" -a "${SYS}" != "mingw32"; then
3832 VLC_ADD_PLUGINS([vout_sdl aout_sdl])
3834 VLC_ADD_CFLAGS([vout_sdl aout_sdl sdl_image],[`${SDL_CONFIG} ${SDL_PREFIX} --cflags | sed 's,SDL,,'`])
3835 VLC_ADD_LDFLAGS([vout_sdl aout_sdl sdl_image],[`${SDL_CONFIG} ${SDL_PREFIX} --libs | sed 's,-rdynamic,,'`])
3836 CPPFLAGS="${CPPFLAGS_save} ${CFLAGS_vout_sdl}"
3837 AC_CHECK_HEADERS(${SDL_HEADER}, AC_DEFINE_UNQUOTED(SDL_INCLUDE_FILE,
3838 <${SDL_HEADER}>, Indicate whether we should use SDL/SDL.h or SDL11/SDL.h),
3839 [ AC_CHECK_HEADERS(SDL.h, AC_DEFINE(SDL_INCLUDE_FILE, <SDL.h>,
3840 As a last resort we also test for SDL.h presence),
3841 [ AC_MSG_ERROR([The development package for SDL is not installed.
3842 Please install it and try again. Alternatively you can also configure with
3845 AC_CHECK_HEADERS(${SDL_IMAGE}, [AC_DEFINE_UNQUOTED(SDL_IMAGE_INCLUDE_FILE,
3846 <${SDL_IMAGE}>, Indicate the path of SDL_image.h)
3847 VLC_ADD_PLUGINS([sdl_image])
3848 AC_CHECK_LIB(png, png_set_rows,
3849 [VLC_ADD_LDFLAGS([sdl_image],[-lpng -lz])],[],[-lz])
3850 AC_CHECK_LIB(jpeg, jpeg_start_decompress,
3851 [VLC_ADD_LDFLAGS([sdl_image],[-ljpeg])])
3852 AC_CHECK_LIB(tiff, TIFFClientOpen,
3853 [VLC_ADD_LDFLAGS([sdl_image],[-ltiff])])
3854 VLC_ADD_LDFLAGS([sdl_image], [-lSDL_image])],
3855 [ AC_CHECK_HEADERS(SDL_image.h, AC_DEFINE(SDL_IMAGE_INCLUDE_FILE, <SDL_image.h>,
3856 As a last resort we also test for SDL_image.h presence),
3857 [ AC_MSG_WARN([The development package for SDL_image is not installed.
3858 You should install it alongside your SDL package.])
3860 CPPFLAGS="${CPPFLAGS_save}"
3861 if expr 1.1.5 \> `${SDL_CONFIG} --version` >/dev/null
3863 AC_MSG_ERROR([The development package for SDL is not installed.
3864 Please install it and try again. Alternatively you can also configure with
3868 elif test "${enable_sdl}" = "yes"
3870 AC_MSG_ERROR([I couldn't find the SDL package. You can download libSDL
3871 from http://www.libsdl.org/, or configure with --disable-sdl. Have a nice day.
3879 AC_ARG_ENABLE(freetype,
3880 [ --enable-freetype freetype support (default enabled)])
3881 AC_ARG_ENABLE(fribidi,
3882 [ --enable-fribidi fribidi support (default enabled)])
3883 if test "${enable_freetype}" != "no"
3885 FREETYPE_PATH="${PATH}"
3886 AC_ARG_WITH(freetype-config-path,
3887 [ --with-freetype-config-path=PATH freetype-config path (default search in \$PATH)],
3888 [ if test "${with_freetype_config_path}" != "no"
3890 FREETYPE_PATH="${with_freetype_config_path}:${PATH}"
3892 AC_PATH_PROG(FREETYPE_CONFIG, freetype-config, no, ${FREETYPE_PATH})
3894 if test "${FREETYPE_CONFIG}" != "no"
3896 VLC_ADD_PLUGINS([freetype])
3897 VLC_ADD_CFLAGS([freetype],[`${FREETYPE_CONFIG} --cflags`])
3898 VLC_ADD_LDFLAGS([freetype],[`${FREETYPE_CONFIG} --libs`])
3899 AC_CHECK_HEADERS(Carbon/Carbon.h,
3900 [VLC_ADD_LDFLAGS([freetype],[-framework Carbon])])
3901 elif test "${enable_freetype}" = "yes"
3903 AC_MSG_ERROR([I couldn't find the freetype package. You can download libfreetype2
3904 from http://www.freetype.org/, or configure with --disable-freetype. Have a nice day.
3909 if test "${enable_fribidi}" != "no"
3911 FRIBIDI_PATH="${PATH}"
3912 AC_ARG_WITH(fribidi-config-path,
3913 [ --with-fribidi-config-path=PATH fribidi-config path (default search in \$PATH)],
3914 [ if test "${with_fribidi_config_path}" != "no"
3916 FRIBIDI_PATH="${with_fribidi_config_path}:${PATH}"
3918 AC_PATH_PROG(FRIBIDI_CONFIG, fribidi-config, no, ${FRIBIDI_PATH})
3920 if test "${FRIBIDI_CONFIG}" != "no"
3922 VLC_ADD_CFLAGS([freetype], [`${FRIBIDI_CONFIG} --cflags` -DHAVE_FRIBIDI])
3923 VLC_ADD_CPPFLAGS([skins2], [`${FRIBIDI_CONFIG} --cflags` -DHAVE_FRIBIDI])
3924 VLC_ADD_LDFLAGS([freetype], [`${FRIBIDI_CONFIG} --libs`])
3925 VLC_ADD_LDFLAGS([skins2], [`${FRIBIDI_CONFIG} --libs`])
3933 AC_ARG_ENABLE(libxml2,
3934 [ --enable-libxml2 libxml2 support (default enabled)])
3935 if test "${enable_libxml2}" != "no"
3938 AC_ARG_WITH(xml2-config-path,
3939 [ --with-xml2-config-path=PATH xml2-config path (default search in \$PATH)],
3940 [ if test "${with_xml2_config_path}" != "no"; then
3941 XML2_PATH="${with_xml2_config_path}:${PATH}"
3943 AC_PATH_PROG(XML2_CONFIG, xml2-config, no, ${XML2_PATH})
3944 if test "${XML2_CONFIG}" != "no"; then
3945 VLC_ADD_CPPFLAGS([xml],[`${XML2_CONFIG} --cflags`])
3946 VLC_ADD_LDFLAGS([xml],[`${XML2_CONFIG} --libs`])
3947 dnl depends on the xmlTextReader extension
3948 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_xml}"
3949 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_xml}"
3950 AC_CHECK_LIB(xml2,xmlTextReaderConstName,[
3951 AC_EGREP_HEADER(xmlTextReaderConstName,libxml/xmlreader.h,[
3952 VLC_ADD_PLUGINS([xml]) ],[
3953 AC_MSG_WARN([libxml2 missing the xmlTextReader extension, you should update your version])
3954 if test "${enable_xml2}" = "yes"; then
3955 AC_MSG_ERROR([libxml2 missing the xmlTextReader extension])
3958 AC_MSG_WARN([libxml2 missing the xmlTextReader extension, you should update your version])
3959 if test "${enable_xml2}" = "yes"; then
3960 AC_MSG_ERROR([libxml2 missing the xmlTextReader extension])
3962 LDFLAGS="${LDFLAGS_save}"
3963 CPPFLAGS="${CPPFLAGS_save}"
3965 if test "${enable_xml2}" = "yes"; then
3966 AC_MSG_ERROR([Could not find libxml2])
3975 [ --enable-svg SVG support (default disabled)])
3976 if test "${enable_svg}" = "yes"
3978 PKG_CHECK_MODULES(SVG,
3979 librsvg-2.0 >= 2.9.0,
3981 VLC_ADD_LDFLAGS([svg],[$SVG_LIBS])
3982 VLC_ADD_CFLAGS([svg],[$SVG_CFLAGS])
3983 VLC_ADD_PLUGINS([svg]) ],
3984 [AC_MSG_WARN(SVG library not found)])
3988 dnl Snapshot vout module (with cache)
3990 AC_ARG_ENABLE(snapshot,
3991 [ --enable-snapshot snapshot module (default disabled)])
3992 if test "${enable_snapshot}" = "yes"
3994 VLC_ADD_PLUGINS([snapshot])
3998 dnl Qt Embedded module
3999 dnl (disabled by default)
4002 [ --enable-qte QT Embedded support (default disabled)])
4003 if test "${enable_qte}" = "yes"
4006 [ --with-qte=PATH Qt Embedded headers and libraries])
4007 if test "${with_qte}" != "no" -a -n "${with_qte}"
4009 VLC_ADD_LDFLAGS([qte],[-L${with_qte}/lib `echo -L${with_qte}/lib | sed 's,opt/QtPalmtop,usr,'` -ljpeg -lqte])
4010 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])
4012 VLC_ADD_LDFLAGS([qte],[-L${QTDIR}/lib `echo -L${QTDIR}/lib | sed 's,opt/QtPalmtop,usr,'` -ljpeg -lqte])
4013 VLC_ADD_CXXFLAGS([qte],[-I${QTDIR}/include `echo -I${QTDIR}/include | sed 's,opt/QtPalmtop,usr,'` -DQT_QWS_IPAQ -DQWS -fno-exceptions -fno-rtti])
4015 VLC_ADD_PLUGINS([qte])
4017 CPPFLAGS="${CPPFLAGS_save} ${CXXFLAGS_qte}"
4018 AC_CHECK_HEADERS(qt.h jpeglib.h, ,[
4019 AC_MSG_ERROR([echo "Cannot find QT Embedded development headers."])
4021 CPPFLAGS="${CPPFLAGS_save}"
4025 dnl Qt Video output module
4026 dnl (disabled by default)
4028 dnl AC_ARG_ENABLE(qt_video,
4029 dnl [ --enable-qt_video QT Video Output support (default disabled)])
4030 dnl if test "${enable_qt_video}" = "yes"
4032 dnl VLC_ADD_PLUGINS([qt_video])
4033 dnl VLC_ADD_LDFLAGS([qt_video],[-L${QTDIR}/lib])
4034 dnl LDFLAGS="${LDFLAGS_save} ${LDFLAGS_qt_video}"
4035 dnl AC_CHECK_LIB(qt-mt,main,[
4036 dnl VLC_ADD_LDFLAGS([qt_video],[-lqt-mt])
4038 dnl AC_CHECK_LIB(qt,main,[
4039 dnl VLC_ADD_LDFLAGS([qt_video],[-lqt])
4042 dnl NEED_QTE_MAIN=yes
4043 dnl LDFLAGS="${LDFLAGS_save}"
4044 dnl VLC_ADD_CXXFLAGS([qt_video],[-I/usr/include/qt3 -I/usr/include/qt -I${QTDIR}/include])
4048 dnl Roku HD1000 Video output module
4050 AC_ARG_ENABLE(hd1000v,
4051 [ --enable-hd1000v HD1000 Video Output module (default enabled on HD1000)])
4052 if test "${enable_hd1000v}" != "no" -a "${CXX}" != "" &&
4053 (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
4054 test "${enable_hd1000v}" = "yes"); then
4056 AC_CHECK_HEADERS([cascade/graphics/CascadeScreen.h cascade/graphics/CascadeBitmap.h],
4058 can_build_roku="yes"
4062 AC_MSG_WARN([Not building Roku HD1000 compatible video output])
4064 if test "$can_build_roku" = "yes"
4066 VLC_ADD_PLUGINS([hd1000v])
4067 VLC_ADD_LDFLAGS([hd1000v],[-lCascade -ldvbpsi -lmad])
4073 dnl Windows DirectX module
4076 if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce" -o "${SYS}" = "cygwin"
4078 VLC_ADD_PLUGINS([panoramix])
4081 AC_ARG_ENABLE(directx,
4082 [ --enable-directx Win32 DirectX support (default enabled on Win32)])
4083 if test "${enable_directx}" != "no"
4085 if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce" -o "${SYS}" = "cygwin"
4087 AC_ARG_WITH(directx,
4088 [ --with-directx=PATH Win32 DirectX headers])
4089 if test -z "${with_directx}"
4091 AC_CHECK_HEADERS(ddraw.h,
4092 [ VLC_ADD_PLUGINS([vout_directx aout_directx])
4093 VLC_ADD_LDFLAGS([vout_directx],[-lgdi32])
4095 AC_CHECK_HEADERS(GL/gl.h,
4096 [ VLC_ADD_PLUGINS([glwin32])
4097 VLC_ADD_LDFLAGS([glwin32],[-lopengl32 -lgdi32])
4099 AC_CHECK_HEADERS(d3d9.h,
4100 [ VLC_ADD_PLUGINS([direct3d])
4101 VLC_ADD_LDFLAGS([direct3d],[-ld3d9 -lgdi32])
4104 AC_MSG_CHECKING(for directX headers in ${with_directx})
4105 if test -f ${with_directx}/ddraw.h
4107 VLC_ADD_PLUGINS([vout_directx aout_directx])
4108 VLC_ADD_CPPFLAGS([vout_directx aout_directx],[-I${with_directx}])
4109 VLC_ADD_LDFLAGS([vout_directx],[-lgdi32])
4113 AC_MSG_ERROR([Cannot find ${with_directx}/ddraw.h!])
4120 dnl Linux framebuffer module
4123 [ --enable-fb Linux framebuffer support (default enabled on Linux)])
4124 if test "${enable_fb}" != "no"
4126 AC_CHECK_HEADERS(linux/fb.h, [
4127 VLC_ADD_PLUGINS([fb])
4132 dnl Linux MGA module
4135 [ --enable-mga Linux kernel Matrox support (default disabled)],
4136 [ if test "${enable_mga}" = "yes"
4138 VLC_ADD_PLUGINS([mga])
4144 AC_ARG_ENABLE(svgalib,
4145 [ --enable-svgalib SVGAlib support (default disabled)])
4146 if test "${enable_svgalib}" = "yes"
4148 VLC_ADD_PLUGINS([svgalib])
4149 VLC_ADD_LDFLAGS([svgalib],[-lvgagl -lvga])
4155 AC_ARG_ENABLE(directfb,
4156 [ --enable-directfb DirectFB support (default disabled)])
4157 if test "${enable_directfb}" = "yes"
4159 if test "${with_directfb}" = "no"
4161 AC_CHECK_HEADER(directfb.h, have_directfb="true", have_directfb="false")
4162 if test "${have_directfb}"= "true"
4164 VLC_ADD_PLUGINS([directfb])
4165 VLC_ADD_LDFLAGS([directfb],[-ldirectfb -lfusion -ldirect -lpthread -ljpeg -lz -ldl])
4166 VLC_ADD_CPPFLAGS([directfb],[-I/usr/include/directfb -D_REENTRANT])
4168 AC_MSG_ERROR([cannot find /usr/include/directfb headers, make sure directfb is installed on your system or use --disable-directfb])
4171 CPPFLAGS_save="${CPPFLAGS}"
4172 CPPFLAGS="${CPPFLAGS} -I${with_directfb}/include"
4173 AC_CHECK_HEADER(directfb.h, have_directfb="true", have_directfb="false")
4174 CPPFLAGS="${CPPFLAGS_save}"
4175 AC_ARG_WITH(directfb,
4176 [ --with-directfb=PATH path to directfb],
4177 [ if test "${with_directfb}" != "no" -a -n "${with_directfb}"
4179 VLC_ADD_PLUGINS([directfb])
4180 VLC_ADD_CPPFLAGS([directfb],[-I${with_directfb}/include -D_REENTRANT])
4181 VLC_ADD_LDFLAGS([directfb],[-L${with_directfb}/lib -ldirectfb -lfusion -ldirect -lpthread -ljpeg -lz -ldl])
4183 [ AC_MSG_ERROR([cannot find directfb headers in ${with_directfb}/include]) ])
4191 [ --enable-ggi GGI support (default disabled)])
4192 if test "${enable_ggi}" = "yes"
4194 VLC_ADD_PLUGINS([ggi])
4195 VLC_ADD_LDFLAGS([ggi],[-lggi])
4197 [ --with-ggi=PATH path to libggi],
4198 [ if test "${with_ggi}" != "no" -a -n "${with_ggi}"
4200 VLC_ADD_CPPFLAGS([ggi],[-I${with_ggi}/include])
4201 VLC_ADD_LDFLAGS([ggi],[-L${with_ggi}/lib])
4208 AC_ARG_ENABLE(glide,
4209 [ --enable-glide Glide (3dfx) support (default disabled)])
4210 if test "${enable_glide}" = "yes"
4212 CFLAGS_save="${CFLAGS}"
4214 [ --with-glide=PATH path to libglide],
4215 [ if test "${with_glide}" != "no" -a -n "${with_glide}"
4217 VLC_ADD_CPPFLAGS([glide],[-I${with_glide}/include])
4218 VLC_ADD_LDFLAGS([glide],[-L${with_glide}/lib])
4219 CFLAGS="$CFLAGS -I${with_glide}/include"
4221 CFLAGS="$CFLAGS -I/usr/include/glide"
4222 AC_CHECK_HEADER(glide.h,[
4223 VLC_ADD_PLUGINS([glide])
4224 VLC_ADD_LDFLAGS([glide],[-lglide2x -lm])
4225 VLC_ADD_CPPFLAGS([glide],[-I/usr/include/glide])
4227 AC_MSG_ERROR([You don't have libglide. Install it or do not use --enable-glide])
4229 CFLAGS="${CFLAGS_save}"
4236 [ --enable-aa aalib output (default disabled)])
4237 if test "${enable_aa}" = "yes"
4239 AC_CHECK_HEADER(aalib.h,have_aa="true",have_aa="false")
4240 if test "${have_aa}" = "true"
4242 VLC_ADD_PLUGINS([aa])
4243 VLC_ADD_LDFLAGS([aa],[-laa])
4251 [ --enable-caca libcaca output (default disabled)])
4252 if test "${enable_caca}" = "yes"
4255 AC_ARG_WITH(caca-config-path,
4256 [ --with-caca-config-path=PATH caca-config path (default search in \$PATH)],
4257 [ if test "${with_caca_config_path}" != "no"
4259 CACA_PATH="${with_caca_config_path}:${PATH}"
4261 AC_PATH_PROG(CACA_CONFIG, caca-config, no, ${CACA_PATH})
4262 if test "${CACA_CONFIG}" != "no"
4264 VLC_ADD_PLUGINS([caca])
4265 VLC_ADD_CFLAGS([caca],[`${CACA_CONFIG} --cflags`])
4266 VLC_ADD_LDFLAGS([caca],[`${CACA_CONFIG} --plugin-libs`])
4271 dnl win32 GDI plugin
4273 AC_ARG_ENABLE(wingdi,
4274 [ --enable-wingdi Win32 GDI module (default enabled on Win32)])
4275 if test "${enable_wingdi}" != "no"; then
4276 if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"; then
4277 VLC_ADD_PLUGINS([wingdi])
4278 VLC_ADD_LDFLAGS([wingdi],[-lgdi32])
4280 if test "${SYS}" = "mingwce"; then
4281 VLC_ADD_PLUGINS([wingdi wingapi])
4289 AC_ARG_WITH(,[Audio plugins:])
4292 dnl OSS /dev/dsp module (enabled by default except on win32)
4295 [ --enable-oss Linux OSS /dev/dsp support (enabled on Linux)])
4297 if test "${enable_oss}" != "no" &&
4298 (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
4299 test "${enable_oss}" = "yes")
4301 AC_CHECK_HEADERS(soundcard.h sys/soundcard.h machine/soundcard.h, [
4302 VLC_ADD_PLUGINS([oss])
4303 AC_CHECK_LIB(ossaudio,main,VLC_ADD_LDFLAGS([oss],[-lossaudio]))
4311 [ --enable-esd Esound library support (default disabled)],
4312 [if test "${enable_esd}" = "yes"
4314 AC_PATH_PROG(ESD_CONFIG, esd-config, no)
4315 if test "${ESD_CONFIG}" != "no"
4317 VLC_ADD_PLUGINS([esd])
4318 VLC_ADD_CFLAGS([esd],[`${ESD_CONFIG} --cflags`])
4319 VLC_ADD_LDFLAGS([esd],[`${ESD_CONFIG} --libs`])
4324 dnl Portaudio module
4326 AC_ARG_ENABLE(portaudio,
4327 [ --enable-portaudio Portaudio library support (default disabled)],
4328 [if test "${enable_portaudio}" = "yes"
4330 VLC_ADD_PLUGINS([portaudio])
4331 VLC_ADD_CXXFLAGS([portaudio],[])
4332 if test "${SYS}" = "mingw32"; then
4333 VLC_ADD_LDFLAGS([portaudio],[-lportaudio -lwinmm -lole32])
4335 VLC_ADD_LDFLAGS([portaudio],[-lportaudio])
4340 dnl aRts module -- broken (freeze wxWidgets)
4343 [ --enable-arts aRts sound server (default disabled)],
4344 [if test "${enable_arts}" = "yes"
4346 AC_PATH_PROG(ARTS_CONFIG, artsc-config, no)
4347 if test "${ARTS_CONFIG}" != "no"
4349 VLC_ADD_PLUGINS([arts])
4350 VLC_ADD_CFLAGS([arts],[`${ARTS_CONFIG} --cflags`])
4351 VLC_ADD_LDFLAGS([arts],[`${ARTS_CONFIG} --libs `])
4359 [ --enable-alsa ALSA sound support for Linux (default enabled)])
4360 if test "${enable_alsa}" != "no"
4362 AC_CHECK_HEADER(alsa/asoundlib.h, AC_CHECK_LIB(asound, main, have_alsa="true", have_alsa="false"),have_alsa="false")
4363 if test "${have_alsa}" = "true"
4365 CFLAGS="${CFLAGS_save}"
4366 AC_TRY_COMPILE([#define ALSA_PCM_NEW_HW_PARAMS_API
4367 #define ALSA_PCM_NEW_SW_PARAMS_API
4368 #include <alsa/asoundlib.h>],
4369 [snd_pcm_hw_params_get_period_time(0,0,0);],
4370 AC_DEFINE(HAVE_ALSA_NEW_API, 1, Define if ALSA is at least rc4))
4371 VLC_ADD_PLUGINS([alsa])
4372 VLC_ADD_LDFLAGS([alsa],[-lasound -lm -ldl])
4374 if test "${enable_alsa}" = "yes"; then
4375 AC_MSG_ERROR([Could not find ALSA development headers])
4381 dnl win32 waveOut plugin
4383 AC_ARG_ENABLE(waveout,
4384 [ --enable-waveout Win32 waveOut module (default enabled on Win32)])
4385 if test "${enable_waveout}" != "no"; then
4386 if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"; then
4387 VLC_ADD_PLUGINS([waveout])
4388 VLC_ADD_LDFLAGS([waveout],[-lwinmm])
4390 if test "${SYS}" = "mingwce"; then
4391 VLC_ADD_PLUGINS([waveout])
4396 dnl CoreAudio plugin
4398 AC_ARG_ENABLE(macosx-audio,
4399 [ --enable-macosx-audio Mac OS X audio module (default enabled on MacOS X)])
4400 if test "${enable_macosx-audio}" != "no" &&
4401 (test "${SYS}" = "darwin" || test "${enable_macosx-audio}" = "yes")
4403 AC_CHECK_HEADERS(CoreAudio/CoreAudio.h,
4404 [ VLC_ADD_BUILTINS([auhal])
4405 VLC_ADD_LDFLAGS([auhal],[-framework CoreAudio -framework AudioUnit -framework AudioToolbox])
4406 ], [ AC_MSG_ERROR([cannot find CoreAudio headers]) ])
4410 dnl Roku HD1000 audio
4412 AC_ARG_ENABLE(hd1000a,
4413 [ --enable-hd1000a HD1000 audio module (default enabled on HD1000)])
4414 if test "${enable_hd1000a}" != "no" -a "${CXX}" != "" &&
4415 (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
4416 test "${enable_hd1000a}" = "yes")
4419 AC_CHECK_HEADERS(deschutes/libraries/hdmachinex225/PCMAudioPlayer.h, [
4420 VLC_ADD_PLUGINS([hd1000a])
4421 AC_CHECK_LIB(HDMachineX225,main,VLC_ADD_LDFLAGS([hd1000a],[-lHDMachineX225])) ])
4429 [ --enable-jack JACK audio module (default disabled)],
4430 [if test "${enable_jack}" = "yes"
4432 AC_CHECK_HEADERS(jack/jack.h, [
4433 VLC_ADD_PLUGINS([jack])
4434 VLC_ADD_LDFLAGS([jack],[-ljack]) ])
4438 dnl CyberLink for C++ UPnP stack
4440 AC_ARG_ENABLE(cyberlink,
4441 [ --enable-cyberlink CyberLink for C++ UPnP stack (default disabled)])
4442 AS_IF([test "${enable_cyberlink}" = "yes" ], [
4443 AC_ARG_WITH(cyberlink-tree,
4444 [ --with-cyberlink-tree=PATH CyberLink for C++ tree for static linking])
4447 dnl test for --with-cyberlink-tree
4449 AS_IF([test ! -z "${with_cyberlink_tree}" -a "${CXX}" != ""], [
4451 real_cyberlink_tree="`cd ${with_cyberlink_tree} 2>/dev/null && pwd`"