1 dnl Autoconf settings for vlc
3 AC_COPYRIGHT([Copyright 2002-2009 the VideoLAN team])
5 AC_INIT(vlc, 1.1.0-git)
13 CONFIGURE_LINE="`echo "$0 $ac_configure_args" | sed -e 's/\\\/\\\\\\\/g'`"
14 CODENAME="Yellow Bastard"
15 COPYRIGHT_YEARS="1996-2009"
18 AC_CONFIG_SRCDIR(src/libvlc.c)
19 AC_CONFIG_AUX_DIR(autotools)
20 AC_CONFIG_MACRO_DIR(m4)
21 AC_CONFIG_LIBOBJ_DIR(compat)
25 AM_INIT_AUTOMAKE(tar-ustar)
26 AM_CONFIG_HEADER(config.h)
28 # Disable with "./configure --disable-silent-rules" or "make V=1"
29 m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
32 dnl Too many people are not aware of maintainer mode:
33 dnl If you want to use it, you definitely know what you are doing, so
34 dnl you can specify "--disable-maintainer-mode". But if you want the default
35 dnl automake behavior, you've likely never heard of maintainer mode, so we
36 dnl can't expect you to enable it manually.
38 AS_IF([test "x${enable_maintainer_mode}" != "xno"],
39 [enable_maintainer_mode="yes"])
45 dnl vlcincludedir="\${includedir}/\${PKGDIR}"
46 dnl AC_SUBST(vlcincludedir)
47 vlcdatadir="\${datadir}/\${PKGDIR}"
49 vlclibdir="\${libdir}/\${PKGDIR}"
53 dnl Deprecated options
54 dnl to notify packagers that stuff has changed
56 AC_ARG_ENABLE(python-bindings,
57 [ --enable-python-bindings Always fails for historical reasons)],,
58 [enable_python_bindings="no"])
59 AS_IF([test "${enable_python_bindings}" != "no"], [
60 AC_MSG_ERROR([Python bindings are now built from a separate source package])
63 AC_ARG_ENABLE(java-bindings,
64 [ --enable-java-bindings Always fails for historical reasons],,
65 [enable_java_bindings="no"])
66 AS_IF([test "${enable_java_bindings}" != "no"], [
67 AC_MSG_ERROR([Java bindings are now built from a separate source package])
79 AC_USE_SYSTEM_EXTENSIONS
80 AC_DEFINE([_FORTIFY_SOURCE], 2, [Define to '2' to get glibc warnings.])
86 _AM_DEPENDENCIES([OBJC])
92 dnl Find the right ranlib, even when cross-compiling
93 AC_CHECK_TOOL(RANLIB, ranlib, :)
94 AC_CHECK_TOOL(STRIP, strip, :)
95 AC_CHECK_TOOL(AR, ar, :)
96 AC_CHECK_TOOL(LD, ld, :)
97 AC_CHECK_TOOL(DLLTOOL, dlltool, :)
99 dnl Check for compiler properties
104 dnl Allow binary package maintainer to pass a custom string to avoid
106 AC_ARG_WITH(binary-version,
107 AS_HELP_STRING([--with-binary-version=STRING],
108 [To avoid plugins cache problem between binary version]),[],[])
109 AS_IF([test -n "${with_binary_version}"],[
110 AC_DEFINE_UNQUOTED([DISTRO_VERSION],["${with_binary_version}"],
111 [Binary specific version])
116 dnl Check for the contrib directory
119 [ --without-contrib do not use the libraries in CONTRIB_DIR],[],[])
120 AS_IF([test "${with_contrib}" != "no"],[
121 AC_ARG_VAR([CONTRIB_DIR], [directory containing pre-built contrib, overriding extras/contrib])
122 if test -z "$CONTRIB_DIR"
124 topdir="`dirname $0`"
125 if test "`echo \"$topdir\" | cut -c 1`" != "/"; then
126 topdir="`pwd`/$topdir"
128 CONTRIB_DIR=${topdir}/extras/contrib
130 AC_MSG_CHECKING([for libs in ${CONTRIB_DIR}])
131 AS_IF([test -d ${CONTRIB_DIR}/lib],[
132 AS_IF([test "`grep HOST ${CONTRIB_DIR}/config.mak 2>/dev/null|awk '{print $3}'`" != "`$CC -dumpmachine`"],[
133 if test "${with_contrib}" = "yes"; then
135 AC_MSG_ERROR([ not using the libs in extras/contrib as it is not the same host])
138 AC_MSG_WARN([ not using the libs in extras/contrib as it is not the same host])
142 export PATH=${CONTRIB_DIR}/bin:$PATH
143 CPPFLAGS="${CPPFLAGS} -I${CONTRIB_DIR}/include"
144 CPPFLAGS_save="${CPPFLAGS_save} -I${CONTRIB_DIR}/include"
145 CFLAGS="${CFLAGS} -I${CONTRIB_DIR}/include"
146 CFLAGS_save="${CFLAGS_save} -I${CONTRIB_DIR}/include"
147 CXXFLAGS="${CXXFLAGS} -I${CONTRIB_DIR}/include"
148 CXXFLAGS_save="${CXXFLAGS_save} -I${CONTRIB_DIR}/include"
149 OBJCFLAGS="${OBJCFLAGS} -I${CONTRIB_DIR}/include"
150 OBJCFLAGS_save="${OBJCFLAGS_save} -I${CONTRIB_DIR}/include"
151 if test $build = $host -o "$PKG_CONFIG_LIBDIR"; then
152 export PKG_CONFIG_PATH=${CONTRIB_DIR}/lib/pkgconfig:$PKG_CONFIG_PATH
154 export PKG_CONFIG_LIBDIR=${CONTRIB_DIR}/lib/pkgconfig
156 LDFLAGS="${LDFLAGS} -L${CONTRIB_DIR}/lib"
157 LDFLAGS_save="${LDFLAGS_save} -L${CONTRIB_DIR}/lib"
159 if test -z $with_mozilla_sdk_path; then
160 with_mozilla_sdk_path=${CONTRIB_DIR}/gecko-sdk
162 if test -z $with_cyberlink_tree; then
163 with_cyberlink_tree=${CONTRIB_DIR}/src/clinkcc
166 if test ".`uname -s`" = ".Darwin"; then
167 export LD_LIBRARY_PATH=${CONTRIB_DIR}/lib:$LD_LIBRARY_PATH
168 export DYLD_LIBRARY_PATH=${CONTRIB_DIR}/lib:$DYLD_LIBRARY_PATH
169 elif test ".`uname -s`" = ".BeOS"; then
170 export LIBRARY_PATH=${CONTRIB_DIR}/lib:$LIBRARY_PATH
171 export BELIBRARIES=${CONTRIB_DIR}/lib:$BELIBRARIES
179 dnl Set default values
181 LDFLAGS_vlc="${LDFLAGS}"
184 dnl Check the operating system
195 CFLAGS_save="${CFLAGS_save} -pthread"; CFLAGS="${CFLAGS_save}"
196 VLC_ADD_LIBS([dvd dvdcss vcd cdda vcdx cddax],[-ldvd])
200 CFLAGS_save="${CFLAGS_save} -pthread"; CFLAGS="${CFLAGS_save}"
203 CPPFLAGS_save="${CPPFLAGS_save} -I/usr/local/include"
204 CPPFLAGS="${CPPFLAGS_save}"
205 LDFLAGS_save="${LDFLAGS_save} -L/usr/local/lib"
206 LDFLAGS="${LDFLAGS_save}"
212 CFLAGS_save="${CFLAGS_save} -D_INTL_REDIRECT_MACROS"; CFLAGS="${CFLAGS_save}"
213 CXXFLAGS_save="${CXXFLAGS_save} -D_INTL_REDIRECT_MACROS"; CXXFLAGS="${CXXFLAGS_save}"
214 OBJCFLAGS_save="${OBJCFLAGS_save} -D_INTL_REDIRECT_MACROS -std=gnu99"; OBJCFLAGS="${OBJCFLAGS_save}"
215 LDFLAGS_save="${LDFLAGS_save} -Wl,-headerpad_max_install_names"; LDFLAGS="${LDFLAGS_save}"
216 VLC_ADD_LDFLAGS([mp4], [-Wl,-framework,IOKit,-framework,CoreFoundation])
217 VLC_ADD_LDFLAGS([mkv mp4], [-Wl,-framework,IOKit,-framework,CoreFoundation])
218 VLC_ADD_LDFLAGS([vlc],[-Wl,-undefined,dynamic_lookup])
219 VLC_ADD_LDFLAGS([libvlc],[-Wl,-undefined,dynamic_lookup])
220 VLC_ADD_LDFLAGS([avcodec avformat 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 VLC_ADD_LDFLAGS([motion],[-Wl,-framework,IOKit,-framework,CoreFoundation])
224 AC_ARG_ENABLE(macosx-defaults,
225 AS_HELP_STRING([--enable-macosx-defaults],[Build the default configuration on Mac OS X (default enabled)]))
226 if test "x${enable_macosx_defaults}" != "xno"
229 echo "Building with Mac OS X defaults:"
230 with_macosx_version_min="10.5"
231 echo " Assuming --with-macosx-version-min=10.5"
232 with_macosx_sdk="/Developer/SDKs/MacOSX${with_macosx_version_min}.sdk"
233 echo " Assuming --with-macosx-sdk=/Developer/SDKs/MacOSX${with_macosx_version_min}.sdk"
235 echo " Assuming --prefix=${build_dir}/vlc_install_dir"
236 ac_default_prefix="${build_dir}/vlc_install_dir"
238 echo " Assuming --enable-macosx"
240 echo " Assuming --enable-faad"
242 echo " Assuming --enable-flac"
244 echo " Assuming --enable-theora"
246 echo " Assuming --enable-shout"
248 echo " Assuming --enable-cddax"
250 echo " Assuming --enable-vcdx"
252 echo " Assuming --enable-caca"
254 echo " Assuming --enable-goom"
256 echo " Assuming --enable-ncurses"
258 echo " Assuming --enable-twolame"
259 enable_realrtsp="yes"
260 echo " Assuming --enable-realrtsp"
262 echo " Assuming --enable-libass"
263 enable_asademux="yes"
264 echo " Assuming --enable-asademux"
267 echo " Assuming --disable-skins2"
269 echo " Assuming --disable-x11"
271 echo " Assuming --disable-xcb"
273 echo " Assuming --disable-glx"
275 echo " Assuming --disable-xvideo"
278 dnl Check for Mac OS X SDK settings
280 AC_ARG_WITH(macosx-sdk,
281 [ --with-macosx-sdk=DIR compile using the SDK in DIR])
282 if test "${with_macosx_sdk}" != "" ; then
283 CPP="${CPP} -isysroot ${with_macosx_sdk}"
284 CC="${CC} -isysroot ${with_macosx_sdk}"
285 CXX="${CXX} -isysroot ${with_macosx_sdk}"
286 OBJC="${OBJC} -isysroot ${with_macosx_sdk}"
287 LD="${LD} -syslibroot ${with_macosx_sdk}"
289 AC_ARG_WITH(macosx-version-min,
290 [ --with-macosx-version-min=VERSION compile for MacOSX VERSION and above])
291 if test "${with_macosx_version_min}" != "" ; then
292 CPP="${CPP} -mmacosx-version-min=${with_macosx_version_min}"
293 CC="${CC} -mmacosx-version-min=${with_macosx_version_min}"
294 CXX="${CXX} -mmacosx-version-min=${with_macosx_version_min}"
295 OBJC="${OBJC} -mmacosx-version-min=${with_macosx_version_min}"
296 LD="${LD} -macosx_version_min=${with_macosx_version_min}"
297 CFLAGS_save="${CFLAGS_save} -DMACOSX_DEPLOYMENT_TARGET=${with_macosx_version_min}"; CFLAGS="${CFLAGS_save}"
298 CXXFLAGS_save="${CXXFLAGS_save} -DMACOSX_DEPLOYMENT_TARGET=${with_macosx_version_min}"; CXXFLAGS="${CXXFLAGS_save}"
299 OBJCFLAGS_save="${OBJCFLAGS_save} -DMACOSX_DEPLOYMENT_TARGET=${with_macosx_version_min}"; OBJCFLAGS="${OBJCFLAGS_save}"
300 MACOSX_DEPLOYMENT_TARGET=${with_macosx_version_min}
301 export MACOSX_DEPLOYMENT_TARGET
305 if (test ".`uname -p`" = ".i386"); then
306 dnl Due to a ld(64) bug in 10.5 we cannot use our mmx code
307 dnl without hacking it a lot, we disable mmx and sse.
308 dnl (that bug is about ld being unable to handle
310 save_cflags="$CFLAGS"
311 CFLAGS="$CFLAGS -dynamiclib -single_module -read_only_relocs suppress"
313 [int a;], [asm("movq _a,%mm0\n");],
314 ac_ld_does_not_support_text_reloc=no,
315 ac_ld_does_not_support_text_reloc=yes)
316 CFLAGS="$save_cflags"
318 if test "x$ac_ld_does_not_support_text_reloc" = "xyes"; then
320 echo " Assuming --disable-mmx (due to a bug in ld)"
322 echo " Assuming --disable-sse (due to a bug in ld)"
326 *mingw32* | *cygwin* | *wince* | *mingwce*)
327 AC_CHECK_TOOL(WINDRES, windres, :)
328 AC_CHECK_TOOL(OBJCOPY, objcopy, :)
331 *wince* | *mingwce* | *mingw32ce*)
333 dnl Sadly CeGCC still needs non-wince macros
334 AC_DEFINE([_WIN32_WINNT], 0x0501, [Define to '0x0500' for Windows 2000 APIs.])
338 AC_DEFINE([_WIN32_WINNT], 0x0500, [Define to '0x0500' for Windows 2000 APIs.])
341 dnl Check if we are using the mno-cygwin mode in which case we are
342 dnl actually dealing with a mingw32 compiler.
343 AC_DEFINE([_WIN32_WINNT], 0x0500, [Define to '0x0500' for Windows 2000 APIs.])
348 SYS=mingw32, SYS=cygwin)
352 if test "${SYS}" = "mingw32"; then
353 # add ws2_32 for closesocket, select, recv
354 VLC_ADD_LIBS([libvlccore],[-lws2_32 -lnetapi32 -lwinmm])
355 VLC_ADD_LDFLAGS([vlc],[-mwindows])
356 VLC_ADD_LIBS([activex mozilla],[-lgdi32])
357 VLC_ADD_LIBS([cdda vcdx cddax sdl_image],[-lwinmm])
358 VLC_ADD_LIBS([access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp access_output_shout access_output_rtmp sap slp http stream_out_standard stream_out_rtp stream_out_raop vod_rtsp access_realrtsp rtp telnet rc netsync gnutls growl_udp flac ts audioscrobbler lua remoteosd zvbi],[-lws2_32])
359 VLC_ADD_LIBS([access_file], [-lshlwapi])
361 if test "${SYS}" = "mingwce"; then
362 # add ws2 for closesocket, select, recv
363 VLC_ADD_LIBS([libvlccore access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp access_output_rtmp sap http netsync audioscrobbler growl rtp stream_out_rtp remoteosd ts],[-lws2])
364 VLC_ADD_LIBS([libvlccore],[-lmmtimer])
378 CFLAGS_save="${CFLAGS_save} -Wno-multichar"; CFLAGS="${CFLAGS_save}"
379 CXXFLAGS_save="${CXXFLAGS_save} -Wno-multichar"; CXXFLAGS="${CXXFLAGS_save}"
380 VLC_ADD_CXXFLAGS([beos],[])
381 VLC_ADD_LIBS([vlc libvlccore logger],[-lbe])
382 VLC_ADD_LIBS([beos],[-lbe -lmedia -ltranslation -ltracker -lgame])
383 VLC_ADD_LIBS([dvdnav dvdread],[-ldl])
384 VLC_ADD_LIBS([access_file],[-lpoll])
385 LDFLAGS_save="${LDFLAGS_save} -lintl"; LDFLAGS="${LDFLAGS_save}"
387 if test -f /boot/beos/system/lib/libbind.so; then
388 VLC_ADD_LIBS([access_file access_ftp access_mms access_output_udp telnet netsync sap libvlccore growl_udp],[-lbind -lsocket])
390 VLC_ADD_LIBS([access_file access_ftp access_mms access_output_udp telnet netsync sap libvlccore growl_udp],[-lnet])
393 dnl Ugly check for Zeta
394 if test -f /boot/beos/system/lib/libzeta.so; then
395 VLC_ADD_LIBS([beos],[-lzeta])
402 AM_CONDITIONAL(HAVE_BEOS, test "${SYS}" = "beos")
403 AM_CONDITIONAL(HAVE_DARWIN, test "${SYS}" = "darwin")
404 AM_CONDITIONAL(HAVE_LINUX, [test "${SYS}" = "linux"])
405 AM_CONDITIONAL(HAVE_WIN32, test "${SYS}" = "mingw32")
406 AM_CONDITIONAL(HAVE_WINCE, test "${SYS}" = "mingwce")
409 dnl Sadly autoconf doesn't think about testing foo.exe when ask to test
410 dnl for program foo on win32
412 case "${build_os}" in
414 ac_executable_extensions=".exe"
422 dnl It's very bad, but our former custom system was worst
426 dnl override platform specific check for dependent libraries
427 dnl otherwise libtool linking of shared libraries will
428 dnl fail on anything other than pass_all.
429 AC_CACHE_VAL(lt_cv_deplibs_check_method,
430 [lt_cv_deplibs_check_method=pass_all])
433 dnl AC_DISABLE_FAST_INSTALL
436 m4_undefine([AC_PROG_F77])
437 m4_defun([AC_PROG_F77],[])
440 m4_undefine([AC_DEPLIBS_CHECK_METHOD])
441 m4_defun([AC_DEPLIBS_CHECK_METHOD],[])
443 lt_cv_deplibs_check_method=pass_all
449 AM_GNU_GETTEXT_VERSION([0.17])
450 AM_GNU_GETTEXT([external])
451 VLC_ADD_LIBS([libvlccore vlc], [${LTLIBINTL}])
457 VLC_ADD_CFLAGS([libvlccore],[${INCICONV}])
458 VLC_ADD_LIBS([libvlccore],[${LTLIBICONV}])
460 dnl Check for broken versions of mingw-runtime compatability library
461 AS_IF([test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"], [
462 AC_MSG_CHECKING(for broken mingw-runtime)
465 #if (__MINGW32_MAJOR_VERSION == 3) && (__MINGW32_MINOR_VERSION < 15)
466 # error Attempting to use mingw-runtime with broken vsnprintf support
471 AC_MSG_RESULT([present])
472 AC_MSG_ERROR([LibVLC requires mingw-runtime version 3.15 or higher!])
474 dnl force use of mingw provided c99 *printf over msvcrt
475 CPPFLAGS="${CPPFLAGS} -D__USE_MINGW_ANSI_STDIO=1"
476 CPPFLAGS_save="${CPPFLAGS_save} -D__USE_MINGW_ANSI_STDIO=1"
479 dnl Check for the need to include the mingwex lib for mingw32
480 if test "${SYS}" = "mingw32"
482 AC_CHECK_LIB(mingwex,opendir,
483 AC_CHECK_LIB(mingw32,opendir,,
484 [VLC_ADD_LIBS([libvlccore gtk],[-lmingwex])])
488 dnl Check for fnative-struct or mms-bitfields support for mingw32
489 if test "${SYS}" = "mingw32"
491 AC_CACHE_CHECK([if \$CC accepts -mms-bitfields],
492 [ac_cv_c_mms_bitfields],
493 [CFLAGS="${CFLAGS_save} -mms-bitfields"
494 AC_TRY_COMPILE([],,ac_cv_c_mms_bitfields=yes, ac_cv_c_mms_bitfields=no)])
495 if test "${ac_cv_c_mms_bitfields}" != "no"; then
496 CFLAGS_save="${CFLAGS_save} -mms-bitfields";
497 CXXFLAGS_save="${CXXFLAGS_save} -mms-bitfields";
499 AC_CACHE_CHECK([if \$CC accepts -fnative-struct],
500 [ac_cv_c_fnative_struct],
501 [CFLAGS="${CFLAGS_save} -fnative-struct"
502 AC_TRY_COMPILE([],,ac_cv_c_fnative_struct=yes, ac_cv_c_fnative_struct=no)])
503 if test "${ac_cv_c_fnative_struct}" != "no"; then
504 CFLAGS_save="${CFLAGS_save} -fnative-struct";
505 CXXFLAGS_save="${CXXFLAGS_save} -fnative-struct";
509 CFLAGS="${CFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}"
512 dnl Check for fvtable-thunks support for mingw32
513 if test "${SYS}" = "mingw32" -a "${CXX}" != ""
516 AC_CACHE_CHECK([if \$CXX accepts -fvtable-thunks],
517 [ac_cv_cxx_fvtable_thunks],
518 [CXXFLAGS="${CXXFLAGS_save} -Wall -Werror -fvtable-thunks"
519 AC_TRY_COMPILE([],,ac_cv_cxx_fvtable_thunks=yes,
520 ac_cv_cxx_fvtable_thunks=no)])
521 if test "${ac_cv_cxx_fvtable_thunks}" = "yes"; then
522 CXXFLAGS_mingw32_special="-fvtable-thunks"
525 CXXFLAGS_save="${CXXFLAGS_save} ${CXXFLAGS_mingw32_special}"; CXXFLAGS="${CXXFLAGS_save}"
530 dnl Buggy glibc prevention. Purposedly not cached.
531 dnl See sourceware.org bugs 5058 and 5443.
532 dnl Ubuntu alone has 20 bug numbers for this...
534 AC_MSG_CHECKING(for buggy GNU/libc versions)
537 #if defined (__GLIBC__) && (__GLIBC__ == 2) \
538 && (__GLIBC_MINOR__ >= 5) && (__GLIBC_MINOR__ <= 7)
539 # error GNU/libc with dcgettext killer bug!
542 AC_MSG_RESULT([not present])
544 AC_MSG_RESULT([found])
545 AS_IF([test "x${enable_nls}" != "xno" || test "x${enable_mozilla}" != "xno"], [
546 AC_MSG_ERROR([Buggy GNU/libc (version 2.5 - 2.7) present. VLC would crash; there is no viable
547 work-around for this. Check with your distribution vendor on how to update the
548 glibc run-time. Alternatively, build with --disable-nls --disable-mozilla and
549 be sure to not use LibVLC from other applications/wrappers.])
551 AC_DEFINE(DISABLE_BUGGY_GLIBC_CHECK, 1, [Disables runtime check for buggy glibc.])
555 dnl Plugin compilation stuff
559 dnl The -DSYS_FOO flag
560 CPPFLAGS_save="${CPPFLAGS_save} -DSYS_`echo ${SYS} | sed -e 's/-.*//' | tr 'abcdefghijklmnopqrstuvwxyz.' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ_'`"; CPPFLAGS="${CPPFLAGS_save}"
562 dnl Check for system libs needed
565 dnl Check for usual libc functions
566 AC_CHECK_FUNCS([gettimeofday isatty sigrelse getpwuid_r memalign posix_memalign if_nametoindex getenv putenv setenv ctime_r lrintf daemon fork lstat posix_fadvise posix_madvise uselocale])
568 AC_CHECK_FUNCS(fcntl)
569 AC_REPLACE_FUNCS([asprintf atof atoll getcwd gmtime_r lldiv localtime_r rewind strcasecmp strcasestr strdup strlcpy strncasecmp strndup strnlen strsep strtof strtoll vasprintf swab])
570 AC_CHECK_FUNCS([stricmp strnicmp])
571 AC_CHECK_FUNCS(fdatasync,,
572 [AC_DEFINE(fdatasync, fsync, [Alias fdatasync() to fsync() if missing.])
575 dnl Check for non-standard system calls
576 AC_CHECK_FUNCS([vmsplice fstatfs])
578 AH_BOTTOM([#include <vlc_fixups.h>])
580 AC_CHECK_FUNCS(mmap, [VLC_ADD_PLUGIN([access_mmap])])
582 dnl Check for setlocal and langinfo
583 AC_CHECK_FUNCS(setlocale)
584 AC_CHECK_HEADERS(langinfo.h)
585 AC_CHECK_FUNCS(nl_langinfo)
587 AC_CACHE_CHECK([for nl_langinfo and CODESET], ac_cv_langinfo_codeset,
588 [AC_TRY_LINK([#include <langinfo.h>],
589 [char* cs = nl_langinfo(CODESET);],
590 ac_cv_langinfo_codeset=yes,
591 ac_cv_langinfo_codeset=no)
593 if test ${ac_cv_langinfo_codeset} = yes; then
594 AC_DEFINE(HAVE_LANGINFO_CODESET, 1,
595 [Define if you have <langinfo.h> and nl_langinfo(CODESET).])
599 AC_CHECK_FUNCS(connect,,[
600 AC_CHECK_LIB(socket,connect,[
601 VLC_ADD_LIBS([libvlccore cdda cddax],-lsocket)
602 SOCKET_LIBS="-lsocket"
605 AC_SUBST(SOCKET_LIBS)
607 AC_CHECK_FUNCS(send,,[
608 AC_CHECK_LIB(socket,send,[
609 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],[-lsocket])
614 dnl Check for socklen_t
615 AH_TEMPLATE(socklen_t, [Define to `int' if <sys/socket.h> does not define.])
616 AC_CACHE_CHECK([for socklen_t in sys/socket.h],
617 ac_cv_type_socklen_t,
618 [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
619 [#include <sys/types.h>
621 # include <winsock2.h>
622 # include <ws2tcpip.h>
624 # include <sys/socket.h>
625 #endif]], [[socklen_t len; len = 0;]])],
626 ac_cv_type_socklen_t=yes,
627 ac_cv_type_socklen_t=no)])
628 AS_IF([test "$ac_cv_type_socklen_t" = no],
629 [AC_DEFINE(socklen_t, int)])
631 dnl Check for struct sockaddr_storage
632 AH_TEMPLATE(sockaddr_storage, [Define to `sockaddr' if <sys/socket.h> does not define.])
633 AH_TEMPLATE(ss_family, [Define to `sa_family' if <sys/socket.h> does not define.])
634 AC_CACHE_CHECK([for struct sockaddr_storage], ac_cv_struct_sockaddr_storage,
636 [#include <sys/types.h>
637 #if defined( UNDER_CE )
638 # include <winsock2.h>
639 #elif defined( WIN32 )
640 # include <winsock2.h>
642 # include <sys/socket.h>
643 #endif], [struct sockaddr_storage addr;],
644 ac_cv_struct_sockaddr_storage=yes,
645 ac_cv_struct_sockaddr_storage=no)])
646 AS_IF([test "${ac_cv_struct_sockaddr_storage}" = no], [
647 AC_DEFINE(sockaddr_storage, sockaddr)
648 AC_DEFINE(ss_family, sa_family)
651 dnl getaddrinfo, getnameinfo and gai_strerror check
652 dnl -lnsl and -lsocket are needed on Solaris;
653 dnl we purposedly make the test fail on Windows
655 AH_TEMPLATE(HAVE_GETADDRINFO, [Define to 1 if you have the `getaddrinfo' function.])
656 AC_SEARCH_LIBS([getaddrinfo], [nsl], [AC_DEFINE(HAVE_GETADDRINFO)],, [${SOCKET_LIBS}])
658 dnl NOTE: we assume getaddrinfo will be present if getnameinfo or gai_strerro
661 AC_CHECK_FUNCS([getnameinfo gai_strerror])
664 AH_TEMPLATE(HAVE_ADDRINFO, [Define to 1 if <netdb.h> defines `struct addrinfo'.])
665 AC_CHECK_TYPES([struct addrinfo],[AC_DEFINE(HAVE_ADDRINFO)],,
666 [#include <sys/types.h>
667 #if defined( WIN32 ) || defined( UNDER_CE )
668 # if defined(UNDER_CE) && defined(sockaddr_storage)
669 # undef sockaddr_storage
671 # include <winsock2.h>
672 # include <ws2tcpip.h>
677 dnl Check for va_copy
678 AC_CACHE_CHECK([for va_copy], ac_cv_c_va_copy,
680 [#include <stdarg.h>],
681 [va_list ap1, ap2; va_copy(ap1,ap2);],
682 [ac_cv_c_va_copy="yes"],
683 [ac_cv_c_va_copy="no"]))
684 if test "${ac_cv_c_va_copy}" = "yes"; then
685 AC_DEFINE(HAVE_VA_COPY, 1, [Define if <stdarg.h> defines va_copy.])
687 AC_CACHE_CHECK([for __va_copy], ac_cv_c___va_copy,
689 [#include <stdarg.h>],
690 [va_list ap1, ap2; __va_copy(ap1,ap2);],
691 [ac_cv_c___va_copy="yes"],
692 [ac_cv_c___va_copy="no"]))
693 if test "${ac_cv_c___va_copy}" = "yes"; then
694 AC_DEFINE(HAVE___VA_COPY, 1, [Define if <stdarg.h> defines __va_copy.])
697 AC_CHECK_FUNCS(inet_aton,,[
698 AC_CHECK_LIB(resolv,inet_aton,[
699 VLC_ADD_LIBS([libvlccore],[-lresolv])
703 dnl Check for getopt (always use builtin one on win32)
704 if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"; then
708 AC_CHECK_FUNCS(getopt_long,[AC_DEFINE(HAVE_GETOPT_LONG,1,long getopt support)],
709 [ # FreeBSD has a gnugetopt library for this:
710 AC_CHECK_LIB([gnugetopt],[getopt_long],
711 [AC_DEFINE(HAVE_GETOPT_LONG,1,getopt support)
712 VLC_ADD_LIBS([libvlccore],[-lgnugetopt])],
715 AM_CONDITIONAL(BUILD_GETOPT, ${need_getopt})
717 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
720 VLC_ADD_LIBS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom visual panoramix rotate noise grain scene],[-lm])
723 VLC_ADD_LIBS([avcodec avformat swscale postproc ffmpegaltivec i420_rgb faad twolame equalizer spatializer param_eq libvlccore freetype mod mpc dmo quicktime realaudio realvideo opengl],[-lm])
725 AC_CHECK_LIB(m,sqrt,[
726 VLC_ADD_LIBS([headphone_channel_mixer normvol speex mono colorthres extract],[-lm])
728 AC_CHECK_LIB(m,ceil,[
729 VLC_ADD_LIBS([hotkeys mosaic],[-lm])
732 VLC_ADD_LIBS([gaussianblur],[-lm])
734 AC_CHECK_LIB(m,round,[
735 VLC_ADD_LIBS([dbus],[-lm])
737 AC_CHECK_LIB(mx,sqrtf,[
738 VLC_ADD_LIBS([x264],[-lmx])
740 fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
742 dnl Check for dynamic plugins
743 ac_cv_have_plugins=no
746 if test "${ac_cv_have_plugins}" = "no"; then
747 AC_CHECK_HEADERS(dl.h)
748 ac_cv_my_have_shl_load=no
749 AC_CHECK_FUNC(shl_load,
750 [ac_cv_my_have_shl_load=yes,
751 AC_CHECK_LIB(dld, shl_load,
752 [ac_cv_my_have_shl_load=yes
753 VLC_ADD_LIBS([libvlccore],[-ldld])])])
754 if test "${ac_cv_my_have_shl_load}" = "yes"; then
755 AC_DEFINE(HAVE_DL_SHL_LOAD, 1, [Define if you have the shl_load API])
756 ac_cv_have_plugins=yes
761 if test "${ac_cv_have_plugins}" = "no"; then
762 if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"; then
763 AC_CHECK_LIB(kernel32, main,
764 [VLC_ADD_LIBS([libvlccore],[-lkernel32])
765 AC_DEFINE(HAVE_DL_WINDOWS, 1, [Define if you have Windows' LoadLibrary])
766 ac_cv_have_plugins=yes])
771 if test "${ac_cv_have_plugins}" = "no"; then
772 if test "${SYS}" = "mingwce"; then
773 AC_DEFINE(HAVE_DL_WINDOWS, 1, [Define if you have Windows' LoadLibrary])
774 ac_cv_have_plugins=yes
779 if test "${ac_cv_have_plugins}" = "no"; then
780 AC_CHECK_HEADERS(image.h)
781 AC_CHECK_FUNCS(load_add_on,
782 [AC_DEFINE(HAVE_DL_BEOS, 1, [Define if you have the BeOS dl])
783 ac_cv_have_plugins=yes])
786 # Only test for dlopen() if the others didn't work
787 if test "${ac_cv_have_plugins}" = "no" -o "${SYS}" = "darwin"; then
788 AC_CHECK_HEADERS(dlfcn.h sys/dl.h)
789 ac_cv_my_have_dlopen=no
790 AC_CHECK_FUNC(dlopen,
791 ac_cv_my_have_dlopen=yes,
792 AC_CHECK_LIB(dl, dlopen,
793 ac_cv_my_have_dlopen=yes
794 VLC_ADD_LIBS([libvlccore realaudio realvideo],[-ldl]),
795 AC_CHECK_LIB(svld, dlopen,
796 ac_cv_my_have_dlopen=yes
797 VLC_ADD_LIBS([libvlccore],[-lsvld]))))
798 if test "${ac_cv_my_have_dlopen}" = "yes"; then
799 AC_DEFINE(HAVE_DL_DLOPEN, 1, [Define if you have the dlopen API])
800 ac_cv_have_plugins=yes
804 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
805 dnl Check for pthreads - borrowed from XMMS
807 if test "${THREAD_LIB}" = "error"; then
808 AC_CHECK_LIB(pthread,main,THREAD_LIB="-lpthread")
810 if test "${THREAD_LIB}" = "error"; then
811 AC_CHECK_LIB(pthreads,main,THREAD_LIB="-lpthreads")
813 if test "${THREAD_LIB}" = "error"; then
814 AC_CHECK_LIB(c_r,main,THREAD_LIB="-lc_r")
816 if test "${THREAD_LIB}" = "error"; then
817 AC_CHECK_FUNCS(pthread_mutex_lock)
821 VLC_ADD_LIBS([libvlccore libvlc plugin],[${THREAD_LIB}])
823 AC_CHECK_LIB(rt, clock_nanosleep, [
824 VLC_ADD_LIBS([libvlccore],[-lrt])
825 AC_DEFINE(HAVE_CLOCK_NANOSLEEP, 1, [Define to 1 if you have clock_nanosleep.])
828 AC_CHECK_LIB(rt,sem_init, [VLC_ADD_LIBS([libvlccore],[-lrt])])
832 AC_CHECK_FUNCS(nanosleep,have_nanosleep=:,[
833 AC_CHECK_LIB(rt,nanosleep,
834 [VLC_ADD_LIBS([libvlccore],[-lrt]) have_nanosleep=:],
835 [AC_CHECK_LIB(posix4,nanosleep,
836 [VLC_ADD_LIBS([libvlccore],[-lposix4]) have_nanosleep=:])]
839 if ${have_nanosleep}; then
840 AC_DEFINE(HAVE_NANOSLEEP, 1, [Define if nanosleep is available.])
842 fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
844 dnl Check for misc headers
845 AC_MSG_CHECKING(for strncasecmp in strings.h)
846 AC_EGREP_HEADER(strncasecmp,strings.h,[
848 AC_DEFINE(STRNCASECMP_IN_STRINGS_H, 1,
849 Define if <strings.h> defines strncasecmp.)],[
852 dnl Check for headers
853 AC_CHECK_HEADERS(getopt.h strings.h locale.h xlocale.h)
854 AC_CHECK_HEADERS(fcntl.h sys/types.h sys/time.h sys/times.h sys/ioctl.h sys/stat.h sys/mount.h)
855 AC_CHECK_HEADERS([arpa/inet.h netinet/in.h netinet/udplite.h sys/eventfd.h])
856 AC_CHECK_HEADERS([net/if.h], [], [],
858 #include <sys/types.h>
859 #include <sys/socket.h>
861 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
862 AC_CHECK_HEADERS(machine/param.h sys/shm.h)
863 AC_CHECK_HEADERS([linux/version.h linux/dccp.h scsi/scsi.h])
864 AC_CHECK_HEADERS(syslog.h)
865 fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
869 dnl LP64 adn LLP64 architectures had better define ssize_t by themselves...
870 AH_TEMPLATE(ssize_t, [Define to `int' if <stddef.h> does not define.])
871 AC_CHECK_TYPE(ssize_t,, [
872 AC_DEFINE(ssize_t, int)
876 AC_SEARCH_LIBS(poll, [poll], [AC_DEFINE(HAVE_POLL, 1, [Define to 1 if the OS is usabl... err, has poll().])], [
877 if test ${SYS} != "mingw32"
879 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])
885 AC_CHECK_HEADERS(dirent.h,,[need_dirent=:])
886 AM_CONDITIONAL(BUILD_DIRENT, ${need_dirent})
888 dnl Mac OS X and other OSes don't have declaration for nanosleep
889 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
890 AC_MSG_CHECKING(for nanosleep in time.h)
891 AC_EGREP_HEADER(nanosleep,time.h,[
893 AC_DEFINE(HAVE_DECL_NANOSLEEP, 1,
894 Define if <time.h> defines nanosleep.)
898 fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
900 dnl Make sure we have timespecs
901 AC_MSG_CHECKING(for timespec in sys/time.h)
902 AC_EGREP_HEADER(timespec,sys/time.h,[
904 AC_DEFINE(HAVE_STRUCT_TIMESPEC, 1,
905 Define if <sys/time.h> defines struct timespec.)
910 dnl Check for threads library
911 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
912 AC_CHECK_HEADERS(pthread.h)
913 fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
915 dnl it seems that autoconf do the pkg-config detection only for the first PKG_CHECK_MODULES in the configure.ac ( which is logical) but in our case it is nested in a if so it was not working if you're not on linux or have disable hal.
916 dnl Make PKG_CONFIG_PATH precious so that it appears in the help and get saved
917 AC_ARG_VAR(PKG_CONFIG_PATH,
918 [Paths where to find .pc not at the default location])
919 PKG_PROG_PKG_CONFIG()
922 dnl Check for zlib.h and -lz along with system -lminizip if available
924 AC_CHECK_HEADERS(zlib.h, [ have_zlib=yes ], [ have_zlib=no ])
925 AM_CONDITIONAL(HAVE_ZLIB, [ test "${have_zlib}" = "yes" ])
926 if test "${have_zlib}" = "yes"
928 VLC_ADD_LIBS([access_http gme mp4 skins2 sap mkv unzip zip],[-lz])
929 PKG_CHECK_MODULES([MINIZIP], [minizip] , [ have_minizip=yes ], [
930 AC_CHECK_HEADERS([unzip.h], [
932 MINIZIP_LIBS="-lminizip -lz"
935 MINIZIP_CFLAGS="-I\\\${top_srcdir}/libs/unzip"
936 MINIZIP_LIBS="\\\${top_builddir}/libs/unzip/libunzip.la"
939 VLC_ADD_CPPFLAGS([skins2],[$MINIZIP_CFLAGS])
940 VLC_ADD_CFLAGS([zip],[$MINIZIP_CFLAGS])
941 VLC_ADD_LIBS([skins2 zip],[$MINIZIP_LIBS])
942 VLC_ADD_PLUGIN([unzip])
943 VLC_ADD_PLUGIN([zip])
945 AM_CONDITIONAL(HAVE_MINIZIP, [ test "${have_minizip}" = "yes" ])
950 [ --enable-dbus Linux D-BUS message bus system (default enabled)])
953 if test "${enable_dbus}" != "no" -a "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
956 PKG_CHECK_MODULES(DBUS, dbus-1 >= 1.0.0,
957 [ AC_DEFINE( HAVE_DBUS, 1, [Define if you have the D-BUS library] )
958 VLC_ADD_LIBS([screensaver libvlccore],[$DBUS_LIBS])
959 VLC_ADD_CFLAGS([screensaver libvlccore],[$DBUS_CFLAGS])
960 dnl Check for dbus control interface
961 AC_ARG_ENABLE(dbus-control, [ --disable-dbus-control D-BUS control interface (default enabled)])
962 if test "${enable_dbus_control}" != "no"
964 VLC_ADD_PLUGIN([dbus])
965 VLC_ADD_LIBS([dbus],[$DBUS_LIBS])
966 VLC_ADD_CFLAGS([dbus],[$DBUS_CFLAGS])
968 dnl Check for Telepathy
969 AC_ARG_ENABLE(telepathy,
970 AS_HELP_STRING([--enable-telepathy],[Telepathy Presence plugin through DBus(default enabled)]))
971 if test "${enable_telepathy}" != "no"; then
972 VLC_ADD_PLUGIN([telepathy])
973 VLC_ADD_LIBS([telepathy],[$DBUS_LIBS])
974 VLC_ADD_CFLAGS([telepathy],[$DBUS_CFLAGS])
976 dnl Power Management Inhibiter
977 VLC_ADD_PLUGIN([inhibit])
978 VLC_ADD_LIBS([inhibit],[$DBUS_LIBS])
979 VLC_ADD_CFLAGS([inhibit],[$DBUS_CFLAGS])
981 [AC_MSG_ERROR([Couldn't find DBus >= 1.0.0, install libdbus-dev ?])]
987 dnl Build the gtk_main plugins?
993 dnl build the qte plugin ?
996 dnl Check for ntohl, etc.
997 AC_CACHE_CHECK([for ntohl in sys/param.h],
998 [ac_cv_c_ntohl_sys_param_h],
999 [CFLAGS="${CFLAGS_save} -Wall -Werror"
1000 AC_TRY_COMPILE([#include <sys/param.h>],
1001 [int meuh; ntohl(meuh);],
1002 ac_cv_c_ntohl_sys_param_h=yes, ac_cv_c_ntohl_sys_param_h=no)])
1003 if test "${ac_cv_c_ntohl_sys_param_h}" != "no"; then
1004 AC_DEFINE(NTOHL_IN_SYS_PARAM_H, 1, Define if <sys/param.h> defines ntohl.)
1006 CFLAGS="${CFLAGS_save}"
1008 RDC_PROG_CC_WFLAGS([all extra sign-compare undef pointer-arith bad-function-cast cast-align write-strings missing-prototypes volatile-register-var error-implicit-function-declaration])
1009 RDC_PROG_CC_FLAGS_IFELSE([-pipe])
1011 dnl Check for various optimization flags
1012 AC_CACHE_CHECK([if \$CC accepts -Os],
1014 [CFLAGS="${CFLAGS_save} -Os"
1015 AC_TRY_COMPILE([],,ac_cv_c_os=yes, ac_cv_c_os=no)])
1016 if test "${ac_cv_c_os}" != "no"; then
1017 CFLAGS_OPTIM_SIZE="${CFLAGS_OPTIM_SIZE} -Os"
1019 AC_CACHE_CHECK([if \$CC accepts -O],
1021 [CFLAGS="${CFLAGS_save} -O"
1022 AC_TRY_COMPILE([],,ac_cv_c_o=yes, ac_cv_c_o=no)])
1023 if test "${ac_cv_c_o}" != "no"; then
1024 if test "${ac_cv_c_o3}" = "no"; then
1025 CFLAGS_OPTIM_SIZE="${CFLAGS_OPTIM_SIZE} -O"
1030 AC_CACHE_CHECK([if \$CC accepts -O4],
1032 [CFLAGS="${CFLAGS_save} -O4"
1033 AC_TRY_COMPILE([],,ac_cv_c_o4=yes, ac_cv_c_o4=no)])
1034 if test "${ac_cv_c_o4}" != "no" -a "x${enable_debug}" = "xno"; then
1035 CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -O4"
1037 AC_CACHE_CHECK([if \$CC accepts -O3],
1039 [CFLAGS="${CFLAGS_save} -O3"
1040 AC_TRY_COMPILE([],,ac_cv_c_o3=yes, ac_cv_c_o3=no)])
1041 if test "${ac_cv_c_o3}" != "no" -a "x${enable_debug}" = "xno"; then
1042 CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -O3"
1044 AC_CACHE_CHECK([if \$CC accepts -O2],
1046 [CFLAGS="${CFLAGS_save} -O2"
1047 AC_TRY_COMPILE([],,ac_cv_c_o2=yes, ac_cv_c_o2=no)])
1048 if test "${ac_cv_c_o2}" != "no"; then
1049 CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -O2"
1051 AC_CACHE_CHECK([if \$CC accepts -O],
1053 [CFLAGS="${CFLAGS_save} -O"
1054 AC_TRY_COMPILE([],,ac_cv_c_o=yes, ac_cv_c_o=no)])
1055 if test "${ac_cv_c_o}" != "no"; then
1056 CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -O"
1062 AC_CACHE_CHECK([if \$CC accepts -O0],
1064 [CFLAGS="${CFLAGS_save} -O0"
1065 AC_TRY_COMPILE([],,ac_cv_c_o0=yes, ac_cv_c_o0=no)])
1066 if test "${ac_cv_c_o0}" != "no"; then
1067 CFLAGS_NOOPTIM="${CFLAGS_NOOPTIM} -O0"
1070 dnl Check for -ffast-math
1071 AC_CACHE_CHECK([if \$CC accepts -ffast-math],
1072 [ac_cv_c_fast_math],
1073 [CFLAGS="${CFLAGS_save} -ffast-math"
1074 AC_TRY_COMPILE([],,ac_cv_c_fast_math=yes, ac_cv_c_fast_math=no)])
1075 if test "${ac_cv_c_fast_math}" != "no"; then
1076 CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -ffast-math"
1079 dnl Check for -funroll-loops
1080 dnl Disabled on BeOS because BeOS' gcc is buggy and may crash with it
1081 if test "${SYS}" != "beos"
1083 AC_CACHE_CHECK([if \$CC accepts -funroll-loops],
1084 [ac_cv_c_unroll_loops],
1085 [CFLAGS="${CFLAGS_save} -funroll-loops"
1086 AC_TRY_COMPILE([],,ac_cv_c_unroll_loops=yes, ac_cv_c_unroll_loops=no)])
1087 if test "${ac_cv_c_unroll_loops}" != "no"; then
1088 CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -funroll-loops"
1092 dnl Check for -fomit-frame-pointer
1093 AC_CACHE_CHECK([if \$CC accepts -fomit-frame-pointer],
1094 [ac_cv_c_omit_frame_pointer],
1095 [CFLAGS="${CFLAGS_save} -fomit-frame-pointer"
1096 AC_TRY_COMPILE([],,ac_cv_c_omit_frame_pointer=yes, ac_cv_c_omit_frame_pointer=no)])
1097 if test "${ac_cv_c_omit_frame_pointer}" != "no"; then
1098 if test "${SYS}" != "darwin"; then
1099 CFLAGS_OPTIM_NODEBUG="${CFLAGS_OPTIM_NODEBUG} -fomit-frame-pointer"
1101 dnl On darwin we explicitely disable it.
1102 CFLAGS_OPTIM_NODEBUG="${CFLAGS_OPTIM_NODEBUG} -fno-omit-frame-pointer"
1106 dnl Check for Darwin plugin linking flags
1107 AC_CACHE_CHECK([if \$CC accepts -bundle -undefined error],
1109 [CFLAGS="${CFLAGS_save} -bundle -undefined error"
1110 AC_TRY_COMPILE([],,ac_cv_ld_darwin=yes, ac_cv_ld_darwin=no)])
1111 if test "${ac_cv_ld_darwin}" != "no"; then
1112 VLC_ADD_LDFLAGS([plugin],[-bundle -undefined error])
1115 dnl Checks for __attribute__(aligned()) directive
1116 AC_CACHE_CHECK([__attribute__ ((aligned ())) support],
1117 [ac_cv_c_attribute_aligned],
1118 [ac_cv_c_attribute_aligned=0
1119 CFLAGS="${CFLAGS_save} -Werror"
1120 for ac_cv_c_attr_align_try in 2 4 8 16 32 64; do
1122 [static char c __attribute__ ((aligned(${ac_cv_c_attr_align_try}))) = 0; return c;],
1123 [ac_cv_c_attribute_aligned="${ac_cv_c_attr_align_try}"])
1125 CFLAGS="${CFLAGS_save}"])
1126 if test "${ac_cv_c_attribute_aligned}" != "0"; then
1127 AC_DEFINE_UNQUOTED([ATTRIBUTE_ALIGNED_MAX],
1128 [${ac_cv_c_attribute_aligned}],[Maximum supported data alignment])
1131 dnl Check for __attribute__((packed))
1132 AC_CACHE_CHECK([for __attribute__((packed))],
1133 [ac_cv_c_attribute_packed],
1134 [ac_cv_c_attribute_packed=no
1135 AC_TRY_COMPILE(, [struct __attribute__((__packed__)) foo { int a; } b;],
1136 [ac_cv_c_attribute_packed=yes])])
1137 if test "${ac_cv_c_attribute_packed}" != "no"; then
1138 AC_DEFINE(HAVE_ATTRIBUTE_PACKED, 1, Support for __attribute__((packed)) for structs)
1144 case "${host_cpu}" in
1153 dnl Check for backtrace() support
1154 AC_CHECK_HEADERS(execinfo.h)
1155 AC_CHECK_FUNCS(backtrace)
1158 dnl Enable profiling
1160 AC_ARG_ENABLE(gprof,
1161 [ --enable-gprof gprof profiling (default disabled)])
1162 AC_ARG_ENABLE(cprof,
1163 [ --enable-cprof cprof profiling (default disabled)])
1164 test "${enable_gprof}" != "yes" && enable_gprof="no"
1165 test "${enable_cprof}" != "yes" && enable_cprof="no"
1171 VLC_ADD_PLUGIN([deinterlace])
1172 VLC_ADD_PLUGIN([yuvp])
1173 VLC_ADD_PLUGIN([invert])
1174 VLC_ADD_PLUGIN([mirror])
1175 VLC_ADD_PLUGIN([adjust])
1176 VLC_ADD_PLUGIN([transform])
1177 VLC_ADD_PLUGIN([wave])
1178 VLC_ADD_PLUGIN([ripple])
1179 VLC_ADD_PLUGIN([psychedelic])
1180 VLC_ADD_PLUGIN([gradient])
1181 VLC_ADD_PLUGIN([motionblur])
1182 VLC_ADD_PLUGIN([rv32])
1183 VLC_ADD_PLUGIN([rotate])
1184 VLC_ADD_PLUGIN([noise])
1185 VLC_ADD_PLUGIN([grain])
1186 VLC_ADD_PLUGIN([extract])
1187 VLC_ADD_PLUGIN([sharpen])
1188 VLC_ADD_PLUGIN([croppadd])
1189 VLC_ADD_PLUGIN([canvas])
1190 VLC_ADD_PLUGIN([blendbench])
1191 VLC_ADD_PLUGIN([blend])
1192 VLC_ADD_PLUGIN([scale])
1193 VLC_ADD_PLUGIN([vmem])
1194 VLC_ADD_PLUGIN([logo])
1195 VLC_ADD_PLUGIN([magnify])
1196 VLC_ADD_PLUGIN([puzzle])
1197 VLC_ADD_PLUGIN([colorthres])
1198 VLC_ADD_PLUGIN([scene])
1199 VLC_ADD_PLUGIN([yuv])
1201 ALIASES="${ALIASES} cvlc"
1204 dnl default modules that need g++
1207 VLC_ADD_PLUGIN([spatializer])
1210 if test "${SYS}" != "mingwce"; then
1211 VLC_ADD_PLUGIN([gestures])
1212 VLC_ADD_PLUGIN([rc])
1213 VLC_ADD_PLUGIN([hotkeys])
1214 VLC_ADD_PLUGIN([showintf])
1215 VLC_ADD_PLUGIN([marq])
1216 VLC_ADD_PLUGIN([podcast])
1217 VLC_ADD_PLUGIN([shout])
1218 VLC_ADD_PLUGIN([sap])
1219 VLC_ADD_PLUGIN([fake])
1220 VLC_ADD_PLUGIN([folder])
1221 VLC_ADD_PLUGIN([rss])
1222 VLC_ADD_PLUGIN([mosaic])
1223 VLC_ADD_PLUGIN([wall])
1224 VLC_ADD_PLUGIN([motiondetect])
1225 VLC_ADD_PLUGIN([clone])
1226 VLC_ADD_PLUGIN([crop])
1227 VLC_ADD_PLUGIN([erase])
1228 VLC_ADD_PLUGIN([bluescreen])
1229 VLC_ADD_PLUGIN([alphamask])
1230 VLC_ADD_PLUGIN([gaussianblur])
1231 VLC_ADD_PLUGIN([i420_yuy2])
1232 VLC_ADD_PLUGIN([i422_yuy2])
1233 VLC_ADD_PLUGIN([i420_ymga])
1234 VLC_ADD_PLUGIN([i422_i420])
1235 VLC_ADD_PLUGIN([yuy2_i422])
1236 VLC_ADD_PLUGIN([yuy2_i420])
1237 VLC_ADD_PLUGIN([chain])
1238 VLC_ADD_PLUGIN([aout_file])
1239 VLC_ADD_PLUGIN([linear_resampler])
1240 VLC_ADD_PLUGIN([bandlimited_resampler])
1241 VLC_ADD_PLUGIN([float32_mixer])
1242 VLC_ADD_PLUGIN([spdif_mixer])
1243 VLC_ADD_PLUGIN([simple_channel_mixer])
1244 VLC_ADD_PLUGIN([dolby_surround_decoder])
1245 VLC_ADD_PLUGIN([headphone_channel_mixer])
1246 VLC_ADD_PLUGIN([normvol])
1247 VLC_ADD_PLUGIN([equalizer])
1248 VLC_ADD_PLUGIN([param_eq])
1249 VLC_ADD_PLUGIN([scaletempo])
1250 VLC_ADD_PLUGIN([converter_float])
1251 VLC_ADD_PLUGIN([a52tospdif])
1252 VLC_ADD_PLUGIN([dtstospdif])
1253 VLC_ADD_PLUGIN([audio_format])
1254 ALIASES="${ALIASES} rvlc"
1257 if test "${SYS}" = "mingwce"; then
1258 VLC_ADD_PLUGIN([chain])
1259 VLC_ADD_PLUGIN([aout_file])
1260 VLC_ADD_PLUGIN([linear_resampler])
1261 VLC_ADD_PLUGIN([bandlimited_resampler])
1262 VLC_ADD_PLUGIN([float32_mixer])
1263 VLC_ADD_PLUGIN([spdif_mixer])
1264 VLC_ADD_PLUGIN([simple_channel_mixer])
1265 VLC_ADD_PLUGIN([headphone_channel_mixer])
1266 VLC_ADD_PLUGIN([normvol])
1267 VLC_ADD_PLUGIN([converter_float])
1268 VLC_ADD_PLUGIN([a52tospdif])
1269 VLC_ADD_PLUGIN([dtstospdif])
1270 VLC_ADD_PLUGIN([audio_format])
1271 VLC_ADD_PLUGIN([i420_yuy2])
1272 VLC_ADD_PLUGIN([i422_yuy2])
1273 VLC_ADD_PLUGIN([i420_ymga])
1274 VLC_ADD_PLUGIN([i422_i420])
1275 VLC_ADD_PLUGIN([yuy2_i422])
1276 VLC_ADD_PLUGIN([yuy2_i420])
1280 dnl Some plugins aren't useful on some platforms
1282 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
1283 VLC_ADD_PLUGIN([screensaver])
1284 VLC_ADD_PLUGIN([motion])
1285 VLC_ADD_PLUGIN([dynamicoverlay])
1286 VLC_ADD_PLUGIN([signals])
1287 elif test "${SYS}" != "mingwce"; then
1288 VLC_ADD_PLUGIN([ntservice])
1289 VLC_ADD_PLUGIN([access_smb])
1290 VLC_ADD_PLUGIN([dmo])
1291 VLC_ADD_PLUGIN([msn])
1292 VLC_ADD_LIBS([dmo],[-lole32 -luuid])
1293 VLC_ADD_PLUGIN([globalhotkeys])
1295 VLC_ADD_PLUGIN([win32text])
1297 if test "${SYS}" = "darwin"; then
1298 VLC_ADD_PLUGIN([quartztext])
1299 VLC_ADD_LDFLAGS([quartztext],[-Wl,-framework,Carbon,-framework,ApplicationServices])
1303 dnl Accelerated modules
1306 AC_ARG_WITH(,[Optimization options:])
1308 dnl Check for fully working MMX intrinsics
1309 dnl We need support for -mmmx, we need <mmintrin.h>, and we also need a
1310 dnl working compiler (http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23963)
1312 [ --disable-mmx disable MMX optimizations (default auto)],,[
1313 case "${host_cpu}" in
1322 AS_IF([test "${enable_mmx}" != "no"], [
1325 AC_CACHE_CHECK([if $CC groks MMX intrinsics],
1326 [ac_cv_c_mmx_intrinsics],
1327 [CFLAGS="${CFLAGS_save} -O -mmmx"
1328 AC_TRY_COMPILE([#include <mmintrin.h>
1332 a = b = c = (__m64)frobzor;
1333 a = _mm_slli_pi16(a, 3);
1334 a = _mm_adds_pi16(a, b);
1335 c = _mm_srli_pi16(c, 8);
1336 c = _mm_slli_pi16(c, 3);
1337 b = _mm_adds_pi16(b, c);
1338 a = _mm_unpacklo_pi8(a, b);
1339 frobzor = (uint64_t)a;],
1340 [ac_cv_c_mmx_intrinsics=yes],
1341 [ac_cv_c_mmx_intrinsics=no])])
1342 AS_IF([test "${ac_cv_c_mmx_intrinsics}" != "no"], [
1343 AC_DEFINE(HAVE_MMX_INTRINSICS, 1,
1344 [Define to 1 if MMX intrinsics are available.])
1345 VLC_ADD_CFLAGS([memcpymmx i420_rgb_mmx i420_yuy2_mmx i422_yuy2_mmx i420_ymga_mmx],[-mmmx])
1348 AC_CACHE_CHECK([if $CC groks MMX inline assembly],
1350 [CFLAGS="${CFLAGS_save}"
1351 AC_TRY_COMPILE(,[void *p;asm volatile("packuswb %%mm1,%%mm2"::"r"(p));],
1352 ac_cv_mmx_inline=yes, ac_cv_mmx_inline=no)])
1353 AS_IF([test "${ac_cv_mmx_inline}" != "no"], [
1354 AC_DEFINE(CAN_COMPILE_MMX, 1,
1355 [Define to 1 inline MMX assembly is available.])
1356 VLC_ADD_PLUGIN([memcpymmx])
1357 VLC_ADD_PLUGIN([i420_rgb_mmx])
1358 VLC_ADD_PLUGIN([i420_yuy2_mmx])
1359 VLC_ADD_PLUGIN([i422_yuy2_mmx])
1360 VLC_ADD_PLUGIN([i420_ymga_mmx])
1363 AC_CACHE_CHECK([if $CC groks MMX EXT inline assembly],
1364 [ac_cv_mmxext_inline],
1365 [CFLAGS="${CFLAGS_save}"
1366 AC_TRY_COMPILE(,[void *p;asm volatile("maskmovq %%mm1,%%mm2"::"r"(p));],
1367 ac_cv_mmxext_inline=yes, ac_cv_mmxext_inline=no)])
1368 AS_IF([test "${ac_cv_mmxext_inline}" != "no"], [
1369 AC_DEFINE(CAN_COMPILE_MMXEXT, 1,
1370 [Define to 1 if MMX EXT inline assembly is available.])
1371 VLC_ADD_PLUGIN([memcpymmxext])
1375 dnl Check for fully workin SSE2 intrinsics
1376 dnl We need support for -mmmx, we need <emmintrin.h>, and we also need a
1377 dnl working compiler (http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23963)
1379 [ --disable-sse disable SSE (1 and 2) optimizations (default auto)]
1381 case "${host_cpu}" in
1390 AS_IF([test "${enable_sse}" != "no"], [
1391 ARCH="${ARCH} sse sse2"
1393 AC_CACHE_CHECK([if $CC groks SSE2 intrinsics],
1394 [ac_cv_c_sse2_intrinsics],
1395 [CFLAGS="${CFLAGS_save} -O -msse2"
1396 AC_TRY_COMPILE([#include <emmintrin.h>
1400 a = b = c = _mm_set1_epi64((__m64)frobzor);
1401 a = _mm_slli_epi16(a, 3);
1402 a = _mm_adds_epi16(a, b);
1403 c = _mm_srli_epi16(c, 8);
1404 c = _mm_slli_epi16(c, 3);
1405 b = _mm_adds_epi16(b, c);
1406 a = _mm_unpacklo_epi8(a, b);
1407 frobzor = (uint64_t)_mm_movepi64_pi64(a);],
1408 [ac_cv_c_sse2_intrinsics=yes],
1409 [ac_cv_c_sse2_intrinsics=no])])
1410 AS_IF([test "${ac_cv_c_sse2_intrinsics}" != "no"], [
1411 AC_DEFINE(HAVE_SSE2_INTRINSICS, 1,
1412 [Define to 1 if SSE2 intrinsics are available.])
1413 VLC_ADD_CFLAGS([i420_rgb_sse2 i420_yuy2_sse2 i422_yuy2_sse2],[-msse2])
1416 AC_CACHE_CHECK([if $CC groks SSE inline assembly],
1418 [CFLAGS="${CFLAGS_save}"
1419 AC_TRY_COMPILE(,[void *p;asm volatile("xorps %%xmm1,%%xmm2"::"r"(p));],
1420 ac_cv_sse_inline=yes, ac_cv_sse_inline=no)])
1421 AS_IF([test "${ac_cv_sse_inline}" != "no" -a "${SYS}" != "solaris"], [
1422 AC_DEFINE(CAN_COMPILE_SSE, 1,
1423 [Define to 1 if SSE inline assembly is available.])
1426 AC_CACHE_CHECK([if $CC groks SSE2 inline assembly],
1427 [ac_cv_sse2_inline],
1428 [CFLAGS="${CFLAGS_save}"
1429 AC_TRY_COMPILE(,[void *p;asm volatile("punpckhqdq %%xmm1,%%xmm2"::"r"(p));],
1430 ac_cv_sse2_inline=yes, ac_cv_sse2_inline=no)])
1431 AS_IF([test "${ac_cv_sse2_inline}" != "no" -a "${SYS}" != "solaris"], [
1432 AC_DEFINE(CAN_COMPILE_SSE2, 1,
1433 [Define to 1 if SSE2 inline assembly is available.])
1434 VLC_ADD_PLUGIN([i420_rgb_sse2])
1435 VLC_ADD_PLUGIN([i420_yuy2_sse2])
1436 VLC_ADD_PLUGIN([i422_yuy2_sse2])
1440 AC_CACHE_CHECK([if $CC groks 3D Now! inline assembly],
1441 [ac_cv_3dnow_inline],
1442 [CFLAGS="${CFLAGS_save}"
1443 AC_TRY_COMPILE(,[void *p;asm volatile("pfadd %%mm1,%%mm2"::"r"(p));],
1444 ac_cv_3dnow_inline=yes, ac_cv_3dnow_inline=no)])
1445 AS_IF([test "${ac_cv_3dnow_inline}" != "no"], [
1446 AC_DEFINE(CAN_COMPILE_3DNOW, 1,
1447 [Define to 1 if 3D Now! inline assembly is available.])
1448 VLC_ADD_PLUGIN([memcpy3dn])
1451 AC_ARG_ENABLE(altivec,
1452 [ --disable-altivec disable AltiVec optimizations (default auto)],, [
1453 AS_IF([test "${host_cpu}" = "powerpc"],
1454 [enable_altivec=yes], [enable_altivec=no])
1456 AS_IF([test "${enable_altivec}" = "yes"], [
1457 ARCH="${ARCH} altivec";
1458 AC_CACHE_CHECK([if $CC groks AltiVec inline assembly],
1459 [ac_cv_altivec_inline],
1460 [CFLAGS="${CFLAGS_save}"
1461 AC_TRY_COMPILE(,[asm volatile("vperm 0,1,2,3");],
1462 ac_cv_altivec_inline="yes",
1463 [CFLAGS="${CFLAGS_save} -Wa,-m7400"
1464 AC_TRY_COMPILE(,[asm volatile("vperm 0,1,2,3");],
1465 [ac_cv_altivec_inline="-Wa,-m7400"],
1466 ac_cv_altivec_inline=no)
1468 AS_IF([test "${ac_cv_altivec_inline}" != "no"], [
1469 AC_DEFINE(CAN_COMPILE_ALTIVEC, 1,
1470 [Define to 1 if AltiVec inline assembly is available.])
1471 AS_IF([test "${ac_cv_altivec_inline}" != "yes"], [
1472 VLC_ADD_CFLAGS([idctaltivec],[${ac_cv_altivec_inline}])
1473 VLC_ADD_CFLAGS([motionaltivec],[${ac_cv_altivec_inline}])
1474 VLC_ADD_CFLAGS([memcpyaltivec],[${ac_cv_altivec_inline}])
1475 VLC_ADD_CFLAGS([i420_yuy2_altivec],[${ac_cv_altivec_inline}])
1476 VLC_ADD_CFLAGS([libvlccore],[${ac_cv_altivec_inline}])
1478 VLC_ADD_PLUGIN([memcpyaltivec])
1479 VLC_ADD_PLUGIN([i420_yuy2_altivec])
1482 dnl The AltiVec C extensions
1484 dnl There are several possible cases:
1485 dnl - OS X PPC, gcc 4.x: use -mpim-altivec -force_cpusubtype_ALL, don't
1486 dnl need <altivec.h>
1487 dnl - OS X PPC, gcc 3.x: need -faltivec, don't need <altivec.h>
1488 dnl - Linux PPC, gcc 3.4, 4.x: need <altivec.h> which requires -maltivec
1489 dnl - Linux PPC, gcc 3.3: need <altivec.h> and -maltivec -mabi=altivec
1490 dnl - Linux PPC, gcc 3.x: need <altivec.h> and -fvec
1491 dnl - Others: test should fail
1492 AC_CACHE_CHECK([if \$CC groks AltiVec C extensions],
1494 [# OS X/PPC test (gcc 4.x)
1495 CFLAGS="${CFLAGS_save} -mpim-altivec -force_cpusubtype_ALL"
1496 AC_TRY_COMPILE([vector unsigned char foo;],
1497 [vec_ld(0, (unsigned char *)0);],
1498 [ac_cv_c_altivec="-mpim-altivec -force_cpusubtype_ALL"],
1499 [# OS X/PPC test (gcc 3.x)
1500 CFLAGS="${CFLAGS_save} -faltivec"
1501 AC_TRY_COMPILE([vector unsigned char foo;],
1502 [vec_ld(1 * sizeof(vector float), (unsigned char *)0);],
1503 [ac_cv_c_altivec="-faltivec"],
1504 dnl Below this are the Linux tests
1505 [# Linux/PPC test (gcc 4.x)
1506 CFLAGS="${CFLAGS_save} -maltivec"
1507 AC_TRY_COMPILE([#include <altivec.h>],
1508 [vec_ld(0, (unsigned char *)0);],
1509 [ac_cv_c_altivec="-maltivec"],
1510 [# Linux/PPC test (gcc 3.3)
1511 CFLAGS="${CFLAGS_save} -maltivec -mabi=altivec"
1512 AC_TRY_COMPILE([#include <altivec.h>],
1513 [vec_ld(0, (unsigned char *)0);],
1515 ac_cv_c_altivec_abi="-maltivec -mabi=altivec"],
1516 [# Linux/PPC test (gcc 3.3)
1517 CFLAGS="${CFLAGS_save} -fvec"
1518 AC_TRY_COMPILE([#include <altivec.h>],
1519 [vec_ld(0, (unsigned char *)0);],
1520 [ac_cv_c_altivec="-fvec"],
1521 [ac_cv_c_altivec=no])
1526 CFLAGS="${CFLAGS_save}"
1528 AS_IF([test "${ac_cv_c_altivec}" != "no"], [
1529 CPPFLAGS="${CPPFLAGS_save} ${ac_cv_c_altivec}"
1532 AC_CHECK_HEADERS(altivec.h)
1533 CPPFLAGS="${CPPFLAGS_save}"
1535 AS_IF([test "${ac_cv_c_altivec}" != "no"], [
1536 AC_DEFINE(CAN_COMPILE_C_ALTIVEC, 1,
1537 [Define to 1 if C AltiVec extensions are available.])
1538 VLC_ADD_CFLAGS([libvlccore],[${ac_cv_c_altivec}])
1539 VLC_ADD_CFLAGS([idctaltivec motionaltivec],[${ac_cv_c_altivec}])
1540 VLC_ADD_CFLAGS([i420_yuy2_altivec memcpyaltivec deinterlace],[${ac_cv_c_altivec} ${ac_cv_c_altivec_abi}])
1541 VLC_ADD_PLUGIN([memcpyaltivec])
1542 VLC_ADD_PLUGIN([i420_yuy2_altivec])
1545 AC_CACHE_CHECK([if linker needs -framework vecLib],
1547 [LDFLAGS="${LDFLAGS_vlc} -Wl,-framework,vecLib"
1548 AC_TRY_LINK([],,ac_cv_ld_altivec=yes,ac_cv_ld_altivec=no)
1549 LDFLAGS="${LDFLAGS_save}"
1551 AS_IF([test "${ac_cv_ld_altivec}" != "no"], [
1552 VLC_ADD_LDFLAGS([libvlccore idctaltivec motionaltivec memcpyaltivec],[-Wl,-framework,vecLib])
1557 dnl Special arch tuning
1560 [ --with-tuning=ARCH enable special tuning for an architecture
1561 (default Pentium 2 on IA-32 and G4 on PPC)])
1562 if test -n "${with_tuning}"; then
1563 if test "${with_tuning}" != "no"; then
1564 CFLAGS_TUNING="-mtune=${with_tuning}"
1567 if test "${SYS}" = "darwin" -a "${host_cpu}" != "powerpc"; then
1568 CFLAGS_TUNING="-march=prescott -mtune=generic"
1569 elif test "${host_cpu}" = "i686" -o "${host_cpu}" = "i586" -o "${host_cpu}" = "i486" -o "${host_cpu}" = "i386"; then
1570 CFLAGS_TUNING="-mtune=pentium2"
1571 elif test "${host_cpu}" = "x86_64"; then
1572 CFLAGS_TUNING="-mtune=athlon64"
1573 elif test "${host_cpu}" = "powerpc"; then
1574 CFLAGS_TUNING="-mtune=G4";
1578 dnl NOTE: this can't be cached cleanly
1579 AS_IF([test "${CFLAGS_TUNING}"],
1580 [CFLAGS_save="${CFLAGS}"
1581 CFLAGS="${CFLAGS} ${CFLAGS_TUNING}"
1583 AC_MSG_CHECKING([whether $CC accepts ${CFLAGS_TUNING}])
1584 AC_COMPILE_IFELSE([ ],
1586 [CFLAGS_TUNING=""; tuning="no"
1587 AS_IF([test "${with_tuning}"],
1588 [AC_MSG_ERROR([requested tuning not supported])])])
1590 AC_MSG_RESULT([$tuning])
1591 CFLAGS="${CFLAGS_save}"
1597 AC_ARG_ENABLE(optimize-memory,
1598 [ --enable-optimize-memory optimize memory usage over performance])
1599 if test "${enable_optimize_memory}" = "yes"; then
1600 AC_DEFINE(OPTIMIZE_MEMORY, 1, Define if you want to optimize memory usage over performance)
1604 dnl Enable/disable optimizations
1606 AC_ARG_ENABLE(optimizations,
1607 [ --disable-optimizations disable compiler optimizations (default enabled)])
1608 if test "${enable_optimizations}" != "no"; then
1609 if test "${enable_optimize_memory}" = "yes"; then
1610 enable_optimizations="size"
1612 enable_optimizations="speed"
1619 AC_ARG_ENABLE(debug,
1620 [ --enable-debug debug mode (default disabled)])
1621 test "${enable_debug}" != "yes" && enable_debug="no"
1623 [Define to 1 if debug code should NOT be compiled])
1624 AS_IF([test "x${enable_debug}" = "xno"], [
1627 AC_CHECK_HEADERS([valgrind/valgrind.h])
1631 dnl Allow runing as root (usefull for people runing on embedded platforms)
1633 AC_ARG_ENABLE(run-as-root,
1634 [ --enable-run-as-root allow runing VLC as root (default disabled)])
1635 AS_IF([test "${enable_run_as_root}" = "yes"],[
1636 AC_DEFINE(ALLOW_RUN_AS_ROOT, 1,
1637 [Define to 1 to allow runing VLC as root (uid 0).])
1643 AC_ARG_ENABLE(coverage,
1644 [ --enable-coverage build for test coverage (default disabled)],,
1645 [enable_coverage="no"])
1646 AS_IF([test "${enable_coverage}" != "no"], [
1647 CFLAGS="-fprofile-arcs -ftest-coverage ${CFLAGS}"
1648 CXXFLAGS="-fprofile-arcs -ftest-coverage ${CXXFLAGS}"
1649 LDFLAGS="-lgcov ${LDFLAGS}"
1651 CFLAGS_save="${CFLAGS}"
1652 CXXFLAGS_save="${CXXFLAGS}"
1653 LDFLAGS_save="${LDFLAGS}"
1657 dnl Enable release-specific flags
1659 AC_ARG_ENABLE(release,
1660 [ --enable-release activate extra optimizations (default disabled)])
1661 test "${enable_release}" != "yes" && enable_release="no"
1667 [ --enable-sout Stream output modules (default enabled)])
1668 AS_IF([test "${enable_sout}" != "no"], [
1669 AC_DEFINE(ENABLE_SOUT, 1, [Define to 1 for stream output support.])
1671 AM_CONDITIONAL(ENABLE_SOUT, [test "${enable_sout}" != "no"])
1675 AS_HELP_STRING([--enable-lua],[lua playlist, metafetcher and interface
1676 plugins (default enabled)]))
1677 if test "${enable_lua}" != "no"
1679 PKG_CHECK_MODULES(LUA, lua5.1,
1682 AC_MSG_WARN([lua5.1 not found, trying lua >= 5.1 instead])
1683 PKG_CHECK_MODULES(LUA, lua >= 5.1,
1687 AC_CHECK_HEADERS([lua.h lauxlib.h lualib.h],
1690 AC_CHECK_LIB( lua5.1 , luaL_newstate,
1691 [LUA_LIBS="-llua5.1"],
1692 AC_CHECK_LIB( lua51 , luaL_newstate,
1693 [LUA_LIBS="-llua51"],
1694 AC_CHECK_LIB( lua , luaL_newstate,
1697 AC_MSG_WARN([lua >= 5.1 not found!])
1703 if test "x${have_lua}" = "xyes" ; then
1704 AC_DEFINE(HAVE_LUA, 1, [Define if you have the lua library])
1705 VLC_ADD_LIBS([lua],[$LUA_LIBS])
1706 VLC_ADD_CFLAGS([lua],[$LUA_CFLAGS])
1709 AM_CONDITIONAL(BUILD_LUA, [test "${have_lua}" = "yes"])
1714 AC_ARG_ENABLE(httpd,
1715 [ --enable-httpd HTTP daemon (default enabled)])
1716 if test "${enable_httpd}" != "no"
1718 VLC_ADD_PLUGIN([http])
1719 AC_DEFINE(ENABLE_HTTPD, 1, Define if you want the HTTP dameon support)
1721 AM_CONDITIONAL(BUILD_HTTPD, [test "${enable_httpd}" != "no"])
1724 dnl libproxy support
1726 PKG_ENABLE_MODULES_VLC([LIBPROXY], [], [libproxy-1.0], [libproxy support], [auto])
1730 dnl VideoLAN manager
1733 [ --enable-vlm VideoLAN manager (default enabled)],,
1734 [enable_vlm="${enable_sout}"])
1735 AS_IF([test "${enable_vlm}" != "no"], [
1736 AS_IF([test "${enable_sout}" = "no"], [
1737 AC_MSG_ERROR([VLM requires the stream output. Do not use --disable-sout.])
1739 AC_DEFINE(ENABLE_VLM, 1, [Define if you want the VideoLAN manager support])
1740 VLC_ADD_PLUGIN([telnet])
1742 AM_CONDITIONAL([ENABLE_VLM], [test "${enable_vlm}" != "no"])
1745 dnl Growl notification plugin
1747 AC_ARG_ENABLE(growl,
1748 [ --enable-growl growl notification plugin (default disabled)],,
1750 AS_IF([test "${enable_growl}" != "no"], [
1751 VLC_ADD_PLUGIN([growl_udp])
1752 AC_CHECK_HEADERS(Growl/GrowlDefines.h, [
1753 VLC_ADD_PLUGIN([growl])
1754 VLC_ADD_LDFLAGS([growl], [-Wl,-framework,Growl,-framework,AppKit])
1760 dnl Libnotify notification plugin
1762 PKG_ENABLE_MODULES_VLC([NOTIFY], [], [libnotify], [libnotify notification], [auto])
1765 dnl Audioscrobbler plugin
1768 AC_ARG_ENABLE(audioscrobbler,
1769 [ --disable-audioscrobbler Last.fm submission plugin (default enabled)])
1770 AS_IF([test "${enable_audioscrobbler}" != "no"], [
1771 VLC_ADD_PLUGIN([audioscrobbler])
1777 AC_ARG_ENABLE(taglib,
1778 [ --disable-taglib Taglib support (default enabled) ])
1779 AS_IF([test "${enable_taglib}" != "no"],[
1780 PKG_CHECK_MODULES(TAGLIB, taglib >= 1.5,
1781 [ AC_DEFINE( HAVE_TAGLIB, 1, [Define if you have taglib plugin built] )
1782 VLC_ADD_PLUGIN([taglib])
1783 VLC_ADD_LIBS([taglib],[$TAGLIB_LIBS -lz])
1784 VLC_ADD_CXXFLAGS([taglib],[$TAGLIB_CFLAGS]) ],
1785 [AC_MSG_WARN(TagLib library not found)])
1792 AC_ARG_WITH(,[Input plugins:])
1796 if test "${enable_livedotcom}"
1798 AC_MSG_WARN(--{en|dis}able-livedotcom is deprecated. Use --{en|dis}able-live555 instead.)
1800 if test "${enable_livedotcom}" = "no"
1805 AC_ARG_ENABLE(live555,
1806 [ --enable-live555 live555 RTSP input plugin (default enabled)])
1807 if test "${enable_live555}" != "no"; then
1808 AC_ARG_WITH(live555-tree,
1809 [ --with-live555-tree=PATH live.com tree for static linking])
1812 dnl test for --with-live555-tree
1814 if test "${with_livedotcom_tree}"
1816 AC_MSG_WARN(--with-livedotcom-tree is deprecated. Use --with-live555-tree instead.)
1817 with_live555_tree="${with_livedotcom_tree}"
1820 if test -z "${with_live555_tree}" -a "${CXX}" != ""; then
1822 CPPFLAGS_save="${CPPFLAGS}"
1823 CPPFLAGS_live555="-I/usr/include/liveMedia -I/usr/include/groupsock -I/usr/include/BasicUsageEnvironment -I/usr/include/UsageEnvironment"
1824 if test "${SYS}" = "solaris"; then
1825 CPPFLAGS_live555="${CPPFLAGS_live555} -DSOLARIS"
1827 CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_live555}"
1829 AC_CHECK_HEADERS(liveMedia_version.hh, [
1830 AC_MSG_CHECKING(for liveMedia version >= 1214895600 )
1832 [#include <liveMedia_version.hh>
1833 #ifdef LIVEMEDIA_LIBRARY_VERSION_INT
1834 #if LIVEMEDIA_LIBRARY_VERSION_INT < 1214895600
1838 [AC_MSG_RESULT([no])
1839 AC_MSG_ERROR([Your version of liveMedia is too old: you may get a more recent one from http://www.live555.com/liveMedia.
1840 lternatively you can use --disable-live555 to disable the liveMedia plugin.])
1842 AC_MSG_RESULT([yes])
1845 other_libs="-lgroupsock -lBasicUsageEnvironment -lUsageEnvironment"
1846 other_libs_pic="-lgroupsock_pic -lBasicUsageEnvironment_pic -lUsageEnvironment_pic"
1847 if test "${SYS}" = "mingw32"; then
1848 # add ws2_32 for closesocket, select, recv
1849 other_libs="$other_libs -lws2_32"
1851 dnl We need to check for pic because live555 don't provide shared libs
1852 dnl and we want to build a plugins so we need -fPIC on some arch.
1853 AC_CHECK_HEADERS(liveMedia.hh, [
1854 VLC_ADD_CXXFLAGS([live555], [${CPPFLAGS_live555}])
1855 AC_CHECK_LIB(liveMedia_pic, main, [
1856 VLC_ADD_PLUGIN([live555])
1857 VLC_ADD_LIBS([live555], [-lliveMedia_pic ${other_libs_pic}])
1859 AC_CHECK_LIB(liveMedia, main, [
1860 VLC_ADD_PLUGIN([live555])
1861 VLC_ADD_LIBS([live555], [-lliveMedia ${other_libs}])
1862 ],[],[${other_libs}]) ],[${other_libs_pic}])
1864 AC_MSG_WARN([The development files for liveMedia (live555) can't be found])
1866 CPPFLAGS="${CPPFLAGS_save}"
1869 AC_MSG_CHECKING(for liveMedia/libliveMedia.a in ${with_live555_tree})
1870 real_live555_tree="`cd ${with_live555_tree} 2>/dev/null && pwd`"
1871 if test -z "${real_live555_tree}"; then
1872 dnl The given directory can't be found
1874 AC_MSG_ERROR([cannot cd to ${with_live555_tree}])
1876 if test -f "${real_live555_tree}/liveMedia/libliveMedia.a"; then
1877 AC_MSG_RESULT(${real_live555_tree}/liveMedia/libliveMedia.a)
1879 AC_CHECK_HEADERS(${real_live555_tree}/liveMedia/include/liveMedia_version.hh,[
1880 AC_MSG_CHECKING(for liveMedia version >= 1214895600 )
1882 [#include "${real_live555_tree}/liveMedia/include/liveMedia_version.hh"
1883 #ifdef LIVEMEDIA_LIBRARY_VERSION_INT
1884 #if LIVEMEDIA_LIBRARY_VERSION_INT < 1214895600
1888 [AC_MSG_RESULT([no])
1889 AC_MSG_ERROR([Your version of liveMedia is too old: you may get a more recent one from http://www.live555.com/liveMedia.
1890 lternatively you can use --disable-live555 to disable the liveMedia plugin.])
1892 AC_MSG_RESULT([yes])
1896 VLC_ADD_PLUGIN([live555])
1898 if test "${SYS}" = "mingw32"; then
1899 # add ws2_32 for closesocket, select, recv
1900 VLC_ADD_LIBS([live555],[-lws2_32])
1903 VLC_ADD_LIBS([live555],[-L${real_live555_tree}/liveMedia -lliveMedia])
1904 VLC_ADD_LIBS([live555],[-L${real_live555_tree}/BasicUsageEnvironment -lBasicUsageEnvironment])
1905 VLC_ADD_LIBS([live555],[-L${real_live555_tree}/groupsock -lgroupsock])
1906 VLC_ADD_LIBS([live555],[-L${real_live555_tree}/UsageEnvironment -lUsageEnvironment])
1908 VLC_ADD_CXXFLAGS([live555],[-I${real_live555_tree}/BasicUsageEnvironment/include])
1909 VLC_ADD_CXXFLAGS([live555],[-I${real_live555_tree}/groupsock/include])
1910 VLC_ADD_CXXFLAGS([live555],[-I${real_live555_tree}/liveMedia/include])
1911 VLC_ADD_CXXFLAGS([live555],[-I${real_live555_tree}/UsageEnvironment/include ])
1912 if test "${SYS}" = "solaris"; then
1913 VLC_ADD_CXXFLAGS([live555],[-DSOLARIS])
1916 dnl The given live555 wasn't built
1918 if test "${enable_live555}" = "yes"; then
1919 AC_MSG_ERROR([cannot find ${real_live555_tree}/liveMedia/libliveMedia.a, make sure you compiled live555 in ${with_live555_tree}])
1926 dnl - special access module for dc1394 input
1927 dnl - dv module: digital video module check for libraw1394
1929 PKG_ENABLE_MODULES_VLC([dc1394], [], [libraw1394 >= 2.0.1 libdc1394 >= 1.0.0], [dc1394 access module], [auto])
1930 PKG_ENABLE_MODULES_VLC([dv], [access_dv], [libraw1394 >= 2.0.1 libavc1394 >= 0.5.3], [DV input module], [auto])
1933 dnl dvdread module: check for libdvdread
1935 AC_ARG_ENABLE(dvdread,
1936 [ --enable-dvdread dvdread input module (default disabled)])
1937 if test "${enable_dvdread}" != "no"
1939 AC_ARG_WITH(dvdread,
1940 [ --with-dvdread=PATH libdvdread headers and libraries])
1941 AC_ARG_WITH(dvdread-tree,
1942 [ --with-dvdread-tree=PATH libdvdread tree for static linking])
1944 dnl Temporary hack (yeah, sure ;)
1945 if test "${SYS}" = "mingw32" || test "${SYS}" = "darwin" || test "${SYS}" = "beos" ; then
1946 VLC_ADD_LIBS([dvdread],[-ldvdcss])
1949 if test -z "${with_dvdread}"
1951 if test -z "${with_dvdread_tree}"
1953 AC_CHECK_HEADERS(dvdread/dvd_reader.h,
1954 [ VLC_ADD_PLUGIN([dvdread])
1955 VLC_ADD_LIBS([dvdread],[-ldvdread ${LIBS_dvdcss}])
1957 AC_CHECK_HEADERS(libdvdread/dvd_reader.h,
1958 [ VLC_ADD_PLUGIN([dvdread])
1959 VLC_ADD_LIBS([dvdread],[-ldvdread ${LIBS_dvdcss}])
1961 if test -n "${enable_dvdread}"
1963 AC_MSG_ERROR([cannot find libdvdread headers])
1968 AC_MSG_CHECKING(for libdvdread.a in ${with_dvdread_tree})
1969 real_dvdread_tree="`cd ${with_dvdread_tree} 2>/dev/null && pwd`"
1970 if test -z "${real_dvdread_tree}"
1972 dnl The given directory can't be found
1974 AC_MSG_ERROR([cannot cd to ${with_dvdread_tree}])
1976 if test -f "${real_dvdread_tree}/dvdread/.libs/libdvdread.a"
1978 dnl Use a custom libdvdread
1979 AC_MSG_RESULT(${real_dvdread_tree}/dvdread/.libs/libdvdread.a)
1980 VLC_ADD_PLUGIN([dvdread])
1981 VLC_ADD_LIBS([dvdread],[-L${real_dvdread_tree}/dvdread/.libs -ldvdread ${LIBS_dvdcss}])
1982 VLC_ADD_CPPFLAGS([dvdread],[-I${real_dvdread_tree}])
1984 dnl The given libdvdread wasn't built
1986 AC_MSG_ERROR([cannot find ${real_dvdread_tree}/dvdread/.libs/libdvdread.a, make sure you compiled libdvdread in ${with_dvdread_tree}])
1990 AC_MSG_CHECKING(for dvdread headers in ${with_dvdread})
1991 if test -f ${with_dvdread}/include/dvdread/dvd_reader.h
1993 dnl Use ${with_dvdread}/include/dvdread/dvd_reader.h
1995 VLC_ADD_PLUGIN([dvdread])
1996 VLC_ADD_LIBS([dvdread],[-L${with_dvdread}/lib -ldvdread ${LIBS_dvdcss}])
1997 VLC_ADD_CPPFLAGS([dvdread],[-I${with_dvdread}/include])
1999 dnl No libdvdread could be found, sorry
2001 AC_MSG_ERROR([cannot find ${with_dvdread}/include/dvdread/dvd_reader.h])
2007 dnl libdvdnav plugin
2009 AC_ARG_ENABLE(dvdnav,
2010 [ --enable-dvdnav dvdnav input module (default enabled)])
2011 if test "${enable_dvdnav}" != "no"
2013 dnl Same hack than dvdread
2014 if test "${SYS}" = "mingw32" || test "${SYS}" = "darwin" || test "${SYS}" = "beos" ; then
2015 VLC_ADD_LIBS([dvdnav],[-ldvdcss])
2018 DVDNAV_PATH="${PATH}"
2019 AC_ARG_WITH(dvdnav-config-path,
2020 [ --with-dvdnav-config-path=PATH dvdnav-config path (default search in \$PATH)],
2021 [ if test "${with_dvdnav_config_path}" != "no"
2023 DVDNAV_PATH="${with_dvdnav_config_path}:${PATH}"
2025 AC_PATH_PROG(DVDNAV_CONFIG, dvdnav-config, no, ${DVDNAV_PATH})
2026 if test "${DVDNAV_CONFIG}" != "no"
2028 VLC_ADD_PLUGIN([dvdnav])
2029 VLC_ADD_CFLAGS([dvdnav],[`${DVDNAV_CONFIG} --cflags`])
2030 VLC_ADD_LIBS([dvdnav],[`${DVDNAV_CONFIG} --libs`])
2035 dnl Windows DirectShow access module
2037 AC_ARG_ENABLE(dshow,
2038 [ --enable-dshow Win32 DirectShow support (default enabled on Win32)])
2039 if test "${enable_dshow}" != "no"
2041 if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"
2044 AC_CHECK_HEADERS(dshow.h,
2045 [ VLC_ADD_PLUGIN([dshow])
2046 VLC_ADD_CXXFLAGS([dshow],[])
2047 VLC_ADD_LIBS([dshow],[-lole32 -loleaut32 -luuid]) ])
2053 dnl Windows DirectShow BDA access module
2056 AS_HELP_STRING([--enable-bda],[Win32 DirectShow BDA support (default
2057 enabled on Win32)]))
2058 if test "${enable_bda}" != "no"
2060 if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"
2062 AC_CHECK_HEADERS(dshow.h,
2063 [ VLC_ADD_PLUGIN([bda])
2064 VLC_ADD_CXXFLAGS([bda],[])
2065 VLC_ADD_LIBS([bda],[-lstrmiids -lole32 -loleaut32 -luuid]) ])
2071 dnl OpenCV wrapper and example filters
2073 AC_ARG_ENABLE(opencv,
2074 [ --enable-opencv OpenCV (computer vision) filter (default disabled)])
2075 if test "${enable_opencv}" = "yes" -a "${CXX}" != "";
2077 AC_ARG_WITH(opencv-tree,
2078 [ --with-opencv-tree=PATH opencv tree for linking])
2079 if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"
2081 test -z "${with_opencv_tree}" && AC_MSG_ERROR([You have to specify --with-opencv-tree])
2082 AC_MSG_CHECKING(for opencv in ${with_opencv_tree})
2083 if test -f ${with_opencv_tree}/cv/include/cv.h -a -f ${with_opencv_tree}/cxcore/include/cxcore.h \
2084 -a -f ${with_opencv_tree}/cvaux/include/cvaux.h -a -f ${with_opencv_tree}/otherlibs/highgui/highgui.h
2087 VLC_ADD_PLUGIN([opencv_wrapper])
2088 VLC_ADD_LIBS([opencv_wrapper],[-L${with_opencv_tree}/lib -lcv -lcxcore -lcvaux -lhighgui])
2089 VLC_ADD_CFLAGS([opencv_wrapper],[-I${with_opencv_tree}/cv/include -I${with_opencv_tree}/cxcore/include -I${with_opencv_tree}/cvaux/include -I${with_opencv_tree}/otherlibs/highgui])
2091 VLC_ADD_PLUGIN([opencv_example])
2092 VLC_ADD_LIBS([opencv_example],[-L${with_opencv_tree}/lib -lcv -lcxcore -lcvaux -lhighgui])
2093 VLC_ADD_CXXFLAGS([opencv_example],[-I${with_opencv_tree}/cv/include -I${with_opencv_tree}/cxcore/include -I${with_opencv_tree}/cvaux/include -I${with_opencv_tree}/otherlibs/highgui])
2096 dnl No opencv could be found, sorry
2098 AC_MSG_ERROR([cannot find opencv in ${with_opencv_tree}])
2101 PKG_CHECK_MODULES(OPENCV, opencv,
2103 VLC_ADD_PLUGIN([opencv_example])
2104 VLC_ADD_PLUGIN([opencv_wrapper])
2105 VLC_ADD_LIBS([opencv_example opencv_wrapper],[${OPENCV_LIBS}])
2106 VLC_ADD_CFLAGS([opencv_wrapper],[${OPENCV_CFLAGS}])
2107 VLC_ADD_CXXFLAGS([opencv_example],[${OPENCV_CFLAGS}])
2109 [AC_MSG_ERROR([libopencv not found!])]
2116 dnl libsmbclient plugin
2119 [ --enable-smb smb input module (default enabled)])
2120 if test "${enable_smb}" != "no"; then
2121 AC_CHECK_HEADERS(libsmbclient.h,
2122 [ VLC_ADD_PLUGIN([access_smb])
2123 VLC_ADD_LIBS([access_smb],[-lsmbclient]) ],
2124 [ if test -n "${enable_smb}"; then
2125 AC_MSG_ERROR([cannot find libsmbclient headers])
2130 dnl libdvbpsi ts demux/mux
2132 AC_ARG_ENABLE(dvbpsi,
2133 [ --enable-dvbpsi dvbpsi ts mux and demux module (default enabled)])
2135 if test "${enable_dvbpsi}" != "no"
2138 [ --with-dvbpsi=PATH libdvbpsi headers and libraries])
2140 [ --with-dvbpsi-tree=PATH libdvbpsi tree for static linking])
2141 case "${with_dvbpsi}" in
2143 if test -z "${with_dvbpsi_tree}"
2145 AC_CHECK_HEADERS(dvbpsi/dr.h,
2146 [ VLC_ADD_PLUGIN([ts])
2147 if test "${enable_sout}" != "no"; then
2148 VLC_ADD_PLUGIN([mux_ts])
2150 VLC_ADD_LIBS([mux_ts ts dvb],[-ldvbpsi])
2152 [ AC_MSG_WARN([cannot find libdvbpsi headers]) ],
2153 [#if defined( HAVE_STDINT_H )
2154 # include <stdint.h>
2155 #elif defined( HAVE_INTTYPES_H )
2156 # include <inttypes.h>
2158 #include <dvbpsi/dvbpsi.h>
2159 #include <dvbpsi/descriptor.h>
2160 #include <dvbpsi/pat.h>
2161 #include <dvbpsi/pmt.h>])
2163 AC_MSG_CHECKING(for libdvbpsi.a in ${with_dvbpsi_tree})
2164 real_dvbpsi_tree="`cd ${with_dvbpsi_tree} 2>/dev/null && pwd`"
2165 if test -z "${real_dvbpsi_tree}"
2167 dnl The given directory can't be found
2169 AC_MSG_ERROR([cannot cd to ${with_dvbpsi_tree}])
2171 if test -f "${real_dvbpsi_tree}/src/.libs/libdvbpsi.a"
2173 dnl Use a custom libdvbpsi
2174 AC_MSG_RESULT(${real_dvbpsi_tree}/src/.libs/libdvbpsi.a)
2175 VLC_ADD_PLUGIN([ts])
2176 if test "${enable_sout}" != "no"; then
2177 VLC_ADD_PLUGIN([mux_ts])
2179 VLC_ADD_CPPFLAGS([mux_ts ts dvb],[-I${real_dvbpsi_tree}/src])
2180 VLC_ADD_LIBS([mux_ts ts dvb],[${real_dvbpsi_tree}/src/.libs/libdvbpsi.a])
2183 dnl The given libdvbpsi wasn't built
2185 AC_MSG_ERROR([cannot find ${real_dvbpsi_tree}/src/.libs/libdvbpsi.a, make sure you compiled libdvbpsi in ${with_dvbpsi_tree}])
2190 dnl Compile without dvbpsi
2193 AC_MSG_CHECKING(for dvbpsi headers in ${with_dvbpsi})
2194 if test -z "${with_dvbpsi}"
2199 LDFLAGS_test="-L${with_dvbpsi}/lib"
2200 CPPFLAGS_test="-I${with_dvbpsi}/include"
2202 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_test}"
2203 AC_CHECK_HEADERS([dvbpsi/dr.h],[
2204 VLC_ADD_PLUGIN([ts])
2205 if test "${enable_sout}" != "no"; then
2206 VLC_ADD_PLUGIN([mux_ts])
2208 VLC_ADD_CPPFLAGS([mux_ts ts dvb],[${CPPFLAGS_test}])
2209 VLC_ADD_LIBS([mux_ts ts dvb],[${LDFLAGS_test} -ldvbpsi])
2212 if test -n "${enable_dvbpsi}"
2214 AC_MSG_ERROR([Could not find libdvbpsi on your system: you may get it from www.videolan.org, you'll need at least version 0.1.1])
2217 CPPFLAGS="${CPPFLAGS_save}"
2220 AC_CHECK_LIB(dvbpsi, dvbpsi_GenSDTSections, [
2221 AC_DEFINE(HAVE_DVBPSI_SDT, 1, [Define if you have dvbpsi_GenSDTSections.])
2222 ], [], [${LIBS_ts}])
2227 dnl Video4Linux plugin
2230 [ --enable-v4l Video4Linux input support (default disabled)])
2231 if test "${enable_v4l}" = "yes"
2234 [ --with-v4l=PATH path to a v4l-enabled kernel tree],[],[])
2235 if test "${with_v4l}" != "no" -a -n "${with_v4l}"
2237 VLC_ADD_CPPFLAGS([v4l],[-I${with_v4l}/include])
2240 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_v4l}"
2241 AC_CHECK_HEADERS(linux/videodev.h, [
2242 VLC_ADD_PLUGIN([v4l])
2244 CPPFLAGS="${CPPFLAGS_save}"
2248 dnl Video4Linux2 plugin
2251 [ --enable-v4l2 Video4Linux2 input support (default enabled)])
2252 if test "${enable_v4l2}" != "no"
2255 [ --with-v4l2=PATH path to a v4l2-enabled kernel tree],[],[])
2256 if test "${with_v4l2}" != "no" -a -n "${with_v4l2}"
2258 VLC_ADD_CPPFLAGS([v4l2],[-I${with_v4l2}/include])
2261 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_v4l2}"
2262 AC_CHECK_HEADERS(linux/videodev2.h, [
2263 VLC_ADD_PLUGIN([v4l2])
2265 CPPFLAGS="${CPPFLAGS_save}"
2269 dnl libv4l2 support for video4linux.
2271 AC_ARG_ENABLE( libv4l2,
2272 [ --enable-libv4l2 Libv4l2 Video4Linux2 support (default enabled)])
2273 if test "${enable_libv4l2}" != "no" -a "${enable_v4l2}" != "no"
2275 PKG_CHECK_MODULES( LIBV4L2, libv4l2, [
2276 VLC_ADD_LDFLAGS([v4l2],[${LIBV4L2_LIBS}])
2277 VLC_ADD_CFLAGS([v4l2],[${LIBV4L2_CFLAGS}])
2278 AC_DEFINE(HAVE_LIBV4L2, 1, Define if libv4l is available)],
2279 AC_MSG_WARN([LibV4L2 support disabled because libv4l2 development headers were not found])
2284 dnl special access module for Hauppauge PVR cards
2287 [ --enable-pvr PVR cards access module (default disabled)])
2288 if test "${enable_pvr}" = "yes"
2290 VLC_ADD_PLUGIN([pvr])
2291 AC_ARG_WITH(videodev2,
2292 [ --with-videodev2=FILE Location of videodev2.h file (default /usr/include/linux/videodev2.h)],[],[])
2293 if test "${with_videodev2}" != "no" -a -n "${with_videodev2}"
2295 AC_DEFINE_UNQUOTED(VIDEODEV2_H_FILE, "${with_videodev2}", [Location of videodev2.h])
2298 AC_CACHE_CHECK([for new linux/videodev2.h],
2299 [ac_cv_new_linux_videodev2_h],
2301 #include <sys/types.h>
2302 # ifdef VIDEODEV2_H_FILE
2303 # include VIDEODEV2_H_FILE
2305 # include <linux/videodev2.h>
2308 [struct v4l2_ext_controls ctrls; ctrls.ctrl_class = V4L2_CTRL_CLASS_MPEG; ],
2309 ac_cv_new_linux_videodev2_h=yes,
2310 ac_cv_new_linux_videodev2_h=no)])
2311 if test "${ac_cv_new_linux_videodev2_h}" != "no"; then
2312 AC_DEFINE(HAVE_NEW_LINUX_VIDEODEV2_H, 1, [Define if new linux/videodev2.h present])
2317 dnl gnomeVFS access module
2319 PKG_ENABLE_MODULES_VLC([GNOMEVFS], [access_gnomevfs], [gnome-vfs-2.0], [GnomeVFS access module], [auto])
2322 dnl Need to test libcdio and libvcdinfo for a number of things. Do it now.
2323 AC_ARG_ENABLE(libcdio,
2324 [ --enable-libcdio CD input and control library support (default enabled)])
2326 AC_ARG_ENABLE(vcdinfo,
2327 [ --enable-libvcdinfo VCD information library support (default enabled)])
2331 if test "${enable_libcdio}" != "no"
2333 PKG_CHECK_MODULES(LIBCDIO, libcdio >= 0.78.2,
2335 AC_DEFINE(HAVE_LIBCDIO, 1,
2336 [Define if you have libcdio 0.78.2 or greater installed]),
2337 [AC_MSG_WARN(CD Reading and information library not found)])
2339 if test "${enable_vcdinfo}" != "no"
2341 PKG_CHECK_MODULES(VCDINFO, libvcdinfo >= 0.7.22,
2342 [have_libvcdinfo=yes
2343 AC_DEFINE(HAVE_VCDINFO, 1,
2344 [Define if you have libvcdinfo 0.7.22 or greater installed])],
2345 [AC_MSG_WARN(VCD information library not found)])
2350 dnl VCDX and CDDAX modules
2352 AC_ARG_ENABLE(cddax,
2353 AS_HELP_STRING([--enable-cddax],[audio CD plugin with CD Text and CD paranoia
2354 via libcdio (default disabled)]))
2356 AC_ARG_ENABLE(libcddb,
2357 [ --enable-libcddb CDDB support for libcdio audio CD (default enabled)])
2359 if test "${enable_cddax}" = "yes"
2361 if test "$have_libcdio" = "yes"
2363 AC_DEFINE(HAVE_CDDAX, 1, [Define for the audio CD plugin using libcdio])
2364 VLC_ADD_LIBS([cddax],[$LIBCDIO_LIBS])
2365 VLC_ADD_CFLAGS([cddax],[$LIBCDIO_CFLAGS])
2366 VLC_ADD_PLUGIN([cddax])
2367 PKG_CHECK_MODULES(LIBCDIO_PARANOIA, libcdio_paranoia >= 0.72, [
2368 VLC_ADD_LIBS([cddax],[$LIBCDIO_CDDA_LIBS $LIBCDIO_CDDA_LIBS $LIBCDIO_PARANOIA_LIBS])],
2369 AC_MSG_WARN([CD Paranoia support disabled because no libcdio >= 0.72 found]))
2371 AC_MSG_WARN([cddax plugin disabled because ok libcdio library not found or disabled])
2375 if test "$enable_libcddb" != "no"; then
2376 PKG_CHECK_MODULES(LIBCDDB, libcddb >= 0.9.5, [
2378 AC_DEFINE(HAVE_LIBCDDB, 1, [Define this if you have libcddb installed])
2379 VLC_ADD_LIBS([cddax],[$LIBCDDB_LIBS])
2380 VLC_ADD_CFLAGS([cddax],[$LIBCDDB_CFLAGS])
2382 [AC_MSG_WARN(new enough libcddb not found. CDDB access disabled)
2389 [ --enable-vcdx VCD with navigation via libvcdinfo (default disabled)])
2391 if test "${enable_vcdx}" = "yes"
2393 if test "${have_libvcdinfo}" = "yes"
2395 VLC_ADD_LIBS([vcdx],[$VCDINFO_LIBS])
2396 VLC_ADD_CFLAGS([vcdx],[$VCDINFO_CFLAGS])
2398 AC_MSG_WARN([vcdx plugin disabled because ok libvcdinfo library not found or disabled])
2402 PKG_CHECK_MODULES(LIBCDIO, libiso9660 >= 0.72,
2403 [VLC_ADD_LIBS([vcdx],[$LIBISO9660_LIBS])
2404 VLC_ADD_CFLAGS([vcdx],[$LIBISO9660_CFLAGS])],
2405 [AC_MSG_WARN([vcdx plugin disabled because ok libiso9660 library not found])
2408 if test "$have_libvcdinfo" = "yes"
2410 AC_DEFINE(HAVE_VCDX, 1,
2411 [Define for the VCD plugin using libcdio/libvcdinfo])
2412 VLC_ADD_LIBS([vcdx],[$VCDINFO_LIBS])
2413 VLC_ADD_CFLAGS([vcdx],[$VCDINFO_CFLAGS])
2414 VLC_ADD_PLUGIN([vcdx])
2416 AC_MSG_WARN([vcdx plugin disabled because ok libvcdinfo library not found])
2422 dnl Built-in CD-DA and VCD module
2425 [ --enable-cdda audio CD via built-in VCD (default enabled)])
2428 [ --enable-vcd built-in VCD (default enabled)])
2430 if test "${enable_vcd}" != "no"
2432 AC_MSG_CHECKING(for cdrom_msf0 in linux/cdrom.h)
2433 AC_EGREP_HEADER(cdrom_msf0,linux/cdrom.h,[
2435 VLC_ADD_PLUGIN([vcd])
2436 VLC_ADD_PLUGIN([cdda])
2441 AC_MSG_CHECKING(for scsireq in sys/scsiio.h)
2442 AC_EGREP_HEADER(scsireq,sys/scsiio.h,[
2444 VLC_ADD_PLUGIN([vcd])
2445 VLC_ADD_PLUGIN([cdda])
2446 AC_DEFINE(HAVE_SCSIREQ_IN_SYS_SCSIIO_H, 1, For NetBSD VCD support)
2451 AC_MSG_CHECKING(for ioc_toc_header in sys/cdio.h)
2452 AC_EGREP_HEADER(ioc_toc_header ,sys/cdio.h,[
2454 VLC_ADD_PLUGIN([vcd])
2455 VLC_ADD_PLUGIN([cdda])
2456 AC_DEFINE(HAVE_IOC_TOC_HEADER_IN_SYS_CDIO_H, 1, For FreeBSD VCD support)
2461 if test "${SYS}" = "bsdi" -o "${SYS}" = "mingw32"
2463 VLC_ADD_PLUGIN([vcd])
2464 VLC_ADD_PLUGIN([cdda])
2467 if test "${SYS}" = "darwin"
2469 VLC_ADD_PLUGIN([vcd])
2470 VLC_ADD_PLUGIN([cdda])
2471 VLC_ADD_LDFLAGS([vcd vcdx cdda cddax],[-Wl,-framework,IOKit,-framework,CoreFoundation])
2472 VLC_ADD_LIBS([vcdx cddax cdda],[-liconv])
2475 if test "$enable_libcddb" != "no"; then
2476 PKG_CHECK_MODULES(LIBCDDB, libcddb >= 0.9.5, [
2478 AC_DEFINE(HAVE_LIBCDDB, 1, [Define this if you have libcddb installed])
2479 VLC_ADD_LIBS([cdda],[$LIBCDDB_LIBS])
2480 VLC_ADD_CFLAGS([cdda],[$LIBCDDB_CFLAGS])
2482 [AC_MSG_WARN(new enough libcddb not found. CDDB access disabled)
2488 dnl DVB-S/DVB-T/DVB-C satellite/teresterial/cable input using v4l2
2491 [ --enable-dvb DVB-S/T/C card support (default enabled)])
2493 if test "${enable_dvb}" != "no"
2495 AS_IF([test "${have_dvbpsi}" = "yes" ],[
2497 [ --with-dvb=PATH path to a dvb- and v4l2-enabled kernel tree],[],[])
2498 if test "${with_dvb}" != "no" -a -n "${with_dvb}"
2500 VLC_ADD_CFLAGS([dvb],[-I${with_dvb}/include])
2502 CPPFLAGS="${CPPFLAGS_save} -I${with_dvb}/include"
2503 AC_CHECK_HEADERS(linux/dvb/version.h linux/dvb/frontend.h, [
2504 VLC_ADD_PLUGIN([dvb])
2505 ],[AC_MSG_WARN(linux-dvb headers not found, dvb disabled)])
2506 CPPFLAGS="${CPPFLAGS_save}"
2508 AC_MSG_WARN([the dvb access module requires libdvbpsi])
2513 dnl Screen capture module
2515 AC_ARG_ENABLE(screen,
2516 [ --enable-screen Screen capture support (default enabled)])
2517 if test "${enable_screen}" != "no"; then
2518 if test "${SYS}" = "darwin"; then
2519 AC_CHECK_HEADERS(OpenGL/gl.h, [
2520 AC_CHECK_HEADERS(ApplicationServices/ApplicationServices.h, [
2521 VLC_ADD_PLUGIN([screen])
2522 VLC_ADD_LDFLAGS([screen],[-Wl,-framework,OpenGL,-framework,ApplicationServices])
2525 elif test "${SYS}" = "mingw32"; then
2526 VLC_ADD_PLUGIN([screen])
2527 VLC_ADD_LIBS([screen],[-lgdi32])
2528 elif test "${SYS}" = "mingwce"; then
2529 CPPFLAGS="${CPPFLAGS_save}"
2530 elif test "${SYS}" = "beos"; then
2531 VLC_ADD_PLUGIN([screen])
2532 VLC_ADD_CXXFLAGS([screen],[])
2533 VLC_ADD_LIBS([screen],[-lbe])
2538 dnl ipv6 plugin - not for QNX yet
2541 AC_CHECK_FUNCS(inet_pton,[have_ipv6=yes],[
2542 AC_CHECK_LIB(nsl,inet_pton, [have_ipv6=yes])
2545 AS_IF([test "${have_ipv6}" = "yes"], [
2546 AC_DEFINE(HAVE_INET_PTON, 1, [Define to 1 if you have inet_pton().])])
2549 AC_CHECK_FUNCS(inet_ntop,[
2550 AC_DEFINE(HAVE_INET_NTOP, 1, [Define to 1 if you have inet_ntop().])])
2554 dnl ogg demux plugin
2556 PKG_ENABLE_MODULES_VLC([OGG], [], [ogg >= 1.0], [Ogg demux support], [auto])
2557 if test "${enable_sout}" != "no"; then
2558 PKG_ENABLE_MODULES_VLC([MUX_OGG], [], [ogg >= 1.0], [Ogg demux support], [auto])
2561 if test "${enable_sout}" != "no"; then
2562 dnl Check for libshout
2563 PKG_ENABLE_MODULES_VLC([shout], [access_output_shout], [shout >= 2.1], [libshout output plugin], [auto])
2567 dnl matroska demux plugin
2570 [ --enable-mkv Matroska demux support (default enabled)])
2571 if test "${enable_mkv}" != "no" -a "${CXX}" != ""; then
2573 AC_CHECK_HEADERS(ebml/EbmlVersion.h, [
2574 AC_MSG_CHECKING(for libebml version >= 0.7.7)
2576 [#include <ebml/EbmlVersion.h>
2577 #ifdef LIBEBML_VERSION
2578 #if LIBEBML_VERSION >= 0x000706
2582 [AC_MSG_RESULT([yes])
2583 AC_CHECK_HEADERS(matroska/KaxVersion.h, [
2584 AC_MSG_CHECKING(for libmatroska version >= 0.8.0)
2586 [#include <matroska/KaxVersion.h>
2587 #ifdef LIBMATROSKA_VERSION
2588 #if LIBMATROSKA_VERSION >= 0x000705
2592 [AC_MSG_RESULT([yes])
2593 AC_CHECK_HEADERS(matroska/KaxAttachments.h)
2594 VLC_ADD_CXXFLAGS([mkv],[])
2595 if test "${SYS}" = "darwin"; then
2596 VLC_ADD_CXXFLAGS([mkv],[-O1])
2598 AC_CHECK_LIB(ebml_pic, main, [
2599 VLC_ADD_PLUGIN([mkv])
2600 VLC_ADD_LIBS([mkv],[-lmatroska -lebml_pic])
2602 AC_CHECK_LIB(ebml, main, [
2603 VLC_ADD_PLUGIN([mkv])
2604 VLC_ADD_LIBS([mkv],[-lmatroska -lebml])
2608 [AC_MSG_RESULT([no])
2609 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.])
2613 [AC_MSG_RESULT([no])
2614 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.])
2621 dnl modplug demux plugin
2624 [ --enable-mod Mod demux support (default enabled)])
2625 if test "${enable_mod}" != "no"
2627 AC_ARG_WITH(mod-tree,
2628 [ --with-mod-tree=PATH mod tree for static linking])
2629 if test -n "${with_mod_tree}"
2631 AC_MSG_CHECKING(for libmodplug.a in ${with_mod_tree})
2632 real_mod_tree="`cd ${with_mod_tree} 2>/dev/null && pwd`"
2633 if test -z "${real_mod_tree}"
2635 dnl The given directory can't be found
2637 AC_MSG_ERROR([cannot cd to ${with_mod_tree}])
2639 if test -f "${real_mod_tree}/src/.libs/libmodplug.a"
2641 dnl Use a custom mod
2642 AC_MSG_RESULT(${real_mod_tree}/src/.libs/libmodplug.a)
2643 VLC_ADD_PLUGIN([mod])
2644 VLC_ADD_LIBS([mod],[${real_mod_tree}/src/.libs/libmodplug.a -lstdc++])
2645 VLC_ADD_CXXFLAGS([mod],[-I${real_mod_tree}/include])
2647 dnl The given mod wasn't built
2649 AC_MSG_ERROR([cannot find ${real_mod_tree}/src/.libs/libmodplug.a, make sure you compiled mod in ${with_mod_tree}])
2652 AC_CHECK_HEADERS(libmodplug/modplug.h, [
2653 VLC_ADD_PLUGIN([mod])
2654 VLC_ADD_CXXFLAGS([mod],[])
2655 VLC_ADD_LIBS([mod],[-lmodplug -lstdc++])])
2660 dnl mpc demux plugin
2663 [ --enable-mpc Mpc demux support (default enabled)])
2664 if test "${enable_mpc}" != "no"
2666 AC_CHECK_HEADERS([mpc/mpcdec.h], [
2667 VLC_ADD_PLUGIN([mpc])
2668 VLC_ADD_LIBS([mpc],[-lmpcdec])],
2669 [AC_CHECK_HEADERS([mpcdec/mpcdec.h], [
2670 VLC_ADD_PLUGIN([mpc])
2671 VLC_ADD_LIBS([mpc],[-lmpcdec])])])
2675 dnl game music emu demux plugin
2678 [ --enable-gme Game Music Emu demux support (default enabled)])
2679 if test "${enable_gme}" != "no" -a "${CXX}" != "";
2682 AC_ARG_WITH(gme-tree,
2683 [ --with-gme-tree=PATH gme tree for static linking])
2684 if test -n "${with_gme_tree}"
2686 AC_MSG_CHECKING(for libgme.a in ${with_mod_tree})
2687 real_gme_tree="`cd ${with_gme_tree} 2>/dev/null && pwd`"
2688 if test -z "${real_gme_tree}"
2690 dnl The given directory can't be found
2692 AC_MSG_ERROR([cannot cd to ${with_gme_tree}])
2694 if test -f "${real_gme_tree}/gme/libgme.a"
2696 dnl Use a custom gme
2697 AC_MSG_RESULT(${real_gme_tree}/gme/libgme.a)
2698 VLC_ADD_PLUGIN([gme])
2699 VLC_ADD_LIBS([gme],[${real_gme_tree}/gme/libgme.a])
2700 VLC_ADD_CXXFLAGS([gme],[-I${real_gme_tree}/gme])
2702 dnl The given gme wasn't built
2704 AC_MSG_ERROR([cannot find ${real_mod_tree}/gme/libgme.a, make sure you compiled gme in ${with_gme_tree}])
2707 AC_MSG_WARN([only static linking is available, you must provide a gme-tree])
2716 AC_ARG_WITH(,[Codec plugins:])
2721 AC_ARG_ENABLE(wma-fixed,
2722 [ --enable-wma-fixed libwma-fixed module (default disabled)])
2723 if test "${enable_wma_fixed}" = "yes"
2725 VLC_ADD_PLUGIN([wma_fixed])
2729 dnl shine fixed point mp3 encoder
2731 AC_ARG_ENABLE(shine,
2732 [ --enable-shine shine mp3 encoding module (default disabled)])
2733 if test "${enable_shine}" = "yes"
2735 VLC_ADD_PLUGIN([shine])
2742 [ --enable-mad libmad module (default enabled)])
2743 if test "${enable_mad}" != "no"
2746 [ --with-mad=PATH path to libmad],[],[])
2747 if test "${with_mad}" != "no" -a -n "${with_mad}"
2749 VLC_ADD_CPPFLAGS([mpgatofixed32],[-I${with_mad}/include])
2750 VLC_ADD_LIBS([mpgatofixed32],[-L${with_mad}/lib])
2753 AC_ARG_WITH(mad-tree,
2754 [ --with-mad-tree=PATH mad tree for static linking],[],[])
2755 if test "${with_mad_tree}" != "no" -a -n "${with_mad_tree}"
2757 real_mad_tree="`cd ${with_mad_tree} 2>/dev/null && pwd`"
2758 if test -z "${real_mad_tree}"
2760 dnl The given directory can't be found
2762 AC_MSG_ERROR([${with_mad_tree} directory doesn't exist])
2764 dnl Use a custom libmad
2765 AC_MSG_CHECKING(for mad.h in ${real_mad_tree})
2766 if test -f ${real_mad_tree}/mad.h
2769 VLC_ADD_CPPFLAGS([mpgatofixed32],[-I${real_mad_tree}])
2770 VLC_ADD_LIBS([mpgatofixed32],[-L${real_mad_tree}/.libs])
2771 LDFLAGS="${LDFLAGS_save} ${LIBS_mpgatofixed32}"
2772 AC_CHECK_LIB(mad, mad_bit_init, [
2773 VLC_ADD_PLUGIN([mpgatofixed32])
2774 VLC_ADD_LIBS([mpgatofixed32],[-lmad])
2775 ],[ AC_MSG_ERROR([the specified tree hasn't been compiled ])
2777 LDFLAGS="${LDFLAGS_save}"
2780 AC_MSG_ERROR([the specified tree doesn't have mad.h])
2783 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_mpgatofixed32}"
2784 LDFLAGS="${LDFLAGS_save} ${LIBS_mpgatofixed32}"
2785 AC_CHECK_HEADERS(mad.h, ,
2786 [ 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.]) ])
2787 AC_CHECK_LIB(mad, mad_bit_init, [
2788 VLC_ADD_PLUGIN([mpgatofixed32])
2789 VLC_ADD_LIBS([mpgatofixed32],[-lmad])],
2790 [ AC_MSG_ERROR([Cannot find libmad library...]) ])
2791 CPPFLAGS="${CPPFLAGS_save}"
2792 LDFLAGS="${LDFLAGS_save}"
2797 dnl libid3tag support (FIXME!!! doesn't work with new input)
2799 AC_ARG_ENABLE( id3tag,
2800 [ --disable-id3tag id3tag metadata reader plugin (default disabled)])
2801 AS_IF([test "${enable_id3tag}" = "yes"], [
2802 AC_CHECK_HEADERS(id3tag.h, [
2803 AS_IF([test "${have_zlib}" = "yes"],[
2804 VLC_ADD_LIBS([id3tag],[-lid3tag -lz])
2805 VLC_ADD_PLUGIN([id3tag])
2811 dnl avcodec decoder/encoder plugin
2814 if test "${with_ffmpeg_tree}"
2816 AC_MSG_WARN([--with-ffmpeg-tree is deprecated. Use PKG_CONFIG_PATH instead.])
2819 AC_ARG_ENABLE(avcodec,
2820 [ --enable-avcodec libavcodec codec (default enabled)])
2821 if test "${enable_avcodec}" != "no"
2823 PKG_CHECK_MODULES(AVCODEC,[libavcodec >= 51.48.0 libavutil],
2826 CPPFLAGS="${CPPFLAGS} ${AVCODEC_CFLAGS}"
2827 CFLAGS="${CFLAGS} ${AVCODEC_CFLAGS}"
2828 AC_CHECK_HEADERS(libavcodec/avcodec.h ffmpeg/avcodec.h)
2829 AC_CHECK_HEADERS(libavutil/avutil.h ffmpeg/avutil.h)
2830 VLC_ADD_PLUGIN([avcodec])
2831 VLC_ADD_LIBS([avcodec],[$AVCODEC_LIBS])
2832 VLC_ADD_CFLAGS([avcodec],[$AVCODEC_CFLAGS])
2836 AC_MSG_ERROR([Could not find libavcodec or libavutil. Use --disable-avcodec to ignore this error.])
2841 dnl stream_out switcher needs libavcodec
2843 AC_ARG_ENABLE(switcher,
2844 [ --enable-switcher Stream-out switcher plugin (default disabled)])
2845 AS_IF([test "${enable_switcher}" = "yes"], [
2846 AS_IF([test "x${have_avcodec}" = "xyes"], [
2847 VLC_ADD_PLUGIN([stream_out_switcher])
2848 VLC_ADD_LIBS([stream_out_switcher],[$AVCODEC_LIBS])
2849 VLC_ADD_CFLAGS([stream_out_switcher],[$AVCODEC_CFLAGS])
2850 ],[AC_MSG_ERROR([Stream_out switcher depends on avcodec])
2856 dnl avformat demuxer/muxer plugin
2859 AC_ARG_ENABLE(avformat,
2860 [ --enable-avformat libavformat containers (default enabled)])
2861 if test "${enable_avformat}" != "no"
2863 PKG_CHECK_MODULES(AVFORMAT,[libavformat libavutil],
2866 CPPFLAGS="${CPPFLAGS} ${AVFORMAT_CFLAGS}"
2867 CFLAGS="${CFLAGS} ${AVFORMAT_CFLAGS}"
2868 AC_CHECK_HEADERS(libavformat/avformat.h ffmpeg/avformat.h)
2869 AC_CHECK_HEADERS(libavutil/avutil.h ffmpeg/avutil.h)
2870 VLC_ADD_PLUGIN([avformat])
2871 VLC_ADD_LIBS([avformat],[$AVFORMAT_LIBS])
2872 VLC_ADD_CFLAGS([avformat],[$AVFORMAT_CFLAGS])
2875 AC_MSG_ERROR([Could not find libavformat or libavutil. Use --disable-avformat to ignore this error.])
2880 dnl swscale image scaling and conversion plugin
2883 AC_ARG_ENABLE(swscale,
2884 AS_HELP_STRING([--enable-swscale],[libswscale image scaling and conversion
2885 (default enabled)]))
2886 if test "${enable_swscale}" != "no"
2888 PKG_CHECK_MODULES(SWSCALE,[libswscale],
2891 CPPFLAGS="${CPPFLAGS} ${SWSCALE_CFLAGS}"
2892 CFLAGS="${CFLAGS} ${SWSCALE_CFLAGS}"
2893 AC_CHECK_HEADERS(libswscale/swscale.h ffmpeg/swscale.h)
2894 VLC_ADD_PLUGIN([swscale])
2895 VLC_ADD_LIBS([swscale],[$SWSCALE_LIBS])
2896 VLC_ADD_CFLAGS([swscale],[$SWSCALE_CFLAGS])
2899 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.])
2907 AC_ARG_ENABLE(postproc,
2908 [ --enable-postproc libpostproc image post-processing (default enabled)])
2909 if test "${enable_postproc}" != "no"
2911 PKG_CHECK_MODULES(POSTPROC,[libpostproc libavutil],
2914 CPPFLAGS="${CPPFLAGS} ${POSTPROC_CFLAGS}"
2915 CFLAGS="${CFLAGS} ${POSTPROC_CFLAGS}"
2916 AC_CHECK_HEADERS(libpostproc/postproc.h postproc/postprocess.h)
2917 VLC_ADD_PLUGIN([postproc])
2918 VLC_ADD_LIBS([postproc],[$POSTPROC_LIBS])
2919 VLC_ADD_CFLAGS([postproc],[$POSTPROC_CFLAGS])
2922 AC_MSG_ERROR([Could not find libpostproc. Use --disable-postproc to ignore this error.])
2927 dnl faad decoder plugin
2930 [ --enable-faad faad codec (default disabled)])
2931 if test "${enable_faad}" = "yes"
2933 AC_ARG_WITH(faad-tree,
2934 [ --with-faad-tree=PATH faad tree for static linking])
2935 if test -n "${with_faad_tree}"
2937 AC_MSG_CHECKING(for libfaad.a in ${with_faad_tree})
2938 real_faad_tree="`cd ${with_faad_tree} 2>/dev/null && pwd`"
2939 if test -z "${real_faad_tree}"
2941 dnl The given directory can't be found
2943 AC_MSG_ERROR([cannot cd to ${with_faad_tree}])
2945 if test -f "${real_faad_tree}/libfaad/.libs/libfaad.a"
2947 dnl Use a custom faad
2948 AC_MSG_RESULT(${real_faad_tree}/libfaad/.libs/libfaad.a)
2949 VLC_ADD_PLUGIN([faad])
2950 VLC_ADD_LIBS([faad],[${real_faad_tree}/libfaad/.libs/libfaad.a])
2951 VLC_ADD_CPPFLAGS([faad],[-I${real_faad_tree}/include])
2953 dnl The given libfaad wasn't built
2955 AC_MSG_ERROR([cannot find ${real_faad_tree}/libfaad/.libs/libfaad.a, make sure you compiled libfaad in ${with_faad_tree}])
2958 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_faad}"
2959 LDFLAGS="${LDFLAGS_save} ${LIBS_faad}"
2960 AC_CHECK_HEADERS(faad.h, ,
2961 [ AC_MSG_ERROR([Cannot find development headers for libfaad...]) ])
2962 AC_CHECK_LIB(faad, faacDecOpen, [
2963 VLC_ADD_PLUGIN([faad])
2964 VLC_ADD_LIBS([faad],[-lfaad]) ],
2965 AC_CHECK_LIB(faad, NeAACDecOpen, [
2966 VLC_ADD_PLUGIN([faad])
2967 VLC_ADD_LIBS([faad],[-lfaad]) ],
2968 [ AC_MSG_ERROR([Cannot find libfaad library...]) ]))
2969 LDFLAGS="${LDFLAGS_save}"
2970 CPPFLAGS="${CPPFLAGS_save}"
2975 dnl twolame encoder plugin
2977 PKG_ENABLE_MODULES_VLC([twolame], [], [twolame], [MPEG Audio Layer 2 encoder], [auto], [], [], [ -DLIBTWOLAME_STATIC])
2980 dnl QuickTime plugin
2982 AC_ARG_ENABLE(quicktime,
2983 [ --enable-quicktime QuickTime module (deprecated)])
2984 if test "${enable_quicktime}" = "yes"; then
2985 if test "${SYS}" = "mingw32"; then
2986 VLC_ADD_PLUGIN([quicktime])
2988 AC_CHECK_HEADERS(QuickTime/QuickTime.h,
2989 [ VLC_ADD_PLUGIN([quicktime])
2990 VLC_ADD_LDFLAGS([quicktime],[-Wl,-framework,QuickTime,-framework,Carbon])
2991 ], [ AC_MSG_ERROR([cannot find QuickTime headers]) ])
2999 [ --enable-real Real media module (default disabled)])
3000 if test "${enable_real}" = "yes"; then
3001 VLC_ADD_PLUGIN([realaudio])
3002 VLC_ADD_PLUGIN([realvideo])
3006 dnl Real RTSP plugin
3008 AC_ARG_ENABLE(realrtsp,
3009 [ --enable-realrtsp Real RTSP module (default disabled)])
3010 if test "${enable_realrtsp}" = "yes"; then
3011 VLC_ADD_PLUGIN([access_realrtsp])
3014 AC_ARG_ENABLE(libsysfs,
3015 [ --enable-libsysfs Get user key from firewire connected iPod via libsysfs (default enabled)])
3017 AS_IF([test "${enable_libsysfs}" != "no"],[
3018 AC_CHECK_HEADERS(sysfs/libsysfs.h, [
3019 VLC_ADD_LIBS([mp4 mkv],[-lsysfs])
3026 AC_ARG_ENABLE(libtar,
3027 [ --enable-libtar libtar support for skins2 (default enabled)])
3029 AS_IF([test "${enable_libtar}" != "no"],[
3030 AC_CHECK_HEADERS(libtar.h, [
3031 VLC_ADD_LIBS([skins2],[-ltar])
3036 dnl A52/AC3 decoder plugin
3039 [ --enable-a52 A/52 support with liba52 (default enabled)])
3040 if test "${enable_a52}" != "no"
3043 [ --with-a52=PATH a52 headers and libraries])
3044 AC_ARG_WITH(a52-tree,
3045 [ --with-a52-tree=PATH a52dec tree for static linking ],[],[])
3046 if test "${with_a52_tree}" != "no" -a -n "${with_a52_tree}"
3048 real_a52_tree="`cd ${with_a52_tree} 2>/dev/null && pwd`"
3049 if test -z "${real_a52_tree}"
3051 dnl The given directory can't be found
3053 AC_MSG_ERROR([${with_a52_tree} directory doesn't exist])
3055 dnl Use a custom a52dec
3056 AC_MSG_CHECKING(for a52.h in ${real_a52_tree}/include)
3057 if test -f ${real_a52_tree}/include/a52.h
3060 VLC_ADD_CPPFLAGS([a52tofloat32],[-I${real_a52_tree}])
3061 VLC_ADD_LIBS([a52tofloat32],[-L${real_a52_tree}/liba52/.libs])
3062 LDFLAGS="${LDFLAGS_save} ${LIBS_a52tofloat32}"
3063 AC_CHECK_LIB(a52, a52_free, [
3064 VLC_ADD_PLUGIN([a52tofloat32])
3065 VLC_ADD_CPPFLAGS([a52tofloat32],[-DUSE_A52DEC_TREE])
3066 VLC_ADD_LIBS([a52tofloat32],[-la52])
3068 if test -f ${real_a52_tree}/liba52/.libs/liba52.a
3070 AC_MSG_ERROR([make sure you have at least a52dec-0.7.3 ($real_a52_tree)])
3072 AC_MSG_ERROR([the specified tree hasn't been compiled])
3075 LDFLAGS="${LDFLAGS_save}"
3078 AC_MSG_ERROR([the specified tree doesn't have a52.h])
3081 if test -z "${with_a52}"
3086 LDFLAGS_test="-L${with_a52}/lib"
3087 CPPFLAGS_test="-I${with_a52}/include"
3089 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_test} ${CPPFLAGS_a52tofloat32}"
3090 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_test} ${LIBS_a52tofloat32}"
3091 AC_CHECK_HEADERS(a52dec/a52.h, [
3092 AC_CHECK_LIB(a52, a52_free, [
3093 VLC_ADD_PLUGIN([a52tofloat32])
3094 VLC_ADD_LIBS([a52tofloat32],[${LDFLAGS_test} -la52])
3095 VLC_ADD_CPPFLAGS([a52tofloat32],[${CPPFLAGS_test}])
3097 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.])
3100 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.])
3102 CPPFLAGS="${CPPFLAGS_save}"
3103 LDFLAGS="${LDFLAGS_save}"
3107 AC_ARG_WITH(a52-fixed,
3108 [ --with-a52-fixed specify if liba52 has been compiled with fixed point support],
3110 VLC_ADD_CPPFLAGS([a52tofloat32],[-DLIBA52_FIXED]) ])
3113 dnl DTS Coherent Acoustics decoder plugin
3115 AS_IF([test "x${enable_dts}" != "x"], [
3116 AC_MSG_ERROR([--enable-dts is obsolete. Please use libdca and --enable-dca.])
3118 PKG_ENABLE_MODULES_VLC([DCA], [dtstofloat32], [libdca >= 0.0.5], [DTS Coherent Acoustics support with libdca], [auto])
3123 PKG_ENABLE_MODULES_VLC([FLAC], [], [flac], [libflac decoder/encoder support], [auto])
3128 PKG_ENABLE_MODULES_VLC([LIBMPEG2], [], [libmpeg2 > 0.3.2], [libmpeg2 decoder support], [auto])
3133 PKG_ENABLE_MODULES_VLC([VORBIS], [], [ogg vorbis >= 1.1 vorbisenc >= 1.1], [Vorbis decoder and encoder], [auto])
3138 AC_ARG_ENABLE(tremor,
3139 [ --enable-tremor Tremor decoder support (default disabled)])
3140 if test "${enable_tremor}" = "yes"
3142 AC_CHECK_HEADERS(tremor/ivorbiscodec.h, [
3143 VLC_ADD_PLUGIN([tremor])
3144 VLC_ADD_LIBS([tremor],[-lvorbisidec -logg])
3151 PKG_ENABLE_MODULES_VLC([SPEEX], [], [ogg speex >= 1.0.5], [Speex decoder support], [auto])
3154 dnl tarkin decoder plugin
3156 AC_ARG_ENABLE(tarkin,
3157 [ --enable-tarkin experimental tarkin codec (default disabled)])
3158 if test "${enable_tarkin}" = "yes"
3160 AC_ARG_WITH(tarkin-tree,
3161 [ --with-tarkin-tree=PATH tarkin tree for static linking])
3162 if test -n "${with_tarkin_tree}"
3164 AC_MSG_CHECKING(for tarkin.o in ${with_tarkin_tree})
3165 real_tarkin_tree="`cd ${with_tarkin_tree} 2>/dev/null && pwd`"
3166 if test -f "${real_tarkin_tree}/tarkin.o"
3168 VLC_ADD_PLUGIN([tarkin])
3169 VLC_ADD_CPPFLAGS([tarkin],[-I${real_tarkin_tree}])
3170 VLC_ADD_LIBS([tarkin],[${real_tarkin_tree}/mem.o ${real_tarkin_tree}/pnm.o ${real_tarkin_tree}/wavelet.o ${real_tarkin_tree}/wavelet_xform.o ${real_tarkin_tree}/wavelet_coeff.o ${real_tarkin_tree}/yuv.o ${real_tarkin_tree}/tarkin.o ${real_tarkin_tree}/info.o -logg])
3173 dnl The given tarkin tree wasn't built
3175 AC_MSG_ERROR([cannot find ${real_tarkin_tree}/tarkin.o,
3176 make sure you compiled tarkin in ${with_tarkin_tree}])
3182 dnl theora decoder plugin
3184 PKG_ENABLE_MODULES_VLC([THEORA], [], [ogg theora >= 1.0], [experimental theora codec], [auto])
3187 dnl dirac encoder plugin
3189 PKG_ENABLE_MODULES_VLC([DIRAC], [], [dirac >= 0.10.0], [dirac encoder], [auto])
3192 dnl schroedinger decoder plugin (for dirac format video)
3194 PKG_ENABLE_MODULES_VLC([SCHROEDINGER], [], [schroedinger-1.0 >= 1.0.6], [dirac decoder using schroedinger], [auto])
3197 dnl PNG decoder module
3200 [ --enable-png PNG support (default enabled)])
3201 if test "${enable_png}" != "no"; then
3202 AC_CHECK_HEADERS(png.h, [
3203 LDFLAGS="${LDFLAGS_save} -lz"
3204 AC_CHECK_LIB(png, png_set_rows, [
3205 VLC_ADD_LIBS([png],[-lpng -lz])
3206 VLC_ADD_PLUGIN([png])
3207 VLC_ADD_PLUGIN([osdmenu])
3208 VLC_ADD_PLUGIN([osd_parser])
3209 AC_DEFINE(HAVE_LIBPNG, 1, [Define if you have the PNG library: libpng])],
3211 LDFLAGS="${LDFLAGS_save}"
3214 AM_CONDITIONAL(BUILD_OSDMENU, [test "${enable_png}" != "no"])
3217 dnl H264 encoder plugin (using libx264)
3220 [ --enable-x264 H264 encoding support with libx264 (default enabled)])
3221 if test "${enable_x264}" != "no"; then
3222 AC_ARG_WITH(x264-tree,
3223 [ --with-x264-tree=PATH x264 tree for static linking ],[],[])
3224 if test "${with_x264_tree}" != "no" -a -n "${with_x264_tree}"
3226 real_x264_tree="`cd ${with_x264_tree} 2>/dev/null && pwd`"
3227 if test -z "${real_x264_tree}"
3229 dnl The given directory can't be found
3231 AC_MSG_ERROR([${with_x264_tree} directory doesn't exist])
3233 dnl Use a custom libx264
3234 AC_MSG_CHECKING(for x264.h in ${real_x264_tree})
3235 if test -f ${real_x264_tree}/x264.h
3238 VLC_ADD_CPPFLAGS([x264],[-I${real_x264_tree}])
3239 VLC_ADD_LIBS([x264],[-L${real_x264_tree}])
3240 PKG_CHECK_MODULES(X264,x264, [
3241 VLC_ADD_PLUGIN([x264])
3242 VLC_ADD_LDFLAGS([x264],[${X264_LIBS}])
3243 VLC_ADD_CFLAGS([x264],[${X264_CFLAGS}])
3244 if echo ${X264_LIBS} |grep -q 'pthreadGC2'; then
3245 VLC_ADD_CFLAGS([x264], [-DPTW32_STATIC_LIB])
3248 AC_MSG_ERROR([the specified tree hasn't been compiled])
3250 LDFLAGS="${LDFLAGS_save}"
3253 AC_MSG_ERROR([the specified tree doesn't have x264.h])
3256 PKG_CHECK_MODULES(X264,x264, [
3257 VLC_ADD_PLUGIN([x264])
3258 VLC_ADD_LDFLAGS([x264],[${X264_LIBS}])
3260 AC_CACHE_CHECK([if linker supports -Bsymbolic],
3261 [ac_cv_ld_bsymbolic],
3262 [LDFLAGS="${LDFLAGS_vlc} -Wl,-Bsymbolic"
3263 AC_TRY_LINK([],,ac_cv_ld_bsymbolic=yes,ac_cv_ld_bsymbolic=no)
3264 LDFLAGS="${LDFLAGS_save}"
3266 AS_IF([test "${ac_cv_ld_bsymbolic}" != "no"], [
3267 VLC_ADD_LDFLAGS([x264],[-Wl,-Bsymbolic])
3270 VLC_ADD_CFLAGS([x264],[${X264_CFLAGS}])
3271 if echo ${X264_LIBS} |grep -q 'pthreadGC2'; then
3272 VLC_ADD_CFLAGS([x264], [-DPTW32_STATIC_LIB])
3275 if test "${enable_x264}" = "yes"; then
3276 AC_MSG_ERROR([Could not find libx264 on your system: you may get it from http://www.videolan.org/x264.html])
3279 LDFLAGS="${LDFLAGS_save}"
3284 dnl libfluidsynth (MIDI synthetizer) plugin
3286 PKG_ENABLE_MODULES_VLC([FLUIDSYNTH], [], [fluidsynth], [MIDI synthetiser with libfluidsynth], [auto])
3289 dnl Teletext Modules
3290 dnl vbi decoder plugin (using libzbvi)
3295 AS_HELP_STRING([--enable-zvbi],[VBI (inc. Teletext) decoding support with
3296 libzvbi (default enabled)]))
3298 AS_HELP_STRING([--enable-telx],[Teletext decoding module (conflicting with
3299 zvbi) (default enabled if zvbi is absent)]))
3301 AS_IF( [test "${enable_zvbi}" != "no"],[
3302 PKG_CHECK_MODULES(ZVBI,
3305 VLC_ADD_LIBS([zvbi],[$ZVBI_LIBS])
3306 if test "${SYS}" = "mingw32"; then
3307 VLC_ADD_LIBS([zvbi],[ -lpthreadGC2])
3309 VLC_ADD_CFLAGS([zvbi],[$ZVBI_CFLAGS])
3310 VLC_ADD_PLUGIN([zvbi])
3311 AC_DEFINE(ZVBI_COMPILED, 1, [Define if the zvbi module is built])
3312 AS_IF( [test "${enable_telx}" = "yes"],[
3313 AC_MSG_WARN([The zvbi and telx modules are uncompatibles.
3317 AC_MSG_WARN(ZVBI library not found. Enabling the telx module instead)
3320 AS_IF( [test "${enable_telx}" != "no" ],[
3321 VLC_ADD_PLUGIN([telx])
3325 dnl libass subtitle rendering module
3327 AC_ARG_ENABLE(libass,
3328 [ --enable-libass Subtitle support using libass (default disabled)])
3329 AS_IF( [test "${enable_libass}" = "yes"], [
3330 PKG_CHECK_MODULES(LIBASS, libass >= 0.9.6,
3332 VLC_ADD_LDFLAGS([libass],[$LIBASS_LIBS])
3333 VLC_ADD_CFLAGS([libass],[$LIBASS_CFLAGS])
3334 VLC_ADD_PLUGIN([libass])
3336 AC_CHECK_HEADERS(fontconfig/fontconfig.h,
3337 [VLC_ADD_CPPFLAGS([libass],[-DHAVE_FONTCONFIG])
3338 if test "${SYS}" = "mingw32"; then
3339 VLC_ADD_LIBS([libass],[-lfontconfig -lfreetype -liconv -lz])
3341 VLC_ADD_LIBS([libass],[-lfontconfig])
3345 AC_MSG_WARN([LIBASS library not found])
3352 AC_ARG_ENABLE(asademux,
3353 [ --enable-asademux asa subtitle demuxing (default disabled)])
3354 AS_IF( [test "${enable_asademux}" = "yes"], [
3355 PKG_CHECK_MODULES(PCRE,
3358 VLC_ADD_LDFLAGS([asademux],[$PCRE_LIBS])
3359 VLC_ADD_CFLAGS([asademux],[$PCRE_CFLAGS])
3360 if test "${SYS}" = "mingw32"; then
3361 VLC_ADD_CPPFLAGS([asademux],[-DPCRE_STATIC])
3363 VLC_ADD_PLUGIN([asademux])
3365 AC_MSG_WARN([PCRE library not found (required for asademux)])
3373 [ --enable-cmml CMML support (default enabled)])
3374 if test "${enable_cmml}" != "no"
3376 VLC_ADD_PLUGIN([cmml])
3380 dnl kate decoder plugin
3383 [ --enable-kate kate codec (default enabled)])
3384 AS_IF([test "${enable_kate}" != "no"], [
3385 PKG_CHECK_MODULES(KATE,[kate >= 0.1.5], [
3386 VLC_ADD_PLUGIN([kate])
3387 VLC_ADD_CFLAGS([kate],[$KATE_CFLAGS])
3388 VLC_ADD_LIBS([kate],[$KATE_LIBS]) ],[
3389 AC_CHECK_HEADERS(kate/kate.h, [
3390 AC_CHECK_LIB(kate, kate_decode_init, [
3391 VLC_ADD_PLUGIN([kate])
3392 kate_libs="-lkate -logg"
3393 VLC_ADD_LDFLAGS([kate],[${kate_libs}]) ],[
3394 AS_IF([test "x${enable_kate}" != "x"], [
3395 AC_MSG_ERROR([libkate doesn't appear to be installed on your system.
3396 You also need to check that you have a libogg posterior to the 1.0 release.])
3400 AS_IF([test "x${enable_kate}" != "x"], [
3401 AC_MSG_ERROR([libkate headers do not appear to be installed on your system.
3402 You also need to check that you have a libogg posterior to the 1.0 release.])
3410 dnl tiger decoder plugin
3412 PKG_ENABLE_MODULES_VLC([TIGER], [], [tiger >= 0.3.1], [Tiger rendering library for Kate streams],[auto])
3419 AC_ARG_WITH(,[Video plugins:])
3427 [ --enable-x11 X11 support with Xlib (default enabled)],, [
3428 AS_IF([test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"], [
3435 CPPFLAGS="${CPPFLAGS_save} ${X_CFLAGS}"
3437 AS_IF([test "${enable_x11}" != "no"], [
3438 AC_CHECK_HEADERS(X11/Xlib.h)
3441 AC_CHECK_HEADERS(X11/extensions/dpms.h, [
3442 AC_MSG_CHECKING(for DPMSInfo in X11/extensions/dpms.h)
3443 AC_EGREP_HEADER(DPMSInfo,X11/extensions/dpms.h,[
3445 AC_DEFINE(DPMSINFO_IN_DPMS_H, 1,
3446 Define if <X11/extensions/dpms.h> defines DPMSInfo.)
3451 #include <X11/Xlib.h>
3457 dnl (enabled by default except on win32)
3460 [ --enable-glx X11 OpenGL (GLX) support (default enabled)],, [
3461 enable_glx="$enable_x11"
3463 AS_IF([test "${enable_glx}" != "no"], [
3464 AC_CHECK_HEADERS(X11/Xlib.h GL/glu.h GL/glx.h)
3465 AC_COMPILE_IFELSE(AC_LANG_PROGRAM(
3466 [[#if !defined(HAVE_X11_XLIB_H) || !defined(HAVE_GL_GLU_H) || !defined(HAVE_GL_GLX_H)
3470 VLC_ADD_PLUGIN([glx])
3471 VLC_ADD_LIBS([glx],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext -lGL -lGLU])
3472 VLC_ADD_CPPFLAGS([glx],[${X_CFLAGS}])
3473 ],[AC_MSG_ERROR([Please install GL development package. Alternatively you can also configure with --disable-glx.])])
3478 dnl (disabled by default except on win32)
3481 [ --enable-xvmc XvMC support (default disabled)],, [
3484 AS_IF([test "${enable_xvmc}" != "no"], [
3485 AC_CHECK_HEADERS(X11/extensions/vldXvMC.h, [
3486 VLC_ADD_PLUGIN([xvmc])
3487 VLC_ADD_LIBS([xvmc],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext -lXvMCW -lXv ${LIBMPEG2_LIBS}])
3488 VLC_ADD_CPPFLAGS([xvmc],[${X_CFLAGS} ${LIBMPEG2_CFLAGS}])
3490 AC_MSG_ERROR([XVideo-MotionCompensation extension not found!])
3494 dnl End of Xlib tests
3495 CPPFLAGS="${CPPFLAGS_save}"
3499 dnl X C Bindings modules
3502 [ --enable-xcb X11 support with XCB (default enabled)],, [
3503 AS_IF([test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"], [
3509 AC_ARG_ENABLE(xvideo,
3510 [ --enable-xvideo XVideo support (default enabled)],, [
3511 enable_xvideo="$enable_xcb"
3514 AS_IF([test "${enable_xcb}" != "no"], [
3515 PKG_CHECK_MODULES(XPROTO, [xproto])
3518 PKG_CHECK_MODULES(XCB, [xcb])
3519 PKG_CHECK_MODULES(XCB_SHM, [xcb-shm])
3520 VLC_ADD_PLUGIN([xcb])
3521 VLC_ADD_PLUGIN([xcb_screen])
3523 AS_IF([test "${enable_xvideo}" != "no"], [
3524 PKG_CHECK_MODULES(XCB_XV, [xcb-xv >= 1.1.90.1], [
3525 VLC_ADD_PLUGIN([xcb_xv])
3527 PKG_CHECK_MODULES(XCB_XV, [xcb-xv], [
3528 VLC_ADD_PLUGIN([xcb_xv])
3529 VLC_ADD_CFLAGS([xcb_xv], [-DXCB_XV_OLD])
3534 PKG_CHECK_MODULES(XCB_RANDR, [xcb-randr >= 1.3], [
3535 VLC_ADD_PLUGIN([panoramix])
3536 VLC_ADD_LIBS([panoramix],[${XCB_RANDR_LIBS} ${XCB_LIBS}])
3537 VLC_ADD_CFLAGS([panoramix],[${XCB_RANDR_CFLAGS} ${XCB_CFLAGS}])
3541 PKG_CHECK_MODULES(XCB_KEYSYMS, [xcb-keysyms])
3543 VLC_ADD_PLUGIN([xcb_window])
3544 VLC_ADD_PLUGIN([globalhotkeys])
3545 VLC_ADD_CFLAGS([globalhotkeys],[${XCB_KEYSYMS_CFLAGS} ${XCB_CFLAGS}] )
3546 VLC_ADD_LIBS([globalhotkeys],[${XCB_KEYSYMS_LIBS} ${XCB_LIBS}] )
3552 dnl (enabled by default except on beos)
3554 AC_ARG_ENABLE(opengl,
3555 [ --enable-opengl OpenGL support (default enabled)])
3556 if test "${enable_opengl}" != "no" &&
3557 test "${SYS}" != "beos" -a "${SYS}" != "mingwce"; then
3558 if test "${SYS}" != "darwin"; then
3559 AC_CHECK_HEADERS(GL/gl.h GL/glu.h, [
3560 VLC_ADD_PLUGIN([opengl])
3561 if test "${SYS}" != "mingw32"; then
3562 VLC_ADD_LIBS([opengl],[${X_LIBS} -lGL -lGLU])
3564 VLC_ADD_LIBS([opengl],[-lopengl32 -lglu32])
3568 dnl OS X special case (no GL/gl.h but OpenGL/gl.h)
3569 VLC_ADD_PLUGIN([opengl])
3570 VLC_ADD_LIBS([opengl],[-Wl,-framework,OpenGL])
3578 [ --enable-sdl SDL support (default enabled)])
3579 AC_ARG_ENABLE(sdl-image,
3580 [ --enable-sdl-image SDL image support (default enabled)])
3581 if test "${enable_sdl}" != "no"
3584 AC_ARG_WITH(sdl-config-path,
3585 [ --with-sdl-config-path=PATH sdl-config path (default search in \$PATH)],
3586 [ if test "${with_sdl_config_path}" != "no"
3588 SDL_PATH="${with_sdl_config_path}:${PATH}"
3590 AC_PATH_PROG(SDL12_CONFIG, sdl12-config, no, ${SDL_PATH})
3591 SDL_CONFIG="${SDL12_CONFIG}"
3592 SDL_HEADER="SDL12/SDL.h"
3593 SDL_IMAGE="SDL12/SDL_image.h"
3594 if test "${SDL_CONFIG}" = "no"
3596 AC_PATH_PROG(SDL11_CONFIG, sdl11-config, no, ${SDL_PATH})
3597 SDL_CONFIG=${SDL11_CONFIG}
3598 SDL_HEADER="SDL11/SDL.h"
3599 SDL_IMAGE="SDL11/SDL_image.h"
3601 if test "${SDL_CONFIG}" = "no"
3603 AC_PATH_PROG(SDL_CONFIG, sdl-config, no, ${SDL_PATH})
3604 SDL_HEADER="SDL/SDL.h"
3605 SDL_IMAGE="SDL/SDL_image.h"
3607 # check for cross-compiling
3609 AC_ARG_WITH(sdl-prefix,
3610 [ --with-sdl-prefix=PATH path to libsdl (needed for cross-compiling),
3612 --with-sdl-prefix=/usr/local/arm/2.95.3/arm-linux/usr)],[],[])
3613 if test "${with_sdl_prefix}" != "no" -a -n "${with_sdl_prefix}"
3615 SDL_PREFIX="--prefix=${with_sdl_prefix}"
3617 if test "${SDL_CONFIG}" != "no"
3619 # SDL on Darwin is heavily patched and can only run SDL_image
3620 if test "${SYS}" != "darwin" -a "${SYS}" != "mingw32"; then
3621 VLC_ADD_PLUGIN([vout_sdl])
3622 VLC_ADD_PLUGIN([aout_sdl])
3624 VLC_ADD_CFLAGS([vout_sdl aout_sdl sdl_image],[`${SDL_CONFIG} ${SDL_PREFIX} --cflags | sed 's,SDL,,'`])
3625 VLC_ADD_LIBS([vout_sdl aout_sdl sdl_image],[`${SDL_CONFIG} ${SDL_PREFIX} --libs | sed 's,-rdynamic,,'`])
3626 CPPFLAGS="${CPPFLAGS_save} ${CFLAGS_vout_sdl}"
3627 AC_CHECK_HEADERS(${SDL_HEADER}, AC_DEFINE_UNQUOTED(SDL_INCLUDE_FILE,
3628 <${SDL_HEADER}>, Indicate whether we should use SDL/SDL.h or SDL11/SDL.h),
3629 [ AC_CHECK_HEADERS(SDL.h, AC_DEFINE(SDL_INCLUDE_FILE, <SDL.h>,
3630 As a last resort we also test for SDL.h presence),
3631 [ AC_MSG_ERROR([The development package for SDL is not installed.
3632 Please install it and try again. Alternatively you can also configure with
3635 AS_IF([ test "${enable_sdl_image}" != "no"],[
3636 AC_CHECK_HEADERS(${SDL_IMAGE}, [AC_DEFINE_UNQUOTED(SDL_IMAGE_INCLUDE_FILE,
3637 <${SDL_IMAGE}>, Indicate the path of SDL_image.h)
3638 VLC_ADD_PLUGIN([sdl_image])
3639 AC_CHECK_LIB(png, png_set_rows,
3640 [VLC_ADD_LIBS([sdl_image],[-lpng -lz])],[],[-lz])
3641 AC_CHECK_LIB(jpeg, jpeg_start_decompress,
3642 [VLC_ADD_LIBS([sdl_image],[-ljpeg])])
3643 AC_CHECK_LIB(tiff, TIFFClientOpen,
3644 [VLC_ADD_LIBS([sdl_image],[-ltiff])])
3645 VLC_ADD_LIBS([sdl_image], [-lSDL_image])],
3646 [ AC_CHECK_HEADERS(SDL_image.h, AC_DEFINE(SDL_IMAGE_INCLUDE_FILE, <SDL_image.h>,
3647 As a last resort we also test for SDL_image.h presence),
3648 [ AC_MSG_WARN([The development package for SDL_image is not installed.
3649 You should install it alongside your SDL package.])
3652 CPPFLAGS="${CPPFLAGS_save}"
3653 if expr 1.1.5 \> `${SDL_CONFIG} --version` >/dev/null
3655 AC_MSG_ERROR([The development package for SDL is not installed.
3656 Please install it and try again. Alternatively you can also configure with
3660 elif test "${enable_sdl}" = "yes"
3662 AC_MSG_ERROR([I couldn't find the SDL package. You can download libSDL
3663 from http://www.libsdl.org/, or configure with --disable-sdl. Have a nice day.
3671 AC_ARG_ENABLE(freetype,
3672 [ --enable-freetype freetype support (default enabled)])
3673 AC_ARG_ENABLE(fribidi,
3674 [ --enable-fribidi fribidi support (default enabled)])
3675 AC_ARG_ENABLE(fontconfig,
3676 [ --enable-fontconfig, fontconfig support (default enabled)])
3677 if test "${enable_freetype}" != "no"
3679 PKG_CHECK_MODULES(FREETYPE, freetype2,[
3680 VLC_ADD_PLUGIN([freetype])
3682 VLC_ADD_CPPFLAGS([freetype skins2],[${FREETYPE_CFLAGS}])
3683 if test "${SYS}" = "mingw32"; then
3684 VLC_ADD_LIBS([freetype],[-liconv -lz])
3686 VLC_ADD_LIBS([freetype skins2],[${FREETYPE_LIBS}])
3687 if test "${enable_fontconfig}" != "no"
3689 AC_CHECK_HEADERS(fontconfig/fontconfig.h,
3690 [VLC_ADD_CPPFLAGS([freetype],[-DHAVE_FONTCONFIG])
3691 VLC_ADD_LIBS([freetype],[-lfontconfig])])
3692 AC_CHECK_HEADERS(Carbon/Carbon.h,
3693 [VLC_ADD_LDFLAGS([freetype],[-Wl,-framework,Carbon])])
3697 if test "${enable_fribidi}" != "no"
3699 PKG_CHECK_MODULES(FRIBIDI, fribidi, [
3700 VLC_ADD_CPPFLAGS([freetype skins2], [${FRIBIDI_CFLAGS} -DHAVE_FRIBIDI])
3701 VLC_ADD_LIBS([freetype skins2], [${FRIBIDI_LIBS}])
3707 AS_IF([ test "${enable_freetype}" = "yes"],[
3708 AC_MSG_ERROR([I couldn't find the freetype package. You can download libfreetype2
3709 from http://www.freetype.org/, or configure with --disable-freetype. Have a nice day.
3719 PKG_ENABLE_MODULES_VLC([libxml2], [], [libxml-2.0 >= 2.5], [libxml2 support],[auto])
3724 PKG_ENABLE_MODULES_VLC([SVG], [], [librsvg-2.0 >= 2.9.0], [SVG rendering library],[auto])
3727 dnl Snapshot vout module (with cache)
3729 AC_ARG_ENABLE(snapshot,
3730 [ --enable-snapshot snapshot module (default disabled)])
3731 if test "${enable_snapshot}" = "yes"
3733 VLC_ADD_PLUGIN([snapshot])
3737 dnl Qt Embedded module
3738 dnl (disabled by default)
3741 [ --enable-qte QT Embedded support (default disabled)])
3742 if test "${enable_qte}" = "yes"
3745 [ --with-qte=PATH Qt Embedded headers and libraries])
3746 if test "${with_qte}" != "no" -a -n "${with_qte}"
3748 VLC_ADD_LIBS([qte],[-L${with_qte}/lib `echo -L${with_qte}/lib | sed 's,opt/QtPalmtop,usr,'` -ljpeg -lqte])
3749 VLC_ADD_CXXFLAGS([qte],[-I${with_qte}/include `echo -I${with_qte}/include | sed 's,opt/QtPalmtop,usr,'` -DQT_QWS_IPAQ -DQWS -fno-exceptions -fno-rtti])
3751 VLC_ADD_LIBS([qte],[-L${QTDIR}/lib `echo -L${QTDIR}/lib | sed 's,opt/QtPalmtop,usr,'` -ljpeg -lqte])
3752 VLC_ADD_CXXFLAGS([qte],[-I${QTDIR}/include `echo -I${QTDIR}/include | sed 's,opt/QtPalmtop,usr,'` -DQT_QWS_IPAQ -DQWS -fno-exceptions -fno-rtti])
3754 VLC_ADD_PLUGIN([qte])
3756 CPPFLAGS="${CPPFLAGS_save} ${CXXFLAGS_qte}"
3757 AC_CHECK_HEADERS(qt.h jpeglib.h, ,[
3758 AC_MSG_ERROR([echo "Cannot find QT Embedded development headers."])
3760 CPPFLAGS="${CPPFLAGS_save}"
3764 dnl Roku HD1000 Video output module
3766 AC_ARG_ENABLE(hd1000v,
3767 [ --enable-hd1000v HD1000 Video Output module (default enabled on HD1000)])
3768 if test "${enable_hd1000v}" != "no" -a "${CXX}" != "" &&
3769 (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
3770 test "${enable_hd1000v}" = "yes"); then
3772 AC_CHECK_HEADERS([cascade/graphics/CascadeScreen.h cascade/graphics/CascadeBitmap.h],
3774 can_build_roku="yes"
3778 AC_MSG_WARN([Not building Roku HD1000 compatible video output])
3780 if test "$can_build_roku" = "yes"
3782 VLC_ADD_PLUGIN([hd1000v])
3783 VLC_ADD_LIBS([hd1000v],[-lCascade -ldvbpsi -lmad])
3789 dnl Windows DirectX module
3792 if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce" -o "${SYS}" = "cygwin"
3794 VLC_ADD_PLUGIN([panoramix])
3797 AC_ARG_ENABLE(directx,
3798 [ --enable-directx Win32 DirectX support (default enabled on Win32)])
3799 if test "${enable_directx}" != "no"
3801 if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce" -o "${SYS}" = "cygwin"
3803 AC_ARG_WITH(directx,
3804 [ --with-directx=PATH Win32 DirectX headers])
3805 if test -z "${with_directx}"
3807 AC_CHECK_HEADERS(ddraw.h,
3808 [ VLC_ADD_PLUGIN([directx])
3809 VLC_ADD_PLUGIN([aout_directx])
3810 VLC_ADD_LIBS([directx],[-lgdi32])
3812 AC_CHECK_HEADERS(GL/gl.h,
3813 [ VLC_ADD_PLUGIN([glwin32])
3814 VLC_ADD_LIBS([glwin32],[-lopengl32 -lgdi32])
3816 AC_CHECK_HEADERS(d3d9.h,
3817 [ VLC_ADD_PLUGIN([direct3d])
3818 VLC_ADD_LIBS([direct3d],[-lgdi32])
3821 AC_MSG_CHECKING(for directX headers in ${with_directx})
3822 if test -f ${with_directx}/ddraw.h
3824 VLC_ADD_PLUGIN([directx])
3825 VLC_ADD_PLUGIN([aout_directx])
3826 VLC_ADD_CPPFLAGS([directx aout_directx],[-I${with_directx}])
3827 VLC_ADD_LIBS([directx],[-lgdi32])
3831 AC_MSG_ERROR([Cannot find ${with_directx}/ddraw.h!])
3838 dnl Linux framebuffer module
3841 [ --enable-fb Linux framebuffer support (default enabled on Linux)])
3842 if test "${enable_fb}" != "no"
3844 AC_CHECK_HEADERS(linux/fb.h, [
3845 VLC_ADD_PLUGIN([fb])
3850 dnl Linux MGA module
3853 [ --enable-mga Linux kernel Matrox support (default disabled)],
3854 [ if test "${enable_mga}" = "yes"
3856 VLC_ADD_PLUGIN([mga])
3860 dnl OMAP Framebuffer module
3862 AC_ARG_ENABLE(omapfb,
3863 [ --enable-omapfb OMAP framebuffer support (default disabled)])
3864 if test "${enable_omapfb}" = "yes"
3866 AC_CHECK_HEADERS(asm/arch-omap/omapfb.h, [
3867 VLC_ADD_PLUGIN([omapfb])
3868 AC_CHECK_HEADERS(X11/Xlib.h, [
3869 VLC_ADD_LIBS([omapfb],[${X_LIBS} ${X_PRE_LIBS} -lX11]) ])
3876 AC_ARG_ENABLE(svgalib,
3877 [ --enable-svgalib SVGAlib support (default disabled)])
3878 if test "${enable_svgalib}" = "yes"
3880 VLC_ADD_PLUGIN([svgalib])
3881 VLC_ADD_LIBS([svgalib],[-lvgagl -lvga])
3886 dnl try to find using: 1 - given location; 2 - directfb-config; 3 - pkg-config
3887 dnl TODO: support for static linking
3889 AC_ARG_ENABLE(directfb,
3890 [ --enable-directfb DirectFB support (default disabled)])
3891 AC_ARG_WITH(directfb,
3892 [ --with-directfb=PATH path to DirectFB headers and libraries])
3894 if test "${enable_directfb}" = "yes"; then
3895 have_directfb="false"
3896 CPPFLAGS_mydirectfb=
3898 if test "${with_directfb}" != "no" -a -n "${with_directfb}"; then
3899 dnl Trying the given location
3900 CPPFLAGS_save="${CPPFLAGS}"
3903 CPPFLAGS_new="-I${with_directfb}/include -D_REENTRANT -D_GNU_SOURCE"
3904 LIBS_new="-L${with_directfb}/lib/fusion/.libs/ -L${with_directfb}/lib/direct/.libs/"
3905 LIBS_new="${LIBS_new} -L${with_directfb}/src/.libs/"
3907 CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_new}"
3908 LIBS="${LIBS} ${LIBS_new}"
3910 dnl FIXME: too obscure
3911 AC_CHECK_HEADER([directfb.h], [
3912 AC_CHECK_LIB([direct],[direct_initialize], [
3913 AC_CHECK_LIB([fusion], [fusion_enter], [
3914 AC_CHECK_LIB([directfb], [DirectFBInit], have_directfb="true", have_directfb="false")
3915 ], have_directfb="false")
3916 ], have_directfb="false")
3917 ], have_directfb="false")
3920 CPPFLAGS="${CPPFLAGS_save}"
3923 if test "${have_directfb}" = "true"; then
3924 LIBS_mydirectfb="${LIBS_new} -lz -ldl -ldirectfb -lfusion -ldirect -lpthread"
3925 CPPFLAGS_mydirectfb="${CPPFLAGS_new}"
3928 dnl Look for directfb-config
3929 AC_PATH_PROG(DIRECTFB_CONFIG, directfb-config, no, ${PATH})
3930 if test "${DIRECTFB_CONFIG}" != "no"; then
3931 CPPFLAGS_mydirectfb="`${DIRECTFB_CONFIG} --cflags`"
3932 LIBS_mydirectfb="`${DIRECTFB_CONFIG} --libs`"
3933 have_directfb="true"
3935 dnl Trying with pkg-config
3936 PKG_CHECK_MODULES(DIRECTFB, directfb, [
3937 CPPFLAGS_mydirectfb="${DIRECTFB_CFLAGS}"
3938 LIBS_mydirectfb="${DIRECTFB_LIBS}"
3939 have_directfb="true"
3940 ], [have_directfb="false"])
3943 if test "${have_directfb}" = "true"; then
3944 VLC_ADD_PLUGIN([directfb])
3945 VLC_ADD_CPPFLAGS([directfb],[${CPPFLAGS_mydirectfb}])
3946 VLC_ADD_LIBS([directfb],[${LIBS_mydirectfb}])
3948 AC_MSG_ERROR([cannot find directfb headers and/or libraries ])
3958 [ --enable-ggi GGI support (default disabled)])
3959 if test "${enable_ggi}" = "yes"
3961 AC_CHECK_HEADER([ggi/ggi.h],[
3962 VLC_ADD_PLUGIN([ggi])
3963 VLC_ADD_LIBS([ggi],[-lggi])
3965 [ --with-ggi=PATH path to libggi],
3966 [ if test "${with_ggi}" != "no" -a -n "${with_ggi}"
3968 VLC_ADD_CPPFLAGS([ggi],[-I${with_ggi}/include])
3969 VLC_ADD_LIBS([ggi],[-L${with_ggi}/lib])
3972 AC_MSG_ERROR([LibGGI development files can't be found])
3980 [ --enable-aa aalib output (default disabled)])
3981 if test "${enable_aa}" = "yes"
3983 AC_CHECK_HEADER(aalib.h,have_aa="true",have_aa="false")
3984 if test "${have_aa}" = "true"
3986 VLC_ADD_PLUGIN([aa])
3987 VLC_ADD_LIBS([aa],[-laa])
3994 PKG_ENABLE_MODULES_VLC([caca], [], [caca >= 0.99.beta1], [libcaca output],[auto])
3997 dnl win32 GDI plugin
3999 AC_ARG_ENABLE(wingdi,
4000 [ --enable-wingdi Win32 GDI module (default enabled on Win32)])
4001 if test "${enable_wingdi}" != "no"; then
4002 if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"; then
4003 VLC_ADD_PLUGIN([wingdi])
4004 VLC_ADD_LIBS([wingdi],[-lgdi32])
4006 if test "${SYS}" = "mingwce"; then
4007 VLC_ADD_PLUGIN([wingdi])
4008 VLC_ADD_PLUGIN([wingapi])
4009 VLC_ADD_LIBS([wingdi],[-laygshell])
4010 VLC_ADD_LIBS([wingapi],[-laygshell])
4018 AC_ARG_WITH(,[Audio plugins:])
4021 dnl OSS /dev/dsp module (enabled by default except on win32)
4024 [ --enable-oss Linux OSS /dev/dsp support (enabled on Linux)])
4026 if test "${enable_oss}" != "no" &&
4027 (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
4028 test "${enable_oss}" = "yes")
4030 AC_CHECK_HEADERS([soundcard.h sys/soundcard.h], [
4031 VLC_ADD_PLUGIN([oss])
4032 VLC_ADD_PLUGIN([access_oss])
4033 AC_CHECK_LIB(ossaudio,main,[VLC_ADD_LIBS([oss],[-lossaudio])])
4038 dnl Pulseaudio module
4040 PKG_ENABLE_MODULES_VLC([PULSE], [], [libpulse >= 0.9.11], [Pulseaudio support], [auto])
4043 dnl Portaudio module
4045 PKG_ENABLE_MODULES_VLC([PORTAUDIO], [], [portaudio-2.0], [Portaudio library support], [auto])
4050 PKG_ENABLE_MODULES_VLC([ALSA], [], [alsa >= 1.0.0], [Alsa sound support for linux], [auto])
4053 dnl win32 waveOut plugin
4055 AC_ARG_ENABLE(waveout,
4056 [ --enable-waveout Win32 waveOut module (default enabled on Win32)])
4057 if test "${enable_waveout}" != "no"; then
4058 if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"; then
4059 VLC_ADD_PLUGIN([waveout])
4060 VLC_ADD_LIBS([waveout],[-lwinmm])
4062 if test "${SYS}" = "mingwce"; then
4063 VLC_ADD_PLUGIN([waveout])
4068 dnl CoreAudio plugin
4070 AC_ARG_ENABLE(macosx-audio,
4071 [ --enable-macosx-audio Mac OS X audio module (default enabled on MacOS X)])
4072 if test "${enable_macosx-audio}" != "no" &&
4073 (test "${SYS}" = "darwin" || test "${enable_macosx-audio}" = "yes")
4075 AC_CHECK_HEADERS(CoreAudio/CoreAudio.h,
4076 [ VLC_ADD_PLUGIN([auhal])
4077 VLC_ADD_LDFLAGS([auhal],[-Wl,-framework,CoreAudio,-framework,AudioUnit,-framework,AudioToolbox,-framework,Carbon])
4078 ], [ AC_MSG_ERROR([cannot find CoreAudio headers]) ])
4082 dnl Roku HD1000 audio
4084 AC_ARG_ENABLE(hd1000a,
4085 [ --enable-hd1000a HD1000 audio module (default enabled on HD1000)])
4086 if test "${enable_hd1000a}" != "no" -a "${CXX}" != "" &&
4087 (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
4088 test "${enable_hd1000a}" = "yes")
4091 AC_CHECK_HEADERS(deschutes/libraries/hdmachinex225/PCMAudioPlayer.h, [
4092 VLC_ADD_PLUGIN([hd1000a])
4093 AC_CHECK_LIB(HDMachineX225,main,VLC_ADD_LIBS([hd1000a],[-lHDMachineX225])) ])
4100 PKG_ENABLE_MODULES_VLC([JACK], [jack], [jack], [JACK audio I/O modules],[auto])
4101 PKG_ENABLE_MODULES_VLC([JACK], [access_jack], [jack], [JACK audio I/O modules],[auto])
4105 dnl CyberLink for C++ UPnP stack
4107 AC_ARG_ENABLE(cyberlink,
4108 [ --enable-cyberlink CyberLink for C++ UPnP stack (default disabled)])
4109 AS_IF([test "${enable_cyberlink}" = "yes" ], [
4110 AC_ARG_WITH(cyberlink-tree,
4111 [ --with-cyberlink-tree=PATH CyberLink for C++ tree for static linking])
4114 dnl test for --with-cyberlink-tree
4116 AS_IF([test ! -z "${with_cyberlink_tree}" -a "${CXX}" != ""], [
4118 real_cyberlink_tree="`cd ${with_cyberlink_tree} 2>/dev/null && pwd`"
4119 AS_IF([test -z "${real_cyberlink_tree}"], [
4120 dnl The given directory can't be found
4122 AC_MSG_ERROR([cannot cd to ${with_cyberlink_tree}])
4124 CPPFLAGS_save="${CPPFLAGS}"
4125 CPPFLAGS_cyberlink="-I${real_cyberlink_tree}/include"
4126 CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_cyberlink}"
4127 AC_CHECK_HEADERS([cybergarage/upnp/MediaServer.h],
4128 [ VLC_ADD_CXXFLAGS([upnp_cc], [${CPPFLAGS_cyberlink}])
4129 VLC_ADD_PLUGIN([upnp_cc])
4131 AC_MSG_ERROR([cannot find CyberLink for C++ headers])
4133 AC_MSG_CHECKING(for libclink.a in ${with_cyberlink_tree})
4134 AS_IF([test -f "${real_cyberlink_tree}/lib/unix/libclink.a"], [
4135 AC_MSG_RESULT(${real_cyberlink_tree}/lib/unix/libclink.a)
4136 dnl The mere fact that we have to make such an ugly check sucks
4137 AC_MSG_CHECKING(for XML parser to link CyberLink with)
4140 for l in "`xml2-config --libs`" -lexpat -lxerces-c; do
4141 LIBS="$LIBS_save ${real_cyberlink_tree}/lib/unix/libclink.a -lpthread $l"
4142 AC_LINK_IFELSE([AC_LANG_PROGRAM([
4143 #include <cybergarage/upnp/media/player/MediaPlayer.h>
4144 using namespace CyberLink;
4146 class testclass : public SearchResponseListener, public MediaPlayer
4148 virtual void deviceSearchResponseReceived( SSDPPacket *)
4155 addSearchResponseListener (this);
4159 ],[testclass l;])],[LIBS_cclink="$l"])
4162 dnl should not happen - otherwise this needs fixing - hence FAILURE
4163 AS_IF([test "${LIBS_cclink}" = "no"],
4164 [AC_MSG_FAILURE([cannot find XML parser for CyberLink])])
4165 AC_MSG_RESULT([${LIBS_cclink}])
4166 VLC_ADD_LIBS([upnp_cc], [${real_cyberlink_tree}/lib/unix/libclink.a -lpthread ${LIBS_cclink}])
4169 AC_MSG_ERROR([cannot find ${real_cyberlink_tree}/lib/unix/libclink.a, make sure you compiled CyberLink for C++ in ${with_cyberlink_tree}])
4171 CPPFLAGS="${CPPFLAGS_save}"
4177 dnl UPnP Plugin (Intel SDK)
4179 PKG_ENABLE_MODULES_VLC([UPNP], [upnp_intel], [libupnp], [Intel UPnp SDK],[auto])
4183 dnl Interface plugins
4186 AC_ARG_WITH(,[Interface plugins:])
4188 dnl special case for BeOS
4189 if test "${SYS}" = "beos"
4191 VLC_ADD_PLUGIN([beos])
4197 AC_ARG_ENABLE(skins2,
4198 [AS_HELP_STRING([--enable-skins2],[Skins2 interface module (default
4199 enabled except on MacOSX, BeOS and WinCE)])])
4200 if test "${enable_skins2}" = "yes" ||
4201 (test "${SYS}" != "darwin" && test "${SYS}" != "beos" &&
4202 test "${SYS}" != "mingwce" && test "${enable_skins2}" != "no"); then
4204 dnl test for the required libraries
4205 skins2_missing_lib="no"
4208 if test "${have_freetype}" != "yes"; then
4209 skins2_missing_lib="yes"
4210 if test "${enable_skins2}" = "yes"; then
4211 AC_MSG_ERROR([Could not find freetype (required for skins2)])
4215 if test "${skins2_missing_lib}" = "no" && (test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"); then
4216 VLC_ADD_PLUGIN([skins2])
4217 ALIASES="${ALIASES} svlc"
4218 VLC_ADD_CPPFLAGS([skins2],[-U_OFF_T_ -U_off_t -Imodules/gui/skins2 -DWIN32_SKINS])
4219 VLC_ADD_CXXFLAGS([skins2],[-O2 -fno-rtti])
4220 VLC_ADD_LIBS([skins2],[-loleaut32 -lwinspool -lwinmm -lshell32 -lctl3d32 -ladvapi32 -lwsock32 -lgdi32 -lcomdlg32 -lole32 -luuid -lcomctl32])
4222 else if test "${skins2_missing_lib}" = "no" && (test "${SYS}" = "darwin"); then
4223 VLC_ADD_PLUGIN([skins2])
4224 ALIASES="${ALIASES} svlc"
4225 VLC_ADD_CPPFLAGS([skins2],[-Imodules/gui/skins2 -DMACOSX_SKINS])
4226 VLC_ADD_CXXFLAGS([skins2],[-O2 -fno-rtti])
4227 VLC_ADD_LDFLAGS([skins2],[-Wl,-framework,Carbon])
4229 else if test "${skins2_missing_lib}" = "no"; then
4230 VLC_ADD_PLUGIN([skins2])
4231 ALIASES="${ALIASES} svlc"
4232 VLC_ADD_CPPFLAGS([skins2],[-Imodules/gui/skins2 ${X_CFLAGS} -DX11_SKINS])
4233 VLC_ADD_CXXFLAGS([skins2],[-O2 -fno-rtti])
4234 VLC_ADD_LIBS([skins2],[${X_LIBS} ${X_PRE_LIBS} -lXext -lX11])
4237 AM_CONDITIONAL(BUILD_SKINS, [test "${enable_skins2}" = "yes" ||
4238 (test "${SYS}" != "darwin" && test "${SYS}" != "beos" &&
4239 test "${SYS}" != "mingwce" && test "${enable_skins2}" != "no")])
4242 dnl PDA Gtk+2 module
4245 [ --enable-pda PDA interface needs Gtk2 support (default disabled)])
4246 if test "${enable_pda}" = "yes"
4248 PKG_CHECK_MODULES(GTK2, [gtk+-2.0 >= 2.0.0, gthread-2.0])
4249 VLC_ADD_CFLAGS([gtk2],[${GTK2_CFLAGS}])
4250 VLC_ADD_LIBS([gtk2],[${GTK2_LIBS}])
4251 VLC_ADD_CFLAGS([pda],[${GTK2_CFLAGS} ${CFLAGS_pda}])
4252 VLC_ADD_LIBS([pda],[${LDFLAGS_pda}])
4253 VLC_ADD_LIBS([pda],[${GTK2_LIBS}])
4254 VLC_ADD_PLUGIN([pda])
4255 if test "${SYS}" != "mingw32"; then
4257 VLC_ADD_CFLAGS([gtk2_main],[$GTK2_CFLAGS])
4258 VLC_ADD_LIBS([gtk2_main],[$GTK2_LIBS])
4261 AM_CONDITIONAL(BUILD_PDA, [test "${enable_pda}" = "yes"])
4266 AC_ARG_ENABLE(maemo,
4267 [ --enable-maemo Internet tablets based on Maemo SDK (default disabled)])
4268 if test "${enable_maemo}" = "yes"
4270 PKG_CHECK_MODULES(HILDON, [hildon-1 hildon-fm-2], [
4271 VLC_ADD_CFLAGS([maemo],[${HILDON_CFLAGS}])
4272 VLC_ADD_LIBS([maemo],[${HILDON_LIBS}])
4273 VLC_ADD_PLUGIN([maemo])
4274 VLC_ADD_PLUGIN([swscale_maemo])
4275 AC_DEFINE([BUILD_MAEMO], 1, [Define if you are using Maemo interfaces])
4276 ALIASES="${ALIASES} mvlc"
4278 AS_IF([test "${enable_maemo}" = "yes"],[
4279 AC_MSG_ERROR([Hildon libraries not found])
4284 AM_CONDITIONAL(BUILD_MAEMO, [test "${enable_maemo}" = "yes"])
4290 [ --enable-qt4 QT 4 support (default enabled) ],, [
4291 AS_IF([test "${SYS}" = "darwin"], [enable_qt4=no])
4293 AS_IF([test "${enable_qt4}" != "no"], [
4294 PKG_CHECK_MODULES(QT4, [QtCore QtGui >= 4.4.0], [
4295 VLC_ADD_PLUGIN([qt4])
4296 AC_DEFINE([HAVE_QT4], 1, [Define to 1 if you have QT4 library.])
4297 ALIASES="${ALIASES} qvlc"
4298 AS_IF([test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" -a "${SYS}" != "cygwin" -a "${SYS}" != "darwin"], [
4299 VLC_ADD_LIBS([qt4],[$QT4_LIBS -lX11])
4301 VLC_ADD_LIBS([qt4],[$QT4_LIBS -lole32])
4303 QT4LOCALEDIR="$($PKG_CONFIG --variable=prefix QtCore)/share/qt4/translations/"
4304 AC_SUBST(QT4LOCALEDIR)
4305 VLC_ADD_CXXFLAGS([qt4],[$QT4_CFLAGS -DQT4LOCALEDIR=\\\\\\\"${QT4LOCALEDIR}\\\\\\\"])
4306 AC_PATH_PROGS(MOC, [moc-qt4 moc], moc,`$PKG_CONFIG --variable=exec_prefix QtCore`/bin)
4307 AC_PATH_PROG(RCC, rcc, rcc,`$PKG_CONFIG --variable=exec_prefix QtCore`/bin)
4308 AC_PATH_PROGS(UIC, [uic-qt4 uic], uic,`$PKG_CONFIG --variable=exec_prefix QtCore`/bin)
4310 AS_IF([test "${enable_qt4}" = "yes"],[
4311 AC_MSG_ERROR([Qt 4 library not found])
4313 AC_MSG_WARN([Qt 4 library not found])
4318 AM_CONDITIONAL(ENABLE_QT4, [test "x$enable_qt4" != "xno"])
4321 dnl WinCE GUI module
4323 AC_ARG_ENABLE(wince,
4324 [ --enable-wince Windows CE interface (default enabled with MinGW)])
4325 if test "${enable_wince}" != "no"; then
4326 if test "${SYS}" = "mingwce"; then
4327 VLC_ADD_PLUGIN([wince])
4328 VLC_ADD_CXXFLAGS([wince],[])
4329 VLC_ADD_LIBS([wince],[-lcommctrl -lcommdlg -laygshell])
4331 VLC_ADD_LIBS([wince],[\\\${top_builddir}modules/gui/wince/wince_rc.o])
4332 elif test "${SYS}" = "mingw32"; then
4333 VLC_ADD_CXXFLAGS([wince],[])
4334 VLC_ADD_LIBS([wince],[-lcomctl32 -lcomdlg32 -lgdi32 -lole32])
4336 VLC_ADD_LIBS([wince],[\\\${top_builddir}modules/gui/wince/wince_rc.o])
4341 dnl Simple test for skins2 dependency
4343 AS_IF([test "${enable_skins2}" != "no" && test "x$enable_qt4" = "xno"], [
4344 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.])
4348 dnl Opie QT embedded module
4351 [ --enable-opie Qt embedded interface support (default disabled)],
4352 [if test "${enable_opie}" = "yes"; then
4354 [ --with-qte=PATH Qt Embedded headers and libraries])
4355 if test "${with_qte}" != "no" -a -n "${with_qte}"
4357 VLC_ADD_LIBS([qte],[-L${with_qte}/lib `echo -L${with_qte}/lib | sed 's,opt/QtPalmtop,usr,'` -ljpeg -lqte])
4358 VLC_ADD_CXXFLAGS([qte],[-I${with_qte}/include `echo -I${with_qte}/include | sed 's,opt/QtPalmtop,usr,'` -DQT_QWS_IPAQ -DQWS -fno-exceptions -fno-rtti])
4360 VLC_ADD_LIBS([qte],[-L${QTDIR}/lib `echo -L${QTDIR}/lib | sed 's,opt/QtPalmtop,usr,'`])
4361 VLC_ADD_CXXFLAGS([qte],[-I${QTDIR}/include `echo -I${QTDIR}/include | sed 's,opt/QtPalmtop,usr,'`])
4363 CPPFLAGS="${CPPFLAGS_save} ${CXXFLAGS_qte}"
4364 AC_CHECK_HEADERS(qt.h jpeglib.h, ,[
4365 AC_MSG_ERROR([echo "Cannot find QT Embedded development headers."])
4367 CPPFLAGS="${CPPFLAGS_save}"
4369 VLC_ADD_PLUGIN([opie])
4371 VLC_ADD_LIBS([opie],[-lqpe ${LDFLAGS_qte}])
4372 VLC_ADD_CXXFLAGS([opie],[${CXXFLAGS_qte}])
4373 if test "${with_qte}" != "no" -a -n "${with_qte}"
4375 MOC=${with_qte}/bin/moc
4377 MOC=${QTDIR}/bin/moc
4382 dnl MacOS X video output/gui modules
4384 AC_ARG_ENABLE(macosx,
4385 [ --enable-macosx MacOS X support (default enabled on MacOS X)])
4386 if test "x${enable_macosx}" = "xyes"
4388 VLC_ADD_LDFLAGS([access_eyetv], [-Wl,-framework,Foundation])
4389 VLC_ADD_LDFLAGS([macosx minimal_macosx opengllayer qtcapture],[-Wl,-framework,Cocoa])
4390 VLC_ADD_LDFLAGS([macosx minimal_macosx opengllayer],[-Wl,-framework,OpenGL])
4391 VLC_ADD_LDFLAGS([macosx minimal_macosx], [-Wl,-framework,Carbon])
4392 VLC_ADD_LDFLAGS([macosx minimal_macosx], [-Wl,-framework,CoreServices])
4393 VLC_ADD_LDFLAGS([macosx minimal_macosx], [-Wl,-framework,AGL])
4394 VLC_ADD_LDFLAGS([macosx], [-Wl,-framework,IOKit])
4395 VLC_ADD_LDFLAGS([macosx], [-F\\\${top_srcdir}/extras/contrib/Sparkle -Wl,-framework,Sparkle])
4396 VLC_ADD_OBJCFLAGS([macosx], [-F\\\${top_srcdir}/extras/contrib/Sparkle])
4398 VLC_ADD_LDFLAGS([macosx], [-Wl,-framework,AddressBook])
4399 VLC_ADD_LDFLAGS([macosx qtcapture], [-Wl,-framework,QTKit])
4400 VLC_ADD_LDFLAGS([qtcapture], [-Wl,-framework,CoreAudio])
4401 VLC_ADD_LDFLAGS([macosx], [-Wl,-framework,WebKit])
4402 VLC_ADD_LDFLAGS([opengllayer qtcapture], [-Wl,-framework,QuartzCore])
4403 VLC_ADD_LDFLAGS([qtcapture], [-Wl,-framework,CoreVideo])
4404 VLC_ADD_OBJCFLAGS([macosx minimal_macosx opengllayer growl opengllayer], [-fobjc-exceptions] )
4406 VLC_ADD_PLUGIN([access_eyetv])
4407 VLC_ADD_PLUGIN([qtcapture])
4408 VLC_ADD_PLUGIN([macosx])
4409 VLC_ADD_PLUGIN([minimal_macosx])
4410 VLC_ADD_PLUGIN([opengllayer])
4417 [ --enable-qnx QNX RTOS support (default enabled on QNX RTOS)])
4418 if test "${enable_qnx}" != "no"
4420 AC_CHECK_HEADERS(Ph.h, [
4421 VLC_ADD_PLUGIN([qnx])
4422 VLC_ADD_LIBS([qnx],[-lasound -lph])
4429 AC_ARG_ENABLE(ncurses,
4430 [ --disable-ncurses ncurses interface support (default enabled)],
4431 [if test "${enable_ncurses}" != "no"; then
4432 AC_CHECK_HEADER(ncurses.h,
4433 [AC_CHECK_LIB(ncursesw, mvprintw,
4434 [VLC_ADD_PLUGIN([ncurses])
4435 VLC_ADD_LIBS([ncurses],[-lncursesw])
4436 ALIASES="${ALIASES} nvlc"
4437 AC_DEFINE([HAVE_NCURSESW], 1, [Define to 1 if you have libncursesw.])
4438 AC_CHECK_LIB(ncursesw, tgetent, [],
4439 AC_CHECK_LIB(tinfow, tgetent, [VLC_ADD_LIBS([ncurses],[-ltinfow])],
4440 [AC_CHECK_LIB(tinfo, tgetent, [VLC_ADD_LIBS([ncurses],[-ltinfo])],
4441 [AS_IF([test "x${enable_ncurses}" != "x"],
4442 [AC_MSG_ERROR([tgetent not found in ncursesw tinfow tinfo]
4448 [AC_CHECK_LIB( ncurses, mvprintw,
4449 [VLC_ADD_PLUGIN([ncurses])
4450 ALIASES="${ALIASES} nvlc"
4451 VLC_ADD_LIBS([ncurses],[-lncurses])
4452 AC_CHECK_LIB(ncurses, tgetent, [],
4453 [AC_CHECK_LIB(tinfo, tgetent, [VLC_ADD_LIBS([ncurses],[-ltinfo])],
4454 [AS_IF([test "x${enable_ncurses}" != "x"],
4455 [AC_MSG_ERROR([tgetent not found in ncurses tinfo])])]
4458 [AS_IF([test "x${enable_ncurses}" != "x"], [
4459 AC_MSG_ERROR([libncurses not found])])]
4470 [ --enable-xosd xosd interface support (default disabled)])
4471 if test "${enable_xosd}" = "yes"
4473 AC_CHECK_HEADERS(xosd.h,
4474 AC_CHECK_LIB(xosd, xosd_set_horizontal_offset, [
4475 VLC_ADD_PLUGIN([xosd])
4476 VLC_ADD_LIBS([xosd],[-lxosd])
4482 dnl Framebuffer (overlay) plugin
4484 AC_ARG_ENABLE(fbosd,
4485 [ --enable-fbosd fbosd interface support (default disabled)])
4486 if test "${enable_fbosd}" = "yes"
4488 AC_CHECK_HEADERS(linux/fb.h, [
4489 VLC_ADD_PLUGIN([fbosd])
4494 dnl Visualisation plugin
4496 AC_ARG_ENABLE(visual,
4497 [ --enable-visual visualisation plugin (default enabled)])
4498 if test "${enable_visual}" != "no"
4500 VLC_ADD_PLUGIN([visual])
4504 dnl goom visualization plugin
4506 PKG_ENABLE_MODULES_VLC([goom], [], [libgoom2], [goom visualization plugin], [auto])
4509 dnl libprojectM visualization plugin
4511 PKG_ENABLE_MODULES_VLC([projectm], [], [libprojectM], [projectM visualization plugin], [auto])
4514 dnl AtmoLight (homebrew AmbiLight)
4516 if test "${SYS}" = "mingw32" -o "${SYS}" = "linux"; then
4518 AS_HELP_STRING([--disable-atmo],[AtmoLight (homebrew philips ambilight)
4519 (default enabled)]))
4520 if test "${enable_atmo}" != "no"; then
4522 VLC_ADD_PLUGIN([atmo])
4528 dnl Bonjour services discovery
4529 PKG_ENABLE_MODULES_VLC([BONJOUR], [], [avahi-client >= 0.6], [Bonjour services discovery], [auto])
4532 dnl HAL services discovery
4533 PKG_ENABLE_MODULES_VLC([HAL], [], [hal >= 0.5.0], [Linux HAL services discovery], [auto])
4536 dnl MTP devices services discovery
4537 PKG_ENABLE_MODULES_VLC([MTP], [], [libmtp >= 0.3.0],[MTP devices support],[auto])
4543 [ --enable-lirc lirc support (default disabled)])
4544 if test "${enable_lirc}" = "yes"
4546 AC_CHECK_HEADER(lirc/lirc_client.h, AC_CHECK_LIB(lirc_client, lirc_init, have_lirc="true", have_lirc="false"),have_lirc="false")
4547 if test "${have_lirc}" = "true"
4549 VLC_ADD_PLUGIN([lirc])
4550 VLC_ADD_LIBS([lirc],[-llirc_client])
4555 AC_ARG_WITH(,[Misc options:])
4560 AC_ARG_ENABLE(libgcrypt,
4561 [ --disable-libgcrypt libgcrypts support (default enabled)])
4562 AS_IF([test "${enable_libgcrypt}" != "no"], [
4563 AM_PATH_LIBGCRYPT([1:1.1.94], [have_libgcrypt="yes"], [have_libgcrypt="no"])
4565 if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"; then
4566 AS_IF([test "${have_libgcrypt}" = "yes"],[
4567 VLC_ADD_LIBS([rtp stream_out_rtp], [${LIBGCRYPT_LIBS}])
4570 AM_CONDITIONAL([HAVE_LIBGCRYPT], [test "${have_libgcrypt}" = "yes"])
4575 AC_ARG_ENABLE(gnutls,
4576 [ --enable-gnutls gnutls TLS/SSL support (default enabled)])
4578 AS_IF([test "${enable_gnutls}" != "no"], [
4579 PKG_CHECK_MODULES(GNUTLS, [gnutls >= 1.7.4], [
4580 VLC_ADD_PLUGIN([gnutls])
4581 VLC_ADD_CFLAGS([gnutls], [$GNUTLS_CFLAGS])
4582 AS_IF([test "${SYS}" = "mingw32"], [
4583 dnl pkg-config --libs gnutls omits these
4584 VLC_ADD_LIBS([gnutls], [-lz])
4585 VLC_ADD_LIBS([gnutls], [${LTLIBINTL}])
4587 dnl The GnuTLS plugin invokes gcry_control directly.
4588 AS_IF([test "${have_libgcrypt}" = "yes"],[
4589 VLC_ADD_LIBS([gnutls], [${LIBGCRYPT_LIBS}])
4590 VLC_ADD_CFLAGS([gnutls], [${LIBGCRYPT_CFLAGS}])
4592 VLC_ADD_LIBS([gnutls], [$GNUTLS_LIBS])
4594 AS_IF([test "${enable_gnutls}" = "yes"], [
4595 AC_MSG_ERROR([gnutls not present or too old (version 1.2.9 required)])
4602 dnl RemoteOSD plugin (VNC client as video filter)
4604 AC_ARG_ENABLE(remoteosd,
4605 [ --disable-remoteosd RemoteOSD plugin (default enabled)])
4607 AS_IF([test "${enable_remoteosd}" != "no"], [
4608 AS_IF([test "${have_libgcrypt}" = "yes"],[
4609 VLC_ADD_PLUGIN([remoteosd])
4610 VLC_ADD_LIBS([remoteosd], ${LIBGCRYPT_LIBS})
4611 VLC_ADD_CFLAGS([remoteosd], ${LIBGCRYPT_CFLAGS})
4613 AC_MSG_ERROR([libgcrypt support required for RemoteOSD plugin])
4621 AC_MSG_CHECKING([whether to enable RAOP plugin])
4622 AS_IF([test "${have_libgcrypt}" = "yes"], [
4624 VLC_ADD_PLUGIN([stream_out_raop])
4625 VLC_ADD_LIBS([stream_out_raop], [${LIBGCRYPT_LIBS} -lgpg-error])
4626 VLC_ADD_CFLAGS([stream_out_raop], [${LIBGCRYPT_CFLAGS}])
4629 AC_MSG_WARN([libgcrypt support required for RAOP plugin])
4634 dnl update checking system
4636 AC_ARG_ENABLE(update-check,
4637 [ --enable-update-check update checking system (default disabled)])
4638 if test "${enable_update_check}" = "yes"
4640 if test "${have_libgcrypt}" != "yes"
4642 AC_MSG_ERROR([libgcrypt is required for update checking system])
4644 VLC_ADD_LIBS([libvlccore], [${LIBGCRYPT_LIBS}])
4645 VLC_ADD_CFLAGS([libvlccore], [${LIBGCRYPT_CFLAGS}])
4646 AC_DEFINE([UPDATE_CHECK], 1, [Define if you want to use the VLC update mechanism])
4651 dnl Endianness check
4654 AS_IF([test "${ac_cv_c_bigendian}" = "yes"], [
4655 DEFS_BIGENDIAN="-DWORDS_BIGENDIAN=1"
4659 AC_SUBST(DEFS_BIGENDIAN)
4662 dnl DLL loader copied from MPlayer copied from somewhere else (WINE ?)
4665 AC_ARG_ENABLE(loader,
4666 AS_HELP_STRING([--enable-loader],[build DLL loader for ELF i386 platforms
4667 (default disabled)]))
4668 AM_CONDITIONAL(LOADER, [test "${enable_loader}" = "yes"])
4669 AS_IF([test "${enable_loader}" = "yes"],
4670 [ VLC_ADD_PLUGIN([dmo])
4671 VLC_ADD_CPPFLAGS([dmo],[-I\\\${top_srcdir}/libs/loader])
4672 VLC_ADD_LIBS([dmo],[\\\${top_builddir}/libs/loader/libloader.la -lpthread])
4673 VLC_ADD_CPPFLAGS([quicktime],[-I\\\${top_srcdir}/libs/loader])
4674 VLC_ADD_LIBS([quicktime],[\\\${top_builddir}/libs/loader/libloader.la -lpthread])
4675 VLC_ADD_CPPFLAGS([realaudio],[-I\\\${top_srcdir}/libs/loader -DLOADER])
4676 VLC_ADD_LIBS([realaudio],[\\\${top_builddir}/libs/loader/libloader.la])
4677 VLC_ADD_CPPFLAGS([realvideo],[-I\\\${top_srcdir}/libs/loader -DLOADER])
4678 VLC_ADD_LIBS([realvideo],[\\\${top_builddir}/libs/loader/libloader.la])
4681 AC_ARG_WITH(,[Components:])
4687 [ --enable-vlc build the VLC media player (default enabled)])
4688 AM_CONDITIONAL(BUILD_VLC, [test "${enable_vlc}" != "no"])
4691 dnl Microsoft ActiveX support
4694 AC_ARG_ENABLE(activex,
4695 AS_HELP_STRING([--enable-activex],[build a vlc-based ActiveX control
4696 (default enabled on Win32)]))
4697 AC_ARG_WITH(wine-sdk-path,
4698 [ --with-wine-sdk-path=PATH path to wine sdk])
4699 if test "${enable_activex}" != "no"
4701 if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"
4703 AC_CHECK_PROGS(MIDL, [midl], no)
4704 if test "${with_wine_sdk_path}" != ""
4706 WINE_SDK_PATH=${with_wine_sdk_path}
4707 AC_PATH_PROG(WIDL, widl, no, [$WINE_SDK_PATH/bin:$WINE_SDK_PATH/tools/widl])
4712 AC_CHECK_HEADERS(ole2.h,
4713 [AC_CHECK_HEADERS(olectl.h,
4714 [ VLC_ADD_CPPFLAGS([activex],[-DUNICODE -D_UNICODE -D_MIDL_USE_GUIDDEF_])
4715 VLC_ADD_CXXFLAGS([activex],[-fno-exceptions])
4716 VLC_ADD_LIBS([activex],[-lole32 -loleaut32 -luuid -lshlwapi])
4717 AC_CHECK_HEADERS(objsafe.h,
4718 VLC_ADD_CXXFLAGS([activex],[-DHAVE_OBJSAFE_HEADER]),,
4726 PLUGINS_BINDINGS="${PLUGINS_BINDINGS} activex"
4728 [ AC_MSG_ERROR([required OLE headers are missing from your system]) ]
4730 [ AC_MSG_ERROR([required OLE headers are missing from your system]) ]
4735 AC_ARG_VAR(MIDL, [Microsoft IDL compiler (Win32 platform only)])
4736 AM_CONDITIONAL(HAS_MIDL_COMPILER, test "${MIDL}" != "no")
4737 AC_ARG_VAR(WIDL, [Wine IDL compiler (requires Wine SDK)])
4738 AM_CONDITIONAL(HAS_WIDL_COMPILER, test "${WIDL}" != "no")
4739 AM_CONDITIONAL(BUILD_ACTIVEX,${activex})
4745 AC_ARG_ENABLE(mozilla,
4746 AS_HELP_STRING([--enable-mozilla],[build a vlc-based Firefox/Mozilla plugin
4747 (default disabled)]))
4748 AC_ARG_WITH(mozilla-sdk-path,
4749 [ --with-mozilla-sdk-path=PATH path to mozilla sdk])
4750 AC_ARG_WITH(mozilla-pkg,
4751 [ --with-mozilla-pkg=PKG look for PKG.pc to build the mozilla plugin.])
4753 if test "${enable_mozilla}" = "yes"
4755 AS_IF([test "${with_mozilla_sdk_path}" = "" -o "${with_mozilla_sdk_path}" = "no"],
4758 dnl As we want to do a loop due to the number of name possible for the .pc
4759 dnl we can't use the pkg-config macros.
4761 AC_ARG_VAR([MOZILLA_CFLAGS], [C compiler flags for Mozilla, overriding pkg-config])
4762 AC_ARG_VAR([MOZILLA_LIBS], [linker flags for Mozilla, overriding pkg-config])
4763 AC_MSG_NOTICE([Checking for Mozilla])
4765 if test -n "$MOZILLA_CFLAGS" -a -n "$MOZILLA_LIBS"
4769 if test -n "$PKG_CONFIG"; then
4770 for i in "${with_mozilla_pkg}" libxul {seamonkey,iceape,xulrunner,firefox,iceweasel,mozilla}-plugin; do
4771 echo "Trying to find $i.pc files" >&5
4772 if $PKG_CONFIG --exists --print-errors "$i" 2>&5
4774 echo "Using $i.pc files." >&5
4775 echo "Using $i.pc files." >&6
4777 MOZILLA_CFLAGS=$( $PKG_CONFIG --cflags "$i" )
4778 MOZILLA_LIBS=$( $PKG_CONFIG --libs "$i" )
4784 AS_IF( [test $found = 1],[
4785 CPPFLAGS="${CPPFLAGS_save} ${MOZILLA_CFLAGS}"
4786 MOZILLA_REQUIRED_HEADERS=1
4787 AC_CHECK_HEADERS([npfunctions.h])
4788 AC_CHECK_HEADERS(npapi.h,,MOZILLA_REQUIRED_HEADERS=0)
4789 AC_CHECK_HEADERS(npruntime.h,,MOZILLA_REQUIRED_HEADERS=0,
4794 if test "${MOZILLA_REQUIRED_HEADERS}" = "0"; then
4795 AC_MSG_ERROR([Please install the Firefox development tools; mozilla-config.h, plugin/npapi.h and plugin/npruntime.h were not found.])
4797 MOZILLA_REQUIRED_HEADERS=
4799 AS_IF([ test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"],[
4800 VLC_ADD_CPPFLAGS([mozilla],[-DXP_UNIX -DOJI])
4801 AS_IF([ test "${SYS}" != "darwin"],[
4802 PKG_CHECK_MODULES(XPM, [xpm xt],[
4803 VLC_ADD_CPPFLAGS([mozilla],[-DMOZ_X11])
4805 AC_MSG_ERROR([Please install the libXpm and libXt development files.])
4809 VLC_ADD_CPPFLAGS([mozilla],[${CPPFLAGS} ${XPM_CFLAGS}])
4810 VLC_ADD_LIBS([mozilla],[${MOZILLA_LIBS} ${XPM_LIBS}])
4811 VLC_ADD_PLUGIN([mozilla])
4812 PLUGINS_BINDINGS="${PLUGINS_BINDINGS} mozilla"
4814 CPPFLAGS="${CPPFLAGS_save}"
4817 AC_PATH_PROGS(MOZILLA_CONFIG,
4818 [mozilla-config seamonkey-config xulrunner-config],
4820 test "${MOZILLA_CONFIG}" = "no" && AC_MSG_ERROR([Please install the Mozilla development tools. mozilla-config was not found.])
4823 dnl pkg-config failed but we might have found a mozilla-config
4824 AS_IF( [test ! -z "${MOZILLA_CONFIG}"],[
4825 if ${MOZILLA_CONFIG} --defines | grep -q 'MOZ_X11=1'; then
4826 LDFLAGS="${LDFLAGS_save} ${X_LIBS} ${X_PRE_LIBS}"
4827 AC_CHECK_LIB(Xt,XtStrings,
4829 VLC_ADD_CPPFLAGS([mozilla],[${X_CFLAGS}])
4830 VLC_ADD_LIBS([mozilla],[${X_LIBS} ${X_PRE_LIBS} -lXt -lX11 -lSM -lICE -lXpm])
4833 [[${X_LIBS} ${X_PRE_LIBS} -lX11 -lSM -lICE -lXpm]
4835 AC_CHECK_HEADERS(X11/xpm.h,,AC_MSG_ERROR([Please install libXpm-devel library for required X11/xpm.h]))
4836 LDFLAGS="${LDFLAGS_save}"
4840 PLUGINS_BINDINGS="${PLUGINS_BINDINGS} mozilla"
4841 VLC_ADD_CPPFLAGS([mozilla],[[`${MOZILLA_CONFIG} --cflags plugin java`]])
4842 VLC_ADD_LIBS([mozilla],[`${MOZILLA_CONFIG} --libs plugin`])
4843 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_mozilla}"
4844 MOZILLA_REQUIRED_HEADERS=1
4845 AC_CHECK_HEADERS(mozilla-config.h,,MOZILLA_REQUIRED_HEADERS=0)
4846 AC_CHECK_HEADERS(npapi.h,,MOZILLA_REQUIRED_HEADERS=0)
4847 AC_CHECK_HEADERS(npruntime.h,,MOZILLA_REQUIRED_HEADERS=0,
4852 if test "${MOZILLA_REQUIRED_HEADERS}" = "0"
4854 AC_MSG_ERROR([Please install the Mozilla development tools, required headers were not found.])
4856 MOZILLA_REQUIRED_HEADERS=
4857 CPPFLAGS="${CPPFLAGS_save}"
4858 MOZILLA_SDK_PATH="`${MOZILLA_CONFIG} --prefix`"
4860 dnl End of moz_sdk = ""
4862 dnl special case for mingw32
4863 if test "${SYS}" = "mingw32"
4865 AC_CHECK_TOOL(CYGPATH, cygpath, "")
4866 dnl latest gecko sdk does not have an xpcom directory
4867 if test -d "${with_mozilla_sdk_path}/xpcom"; then
4868 mozilla_sdk_xpcom="/xpcom"
4872 real_mozilla_sdk="`cd ${with_mozilla_sdk_path} 2>/dev/null && pwd`"
4873 CPPFLAGS="${CPPFLAGS_save} -I${real_mozilla_sdk} -I${real_mozilla_sdk}/include"
4874 MOZILLA_REQUIRED_HEADERS=1
4875 AC_CHECK_HEADERS(mozilla-config.h,,MOZILLA_REQUIRED_HEADERS=0)
4876 AC_CHECK_HEADERS(npapi.h,,MOZILLA_REQUIRED_HEADERS=0)
4877 AC_CHECK_HEADERS(npruntime.h,,MOZILLA_REQUIRED_HEADERS=0,
4882 if test "${MOZILLA_REQUIRED_HEADERS}" = "0"
4884 AC_MSG_ERROR([Please install the Mozilla development tools, required headers were not found.])
4886 MOZILLA_REQUIRED_HEADERS=
4888 PLUGINS_BINDINGS="${PLUGINS_BINDINGS} mozilla"
4889 VLC_ADD_CPPFLAGS([mozilla],[-DXPCOM_GLUE -DHAVE_CPP_MODERN_SPECIALIZE_TEMPLATE_SYNTAX -I${real_mozilla_sdk} -I${real_mozilla_sdk}/include -I${real_mozilla_sdk}/embedstring/include -I${real_mozilla_sdk}/xpcom/include -I${real_mozilla_sdk}/nspr/include -I${real_mozilla_sdk}/string/include -I${real_mozilla_sdk}/plugin/include -I${real_mozilla_sdk}/java/include])
4890 if ${need_xpcom_libs}; then
4891 VLC_ADD_LIBS([mozilla],[-L${real_mozilla_sdk}/embedstring/bin -L${real_mozilla_sdk}/xpcom/bin -L${real_mozilla_sdk}/nspr/bin -L${real_mozilla_sdk}/string/bin -L${real_mozilla_sdk}/lib -lnspr4 -lplds4 -lplc4 -lxpcomglue])
4892 if test "${SYS}" = "mingw32"; then
4893 dnl latest gecko sdk does not have embedstring
4894 if test -d "${real_mozilla_sdk}/embedstring/bin"
4896 VLC_ADD_LIBS([mozilla],[-lembedstring])
4900 MOZILLA_SDK_PATH="${real_mozilla_sdk}"
4902 if test -n "${CYGPATH}"; then
4903 real_mozilla_sdk="`${CYGPATH} -w ${real_mozilla_sdk}`"
4905 CPPFLAGS="${CPPFLAGS_save}"
4909 AM_CONDITIONAL(BUILD_MOZILLA,${mozilla})
4911 dnl Tests for Osso and Xsp
4912 AC_CHECK_LIB(osso, osso_display_blanking_pause, [
4913 PKG_CHECK_MODULES(GLIB2, glib-2.0, [
4914 VLC_ADD_CPPFLAGS([xvmc glx omapfb],[-DHAVE_OSSO ${DBUS_CFLAGS} ${GLIB2_CFLAGS}])
4915 VLC_ADD_LIBS([xvmc glx omapfb],[-losso])
4918 AC_CHECK_LIB(Xsp, XSPSetPixelDoubling,[
4919 VLC_ADD_CPPFLAGS([xvmc glx],[-DHAVE_XSP])
4920 VLC_ADD_LIBS([xvmc glx],[-lXsp])
4926 AC_ARG_ENABLE(testsuite,
4927 [ --enable-testsuite build test modules (default disabled)])
4928 if test "${enable_testsuite}" = "yes"
4930 TESTS="test1 test2 test3 test4"
4932 dnl we define those so that bootstrap sets the right linker
4933 VLC_ADD_CXXFLAGS([test2],[])
4934 VLC_ADD_OBJCFLAGS([test3],[])
4935 dnl this one is needed until automake knows what to do
4936 VLC_ADD_LIBS([test3],[-lobjc])
4938 VLC_ADD_PLUGIN([test1])
4939 VLC_ADD_PLUGIN([test2])
4940 VLC_ADD_PLUGIN([test3])
4941 VLC_ADD_PLUGIN([test4])
4947 if test "${NEED_GTK_MAIN}" != "no"
4949 VLC_ADD_PLUGIN([gtk_main])
4950 VLC_ADD_CFLAGS([gtk_main],[${CFLAGS_gtk}])
4951 VLC_ADD_LDFLAGS([gtk_main],[${LDFLAGS_gtk}])
4954 if test "${NEED_GNOME_MAIN}" != "no"
4956 VLC_ADD_PLUGIN([gnome_main])
4957 VLC_ADD_CFLAGS([gnome_main],[${CFLAGS_gtk} ${CFLAGS_gnome}])
4958 VLC_ADD_LDFLAGS([gnome_main],[${LDFLAGS_gtk} ${LDFLAGS_gnome}])
4961 if test "${NEED_GTK2_MAIN}" != "no"
4963 VLC_ADD_PLUGIN([gtk2_main])
4964 VLC_ADD_CFLAGS([gtk2],[-DNEED_GTK2_MAIN])
4965 VLC_ADD_CFLAGS([pda],[-DNEED_GTK2_MAIN])
4966 VLC_ADD_CFLAGS([gtk2_main],[${CFLAGS_gtk2} ${CFLAGS_pda}])
4967 VLC_ADD_LDFLAGS([gtk2_main],[${LDFLAGS_gtk2} ${LDFLAGS_pda}])
4970 if test "${NEED_GNOME2_MAIN}" != "no"
4972 VLC_ADD_PLUGIN([gnome2_main])
4973 VLC_ADD_CFLAGS([gnome2_main],[${CFLAGS_gtk2} ${CFLAGS_gnome2}])
4974 VLC_ADD_LDFLAGS([gnome2_main],[${LDFLAGS_gtk2} ${LDFLAGS_gnome2}])
4980 if test "${NEED_QTE_MAIN}" != "no"
4982 VLC_ADD_PLUGIN([qte_main])
4983 VLC_ADD_CXXFLAGS([opie qte qt_video],[-DNEED_QTE_MAIN])
4984 VLC_ADD_CXXFLAGS([qte_main],[${CXXFLAGS_qte} ${CXXFLAGS_qt_video}])
4985 VLC_ADD_LDFLAGS([qte_main],[${LDFLAGS_qte} ${LDFLAGS_qt_video}])
4989 dnl Plugin and builtin checks
4993 dnl Automagically disable plugins if there is no system support for
4994 dnl dynamically loadable files (.so, .dll, .dylib).
4995 dnl don't forget vlc-win32 still can load .dll as plugins
4996 AS_IF([test "${ac_cv_have_plugins}" = "no"], [
4997 AC_MSG_WARN([*** No plugin support! Building statically! ***])
5001 AS_IF([test "${plugin_support}" != "no"], [
5002 AC_DEFINE(HAVE_DYNAMIC_PLUGINS, 1, [Define if dynamic plugins are supported])
5006 dnl Pic and shared libvlc stuff
5008 AS_IF([test "${SYS}" = "mingw32"], [
5009 FILE_LIBVLCCORE_DLL="!define LIBVLCCORE_DLL libvlccore.dll"
5010 FILE_LIBVLC_DLL="!define LIBVLC_DLL libvlc.dll"
5014 dnl Stuff used by the program
5016 VERSION_MESSAGE="${VERSION} ${CODENAME}"
5017 COPYRIGHT_MESSAGE="VLC media player - version ${VERSION_MESSAGE} - (c) ${COPYRIGHT_YEARS} the VideoLAN team"
5018 AC_DEFINE_UNQUOTED(VERSION_MESSAGE, "${VERSION_MESSAGE}", [Simple version string])
5019 AC_DEFINE_UNQUOTED(COPYRIGHT_MESSAGE, "${COPYRIGHT_MESSAGE}", [Copyright string])
5020 AC_DEFINE_UNQUOTED(COPYRIGHT_YEARS, "${COPYRIGHT_YEARS}", [The copyright years])
5021 AC_DEFINE_UNQUOTED(CONFIGURE_LINE, "${CONFIGURE_LINE}", [The ./configure command line])
5022 AC_DEFINE_UNQUOTED(PACKAGE_VERSION_MAJOR,"${VERSION_MAJOR}", [version major number])
5023 AC_DEFINE_UNQUOTED(PACKAGE_VERSION_MINOR,"${VERSION_MINOR}", [version minor number])
5024 AC_DEFINE_UNQUOTED(PACKAGE_VERSION_REVISION,"${VERSION_REVISION}", [version minor number])
5025 AC_DEFINE_UNQUOTED(PACKAGE_VERSION_EXTRA,"${VERSION_EXTRA}", [version minor number])
5026 AC_SUBST(COPYRIGHT_MESSAGE)
5027 AC_SUBST(VERSION_MESSAGE)
5028 AC_SUBST(VERSION_MAJOR)
5029 AC_SUBST(VERSION_MINOR)
5030 AC_SUBST(VERSION_REVISION)
5031 AC_SUBST(VERSION_EXTRA)
5032 AC_SUBST(COPYRIGHT_YEARS)
5033 AC_DEFINE_UNQUOTED(VLC_COMPILE_BY, "`whoami`", [user who ran configure])
5034 if test "${build_os}" = "cygwin"
5036 AC_DEFINE_UNQUOTED(VLC_COMPILE_HOST, "`hostname`", [host which ran configure])
5038 AC_DEFINE_UNQUOTED(VLC_COMPILE_HOST, "`hostname -s`", [host which ran configure])
5040 AC_DEFINE_UNQUOTED(VLC_COMPILE_DOMAIN, "`dnsdomainname 2>/dev/null || domainname 2>/dev/null || echo unknown`", [domain of the host which ran configure])
5041 AC_DEFINE_UNQUOTED(VLC_COMPILER, "`$CC -v 2>&1 | tail -n 1`", [compiler])
5042 dnl Win32 need s a numerical version_extra.
5043 case $( echo ${VERSION_EXTRA}|wc -m ) in
5044 "1") VERSION_EXTRA_RC="0";;
5045 "2") VERSION_EXTRA_RC=$( echo ${VERSION_EXTRA}|tr "abcdefghi" "123456789") ;;
5046 *) VERSION_EXTRA_RC="99"
5048 AC_SUBST(VERSION_EXTRA_RC)
5050 dnl Handle substvars that use $(top_srcdir)
5052 VLC_CONFIG="top_srcdir=\"\$(top_srcdir)\" top_builddir=\"\$(top_builddir)\" \$(top_builddir)/vlc-config"
5053 AC_SUBST(VLC_CONFIG)
5054 CPPFLAGS_save="-I\$(top_srcdir)/include -I\$(top_builddir)/include ${CPPFLAGS_save}"
5062 dnl Sort the modules list
5064 PLUGINS=$( (for i in `echo $PLUGINS`; do echo $i; done)|sort|xargs )
5067 dnl Create the vlc-config script
5069 LDFLAGS_libvlc="${LDFLAGS_libvlc} ${LDFLAGS_builtin}"
5072 dnl Configuration is finished
5082 AC_SUBST(MOZILLA_SDK_PATH)
5083 AC_SUBST(WINE_SDK_PATH)
5085 AC_SUBST(AM_CPPFLAGS)
5086 AC_SUBST(MACOSX_DEPLOYMENT_TARGET)
5087 AC_SUBST(FILE_LIBVLCCORE_DLL)
5088 AC_SUBST(FILE_LIBVLC_DLL)
5090 dnl Create vlc-config.in
5091 VLC_OUTPUT_VLC_CONFIG_IN
5094 extras/package/win32/vlc.win32.nsi
5095 extras/package/macosx/Info.plist
5096 extras/package/macosx/Resources/English.lproj/InfoPlist.strings
5097 extras/package/macosx/plugin/Info.plist
5098 extras/package/macosx/plugin/InstallerInfo.plist
5100 projects/activex/Makefile
5101 projects/activex/axvlc.inf
5103 extras/package/ipkg/Makefile
5104 libs/loader/Makefile
5108 projects/mozilla/Makefile
5111 projects/activex/axvlc_rc.rc
5112 projects/mozilla/npvlc_rc.rc
5113 projects/mozilla/vlc.r
5114 projects/mozilla/install.js
5116 share/vlc_win32_rc.rc
5117 share/libvlc_win32_rc.rc
5123 modules/access/Makefile
5124 modules/access/bd/Makefile
5125 modules/access/bda/Makefile
5126 modules/access/dshow/Makefile
5127 modules/access/dvb/Makefile
5128 modules/access/mms/Makefile
5129 modules/access/cdda/Makefile
5130 modules/access/rtp/Makefile
5131 modules/access/rtsp/Makefile
5132 modules/access/rtmp/Makefile
5133 modules/access/vcd/Makefile
5134 modules/access/vcdx/Makefile
5135 modules/access/screen/Makefile
5136 modules/access/zip/Makefile
5137 modules/access_output/Makefile
5138 modules/audio_filter/Makefile
5139 modules/audio_filter/channel_mixer/Makefile
5140 modules/audio_filter/converter/Makefile
5141 modules/audio_filter/resampler/Makefile
5142 modules/audio_filter/spatializer/Makefile
5143 modules/audio_mixer/Makefile
5144 modules/audio_output/Makefile
5145 modules/codec/Makefile
5146 modules/codec/avcodec/Makefile
5147 modules/codec/cmml/Makefile
5148 modules/codec/dmo/Makefile
5149 modules/codec/shine/Makefile
5150 modules/codec/subtitles/Makefile
5151 modules/codec/spudec/Makefile
5152 modules/codec/wmafixed/Makefile
5153 modules/codec/xvmc/Makefile
5154 modules/control/Makefile
5155 modules/control/http/Makefile
5156 modules/control/globalhotkeys/Makefile
5157 modules/demux/Makefile
5158 modules/demux/asf/Makefile
5159 modules/demux/avformat/Makefile
5160 modules/demux/avi/Makefile
5161 modules/demux/mkv/Makefile
5162 modules/demux/mp4/Makefile
5163 modules/demux/mpeg/Makefile
5164 modules/demux/playlist/Makefile
5165 modules/gui/Makefile
5166 modules/gui/beos/Makefile
5167 modules/gui/pda/Makefile
5168 modules/gui/macosx/Makefile
5169 modules/gui/maemo/Makefile
5170 modules/gui/minimal_macosx/Makefile
5171 modules/gui/qnx/Makefile
5172 modules/gui/qt4/Makefile
5173 modules/gui/skins2/Makefile
5174 modules/gui/wince/Makefile
5175 modules/meta_engine/Makefile
5176 modules/misc/Makefile
5177 modules/misc/dummy/Makefile
5178 modules/misc/lua/Makefile
5179 modules/misc/memcpy/Makefile
5180 modules/misc/notify/Makefile
5181 modules/misc/testsuite/Makefile
5182 modules/misc/playlist/Makefile
5183 modules/misc/osd/Makefile
5184 modules/misc/stats/Makefile
5185 modules/misc/xml/Makefile
5186 modules/misc/probe/Makefile
5187 modules/mux/Makefile
5188 modules/mux/mpeg/Makefile
5189 modules/packetizer/Makefile
5190 modules/services_discovery/Makefile
5191 modules/stream_filter/Makefile
5192 modules/stream_out/Makefile
5193 modules/video_chroma/Makefile
5194 modules/video_filter/Makefile
5195 modules/video_filter/atmo/Makefile
5196 modules/video_filter/dynamicoverlay/Makefile
5197 modules/video_output/Makefile
5198 modules/video_output/msw/Makefile
5199 modules/video_output/qte/Makefile
5200 modules/video_output/x11/Makefile
5201 modules/visualization/Makefile
5202 modules/visualization/visual/Makefile
5205 dnl Generate makefiles
5208 # Cannot use AC_CONFIG_FILES([vlc-config]) as is automatically built,
5209 # not provided with the source
5210 ${SHELL} ./config.status --file=vlc-config
5211 chmod 0755 vlc-config
5213 /bin/echo -n "Enabled modules: "
5214 ./vlc-config --list plugin
5216 dnl Shortcut to nice compile message
5218 echo '#! /bin/sh' >compile
5219 echo rm -f .error\$\$ >>compile
5220 echo ERROR=0 >>compile
5221 echo export PATH=$PATH LANG=C >>compile
5222 echo "(make V=1 \$@ 2>&1 || touch .error\$\$)| \\" >>compile
5223 echo '`sed -ne "s/^top_srcdir *= *//p" < Makefile`/extras/buildsystem/make.pl' >>compile
5224 echo test -f .error\$\$ \&\& ERROR=1 >>compile
5225 echo rm -f .error\$\$ >>compile
5226 echo exit \$ERROR >>compile
5230 libvlc configuration
5231 --------------------
5232 version : ${VERSION}
5234 architecture : ${ARCH}
5236 test "${enable_debug}" = "yes" && printf "debug "
5237 test "${enable_cprof}" = "yes" && printf "cprof "
5238 test "${enable_gprof}" = "yes" && printf "gprof "
5239 test "${enable_optimizations}" = "yes" && printf "optim "
5240 test "${enable_release}" = "yes" && printf "release " || printf "devel "
5242 if test "${enable_vlc}" != "no"; then
5243 echo "vlc aliases :${ALIASES}"
5245 echo "build vlc executable : no"
5247 echo "plugins/bindings :${PLUGINS_BINDINGS}
5249 You can tune the compiler flags in vlc-config.
5250 To build vlc and its plugins, type \`./compile' or \`make'.
5252 if test "x$ac_ld_does_not_support_text_reloc" = "xyes"; then
5254 echo "Warning: Due to a bug in ld, mmx/sse support has been"
5256 echo " FFmpeg will be REALLY slow."
5257 echo " VLC WILL NOT PERFORM AS EXPECTED."