1 dnl Autoconf settings for vlc
3 AC_COPYRIGHT([Copyright 2002-2010 the VideoLAN team])
5 AC_INIT(vlc, 1.2.0-git)
13 CONFIGURE_LINE="`echo "$0 $ac_configure_args" | sed -e 's/\\\/\\\\\\\/g'`"
15 COPYRIGHT_YEARS="1996-2010"
17 AC_CONFIG_SRCDIR(src/libvlc.c)
18 AC_CONFIG_AUX_DIR(autotools)
19 AC_CONFIG_MACRO_DIR(m4)
20 AC_CONFIG_LIBOBJ_DIR(compat)
23 AC_PRESERVE_HELP_ORDER
25 AM_INIT_AUTOMAKE(tar-ustar color-tests)
26 AM_CONFIG_HEADER(config.h)
28 # Disable with "./configure --disable-silent-rules" or "make V=1"
29 AM_SILENT_RULES([yes])
31 dnl Too many people are not aware of maintainer mode:
32 dnl If you want to use it, you definitely know what you are doing, so
33 dnl you can specify "--disable-maintainer-mode". But if you want the default
34 dnl automake behavior, you've likely never heard of maintainer mode, so we
35 dnl can't expect you to enable it manually.
36 AS_IF([test "x${enable_maintainer_mode}" != "xno"],
37 [enable_maintainer_mode="yes"])
43 dnl vlcincludedir="\${includedir}/\${PKGDIR}"
44 dnl AC_SUBST(vlcincludedir)
45 vlcdatadir="\${datadir}/\${PKGDIR}"
47 vlclibdir="\${libdir}/\${PKGDIR}"
59 AC_USE_SYSTEM_EXTENSIONS
60 AC_DEFINE([_FORTIFY_SOURCE], 2, [Define to '2' to get glibc warnings.])
66 _AM_DEPENDENCIES([OBJC])
72 dnl Find the right ranlib, even when cross-compiling
73 AC_CHECK_TOOL(RANLIB, ranlib, :)
74 AC_CHECK_TOOL(STRIP, strip, :)
75 AC_CHECK_TOOL(AR, ar, :)
76 AC_CHECK_TOOL(LD, ld, :)
77 AC_CHECK_TOOL(DLLTOOL, dlltool, :)
79 dnl Check for compiler properties
84 dnl Extend the --help string at the current spot.
85 AC_DEFUN([EXTEND_HELP_STRING], [m4_divert_once([HELP_ENABLE], [$1])])
87 dnl Allow binary package maintainer to pass a custom string to avoid
89 AC_ARG_WITH(binary-version,
90 AS_HELP_STRING([--with-binary-version=STRING],
91 [To avoid plugins cache problem between binary version]),[],[])
92 AS_IF([test -n "${with_binary_version}"],[
93 AC_DEFINE_UNQUOTED([DISTRO_VERSION],["${with_binary_version}"],
94 [Binary specific version])
99 dnl Check for the contrib directory
102 [ --without-contrib do not use the libraries in CONTRIB_DIR],[],[])
103 AC_ARG_VAR([CONTRIB_DIR], [directory containing pre-built contrib, overriding extras/contrib])
104 AS_IF([test "${with_contrib}" != "no"],[
105 AS_IF([test -z "$CONTRIB_DIR"], [
106 topdir="`dirname $0`"
107 if test "`echo \"$topdir\" | cut -c 1`" != "/"; then
108 topdir="`pwd`/$topdir"
110 CONTRIB_DIR="${topdir}/extras/contrib/hosts/${host}"
111 if ! test -d "$CONTRIB_DIR"
113 gccmachine=`$CC -dumpmachine`
114 CONTRIB_DIR="${topdir}/extras/contrib/hosts/${gccmachine}"
117 AC_MSG_CHECKING([for libs in ${CONTRIB_DIR}])
118 AS_IF([test -d "${CONTRIB_DIR}/lib"],[
120 AC_SUBST(CONTRIB_DIR)
121 export PATH=${CONTRIB_DIR}/bin:$PATH
122 CPPFLAGS="${CPPFLAGS} -I${CONTRIB_DIR}/include"
123 CPPFLAGS_save="${CPPFLAGS_save} -I${CONTRIB_DIR}/include"
124 CFLAGS="${CFLAGS} -I${CONTRIB_DIR}/include"
125 CFLAGS_save="${CFLAGS_save} -I${CONTRIB_DIR}/include"
126 CXXFLAGS="${CXXFLAGS} -I${CONTRIB_DIR}/include"
127 CXXFLAGS_save="${CXXFLAGS_save} -I${CONTRIB_DIR}/include"
128 OBJCFLAGS="${OBJCFLAGS} -I${CONTRIB_DIR}/include"
129 OBJCFLAGS_save="${OBJCFLAGS_save} -I${CONTRIB_DIR}/include"
130 if test "$build" = "$host" -o "$PKG_CONFIG_LIBDIR"; then
131 export PKG_CONFIG_PATH="${CONTRIB_DIR}/lib/pkgconfig:$PKG_CONFIG_PATH"
133 export PKG_CONFIG_LIBDIR="${CONTRIB_DIR}/lib/pkgconfig"
135 LDFLAGS="${LDFLAGS} -L${CONTRIB_DIR}/lib"
136 LDFLAGS_save="${LDFLAGS_save} -L${CONTRIB_DIR}/lib"
138 if test -z "$with_mozilla_sdk_path"; then
139 with_mozilla_sdk_path="${CONTRIB_DIR}/gecko-sdk"
142 if test "${SYS}" = "darwin"; then
143 export LD_LIBRARY_PATH="${CONTRIB_DIR}/lib:$LD_LIBRARY_PATH"
144 export DYLD_LIBRARY_PATH="${CONTRIB_DIR}/lib:$DYLD_LIBRARY_PATH"
145 elif test "${SYS}" = "beos"; then
146 export LIBRARY_PATH="${CONTRIB_DIR}/lib:$LIBRARY_PATH"
147 export BELIBRARIES="${CONTRIB_DIR}/lib:$BELIBRARIES"
156 dnl Set default values
158 LDFLAGS_vlc="${LDFLAGS}"
161 dnl Check the operating system
172 CFLAGS_save="${CFLAGS_save} -pthread"; CFLAGS="${CFLAGS_save}"
173 VLC_ADD_LIBS([vcd cdda vcdx],[-ldvd])
177 CFLAGS_save="${CFLAGS_save} -pthread"; CFLAGS="${CFLAGS_save}"
180 CPPFLAGS_save="${CPPFLAGS_save} -I/usr/local/include"
181 CPPFLAGS="${CPPFLAGS_save}"
182 LDFLAGS_save="${LDFLAGS_save} -L/usr/local/lib"
183 LDFLAGS="${LDFLAGS_save}"
186 CPPFLAGS_save="${CPPFLAGS_save} -I/usr/local/include -I/usr/X11R6/include"
187 CPPFLAGS="${CPPFLAGS_save}"
188 LDFLAGS_save="${LDFLAGS_save} -L/usr/local/lib -L/usr/X11R6/lib/"
189 LDFLAGS="${LDFLAGS_save}"
195 dnl Force gcc "-arch" flag
199 ARCH_flag="-arch i386"
202 ARCH_flag="-arch ppc64"
205 ARCH_flag="-arch ppc"
208 ARCH_flag="-arch x86_64"
213 CFLAGS_save="${CFLAGS_save} -D_INTL_REDIRECT_MACROS ${ARCH_flag}"; CFLAGS="${CFLAGS_save}"
214 CXXFLAGS_save="${CXXFLAGS_save} -D_INTL_REDIRECT_MACROS ${ARCH_flag}"; CXXFLAGS="${CXXFLAGS_save}"
215 CPPFLAGS_save="${CPPFLAGS_save} ${ARCH_flag}"; CPPFLAGS="${CPPFLAGS_save}"
216 OBJCFLAGS_save="${OBJCFLAGS_save} -D_INTL_REDIRECT_MACROS -std=gnu99 ${ARCH_flag}"; OBJCFLAGS="${OBJCFLAGS_save}"
217 LDFLAGS_save="${LDFLAGS_save} -Wl,-headerpad_max_install_names ${ARCH_flag}"; LDFLAGS="${LDFLAGS_save}"
218 VLC_ADD_LDFLAGS([mkv mp4 motion], [-Wl,-framework,IOKit,-framework,CoreFoundation])
219 VLC_ADD_LDFLAGS([libvlc vlc],[-Wl,-undefined,dynamic_lookup])
220 VLC_ADD_LDFLAGS([avcodec avformat access_avio swscale postproc i420_rgb_mmx x264],[-Wl,-read_only_relocs,suppress])
221 VLC_ADD_CFLAGS([motion],[-fconstant-cfstrings])
222 VLC_ADD_LDFLAGS([libvlccore],[-Wl,-framework,CoreFoundation])
223 AC_ARG_ENABLE(macosx-defaults,
224 AS_HELP_STRING([--enable-macosx-defaults],[Build the default configuration on Mac OS X (default enabled)]))
225 if test "x${enable_macosx_defaults}" != "xno"
228 echo "Building with Mac OS X defaults:"
229 with_macosx_version_min="10.5"
230 echo " Assuming --with-macosx-version-min=10.5"
231 with_macosx_sdk="/Developer/SDKs/MacOSX${with_macosx_version_min}.sdk"
232 echo " Assuming --with-macosx-sdk=/Developer/SDKs/MacOSX${with_macosx_version_min}.sdk"
234 echo " Assuming --prefix=${build_dir}/vlc_install_dir"
235 ac_default_prefix="${build_dir}/vlc_install_dir"
237 echo " Assuming --enable-faad"
239 echo " Assuming --enable-flac"
241 echo " Assuming --enable-theora"
243 echo " Assuming --enable-shout"
245 echo " Assuming --enable-vcdx"
247 echo " Assuming --enable-caca"
249 echo " Assuming --enable-ncurses"
251 echo " Assuming --enable-twolame"
252 enable_realrtsp="yes"
253 echo " Assuming --enable-realrtsp"
255 echo " Assuming --enable-libass"
258 echo " Assuming --disable-skins2"
260 echo " Assuming --disable-xcb"
263 dnl Check for Mac OS X SDK settings
265 AC_ARG_WITH(macosx-sdk,
266 [ --with-macosx-sdk=DIR compile using the SDK in DIR])
267 if test "${with_macosx_sdk}" != "" ; then
268 CPP="${CPP} -isysroot ${with_macosx_sdk}"
269 CC="${CC} -isysroot ${with_macosx_sdk}"
270 CXX="${CXX} -isysroot ${with_macosx_sdk}"
271 OBJC="${OBJC} -isysroot ${with_macosx_sdk}"
272 LD="${LD} -syslibroot ${with_macosx_sdk}"
274 AC_ARG_WITH(macosx-version-min,
275 [ --with-macosx-version-min=VERSION compile for MacOSX VERSION and above])
276 if test "${with_macosx_version_min}" != "" ; then
277 CPP="${CPP} -mmacosx-version-min=${with_macosx_version_min}"
278 CC="${CC} -mmacosx-version-min=${with_macosx_version_min}"
279 CXX="${CXX} -mmacosx-version-min=${with_macosx_version_min}"
280 OBJC="${OBJC} -mmacosx-version-min=${with_macosx_version_min}"
281 LD="${LD} -macosx_version_min=${with_macosx_version_min}"
282 CFLAGS_save="${CFLAGS_save} -DMACOSX_DEPLOYMENT_TARGET=${with_macosx_version_min}"; CFLAGS="${CFLAGS_save}"
283 CXXFLAGS_save="${CXXFLAGS_save} -DMACOSX_DEPLOYMENT_TARGET=${with_macosx_version_min}"; CXXFLAGS="${CXXFLAGS_save}"
284 OBJCFLAGS_save="${OBJCFLAGS_save} -DMACOSX_DEPLOYMENT_TARGET=${with_macosx_version_min}"; OBJCFLAGS="${OBJCFLAGS_save}"
285 MACOSX_DEPLOYMENT_TARGET=${with_macosx_version_min}
286 export MACOSX_DEPLOYMENT_TARGET
289 *mingw32* | *cygwin* | *wince* | *mingwce*)
290 AC_CHECK_TOOL(WINDRES, windres, :)
291 AC_CHECK_TOOL(OBJCOPY, objcopy, :)
294 *wince* | *mingwce* | *mingw32ce*)
296 dnl Sadly CeGCC still needs non-wince macros
297 AC_DEFINE([_WIN32_WINNT], 0x0501, [Define to '0x0500' for Windows 2000 APIs.])
301 AC_DEFINE([_WIN32_WINNT], 0x0501, [Define to '0x0500' for Windows XP APIs.])
304 dnl Check if we are using the mno-cygwin mode in which case we are
305 dnl actually dealing with a mingw32 compiler.
306 AC_DEFINE([_WIN32_WINNT], 0x0501, [Define to '0x0501' for Windows XP APIs.])
311 SYS=mingw32, AC_MSG_ERROR([VLC requires -mno-cygwin]))
315 if test "${SYS}" = "mingw32"; then
316 # add ws2_32 for closesocket, select, recv
317 VLC_ADD_LIBS([libvlccore],[-lws2_32 -lnetapi32 -lwinmm])
318 VLC_ADD_LDFLAGS([vlc],[-mwindows])
319 VLC_ADD_LIBS([activex mozilla win32text],[-lgdi32])
320 VLC_ADD_LIBS([cdda vcdx sdl_image aout_sdl vout_sdl],[-lwinmm])
321 VLC_ADD_LIBS([access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp access_output_shout access_output_rtmp sap oldhttp stream_out_standard stream_out_rtp stream_out_raop vod_rtsp access_realrtsp rtp oldrc netsync gnutls growl_udp flac ts audioscrobbler lua remoteosd zvbi audiobargraph_a netsync],[-lws2_32])
322 VLC_ADD_LIBS([filesystem], [-lshlwapi])
324 dnl DEP and ASLR options
326 AC_ARG_ENABLE(peflags,
327 [ --enable-peflags peflags use (default enabled on Windows)])
328 if test "${enable_peflags}" != "no" ; then
329 AC_CHECK_TOOL(PEFLAGS, peflags, :)
331 AC_CHECK_PROGS(U2D, [unix2dos todos], unix2dos)
332 ac_default_prefix="`pwd`/_win32"
333 DESTDIR="`pwd`/_win32/"
335 if test "${SYS}" = "mingwce"; then
336 # add ws2 for closesocket, select, recv
337 VLC_ADD_LIBS([libvlccore access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp access_output_rtmp sap oldhttp netsync audioscrobbler growl rtp stream_out_standard stream_out_rtp remoteosd ts audiobargraph_a netsync],[-lws2])
338 VLC_ADD_LIBS([libvlccore],[-lmmtimer])
339 AC_CHECK_PROGS(U2D, [unix2dos todos], unix2dos)
340 ac_default_prefix="`pwd`/_wince"
341 DESTDIR="`pwd`/_wince/"
355 CFLAGS_save="${CFLAGS_save} -Wno-multichar"; CFLAGS="${CFLAGS_save}"
356 CXXFLAGS_save="${CXXFLAGS_save} -Wno-multichar"; CXXFLAGS="${CXXFLAGS_save}"
357 VLC_ADD_CXXFLAGS([beos],[])
358 VLC_ADD_LIBS([vlc libvlccore logger],[-lbe])
359 VLC_ADD_LIBS([dvdnav dvdread],[-ldl])
360 VLC_ADD_LIBS([filesystem],[-lpoll])
361 LDFLAGS_save="${LDFLAGS_save} -lintl"; LDFLAGS="${LDFLAGS_save}"
363 if test -f /boot/beos/system/lib/libbind.so; then
364 VLC_ADD_LIBS([filesystem access_ftp access_mms access_output_udp netsync sap libvlccore growl_udp],[-lbind -lsocket])
366 VLC_ADD_LIBS([filesystem access_ftp access_mms access_output_udp netsync sap libvlccore growl_udp],[-lnet])
373 AM_CONDITIONAL(HAVE_BEOS, test "${SYS}" = "beos")
374 AM_CONDITIONAL(HAVE_DARWIN, test "${SYS}" = "darwin")
375 AM_CONDITIONAL(HAVE_LINUX, [test "${SYS}" = "linux"])
376 AM_CONDITIONAL(HAVE_WIN32, test "${SYS}" = "mingw32")
377 AM_CONDITIONAL(HAVE_WINCE, test "${SYS}" = "mingwce")
378 AM_CONDITIONAL(USE_PEFLAGS, [test "${enable_peflags}" = "yes"])
381 dnl Sadly autoconf doesn't think about testing foo.exe when ask to test
382 dnl for program foo on win32
384 case "${build_os}" in
386 ac_executable_extensions=".exe"
394 dnl It's very bad, but our former custom system was worst
398 dnl override platform specific check for dependent libraries
399 dnl otherwise libtool linking of shared libraries will
400 dnl fail on anything other than pass_all.
401 AC_CACHE_VAL(lt_cv_deplibs_check_method,
402 [lt_cv_deplibs_check_method=pass_all])
405 dnl AC_DISABLE_FAST_INSTALL
408 m4_undefine([AC_PROG_F77])
409 m4_defun([AC_PROG_F77],[])
412 m4_undefine([AC_DEPLIBS_CHECK_METHOD])
413 m4_defun([AC_DEPLIBS_CHECK_METHOD],[])
415 lt_cv_deplibs_check_method=pass_all
417 AS_IF([test "${enable_shared}" = "no"], [
418 AC_MSG_ERROR([VLC is based on plugins. Shared libraries cannot be disabled.])
424 AM_GNU_GETTEXT_VERSION([0.18.1])
425 AM_GNU_GETTEXT([external])
426 VLC_ADD_LIBS([libvlccore vlc], [${LTLIBINTL}])
432 VLC_ADD_CFLAGS([libvlccore],[${INCICONV}])
433 VLC_ADD_LIBS([libvlccore],[${LTLIBICONV}])
435 dnl Check for broken versions of mingw-runtime compatability library
436 AS_IF([test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"], [
437 AC_MSG_CHECKING(for broken mingw-runtime)
440 #if (__MINGW32_MAJOR_VERSION == 3) && (__MINGW32_MINOR_VERSION < 15)
441 #ifndef __MINGW64_VERSION_MAJOR
442 # error Attempting to use mingw-runtime with broken vsnprintf support
448 AC_MSG_RESULT([present])
449 AC_MSG_ERROR([LibVLC requires mingw-runtime version 3.15 or higher!])
451 dnl force use of mingw provided c99 *printf over msvcrt
452 CPPFLAGS="${CPPFLAGS} -D__USE_MINGW_ANSI_STDIO=1"
453 CPPFLAGS_save="${CPPFLAGS_save} -D__USE_MINGW_ANSI_STDIO=1"
456 dnl Check for the need to include the mingwex lib for mingw32
457 if test "${SYS}" = "mingw32" ; then
458 AC_CHECK_LIB(mingwex,opendir,
459 AC_CHECK_LIB(mingw32,opendir,,
460 [VLC_ADD_LIBS([libvlccore],[-lmingwex])])
464 dnl Check for fnative-struct or mms-bitfields support for mingw32
465 if test "${SYS}" = "mingw32" ; then
466 AC_CACHE_CHECK([if \$CC accepts -mms-bitfields],
467 [ac_cv_c_mms_bitfields],
468 [CFLAGS="${CFLAGS_save} -mms-bitfields"
469 AC_TRY_COMPILE([],,ac_cv_c_mms_bitfields=yes, ac_cv_c_mms_bitfields=no)])
470 if test "${ac_cv_c_mms_bitfields}" != "no"; then
471 CFLAGS_save="${CFLAGS_save} -mms-bitfields";
472 CXXFLAGS_save="${CXXFLAGS_save} -mms-bitfields";
474 AC_CACHE_CHECK([if \$CC accepts -fnative-struct],
475 [ac_cv_c_fnative_struct],
476 [CFLAGS="${CFLAGS_save} -fnative-struct"
477 AC_TRY_COMPILE([],,ac_cv_c_fnative_struct=yes, ac_cv_c_fnative_struct=no)])
478 if test "${ac_cv_c_fnative_struct}" != "no"; then
479 CFLAGS_save="${CFLAGS_save} -fnative-struct";
480 CXXFLAGS_save="${CXXFLAGS_save} -fnative-struct";
484 CFLAGS="${CFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}"
487 dnl Check for fvtable-thunks support for mingw32
488 if test "${SYS}" = "mingw32" -a "${CXX}" != "" ; then
490 AC_CACHE_CHECK([if \$CXX accepts -fvtable-thunks],
491 [ac_cv_cxx_fvtable_thunks],
492 [CXXFLAGS="${CXXFLAGS_save} -Wall -Werror -fvtable-thunks"
493 AC_TRY_COMPILE([],,ac_cv_cxx_fvtable_thunks=yes,
494 ac_cv_cxx_fvtable_thunks=no)])
495 if test "${ac_cv_cxx_fvtable_thunks}" = "yes"; then
496 CXXFLAGS_mingw32_special="-fvtable-thunks"
499 CXXFLAGS_save="${CXXFLAGS_save} ${CXXFLAGS_mingw32_special}"; CXXFLAGS="${CXXFLAGS_save}"
504 dnl Buggy glibc prevention. Purposedly not cached.
505 dnl See sourceware.org bugs 5058 and 5443.
506 dnl Ubuntu alone has 20 bug numbers for this...
508 AC_MSG_CHECKING(for buggy GNU/libc versions)
511 #if defined (__GLIBC__) && (__GLIBC__ == 2) \
512 && (__GLIBC_MINOR__ >= 5) && (__GLIBC_MINOR__ <= 7)
513 # error GNU/libc with dcgettext killer bug!
516 AC_MSG_RESULT([not present])
518 AC_MSG_RESULT([found])
519 AS_IF([test "x${enable_nls}" != "xno" || test "x${enable_mozilla}" != "xno"], [
520 AC_MSG_ERROR([Buggy GNU/libc (version 2.5 - 2.7) present. VLC would crash; there is no viable
521 work-around for this. Check with your distribution vendor on how to update the
522 glibc run-time. Alternatively, build with --disable-nls --disable-mozilla and
523 be sure to not use LibVLC from other applications/wrappers.])
525 AC_DEFINE(DISABLE_BUGGY_GLIBC_CHECK, 1, [Disables runtime check for buggy glibc.])
529 dnl Plugin compilation stuff
533 dnl The -DSYS_FOO flag
534 CPPFLAGS_save="${CPPFLAGS_save} -DSYS_`echo ${SYS} | sed -e 's/-.*//' | tr 'abcdefghijklmnopqrstuvwxyz.' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ_'`"; CPPFLAGS="${CPPFLAGS_save}"
536 dnl Check for system libs needed
539 dnl Check for usual libc functions
540 AC_CHECK_FUNCS([daemon fcntl fdopendir fstatvfs fork getenv getpwuid_r gettimeofday isatty lstat memalign openat posix_fadvise posix_madvise posix_memalign setenv setlocale stricmp strnicmp tdestroy uselocale])
541 AC_REPLACE_FUNCS([asprintf atof atoll getcwd getdelim getpid gmtime_r lldiv localtime_r nrand48 rewind strcasecmp strcasestr strdup strlcpy strncasecmp strndup strnlen strsep strtof strtok_r strtoll swab vasprintf])
542 AC_CHECK_FUNCS(fdatasync,,
543 [AC_DEFINE(fdatasync, fsync, [Alias fdatasync() to fsync() if missing.])
546 dnl Check for non-standard system calls
547 AC_CHECK_FUNCS([accept4 dup3 eventfd vmsplice sched_getaffinity])
549 AH_BOTTOM([#include <vlc_fixups.h>])
551 AC_CHECK_FUNCS(mmap, [VLC_ADD_PLUGIN([access_mmap])])
554 AC_CHECK_FUNCS(connect,,[
555 AC_CHECK_LIB(socket,connect,[
556 VLC_ADD_LIBS([libvlccore cdda],-lsocket)
557 SOCKET_LIBS="-lsocket"
560 AC_SUBST(SOCKET_LIBS)
562 AC_CHECK_FUNCS(send,,[
563 AC_CHECK_LIB(socket,send,[
564 VLC_ADD_LIBS([access_http access_mms access_udp access_tcp access_ftp access_rtmp sap access_output_udp access_output_rtmp stream_out_standard growl_udp remoteosd netsync],[-lsocket])
569 dnl Check for socklen_t
570 AH_TEMPLATE(socklen_t, [Define to `int' if <sys/socket.h> does not define.])
571 AC_CACHE_CHECK([for socklen_t in sys/socket.h],
572 ac_cv_type_socklen_t,
573 [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
574 [#include <sys/types.h>
576 # include <winsock2.h>
577 # include <ws2tcpip.h>
579 # include <sys/socket.h>
580 #endif]], [[socklen_t len; len = 0;]])],
581 ac_cv_type_socklen_t=yes,
582 ac_cv_type_socklen_t=no)])
583 AS_IF([test "$ac_cv_type_socklen_t" = no],
584 [AC_DEFINE(socklen_t, int)])
586 dnl Check for struct sockaddr_storage
587 AH_TEMPLATE(sockaddr_storage, [Define to `sockaddr' if <sys/socket.h> does not define.])
588 AH_TEMPLATE(ss_family, [Define to `sa_family' if <sys/socket.h> does not define.])
589 AC_CACHE_CHECK([for struct sockaddr_storage], ac_cv_struct_sockaddr_storage,
591 [#include <sys/types.h>
592 #if defined( UNDER_CE )
593 # include <winsock2.h>
594 #elif defined( WIN32 )
595 # include <winsock2.h>
597 # include <sys/socket.h>
598 #endif], [struct sockaddr_storage addr;],
599 ac_cv_struct_sockaddr_storage=yes,
600 ac_cv_struct_sockaddr_storage=no)])
601 AS_IF([test "${ac_cv_struct_sockaddr_storage}" = no], [
602 AC_DEFINE(sockaddr_storage, sockaddr)
603 AC_DEFINE(ss_family, sa_family)
606 dnl getaddrinfo, getnameinfo and gai_strerror check
607 dnl -lnsl and -lsocket are needed on Solaris;
608 dnl we purposedly make the test fail on Windows
610 AC_SEARCH_LIBS([getaddrinfo], [nsl],,, [${SOCKET_LIBS}])
613 dnl Check for va_copy
614 AC_CACHE_CHECK([for va_copy], ac_cv_c_va_copy,
616 [#include <stdarg.h>],
617 [va_list ap1, ap2; va_copy(ap1,ap2);],
618 [ac_cv_c_va_copy="yes"],
619 [ac_cv_c_va_copy="no"]))
620 if test "${ac_cv_c_va_copy}" = "yes"; then
621 AC_DEFINE(HAVE_VA_COPY, 1, [Define if <stdarg.h> defines va_copy.])
623 AC_CACHE_CHECK([for __va_copy], ac_cv_c___va_copy,
625 [#include <stdarg.h>],
626 [va_list ap1, ap2; __va_copy(ap1,ap2);],
627 [ac_cv_c___va_copy="yes"],
628 [ac_cv_c___va_copy="no"]))
629 if test "${ac_cv_c___va_copy}" = "yes"; then
630 AC_DEFINE(HAVE___VA_COPY, 1, [Define if <stdarg.h> defines __va_copy.])
633 AC_CHECK_FUNCS(inet_aton,,[
634 AC_CHECK_LIB(resolv,inet_aton,[
635 VLC_ADD_LIBS([libvlccore],[-lresolv])
639 dnl FreeBSD has a gnugetopt library for this:
641 AC_CHECK_FUNC(getopt_long,, [
642 AC_CHECK_LIB([gnugetopt],[getopt_long], [
643 GNUGETOPT_LIBS="-lgnugetopt"
646 AC_SUBST(GNUGETOPT_LIBS)
648 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
650 VLC_ADD_LIBS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom visual panoramix rotate noise grain scene kate flac lua chorus_flanger],[-lm])
653 VLC_ADD_LIBS([avcodec avformat access_avio swscale postproc ffmpegaltivec i420_rgb faad twolame equalizer spatializer param_eq libvlccore freetype mod mpc dmo quicktime realvideo qt4],[-lm])
655 AC_CHECK_LIB(m,sqrt,[
656 VLC_ADD_LIBS([compressor headphone_channel_mixer normvol audiobargraph_a speex mono colorthres extract ball],[-lm])
658 AC_CHECK_LIB(m,ceil,[
659 VLC_ADD_LIBS([access_imem hotkeys mosaic swscale_omap],[-lm])
662 VLC_ADD_LIBS([gaussianblur],[-lm])
664 AC_CHECK_LIB(m,round,[
665 VLC_ADD_LIBS([dbus],[-lm])
667 AC_CHECK_LIB(m,sqrtf,[
668 VLC_ADD_LIBS([x264],[-lm])
670 fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
672 AC_CHECK_LIB(m,lrintf, [
673 AC_DEFINE(HAVE_LRINTF, 1, [Define to 1 if you have the lrintf function])
674 VLC_ADD_LIBS([skins2],[-lm])
677 dnl Check for dynamic plugins
678 ac_cv_have_plugins=no
681 if test "${ac_cv_have_plugins}" = "no"; then
682 AC_CHECK_HEADERS(dl.h)
683 ac_cv_my_have_shl_load=no
684 AC_CHECK_FUNC(shl_load,
685 [ac_cv_my_have_shl_load=yes,
686 AC_CHECK_LIB(dld, shl_load,
687 [ac_cv_my_have_shl_load=yes
688 VLC_ADD_LIBS([libvlccore],[-ldld])])])
689 if test "${ac_cv_my_have_shl_load}" = "yes"; then
690 AC_DEFINE(HAVE_DL_SHL_LOAD, 1, [Define if you have the shl_load API])
691 ac_cv_have_plugins=yes
696 if test "${ac_cv_have_plugins}" = "no"; then
697 if test "${SYS}" = "mingw32" ; then
698 AC_CHECK_LIB(kernel32, main,
699 [VLC_ADD_LIBS([libvlccore],[-lkernel32])
700 AC_DEFINE(HAVE_DL_WINDOWS, 1, [Define if you have Windows' LoadLibrary])
701 ac_cv_have_plugins=yes])
706 if test "${ac_cv_have_plugins}" = "no"; then
707 if test "${SYS}" = "mingwce"; then
708 AC_DEFINE(HAVE_DL_WINDOWS, 1, [Define if you have Windows' LoadLibrary])
709 ac_cv_have_plugins=yes
714 if test "${ac_cv_have_plugins}" = "no"; then
715 AC_CHECK_HEADERS(image.h)
716 AC_CHECK_FUNCS(load_add_on,
717 [AC_DEFINE(HAVE_DL_BEOS, 1, [Define if you have the BeOS dl])
718 ac_cv_have_plugins=yes])
721 # Only test for dlopen() if the others didn't work
723 if test "${ac_cv_have_plugins}" = "no" -o "${SYS}" = "darwin"; then
724 AC_CHECK_HEADERS(dlfcn.h sys/dl.h)
725 ac_cv_my_have_dlopen=no
726 AC_CHECK_FUNC(dlopen, [
727 ac_cv_my_have_dlopen=yes
729 AC_CHECK_LIB(dl, dlopen, [
730 ac_cv_my_have_dlopen=yes
733 AC_CHECK_LIB(svld, dlopen, [
734 ac_cv_my_have_dlopen=yes
739 if test "${ac_cv_my_have_dlopen}" = "yes"; then
740 AC_DEFINE(HAVE_DL_DLOPEN, 1, [Define if you have the dlopen API])
741 ac_cv_have_plugins=yes
742 VLC_ADD_LIBS([libvlccore realvideo lua],[$LIBDL])
747 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
748 dnl Check for pthreads - borrowed from XMMS
750 if test "${THREAD_LIB}" = "error"; then
751 AC_CHECK_LIB(pthread,main,THREAD_LIB="-lpthread")
753 if test "${THREAD_LIB}" = "error"; then
754 AC_CHECK_LIB(pthreads,main,THREAD_LIB="-lpthreads")
756 if test "${THREAD_LIB}" = "error"; then
757 AC_CHECK_LIB(c_r,main,THREAD_LIB="-lc_r")
759 if test "${THREAD_LIB}" = "error"; then
760 AC_CHECK_FUNCS(pthread_mutex_lock)
764 VLC_ADD_LIBS([libvlccore libvlc vlc plugin],[${THREAD_LIB}])
766 AC_CHECK_LIB(rt, clock_nanosleep, [
767 VLC_ADD_LIBS([libvlccore],[-lrt])
768 AC_DEFINE(HAVE_CLOCK_NANOSLEEP, 1, [Define to 1 if you have clock_nanosleep.])
771 AC_CHECK_LIB(rt,sem_init, [VLC_ADD_LIBS([libvlccore],[-lrt])])
775 AC_CHECK_FUNCS(nanosleep,have_nanosleep=:,[
776 AC_CHECK_LIB(rt,nanosleep,
777 [VLC_ADD_LIBS([libvlccore],[-lrt]) have_nanosleep=:],
778 [AC_CHECK_LIB(posix4,nanosleep,
779 [VLC_ADD_LIBS([libvlccore],[-lposix4]) have_nanosleep=:])]
782 if ${have_nanosleep}; then
783 AC_DEFINE(HAVE_NANOSLEEP, 1, [Define if nanosleep is available.])
785 fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
787 dnl Check for misc headers
788 AC_MSG_CHECKING(for strncasecmp in strings.h)
789 AC_EGREP_HEADER(strncasecmp,strings.h,[
791 AC_DEFINE(STRNCASECMP_IN_STRINGS_H, 1,
792 Define if <strings.h> defines strncasecmp.)],[
795 dnl Check for headers
796 AC_CHECK_HEADERS(getopt.h strings.h locale.h xlocale.h)
797 AC_CHECK_HEADERS(fcntl.h sys/time.h sys/ioctl.h sys/stat.h)
798 AC_CHECK_HEADERS([arpa/inet.h netinet/in.h netinet/udplite.h sys/eventfd.h])
799 AC_CHECK_HEADERS([net/if.h], [], [],
801 #include <sys/types.h>
802 #include <sys/socket.h>
804 AC_CHECK_HEADERS([sys/mount.h], [], [],
806 #include <sys/param.h>
809 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
810 AC_CHECK_HEADERS(machine/param.h sys/shm.h)
811 AC_CHECK_HEADERS([linux/version.h linux/dccp.h scsi/scsi.h linux/magic.h])
812 AC_CHECK_HEADERS(syslog.h)
813 fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
815 dnl LP64 and LLP64 architectures had better define ssize_t by themselves...
816 AH_TEMPLATE(ssize_t, [Define to `int' if <stddef.h> does not define.])
817 AC_CHECK_TYPE(ssize_t,, [
818 AC_DEFINE(ssize_t, int)
822 AC_SEARCH_LIBS(poll, [poll], [AC_DEFINE(HAVE_POLL, 1, [Define to 1 if the OS is usabl... err, has poll().])], [
823 if test ${SYS} != "mingw32" -a ${SYS} != "mingwce"
825 AC_MSG_WARN([Your platform does not support poll(). VLC has it's own poll() implementation, but it is only intended to be used on Windows. VLC might crash or be insecure when you see this message. Either switch to an OS with a proper poll() implementation, or implement one for your OS in VLC])
829 dnl Mac OS X and other OSes don't have declaration for nanosleep
830 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
831 AC_MSG_CHECKING(for nanosleep in time.h)
832 AC_EGREP_HEADER(nanosleep,time.h,[
834 AC_DEFINE(HAVE_DECL_NANOSLEEP, 1,
835 Define if <time.h> defines nanosleep.)
839 fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
841 dnl Make sure we have timespecs
842 AC_MSG_CHECKING(for timespec in sys/time.h)
843 AC_EGREP_HEADER(timespec,sys/time.h,[
845 AC_DEFINE(HAVE_STRUCT_TIMESPEC, 1,
846 Define if <sys/time.h> defines struct timespec.)
851 dnl Check for threads library
852 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
853 AC_CHECK_HEADERS(pthread.h)
854 fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
856 dnl It seems that autoconf detects pkg-config only during the first
857 dnl PKG_CHECK_MODULES from configure.ac - which makes sense. But in our case,
858 dnl it is nested within a conditional block, so it was not working right.
859 dnl Make PKG_CONFIG_PATH precious so that it appears in the help and get saved
860 AC_ARG_VAR(PKG_CONFIG_PATH,
861 [Paths where to find .pc not at the default location])
862 PKG_PROG_PKG_CONFIG()
864 dnl On some OS we need static linking
865 AS_IF([test -n "${PKG_CONFIG}" ],[
866 AS_IF([test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce" -o "${SYS}" = "darwin" ],[
867 PKG_CONFIG="${PKG_CONFIG} --static"
873 dnl Check for zlib.h and -lz along with system -lminizip if available
875 AC_CHECK_HEADERS(zlib.h, [ have_zlib=yes ], [ have_zlib=no ])
876 AM_CONDITIONAL(HAVE_ZLIB, [ test "${have_zlib}" = "yes" ])
877 if test "${have_zlib}" = "yes"
879 VLC_ADD_LIBS([access_http gme mp4 skins2 sap mkv unzip zip],[-lz])
880 PKG_CHECK_MODULES([MINIZIP], [minizip] , [ have_minizip=yes ], [
881 AC_CHECK_HEADERS([unzip.h], [
883 MINIZIP_LIBS="-lminizip -lz"
886 MINIZIP_CFLAGS="-I\\\${top_srcdir}/libs/unzip"
887 MINIZIP_LIBS="\\\${top_builddir}/libs/unzip/libunzip.la"
890 VLC_ADD_CPPFLAGS([skins2],[$MINIZIP_CFLAGS])
891 VLC_ADD_CFLAGS([zip],[$MINIZIP_CFLAGS])
892 VLC_ADD_LIBS([skins2 zip],[$MINIZIP_LIBS])
893 VLC_ADD_PLUGIN([unzip zip])
895 AM_CONDITIONAL(HAVE_MINIZIP, [ test "${have_minizip}" = "yes" ])
898 dnl Manual switch for UTF-8
899 AC_ARG_ENABLE(non-utf8,
900 [ --enable-non-utf8 Legacy non-UTF-8 systems support (default disabled)],, [
901 AS_IF([test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"], [
905 AS_IF([test "${enable_non_utf8}" != "no"], [
906 AC_DEFINE([ASSUME_UTF8], [1],
907 [Define to 1 if the operating system uses UTF-8 internally])
913 [ --enable-dbus Linux D-BUS message bus system (default enabled)])
916 if test "${enable_dbus}" != "no" -a "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
919 PKG_CHECK_MODULES(DBUS, dbus-1 >= 1.0.0,
920 [ AC_DEFINE( HAVE_DBUS, 1, [Define if you have the D-BUS library] )
921 VLC_ADD_LIBS([libvlccore],[$DBUS_LIBS])
922 VLC_ADD_CFLAGS([libvlccore],[$DBUS_CFLAGS])
923 dnl Check for dbus control interface
924 AC_ARG_ENABLE(dbus-control, [ --disable-dbus-control D-BUS control interface (default enabled)])
925 if test "${enable_dbus_control}" != "no"
927 VLC_ADD_PLUGIN([dbus])
928 VLC_ADD_LIBS([dbus],[$DBUS_LIBS])
929 VLC_ADD_CFLAGS([dbus],[$DBUS_CFLAGS])
931 dnl Check for Telepathy
932 AC_ARG_ENABLE(telepathy,
933 AS_HELP_STRING([--enable-telepathy],[Telepathy Presence plugin through DBus(default enabled)]))
934 if test "${enable_telepathy}" != "no"; then
935 VLC_ADD_PLUGIN([telepathy])
936 VLC_ADD_LIBS([telepathy],[$DBUS_LIBS])
937 VLC_ADD_CFLAGS([telepathy],[$DBUS_CFLAGS])
939 dnl Power Management Inhibiter
940 VLC_ADD_PLUGIN([inhibit])
941 VLC_ADD_LIBS([inhibit],[$DBUS_LIBS])
942 VLC_ADD_CFLAGS([inhibit],[$DBUS_CFLAGS])
944 [AC_MSG_ERROR([Couldn't find DBus >= 1.0.0, install libdbus-dev ?])]
950 dnl Check for ntohl, etc.
951 AC_CACHE_CHECK([for ntohl in sys/param.h],
952 [ac_cv_c_ntohl_sys_param_h],
953 [CFLAGS="${CFLAGS_save} -Wall -Werror"
954 AC_TRY_COMPILE([#include <sys/param.h>],
955 [int meuh; ntohl(meuh);],
956 ac_cv_c_ntohl_sys_param_h=yes, ac_cv_c_ntohl_sys_param_h=no)])
957 if test "${ac_cv_c_ntohl_sys_param_h}" != "no"; then
958 AC_DEFINE(NTOHL_IN_SYS_PARAM_H, 1, Define if <sys/param.h> defines ntohl.)
960 CFLAGS="${CFLAGS_save}"
962 RDC_PROG_CC_WFLAGS([all extra sign-compare undef pointer-arith bad-function-cast write-strings missing-prototypes volatile-register-var error-implicit-function-declaration])
963 RDC_PROG_CC_FLAGS([-pipe])
965 dnl Check for various optimization flags
966 AC_CACHE_CHECK([if \$CC accepts -Os],
968 [CFLAGS="${CFLAGS_save} -Os"
969 AC_TRY_COMPILE([],,ac_cv_c_os=yes, ac_cv_c_os=no)])
970 if test "${ac_cv_c_os}" != "no"; then
971 CFLAGS_OPTIM_SIZE="${CFLAGS_OPTIM_SIZE} -Os"
973 AC_CACHE_CHECK([if \$CC accepts -O],
975 [CFLAGS="${CFLAGS_save} -O"
976 AC_TRY_COMPILE([],,ac_cv_c_o=yes, ac_cv_c_o=no)])
977 if test "${ac_cv_c_o}" != "no"; then
978 if test "${ac_cv_c_o3}" = "no"; then
979 CFLAGS_OPTIM_SIZE="${CFLAGS_OPTIM_SIZE} -O"
984 AC_CACHE_CHECK([if \$CC accepts -O4],
986 [CFLAGS="${CFLAGS_save} -O4"
987 AC_TRY_COMPILE([],,ac_cv_c_o4=yes, ac_cv_c_o4=no)])
988 if test "${ac_cv_c_o4}" != "no" -a "x${enable_debug}" = "xno"; then
989 CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -O4"
991 AC_CACHE_CHECK([if \$CC accepts -O3],
993 [CFLAGS="${CFLAGS_save} -O3"
994 AC_TRY_COMPILE([],,ac_cv_c_o3=yes, ac_cv_c_o3=no)])
995 if test "${ac_cv_c_o3}" != "no" -a "x${enable_debug}" = "xno"; then
996 CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -O3"
998 AC_CACHE_CHECK([if \$CC accepts -O2],
1000 [CFLAGS="${CFLAGS_save} -O2"
1001 AC_TRY_COMPILE([],,ac_cv_c_o2=yes, ac_cv_c_o2=no)])
1002 if test "${ac_cv_c_o2}" != "no"; then
1003 CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -O2"
1005 AC_CACHE_CHECK([if \$CC accepts -O],
1007 [CFLAGS="${CFLAGS_save} -O"
1008 AC_TRY_COMPILE([],,ac_cv_c_o=yes, ac_cv_c_o=no)])
1009 if test "${ac_cv_c_o}" != "no"; then
1010 CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -O"
1016 AC_CACHE_CHECK([if \$CC accepts -O0],
1018 [CFLAGS="${CFLAGS_save} -O0"
1019 AC_TRY_COMPILE([],,ac_cv_c_o0=yes, ac_cv_c_o0=no)])
1020 if test "${ac_cv_c_o0}" != "no"; then
1021 CFLAGS_NOOPTIM="${CFLAGS_NOOPTIM} -O0"
1024 dnl Check for -ffast-math
1025 AC_CACHE_CHECK([if \$CC accepts -ffast-math],
1026 [ac_cv_c_fast_math],
1027 [CFLAGS="${CFLAGS_save} -ffast-math"
1028 AC_TRY_COMPILE([],,ac_cv_c_fast_math=yes, ac_cv_c_fast_math=no)])
1029 if test "${ac_cv_c_fast_math}" != "no"; then
1030 CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -ffast-math"
1033 dnl Check for -funroll-loops
1034 dnl Disabled on BeOS because BeOS' gcc is buggy and may crash with it
1035 if test "${SYS}" != "beos"
1037 AC_CACHE_CHECK([if \$CC accepts -funroll-loops],
1038 [ac_cv_c_unroll_loops],
1039 [CFLAGS="${CFLAGS_save} -funroll-loops"
1040 AC_TRY_COMPILE([],,ac_cv_c_unroll_loops=yes, ac_cv_c_unroll_loops=no)])
1041 if test "${ac_cv_c_unroll_loops}" != "no"; then
1042 CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -funroll-loops"
1046 dnl Check for -fomit-frame-pointer
1047 AC_CACHE_CHECK([if \$CC accepts -fomit-frame-pointer],
1048 [ac_cv_c_omit_frame_pointer],
1049 [CFLAGS="${CFLAGS_save} -fomit-frame-pointer"
1050 AC_TRY_COMPILE([],,ac_cv_c_omit_frame_pointer=yes, ac_cv_c_omit_frame_pointer=no)])
1051 if test "${ac_cv_c_omit_frame_pointer}" != "no"; then
1052 if test "${SYS}" != "darwin"; then
1053 CFLAGS_OPTIM_NODEBUG="${CFLAGS_OPTIM_NODEBUG} -fomit-frame-pointer"
1055 dnl On darwin we explicitely disable it.
1056 CFLAGS_OPTIM_NODEBUG="${CFLAGS_OPTIM_NODEBUG} -fno-omit-frame-pointer"
1060 dnl Check for Darwin plugin linking flags
1061 AC_CACHE_CHECK([if \$CC accepts -bundle -undefined error],
1063 [CFLAGS="${CFLAGS_save} -bundle -undefined error"
1064 AC_TRY_COMPILE([],,ac_cv_ld_darwin=yes, ac_cv_ld_darwin=no)])
1065 if test "${ac_cv_ld_darwin}" != "no"; then
1066 VLC_ADD_LDFLAGS([plugin],[-bundle -undefined error])
1069 dnl Checks for __attribute__(aligned()) directive
1070 AC_CACHE_CHECK([__attribute__ ((aligned ())) support],
1071 [ac_cv_c_attribute_aligned],
1072 [ac_cv_c_attribute_aligned=0
1073 CFLAGS="${CFLAGS_save} -Werror"
1074 for ac_cv_c_attr_align_try in 2 4 8 16 32 64; do
1076 [static char c __attribute__ ((aligned(${ac_cv_c_attr_align_try}))) = 0; return c;],
1077 [ac_cv_c_attribute_aligned="${ac_cv_c_attr_align_try}"])
1079 CFLAGS="${CFLAGS_save}"])
1080 if test "${ac_cv_c_attribute_aligned}" != "0"; then
1081 AC_DEFINE_UNQUOTED([ATTRIBUTE_ALIGNED_MAX],
1082 [${ac_cv_c_attribute_aligned}],[Maximum supported data alignment])
1085 dnl Check for __attribute__((packed))
1086 AC_CACHE_CHECK([for __attribute__((packed))],
1087 [ac_cv_c_attribute_packed],
1088 [ac_cv_c_attribute_packed=no
1089 AC_TRY_COMPILE(, [struct __attribute__((__packed__)) foo { int a; } b; (void)b;],
1090 [ac_cv_c_attribute_packed=yes])])
1091 if test "${ac_cv_c_attribute_packed}" != "no"; then
1092 AC_DEFINE(HAVE_ATTRIBUTE_PACKED, 1, Support for __attribute__((packed)) for structs)
1098 case "${host_cpu}" in
1107 dnl Check for backtrace() support
1108 AC_CHECK_HEADERS(execinfo.h)
1109 AC_CHECK_FUNCS(backtrace)
1112 dnl Enable profiling
1114 AC_ARG_ENABLE(gprof,
1115 [ --enable-gprof gprof profiling (default disabled)])
1116 AC_ARG_ENABLE(cprof,
1117 [ --enable-cprof cprof profiling (default disabled)])
1118 test "${enable_gprof}" != "yes" && enable_gprof="no"
1119 test "${enable_cprof}" != "yes" && enable_cprof="no"
1124 ALIASES="${ALIASES} cvlc rvlc"
1127 dnl Some plugins aren't useful on some platforms
1129 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
1130 VLC_ADD_PLUGIN([dynamicoverlay])
1131 elif test "${SYS}" != "mingwce"; then
1132 VLC_ADD_PLUGIN([access_smb dmo globalhotkeys])
1133 VLC_ADD_LIBS([dmo],[-lole32 -luuid])
1135 if test "${SYS}" = "darwin"; then
1136 VLC_ADD_LDFLAGS([quartztext],[-Wl,-framework,ApplicationServices])
1140 dnl Accelerated modules
1142 EXTEND_HELP_STRING([Optimization options:])
1144 dnl Check for fully working MMX intrinsics
1145 dnl We need support for -mmmx, we need <mmintrin.h>, and we also need a
1146 dnl working compiler (http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23963)
1148 [ --disable-mmx disable MMX optimizations (default auto)],,[
1149 case "${host_cpu}" in
1160 AS_IF([test "${enable_mmx}" != "no"], [
1163 AC_CACHE_CHECK([if $CC groks MMX intrinsics],
1164 [ac_cv_c_mmx_intrinsics],
1165 [CFLAGS="${CFLAGS_save} -O -mmmx"
1166 AC_TRY_COMPILE([#include <mmintrin.h>
1170 a = b = c = (__m64)frobzor;
1171 a = _mm_slli_pi16(a, 3);
1172 a = _mm_adds_pi16(a, b);
1173 c = _mm_srli_pi16(c, 8);
1174 c = _mm_slli_pi16(c, 3);
1175 b = _mm_adds_pi16(b, c);
1176 a = _mm_unpacklo_pi8(a, b);
1177 frobzor = (uint64_t)a;],
1178 [ac_cv_c_mmx_intrinsics=yes],
1179 [ac_cv_c_mmx_intrinsics=no])])
1180 AS_IF([test "${ac_cv_c_mmx_intrinsics}" != "no"], [
1181 AC_DEFINE(HAVE_MMX_INTRINSICS, 1,
1182 [Define to 1 if MMX intrinsics are available.])
1186 AC_CACHE_CHECK([if $CC groks MMX inline assembly],
1188 [CFLAGS="${CFLAGS_save}"
1189 AC_TRY_COMPILE(,[void *p;asm volatile("packuswb %%mm1,%%mm2"::"r"(p));],
1190 ac_cv_mmx_inline=yes, ac_cv_mmx_inline=no)])
1191 AS_IF([test "${ac_cv_mmx_inline}" != "no"], [
1192 AC_DEFINE(CAN_COMPILE_MMX, 1,
1193 [Define to 1 inline MMX assembly is available.])
1197 AC_CACHE_CHECK([if $CC groks MMX EXT inline assembly],
1198 [ac_cv_mmxext_inline],
1199 [CFLAGS="${CFLAGS_save}"
1200 AC_TRY_COMPILE(,[void *p;asm volatile("maskmovq %%mm1,%%mm2"::"r"(p));],
1201 ac_cv_mmxext_inline=yes, ac_cv_mmxext_inline=no)])
1202 AS_IF([test "${ac_cv_mmxext_inline}" != "no"], [
1203 AC_DEFINE(CAN_COMPILE_MMXEXT, 1,
1204 [Define to 1 if MMX EXT inline assembly is available.])
1208 AC_SUBST(MMX_CFLAGS)
1209 AM_CONDITIONAL([HAVE_MMX], [test "${have_mmx}" = "yes"])
1210 AM_CONDITIONAL([HAVE_MMXEXT], [test "${have_mmxext}" = "yes"])
1212 dnl Check for fully workin SSE2 intrinsics
1213 dnl We need support for -mmmx, we need <emmintrin.h>, and we also need a
1214 dnl working compiler (http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23963)
1216 [ --disable-sse disable SSE (1, 2, 3 and 4) optimizations (default auto)],
1218 case "${host_cpu}" in
1228 AS_IF([test "${enable_sse}" != "no"], [
1229 ARCH="${ARCH} sse sse2"
1231 AC_CACHE_CHECK([if $CC groks SSE2 intrinsics],
1232 [ac_cv_c_sse2_intrinsics],
1233 [CFLAGS="${CFLAGS_save} -O -msse2"
1234 AC_TRY_COMPILE([#include <emmintrin.h>
1238 a = b = c = _mm_set1_epi64((__m64)frobzor);
1239 a = _mm_slli_epi16(a, 3);
1240 a = _mm_adds_epi16(a, b);
1241 c = _mm_srli_epi16(c, 8);
1242 c = _mm_slli_epi16(c, 3);
1243 b = _mm_adds_epi16(b, c);
1244 a = _mm_unpacklo_epi8(a, b);
1245 frobzor = (uint64_t)_mm_movepi64_pi64(a);],
1246 [ac_cv_c_sse2_intrinsics=yes],
1247 [ac_cv_c_sse2_intrinsics=no])])
1248 AS_IF([test "${ac_cv_c_sse2_intrinsics}" != "no"], [
1249 AC_DEFINE(HAVE_SSE2_INTRINSICS, 1,
1250 [Define to 1 if SSE2 intrinsics are available.])
1251 SSE2_CFLAGS="-msse2"
1254 AC_CACHE_CHECK([if $CC groks SSE inline assembly],
1256 [CFLAGS="${CFLAGS_save}"
1257 AC_TRY_COMPILE(,[void *p;asm volatile("xorps %%xmm1,%%xmm2"::"r"(p));],
1258 ac_cv_sse_inline=yes, ac_cv_sse_inline=no)])
1259 AS_IF([test "${ac_cv_sse_inline}" != "no" -a "${SYS}" != "solaris"], [
1260 AC_DEFINE(CAN_COMPILE_SSE, 1,
1261 [Define to 1 if SSE inline assembly is available.])
1264 AC_CACHE_CHECK([if $CC groks SSE2 inline assembly],
1265 [ac_cv_sse2_inline],
1266 [CFLAGS="${CFLAGS_save}"
1267 AC_TRY_COMPILE(,[void *p;asm volatile("punpckhqdq %%xmm1,%%xmm2"::"r"(p));],
1268 ac_cv_sse2_inline=yes, ac_cv_sse2_inline=no)])
1269 AS_IF([test "${ac_cv_sse2_inline}" != "no" -a "${SYS}" != "solaris"], [
1270 AC_DEFINE(CAN_COMPILE_SSE2, 1,
1271 [Define to 1 if SSE2 inline assembly is available.])
1276 AC_CACHE_CHECK([if $CC groks SSE3 inline assembly],
1277 [ac_cv_sse3_inline],
1278 [CFLAGS="${CFLAGS_save}"
1279 AC_TRY_COMPILE(,[void *p;asm volatile("movsldup %%xmm1,%%xmm0"::"r"(p));],
1280 ac_cv_sse3_inline=yes, ac_cv_sse3_inline=no)])
1281 AS_IF([test "${ac_cv_sse3_inline}" != "no"], [
1282 AC_DEFINE(CAN_COMPILE_SSE3, 1,
1283 [Define to 1 if SSE3 inline assembly is available.]) ])
1285 AC_CACHE_CHECK([if $CC groks SSSE3 inline assembly],
1286 [ac_cv_ssse3_inline],
1287 [CFLAGS="${CFLAGS_save}"
1288 AC_TRY_COMPILE(,[void *p;asm volatile("pabsw %%xmm0,%%xmm0"::"r"(p));],
1289 ac_cv_ssse3_inline=yes, ac_cv_ssse3_inline=no)])
1290 AS_IF([test "${ac_cv_ssse3_inline}" != "no"], [
1291 AC_DEFINE(CAN_COMPILE_SSSE3, 1,
1292 [Define to 1 if SSSE3 inline assembly is available.]) ])
1295 AC_CACHE_CHECK([if $CC groks SSE4.1 inline assembly],
1296 [ac_cv_sse4_1_inline],
1297 [CFLAGS="${CFLAGS_save}"
1298 AC_TRY_COMPILE(,[void *p;asm volatile("pmaxsb %%xmm1,%%xmm0"::"r"(p));],
1299 ac_cv_sse4_1_inline=yes, ac_cv_sse4_1_inline=no)])
1300 AS_IF([test "${ac_cv_sse4_1_inline}" != "no"], [
1301 AC_DEFINE(CAN_COMPILE_SSE4_1, 1,
1302 [Define to 1 if SSE4_1 inline assembly is available.]) ])
1305 AC_CACHE_CHECK([if $CC groks SSE4.2 inline assembly],
1306 [ac_cv_sse4_2_inline],
1307 [CFLAGS="${CFLAGS_save}"
1308 AC_TRY_COMPILE(,[void *p;asm volatile("pcmpgtq %%xmm1,%%xmm0"::"r"(p));],
1309 ac_cv_sse4_2_inline=yes, ac_cv_sse4_2_inline=no)])
1310 AS_IF([test "${ac_cv_sse4_2_inline}" != "no"], [
1311 AC_DEFINE(CAN_COMPILE_SSE4_2, 1,
1312 [Define to 1 if SSE4_2 inline assembly is available.]) ])
1315 AC_CACHE_CHECK([if $CC groks SSE4A inline assembly],
1316 [ac_cv_sse4a_inline],
1317 [CFLAGS="${CFLAGS_save}"
1318 AC_TRY_COMPILE(,[void *p;asm volatile("insertq %%xmm1,%%xmm0"::"r"(p));],
1319 ac_cv_sse4a_inline=yes, ac_cv_sse4a_inline=no)])
1320 AS_IF([test "${ac_cv_sse4a_inline}" != "no"], [
1321 AC_DEFINE(CAN_COMPILE_SSE4A, 1,
1322 [Define to 1 if SSE4A inline assembly is available.]) ])
1324 AC_SUBST(SSE2_CFLAGS)
1325 AM_CONDITIONAL([HAVE_SSE2], [test "$have_sse2" = "yes"])
1328 AC_CACHE_CHECK([if $CC groks 3D Now! inline assembly],
1329 [ac_cv_3dnow_inline],
1330 [CFLAGS="${CFLAGS_save}"
1331 AC_TRY_COMPILE(,[void *p;asm volatile("pfadd %%mm1,%%mm2"::"r"(p));],
1332 ac_cv_3dnow_inline=yes, ac_cv_3dnow_inline=no)])
1333 AS_IF([test "${ac_cv_3dnow_inline}" != "no"], [
1334 AC_DEFINE(CAN_COMPILE_3DNOW, 1,
1335 [Define to 1 if 3D Now! inline assembly is available.])
1338 AM_CONDITIONAL([HAVE_3DNOW], [test "$have_3dnow" = "yes"])
1342 [ --disable-neon disable NEON optimizations (default auto)],, [
1343 AS_IF([test "${host_cpu}" = "arm"], [enable_neon="yes"] ,[enable_neon="no"])
1345 AS_IF([test "${enable_neon}" != "no"], [
1346 AC_CACHE_CHECK([if $CC groks NEON inline assembly], [ac_cv_neon_inline], [
1347 CFLAGS="${CFLAGS_save} -mfpu=neon"
1350 asm volatile("vqmovun.s64 d0, q1":::"d0");
1351 asm volatile("ssat r0, #1, r0":::"r0"); /* assume ARMv6 */
1354 ac_cv_neon_inline="-mfpu=neon"
1356 ac_cv_neon_inline="no"
1358 CFLAGS="${CFLAGS_save}"
1360 ARM_NEON_CFLAGS="$ac_cv_neon_inline"
1362 ac_cv_neon_inline="no"
1364 AC_SUBST(ARM_NEON_CFLAGS)
1365 AM_CONDITIONAL(HAVE_ARM_NEON, [test "${ac_cv_neon_inline}" != "no"])
1368 AC_ARG_ENABLE(altivec,
1369 [ --disable-altivec disable AltiVec optimizations (default auto)],, [
1370 AS_IF([test "${host_cpu}" = "powerpc"],
1371 [enable_altivec=yes], [enable_altivec=no])
1374 AS_IF([test "${enable_altivec}" = "yes"], [
1375 ARCH="${ARCH} altivec";
1376 AC_CACHE_CHECK([if $CC groks AltiVec inline assembly],
1377 [ac_cv_altivec_inline],
1378 [CFLAGS="${CFLAGS_save}"
1379 AC_TRY_COMPILE(,[asm volatile("vperm 0,1,2,3");],
1380 ac_cv_altivec_inline="yes",
1381 [CFLAGS="${CFLAGS_save} -Wa,-m7400"
1382 AC_TRY_COMPILE(,[asm volatile("vperm 0,1,2,3");],
1383 [ac_cv_altivec_inline="-Wa,-m7400"],
1384 ac_cv_altivec_inline=no)
1386 AS_IF([test "${ac_cv_altivec_inline}" != "no"], [
1387 AC_DEFINE(CAN_COMPILE_ALTIVEC, 1,
1388 [Define to 1 if AltiVec inline assembly is available.])
1389 AS_IF([test "${ac_cv_altivec_inline}" != "yes"], [
1390 VLC_ADD_CFLAGS([idctaltivec],[${ac_cv_altivec_inline}])
1391 VLC_ADD_CFLAGS([motionaltivec],[${ac_cv_altivec_inline}])
1392 VLC_ADD_CFLAGS([memcpyaltivec],[${ac_cv_altivec_inline}])
1393 VLC_ADD_CFLAGS([i420_yuy2_altivec],[${ac_cv_altivec_inline}])
1394 VLC_ADD_CFLAGS([libvlccore],[${ac_cv_altivec_inline}])
1399 dnl The AltiVec C extensions
1401 dnl There are several possible cases:
1402 dnl - OS X PPC, gcc 4.x: use -mpim-altivec -force_cpusubtype_ALL, don't
1403 dnl need <altivec.h>
1404 dnl - OS X PPC, gcc 3.x: need -faltivec, don't need <altivec.h>
1405 dnl - Linux PPC, gcc 3.4, 4.x: need <altivec.h> which requires -maltivec
1406 dnl - Linux PPC, gcc 3.3: need <altivec.h> and -maltivec -mabi=altivec
1407 dnl - Linux PPC, gcc 3.x: need <altivec.h> and -fvec
1408 dnl - Others: test should fail
1409 AC_CACHE_CHECK([if \$CC groks AltiVec C extensions],
1411 [# OS X/PPC test (gcc 4.x)
1412 CFLAGS="${CFLAGS_save} -mpim-altivec -force_cpusubtype_ALL"
1413 AC_TRY_COMPILE([vector unsigned char foo;],
1414 [vec_ld(0, (unsigned char *)0);],
1415 [ac_cv_c_altivec="-mpim-altivec -force_cpusubtype_ALL"],
1416 [# OS X/PPC test (gcc 3.x)
1417 CFLAGS="${CFLAGS_save} -faltivec"
1418 AC_TRY_COMPILE([vector unsigned char foo;],
1419 [vec_ld(1 * sizeof(vector float), (unsigned char *)0);],
1420 [ac_cv_c_altivec="-faltivec"],
1421 dnl Below this are the Linux tests
1422 [# Linux/PPC test (gcc 4.x)
1423 CFLAGS="${CFLAGS_save} -maltivec"
1424 AC_TRY_COMPILE([#include <altivec.h>],
1425 [vec_ld(0, (unsigned char *)0);],
1426 [ac_cv_c_altivec="-maltivec"],
1427 [# Linux/PPC test (gcc 3.3)
1428 CFLAGS="${CFLAGS_save} -maltivec -mabi=altivec"
1429 AC_TRY_COMPILE([#include <altivec.h>],
1430 [vec_ld(0, (unsigned char *)0);],
1432 ac_cv_c_altivec_abi="-maltivec -mabi=altivec"],
1433 [# Linux/PPC test (gcc 3.3)
1434 CFLAGS="${CFLAGS_save} -fvec"
1435 AC_TRY_COMPILE([#include <altivec.h>],
1436 [vec_ld(0, (unsigned char *)0);],
1437 [ac_cv_c_altivec="-fvec"],
1438 [ac_cv_c_altivec=no])
1443 CFLAGS="${CFLAGS_save}"
1445 AS_IF([test "${ac_cv_c_altivec}" != "no"], [
1446 CPPFLAGS="${CPPFLAGS_save} ${ac_cv_c_altivec}"
1449 AC_CHECK_HEADERS(altivec.h)
1450 CPPFLAGS="${CPPFLAGS_save}"
1452 AS_IF([test "${ac_cv_c_altivec}" != "no"], [
1453 AC_DEFINE(CAN_COMPILE_C_ALTIVEC, 1,
1454 [Define to 1 if C AltiVec extensions are available.])
1455 VLC_ADD_CFLAGS([libvlccore],[${ac_cv_c_altivec}])
1456 VLC_ADD_CFLAGS([idctaltivec motionaltivec],[${ac_cv_c_altivec}])
1457 VLC_ADD_CFLAGS([i420_yuy2_altivec memcpyaltivec deinterlace],[${ac_cv_c_altivec} ${ac_cv_c_altivec_abi}])
1461 AC_CACHE_CHECK([if linker needs -framework vecLib],
1463 [LDFLAGS="${LDFLAGS_vlc} -Wl,-framework,vecLib"
1464 AC_TRY_LINK([],,ac_cv_ld_altivec=yes,ac_cv_ld_altivec=no)
1465 LDFLAGS="${LDFLAGS_save}"
1467 AS_IF([test "${ac_cv_ld_altivec}" != "no"], [
1468 VLC_ADD_LDFLAGS([libvlccore idctaltivec motionaltivec memcpyaltivec],[-Wl,-framework,vecLib])
1471 AM_CONDITIONAL([HAVE_ALTIVEC], [test "$have_altivec" = "yes"])
1474 dnl Special arch tuning
1477 [ --with-tuning=ARCH enable special tuning for an architecture
1478 (default Pentium 2 on IA-32 and G4 on PPC)])
1479 if test -n "${with_tuning}"; then
1480 if test "${with_tuning}" != "no"; then
1481 CFLAGS_TUNING="-mtune=${with_tuning}"
1484 if test "${SYS}" = "darwin" -a "${host_cpu}" != "powerpc"; then
1485 CFLAGS_TUNING="-march=prescott -mtune=generic"
1486 elif test "${host_cpu}" = "i686" -o "${host_cpu}" = "i586" -o "${host_cpu}" = "i486" -o "${host_cpu}" = "i386"; then
1487 CFLAGS_TUNING="-mtune=pentium2"
1488 elif test "${host_cpu}" = "x86_64"; then
1489 CFLAGS_TUNING="-mtune=athlon64"
1490 elif test "${host_cpu}" = "powerpc"; then
1491 CFLAGS_TUNING="-mtune=G4";
1495 dnl NOTE: this can't be cached cleanly
1496 AS_IF([test "${CFLAGS_TUNING}"],
1497 [CFLAGS_save="${CFLAGS}"
1498 CFLAGS="${CFLAGS} ${CFLAGS_TUNING}"
1500 AC_MSG_CHECKING([whether $CC accepts ${CFLAGS_TUNING}])
1501 AC_COMPILE_IFELSE([ ],
1503 [CFLAGS_TUNING=""; tuning="no"
1504 AS_IF([test "${with_tuning}"],
1505 [AC_MSG_ERROR([requested tuning not supported])])])
1507 AC_MSG_RESULT([$tuning])
1508 CFLAGS="${CFLAGS_save}"
1514 AC_ARG_ENABLE(optimize-memory,
1515 [ --enable-optimize-memory optimize memory usage over performance])
1516 if test "${enable_optimize_memory}" = "yes"; then
1517 AC_DEFINE(OPTIMIZE_MEMORY, 1, Define if you want to optimize memory usage over performance)
1521 dnl Enable/disable optimizations
1523 AC_ARG_ENABLE(optimizations,
1524 [ --disable-optimizations disable compiler optimizations (default enabled)])
1525 if test "${enable_optimizations}" != "no"; then
1526 if test "${enable_optimize_memory}" = "yes"; then
1527 enable_optimizations="size"
1529 enable_optimizations="speed"
1536 AC_ARG_ENABLE(debug,
1537 [ --enable-debug debug mode (default disabled)])
1538 test "${enable_debug}" != "yes" && enable_debug="no"
1540 [Define to 1 if debug code should NOT be compiled])
1541 AS_IF([test "x${enable_debug}" = "xno"], [
1544 AC_CHECK_HEADERS([valgrind/valgrind.h])
1548 dnl Allow running as root (useful for people running on embedded platforms)
1550 AC_ARG_ENABLE(run-as-root,
1551 [ --enable-run-as-root allow running VLC as root (default disabled)])
1552 AS_IF([test "${enable_run_as_root}" = "yes"],[
1553 AC_DEFINE(ALLOW_RUN_AS_ROOT, 1,
1554 [Define to 1 to allow running VLC as root (uid 0).])
1560 AC_ARG_ENABLE(coverage,
1561 [ --enable-coverage build for test coverage (default disabled)],,
1562 [enable_coverage="no"])
1563 AS_IF([test "${enable_coverage}" != "no"], [
1564 CFLAGS="-fprofile-arcs -ftest-coverage ${CFLAGS}"
1565 CXXFLAGS="-fprofile-arcs -ftest-coverage ${CXXFLAGS}"
1566 LDFLAGS="-lgcov ${LDFLAGS}"
1568 CFLAGS_save="${CFLAGS}"
1569 CXXFLAGS_save="${CXXFLAGS}"
1570 LDFLAGS_save="${LDFLAGS}"
1577 [ --enable-sout Stream output modules (default enabled)])
1578 AS_IF([test "${enable_sout}" != "no"], [
1579 AC_DEFINE(ENABLE_SOUT, 1, [Define to 1 for stream output support.])
1581 AM_CONDITIONAL(ENABLE_SOUT, [test "${enable_sout}" != "no"])
1585 AS_HELP_STRING([--enable-lua],[lua playlist, metafetcher and interface
1586 plugins (default enabled)]))
1587 if test "${enable_lua}" != "no"
1589 PKG_CHECK_MODULES(LUA, lua5.1,
1592 AC_MSG_WARN([lua5.1 not found, trying lua >= 5.1 instead])
1593 PKG_CHECK_MODULES(LUA, lua >= 5.1,
1597 AC_CHECK_HEADERS([lua.h lauxlib.h lualib.h],
1600 AC_CHECK_LIB( lua5.1 , luaL_newstate,
1601 [LUA_LIBS="-llua5.1"],
1602 AC_CHECK_LIB( lua51 , luaL_newstate,
1603 [LUA_LIBS="-llua51"],
1604 AC_CHECK_LIB( lua , luaL_newstate,
1612 if test "x${have_lua}" = "xyes" ; then
1613 VLC_ADD_LIBS([lua],[$LUA_LIBS])
1614 VLC_ADD_CFLAGS([lua],[$LUA_CFLAGS])
1616 AC_MSG_ERROR([Could not find lua. Lua is needed for some interfaces (rc, telnet, http) as well as many other custom scripts. Use --disable-lua to ignore this error.])
1618 AC_ARG_VAR([LUAC], [LUA byte compiler])
1619 AC_PATH_PROGS(LUAC,[${LUAC} luac], [false])
1620 AS_IF([test "${LUAC}" = "false"], [
1621 AC_MSG_ERROR([Could not find the LUA byte compiler.])
1624 AM_CONDITIONAL(BUILD_LUA, [test "${have_lua}" = "yes"])
1629 AC_ARG_ENABLE(httpd,
1630 [ --enable-httpd HTTP daemon (default enabled)])
1631 if test "${enable_httpd}" != "no"
1633 VLC_ADD_PLUGIN([oldhttp])
1634 AC_DEFINE(ENABLE_HTTPD, 1, Define if you want the HTTP dameon support)
1636 AM_CONDITIONAL(BUILD_HTTPD, [test "${enable_httpd}" != "no"])
1639 dnl libproxy support
1641 AC_ARG_ENABLE(libproxy,
1642 [ --enable-libproxy libproxy support (default auto)])
1643 AS_IF([test "${enable_libproxy}" != "no"], [
1644 PKG_CHECK_MODULES(LIBPROXY, libproxy-1.0, [
1645 AC_DEFINE(HAVE_LIBPROXY, 1, [Define if libproxy is available])
1646 VLC_ADD_CFLAGS([access_http],[$LIBPROXY_CFLAGS])
1647 VLC_ADD_LIBS([access_http],[$LIBPROXY_LIBS])
1649 AS_IF([test "x${enable_libproxy}" != "x"], [
1650 AC_MSG_ERROR([libproxy could not be found on your system])
1657 dnl VideoLAN manager
1660 [ --enable-vlm VideoLAN manager (default enabled)],,
1661 [enable_vlm="${enable_sout}"])
1662 AS_IF([test "${enable_vlm}" != "no"], [
1663 AS_IF([test "${enable_sout}" = "no"], [
1664 AC_MSG_ERROR([VLM requires the stream output. Do not use --disable-sout.])
1666 AC_DEFINE(ENABLE_VLM, 1, [Define if you want the VideoLAN manager support])
1668 AM_CONDITIONAL([ENABLE_VLM], [test "${enable_vlm}" != "no"])
1671 dnl Growl notification plugin
1673 AC_ARG_ENABLE(growl,
1674 [ --enable-growl growl notification plugin (default disabled)],,
1676 AS_IF([test "${enable_growl}" != "no"], [
1677 VLC_ADD_PLUGIN([growl_udp])
1678 AC_CHECK_HEADERS(Growl/GrowlDefines.h, [
1679 VLC_ADD_PLUGIN([growl])
1680 VLC_ADD_LDFLAGS([growl], [-Wl,-framework,Growl,-framework,AppKit])
1681 VLC_ADD_OBJCFLAGS([growl], [-fobjc-exceptions] )
1687 dnl Libnotify notification plugin
1689 PKG_ENABLE_MODULES_VLC([NOTIFY], [], [libnotify], [libnotify notification], [auto])
1694 AC_ARG_ENABLE(taglib,
1695 [ --disable-taglib Taglib support (default enabled) ])
1696 AS_IF([test "${enable_taglib}" != "no"],[
1697 PKG_CHECK_MODULES(TAGLIB, taglib >= 1.5,
1698 [ VLC_ADD_PLUGIN([taglib])
1699 VLC_ADD_LIBS([taglib],[$TAGLIB_LIBS -lz])
1700 VLC_ADD_CXXFLAGS([taglib],[$TAGLIB_CFLAGS])
1702 AC_CHECK_HEADERS(taglib/mp4coverart.h)
1705 [AC_MSG_WARN(TagLib library not found)])
1712 EXTEND_HELP_STRING([Input plugins:])
1716 AC_ARG_ENABLE(live555,
1717 [ --enable-live555 live555 RTSP input plugin (default enabled)])
1718 if test "${enable_live555}" != "no"; then
1719 AC_ARG_WITH(live555-tree,
1720 [ --with-live555-tree=PATH live.com tree for static linking])
1723 dnl test for --with-live555-tree
1725 if test -z "${with_live555_tree}" -a "${CXX}" != ""; then
1727 CPPFLAGS_save="${CPPFLAGS}"
1728 if test -z "${CONTRIB_DIR}"; then
1729 CPPFLAGS_live555="-I/usr/include/liveMedia -I/usr/include/groupsock -I/usr/include/BasicUsageEnvironment -I/usr/include/UsageEnvironment"
1731 CPPFLAGS_live555="-I${CONTRIB_DIR}/include/liveMedia -I${CONTRIB_DIR}/include/groupsock -I${CONTRIB_DIR}/include/BasicUsageEnvironment -I${CONTRIB_DIR}/include/UsageEnvironment"
1733 if test "${SYS}" = "solaris"; then
1734 CPPFLAGS_live555="${CPPFLAGS_live555} -DSOLARIS"
1736 CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_live555}"
1738 AC_CHECK_HEADERS(liveMedia_version.hh, [
1739 AC_MSG_CHECKING(for liveMedia version >= 1275091200 )
1741 [#include <liveMedia_version.hh>
1742 #ifdef LIVEMEDIA_LIBRARY_VERSION_INT
1743 #if LIVEMEDIA_LIBRARY_VERSION_INT < 1275091200
1747 [AC_MSG_RESULT([no])
1748 if test "${enable_live555}" == "yes"; then
1749 AC_MSG_ERROR([Your version of liveMedia is too old: you may get a more recent one from http://www.live555.com/liveMedia.
1750 lternatively you can use --disable-live555 to disable the liveMedia plugin.])
1752 AC_MSG_WARN([Your version of liveMedia is too old: you may get a more recent one from http://www.live555.com/liveMedia.])
1755 AC_MSG_RESULT([yes])
1756 other_libs="-lgroupsock -lBasicUsageEnvironment -lUsageEnvironment"
1757 other_libs_pic="-lgroupsock_pic -lBasicUsageEnvironment_pic -lUsageEnvironment_pic"
1758 if test "${SYS}" = "mingw32"; then
1759 # add ws2_32 for closesocket, select, recv
1760 other_libs="$other_libs -lws2_32"
1761 elif test "${SYS}" = "mingwce"; then
1762 # add ws2 for closesocket, select, recv
1763 other_libs="$other_libs -lws2"
1766 dnl We need to check for pic because live555 don't provide shared libs
1767 dnl and we want to build a plugins so we need -fPIC on some arch.
1768 VLC_ADD_CXXFLAGS([live555], [${CPPFLAGS_live555}])
1769 AC_CHECK_LIB(liveMedia_pic, main, [
1770 VLC_ADD_PLUGIN([live555])
1771 VLC_ADD_LIBS([live555], [-lliveMedia_pic ${other_libs_pic}])
1773 AC_CHECK_LIB(liveMedia, main, [
1774 VLC_ADD_PLUGIN([live555])
1775 VLC_ADD_LIBS([live555], [-lliveMedia ${other_libs}])
1776 ],[],[${other_libs}]) ],[${other_libs_pic}])
1778 CPPFLAGS="${CPPFLAGS_save}"
1783 AC_MSG_CHECKING(for liveMedia/libliveMedia.a in ${with_live555_tree})
1784 real_live555_tree="`cd ${with_live555_tree} 2>/dev/null && pwd`"
1785 if test -z "${real_live555_tree}"; then
1786 dnl The given directory can't be found
1788 AC_MSG_ERROR([cannot cd to ${with_live555_tree}])
1790 if test -f "${real_live555_tree}/liveMedia/libliveMedia.a"; then
1791 AC_MSG_RESULT(${real_live555_tree}/liveMedia/libliveMedia.a)
1793 AC_CHECK_HEADERS(${real_live555_tree}/liveMedia/include/liveMedia_version.hh,[
1794 AC_MSG_CHECKING(for liveMedia version >= 1275091200 )
1796 [#include "${real_live555_tree}/liveMedia/include/liveMedia_version.hh"
1797 #ifdef LIVEMEDIA_LIBRARY_VERSION_INT
1798 #if LIVEMEDIA_LIBRARY_VERSION_INT < 1275091200
1802 [AC_MSG_RESULT([no])
1803 AC_MSG_ERROR([Your version of liveMedia is too old: you may get a more recent one from http://www.live555.com/liveMedia.
1804 lternatively you can use --disable-live555 to disable the liveMedia plugin.])
1806 AC_MSG_RESULT([yes])
1810 VLC_ADD_PLUGIN([live555])
1812 if test "${SYS}" = "mingw32"; then
1813 # add ws2_32 for closesocket, select, recv
1814 VLC_ADD_LIBS([live555],[-lws2_32])
1817 VLC_ADD_LIBS([live555],[-L${real_live555_tree}/UsageEnvironment -lUsageEnvironment])
1818 VLC_ADD_LIBS([live555],[-L${real_live555_tree}/BasicUsageEnvironment -lBasicUsageEnvironment])
1819 VLC_ADD_LIBS([live555],[-L${real_live555_tree}/groupsock -lgroupsock])
1820 VLC_ADD_LIBS([live555],[-L${real_live555_tree}/liveMedia -lliveMedia])
1822 VLC_ADD_CXXFLAGS([live555],[-I${real_live555_tree}/BasicUsageEnvironment/include])
1823 VLC_ADD_CXXFLAGS([live555],[-I${real_live555_tree}/groupsock/include])
1824 VLC_ADD_CXXFLAGS([live555],[-I${real_live555_tree}/liveMedia/include])
1825 VLC_ADD_CXXFLAGS([live555],[-I${real_live555_tree}/UsageEnvironment/include ])
1826 if test "${SYS}" = "solaris"; then
1827 VLC_ADD_CXXFLAGS([live555],[-DSOLARIS])
1830 dnl The given live555 wasn't built
1832 if test "${enable_live555}" = "yes"; then
1833 AC_MSG_ERROR([cannot find ${real_live555_tree}/liveMedia/libliveMedia.a, make sure you compiled live555 in ${with_live555_tree}])
1840 dnl - special access module for dc1394 input
1841 dnl - dv module: digital video module check for libraw1394
1843 PKG_ENABLE_MODULES_VLC([DC1394], [], [libraw1394 >= 2.0.1 libdc1394-2 >= 2.1.0], [dc1394 access module], [auto])
1844 PKG_ENABLE_MODULES_VLC([DV], [access_dv], [libraw1394 >= 2.0.1 libavc1394 >= 0.5.3], [DV input module], [auto])
1847 dnl dvdread module: check for libdvdread
1849 dnl prepend -ldvdcss on OS that need it
1850 AS_CASE(["${SYS}"], [mingw32|darwin|beos], [VLC_ADD_LIBS([dvdread], [-ldvdcss])])
1851 PKG_ENABLE_MODULES_VLC([DVDREAD], [], [dvdread], [dvdread input module], [auto])
1854 dnl libdvdnav plugin
1856 AC_ARG_ENABLE(dvdnav,
1857 [ --enable-dvdnav dvdnav input module (default enabled)])
1858 if test "${enable_dvdnav}" != "no"
1860 dnl prepend -ldvdcss on OS that need it
1861 AS_CASE(["${SYS}"], [mingw32|darwin|beos], [VLC_ADD_LIBS([dvdnav], [-ldvdcss])])
1863 DVDNAV_PATH="${PATH}"
1864 AC_ARG_WITH(dvdnav-config-path,
1865 [ --with-dvdnav-config-path=PATH dvdnav-config path (default search in \$PATH)],
1866 [ if test "${with_dvdnav_config_path}" != "no"
1868 DVDNAV_PATH="${with_dvdnav_config_path}:${PATH}"
1870 AC_PATH_PROG(DVDNAV_CONFIG, dvdnav-config, no, ${DVDNAV_PATH})
1871 if test "${DVDNAV_CONFIG}" != "no"
1873 VLC_ADD_PLUGIN([dvdnav])
1874 VLC_ADD_CFLAGS([dvdnav],[`${DVDNAV_CONFIG} --cflags`])
1875 VLC_ADD_LIBS([dvdnav],[`${DVDNAV_CONFIG} --libs`])
1876 AC_CHECK_LIB(dvdnav, dvdnav_get_video_resolution,
1877 AC_DEFINE(HAVE_DVDNAV_GET_VIDEO_RESOLUTION, 1, [Define if you have dvdnav_get_video_resolution.]),
1878 [], [${LIBS_dvdnav}])
1879 AC_CHECK_LIB(dvdnav, dvdnav_describe_title_chapters,
1880 AC_DEFINE(HAVE_DVDNAV_DESCRIBE_TITLE_CHAPTERS, 1, [Define if you have dvdnav_describe_title_chapters.]),
1881 [], [${LIBS_dvdnav}])
1886 dnl Windows DirectShow access module
1888 AC_ARG_ENABLE(dshow,
1889 [ --enable-dshow Win32 DirectShow support (default enabled on Win32)])
1890 if test "${enable_dshow}" != "no"
1892 if test "${SYS}" = "mingw32"
1895 AC_CHECK_HEADERS(dshow.h,
1896 [ VLC_ADD_PLUGIN([dshow])
1897 VLC_ADD_CXXFLAGS([dshow],[])
1898 VLC_ADD_LIBS([dshow],[-lole32 -loleaut32 -luuid]) ])
1904 dnl Windows DirectShow BDA access module
1907 AS_HELP_STRING([--enable-bda],[Win32 DirectShow BDA support (default
1908 enabled on Win32)]))
1909 if test "${enable_bda}" != "no"
1911 if test "${SYS}" = "mingw32"
1913 AC_CHECK_HEADERS(dshow.h,
1914 [ VLC_ADD_PLUGIN([bda])
1915 VLC_ADD_CXXFLAGS([bda],[])
1916 VLC_ADD_LIBS([bda],[-lstrmiids -lole32 -loleaut32 -luuid]) ])
1922 dnl Blu-ray Disc Support with libbluray
1924 PKG_ENABLE_MODULES_VLC([BLURAY], [libbluray], [libbluray], (libbluray for Blu-ray disc support ) )
1927 dnl OpenCV wrapper and example filters
1929 PKG_ENABLE_MODULES_VLC([OPENCV], [opencv_example], [opencv], (OpenCV (computer vision) filter), [off])
1933 dnl libsmbclient plugin
1936 [ --enable-smb smb input module (default enabled)])
1937 if test "${enable_smb}" != "no"; then
1938 AC_CHECK_HEADERS(libsmbclient.h,
1939 [ VLC_ADD_PLUGIN([access_smb])
1940 VLC_ADD_LIBS([access_smb],[-lsmbclient]) ],
1941 [ if test -n "${enable_smb}"; then
1942 AC_MSG_ERROR([cannot find libsmbclient headers])
1948 dnl sftp access support
1951 [ --enable-sftp sftp input access module (default disable)])
1952 if test "${enable_sftp}" = "yes"; then
1953 AC_CHECK_HEADERS(libssh2.h, [
1954 VLC_ADD_PLUGIN([access_sftp])
1955 VLC_ADD_LIBS([access_sftp], [-lssh2])
1960 dnl libdvbpsi ts demux/mux
1962 AC_ARG_ENABLE(dvbpsi,
1963 [ --enable-dvbpsi dvbpsi ts mux and demux module (default enabled)])
1965 if test "${enable_dvbpsi}" != "no"
1968 [ --with-dvbpsi=PATH libdvbpsi headers and libraries])
1970 [ --with-dvbpsi-tree=PATH libdvbpsi tree for static linking])
1971 case "${with_dvbpsi}" in
1973 if test -z "${with_dvbpsi_tree}"
1975 AC_CHECK_HEADERS(dvbpsi/dr.h,
1976 [ VLC_ADD_PLUGIN([ts])
1977 if test "${enable_sout}" != "no"; then
1978 VLC_ADD_PLUGIN([mux_ts])
1980 VLC_ADD_LIBS([mux_ts ts dvb],[-ldvbpsi])
1982 [ AC_MSG_WARN([cannot find libdvbpsi headers]) ],
1983 [#if defined( HAVE_STDINT_H )
1984 # include <stdint.h>
1985 #elif defined( HAVE_INTTYPES_H )
1986 # include <inttypes.h>
1988 #include <dvbpsi/dvbpsi.h>
1989 #include <dvbpsi/descriptor.h>
1990 #include <dvbpsi/pat.h>
1991 #include <dvbpsi/pmt.h>])
1993 AC_MSG_CHECKING(for libdvbpsi.a in ${with_dvbpsi_tree})
1994 real_dvbpsi_tree="`cd ${with_dvbpsi_tree} 2>/dev/null && pwd`"
1995 if test -z "${real_dvbpsi_tree}"
1997 dnl The given directory can't be found
1999 AC_MSG_ERROR([cannot cd to ${with_dvbpsi_tree}])
2001 if test -f "${real_dvbpsi_tree}/src/.libs/libdvbpsi.a"
2003 dnl Use a custom libdvbpsi
2004 AC_MSG_RESULT(${real_dvbpsi_tree}/src/.libs/libdvbpsi.a)
2005 VLC_ADD_PLUGIN([ts])
2006 if test "${enable_sout}" != "no"; then
2007 VLC_ADD_PLUGIN([mux_ts])
2009 VLC_ADD_CPPFLAGS([mux_ts ts dvb],[-I${real_dvbpsi_tree}/src])
2010 VLC_ADD_LIBS([mux_ts ts dvb],[${real_dvbpsi_tree}/src/.libs/libdvbpsi.a])
2013 dnl The given libdvbpsi wasn't built
2015 AC_MSG_ERROR([cannot find ${real_dvbpsi_tree}/src/.libs/libdvbpsi.a, make sure you compiled libdvbpsi in ${with_dvbpsi_tree}])
2020 dnl Compile without dvbpsi
2023 AC_MSG_CHECKING(for dvbpsi headers in ${with_dvbpsi})
2024 if test -z "${with_dvbpsi}"
2029 LDFLAGS_test="-L${with_dvbpsi}/lib"
2030 CPPFLAGS_test="-I${with_dvbpsi}/include"
2032 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_test}"
2033 AC_CHECK_HEADERS([dvbpsi/dr.h],[
2034 VLC_ADD_PLUGIN([ts])
2035 if test "${enable_sout}" != "no"; then
2036 AC_CHECK_LIB(dvbpsi, dvbpsi_SDTServiceAddDescriptor,
2037 [VLC_ADD_PLUGIN([mux_ts])], [], [${LDFLAGS_test} -ldvbpsi])
2039 VLC_ADD_CPPFLAGS([mux_ts ts dvb],[${CPPFLAGS_test}])
2040 VLC_ADD_LIBS([mux_ts ts dvb],[${LDFLAGS_test} -ldvbpsi])
2043 if test -n "${enable_dvbpsi}"
2045 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.6])
2048 [#if defined( HAVE_STDINT_H )
2049 # include <stdint.h>
2050 #elif defined( HAVE_INTTYPES_H )
2051 # include <inttypes.h>
2053 #include <dvbpsi/dvbpsi.h>
2054 #include <dvbpsi/descriptor.h>
2055 #include <dvbpsi/pat.h>
2056 #include <dvbpsi/pmt.h>])
2057 CPPFLAGS="${CPPFLAGS_save}"
2060 AC_CHECK_LIB(dvbpsi, dvbpsi_GenSDTSections, [
2061 AC_DEFINE(HAVE_DVBPSI_SDT, 1, [Define if you have dvbpsi_GenSDTSections.])
2062 ], [], [${LIBS_ts}])
2067 dnl Video4Linux2 plugin
2070 [ --enable-v4l2 Video4Linux2 input support (default enabled)])
2071 if test "${enable_v4l2}" != "no"
2074 [ --with-v4l2=PATH path to a v4l2-enabled kernel tree],[],[])
2075 if test "${with_v4l2}" != "no" -a -n "${with_v4l2}"
2077 VLC_ADD_CPPFLAGS([v4l2],[-I${with_v4l2}/include])
2080 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_v4l2}"
2081 AC_CHECK_HEADERS(linux/videodev2.h sys/videoio.h, [
2082 VLC_ADD_PLUGIN([v4l2])
2084 CPPFLAGS="${CPPFLAGS_save}"
2088 dnl libv4l2 support for video4linux.
2090 AC_ARG_ENABLE( libv4l2,
2091 [ --enable-libv4l2 Libv4l2 Video4Linux2 support (default enabled)])
2092 if test "${enable_libv4l2}" != "no" -a "${enable_v4l2}" != "no"
2094 PKG_CHECK_MODULES( LIBV4L2, libv4l2, [
2095 VLC_ADD_LDFLAGS([v4l2],[${LIBV4L2_LIBS}])
2096 VLC_ADD_CFLAGS([v4l2],[${LIBV4L2_CFLAGS}])
2097 AC_DEFINE(HAVE_LIBV4L2, 1, Define if libv4l2 is available)],
2098 AC_MSG_WARN([LibV4L2 support disabled because libv4l2 development headers were not found])
2103 dnl special access module for Hauppauge PVR cards
2106 [ --enable-pvr PVR cards access module (default disabled)])
2107 if test "${enable_pvr}" = "yes"
2109 VLC_ADD_PLUGIN([pvr])
2110 AC_ARG_WITH(videodev2,
2111 [ --with-videodev2=FILE Location of videodev2.h file (default /usr/include/linux/videodev2.h)],[],[])
2112 if test "${with_videodev2}" != "no" -a -n "${with_videodev2}"
2114 AC_DEFINE_UNQUOTED(VIDEODEV2_H_FILE, "${with_videodev2}", [Location of videodev2.h])
2117 AC_CACHE_CHECK([for new linux/videodev2.h],
2118 [ac_cv_new_linux_videodev2_h],
2120 #include <sys/types.h>
2121 # ifdef VIDEODEV2_H_FILE
2122 # include VIDEODEV2_H_FILE
2124 # include <linux/videodev2.h>
2127 [struct v4l2_ext_controls ctrls; ctrls.ctrl_class = V4L2_CTRL_CLASS_MPEG; ],
2128 ac_cv_new_linux_videodev2_h=yes,
2129 ac_cv_new_linux_videodev2_h=no)])
2130 if test "${ac_cv_new_linux_videodev2_h}" != "no"; then
2131 AC_DEFINE(HAVE_NEW_LINUX_VIDEODEV2_H, 1, [Define if new linux/videodev2.h present])
2136 dnl gnomeVFS access module
2138 PKG_ENABLE_MODULES_VLC([GNOMEVFS], [access_gnomevfs], [gnome-vfs-2.0], [GnomeVFS access module], [auto])
2144 [ --enable-vcdx VCD with navigation via libvcdinfo (default disabled)])
2146 if test "${enable_vcdx}" = "yes"
2148 PKG_CHECK_MODULES(LIBCDIO, [libcdio >= 0.78.2 libiso9660 >= 0.72],
2149 [VLC_ADD_LIBS([vcdx],[$LIBCDIO_LIBS])
2150 VLC_ADD_CFLAGS([vcdx],[$LIBCDIO_CFLAGS])],
2151 [AC_MSG_ERROR([vcdx plugin requires libcdio >= 0.78.2 and libiso9660 >= 0.72])])
2152 PKG_CHECK_MODULES(LIBVCDINFO, libvcdinfo >= 0.7.22,
2153 [VLC_ADD_LIBS([vcdx],[$LIBVCDINFO_LIBS])
2154 VLC_ADD_CFLAGS([vcdx],[$LIBVCDINFO_CFLAGS])],
2155 [AC_MSG_ERROR([vcdx plugin requires libvcdinfo library >= 0.7.22])])
2156 VLC_ADD_PLUGIN([vcdx])
2160 dnl Built-in CD-DA and VCD module
2163 [ --enable-vcd built-in VCD and CD-DA (default enabled)])
2165 AC_ARG_ENABLE(libcddb,
2166 [ --enable-libcddb CDDB support for libcdio audio CD (default enabled)])
2168 if test "${enable_vcd}" != "no"
2170 AC_MSG_CHECKING(for cdrom_msf0 in linux/cdrom.h)
2171 AC_EGREP_HEADER(cdrom_msf0,linux/cdrom.h,[
2173 VLC_ADD_PLUGIN([vcd cdda])
2178 AC_MSG_CHECKING(for scsireq in sys/scsiio.h)
2179 AC_EGREP_HEADER(scsireq,sys/scsiio.h,[
2181 VLC_ADD_PLUGIN([vcd cdda])
2182 AC_DEFINE(HAVE_SCSIREQ_IN_SYS_SCSIIO_H, 1, For NetBSD VCD support)
2187 AC_MSG_CHECKING(for ioc_toc_header in sys/cdio.h)
2188 AC_EGREP_HEADER(ioc_toc_header ,sys/cdio.h,[
2190 VLC_ADD_PLUGIN([vcd cdda])
2191 AC_DEFINE(HAVE_IOC_TOC_HEADER_IN_SYS_CDIO_H, 1, For FreeBSD VCD support)
2196 if test "${SYS}" = "bsdi" -o "${SYS}" = "mingw32"
2198 VLC_ADD_PLUGIN([vcd cdda])
2201 if test "${SYS}" = "darwin"
2203 VLC_ADD_PLUGIN([vcd cdda])
2204 VLC_ADD_LDFLAGS([vcd vcdx cdda],[-Wl,-framework,IOKit,-framework,CoreFoundation])
2205 VLC_ADD_LIBS([vcdx cdda],[-liconv])
2208 if test "$enable_libcddb" != "no"; then
2209 PKG_CHECK_MODULES(LIBCDDB, libcddb >= 0.9.5, [
2211 AC_DEFINE(HAVE_LIBCDDB, 1, [Define this if you have libcddb installed])
2212 VLC_ADD_LIBS([cdda],[$LIBCDDB_LIBS])
2213 VLC_ADD_CFLAGS([cdda],[$LIBCDDB_CFLAGS])
2215 [AC_MSG_WARN(new enough libcddb not found. CDDB access disabled)
2221 dnl DVB-S/DVB-T/DVB-C satellite/teresterial/cable input using v4l2
2224 [ --enable-dvb DVB-S/T/C card support (default enabled)])
2226 if test "${enable_dvb}" != "no"
2228 AS_IF([test "${have_dvbpsi}" = "yes" ],[
2230 [ --with-dvb=PATH path to a dvb- and v4l2-enabled kernel tree],[],[])
2231 if test "${with_dvb}" != "no" -a -n "${with_dvb}"
2233 VLC_ADD_CFLAGS([dvb],[-I${with_dvb}/include])
2235 CPPFLAGS="${CPPFLAGS_save} -I${with_dvb}/include"
2236 AC_CHECK_HEADERS(linux/dvb/version.h linux/dvb/frontend.h, [
2237 VLC_ADD_PLUGIN([dvb])
2238 ],[AC_MSG_WARN(linux-dvb headers not found, dvb disabled)])
2239 CPPFLAGS="${CPPFLAGS_save}"
2241 AC_MSG_WARN([the dvb access module requires libdvbpsi])
2246 dnl Screen capture module
2248 AC_ARG_ENABLE(screen,
2249 [ --enable-screen Screen capture support (default enabled)])
2250 if test "${enable_screen}" != "no"; then
2251 if test "${SYS}" = "darwin"; then
2252 AC_CHECK_HEADERS(OpenGL/gl.h, [
2253 AC_CHECK_HEADERS(ApplicationServices/ApplicationServices.h, [
2254 VLC_ADD_PLUGIN([screen])
2255 VLC_ADD_LDFLAGS([screen],[-Wl,-framework,OpenGL,-framework,ApplicationServices])
2258 elif test "${SYS}" = "mingw32"; then
2259 VLC_ADD_PLUGIN([screen])
2260 VLC_ADD_LIBS([screen],[-lgdi32])
2261 elif test "${SYS}" = "mingwce"; then
2262 CPPFLAGS="${CPPFLAGS_save}"
2263 elif test "${SYS}" = "beos"; then
2264 VLC_ADD_PLUGIN([screen])
2265 VLC_ADD_CXXFLAGS([screen],[])
2266 VLC_ADD_LIBS([screen],[-lbe])
2274 AC_CHECK_FUNCS(inet_pton,[have_ipv6=yes],[
2275 AC_CHECK_LIB(nsl,inet_pton, [have_ipv6=yes])
2278 AS_IF([test "${have_ipv6}" = "yes"], [
2279 AC_DEFINE(HAVE_INET_PTON, 1, [Define to 1 if you have inet_pton().])])
2282 AC_CHECK_FUNCS(inet_ntop,[
2283 AC_DEFINE(HAVE_INET_NTOP, 1, [Define to 1 if you have inet_ntop().])])
2287 dnl ogg demux plugin
2289 PKG_ENABLE_MODULES_VLC([OGG], [], [ogg >= 1.0], [Ogg demux support], [auto])
2290 if test "${enable_sout}" != "no"; then
2291 PKG_ENABLE_MODULES_VLC([MUX_OGG], [], [ogg >= 1.0], [Ogg mux support], [auto])
2294 if test "${enable_sout}" != "no"; then
2295 dnl Check for libshout
2296 PKG_ENABLE_MODULES_VLC([SHOUT], [access_output_shout], [shout >= 2.1], [libshout output plugin], [auto])
2300 dnl matroska demux plugin
2303 [ --enable-mkv Matroska demux support (default enabled)])
2304 if test "${enable_mkv}" != "no" -a "${CXX}" != ""; then
2306 AC_CHECK_HEADERS(ebml/EbmlVersion.h, [
2307 AC_MSG_CHECKING(for libebml version >= 1.0.0)
2309 [#include <ebml/EbmlVersion.h>
2310 #ifdef LIBEBML_VERSION
2311 #if LIBEBML_VERSION >= 0x010000
2315 [AC_MSG_RESULT([yes])
2316 AC_CHECK_HEADERS(matroska/KaxVersion.h, [
2317 AC_MSG_CHECKING(for libmatroska version >= 1.0.0)
2319 [#include <matroska/KaxVersion.h>
2320 #ifdef LIBMATROSKA_VERSION
2321 #if LIBMATROSKA_VERSION >= 0x010000
2325 [AC_MSG_RESULT([yes])
2326 AC_CHECK_HEADERS(matroska/KaxAttachments.h)
2327 VLC_ADD_CXXFLAGS([mkv],[])
2328 if test "${SYS}" = "darwin"; then
2329 VLC_ADD_CXXFLAGS([mkv],[-O1])
2331 AC_CHECK_LIB(ebml_pic, main, [
2332 VLC_ADD_PLUGIN([mkv])
2333 VLC_ADD_LIBS([mkv],[-lmatroska -lebml_pic])
2335 AC_CHECK_LIB(ebml, main, [
2336 VLC_ADD_PLUGIN([mkv])
2337 VLC_ADD_LIBS([mkv],[-lmatroska -lebml])
2341 [AC_MSG_RESULT([no])
2342 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.])
2346 [AC_MSG_RESULT([no])
2347 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.])
2354 dnl modplug demux plugin
2357 [ --enable-mod Mod demux support (default auto)])
2358 if test "${enable_mod}" != "no" ; then
2359 PKG_CHECK_MODULES(LIBMODPLUG, [libmodplug >= 0.8.4 libmodplug != 0.8.8], [
2360 VLC_ADD_PLUGIN([mod])
2361 VLC_ADD_CXXFLAGS([mod],[$LIBMODPLUG_CFLAGS])
2362 VLC_ADD_LIBS([mod],[$LIBMODPLUG_LIBS])
2364 AS_IF([test x"${enable_mod}" = "xyes"],
2365 [AC_MSG_ERROR(libmodplug not found or a broken version (0.8.8.0) was found!)],
2366 [AC_MSG_WARN(libmodplug not found or a broken version (0.8.8.0) was found!)])
2371 dnl mpc demux plugin
2374 [ --enable-mpc Mpc demux support (default enabled)])
2375 if test "${enable_mpc}" != "no"
2377 AC_CHECK_HEADERS([mpc/mpcdec.h], [
2378 VLC_ADD_PLUGIN([mpc])
2379 VLC_ADD_LIBS([mpc],[-lmpcdec])],
2380 [AC_CHECK_HEADERS([mpcdec/mpcdec.h], [
2381 VLC_ADD_PLUGIN([mpc])
2382 VLC_ADD_LIBS([mpc],[-lmpcdec])])])
2386 dnl game music emu demux plugin
2389 [ --enable-gme Game Music Emu demux support (default enabled)])
2390 if test "${enable_gme}" != "no" -a "${CXX}" != "";
2393 AC_ARG_WITH(gme-tree,
2394 [ --with-gme-tree=PATH gme tree for static linking])
2395 if test -n "${with_gme_tree}"
2397 AC_MSG_CHECKING(for libgme.a in ${with_mod_tree})
2398 real_gme_tree="`cd ${with_gme_tree} 2>/dev/null && pwd`"
2399 if test -z "${real_gme_tree}"
2401 dnl The given directory can't be found
2403 AC_MSG_ERROR([cannot cd to ${with_gme_tree}])
2405 if test -f "${real_gme_tree}/gme/libgme.a"
2407 dnl Use a custom gme
2408 AC_MSG_RESULT(${real_gme_tree}/gme/libgme.a)
2409 VLC_ADD_PLUGIN([gme])
2410 VLC_ADD_LIBS([gme],[${real_gme_tree}/gme/libgme.a])
2411 VLC_ADD_CXXFLAGS([gme],[-I${real_gme_tree}/gme])
2413 dnl The given gme wasn't built
2415 AC_MSG_ERROR([cannot find ${real_mod_tree}/gme/libgme.a, make sure you compiled gme in ${with_gme_tree}])
2418 AC_MSG_WARN([only static linking is available, you must provide a gme-tree])
2427 EXTEND_HELP_STRING([Codec plugins:])
2432 AC_ARG_ENABLE(wma-fixed,
2433 [ --enable-wma-fixed libwma-fixed module (default disabled)])
2434 if test "${enable_wma_fixed}" = "yes"
2436 VLC_ADD_PLUGIN([wma_fixed])
2440 dnl shine fixed point mp3 encoder
2442 AC_ARG_ENABLE(shine,
2443 [ --enable-shine shine mp3 encoding module (default disabled)])
2444 if test "${enable_shine}" = "yes"
2446 VLC_ADD_PLUGIN([shine])
2450 dnl openmax il codec plugin
2452 AC_ARG_ENABLE(omxil,
2453 [ --enable-omxil openmax il codec module (default disabled)])
2454 if test "${enable_omxil}" = "yes"
2456 VLC_ADD_PLUGIN([omxil])
2457 VLC_ADD_LIBS([omxil], [$LIBDL])
2464 [ --enable-mad libmad module (default enabled)])
2465 if test "${enable_mad}" != "no"
2468 [ --with-mad=PATH path to libmad],[],[])
2469 if test "${with_mad}" != "no" -a -n "${with_mad}"
2471 VLC_ADD_CPPFLAGS([mpgatofixed32],[-I${with_mad}/include])
2472 VLC_ADD_LIBS([mpgatofixed32],[-L${with_mad}/lib])
2475 AC_ARG_WITH(mad-tree,
2476 [ --with-mad-tree=PATH mad tree for static linking],[],[])
2477 if test "${with_mad_tree}" != "no" -a -n "${with_mad_tree}"
2479 real_mad_tree="`cd ${with_mad_tree} 2>/dev/null && pwd`"
2480 if test -z "${real_mad_tree}"
2482 dnl The given directory can't be found
2484 AC_MSG_ERROR([${with_mad_tree} directory doesn't exist])
2486 dnl Use a custom libmad
2487 AC_MSG_CHECKING(for mad.h in ${real_mad_tree})
2488 if test -f ${real_mad_tree}/mad.h
2491 VLC_ADD_CPPFLAGS([mpgatofixed32],[-I${real_mad_tree}])
2492 VLC_ADD_LIBS([mpgatofixed32],[-L${real_mad_tree}/.libs])
2493 LDFLAGS="${LDFLAGS_save} ${LIBS_mpgatofixed32}"
2494 AC_CHECK_LIB(mad, mad_bit_init, [
2495 VLC_ADD_PLUGIN([mpgatofixed32])
2496 VLC_ADD_LIBS([mpgatofixed32],[-lmad])
2497 ],[ AC_MSG_ERROR([the specified tree hasn't been compiled ])
2499 LDFLAGS="${LDFLAGS_save}"
2502 AC_MSG_ERROR([the specified tree doesn't have mad.h])
2505 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_mpgatofixed32}"
2506 LDFLAGS="${LDFLAGS_save} ${LIBS_mpgatofixed32}"
2507 AC_CHECK_HEADERS(mad.h, ,
2508 [ 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.]) ])
2509 AC_CHECK_LIB(mad, mad_bit_init, [
2510 VLC_ADD_PLUGIN([mpgatofixed32])
2511 VLC_ADD_LIBS([mpgatofixed32],[-lmad])],
2512 [ AC_MSG_ERROR([Cannot find libmad library...]) ])
2513 CPPFLAGS="${CPPFLAGS_save}"
2514 LDFLAGS="${LDFLAGS_save}"
2519 AC_ARG_ENABLE(merge-ffmpeg,
2520 [ --enable-merge-ffmpeg merge FFmpeg-based plugins (default disabled)],, [
2521 enable_merge_ffmpeg="no"
2523 AM_CONDITIONAL([MERGE_FFMPEG], [test "$enable_merge_ffmpeg" != "no"])
2525 AC_CACHE_CHECK([if linker supports -Bsymbolic],
2526 [ac_cv_ld_bsymbolic],
2527 [LDFLAGS="${LDFLAGS_vlc} -Wl,-Bsymbolic"
2528 AC_TRY_LINK([],,ac_cv_ld_bsymbolic=yes,ac_cv_ld_bsymbolic=no)
2529 LDFLAGS="${LDFLAGS_save}"
2533 dnl avcodec decoder/encoder plugin
2535 AC_ARG_ENABLE(avcodec,
2536 [ --enable-avcodec libavcodec codec (default enabled)])
2537 AS_IF([test "${enable_avcodec}" != "no"], [
2538 PKG_CHECK_MODULES(AVCODEC,[libavcodec >= 52.25.0 libavutil],
2541 CPPFLAGS="${CPPFLAGS} ${AVCODEC_CFLAGS}"
2542 CFLAGS="${CFLAGS} ${AVCODEC_CFLAGS}"
2543 AC_CHECK_HEADERS(libavcodec/avcodec.h ffmpeg/avcodec.h)
2544 AC_CHECK_HEADERS(libavutil/avutil.h ffmpeg/avutil.h)
2545 VLC_ADD_PLUGIN([avcodec])
2546 VLC_ADD_LIBS([avcodec],[$AVCODEC_LIBS])
2547 AS_IF([test "${ac_cv_ld_bsymbolic}" != "no"], [
2548 VLC_ADD_LDFLAGS([avcodec],[-Wl,-Bsymbolic])
2550 VLC_ADD_CFLAGS([avcodec],[$AVCODEC_CFLAGS])
2554 AC_MSG_ERROR([Could not find libavcodec or libavutil. Use --disable-avcodec to ignore this error.])
2561 dnl libva needs avcodec
2563 AC_ARG_ENABLE(libva,
2564 [ --enable-libva libva VAAPI support (default auto)])
2566 AS_IF([test "${enable_libva}" != "no"], [
2567 AS_IF([test "x${have_avcodec}" = "xyes"], [
2568 PKG_CHECK_MODULES(LIBVA, [libva libva-x11],
2571 CPPFLAGS="${CPPFLAGS} ${AVCODEC_CFLAGS}"
2572 CFLAGS="${CFLAGS} ${AVCODEC_CFLAGS}"
2573 AC_CHECK_HEADERS(libavcodec/vaapi.h, [
2574 VLC_ADD_LIBS([avcodec],[$LIBVA_LIBS ${X_LIBS} ${X_PRE_LIBS} -lX11])
2575 VLC_ADD_CFLAGS([avcodec],[$LIBVA_CFLAGS ${X_CFLAGS}])
2576 AC_DEFINE(HAVE_AVCODEC_VAAPI, 1, [Define if avcodec has to be built with VAAPI support.])
2577 echo "VAAPI acceleration activated"
2579 AS_IF([test "${enable_libva}" == "yes"],
2580 [AC_MSG_ERROR([libva is present but libavcodec/vaapi.h is missing])],
2581 [AC_MSG_WARN([libva is present but libavcodec/vaapi.h is missing ])])
2585 AS_IF([test "${enable_libva}" == "yes"],
2586 [AC_MSG_ERROR([Could not find required libva.])],
2587 [AC_MSG_WARN([libva not found ])])
2590 AS_IF([test "x${enable_libva}" != "x"], [
2591 AC_MSG_ERROR([--enable-libva and --disable-avcodec options are mutually exclusive.])
2597 dnl dxva2 needs avcodec
2599 AC_ARG_ENABLE(dxva2,
2600 [ --enable-dxva2 DxVA2 support (default auto)])
2602 AS_IF([test "${enable_dxva2}" != "no"], [
2603 if test "${SYS}" = "mingw32"; then
2604 AS_IF([test "x${have_avcodec}" = "xyes"], [
2605 AC_CHECK_HEADERS(dxva2api.h,
2607 AC_CHECK_HEADERS(libavcodec/dxva2.h, [
2608 VLC_ADD_LIBS([avcodec],[-lole32 -lshlwapi -luuid])
2609 AC_DEFINE(HAVE_AVCODEC_DXVA2, 1, [Define if avcodec has to be built with DxVA2 support.])
2610 echo "DxVA2 acceleration activated"
2612 AS_IF([test "${enable_dxva2}" == "yes"],
2613 [AC_MSG_ERROR([dxva2 is present but libavcodec/dxva2.h is missing])],
2614 [AC_MSG_WARN([dxva2 is present but libavcodec/dxva2.h is missing ])])
2617 AS_IF([test "${enable_dxva2}" == "yes"],
2618 [AC_MSG_ERROR([Could not find required dxva2api.h])],
2619 [AC_MSG_WARN([dxva2api.h not found])])
2622 AS_IF([test "x${enable_dxva2}" != "x"], [
2623 AC_MSG_ERROR([--enable-dxva2 and --disable-avcodec options are mutually exclusive.])
2631 dnl stream_out switcher needs libavcodec
2633 AC_ARG_ENABLE(switcher,
2634 [ --enable-switcher Stream-out switcher plugin (default disabled)])
2635 AS_IF([test "${enable_switcher}" = "yes"], [
2636 AS_IF([test "x${have_avcodec}" = "xyes"], [
2637 VLC_ADD_PLUGIN([stream_out_switcher])
2638 VLC_ADD_LIBS([stream_out_switcher],[$AVCODEC_LIBS $AVUTIL_LIBS])
2639 VLC_ADD_CFLAGS([stream_out_switcher],[$AVCODEC_CFLAGS $AVUTIL_CFLAGS])
2640 ],[AC_MSG_ERROR([Stream_out switcher depends on avcodec])
2646 dnl avformat demuxer/muxer plugin
2649 AC_ARG_ENABLE(avformat,
2650 [ --enable-avformat libavformat containers (default enabled)],, [
2651 enable_avformat="${have_avcodec}"
2653 if test "${enable_avformat}" != "no"
2655 PKG_CHECK_MODULES(AVFORMAT,[libavformat > 52.30.0 libavcodec libavutil],
2658 CPPFLAGS="${CPPFLAGS} ${AVFORMAT_CFLAGS}"
2659 CFLAGS="${CFLAGS} ${AVFORMAT_CFLAGS}"
2660 AC_CHECK_HEADERS(libavformat/avformat.h ffmpeg/avformat.h)
2661 AC_CHECK_HEADERS(libavutil/avutil.h ffmpeg/avutil.h)
2662 AS_IF([test "$enable_merge_ffmpeg" = "no"], [
2663 VLC_ADD_PLUGIN([avformat access_avio])
2664 VLC_ADD_LIBS([avformat access_avio],[$AVFORMAT_LIBS $AVUTIL_LIBS])
2665 VLC_ADD_CFLAGS([avformat access_avio],[$AVFORMAT_CFLAGS $AVUTIL_CFLAGS])
2666 AS_IF([test "${ac_cv_ld_bsymbolic}" != "no"], [
2667 VLC_ADD_LDFLAGS([avformat access_avio],[-Wl,-Bsymbolic])
2670 VLC_ADD_LIBS([avcodec],[$AVFORMAT_LIBS $AVUTIL_LIBS])
2671 VLC_ADD_CFLAGS([avcodec],[$AVFORMAT_CFLAGS $AVUTIL_CFLAGS])
2675 AC_MSG_ERROR([Could not find libavformat or libavutil. Use --disable-avformat to ignore this error.])
2680 dnl swscale image scaling and conversion plugin
2683 AC_ARG_ENABLE(swscale,
2684 AS_HELP_STRING([--enable-swscale],[libswscale image scaling and conversion
2685 (default enabled)]))
2686 if test "${enable_swscale}" != "no"
2688 PKG_CHECK_MODULES(SWSCALE,[libswscale],
2691 CPPFLAGS="${CPPFLAGS} ${SWSCALE_CFLAGS}"
2692 CFLAGS="${CFLAGS} ${SWSCALE_CFLAGS}"
2693 AC_CHECK_HEADERS(libswscale/swscale.h ffmpeg/swscale.h)
2694 VLC_ADD_PLUGIN([swscale])
2695 VLC_ADD_LIBS([swscale],[$SWSCALE_LIBS])
2696 VLC_ADD_CFLAGS([swscale],[$SWSCALE_CFLAGS])
2697 AS_IF([test "${ac_cv_ld_bsymbolic}" != "no"], [
2698 VLC_ADD_LDFLAGS([swscale],[-Wl,-Bsymbolic])
2702 AC_MSG_ERROR([Could not find libswscale. Use --disable-swscale to ignore this error. Proper software scaling and some video chroma conversion will be missing.])
2710 AC_ARG_ENABLE(postproc,
2711 [ --enable-postproc libpostproc image post-processing (default enabled)])
2712 if test "${enable_postproc}" != "no"
2714 PKG_CHECK_MODULES(POSTPROC,[libpostproc libavutil],
2717 CPPFLAGS="${CPPFLAGS} ${POSTPROC_CFLAGS}"
2718 CFLAGS="${CFLAGS} ${POSTPROC_CFLAGS}"
2719 AC_CHECK_HEADERS(postproc/postprocess.h)
2720 VLC_ADD_PLUGIN([postproc])
2721 VLC_ADD_LIBS([postproc],[$POSTPROC_LIBS $AVUTIL_LIBS])
2722 VLC_ADD_CFLAGS([postproc],[$POSTPROC_CFLAGS $AVUTIL_CFLAGS])
2725 AC_MSG_ERROR([Could not find libpostproc. Use --disable-postproc to ignore this error.])
2730 dnl faad decoder plugin
2733 [ --enable-faad faad codec (default disabled)])
2734 if test "${enable_faad}" = "yes"
2736 AC_ARG_WITH(faad-tree,
2737 [ --with-faad-tree=PATH faad tree for static linking])
2738 if test -n "${with_faad_tree}"
2740 AC_MSG_CHECKING(for libfaad.a in ${with_faad_tree})
2741 real_faad_tree="`cd ${with_faad_tree} 2>/dev/null && pwd`"
2742 if test -z "${real_faad_tree}"
2744 dnl The given directory can't be found
2746 AC_MSG_ERROR([cannot cd to ${with_faad_tree}])
2748 if test -f "${real_faad_tree}/libfaad/.libs/libfaad.a"
2750 dnl Use a custom faad
2751 AC_MSG_RESULT(${real_faad_tree}/libfaad/.libs/libfaad.a)
2752 VLC_ADD_PLUGIN([faad])
2753 VLC_ADD_LIBS([faad],[${real_faad_tree}/libfaad/.libs/libfaad.a])
2754 VLC_ADD_CPPFLAGS([faad],[-I${real_faad_tree}/include])
2756 dnl The given libfaad wasn't built
2758 AC_MSG_ERROR([cannot find ${real_faad_tree}/libfaad/.libs/libfaad.a, make sure you compiled libfaad in ${with_faad_tree}])
2761 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_faad}"
2762 LDFLAGS="${LDFLAGS_save} ${LIBS_faad}"
2763 AC_CHECK_HEADERS(faad.h, ,
2764 [ AC_MSG_ERROR([Cannot find development headers for libfaad...]) ])
2765 AC_CHECK_LIB(faad, faacDecOpen, [
2766 VLC_ADD_PLUGIN([faad])
2767 VLC_ADD_LIBS([faad],[-lfaad]) ],
2768 AC_CHECK_LIB(faad, NeAACDecOpen, [
2769 VLC_ADD_PLUGIN([faad])
2770 VLC_ADD_LIBS([faad],[-lfaad]) ],
2771 [ AC_MSG_ERROR([Cannot find libfaad library...]) ]))
2772 LDFLAGS="${LDFLAGS_save}"
2773 CPPFLAGS="${CPPFLAGS_save}"
2778 dnl twolame encoder plugin
2780 PKG_ENABLE_MODULES_VLC([TWOLAME], [], [twolame], [MPEG Audio Layer 2 encoder], [auto], [], [], [ -DLIBTWOLAME_STATIC])
2783 dnl QuickTime plugin
2785 AC_ARG_ENABLE(quicktime,
2786 [ --enable-quicktime QuickTime module (deprecated)])
2787 if test "${enable_quicktime}" = "yes"; then
2788 if test "${SYS}" = "mingw32"; then
2789 VLC_ADD_PLUGIN([quicktime])
2791 AC_CHECK_HEADERS(QuickTime/QuickTime.h,
2792 [ VLC_ADD_PLUGIN([quicktime])
2793 VLC_ADD_LDFLAGS([quicktime],[-Wl,-framework,QuickTime,-framework,Carbon])
2794 ], [ AC_MSG_ERROR([cannot find QuickTime headers]) ])
2802 [ --enable-real Real media module (default disabled)])
2803 if test "${enable_real}" = "yes"; then
2804 VLC_ADD_PLUGIN([realvideo])
2808 dnl Real RTSP plugin
2810 AC_ARG_ENABLE(realrtsp,
2811 [ --enable-realrtsp Real RTSP module (default disabled)])
2812 if test "${enable_realrtsp}" = "yes"; then
2813 VLC_ADD_PLUGIN([access_realrtsp])
2819 AC_ARG_ENABLE(libtar,
2820 [ --enable-libtar libtar support for skins2 (default enabled)])
2822 AS_IF([test "${enable_libtar}" != "no"],[
2823 AC_CHECK_HEADERS(libtar.h, [
2824 VLC_ADD_LIBS([skins2],[-ltar])
2829 dnl A52/AC3 decoder plugin
2832 [ --enable-a52 A/52 support with liba52 (default enabled)])
2833 if test "${enable_a52}" != "no"
2836 [ --with-a52=PATH a52 headers and libraries])
2837 AC_ARG_WITH(a52-tree,
2838 [ --with-a52-tree=PATH a52dec tree for static linking ],[],[])
2839 if test "${with_a52_tree}" != "no" -a -n "${with_a52_tree}"
2841 real_a52_tree="`cd ${with_a52_tree} 2>/dev/null && pwd`"
2842 if test -z "${real_a52_tree}"
2844 dnl The given directory can't be found
2846 AC_MSG_ERROR([${with_a52_tree} directory doesn't exist])
2848 dnl Use a custom a52dec
2849 AC_MSG_CHECKING(for a52.h in ${real_a52_tree}/include)
2850 if test -f ${real_a52_tree}/include/a52.h
2853 VLC_ADD_CPPFLAGS([a52tofloat32],[-I${real_a52_tree}])
2854 VLC_ADD_LIBS([a52tofloat32],[-L${real_a52_tree}/liba52/.libs])
2855 LDFLAGS="${LDFLAGS_save} ${LIBS_a52tofloat32}"
2856 AC_CHECK_LIB(a52, a52_free, [
2857 VLC_ADD_PLUGIN([a52tofloat32])
2858 VLC_ADD_CPPFLAGS([a52tofloat32],[-DUSE_A52DEC_TREE])
2859 VLC_ADD_LIBS([a52tofloat32],[-la52])
2861 if test -f ${real_a52_tree}/liba52/.libs/liba52.a
2863 AC_MSG_ERROR([make sure you have at least a52dec-0.7.3 ($real_a52_tree)])
2865 AC_MSG_ERROR([the specified tree hasn't been compiled])
2868 LDFLAGS="${LDFLAGS_save}"
2871 AC_MSG_ERROR([the specified tree doesn't have a52.h])
2874 if test -z "${with_a52}"
2879 LDFLAGS_test="-L${with_a52}/lib"
2880 CPPFLAGS_test="-I${with_a52}/include"
2882 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_test} ${CPPFLAGS_a52tofloat32}"
2883 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_test} ${LIBS_a52tofloat32}"
2884 AC_CHECK_HEADERS(a52dec/a52.h, [
2885 AC_CHECK_LIB(a52, a52_free, [
2886 VLC_ADD_PLUGIN([a52tofloat32])
2887 VLC_ADD_LIBS([a52tofloat32],[${LDFLAGS_test} -la52])
2888 VLC_ADD_CPPFLAGS([a52tofloat32],[${CPPFLAGS_test}])
2890 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.])
2893 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.])
2895 CPPFLAGS="${CPPFLAGS_save}"
2896 LDFLAGS="${LDFLAGS_save}"
2900 AC_ARG_WITH(a52-fixed,
2901 [ --with-a52-fixed specify if liba52 has been compiled with fixed point support],
2903 VLC_ADD_CPPFLAGS([a52tofloat32],[-DLIBA52_FIXED]) ])
2906 dnl DTS Coherent Acoustics decoder plugin
2908 PKG_ENABLE_MODULES_VLC([DCA], [dtstofloat32], [libdca >= 0.0.5], [DTS Coherent Acoustics support with libdca], [auto])
2913 PKG_ENABLE_MODULES_VLC([FLAC], [], [flac], [libflac decoder/encoder support], [auto])
2918 PKG_ENABLE_MODULES_VLC([LIBMPEG2], [], [libmpeg2 > 0.3.2], [libmpeg2 decoder support], [auto])
2923 PKG_ENABLE_MODULES_VLC([VORBIS], [], [ogg vorbis >= 1.1 vorbisenc >= 1.1], [Vorbis decoder and encoder], [auto])
2928 AC_ARG_ENABLE(tremor,
2929 [ --enable-tremor Tremor decoder support (default disabled)])
2930 if test "${enable_tremor}" = "yes"
2932 AC_CHECK_HEADERS(tremor/ivorbiscodec.h, [
2933 VLC_ADD_PLUGIN([tremor])
2934 VLC_ADD_LIBS([tremor],[-lvorbisidec -logg])
2941 PKG_ENABLE_MODULES_VLC([SPEEX], [], [ogg speex >= 1.0.5], [Speex decoder support], [auto])
2944 dnl theora decoder plugin
2946 PKG_ENABLE_MODULES_VLC([THEORA], [], [ogg theora >= 1.0], [experimental theora codec], [auto])
2949 dnl dirac encoder plugin
2951 PKG_ENABLE_MODULES_VLC([DIRAC], [], [dirac >= 0.10.0], [dirac encoder], [auto])
2954 dnl schroedinger decoder plugin (for dirac format video)
2956 PKG_ENABLE_MODULES_VLC([SCHROEDINGER], [], [schroedinger-1.0 >= 1.0.6], [dirac decoder using schroedinger], [auto])
2959 dnl PNG decoder module
2962 [ --enable-png PNG support (default enabled)])
2963 if test "${enable_png}" != "no"; then
2964 AC_CHECK_HEADERS(png.h, [
2965 LDFLAGS="${LDFLAGS_save} -lz"
2966 AC_CHECK_LIB(png, png_set_rows, [
2967 VLC_ADD_LIBS([png],[-lpng -lz])
2968 VLC_ADD_PLUGIN([png osdmenu osd_parser])],
2970 LDFLAGS="${LDFLAGS_save}"
2973 AM_CONDITIONAL(BUILD_OSDMENU, [test "${enable_png}" != "no"])
2976 dnl H264 encoder plugin (using libx264)
2979 [ --enable-x264 H264 encoding support with libx264 (default enabled)])
2980 if test "${enable_x264}" != "no"; then
2981 AC_ARG_WITH(x264-tree,
2982 [ --with-x264-tree=PATH x264 tree for static linking ],[],[])
2983 if test "${with_x264_tree}" != "no" -a -n "${with_x264_tree}"
2985 real_x264_tree="`cd ${with_x264_tree} 2>/dev/null && pwd`"
2986 if test -z "${real_x264_tree}"
2988 dnl The given directory can't be found
2990 AC_MSG_ERROR([${with_x264_tree} directory doesn't exist])
2992 dnl Use a custom libx264
2993 AC_MSG_CHECKING(for x264.h in ${real_x264_tree})
2994 if test -f ${real_x264_tree}/x264.h
2997 VLC_ADD_CPPFLAGS([x264],[-I${real_x264_tree}])
2998 VLC_ADD_LIBS([x264],[-L${real_x264_tree}])
2999 PKG_CHECK_MODULES(X264,x264, [
3000 VLC_ADD_PLUGIN([x264])
3001 VLC_ADD_LDFLAGS([x264],[${X264_LIBS}])
3002 VLC_ADD_CFLAGS([x264],[${X264_CFLAGS}])
3003 if echo ${X264_LIBS} |grep -q 'pthreadGC2'; then
3004 VLC_ADD_CFLAGS([x264], [-DPTW32_STATIC_LIB])
3007 AC_MSG_ERROR([the specified tree hasn't been compiled])
3009 LDFLAGS="${LDFLAGS_save}"
3012 AC_MSG_ERROR([the specified tree doesn't have x264.h])
3015 PKG_CHECK_MODULES(X264,x264 >= 0.86, [
3016 VLC_ADD_PLUGIN([x264])
3017 VLC_ADD_LDFLAGS([x264],[${X264_LIBS}])
3019 AS_IF([test "${ac_cv_ld_bsymbolic}" != "no"], [
3020 VLC_ADD_LDFLAGS([x264],[-Wl,-Bsymbolic])
3023 VLC_ADD_CFLAGS([x264],[${X264_CFLAGS}])
3024 if echo ${X264_LIBS} |grep -q 'pthreadGC2'; then
3025 VLC_ADD_CFLAGS([x264], [-DPTW32_STATIC_LIB])
3028 if test "${enable_x264}" = "yes"; then
3029 AC_MSG_ERROR([Could not find libx264 >= 0.86 on your system: you may get it from http://www.videolan.org/x264.html])
3032 LDFLAGS="${LDFLAGS_save}"
3037 dnl libfluidsynth (MIDI synthetizer) plugin
3039 PKG_ENABLE_MODULES_VLC([FLUIDSYNTH], [], [fluidsynth], [MIDI synthetiser with libfluidsynth], [auto])
3042 dnl Teletext Modules
3043 dnl vbi decoder plugin (using libzbvi)
3048 AS_HELP_STRING([--enable-zvbi],[VBI (inc. Teletext) decoding support with
3049 libzvbi (default enabled)]))
3051 AS_HELP_STRING([--enable-telx],[Teletext decoding module (conflicting with
3052 zvbi) (default enabled if zvbi is absent)]))
3054 AS_IF( [test "${enable_zvbi}" != "no"],[
3055 PKG_CHECK_MODULES(ZVBI,
3058 VLC_ADD_LIBS([zvbi],[$ZVBI_LIBS])
3059 if test "${SYS}" = "mingw32"; then
3060 VLC_ADD_LIBS([zvbi],[ -lpthreadGC2])
3062 VLC_ADD_CFLAGS([zvbi],[$ZVBI_CFLAGS])
3063 VLC_ADD_PLUGIN([zvbi])
3064 AC_DEFINE(ZVBI_COMPILED, 1, [Define if the zvbi module is built])
3065 AS_IF( [test "${enable_telx}" = "yes"],[
3066 AC_MSG_WARN([The zvbi and telx modules are uncompatibles.
3070 AC_MSG_WARN(ZVBI library not found. Enabling the telx module instead)
3073 AS_IF( [test "${enable_telx}" != "no" ],[
3074 VLC_ADD_PLUGIN([telx])
3078 dnl libass subtitle rendering module
3080 AC_ARG_ENABLE(libass,
3081 [ --enable-libass Subtitle support using libass (default enabled)])
3082 AS_IF( [test "${enable_libass}" != "no"], [
3083 PKG_CHECK_MODULES(LIBASS, libass >= 0.9.6,
3085 VLC_ADD_LIBS([libass],[$LIBASS_LIBS])
3086 VLC_ADD_CFLAGS([libass],[$LIBASS_CFLAGS])
3087 VLC_ADD_PLUGIN([libass])
3089 AC_CHECK_HEADERS(fontconfig/fontconfig.h,
3090 [VLC_ADD_CPPFLAGS([libass],[-DHAVE_FONTCONFIG])
3091 VLC_ADD_LIBS([libass],[-lfontconfig])
3094 AC_MSG_WARN([LIBASS library not found])
3099 dnl kate decoder plugin
3102 [ --enable-kate kate codec (default enabled)])
3103 AS_IF([test "${enable_kate}" != "no"], [
3104 PKG_CHECK_MODULES(KATE,[kate >= 0.1.5], [
3105 VLC_ADD_PLUGIN([kate])
3106 VLC_ADD_CFLAGS([kate],[$KATE_CFLAGS])
3107 VLC_ADD_LIBS([kate],[$KATE_LIBS]) ],[
3108 AC_CHECK_HEADERS(kate/kate.h, [
3109 AC_CHECK_LIB(kate, kate_decode_init, [
3110 VLC_ADD_PLUGIN([kate])
3111 kate_libs="-lkate -logg"
3112 VLC_ADD_LDFLAGS([kate],[${kate_libs}]) ],[
3113 AS_IF([test "x${enable_kate}" != "x"], [
3114 AC_MSG_ERROR([libkate doesn't appear to be installed on your system.
3115 You also need to check that you have a libogg posterior to the 1.0 release.])
3119 AS_IF([test "x${enable_kate}" != "x"], [
3120 AC_MSG_ERROR([libkate headers do not appear to be installed on your system.
3121 You also need to check that you have a libogg posterior to the 1.0 release.])
3129 dnl tiger rendering for kate decoder plugin
3131 AC_ARG_ENABLE(tiger,
3132 [ --enable-tiger Tiger rendering library for Kate streams (default enabled)])
3133 AS_IF([test "${enable_tiger}" != "no"], [
3134 PKG_CHECK_MODULES(TIGER,[tiger >= 0.3.1], [
3135 AC_DEFINE(HAVE_TIGER, 1, [Define if libtiger is available.])
3136 VLC_ADD_CFLAGS([kate],[$TIGER_CFLAGS])
3137 VLC_ADD_LIBS([kate],[$TIGER_LIBS]) ],[
3138 AS_IF([test "x${enable_tiger}" != "x"], [
3139 AC_MSG_ERROR([libtiger does not appear to be installed on your system.])
3150 EXTEND_HELP_STRING([Video plugins:])
3157 AC_CHECK_HEADERS(X11/Xlib.h)
3160 dnl X C Bindings modules
3163 [ --enable-xcb X11 support with XCB (default enabled)],, [
3164 AS_IF([test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" -a "${SYS}" != "darwin"], [
3170 AC_ARG_ENABLE(xvideo,
3171 [ --enable-xvideo XVideo support (default enabled)],, [
3172 enable_xvideo="$enable_xcb"
3175 need_xid_provider="no"
3176 AS_IF([test "${enable_xcb}" != "no"], [
3178 PKG_CHECK_MODULES(XCB, [xcb])
3179 PKG_CHECK_MODULES(XCB_SHM, [xcb-shm])
3180 VLC_ADD_PLUGIN([screensaver xcb_x11 xcb_window xcb_screen xcb_apps])
3182 AS_IF([test "${enable_xvideo}" != "no"], [
3183 PKG_CHECK_MODULES(XCB_XV, [xcb-xv >= 1.1.90.1], [
3184 VLC_ADD_PLUGIN([xcb_xv])
3186 PKG_CHECK_MODULES(XCB_XV, [xcb-xv], [
3187 VLC_ADD_PLUGIN([xcb_xv])
3188 VLC_ADD_CFLAGS([xcb_xv], [-DXCB_XV_OLD])
3193 PKG_CHECK_MODULES(XCB_RANDR, [xcb-randr >= 1.3], [
3194 VLC_ADD_PLUGIN([panoramix])
3195 VLC_ADD_LIBS([panoramix],[${XCB_RANDR_LIBS} ${XCB_LIBS}])
3196 VLC_ADD_CFLAGS([panoramix],[${XCB_RANDR_CFLAGS} ${XCB_CFLAGS}])
3198 AC_MSG_WARN([libxcb-randr not found. Panoramix filter will not be supported.])
3202 PKG_CHECK_MODULES(XCB_KEYSYMS, [xcb-keysyms >= 0.3.4], [
3203 have_xcb_keysyms="yes"
3205 PKG_CHECK_MODULES(XCB_KEYSYMS, [xcb-keysyms], [
3206 have_xcb_keysyms="yes"
3207 VLC_ADD_CFLAGS([globalhotkeys], [-DXCB_KEYSYM_OLD_API])
3209 have_xcb_keysyms="no"
3210 need_xid_provider="yes"
3211 AC_MSG_WARN([libxcb-keysyms not found. Hotkeys will not be supported.])
3215 AS_IF([test "${have_xcb_keysyms}" = "yes"], [
3216 PKG_CHECK_MODULES(XPROTO, [xproto])
3217 VLC_ADD_PLUGIN([globalhotkeys])
3218 VLC_ADD_CFLAGS([globalhotkeys], [${XCB_KEYSYMS_CFLAGS} ${XCB_CFLAGS}])
3219 VLC_ADD_LIBS([globalhotkeys], [${XCB_KEYSYMS_LIBS} ${XCB_LIBS}])
3220 VLC_ADD_CFLAGS([xcb_window], [-DHAVE_XCB_KEYSYMS])
3222 VLC_ADD_PLUGIN([xdg_screensaver])
3226 [ --enable-glx X11 OpenGL (GLX) support (default enabled)],, [
3227 enable_glx="$enable_xcb"
3229 AS_IF([test "${enable_glx}" != "no"], [
3230 PKG_CHECK_MODULES(XLIB_XCB, [x11-xcb])
3231 PKG_CHECK_MODULES(GL, [gl],, [
3232 AC_CHECK_HEADER([GL/gl.h], [
3236 AC_MSG_ERROR([GLX (libGL) cannot be found. If you do not need OpenGL with X11, use --disable-glx.])
3239 VLC_ADD_PLUGIN([xcb_glx])
3241 AC_SUBST([GL_CFLAGS])
3248 [ --enable-sdl SDL support (default enabled)])
3249 AC_ARG_ENABLE(sdl-image,
3250 [ --enable-sdl-image SDL image support (default enabled)])
3251 if test "${enable_sdl}" != "no"
3253 PKG_CHECK_MODULES(SDL, [sdl >= 1.2.10], [
3254 # SDL on Darwin is heavily patched and can only run SDL_image
3255 if test "${SYS}" != "darwin"; then
3256 VLC_ADD_PLUGIN([vout_sdl aout_sdl])
3258 if test "${SYS}" != "mingw32"; then
3259 VLC_ADD_LIBS([vout_sdl],[${X_LIBS} ${X_PRE_LIBS} -lX11])
3261 VLC_ADD_CFLAGS([vout_sdl aout_sdl],[${SDL_CFLAGS}])
3262 VLC_ADD_LIBS([vout_sdl aout_sdl],[${SDL_LIBS}])
3265 AS_IF([ test "${enable_sdl_image}" != "no"],[
3266 PKG_CHECK_MODULES(SDL_IMAGE, [SDL_image >= 1.2.10], [
3267 VLC_ADD_PLUGIN([sdl_image])
3268 VLC_ADD_LIBS([sdl_image],[${SDL_IMAGE_LIBS}])
3269 VLC_ADD_CFLAGS([sdl_image], [${SDL_IMAGE_CFLAGS}])],
3270 [ AC_MSG_WARN([The development package for SDL_image is not installed.
3271 You should install it alongside your SDL package.])
3275 AC_MSG_WARN([The development package for SDL is not present or too old.
3276 You need 1.2.10. Alternatively you can also configure with
3284 AC_ARG_ENABLE(freetype,
3285 [ --enable-freetype freetype support (default enabled)])
3286 AC_ARG_ENABLE(fribidi,
3287 [ --enable-fribidi fribidi support (default enabled)])
3288 AC_ARG_ENABLE(fontconfig,
3289 [ --enable-fontconfig fontconfig support (default enabled)])
3290 if test "${enable_freetype}" != "no"
3292 PKG_CHECK_MODULES(FREETYPE, freetype2,[
3293 VLC_ADD_PLUGIN([freetype])
3295 VLC_ADD_CPPFLAGS([freetype skins2],[${FREETYPE_CFLAGS}])
3296 if test "${SYS}" = "mingw32"; then
3297 VLC_ADD_LIBS([freetype],[-liconv -lz])
3299 VLC_ADD_LIBS([freetype skins2],[${FREETYPE_LIBS}])
3300 if test "${enable_fontconfig}" != "no"
3302 AC_CHECK_HEADERS(fontconfig/fontconfig.h,
3303 [VLC_ADD_CPPFLAGS([freetype],[-DHAVE_FONTCONFIG])
3304 VLC_ADD_LIBS([freetype],[-lfontconfig])])
3305 AC_CHECK_HEADERS(Carbon/Carbon.h,
3306 [VLC_ADD_LDFLAGS([freetype],[-Wl,-framework,Carbon])])
3310 if test "${enable_fribidi}" != "no"
3312 PKG_CHECK_MODULES(FRIBIDI, fribidi, [
3313 VLC_ADD_CPPFLAGS([freetype skins2], [${FRIBIDI_CFLAGS} -DHAVE_FRIBIDI])
3314 VLC_ADD_LIBS([freetype skins2], [${FRIBIDI_LIBS}])
3320 AS_IF([ test "${enable_freetype}" = "yes"],[
3321 AC_MSG_ERROR([I couldn't find the freetype package. You can download libfreetype2
3322 from http://www.freetype.org/, or configure with --disable-freetype. Have a nice day.
3332 PKG_ENABLE_MODULES_VLC([LIBXML2], [xml], [libxml-2.0 >= 2.5], [libxml2 support],[auto])
3337 PKG_ENABLE_MODULES_VLC([SVG], [], [librsvg-2.0 >= 2.9.0], [SVG rendering library],[auto])
3340 dnl Snapshot vout module (with cache)
3342 AC_ARG_ENABLE(snapshot,
3343 [ --enable-snapshot snapshot module (default disabled)])
3344 if test "${enable_snapshot}" = "yes"
3346 VLC_ADD_PLUGIN([snapshot])
3350 dnl Windows DirectX module
3353 if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"
3355 VLC_ADD_PLUGIN([panoramix])
3358 AC_ARG_ENABLE(directx,
3359 [ --enable-directx Win32 DirectX support (default enabled on Win32)])
3360 if test "${enable_directx}" != "no"
3362 if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"
3364 AC_CHECK_HEADERS(ddraw.h,
3365 [ VLC_ADD_PLUGIN([directx aout_directx])
3366 VLC_ADD_LIBS([directx],[-lgdi32])
3367 ],[AC_MSG_ERROR([Cannot find DirectX headers!])]
3369 AC_CHECK_HEADERS(GL/gl.h,
3370 [ VLC_ADD_PLUGIN([glwin32])
3371 VLC_ADD_LIBS([glwin32],[-lopengl32 -lgdi32])
3373 AC_CHECK_HEADERS(d3d9.h,
3374 [ VLC_ADD_PLUGIN([direct3d])
3375 VLC_ADD_LIBS([direct3d],[-lgdi32])
3377 VLC_ADD_LIBS([direct3d directx glwin32],[-lole32])
3382 dnl Windows Direct2D plugin
3384 AC_ARG_ENABLE(direct2d,
3385 [ --enable-direct2d Win7/VistaPU Direct2D support (default auto on Win32)])
3386 if test "${enable_direct2d}" != "no"; then
3387 if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"
3389 AC_CHECK_HEADERS(d2d1.h,
3391 VLC_ADD_PLUGIN([direct2d])
3392 VLC_ADD_LIBS([direct2d],[-lgdi32 -lole32])
3393 ], [AC_MSG_WARN([Cannot find Direct2D headers!])]
3399 dnl win32 GDI plugin
3401 AC_ARG_ENABLE(wingdi,
3402 [ --enable-wingdi Win32 GDI module (default enabled on Win32)])
3403 if test "${enable_wingdi}" != "no"; then
3404 if test "${SYS}" = "mingw32"; then
3405 VLC_ADD_PLUGIN([wingdi])
3406 VLC_ADD_LIBS([wingdi],[-lgdi32 -lole32])
3408 if test "${SYS}" = "mingwce"; then
3409 VLC_ADD_PLUGIN([wingdi wingapi])
3410 VLC_ADD_LIBS([wingdi],[-laygshell])
3411 VLC_ADD_LIBS([wingapi],[-laygshell])
3417 dnl Linux framebuffer module
3420 [ --enable-fb Linux framebuffer support (default enabled on Linux)])
3421 if test "${enable_fb}" != "no"
3423 AC_CHECK_HEADERS(linux/fb.h, [
3424 VLC_ADD_PLUGIN([fb])
3430 dnl try to find using: 1 - given location; 2 - directfb-config; 3 - pkg-config
3431 dnl TODO: support for static linking
3433 AC_ARG_ENABLE(directfb,
3434 [ --enable-directfb DirectFB support (default disabled)])
3435 AC_ARG_WITH(directfb,
3436 [ --with-directfb=PATH path to DirectFB headers and libraries])
3438 if test "${enable_directfb}" = "yes"; then
3439 have_directfb="false"
3440 CPPFLAGS_mydirectfb=
3442 if test "${with_directfb}" != "no" -a -n "${with_directfb}"; then
3443 dnl Trying the given location
3444 CPPFLAGS_save="${CPPFLAGS}"
3447 CPPFLAGS_new="-I${with_directfb}/include -D_REENTRANT -D_GNU_SOURCE"
3448 LIBS_new="-L${with_directfb}/lib/fusion/.libs/ -L${with_directfb}/lib/direct/.libs/"
3449 LIBS_new="${LIBS_new} -L${with_directfb}/src/.libs/"
3451 CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_new}"
3452 LIBS="${LIBS} ${LIBS_new}"
3454 dnl FIXME: too obscure
3455 AC_CHECK_HEADER([directfb.h], [
3456 AC_CHECK_LIB([direct],[direct_initialize], [
3457 AC_CHECK_LIB([fusion], [fusion_enter], [
3458 AC_CHECK_LIB([directfb], [DirectFBInit], have_directfb="true", have_directfb="false")
3459 ], have_directfb="false")
3460 ], have_directfb="false")
3461 ], have_directfb="false")
3464 CPPFLAGS="${CPPFLAGS_save}"
3467 if test "${have_directfb}" = "true"; then
3468 LIBS_mydirectfb="${LIBS_new} -lz $LIBDL -ldirectfb -lfusion -ldirect -lpthread"
3469 CPPFLAGS_mydirectfb="${CPPFLAGS_new}"
3472 dnl Look for directfb-config
3473 AC_PATH_PROG(DIRECTFB_CONFIG, directfb-config, no, ${PATH})
3474 if test "${DIRECTFB_CONFIG}" != "no"; then
3475 CPPFLAGS_mydirectfb="`${DIRECTFB_CONFIG} --cflags`"
3476 LIBS_mydirectfb="`${DIRECTFB_CONFIG} --libs`"
3477 have_directfb="true"
3479 dnl Trying with pkg-config
3480 PKG_CHECK_MODULES(DIRECTFB, directfb, [
3481 CPPFLAGS_mydirectfb="${DIRECTFB_CFLAGS}"
3482 LIBS_mydirectfb="${DIRECTFB_LIBS}"
3483 have_directfb="true"
3484 ], [have_directfb="false"])
3487 if test "${have_directfb}" = "true"; then
3488 VLC_ADD_PLUGIN([directfb])
3489 VLC_ADD_CPPFLAGS([directfb],[${CPPFLAGS_mydirectfb}])
3490 VLC_ADD_LIBS([directfb],[${LIBS_mydirectfb}])
3492 AC_MSG_ERROR([cannot find directfb headers and/or libraries ])
3500 [ --enable-aa aalib output (default disabled)])
3501 if test "${enable_aa}" = "yes"
3503 AC_CHECK_HEADER(aalib.h,have_aa="true",have_aa="false")
3504 if test "${have_aa}" = "true"
3506 VLC_ADD_PLUGIN([aa])
3507 VLC_ADD_LIBS([aa],[-laa])
3508 if test "${SYS}" != "mingw32"; then
3509 VLC_ADD_LIBS([aa],[${X_LIBS} ${X_PRE_LIBS} -lX11])
3517 PKG_ENABLE_MODULES_VLC([CACA], [], [caca >= 0.99.beta14], [libcaca output],[auto])
3523 EXTEND_HELP_STRING([Audio plugins:])
3526 dnl OSS /dev/dsp module (enabled by default except on win32)
3529 [ --enable-oss Open Sound System OSS support (default enabled)])
3531 if test "${enable_oss}" != "no" &&
3532 (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
3533 test "${enable_oss}" = "yes")
3535 AC_CHECK_HEADERS([soundcard.h sys/soundcard.h], [
3536 VLC_ADD_PLUGIN([oss access_oss])
3537 AC_CHECK_LIB(ossaudio,main,[VLC_ADD_LIBS([oss access_oss],[-lossaudio])])
3542 dnl Pulseaudio module
3544 AS_IF([test "${no_x}" = "yes"], [
3545 AS_IF([test "${enable_pulse}" = "yes"], [
3546 AC_MSG_ERROR([Xlib is required for VLC PulseAudio support
3547 (see http://www.pulseaudio.org/ticket/799 for further reference).])
3550 PKG_ENABLE_MODULES_VLC([PULSE], [], [libpulse >= 0.9.11], [Pulseaudio support], [auto])
3551 VLC_ADD_LIBS([pulse], [${X_LIBS} ${X_PRE_LIBS} -lX11])
3555 dnl Portaudio module
3557 PKG_ENABLE_MODULES_VLC([PORTAUDIO], [], [portaudio-2.0], [Portaudio library support], [auto])
3563 [ --enable-alsa Advanced Linux Sound Architecture (default auto)])
3565 AS_IF([test "${enable_alsa}" != "no"], [
3566 PKG_CHECK_MODULES([ALSA], [alsa >= 1.0.0], [
3569 AS_IF([test "x${enable_alsa}" != "x"], [
3570 AC_MSG_ERROR([alsa-lib not found])
3574 AM_CONDITIONAL([HAVE_ALSA], [test "${have_alsa}" = "yes"])
3577 dnl win32 waveOut plugin
3579 AC_ARG_ENABLE(waveout,
3580 [ --enable-waveout Win32 waveOut module (default enabled on Win32)])
3581 if test "${enable_waveout}" != "no"; then
3582 if test "${SYS}" = "mingw32"; then
3583 VLC_ADD_PLUGIN([waveout])
3584 VLC_ADD_LIBS([waveout],[-lwinmm])
3586 if test "${SYS}" = "mingwce"; then
3587 VLC_ADD_PLUGIN([waveout])
3592 dnl CoreAudio plugin
3594 AC_ARG_ENABLE(macosx-audio,
3595 [ --enable-macosx-audio Mac OS X audio module (default enabled on MacOS X)])
3596 if test "x${enable_macosx_audio}" != "xno" &&
3597 (test "${SYS}" = "darwin" || test "${enable_macosx_audio}" = "yes")
3599 AC_CHECK_HEADERS(CoreAudio/CoreAudio.h,
3600 [ VLC_ADD_PLUGIN([auhal])
3601 VLC_ADD_LDFLAGS([auhal],[-Wl,-framework,CoreAudio,-framework,AudioUnit,-framework,AudioToolbox,-framework,Carbon])
3602 ], [ AC_MSG_ERROR([cannot find CoreAudio headers]) ])
3606 dnl AudioQueue plugin
3608 AC_ARG_ENABLE(audioqueue,
3609 [ --enable-audioqueue AudioQueue audio module (default disabled)])
3610 if test "${enable_audioqueue}" = "yes"
3612 VLC_ADD_PLUGIN([audioqueue])
3613 VLC_ADD_LDFLAGS([audioqueue], [-Wl,-framework,AudioToolbox,-framework,CoreFoundation])
3617 dnl Roku HD1000 audio
3619 AC_ARG_ENABLE(hd1000a,
3620 [ --enable-hd1000a HD1000 audio module (default enabled on HD1000)])
3621 if test "${enable_hd1000a}" != "no" -a "${CXX}" != "" &&
3622 (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
3623 test "${enable_hd1000a}" = "yes")
3626 AC_CHECK_HEADERS(deschutes/libraries/hdmachinex225/PCMAudioPlayer.h, [
3627 VLC_ADD_PLUGIN([hd1000a])
3628 AC_CHECK_LIB(HDMachineX225,main,VLC_ADD_LIBS([hd1000a],[-lHDMachineX225])) ])
3635 PKG_ENABLE_MODULES_VLC([JACK], [jack access_jack], [jack], [JACK audio I/O modules],[auto])
3638 dnl UPnP Plugin (Intel SDK)
3640 PKG_ENABLE_MODULES_VLC([UPNP], [upnp_intel], [libupnp], [Intel UPnp SDK],[auto])
3641 VLC_ADD_CXXFLAGS([upnp_intel],[${UPNP_CFLAGS}])
3644 dnl Interface plugins
3647 EXTEND_HELP_STRING([Interface plugins:])
3652 AC_ARG_ENABLE(skins2,
3653 [AS_HELP_STRING([--enable-skins2],[Skins2 interface module (default
3654 enabled except on MacOSX, BeOS and WinCE)])])
3655 if test "${enable_skins2}" = "yes" ||
3656 (test "${SYS}" != "darwin" && test "${SYS}" != "beos" &&
3657 test "${SYS}" != "mingwce" && test "${enable_skins2}" != "no"); then
3659 dnl test for the required libraries
3660 skins2_missing_lib="no"
3663 if test "${have_freetype}" != "yes"; then
3664 skins2_missing_lib="yes"
3665 if test "${enable_skins2}" = "yes"; then
3666 AC_MSG_ERROR([Could not find freetype (required for skins2)])
3670 if test "${skins2_missing_lib}" = "no" && (test "${SYS}" = "mingw32"); then
3671 VLC_ADD_PLUGIN([skins2])
3672 ALIASES="${ALIASES} svlc"
3673 VLC_ADD_CPPFLAGS([skins2],[-U_OFF_T_ -U_off_t -Imodules/gui/skins2 -DWIN32_SKINS])
3674 VLC_ADD_CXXFLAGS([skins2],[-O2 -fno-rtti])
3675 VLC_ADD_LIBS([skins2],[-loleaut32 -lwinspool -lwinmm -lshell32 -lctl3d32 -ladvapi32 -lwsock32 -lgdi32 -lcomdlg32 -lole32 -luuid -lcomctl32])
3677 else if test "${skins2_missing_lib}" = "no" && (test "${SYS}" = "darwin"); then
3678 VLC_ADD_PLUGIN([skins2])
3679 ALIASES="${ALIASES} svlc"
3680 VLC_ADD_CPPFLAGS([skins2],[-Imodules/gui/skins2 -DMACOSX_SKINS])
3681 VLC_ADD_CXXFLAGS([skins2],[-O2 -fno-rtti])
3682 VLC_ADD_LDFLAGS([skins2],[-Wl,-framework,Carbon])
3684 else if test "${skins2_missing_lib}" = "no"; then
3685 VLC_ADD_PLUGIN([skins2])
3686 ALIASES="${ALIASES} svlc"
3687 VLC_ADD_CPPFLAGS([skins2],[-Imodules/gui/skins2 ${X_CFLAGS} -DX11_SKINS])
3688 VLC_ADD_CXXFLAGS([skins2],[-O2 -fno-rtti])
3689 VLC_ADD_LIBS([skins2],[${X_LIBS} ${X_PRE_LIBS} -lXext -lXpm -lX11])
3690 need_xid_provider="no"
3693 AM_CONDITIONAL(BUILD_SKINS, [test "${enable_skins2}" = "yes" ||
3694 (test "${SYS}" != "darwin" && test "${SYS}" != "beos" &&
3695 test "${SYS}" != "mingwce" && test "${enable_skins2}" != "no")])
3700 AC_ARG_ENABLE(hildon,
3701 [ --enable-hildon Hildon touchscreen UI (default disabled)])
3702 AS_IF([test "${enable_hildon}" = "yes"], [
3703 PKG_CHECK_MODULES(HILDON, [hildon-1], [
3704 PKG_CHECK_MODULES(HILDON_FM, hildon-fm-2, [
3705 VLC_ADD_CFLAGS([hildon],[${HILDON_FM_CFLAGS} -DHAVE_HILDON_FM])
3706 VLC_ADD_LIBS([hildon],[${HILDON_FM_LIBS}])
3708 AC_MSG_WARN(hildon-fm-2 not found)
3710 VLC_ADD_CFLAGS([hildon],[${HILDON_CFLAGS} ${X_CFLAGS}])
3711 VLC_ADD_LIBS([hildon],[${HILDON_LIBS} ${X_LIBS} ${X_PRE_LIBS} -lX11])
3712 VLC_ADD_PLUGIN([hildon])
3713 ALIASES="${ALIASES} mvlc"
3714 need_xid_provider="no"
3716 AS_IF([test "${enable_hildon}" = "yes"],[
3717 AC_MSG_ERROR([Hildon libraries not found])
3722 AM_CONDITIONAL(BUILD_HILDON, [test "${enable_hildon}" = "yes"])
3728 [ --enable-qt4 Qt 4 support (default enabled) ],, [
3729 AS_IF([test "${SYS}" = "darwin"], [enable_qt4=no])
3731 AS_IF([test "${enable_qt4}" != "no"], [
3732 PKG_CHECK_MODULES(QT4, [QtCore QtGui >= 4.4.0], [
3733 VLC_ADD_PLUGIN([qt4])
3734 VLC_ADD_LIBS([qt4],[${QT4_LIBS}])
3735 VLC_ADD_CXXFLAGS([qt4],[${QT4_CFLAGS}])
3736 ALIASES="${ALIASES} qvlc"
3739 CPPFLAGS_save="${CPPFLAGS}"
3741 AC_MSG_CHECKING([whether Qt uses X11])
3742 CPPFLAGS="${CPPFLAGS} ${QT4_CFLAGS}"
3745 #if !defined (Q_WS_X11)
3749 AC_MSG_RESULT([yes])
3750 VLC_ADD_LIBS([qt4],[${X_LIBS} ${X_PRE_LIBS} -lX11])
3751 need_xid_provider="no"
3752 VLC_ADD_CXXFLAGS([qt4],[${X_CFLAGS}])
3757 CPPFLAGS="${CPPFLAGS_save}"
3760 AS_IF([test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"], [
3761 VLC_ADD_LIBS([qt4],[-lole32])
3763 AC_PATH_PROGS(MOC, [moc-qt4 moc], moc,`eval $PKG_CONFIG --variable=exec_prefix QtCore`/bin)
3764 AC_PATH_PROG(RCC, rcc, rcc,`eval $PKG_CONFIG --variable=exec_prefix QtCore`/bin)
3765 AC_PATH_PROGS(UIC, [uic-qt4 uic], uic,`eval $PKG_CONFIG --variable=exec_prefix QtCore`/bin)
3767 AS_IF([test "${enable_qt4}" = "yes"],[
3768 AC_MSG_ERROR([Qt 4 library not found])
3770 AC_MSG_WARN([Qt 4 library not found])
3775 AM_CONDITIONAL(ENABLE_QT4, [test "x$enable_qt4" != "xno"])
3778 dnl Simple test for skins2 dependency
3780 AS_IF([test "${enable_skins2}" != "no" && test "x$enable_qt4" = "xno"], [
3781 AC_MSG_ERROR([The skins2 module depends on a the Qt4 development package. Without it you won't be able to open any dialog box from the interface, which makes the skins2 interface rather useless. Install the Qt4 development package or alternatively you can also configure with: --disable-qt4 --disable-skins2.])
3785 dnl MacOS X video output/gui modules
3787 AC_ARG_ENABLE(macosx,
3788 [ --enable-macosx Mac OS X gui support (default enabled on Mac OS X)])
3789 if test "x${enable_macosx}" = "xyes"
3791 VLC_ADD_LDFLAGS([macosx minimal_macosx],[-Wl,-framework,Cocoa])
3792 VLC_ADD_LDFLAGS([macosx minimal_macosx],[-Wl,-framework,OpenGL])
3793 VLC_ADD_LDFLAGS([macosx minimal_macosx], [-Wl,-framework,Carbon])
3794 VLC_ADD_LDFLAGS([macosx minimal_macosx], [-Wl,-framework,CoreServices])
3795 VLC_ADD_LDFLAGS([macosx minimal_macosx], [-Wl,-framework,AGL])
3796 VLC_ADD_LDFLAGS([macosx], [-Wl,-framework,IOKit])
3797 VLC_ADD_LDFLAGS([macosx], [-F${CONTRIB_DIR}/Sparkle -Wl,-framework,Sparkle])
3798 VLC_ADD_OBJCFLAGS([macosx], [-F${CONTRIB_DIR}/Sparkle])
3800 VLC_ADD_LDFLAGS([macosx], [-Wl,-framework,AddressBook])
3801 VLC_ADD_LDFLAGS([macosx], [-Wl,-framework,WebKit])
3802 VLC_ADD_OBJCFLAGS([macosx minimal_macosx], [-fobjc-exceptions] )
3804 VLC_ADD_PLUGIN([macosx minimal_macosx])
3808 dnl MacOS X related modules
3811 AC_ARG_ENABLE(macosx-vout,
3812 [ --enable-macosx-vout Mac OS X video output module (default enabled on Mac OS X)])
3813 if test "x${enable_macosx_vout}" != "xno" &&
3814 (test "${SYS}" = "darwin" || test "${enable_macosx_vout}" = "yes")
3816 VLC_ADD_LDFLAGS([vout_macosx],[-Wl,-framework,Cocoa])
3817 VLC_ADD_LDFLAGS([vout_macosx],[-Wl,-framework,OpenGL])
3818 VLC_ADD_PLUGIN([vout_macosx])
3821 AC_ARG_ENABLE(macosx-dialog-provider,
3822 [ --enable-macosx-dialog-provider Mac OS X dialog module (default enabled on Mac OS X)])
3823 if test "x${enable_macosx_dialog_provider}" != "xno" &&
3824 (test "${SYS}" = "darwin" || test "${enable_macosx_dialog_provider}" = "yes")
3826 VLC_ADD_LDFLAGS([macosx_dialog_provider],[-Wl,-framework,Cocoa])
3827 VLC_ADD_PLUGIN([macosx_dialog_provider])
3830 AC_ARG_ENABLE(macosx-qtcapture,
3831 [ --enable-macosx-qtcapture Mac OS X qtcapture (iSight) module (default enabled on Mac OS X)])
3832 if test "x${enable_macosx_qtcapture}" != "xno" &&
3833 (test "${SYS}" = "darwin" || test "${enable_macosx_qtcapture}" = "yes")
3835 VLC_ADD_LDFLAGS([qtcapture], [-Wl,-framework,Cocoa])
3836 VLC_ADD_LDFLAGS([qtcapture], [-Wl,-framework,QTKit])
3837 VLC_ADD_LDFLAGS([qtcapture], [-Wl,-framework,CoreAudio])
3838 VLC_ADD_LDFLAGS([qtcapture], [-Wl,-framework,QuartzCore])
3839 VLC_ADD_LDFLAGS([qtcapture], [-Wl,-framework,CoreVideo])
3840 VLC_ADD_PLUGIN([qtcapture])
3843 AC_ARG_ENABLE(macosx-eyetv,
3844 [ --enable-macosx-eyetv Mac OS X EyeTV (TNT Tuner) module (default enabled on Mac OS X)])
3845 if test "x${enable_macosx_eyetv}" != "xno" &&
3846 (test "${SYS}" = "darwin" || test "${enable_macosx_eyetv}" = "yes")
3848 VLC_ADD_LDFLAGS([access_eyetv], [-Wl,-framework,Foundation])
3849 VLC_ADD_PLUGIN([access_eyetv])
3852 AC_ARG_ENABLE(macosx-vlc-app,
3853 [ --enable-macosx-vlc-app build the VLC media player (default enabled on Mac OS X)])
3854 AM_CONDITIONAL(BUILD_MACOSX_VLC_APP, [test "${enable_macosx_vlc_app}" != "no" &&
3855 (test "${SYS}" = "darwin" || test "${enable_macosx_vlc_app}" = "yes") ])
3861 AC_ARG_ENABLE(ncurses,
3862 [ --disable-ncurses ncurses interface support (default disabled)],
3863 [if test "${enable_ncurses}" != "no"; then
3864 AC_CHECK_HEADER(ncurses.h,
3865 [AC_CHECK_LIB(ncursesw, mvprintw,
3866 [VLC_ADD_PLUGIN([ncurses])
3867 VLC_ADD_LIBS([ncurses],[-lncursesw])
3868 ALIASES="${ALIASES} nvlc"
3869 AC_DEFINE([HAVE_NCURSESW], 1, [Define to 1 if you have libncursesw.])
3870 AC_CHECK_LIB(ncursesw, tgetent, [],
3871 AC_CHECK_LIB(tinfow, tgetent, [VLC_ADD_LIBS([ncurses],[-ltinfow])],
3872 [AC_CHECK_LIB(tinfo, tgetent, [VLC_ADD_LIBS([ncurses],[-ltinfo])],
3873 [AS_IF([test "x${enable_ncurses}" != "x"],
3874 [AC_MSG_ERROR([tgetent not found in ncursesw tinfow tinfo]
3880 [AC_CHECK_LIB( ncurses, mvprintw,
3881 [VLC_ADD_PLUGIN([ncurses])
3882 ALIASES="${ALIASES} nvlc"
3883 VLC_ADD_LIBS([ncurses],[-lncurses])
3884 AC_CHECK_LIB(ncurses, tgetent, [],
3885 [AC_CHECK_LIB(tinfo, tgetent, [VLC_ADD_LIBS([ncurses],[-ltinfo])],
3886 [AS_IF([test "x${enable_ncurses}" != "x"],
3887 [AC_MSG_ERROR([tgetent not found in ncurses tinfo])])]
3890 [AS_IF([test "x${enable_ncurses}" != "x"], [
3891 AC_MSG_ERROR([libncurses not found])])]
3902 [ --enable-xosd xosd interface support (default disabled)])
3903 if test "${enable_xosd}" = "yes"
3905 AC_CHECK_HEADERS(xosd.h,
3906 AC_CHECK_LIB(xosd, xosd_set_horizontal_offset, [
3907 VLC_ADD_PLUGIN([xosd])
3908 VLC_ADD_LIBS([xosd],[-lxosd])
3914 dnl Framebuffer (overlay) plugin
3916 AC_ARG_ENABLE(fbosd,
3917 [ --enable-fbosd fbosd interface support (default disabled)])
3918 if test "${enable_fbosd}" = "yes"
3920 AC_CHECK_HEADERS(linux/fb.h, [
3921 VLC_ADD_PLUGIN([fbosd])
3926 dnl Post-interface configuration checks
3928 AS_IF([test "$need_xid_provider" = "yes"], [
3929 AC_MSG_ERROR([X11 video outputs need a window provider (Qt4, Skins2, Hildon or xcb-utils), but none were found. Please install xcb-keysyms.])
3933 dnl Visualisation plugin
3935 AC_ARG_ENABLE(visual,
3936 [ --enable-visual visualisation plugin (default enabled)])
3937 if test "${enable_visual}" != "no"
3939 VLC_ADD_PLUGIN([visual])
3943 dnl goom visualization plugin
3945 PKG_ENABLE_MODULES_VLC([GOOM], [], [libgoom2], [goom visualization plugin], [auto])
3948 dnl libprojectM visualization plugin
3950 AC_ARG_ENABLE(projectm,
3951 [ --enable-projectm projectM visualization plugin (default enabled)])
3952 AS_IF([test "${enable_projectm}" != "no"],
3954 PKG_CHECK_MODULES(PROJECTM, libprojectM,
3956 VLC_ADD_PLUGIN([projectm])
3957 VLC_ADD_CXXFLAGS([projectm],[$PROJECTM_CFLAGS])
3958 VLC_ADD_LIBS([projectm],[$PROJECTM_LIBS])
3959 PKG_CHECK_MODULES(PROJECTM2, [libprojectM >= 2.0.0],
3960 [ AC_DEFINE([HAVE_PROJECTM2], 1, [Define to 1 if using libprojectM 2.x]) ],
3961 [ AC_MSG_WARN( [Using libprojectM version 1] )
3964 AC_MSG_WARN([libprojectM library not found])
3969 dnl AtmoLight (homemade Philips Ambilight clone)
3972 AS_HELP_STRING([--disable-atmo],[AtmoLight (homemade Philips Ambilight clone)
3973 (default enabled)]),, [enable_atmo="yes"])
3974 AS_IF([test "${enable_atmo}" != no], [
3975 AS_IF([test "${SYS}" = "mingw32" -o "${SYS}" = "linux"], [
3977 VLC_ADD_PLUGIN([atmo])
3983 dnl Bonjour services discovery
3984 PKG_ENABLE_MODULES_VLC([BONJOUR], [], [avahi-client >= 0.6], [Bonjour services discovery], [auto])
3987 dnl libudev services discovery
3988 PKG_ENABLE_MODULES_VLC([UDEV], [], [libudev >= 142], [Linux udev services discovery], [auto])
3991 dnl MTP devices services discovery
3992 PKG_ENABLE_MODULES_VLC([MTP], [mtp access_mtp], [libmtp >= 1.0.0], [MTP devices support], [auto])
3998 [ --enable-lirc lirc support (default disabled)])
3999 if test "${enable_lirc}" = "yes"
4001 AC_CHECK_HEADER(lirc/lirc_client.h, AC_CHECK_LIB(lirc_client, lirc_init, have_lirc="true", have_lirc="false"),have_lirc="false")
4002 if test "${have_lirc}" = "true"
4004 VLC_ADD_PLUGIN([lirc])
4005 VLC_ADD_LIBS([lirc],[-llirc_client])
4009 EXTEND_HELP_STRING([Misc options:])
4014 AC_ARG_ENABLE(libgcrypt,
4015 [ --disable-libgcrypt gcrypt support (default enabled)])
4016 AS_IF([test "${enable_libgcrypt}" != "no"], [
4017 AC_CHECK_DECL([GCRYCTL_SET_THREAD_CBS], [
4018 libgcrypt-config --version >/dev/null || \
4019 AC_MSG_ERROR([gcrypt.h present but libgcrypt-config could not be found])
4020 AC_CHECK_LIB(gcrypt, gcry_control, [
4021 have_libgcrypt="yes"
4022 GCRYPT_CFLAGS="`libgcrypt-config --cflags`"
4023 GCRYPT_LIBS="`libgcrypt-config --libs`"
4025 AC_MSG_ERROR([libgcrypt not found. Install libgcrypt or use --disable-libgcrypt. Have a nice day.])
4026 ], [`libgcrypt-config --libs`])
4028 AC_MSG_ERROR([libgcrypt version 1.1.94 or higher not found. Install libgcrypt or use --disable-libgcrypt. Have a nice day.])
4029 ], [#include <gcrypt.h>]
4033 if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"; then
4034 AS_IF([test "${have_libgcrypt}" = "yes"],[
4035 VLC_ADD_LIBS([rtp stream_out_rtp], [${GCRYPT_LIBS}])
4038 AC_SUBST(GCRYPT_CFLAGS)
4039 AC_SUBST(GCRYPT_LIBS)
4040 AM_CONDITIONAL([HAVE_GCRYPT], [test "${have_libgcrypt}" = "yes"])
4045 AC_ARG_ENABLE(gnutls,
4046 [ --enable-gnutls gnutls TLS/SSL support (default enabled)])
4048 AS_IF([test "${have_libgcrypt}" != "yes"], [
4049 AS_IF([test "${enable_gnutls}" = "yes"], [
4050 AC_MSG_ERROR([--enable-gnutls and --disable-libgcrypt are mutually exclusive.])
4054 AS_IF([test "${enable_gnutls}" != "no"], [
4055 PKG_CHECK_MODULES(GNUTLS, [gnutls >= 1.7.4], [
4056 VLC_ADD_PLUGIN([gnutls])
4057 VLC_ADD_CFLAGS([gnutls], [$GNUTLS_CFLAGS])
4058 AS_IF([test "${SYS}" = "mingw32"], [
4059 dnl pkg-config --libs gnutls omits these
4060 VLC_ADD_LIBS([gnutls], [-lz ${LTLIBINTL}])
4062 dnl The GnuTLS plugin invokes gcry_control directly.
4063 AS_IF([test "${have_libgcrypt}" = "yes"],[
4064 VLC_ADD_LIBS([gnutls], [${GCRYPT_LIBS}])
4065 VLC_ADD_CFLAGS([gnutls], [${GCRYPT_CFLAGS}])
4067 VLC_ADD_LIBS([gnutls], [$GNUTLS_LIBS])
4069 AS_IF([test "${enable_gnutls}" = "yes"], [
4070 AC_MSG_ERROR([gnutls not present or too old (version 1.7.4 required)])
4077 dnl RemoteOSD plugin (VNC client as video filter)
4079 AC_ARG_ENABLE(remoteosd,
4080 [ --disable-remoteosd RemoteOSD plugin (default enabled)])
4082 AS_IF([test "${enable_remoteosd}" != "no"], [
4083 AS_IF([test "${have_libgcrypt}" = "yes"],[
4084 VLC_ADD_PLUGIN([remoteosd])
4085 VLC_ADD_LIBS([remoteosd], ${GCRYPT_LIBS})
4086 VLC_ADD_CFLAGS([remoteosd], ${GCRYPT_CFLAGS})
4088 AC_MSG_ERROR([libgcrypt support required for RemoteOSD plugin])
4096 AC_MSG_CHECKING([whether to enable RAOP plugin])
4097 AS_IF([test "${have_libgcrypt}" = "yes"], [
4099 VLC_ADD_PLUGIN([stream_out_raop])
4100 VLC_ADD_LIBS([stream_out_raop], [${GCRYPT_LIBS} -lgpg-error])
4101 VLC_ADD_CFLAGS([stream_out_raop], [${GCRYPT_CFLAGS}])
4104 AC_MSG_WARN([libgcrypt support required for RAOP plugin])
4109 dnl OSSO (Maemo screen blanking) plugin
4111 PKG_ENABLE_MODULES_VLC([OSSO_SCREENSAVER], [], [libosso], [Maemo support], [auto])
4113 AS_IF([test -f "/etc/maemo_version"], [
4114 AC_DEFINE([HAVE_MAEMO], 1, [Define to 1 if building for the Maemo platform.])
4119 dnl update checking system
4121 AC_ARG_ENABLE(update-check,
4122 [ --enable-update-check update checking system (default disabled)])
4123 if test "${enable_update_check}" = "yes"
4125 if test "${have_libgcrypt}" != "yes"
4127 AC_MSG_ERROR([libgcrypt is required for update checking system])
4129 VLC_ADD_LIBS([libvlccore], [${GCRYPT_LIBS}])
4130 VLC_ADD_CFLAGS([libvlccore], [${GCRYPT_CFLAGS}])
4131 AC_DEFINE([UPDATE_CHECK], 1, [Define if you want to use the VLC update mechanism])
4138 [ --with-sqlite=PATH sqlite path linking])
4139 if test "${SYS}" != "darwin"; then
4140 PKG_ENABLE_MODULES_VLC([SQLITE], [], [sqlite3 >= 3.6.0], [sqlite3], [auto])
4142 if test "${enable_sqlite}" != "no"
4144 AC_CHECK_HEADERS(sqlite3.h, [
4145 VLC_ADD_PLUGIN([sqlite])
4146 if test "${with_sqlite}" != "no" -a -n "${with_sqlite}"; then
4147 AC_MSG_CHECKING(existence of sqlite directory in ${with_sqlite})
4148 real_sqlite="`cd ${with_sqlite} 2>/dev/null && pwd`"
4149 if test -z "${real_sqlite}"
4151 dnl The given directory can't be found
4153 AC_MSG_ERROR([cannot cd to ${with_sqlite}])
4155 VLC_ADD_CFLAGS([sqlite],[-I${with_sqlite}/include])
4156 VLC_ADD_LIBS([sqlite], [-L${with_sqlite}/lib -lsqlite3])
4159 VLC_ADD_LIBS([sqlite], [-lsqlite3])
4161 AC_DEFINE([SQLITE_MODULE], 1, [Define if you want to use SQLite module]) ],
4162 AC_MSG_ERROR([sqlite3 is required for sqlite module]) )
4165 AM_CONDITIONAL([HAVE_SQLITE], [test "${enable_sqlite}" != "no"])
4169 dnl Endianness check
4172 AS_IF([test "${ac_cv_c_bigendian}" = "yes"], [
4173 DEFS_BIGENDIAN="-DWORDS_BIGENDIAN=1"
4177 AC_SUBST(DEFS_BIGENDIAN)
4180 dnl Where to install KDE solid .desktop
4182 AC_ARG_VAR([KDE4_CONFIG], [kde4-config utility])
4183 AS_IF([test "x$KDE4_CONFIG" = "x"], [
4184 KDE4_CONFIG="kde4-config"
4187 AC_ARG_WITH(kde-solid,
4188 AS_HELP_STRING([--with-kde-solid=PATH],
4189 [KDE Solid actions directory (auto)]),, [
4191 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ; then
4192 with_kde_solid="yes"
4196 AS_IF([test "${with_kde_solid}" != "no"], [
4197 AS_IF([test "${with_kde_solid}" = "yes"], [
4198 kde4datadir="`${KDE4_CONFIG} --install data`"
4199 AS_IF([test "x$kde4datadir" = "x"], [kde4datadir='${datadir}/kde4/apps'])
4200 soliddatadir="${kde4datadir}/solid/actions"
4202 soliddatadir="${with_kde_solid}"
4205 AC_SUBST(soliddatadir)
4206 AM_CONDITIONAL(KDE_SOLID, [test "x${soliddatadir}" != "x"])
4209 dnl DLL loader copied from MPlayer copied from somewhere else (WINE ?)
4212 AC_ARG_ENABLE(loader,
4213 AS_HELP_STRING([--enable-loader],[build DLL loader for ELF i386 platforms
4214 (default disabled)]))
4215 AM_CONDITIONAL(LOADER, [test "${enable_loader}" = "yes"])
4216 AS_IF([test "${enable_loader}" = "yes"],
4217 [ VLC_ADD_PLUGIN([dmo])
4218 VLC_ADD_CPPFLAGS([dmo quicktime realvideo],[-I\\\${top_srcdir}/libs/loader])
4219 VLC_ADD_LIBS([dmo quicktime realvideo],[\\\${top_builddir}/libs/loader/libloader.la])
4220 VLC_ADD_CPPFLAGS([realvideo], [-DLOADER])
4221 VLC_ADD_LIBS([dmo quicktime], [-lpthread])
4224 EXTEND_HELP_STRING([Components:])
4230 [ --enable-vlc build the VLC media player (default enabled)])
4231 AM_CONDITIONAL(BUILD_VLC, [test "${enable_vlc}" != "no"])
4234 dnl Microsoft ActiveX support
4237 AC_ARG_ENABLE(activex,
4238 AS_HELP_STRING([--enable-activex],[build a vlc-based ActiveX control
4239 (default enabled on Win32)]))
4240 AC_ARG_WITH(wine-sdk-path,
4241 [ --with-wine-sdk-path=PATH path to wine sdk])
4242 if test "${enable_activex}" != "no"
4244 if test "${SYS}" = "mingw32"
4246 AC_CHECK_PROGS(MIDL, [midl], no)
4247 if test "${with_wine_sdk_path}" != ""
4249 WINE_SDK_PATH=${with_wine_sdk_path}
4250 AC_PATH_PROG(WIDL, widl, no, [$WINE_SDK_PATH/bin:$WINE_SDK_PATH/tools/widl])
4255 AC_CHECK_HEADERS(ole2.h,
4256 [AC_CHECK_HEADERS(olectl.h,
4257 [ VLC_ADD_CPPFLAGS([activex],[-DUNICODE -D_UNICODE -D_MIDL_USE_GUIDDEF_])
4258 VLC_ADD_CXXFLAGS([activex],[-fno-exceptions])
4259 VLC_ADD_LIBS([activex],[-lole32 -loleaut32 -luuid -lshlwapi])
4260 AC_CHECK_HEADERS(objsafe.h,
4261 VLC_ADD_CXXFLAGS([activex],[-DHAVE_OBJSAFE_HEADER]),,
4269 PLUGINS_BINDINGS="${PLUGINS_BINDINGS} activex"
4271 [ AC_MSG_ERROR([required OLE headers are missing from your system]) ]
4273 [ AC_MSG_ERROR([required OLE headers are missing from your system]) ]
4278 AC_ARG_VAR(MIDL, [Microsoft IDL compiler (Win32 platform only)])
4279 AM_CONDITIONAL(HAS_MIDL_COMPILER, test "${MIDL}" != "no")
4280 AC_ARG_VAR(WIDL, [Wine IDL compiler (requires Wine SDK)])
4281 AM_CONDITIONAL(HAS_WIDL_COMPILER, test "${WIDL}" != "no")
4282 AM_CONDITIONAL(BUILD_ACTIVEX,${activex})
4288 AC_ARG_ENABLE(mozilla,
4289 AS_HELP_STRING([--enable-mozilla],[build a vlc-based Firefox/Mozilla plugin
4290 (default disabled)]))
4291 AC_ARG_WITH(mozilla-sdk-path,
4292 [ --with-mozilla-sdk-path=PATH path to mozilla sdk])
4293 AC_ARG_WITH(mozilla-pkg,
4294 [ --with-mozilla-pkg=PKG look for PKG.pc to build the mozilla plugin.])
4296 if test "${enable_mozilla}" = "yes"
4298 AS_IF([test "${with_mozilla_sdk_path}" = "" -o "${with_mozilla_sdk_path}" = "no"],
4301 dnl As we want to do a loop due to the number of name possible for the .pc
4302 dnl we can't use the pkg-config macros.
4304 AC_ARG_VAR([MOZILLA_CFLAGS], [C compiler flags for Mozilla, overriding pkg-config])
4305 AC_ARG_VAR([MOZILLA_LIBS], [linker flags for Mozilla, overriding pkg-config])
4306 AC_MSG_NOTICE([Checking for Mozilla])
4308 if test -n "$MOZILLA_CFLAGS" -o -n "$MOZILLA_LIBS"
4312 if test -n "$PKG_CONFIG"; then
4313 for i in "${with_mozilla_pkg}" libxul {seamonkey,iceape,xulrunner,firefox,iceweasel,mozilla}-plugin; do
4316 echo "Trying to find $i package" >&AS_MESSAGE_LOG_FD
4317 AC_MSG_CHECKING([for $i >= 1.9.2])
4318 if $PKG_CONFIG --exists --print-errors "$i >= 1.9.2" 2>&AS_MESSAGE_LOG_FD
4320 echo "Using $i pkg-config package." >&AS_MESSAGE_LOG_FD
4321 echo "Using $i package." >&AS_MESSAGE_FD
4323 MOZILLA_CFLAGS=$(eval $PKG_CONFIG --cflags "$i" )
4324 MOZILLA_LIBS=$(eval $PKG_CONFIG --libs "$i" )
4325 AC_MSG_RESULT([yes])
4333 AS_IF( [test $found = 1],[
4334 CPPFLAGS="${CPPFLAGS_save} ${MOZILLA_CFLAGS}"
4335 MOZILLA_REQUIRED_HEADERS=1
4336 AC_CHECK_HEADERS(npapi.h,,MOZILLA_REQUIRED_HEADERS=0)
4337 AC_CHECK_HEADERS(npruntime.h,,MOZILLA_REQUIRED_HEADERS=0,
4342 if test "${MOZILLA_REQUIRED_HEADERS}" = "0"; then
4343 AC_MSG_ERROR([Please install the Firefox development tools; plugin/npapi.h and/or plugin/npruntime.h were not found.])
4345 MOZILLA_REQUIRED_HEADERS=
4347 AS_IF([ test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"],[
4348 VLC_ADD_CPPFLAGS([mozilla],[-DXP_UNIX])
4349 AS_IF([ test "${SYS}" != "darwin"],[
4350 PKG_CHECK_MODULES(XPM, [xpm xt],[
4351 VLC_ADD_CPPFLAGS([mozilla],[-DMOZ_X11])
4353 AC_MSG_ERROR([Please install the libXpm and libXt development files.])
4355 AS_IF([test "${have_xcb_keysyms}" != "yes"], [
4356 AC_MSG_ERROR([Please install xcb-keysyms from xcb-utils.])
4360 VLC_ADD_CPPFLAGS([mozilla],[${CPPFLAGS} ${XPM_CFLAGS}])
4361 VLC_ADD_LIBS([mozilla],[${MOZILLA_LIBS} ${XPM_LIBS}])
4362 VLC_ADD_PLUGIN([mozilla])
4363 PLUGINS_BINDINGS="${PLUGINS_BINDINGS} mozilla"
4365 CPPFLAGS="${CPPFLAGS_save}"
4368 AC_PATH_PROGS(MOZILLA_CONFIG,
4369 [mozilla-config seamonkey-config xulrunner-config],
4371 test "${MOZILLA_CONFIG}" = "no" && AC_MSG_ERROR([Please install the Mozilla development tools (version 1.9.2 or higher) or use --disable-mozilla.])
4374 dnl pkg-config failed but we might have found a mozilla-config
4375 AS_IF( [test ! -z "${MOZILLA_CONFIG}"],[
4376 if ${MOZILLA_CONFIG} --defines | grep -q 'MOZ_X11=1'; then
4377 LDFLAGS="${LDFLAGS_save} ${X_LIBS} ${X_PRE_LIBS}"
4378 AC_CHECK_LIB(Xt,XtStrings,
4380 VLC_ADD_CPPFLAGS([mozilla],[${X_CFLAGS}])
4381 VLC_ADD_LIBS([mozilla],[${X_LIBS} ${X_PRE_LIBS} -lXt -lX11 -lSM -lICE -lXpm])
4384 [[${X_LIBS} ${X_PRE_LIBS} -lX11 -lSM -lICE -lXpm]
4386 AC_CHECK_HEADERS(X11/xpm.h,,AC_MSG_ERROR([Please install libXpm-devel library for required X11/xpm.h]))
4387 AS_IF([test "${have_xcb_keysyms}" != "yes"], [
4388 AC_MSG_ERROR([Please install xcb-keysyms from xcb-utils.])
4390 LDFLAGS="${LDFLAGS_save}"
4394 PLUGINS_BINDINGS="${PLUGINS_BINDINGS} mozilla"
4395 VLC_ADD_CPPFLAGS([mozilla],[[`${MOZILLA_CONFIG} --cflags plugin java`]])
4396 VLC_ADD_LIBS([mozilla],[`${MOZILLA_CONFIG} --libs plugin`])
4397 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_mozilla}"
4398 MOZILLA_REQUIRED_HEADERS=1
4399 AC_CHECK_HEADERS(mozilla-config.h,,MOZILLA_REQUIRED_HEADERS=0)
4400 AC_CHECK_HEADERS(npapi.h,,MOZILLA_REQUIRED_HEADERS=0)
4401 AC_CHECK_HEADERS(npruntime.h,,MOZILLA_REQUIRED_HEADERS=0,
4406 if test "${MOZILLA_REQUIRED_HEADERS}" = "0"
4408 AC_MSG_ERROR([Please install the Mozilla development tools, required headers were not found.])
4410 MOZILLA_REQUIRED_HEADERS=
4411 CPPFLAGS="${CPPFLAGS_save}"
4412 MOZILLA_SDK_PATH="`${MOZILLA_CONFIG} --prefix`"
4414 dnl End of moz_sdk = ""
4416 dnl special case for mingw32
4417 if test "${SYS}" = "mingw32"
4419 AC_CHECK_TOOL(CYGPATH, cygpath, "")
4420 dnl latest gecko sdk does not have an xpcom directory
4421 if test -d "${with_mozilla_sdk_path}/xpcom"; then
4422 mozilla_sdk_xpcom="/xpcom"
4426 real_mozilla_sdk="`cd ${with_mozilla_sdk_path} 2>/dev/null && pwd`"
4427 CPPFLAGS="${CPPFLAGS_save} -I${real_mozilla_sdk}/include"
4428 MOZILLA_REQUIRED_HEADERS=1
4429 AC_CHECK_HEADERS(npapi.h,,MOZILLA_REQUIRED_HEADERS=0)
4430 AC_CHECK_HEADERS(npruntime.h,,MOZILLA_REQUIRED_HEADERS=0,
4435 if test "${MOZILLA_REQUIRED_HEADERS}" = "0"
4437 AC_MSG_ERROR([Please install the Mozilla development tools, required headers were not found.])
4439 MOZILLA_REQUIRED_HEADERS=
4441 PLUGINS_BINDINGS="${PLUGINS_BINDINGS} mozilla"
4442 VLC_ADD_CPPFLAGS([mozilla],[-DXPCOM_GLUE -DHAVE_CPP_MODERN_SPECIALIZE_TEMPLATE_SYNTAX -I${real_mozilla_sdk}/include])
4443 MOZILLA_SDK_PATH="${real_mozilla_sdk}"
4445 if test -n "${CYGPATH}"; then
4446 real_mozilla_sdk="`${CYGPATH} -w ${real_mozilla_sdk}`"
4448 CPPFLAGS="${CPPFLAGS_save}"
4452 AM_CONDITIONAL(BUILD_MOZILLA,${mozilla})
4455 dnl Plugin and builtin checks
4459 dnl Automagically disable plugins if there is no system support for
4460 dnl dynamically loadable files (.so, .dll, .dylib).
4461 dnl don't forget vlc-win32 still can load .dll as plugins
4462 AS_IF([test "${ac_cv_have_plugins}" = "no"], [
4463 AC_MSG_WARN([*** No plugin support! Building statically! ***])
4467 AS_IF([test "${plugin_support}" != "no"], [
4468 AC_DEFINE(HAVE_DYNAMIC_PLUGINS, 1, [Define if dynamic plugins are supported])
4472 dnl Pic and shared libvlc stuff
4474 AS_IF([test "${SYS}" = "mingw32"], [
4475 FILE_LIBVLCCORE_DLL="!define LIBVLCCORE_DLL libvlccore.dll"
4476 FILE_LIBVLC_DLL="!define LIBVLC_DLL libvlc.dll"
4480 dnl Stuff used by the program
4482 VERSION_MESSAGE="${VERSION} ${CODENAME}"
4483 COPYRIGHT_MESSAGE="Copyright © ${COPYRIGHT_YEARS} the VideoLAN team"
4484 AC_DEFINE_UNQUOTED(VERSION_MESSAGE, "${VERSION_MESSAGE}", [Simple version string])
4485 AC_DEFINE_UNQUOTED(COPYRIGHT_MESSAGE, "${COPYRIGHT_MESSAGE}", [Copyright string])
4486 AC_DEFINE_UNQUOTED(COPYRIGHT_YEARS, "${COPYRIGHT_YEARS}", [The copyright years])
4487 AC_DEFINE_UNQUOTED(CONFIGURE_LINE, "${CONFIGURE_LINE}", [The ./configure command line])
4488 AC_DEFINE_UNQUOTED(PACKAGE_VERSION_MAJOR,"${VERSION_MAJOR}", [version major number])
4489 AC_DEFINE_UNQUOTED(PACKAGE_VERSION_MINOR,"${VERSION_MINOR}", [version minor number])
4490 AC_DEFINE_UNQUOTED(PACKAGE_VERSION_REVISION,"${VERSION_REVISION}", [version minor number])
4491 AC_DEFINE_UNQUOTED(PACKAGE_VERSION_EXTRA,"${VERSION_EXTRA}", [version minor number])
4492 AC_SUBST(COPYRIGHT_MESSAGE)
4493 AC_SUBST(VERSION_MESSAGE)
4494 AC_SUBST(VERSION_MAJOR)
4495 AC_SUBST(VERSION_MINOR)
4496 AC_SUBST(VERSION_REVISION)
4497 AC_SUBST(VERSION_EXTRA)
4498 AC_SUBST(COPYRIGHT_YEARS)
4499 AC_DEFINE_UNQUOTED(VLC_COMPILE_BY, "`whoami`", [user who ran configure])
4500 AC_DEFINE_UNQUOTED(VLC_COMPILE_HOST, "`hostname -f 2>/dev/null || hostname`", [host which ran configure])
4501 AC_DEFINE_UNQUOTED(VLC_COMPILER, "`$CC -v 2>&1 | tail -n 1`", [compiler])
4502 dnl Win32 need s a numerical version_extra.
4503 case $( echo ${VERSION_EXTRA}|wc -m ) in
4504 "1") VERSION_EXTRA_RC="0";;
4505 "2") VERSION_EXTRA_RC=$( echo ${VERSION_EXTRA}|tr "abcdefghi" "123456789") ;;
4506 *) VERSION_EXTRA_RC="99"
4508 AC_SUBST(VERSION_EXTRA_RC)
4510 dnl Handle substvars that use $(top_srcdir)
4512 VLC_CONFIG="top_srcdir=\"\$(top_srcdir)\" top_builddir=\"\$(top_builddir)\" \$(top_builddir)/vlc-config"
4513 AC_SUBST(VLC_CONFIG)
4514 CPPFLAGS_save="-I\$(top_srcdir)/include -I\$(top_builddir)/include ${CPPFLAGS_save}"
4522 dnl Sort the modules list
4524 PLUGINS=$( (for i in `echo $PLUGINS`; do echo $i; done)|sort|xargs )
4527 dnl Create the vlc-config script
4529 LDFLAGS_libvlc="${LDFLAGS_libvlc} ${LDFLAGS_builtin}"
4532 dnl Configuration is finished
4542 AC_SUBST(MOZILLA_SDK_PATH)
4543 AC_SUBST(WINE_SDK_PATH)
4545 AC_SUBST(AM_CPPFLAGS)
4546 AC_SUBST(MACOSX_DEPLOYMENT_TARGET)
4547 AC_SUBST(FILE_LIBVLCCORE_DLL)
4548 AC_SUBST(FILE_LIBVLC_DLL)
4550 dnl Create vlc-config.in
4551 VLC_OUTPUT_VLC_CONFIG_IN
4555 projects/activex/Makefile
4557 libs/loader/Makefile
4561 projects/mozilla/Makefile
4570 modules/access/Makefile
4571 modules/access/bd/Makefile
4572 modules/access/bda/Makefile
4573 modules/access/dshow/Makefile
4574 modules/access/dvb/Makefile
4575 modules/access/mms/Makefile
4576 modules/access/rtp/Makefile
4577 modules/access/rtsp/Makefile
4578 modules/access/vcd/Makefile
4579 modules/access/vcdx/Makefile
4580 modules/access/screen/Makefile
4581 modules/access/zip/Makefile
4582 modules/access_output/Makefile
4583 modules/audio_filter/Makefile
4584 modules/audio_filter/channel_mixer/Makefile
4585 modules/audio_filter/converter/Makefile
4586 modules/audio_filter/resampler/Makefile
4587 modules/audio_filter/spatializer/Makefile
4588 modules/audio_mixer/Makefile
4589 modules/audio_output/Makefile
4590 modules/codec/Makefile
4591 modules/codec/avcodec/Makefile
4592 modules/codec/dmo/Makefile
4593 modules/codec/omxil/Makefile
4594 modules/codec/shine/Makefile
4595 modules/codec/spudec/Makefile
4596 modules/codec/wmafixed/Makefile
4597 modules/control/Makefile
4598 modules/control/http/Makefile
4599 modules/control/dbus/Makefile
4600 modules/control/globalhotkeys/Makefile
4601 modules/demux/Makefile
4602 modules/demux/asf/Makefile
4603 modules/demux/avformat/Makefile
4604 modules/demux/avi/Makefile
4605 modules/demux/mkv/Makefile
4606 modules/demux/mp4/Makefile
4607 modules/demux/mpeg/Makefile
4608 modules/demux/playlist/Makefile
4609 modules/gui/Makefile
4610 modules/gui/macosx/Makefile
4611 modules/gui/hildon/Makefile
4612 modules/gui/minimal_macosx/Makefile
4613 modules/gui/macosx_dialog_provider/Makefile
4614 modules/gui/qt4/Makefile
4615 modules/gui/skins2/Makefile
4616 modules/meta_engine/Makefile
4617 modules/misc/Makefile
4618 modules/misc/dummy/Makefile
4619 modules/misc/lua/Makefile
4620 modules/misc/notify/Makefile
4621 modules/misc/playlist/Makefile
4622 modules/misc/osd/Makefile
4623 modules/misc/stats/Makefile
4624 modules/misc/xml/Makefile
4625 modules/mux/Makefile
4626 modules/mux/mpeg/Makefile
4627 modules/packetizer/Makefile
4628 modules/services_discovery/Makefile
4629 modules/stream_filter/Makefile
4630 modules/stream_out/Makefile
4631 modules/stream_out/transcode/Makefile
4632 modules/video_chroma/Makefile
4633 modules/video_filter/Makefile
4634 modules/video_filter/dynamicoverlay/Makefile
4635 modules/video_output/Makefile
4636 modules/video_output/msw/Makefile
4637 modules/visualization/Makefile
4638 modules/visualization/visual/Makefile
4639 modules/mmx/Makefile
4640 modules/mmxext/Makefile
4641 modules/3dnow/Makefile
4642 modules/sse2/Makefile
4643 modules/altivec/Makefile
4644 modules/arm_neon/Makefile
4647 AM_COND_IF([BUILD_MOZILLA], [
4649 projects/mozilla/install.js
4650 projects/mozilla/install.rdf
4651 projects/mozilla/manifest.json
4655 AM_COND_IF([HAVE_WIN32], [
4657 extras/package/win32/spad.nsi
4658 extras/package/win32/vlc.win32.nsi
4660 AM_COND_IF([BUILD_ACTIVEX], [
4662 projects/activex/axvlc.inf
4663 projects/activex/axvlc_rc.rc
4666 AM_COND_IF([BUILD_MOZILLA], [
4668 projects/mozilla/npvlc_rc.rc
4673 AM_COND_IF([HAVE_DARWIN], [
4675 extras/package/macosx/Info.plist
4676 extras/package/macosx/Resources/English.lproj/InfoPlist.strings
4677 extras/package/macosx/plugin/Info.plist
4678 extras/package/macosx/plugin/InstallerInfo.plist
4680 AM_COND_IF([BUILD_MOZILLA], [
4682 projects/mozilla/vlc.r
4687 dnl Generate makefiles
4690 # Cannot use AC_CONFIG_FILES([vlc-config]) as is automatically built,
4691 # not provided with the source
4692 ${SHELL} ./config.status --file=vlc-config
4693 chmod 0755 vlc-config
4695 /bin/echo -n "Enabled modules: "
4696 ./vlc-config --list plugin
4698 dnl Do we have to use make or gmake ?
4699 USE_MAKE_OR_GMAKE=`case "${SYS}" in openbsd*) echo "gmake";; *) echo "make";; esac`
4700 dnl Shortcut to nice compile message
4702 if test -n $SHELL; then
4703 SHELL=${CONFIG_SHELL-/bin/sh}
4705 echo '#! '$SHELL >compile
4706 echo rm -f .error\$\$ >>compile
4707 echo ERROR=0 >>compile
4708 echo export PATH=$PATH LANG=C >>compile
4709 echo "($USE_MAKE_OR_GMAKE V=1 \$@ 2>&1 || touch .error\$\$)| \\" >>compile
4710 echo '`sed -ne "s/^top_srcdir *= *//p" < Makefile`/extras/buildsystem/make.pl' >>compile
4711 echo test -f .error\$\$ \&\& ERROR=1 >>compile
4712 echo rm -f .error\$\$ >>compile
4713 echo exit \$ERROR >>compile
4717 libvlc configuration
4718 --------------------
4719 version : ${VERSION}
4721 architecture : ${ARCH}
4723 test "${enable_debug}" = "yes" && printf "debug "
4724 test "${enable_cprof}" = "yes" && printf "cprof "
4725 test "${enable_gprof}" = "yes" && printf "gprof "
4726 test "${enable_optimizations}" = "yes" && printf "optim "
4728 if test "${enable_vlc}" != "no"; then
4729 echo "vlc aliases :${ALIASES}"
4731 echo "build vlc executable : no"
4733 echo "plugins/bindings :${PLUGINS_BINDINGS}
4735 You can tune the compiler flags in vlc-config.
4736 To build vlc and its plugins, type \`./compile' or \`$USE_MAKE_OR_GMAKE'.
4738 if test "x$ac_ld_does_not_support_text_reloc" = "xyes"; then
4740 echo "Warning: Due to a bug in ld, mmx/sse support has been"
4742 echo " FFmpeg will be REALLY slow."
4743 echo " VLC WILL NOT PERFORM AS EXPECTED."