1 dnl Autoconf settings for vlc
10 AC_CONFIG_SRCDIR(src/libvlc.c)
11 AC_CONFIG_AUX_DIR(autotools)
14 dnl XXX: we don't put any flags here, because automake 1.5 doesn't support
15 dnl them. And we need the comma otherwize automake will choke on it.
16 AM_INIT_AUTOMAKE(vlc,0.8.4-svn)
17 AM_CONFIG_HEADER(config.h)
31 eval "${CXX} --version" >/dev/null 2>&1 || CXX=""
32 if test "${CXX}" != ""; then
39 dnl AC_PROG_EGREP only exists in autoconf 2.54+, so we use AC_EGREP_CPP right
40 dnl now otherwise it might be set in an obscure if statement.
43 dnl AC_PROG_OBJC doesn't seem to exist, this is the KDE workaround
44 AC_MSG_CHECKING(for an Objective-C compiler)
47 OBJCFLAGS="${CXXFLAGS} -fgnu-runtime -fconstant-string-class=NSConstantString"
49 dnl _AM_DEPENDENCIES(OBJC) doesn't work, so hard code OBJCDEPMODE here
50 #OBJCDEPMODE="depmode=gcc3"
51 #AC_SUBST(OBJCDEPMODE)
52 _AM_DEPENDENCIES(OBJC)
53 AC_MSG_RESULT(not implemented yet)
55 dnl Find the right ranlib, even when cross-compiling
56 AC_CHECK_TOOL(RANLIB, ranlib, :)
57 AC_CHECK_TOOL(STRIP, strip, :)
58 AC_CHECK_TOOL(AR, ar, :)
59 AC_CHECK_TOOL(LD, ld, :)
61 dnl Sam, if you think I didn't see that... --Meuuh
65 dnl Check for compiler properties
70 dnl Check for the contrib directory
73 if test -d ${topdir}/extras/contrib/lib; then
74 export PATH=${topdir}/extras/contrib/bin:$PATH
75 CPPFLAGS="${CPPFLAGS} -I${topdir}/extras/contrib/include"
76 CPPFLAGS_save="${CPPFLAGS_save} -I${topdir}/extras/contrib/include"
77 CFLAGS="${CFLAGS} -I${topdir}/extras/contrib/include"
78 CFLAGS_save="${CFLAGS_save} -I${topdir}/extras/contrib/include"
79 CXXFLAGS="${CXXFLAGS} -I${topdir}/extras/contrib/include"
80 CXXFLAGS_save="${CXXFLAGS_save} -I${topdir}/extras/contrib/include"
81 OBJCFLAGS="${OBJCFLAGS} -I${topdir}/extras/contrib/include"
82 OBJCFLAGS_save="${OBJCFLAGS_save} -I${topdir}/extras/contrib/include"
83 if test -d ${topdir}/extras/contrib/vlc-lib; then
84 LDFLAGS="${LDFLAGS} -L${topdir}/extras/contrib/vlc-lib"
85 LDFLAGS_save="${LDFLAGS_save} -L${topdir}/extras/contrib/vlc-lib"
87 LDFLAGS="${LDFLAGS} -L${topdir}/extras/contrib/lib"
88 LDFLAGS_save="${LDFLAGS_save} -L${topdir}/extras/contrib/lib"
89 with_livedotcom_tree=${topdir}/extras/contrib/src/live
90 with_goom_tree=${topdir}/extras/contrib/src/goom
91 if test ".`uname -s`" = ".Darwin"; then
92 export LD_LIBRARY_PATH=${topdir}/extras/contrib/lib:$LD_LIBRARY_PATH
93 export DYLD_LIBRARY_PATH=${topdir}/extras/contrib/lib:$DYLD_LIBRARY_PATH
94 elif test ".`uname -s`" = ".BeOS"; then
95 export LIBRARY_PATH=${topdir}/extras/contrib/lib:$LIBRARY_PATH
96 export BELIBRARIES=${topdir}/extras/contrib/lib:$BELIBRARIES
101 dnl Set default values
103 LDFLAGS_vlc="${LDFLAGS}"
106 dnl Check the operating system
108 case "${target_os}" in
117 CFLAGS_save="${CFLAGS_save} -pthread"; CFLAGS="${CFLAGS_save}"
118 VLC_ADD_LDFLAGS([dvd dvdcss vcd cdda vcdx cddax],[-ldvd])
122 CFLAGS_save="${CFLAGS_save} -pthread"; CFLAGS="${CFLAGS_save}"
126 CFLAGS_save="${CFLAGS_save} -no-cpp-precomp -D_INTL_REDIRECT_MACROS"; CFLAGS="${CFLAGS_save}"
127 CXXFLAGS_save="${CXXFLAGS_save} -no-cpp-precomp -D_INTL_REDIRECT_MACROS"; CXXFLAGS="${CXXFLAGS_save}"
128 OBJCFLAGS_save="${OBJCFLAGS_save} -no-cpp-precomp -D_INTL_REDIRECT_MACROS"; OBJCFLAGS="${OBJCFLAGS_save}"
129 VLC_ADD_LDFLAGS([vlc ffmpeg ffmpegaltivec],[-all_load])
130 VLC_ADD_LDFLAGS([mp4], [-framework IOKit -framework CoreFoundation])
131 VLC_ADD_CFLAGS([libvlc],[-x objective-c])
132 VLC_ADD_CFLAGS([vlc],[-x objective-c])
133 VLC_ADD_LDFLAGS([vlc],[-Wl,-m -Wl,-multiply_defined -Wl,suppress])
135 *mingw32* | *cygwin* | *wince* | *mingwce* | *pe*)
136 AC_CHECK_TOOL(WINDRES, windres, :)
138 case "${target_os}" in
143 dnl Check if we are using the mno-cygwin mode in which case we are
144 dnl actually dealing with a mingw32 compiler.
149 SYS=mingw32, SYS=cygwin)
151 *wince* | *mingwce* | *pe*)
156 if test "${SYS}" = "mingw32"; then
157 # add ws2_32 for closesocket, select, recv
158 CPPFLAGS_save="${CPPFLAGS_save} -D_OFF_T_ -D_off_t=long"; CPPFLAGS="${CPPFLAGS_save}"
159 VLC_ADD_LDFLAGS([vlc],[-lws2_32 -lnetapi32 -lwinmm -mwindows])
160 VLC_ADD_LDFLAGS([vcdx cddax],[-lwinmm])
161 VLC_ADD_LDFLAGS([ipv4 ipv6 access_http access_mms access_udp access_tcp access_ftp access_output_udp sap slp http stream_out_standard telnet netsync],[-lws2_32])
163 if test "${SYS}" = "mingwce"; then
164 # add ws2 for closesocket, select, recv
165 CPPFLAGS_save="${CPPFLAGS_save} -D_OFF_T_ -D_off_t=long"; CPPFLAGS="${CPPFLAGS_save}"
166 VLC_ADD_CPPFLAGS([vlc],[-Dmain(a,b)=maince(a,b)])
167 VLC_ADD_LDFLAGS([vlc],[-lws2 -e WinMainCRTStartup])
168 VLC_ADD_LDFLAGS([ipv4 ipv6 access_http access_mms access_udp access_tcp access_ftp access_output_udp sap http netsync],[-lws2])
173 VLC_ADD_LDFLAGS([x11 xvideo],[-lsocket])
177 # _POSIX_PTHREAD_SEMANTICS is needed to get the POSIX ctime_r
178 # Perhaps it is useful other places as well?
179 CFLAGS_save="${CFLAGS_save} -D_POSIX_PTHREAD_SEMANTICS"; CFLAGS="${CFLAGS_save}"
186 CFLAGS_save="${CFLAGS_save} -Wno-multichar"; CFLAGS="${CFLAGS_save}"
187 CXXFLAGS_save="${CXXFLAGS_save} -Wno-multichar"; CXXFLAGS="${CXXFLAGS_save}"
188 VLC_ADD_CXXFLAGS([beos],[])
189 VLC_ADD_LDFLAGS([vlc beos],[-lbe])
190 VLC_ADD_LDFLAGS([beos],[-lmedia -ltranslation -ltracker -lgame])
191 VLC_ADD_LDFLAGS([access_file access_ftp access_mms access_output_udp telnet netsync sap ipv4 vlc],[-lnet])
193 dnl Ugly check for Zeta
194 if test -f /boot/beos/system/lib/libzeta.so; then
195 VLC_ADD_LDFLAGS([beos],[-lzeta])
202 AM_CONDITIONAL(HAVE_BEOS, test "${SYS}" = "beos")
203 AM_CONDITIONAL(HAVE_DARWIN, test "${SYS}" = "darwin")
204 AM_CONDITIONAL(HAVE_WIN32, test "${SYS}" = "mingw32")
205 AM_CONDITIONAL(HAVE_WINCE, test "${SYS}" = "mingwce")
210 ALL_LINGUAS="ca da de en_GB es fr it ja nl pt_BR ru tr zh_TW"
211 AM_GNU_GETTEXT_VERSION(0.11.5)
213 if test "${nls_cv_force_use_gnu_gettext}" = "yes"; then
214 AC_DEFINE(HAVE_INCLUDED_GETTEXT, 1, Define if we use the local libintl)
215 INCLUDES="${INCLUDES} -I\$(top_builddir)/intl"
217 AC_CHECK_FUNCS(textdomain,,[
218 AC_CHECK_LIB(intl,textdomain,
219 VLC_ADD_LDFLAGS([vlc],[${LIBINTL}]),,
224 AM_CONDITIONAL(BUILD_INTL, test "${nls_cv_force_use_gnu_gettext}" = "yes")
225 XGETTEXT="${XGETTEXT} --keyword=_NS --keyword=_ANS"
228 [ --enable-utf8 unicode utf8 support (default enabled on darwin/beos/win32)])
229 if test "${enable_utf8}" = "yes" || (test "${enable_utf8}" != "no" && (test "${SYS}" = "mingw32" || test "${SYS}" = "beos" || test "${SYS}" = "darwin" ) )
231 AC_DEFINE(ENABLE_UTF8, 1,
232 Define if you want utf8 support)
238 VLC_ADD_CFLAGS([vlc],[${INCICONV}])
239 VLC_ADD_LDFLAGS([vlc],[${LIBICONV}])
241 dnl Check for the need to include the mingwex lib for mingw32
242 if test "${SYS}" = "mingw32"
244 AC_CHECK_LIB(mingwex,opendir,
245 AC_CHECK_LIB(mingw32,opendir,VLC_ADD_LDFLAGS([vlc],[]),
246 [VLC_ADD_LDFLAGS([vlc gtk],[-lmingwex])])
250 dnl Check for fnative-struct or mms-bitfields support for mingw32
251 if test "${SYS}" = "mingw32"
253 AC_CACHE_CHECK([if \$CC accepts -mms-bitfields],
254 [ac_cv_c_mms_bitfields],
255 [CFLAGS="${CFLAGS_save} -mms-bitfields"
256 AC_TRY_COMPILE([],,ac_cv_c_mms_bitfields=yes, ac_cv_c_mms_bitfields=no)])
257 if test "${ac_cv_c_mms_bitfields}" != "no"; then
258 CFLAGS_save="${CFLAGS_save} -mms-bitfields";
259 CXXFLAGS_save="${CXXFLAGS_save} -mms-bitfields";
261 AC_CACHE_CHECK([if \$CC accepts -fnative-struct],
262 [ac_cv_c_fnative_struct],
263 [CFLAGS="${CFLAGS_save} -fnative-struct"
264 AC_TRY_COMPILE([],,ac_cv_c_fnative_struct=yes, ac_cv_c_fnative_struct=no)])
265 if test "${ac_cv_c_fnative_struct}" != "no"; then
266 CFLAGS_save="${CFLAGS_save} -fnative-struct";
267 CXXFLAGS_save="${CXXFLAGS_save} -fnative-struct";
271 CFLAGS="${CFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}"
274 dnl Check for fvtable-thunks support for mingw32
275 if test "${SYS}" = "mingw32" -a "${CXX}" != ""
278 AC_CACHE_CHECK([if \$CXX accepts -fvtable-thunks],
279 [ac_cv_cxx_fvtable_thunks],
280 [CXXFLAGS="${CXXFLAGS_save} -Wall -Werror -fvtable-thunks"
281 AC_TRY_COMPILE([],,ac_cv_cxx_fvtable_thunks=yes,
282 ac_cv_cxx_fvtable_thunks=no)])
283 if test "${ac_cv_cxx_fvtable_thunks}" = "yes"; then
284 CXXFLAGS_mingw32_special="-fvtable-thunks"
287 CXXFLAGS_save="${CXXFLAGS_save} ${CXXFLAGS_mingw32_special}"; CXXFLAGS="${CXXFLAGS_save}"
291 dnl Plugin compilation stuff
297 VLC_ADD_CFLAGS([pic plugin mozilla activex],[${CFLAGS_mingw32_special}])
298 VLC_ADD_CXXFLAGS([pic plugin mozilla activex],[${CFLAGS_mingw32_special} ${CXXFLAGS_mingw32_special}])
299 VLC_ADD_OBJCFLAGS([pic plugin mozilla activex],[${CFLAGS_mingw32_special}])
304 VLC_ADD_CFLAGS([pic plugin mozilla],[-fpic -fPIC])
305 VLC_ADD_CXXFLAGS([pic plugin mozilla],[-fpic -fPIC])
306 VLC_ADD_OBJCFLAGS([pic plugin mozilla],[-fpic -fPIC])
307 VLC_ADD_LDFLAGS([plugin mozilla],[-fpic -fPIC])
311 dnl The -DSYS_FOO flag
312 CPPFLAGS_save="${CPPFLAGS_save} -DSYS_`echo ${SYS} | sed -e 's/-.*//' | tr 'abcdefghijklmnopqrstuvwxyz.' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ_'`"; CPPFLAGS="${CPPFLAGS_save}"
314 dnl Check for system libs needed
317 AC_CHECK_FUNCS(gettimeofday select strerror strtod strtol strtof strtoll strtoull strsep isatty vasprintf asprintf swab sigrelse getpwuid memalign posix_memalign if_nametoindex atoll getenv putenv setenv gmtime_r ctime_r localtime_r lrintf daemon)
319 dnl Check for usual libc functions
320 AC_CHECK_FUNCS(strdup strndup atof)
321 AC_CHECK_FUNCS(strcasecmp,,[AC_CHECK_FUNCS(stricmp)])
322 AC_CHECK_FUNCS(strncasecmp,,[AC_CHECK_FUNCS(strnicmp)])
323 AC_CHECK_FUNCS(strcasestr,,[AC_CHECK_FUNCS(stristr)])
325 dnl Check for setlocal and langinfo
326 AC_CHECK_FUNCS(setlocale)
327 AC_CHECK_HEADERS(langinfo.h)
328 AC_CHECK_FUNCS(nl_langinfo)
330 AC_CACHE_CHECK([for nl_langinfo and CODESET], ac_cv_langinfo_codeset,
331 [AC_TRY_LINK([#include <langinfo.h>],
332 [char* cs = nl_langinfo(CODESET);],
333 ac_cv_langinfo_codeset=yes,
334 ac_cv_langinfo_codeset=no)
336 if test ${ac_cv_langinfo_codeset} = yes; then
337 AC_DEFINE(HAVE_LANGINFO_CODESET, 1,
338 [Define if you have <langinfo.h> and nl_langinfo(CODESET).])
341 AC_CHECK_FUNCS(connect,,[
342 AC_CHECK_LIB(socket,connect,[
343 VLC_ADD_LDFLAGS([vlc ipv4 cddax],-lsocket)
347 AC_CHECK_FUNCS(send,,[
348 AC_CHECK_LIB(socket,send,[
349 VLC_ADD_LDFLAGS([access_http access_mms access_udp access_tcp access_ftp sap access_output_udp stream_out_standard],[-lsocket])
353 AC_CHECK_FUNCS(gethostbyname,,[
354 AC_CHECK_LIB(nsl,gethostbyname,[
355 VLC_ADD_LDFLAGS([cddax ipv4 vlc],[-lnsl])
357 AC_CHECK_LIB(bind,gethostbyname,[
358 VLC_ADD_LDFLAGS([ipv4 access_mms],[-lbind])
363 dnl Check for socklen_t
364 AC_CACHE_CHECK([for socklen_t], ac_cv_type_socklen_t,
366 [#include <sys/types.h>
367 #include <sys/socket.h>],
368 [socklen_t len = 42; return len;],
369 ac_cv_type_socklen_t=yes,
370 ac_cv_type_socklen_t=no)])
371 if test "${ac_cv_type_socklen_t}" != "no"; then
372 AC_DEFINE(HAVE_SOCKLEN_T, 1, [Define if <sys/socket.h> defines socklen_t.])
375 dnl Check for struct sockaddr_storage
376 AH_TEMPLATE(sockaddr_storage, [Define to `sockaddr' if <sys/socket.h> does not define.])
377 AH_TEMPLATE(ss_family, [Define to `sa_family' if <sys/socket.h> does not define.])
378 AC_CACHE_CHECK([for struct sockaddr_storage], ac_cv_struct_sockaddr_storage,
380 [#include <sys/types.h>
381 #if defined( UNDER_CE )
382 # include <winsock.h>
383 #elif defined( WIN32 )
384 # include <winsock2.h>
386 # include <sys/socket.h>
387 #endif], [struct sockaddr_storage addr;],
388 ac_cv_struct_sockaddr_storage=yes,
389 ac_cv_struct_sockaddr_storage=no)])
390 if test $ac_cv_struct_sockaddr_storage = no; then
391 AC_DEFINE(sockaddr_storage, sockaddr)
392 AC_DEFINE(ss_family, sa_family)
395 dnl getaddrinfo, getnameinfo and gai_strerror check
396 dnl -lresolv is NOT needed on Solaris
397 dnl we purposedly make the test fail on Windows
398 AC_CHECK_FUNCS([getaddrinfo getnameinfo gai_strerror])
399 AH_TEMPLATE(HAVE_ADDRINFO, [Define to `1' if <netdb.h> defines struct addrinfo.])
400 AC_CHECK_TYPES([struct addrinfo],[AC_DEFINE(HAVE_ADDRINFO)],,
401 [#include <sys/types.h>
402 #if defined( WIN32 ) || defined( UNDER_CE )
403 # if defined(UNDER_CE) && defined(sockaddr_storage)
404 # undef sockaddr_storage
406 # include <winsock2.h>
407 # include <ws2tcpip.h>
412 dnl Check for va_copy
413 AC_CACHE_CHECK([for va_copy], ac_cv_c_va_copy,
415 [#include <stdarg.h>],
416 [va_list ap1, ap2; va_copy(ap1,ap2);],
417 [ac_cv_c_va_copy="yes"],
418 [ac_cv_c_va_copy="no"]))
419 if test "${ac_cv_c_va_copy}" = "yes"; then
420 AC_DEFINE(HAVE_VA_COPY, 1, [Define if <stdarg.h> defines va_copy.])
422 AC_CACHE_CHECK([for __va_copy], ac_cv_c___va_copy,
424 [#include <stdarg.h>],
425 [va_list ap1, ap2; __va_copy(ap1,ap2);],
426 [ac_cv_c___va_copy="yes"],
427 [ac_cv_c___va_copy="no"]))
428 if test "${ac_cv_c___va_copy}" = "yes"; then
429 AC_DEFINE(HAVE___VA_COPY, 1, [Define if <stdarg.h> defines __va_copy.])
432 AC_CHECK_FUNCS(inet_aton,,[
433 AC_CHECK_LIB(resolv,inet_aton,[
434 VLC_ADD_LDFLAGS([ipv4 vlc],[-lresolv])
438 dnl Check for getopt (always use builtin one on win32)
439 if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"; then
443 AC_CHECK_FUNCS(getopt_long,[AC_DEFINE(HAVE_GETOPT_LONG,1,long getopt support)],
444 [ # FreeBSD has a gnugetopt library for this:
445 AC_CHECK_LIB([gnugetopt],[getopt_long],
446 [AC_DEFINE(HAVE_GETOPT_LONG,1,getopt support)
447 VLC_ADD_LDFLAGS([vlc],[-lgnugetopt])],
450 AM_CONDITIONAL(BUILD_GETOPT, ${need_getopt})
452 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
455 VLC_ADD_LDFLAGS([adjust distort a52tofloat32 dtstofloat32 x264 goom],[-lm])
458 VLC_ADD_LDFLAGS([ffmpeg ffmpegaltivec stream_out_transrate i420_rgb faad twolame equalizer vlc freetype],[-lm])
460 AC_CHECK_LIB(m,sqrt,[
461 VLC_ADD_LDFLAGS([headphone_channel_mixer normvol speex],[-lm])
463 AC_CHECK_LIB(mx,sqrtf,[
464 VLC_ADD_LDFLAGS([x264],[-lmx])
466 fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
468 dnl Check for dynamic plugins
469 ac_cv_have_plugins=no
472 AC_CHECK_HEADERS(mach-o/dyld.h,
473 [AC_CHECK_FUNCS(NSLinkModule,
474 [AC_DEFINE(HAVE_DL_DYLD, 1, [Define if you have the Darwin dyld API])
475 ac_cv_have_plugins=yes])])
478 if test "${ac_cv_have_plugins}" = "no"; then
479 AC_CHECK_HEADERS(dl.h)
480 ac_cv_my_have_shl_load=no
481 AC_CHECK_FUNC(shl_load,
482 [ac_cv_my_have_shl_load=yes,
483 AC_CHECK_LIB(dld, shl_load,
484 [ac_cv_my_have_shl_load=yes
485 VLC_ADD_LDFLAGS([vlc],[-ldld])])])
486 if test "${ac_cv_my_have_shl_load}" = "yes"; then
487 AC_DEFINE(HAVE_DL_SHL_LOAD, 1, [Define if you have the shl_load API])
488 ac_cv_have_plugins=yes
493 if test "${ac_cv_have_plugins}" = "no"; then
494 AC_CHECK_LIB(dld, dld_link,
495 [VLC_ADD_LDFLAGS([vlc],[-ldld])
496 AC_DEFINE(HAVE_DL_DLD_LINK, 1, [Define if you have the GNU dld library])
497 ac_cv_have_plugins=yes])
501 if test "${ac_cv_have_plugins}" = "no"; then
502 if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"; then
503 AC_CHECK_LIB(kernel32, main,
504 [VLC_ADD_LDFLAGS([vlc],[-lkernel32])
505 AC_DEFINE(HAVE_DL_WINDOWS, 1, [Define if you have Windows' LoadLibrary])
506 ac_cv_have_plugins=yes])
511 if test "${ac_cv_have_plugins}" = "no"; then
512 if test "${SYS}" = "mingwce"; then
513 AC_DEFINE(HAVE_DL_WINDOWS, 1, [Define if you have Windows' LoadLibrary])
514 ac_cv_have_plugins=yes
519 if test "${ac_cv_have_plugins}" = "no"; then
520 AC_CHECK_HEADERS(image.h)
521 AC_CHECK_FUNCS(load_add_on,
522 [AC_DEFINE(HAVE_DL_BEOS, 1, [Define if you have the BeOS dl])
523 ac_cv_have_plugins=yes])
526 # Only test for dlopen() if the others didn't work
527 if test "${ac_cv_have_plugins}" = "no"; then
528 AC_CHECK_HEADERS(dlfcn.h sys/dl.h)
529 ac_cv_my_have_dlopen=no
530 AC_CHECK_FUNC(dlopen,
531 ac_cv_my_have_dlopen=yes,
532 AC_CHECK_LIB(dl, dlopen,
533 ac_cv_my_have_dlopen=yes
534 VLC_ADD_LDFLAGS([vlc],[-ldl]),
535 AC_CHECK_LIB(svld, dlopen,
536 ac_cv_my_have_dlopen=yes
537 VLC_ADD_LDFLAGS([vlc],[-lsvld]))))
538 if test "${ac_cv_my_have_dlopen}" = "yes"; then
539 AC_DEFINE(HAVE_DL_DLOPEN, 1, [Define if you have the dlopen API])
540 ac_cv_have_plugins=yes
544 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
545 dnl Check for pthreads - borrowed from XMMS
547 if test "${THREAD_LIB}" = "error"; then
548 AC_CHECK_LIB(pthread,main,THREAD_LIB="-lpthread")
550 if test "${THREAD_LIB}" = "error"; then
551 AC_CHECK_LIB(pthreads,main,THREAD_LIB="-lpthreads")
553 if test "${THREAD_LIB}" = "error"; then
554 AC_CHECK_LIB(c_r,main,THREAD_LIB="-lc_r")
556 if test "${THREAD_LIB}" = "error"; then
557 AC_CHECK_FUNCS(pthread_mutex_lock)
561 dnl Check for cthreads under GNU/Hurd for instance
562 AC_CHECK_LIB(threads,cthread_fork,THREAD_LIB="-lthreads")
565 dnl GNU portable threads
568 [ --enable-pth GNU Pth support (default disabled)],
569 [ if test "${enable_pth}" = "yes"; then
570 AC_CHECK_LIB(pth,pth_init)
571 AC_MSG_CHECKING(for pth_init in pth.h)
572 AC_EGREP_HEADER(pth_init,pth.h,[
574 AC_DEFINE(PTH_INIT_IN_PTH_H, 1,
575 Define if <pth.h> defines pth_init)
587 [ --enable-st State Threads (default disabled)],
588 [ if test "${enable_st}" = "yes"; then
589 AC_CHECK_LIB(st,st_init)
590 AC_MSG_CHECKING(for st_init in st.h)
591 AC_EGREP_HEADER(st_init,st.h,[
593 AC_DEFINE(ST_INIT_IN_ST_H, 1,
594 Define if <st.h> defines st_init)
602 VLC_ADD_LDFLAGS([vlc plugin],[${THREAD_LIB}])
604 dnl Don't link with rt when using GNU-pth
605 if test "${THREAD_LIB}" != "-lpth" && test "${THREAD_LIB}" != "-lst"; then
607 AC_CHECK_LIB(rt,sem_init, [VLC_ADD_LDFLAGS([vlc],[-lrt])])
610 AC_CHECK_FUNCS(nanosleep,have_nanosleep=:,[
611 AC_CHECK_LIB(rt,nanosleep,
612 [VLC_ADD_LDFLAGS([vlc],[-lrt]) have_nanosleep=:],
613 [AC_CHECK_LIB(posix4,nanosleep,
614 [VLC_ADD_LDFLAGS([vlc],[-lposix4]) have_nanosleep=:])]
617 if ${have_nanosleep}; then
618 AC_DEFINE(HAVE_NANOSLEEP, 1,
619 Define if nanosleep is available.)
623 dnl Check for misc headers
624 AC_MSG_CHECKING(for pthread_cond_t in pthread.h)
625 AC_EGREP_HEADER(pthread_cond_t,pthread.h,[
627 AC_DEFINE(PTHREAD_COND_T_IN_PTHREAD_H, 1,
628 Define if <pthread.h> defines pthread_cond_t.)],[
631 AC_MSG_CHECKING(for pthread_once in pthread.h)
632 AC_EGREP_HEADER(pthread_once,pthread.h,[
634 AC_DEFINE(PTHREAD_ONCE_IN_PTHREAD_H, 1,
635 Define if <pthread.h> defines pthread_once.)],[
637 fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
639 AC_MSG_CHECKING(for strncasecmp in strings.h)
640 AC_EGREP_HEADER(strncasecmp,strings.h,[
642 AC_DEFINE(STRNCASECMP_IN_STRINGS_H, 1,
643 Define if <strings.h> defines strncasecmp.)],[
646 dnl Check for headers
647 AC_CHECK_HEADERS(signal.h time.h errno.h stdint.h stdbool.h getopt.h strings.h inttypes.h sys/int_types.h wchar.h)
648 AC_CHECK_HEADERS(sys/sockio.h fcntl.h sys/types.h sys/time.h sys/times.h sys/ioctl.h sys/stat.h)
649 AC_CHECK_HEADERS(arpa/inet.h net/if.h netinet/in.h sys/socket.h)
650 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
651 AC_CHECK_HEADERS(machine/param.h sys/shm.h altivec.h)
652 AC_CHECK_HEADERS(linux/version.h)
653 fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
659 AC_CHECK_HEADERS(dirent.h,,[need_dirent=:])
660 AM_CONDITIONAL(BUILD_DIRENT, ${need_dirent})
662 dnl Mac OS X and other OSes don't have declaration for nanosleep
663 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
664 AC_MSG_CHECKING(for nanosleep in time.h)
665 AC_EGREP_HEADER(nanosleep,time.h,[
667 AC_DEFINE(HAVE_DECL_NANOSLEEP, 1,
668 Define if <time.h> defines nanosleep.)
672 fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
674 dnl Make sure we have timespecs
675 AC_MSG_CHECKING(for timespec in sys/time.h)
676 AC_EGREP_HEADER(timespec,sys/time.h,[
678 AC_DEFINE(HAVE_STRUCT_TIMESPEC, 1,
679 Define if <sys/time.h> defines struct timespec.)
684 dnl Check for threads library
685 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
686 AC_CHECK_HEADERS(cthreads.h pthread.h kernel/scheduler.h kernel/OS.h)
687 fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
689 dnl Default X headers and libraries
690 if test "${x_includes}" = "NONE"; then
691 x_includes="/usr/X11R6/include"
693 if test "${x_libraries}" = "NONE"; then
694 x_libraries="/usr/X11R6/lib"
699 [ --enable-hal Linux HAL services discovery (default enabled)])
701 if test "${enable_hal}" != "no"
703 PKG_CHECK_MODULES(HAL, hal >= 0.2.97,
704 [AC_DEFINE(HAVE_HAL, [], [Define if you have the HAL library])
705 VLC_ADD_PLUGINS([hal])
706 VLC_ADD_LDFLAGS([vlc hal],[$HAL_LIBS])
707 VLC_ADD_CFLAGS([vlc hal],[$HAL_CFLAGS])],
708 [AC_MSG_WARN(HAL library not found)])
711 dnl Build the gtk_main plugins?
717 dnl build the qte plugin ?
720 dnl Check for ntohl, etc.
721 AC_CACHE_CHECK([for ntohl in sys/param.h],
722 [ac_cv_c_ntohl_sys_param_h],
723 [CFLAGS="${CFLAGS_save} -Wall -Werror"
724 AC_TRY_COMPILE([#include <sys/param.h>],
725 [void foo() { int meuh; ntohl(meuh); }],
726 ac_cv_c_ntohl_sys_param_h=yes, ac_cv_c_ntohl_sys_param_h=no)])
727 if test "${ac_cv_c_ntohl_sys_param_h}" != "no"; then
728 AC_DEFINE(NTOHL_IN_SYS_PARAM_H, 1, Define if <sys/param.h> defines ntohl.)
731 # XXX: do this with an M4 macro?
732 #dnl Check for various -W flags
733 #for flag in "" all unreachable-code conversion sign-compare disabled-optimization
735 # AC_CACHE_CHECK([if \$CC accepts -W${flag}],
736 # [ac_cv_c_W${flag}],
737 # [CFLAGS="-W${flag} ${CFLAGS_save}"
738 # AC_TRY_COMPILE([],,ac_cv_c_W${flag}=yes, ac_cv_c_W${flag}=no)])
739 # if test "${ac_cv_c_W${flag}}" != "no"; then
740 # CFLAGS_save="-W${flag} ${CFLAGS_save}"; CFLAGS="${CFLAGS_save}"
741 # CXXFLAGS_save="-W${flag} ${CFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}"
742 # OBJCFLAGS_save="-W${flag} ${OBJCFLAGS_save}"; OBJCFLAGS="${OBJCFLAGS_save}"
746 AC_CACHE_CHECK([if \$CC accepts -Wall],
748 [CFLAGS="-Wall ${CFLAGS_save}"
749 AC_TRY_COMPILE([],,ac_cv_c_Wall=yes, ac_cv_c_Wall=no)])
751 AC_CACHE_CHECK([if \$CC accepts -Wconversion],
752 [ac_cv_c_Wconversion],
753 [CFLAGS="-Wconversion ${CFLAGS_save}"
754 AC_TRY_COMPILE([],,ac_cv_c_Wconversion=yes, ac_cv_c_Wconversion=no)])
756 AC_CACHE_CHECK([if \$CC accepts -Wunreachable-code],
757 [ac_cv_c_Wunreachable_code],
758 [CFLAGS="-Wunreachable-code ${CFLAGS_save}"
759 AC_TRY_COMPILE([],,ac_cv_c_Wunreachable_code=yes, ac_cv_c_Wunreachable_code=no)])
761 AC_CACHE_CHECK([if \$CC accepts -Wsign-compare],
762 [ac_cv_c_Wsign_compare],
763 [CFLAGS="-Wsign-compare ${CFLAGS_save}"
764 AC_TRY_COMPILE([],,ac_cv_c_Wsign_compare=yes, ac_cv_c_Wsign_compare=no)])
766 if test "${ac_cv_c_Wall}" != "no"; then
767 CFLAGS_save="-Wall ${CFLAGS_save}"; CFLAGS="${CFLAGS_save}"
768 CXXFLAGS_save="-Wall ${CFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}"
769 OBJCFLAGS_save="-Wall ${OBJCFLAGS_save}"; OBJCFLAGS="${OBJCFLAGS_save}"
772 if test "${ac_cv_c_Wsign_compare}" != "no"; then
773 CFLAGS_save="-Wsign-compare ${CFLAGS_save}"; CFLAGS="${CFLAGS_save}"
774 CXXFLAGS_save="-Wsign-compare ${CFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}"
775 OBJCFLAGS_save="-Wsign-compare ${OBJCFLAGS_save}"; OBJCFLAGS="${OBJCFLAGS_save}"
779 AC_CACHE_CHECK([if \$CC accepts -pipe],
781 [CFLAGS="${CFLAGS_save} -pipe"
782 AC_TRY_COMPILE([],,ac_cv_c_pipe=yes, ac_cv_c_pipe=no)])
783 if test "${ac_cv_c_pipe}" != "no"; then
784 CFLAGS_save="${CFLAGS_save} -pipe"; CFLAGS="${CFLAGS_save}"
785 CXXFLAGS_save="${CXXFLAGS_save} -pipe"; CXXFLAGS="${CXXFLAGS_save}"
786 OBJCFLAGS_save="${OBJCFLAGS_save} -pipe"; OBJCFLAGS="${OBJCFLAGS_save}"
789 dnl Check for various optimization flags
790 AC_CACHE_CHECK([if \$CC accepts -Os],
792 [CFLAGS="${CFLAGS_save} -Os"
793 AC_TRY_COMPILE([],,ac_cv_c_os=yes, ac_cv_c_os=no)])
794 if test "${ac_cv_c_os}" != "no" -a "${target_cpu}" = "mipsel"; then
795 CFLAGS_OPTIM="${CFLAGS_OPTIM} -Os"
798 AC_CACHE_CHECK([if \$CC accepts -O3],
800 [CFLAGS="${CFLAGS_save} -O3"
801 AC_TRY_COMPILE([],,ac_cv_c_o3=yes, ac_cv_c_o3=no)])
802 if test "${ac_cv_c_o3}" != "no" -a "${target_cpu}" != "mipsel"; then
803 CFLAGS_OPTIM="${CFLAGS_OPTIM} -O3"
806 AC_CACHE_CHECK([if \$CC accepts -O2],
808 [CFLAGS="${CFLAGS_save} -O2"
809 AC_TRY_COMPILE([],,ac_cv_c_o2=yes, ac_cv_c_o2=no)])
810 if test "${ac_cv_c_o2}" != "no" -a "${target_cpu}" != "mipsel"; then
811 if test "${ac_cv_c_o3}" = "no"; then
812 CFLAGS_OPTIM="${CFLAGS_OPTIM} -O2"
814 CFLAGS_NOOPTIM="${CFLAGS_NOOPTIM} -O2"
816 AC_CACHE_CHECK([if \$CC accepts -O],
818 [CFLAGS="${CFLAGS_save} -O"
819 AC_TRY_COMPILE([],,ac_cv_c_o=yes, ac_cv_c_o=no)])
820 if test "${ac_cv_c_o}" != "no" -a "${target_cpu}" != "mipsel"; then
821 if test "${ac_cv_c_o3}" = "no"; then
822 CFLAGS_OPTIM="${CFLAGS_OPTIM} -O"
824 CFLAGS_NOOPTIM="${CFLAGS_NOOPTIM} -O"
828 dnl Check for -ffast-math
829 AC_CACHE_CHECK([if \$CC accepts -ffast-math],
831 [CFLAGS="${CFLAGS_save} -ffast-math"
832 AC_TRY_COMPILE([],,ac_cv_c_fast_math=yes, ac_cv_c_fast_math=no)])
833 if test "${ac_cv_c_fast_math}" != "no"; then
834 CFLAGS_OPTIM="${CFLAGS_OPTIM} -ffast-math"
837 dnl Check for -funroll-loops
838 dnl Disabled on BeOS because BeOS' gcc is buggy and may crash with it
839 if test "${SYS}" != "beos"
841 AC_CACHE_CHECK([if \$CC accepts -funroll-loops],
842 [ac_cv_c_unroll_loops],
843 [CFLAGS="${CFLAGS_save} -funroll-loops"
844 AC_TRY_COMPILE([],,ac_cv_c_unroll_loops=yes, ac_cv_c_unroll_loops=no)])
845 if test "${ac_cv_c_unroll_loops}" != "no"; then
846 CFLAGS_OPTIM="${CFLAGS_OPTIM} -funroll-loops"
850 dnl Check for -fomit-frame-pointer
851 AC_CACHE_CHECK([if \$CC accepts -fomit-frame-pointer],
852 [ac_cv_c_omit_frame_pointer],
853 [CFLAGS="${CFLAGS_save} -fomit-frame-pointer"
854 AC_TRY_COMPILE([],,ac_cv_c_omit_frame_pointer=yes, ac_cv_c_omit_frame_pointer=no)])
855 if test "${ac_cv_c_omit_frame_pointer}" != "no"; then
856 CFLAGS_OPTIM_NODEBUG="${CFLAGS_OPTIM_NODEBUG} -fomit-frame-pointer"
857 # this plugin does not compile without -fomit-frame-pointer, damn gcc!
858 VLC_ADD_CFLAGS([i420_yuy2_mmx],[-fomit-frame-pointer])
861 dnl Check for -mdynamic-no-pic
862 AC_CACHE_CHECK([if \$CC accepts -mdynamic-no-pic],
863 [ac_cv_c_dynamic_no_pic],
864 [CFLAGS="${CFLAGS_save} -mdynamic-no-pic"
865 AC_TRY_COMPILE([],,ac_cv_c_dynamic_no_pic=yes, ac_cv_c_dynamic_no_pic=no)])
866 if test "${ac_cv_c_dynamic_no_pic}" != "no"; then
867 VLC_ADD_CFLAGS([builtin],[-mdynamic-no-pic])
868 VLC_ADD_CFLAGS([libvlc],[-mdynamic-no-pic])
871 dnl Check for Darwin plugin linking flags
872 AC_CACHE_CHECK([if \$CC accepts -bundle -undefined error -lcc_dynamic],
874 [CFLAGS="${CFLAGS_save} -bundle -undefined error -lcc_dynamic"
875 AC_TRY_COMPILE([],,ac_cv_ld_darwin=yes, ac_cv_ld_darwin=no)])
876 if test "${ac_cv_ld_darwin}" != "no"; then
877 VLC_ADD_LDFLAGS([plugin],[-bundle -undefined error])
878 AC_CHECK_LIB(cc_dynamic, main,[
879 VLC_ADD_LDFLAGS([plugin],[-lcc_dynamic])
883 dnl Check for standard plugin linking flags
884 dnl BeOS' gcc needs -nostart instead of -shared, even if -shared isn't harmful (just a warning)
885 if test "${SYS}" = "beos"; then
886 VLC_ADD_LDFLAGS([plugin mozilla],[-nostart])
888 AC_CACHE_CHECK([if \$CC accepts -shared],
890 [CFLAGS="${CFLAGS_save} -shared"
891 AC_TRY_COMPILE([],, ac_cv_ld_plugins=yes, ac_cv_ld_plugins=no)])
892 if test "${ac_cv_ld_plugins}" != "no"; then
893 VLC_ADD_LDFLAGS([plugin mozilla],[-shared])
897 dnl Check for variadic macros
898 AC_CACHE_CHECK([for variadic cpp macros],
899 [ac_cv_cpp_variadic_macros],
900 [CFLAGS="${CFLAGS_save}"
903 #define a(b,c...) printf(b,##c)],
904 [a("foo");a("%s","bar");a("%s%s","baz","quux");],
905 ac_cv_cpp_variadic_macros=yes,
906 ac_cv_cpp_variadic_macros=no)])
907 if test "${ac_cv_cpp_variadic_macros}" != "no"; then
908 AC_DEFINE(HAVE_VARIADIC_MACROS, 1, Support for variadic macros)
911 dnl Checks for __attribute__(aligned()) directive
912 AC_CACHE_CHECK([__attribute__ ((aligned ())) support],
913 [ac_cv_c_attribute_aligned],
914 [ac_cv_c_attribute_aligned=0
915 CFLAGS="${CFLAGS_save} -Werror"
916 for ac_cv_c_attr_align_try in 2 4 8 16 32 64; do
918 [static char c __attribute__ ((aligned(${ac_cv_c_attr_align_try}))) = 0; return c;],
919 [ac_cv_c_attribute_aligned="${ac_cv_c_attr_align_try}"])
921 CFLAGS="${CFLAGS_save}"])
922 if test "${ac_cv_c_attribute_aligned}" != "0"; then
923 AC_DEFINE_UNQUOTED([ATTRIBUTE_ALIGNED_MAX],
924 [${ac_cv_c_attribute_aligned}],[Maximum supported data alignment])
927 dnl Checks for __attribute__(format()) directive
928 AC_CACHE_CHECK([__attribute__ ((format ())) support with function pointers],
929 [ac_cv_c_attribute_format],
930 [ac_cv_c_attribute_format=no
931 CFLAGS="${CFLAGS_save} -Werror"
933 [static void (*pf_printf)(const char *, ...) __attribute__ ((format(printf,1,2)));(void)pf_printf;],
934 [ac_cv_c_attribute_format=yes])
935 CFLAGS="${CFLAGS_save}"])
936 if test "${ac_cv_c_attribute_format}" != "no"; then
937 AC_DEFINE(HAVE_ATTRIBUTE_FORMAT, 1, Support for __attribute__((format())) with function pointers)
940 dnl Check for __attribute__(())
941 AC_CACHE_CHECK([for __attribute__((packed))],
942 [ac_cv_c_attribute_packed],
943 [ac_cv_c_attribute_packed=no
944 AC_TRY_COMPILE(, [struct __attribute__((__packed__)) foo { int a; } b;],
945 [ac_cv_c_attribute_packed=yes])])
946 if test "${ac_cv_c_attribute_packed}" != "no"; then
947 AC_DEFINE(HAVE_ATTRIBUTE_PACKED, 1, Support for __attribute__((packed)) for structs)
953 case "${target_cpu}" in
966 [ --enable-gprof gprof profiling (default disabled)])
968 [ --enable-cprof cprof profiling (default disabled)])
969 test "${enable_gprof}" != "yes" && enable_gprof="no"
970 test "${enable_cprof}" != "yes" && enable_cprof="no"
975 VLC_ADD_PLUGINS([dummy logger memcpy])
976 VLC_ADD_PLUGINS([mpgv mpga m4v m4a h264 ps pva avi asf mp4 rawdv nsv real aiff mjpeg demuxdump flac])
977 VLC_ADD_PLUGINS([cvdsub svcdsub spudec subsdec dvbsub mpeg_audio lpcm a52 dts cinepak flacdec])
978 VLC_ADD_PLUGINS([deinterlace invert adjust transform distort motionblur])
979 VLC_ADD_PLUGINS([fixed32tos16 s16tofixed32 u8tofixed32])
980 VLC_ADD_PLUGINS([trivial_resampler ugly_resampler])
981 VLC_ADD_PLUGINS([trivial_channel_mixer trivial_mixer])
982 VLC_ADD_PLUGINS([playlist export sgimb m3u xtag])
983 VLC_ADD_PLUGINS([i420_rgb rawvideo blend scale image logo])
984 VLC_ADD_PLUGINS([wav araw subtitle vobsub adpcm a52sys dtssys au ty voc xa nuv])
985 VLC_ADD_PLUGINS([access_directory access_file access_udp access_tcp])
986 VLC_ADD_PLUGINS([access_http access_mms access_ftp ipv4])
987 VLC_ADD_PLUGINS([packetizer_mpegvideo packetizer_h264])
988 VLC_ADD_PLUGINS([packetizer_mpeg4video packetizer_mpeg4audio])
990 if test "${SYS}" != "mingwce"; then
991 dnl VLC_ADD_PLUGINS([externrun])
992 VLC_ADD_PLUGINS([access_fake access_filter_timeshift access_filter_record])
993 VLC_ADD_PLUGINS([gestures rc telnet hotkeys netsync showintf time marq sap shout fake])
994 VLC_ADD_PLUGINS([mosaic wall motiondetect clone crop])
995 VLC_ADD_PLUGINS([i420_yuy2 i422_yuy2 i420_ymga])
996 VLC_ADD_PLUGINS([aout_file linear_resampler bandlimited_resampler])
997 VLC_ADD_PLUGINS([float32_mixer spdif_mixer simple_channel_mixer])
998 VLC_ADD_PLUGINS([headphone_channel_mixer normvol equalizer])
999 VLC_ADD_PLUGINS([fixed32tofloat32 float32tos16 float32tos8 float32tou16 float32tou8 a52tospdif dtstospdif s16tofloat32 s16tofloat32swab s8tofloat32 u8tofloat32 audio_format])
1003 dnl Switch to enable a version of VLC where most modules will be builtin
1005 AC_ARG_ENABLE(mostly-builtin,
1006 [ --enable-mostly-builtin most modules will be built-in (default disabled)])
1007 if test "${enable_mostly_builtin}" = "yes"; then
1008 VLC_ADD_BUILTINS([${PLUGINS}])
1013 dnl Some plugins aren't useful on some platforms
1015 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
1016 VLC_ADD_PLUGINS([screensaver])
1017 elif test "${SYS}" != "mingwce"; then
1018 VLC_ADD_PLUGINS([ntservice access_smb dmo])
1019 VLC_ADD_LDFLAGS([dmo],[-lole32])
1021 VLC_ADD_PLUGINS([win32text])
1025 dnl Accelerated modules
1027 MMX_MODULES="memcpymmx i420_rgb_mmx i422_yuy2_mmx i420_ymga_mmx"
1028 #MMX_MODULES="${MMX_MODULES} idctmmx motionmmx"
1029 MMXEXT_MODULES="memcpymmxext"
1030 #MMXEXT_MODULES="${MMXEXT_MODULES} idctmmxext motionmmxext"
1031 THREEDNOW_MODULES="memcpy3dn"
1033 ALTIVEC_MODULES="memcpyaltivec i420_yuy2_altivec"
1034 #ALTIVEC_MODULES="${ALTIVEC_MODULES} idctaltivec motionaltivec"
1036 if test "${enable_gprof}" != "yes"
1038 MMX_MODULES="${MMX_MODULES} i420_yuy2_mmx"
1041 AC_CACHE_CHECK([if \$CC groks MMX inline assembly],
1043 [CFLAGS="${CFLAGS_save}"
1044 AC_TRY_COMPILE(,[void *p;asm volatile("packuswb %%mm1,%%mm2"::"r"(p));],
1045 ac_cv_mmx_inline=yes, ac_cv_mmx_inline=no)])
1046 if test "${ac_cv_mmx_inline}" != "no"; then
1047 AC_DEFINE(CAN_COMPILE_MMX, 1, Define if \$CC groks MMX inline assembly.)
1048 ACCEL_MODULES="${ACCEL_MODULES} ${MMX_MODULES}"
1051 AC_CACHE_CHECK([if \$CC groks MMX EXT inline assembly],
1052 [ac_cv_mmxext_inline],
1053 [CFLAGS="${CFLAGS_save}"
1054 AC_TRY_COMPILE(,[void *p;asm volatile("maskmovq %%mm1,%%mm2"::"r"(p));],
1055 ac_cv_mmxext_inline=yes, ac_cv_mmxext_inline=no)])
1056 if test "${ac_cv_mmxext_inline}" != "no"; then
1057 AC_DEFINE(CAN_COMPILE_MMXEXT, 1, Define if \$CC groks MMX EXT inline assembly.)
1058 ACCEL_MODULES="${ACCEL_MODULES} ${MMXEXT_MODULES}"
1061 AC_CACHE_CHECK([if \$CC groks 3D Now! inline assembly],
1062 [ac_cv_3dnow_inline],
1063 [CFLAGS="${CFLAGS_save}"
1064 AC_TRY_COMPILE(,[void *p;asm volatile("pfadd %%mm1,%%mm2"::"r"(p));],
1065 ac_cv_3dnow_inline=yes, ac_cv_3dnow_inline=no)])
1066 if test "${ac_cv_3dnow_inline}" != "no"; then
1067 AC_DEFINE(CAN_COMPILE_3DNOW, 1, Define if \$CC groks 3D Now! inline assembly.)
1068 ACCEL_MODULES="${ACCEL_MODULES} ${THREEDNOW_MODULES}"
1071 AC_CACHE_CHECK([if \$CC groks SSE inline assembly],
1073 [CFLAGS="${CFLAGS_save}"
1074 AC_TRY_COMPILE(,[void *p;asm volatile("xorps %%xmm1,%%xmm2"::"r"(p));],
1075 ac_cv_sse_inline=yes, ac_cv_sse_inline=no)])
1076 if test "${ac_cv_sse_inline}" != "no" -a "${SYS}" != "mingw32" -a "${SYS}" != "solaris"; then
1077 AC_DEFINE(CAN_COMPILE_SSE, 1, Define if \$CC groks SSE inline assembly.)
1078 ACCEL_MODULES="${ACCEL_MODULES} ${SSE_MODULES}"
1081 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
1082 AC_CACHE_CHECK([if \$CC groks AltiVec inline assembly],
1083 [ac_cv_altivec_inline],
1084 [CFLAGS="${CFLAGS_save}"
1085 AC_TRY_COMPILE(,[asm volatile("vperm 0,1,2,3");],
1086 ac_cv_altivec_inline=yes,
1087 [CFLAGS="${CFLAGS_save} -Wa,-m7400"
1088 AC_TRY_COMPILE(,[asm volatile("vperm 0,1,2,3");],
1089 [ac_cv_altivec_inline="-Wa,-m7400"],
1090 ac_cv_altivec_inline=no)
1092 if test "${ac_cv_altivec_inline}" != "no"; then
1093 AC_DEFINE(CAN_COMPILE_ALTIVEC, 1, Define if \$CC groks AltiVec inline assembly.)
1094 if test "${ac_cv_altivec_inline}" != "yes"; then
1095 VLC_ADD_CFLAGS([idctaltivec],[${ac_cv_altivec_inline}])
1096 VLC_ADD_CFLAGS([motionaltivec],[${ac_cv_altivec_inline}])
1097 VLC_ADD_CFLAGS([memcpyaltivec],[${ac_cv_altivec_inline}])
1098 VLC_ADD_CFLAGS([i420_yuy2_altivec],[${ac_cv_altivec_inline}])
1099 VLC_ADD_CFLAGS([vlc],[${ac_cv_altivec_inline}])
1101 ACCEL_MODULES="${ACCEL_MODULES} ${ALTIVEC_MODULES}"
1104 AC_CACHE_CHECK([if \$CC groks AltiVec C extensions],
1107 CFLAGS="${CFLAGS_save} -faltivec"
1109 [vec_ld(0, (unsigned char *)0);],
1110 [ac_cv_c_altivec="-faltivec"],
1111 [# Linux/PPC test (no flags)
1112 CFLAGS="${CFLAGS_save} ${CFLAGS_idctaltivec} -maltivec -mabi=altivec"
1113 AC_TRY_COMPILE([#ifdef HAVE_ALTIVEC_H
1114 #include <altivec.h>
1116 [vec_ld(0, (unsigned char *)0);],
1118 ac_cv_c_altivec_abi="-maltivec -mabi=altivec"],
1119 [# Linux/PPC test (old GCC versions)
1120 CFLAGS="${CFLAGS_save} ${CFLAGS_idctaltivec} -fvec"
1121 AC_TRY_COMPILE([#ifdef HAVE_ALTIVEC_H
1122 #include <altivec.h>
1124 [vec_ld(0, (unsigned char *)0);],
1125 [ac_cv_c_altivec="-fvec"],
1126 [ac_cv_c_altivec=no])
1129 CFLAGS="${CFLAGS_save}"])
1130 if test "${ac_cv_c_altivec}" != "no"; then
1131 AC_DEFINE(CAN_COMPILE_C_ALTIVEC, 1, Define if your compiler groks C AltiVec extensions.)
1132 VLC_ADD_CFLAGS([vlc],[${ac_cv_c_altivec}])
1133 VLC_ADD_CFLAGS([idctaltivec motionaltivec],[${ac_cv_c_altivec}])
1134 VLC_ADD_CFLAGS([i420_yuy2_altivec memcpyaltivec deinterlace],[${ac_cv_c_altivec} ${ac_cv_c_altivec_abi}])
1135 ACCEL_MODULES="${ACCEL_MODULES} ${ALTIVEC_MODULES}"
1138 AC_CACHE_CHECK([if linker needs -framework vecLib],
1140 [LDFLAGS="${LDFLAGS_vlc} -framework vecLib"
1141 AC_TRY_LINK([],,ac_cv_ld_altivec=yes,ac_cv_ld_altivec=no)
1142 LDFLAGS="${LDFLAGS_save}"
1144 if test "${ac_cv_ld_altivec}" != "no"; then
1145 VLC_ADD_LDFLAGS([vlc idctaltivec motionaltivec memcpyaltivec],[-framework vecLib])
1147 fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
1150 AC_ARG_WITH(,[Optimization options:])
1153 dnl Special arch tuning
1156 [ --with-tuning=ARCH enable special tuning for an architecture
1157 (default Pentium 2 on IA-32 and 750 on PPC)])
1158 if test -n "${with_tuning}"; then
1159 CFLAGS_TUNING="-mtune=${with_tuning}"
1161 if test "${target_cpu}" = "i686" -o "${target_cpu}" = "i586" -o "${target_cpu}" = "i486" -o "${target_cpu}" = "i386"; then
1162 CFLAGS_TUNING="-mtune=pentium2"
1163 elif test "${target_cpu}" = "x86_64"; then
1164 CFLAGS_TUNING="-mtune=opteron"
1165 elif test "${target_cpu}" = "powerpc"; then
1166 CFLAGS_TUNING="-mtune=750";
1169 dnl NOTE: this can't be cached cleanly
1170 AS_IF([test "${CFLAGS_TUNING}"],
1171 [CFLAGS_save="${CFLAGS}"
1172 CFLAGS="${CFLAGS} ${CFLAGS_TUNING}"
1174 AC_MSG_CHECKING([whether $CC accepts ${CFLAGS_TUNING}])
1175 AC_COMPILE_IFELSE([ ], [tuning="yes"],
1176 [CFLAGS_TUNING=""; tuning="no"])
1178 AC_MSG_RESULT([$tuning])
1179 CFLAGS="${CFLAGS_save}"
1184 dnl x86 accelerations
1186 if test "${target_cpu}" = "i686" -o "${target_cpu}" = "i586" -o "${target_cpu}" = "x86" -o "${target_cpu}" = "i386" -o "${target_cpu}" = "x86_64"
1189 VLC_ADD_BUILTINS([${ACCEL_MODULES}])
1195 AC_ARG_ENABLE(optimize-memory,
1196 [ --enable-optimize-memory optimize memory usage over performance])
1197 if test "${enable_optimize_memory}" = "yes"; then
1198 AC_DEFINE(OPTIMIZE_MEMORY, 1, Define if you want to optimize memory usage over performance)
1202 dnl Enable/disable optimizations
1204 AC_ARG_ENABLE(optimizations,
1205 [ --disable-optimizations disable compiler optimizations (default enabled)])
1206 test "${enable_optimizations}" != "no" && enable_optimizations="yes"
1209 dnl AltiVec acceleration
1211 AC_ARG_ENABLE(altivec,
1212 [ --disable-altivec disable AltiVec optimizations (default enabled on PPC)],
1213 [ if test "${enable_altivec}" = "yes"; then ARCH="${ARCH} altivec";
1214 VLC_ADD_BUILTINS([${ACCEL_MODULES}]) fi ],
1215 [ if test "${target_cpu}" = "powerpc"; then ARCH="${ARCH} altivec";
1216 VLC_ADD_BUILTINS([${ACCEL_MODULES}]) fi ])
1221 AC_ARG_ENABLE(debug,
1222 [ --enable-debug debug mode (default disabled)])
1223 test "${enable_debug}" != "yes" && enable_debug="no"
1226 dnl Enable release-specific flags
1228 AC_ARG_ENABLE(release,
1229 [ --enable-release activate extra optimizations (default disabled)])
1230 test "${enable_release}" != "yes" && enable_release="no"
1236 [ --enable-sout Stream output modules (default enabled)])
1237 if test "${enable_sout}" != "no"
1239 VLC_ADD_PLUGINS([access_output_dummy access_output_udp access_output_file access_output_http])
1240 VLC_ADD_PLUGINS([mux_ps mux_avi mux_mp4 mux_asf mux_dummy mux_wav mux_mpjpeg])
1241 VLC_ADD_PLUGINS([packetizer_copy])
1243 VLC_ADD_PLUGINS([stream_out_dummy stream_out_standard stream_out_es stream_out_rtp stream_out_description vod_rtsp])
1244 VLC_ADD_PLUGINS([stream_out_duplicate stream_out_gather stream_out_display stream_out_transcode stream_out_bridge stream_out_mosaic_bridge])
1245 # VLC_ADD_PLUGINS([stream_out_transrate])
1247 AC_DEFINE(ENABLE_SOUT, 1, Define if you want the stream output support)
1253 AC_ARG_ENABLE(httpd,
1254 [ --enable-httpd HTTP daemon (default enabled)])
1255 if test "${enable_httpd}" != "no"
1257 VLC_ADD_PLUGINS([http])
1258 AC_DEFINE(ENABLE_HTTPD, 1, Define if you want the HTTP dameon support)
1262 dnl VideoLAN manager
1265 [ --enable-vlm VideoLAN manager (default enabled)])
1266 if test "${enable_vlm}" != "no"
1268 AC_DEFINE(ENABLE_VLM, 1, Define if you want the VideoLAN manager support)
1274 AC_ARG_ENABLE(gnutls,
1275 [ --enable-gnutls gnutls TLS/SSL support (default enabled)])
1276 AS_IF([test "${enable_gnutls}" != "no"], [
1278 gcrypt_LIBS="-lgpg-error"
1279 AS_IF([test "${SYS}" = "mingw32"],
1280 [gcrypt_LIBS="${gcrypt_LIBS} -lws2_32"
1281 VLC_ADD_LDFLAGS([gnutls],[-lws2_32])]
1284 gnutls_LIBS="-lgcrypt -lz ${gcrypt_LIBS}"
1286 AC_CHECK_HEADER(gcrypt.h,
1287 [AC_CHECK_LIB(gcrypt, gcry_control,
1288 [AC_CHECK_HEADER(gnutls/gnutls.h,
1289 [AC_CHECK_LIB(gnutls, gnutls_certificate_verify_peers2,
1290 [have_gnutls="yes"],[old_gnutls="yes"], ${gnutls_LIBS})])],,
1293 AS_IF([test "${have_gnutls}" = "yes"], [
1294 VLC_ADD_PLUGINS([gnutls])
1295 VLC_ADD_LDFLAGS([gnutls], [-lgnutls ${gnutls_LIBS}])
1297 AS_IF([test "${enable_gnutls}" = "yes"], [
1298 AC_MSG_ERROR([gnutls not present or too old (version 1.0.17 required)])]
1308 AC_ARG_WITH(,[Input plugins:])
1312 AC_ARG_ENABLE(livedotcom,
1313 [ --enable-livedotcom live.com input plugin (default disabled)])
1314 if test "${enable_livedotcom}" = "yes"; then
1315 AC_ARG_WITH(livedotcom-tree,
1316 [ --with-livedotcom-tree=PATH live.com tree for static linking])
1319 dnl test for --with-livedotcom-tree
1321 if test -z "${with_livedotcom_tree}" -a "${CXX}" != ""; then
1323 CPPFLAGS_save="${CPPFLAGS}"
1324 CPPFLAGS_livedotcom="-I/usr/include/liveMedia -I/usr/include/groupsock -I/usr/include/BasicUsageEnvironment -I/usr/include/UsageEnvironment"
1325 CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_livedotcom}"
1326 AC_CHECK_HEADERS(liveMedia.hh, [
1327 VLC_ADD_CXXFLAGS([livedotcom], [${CPPFLAGS_livedotcom}])
1328 AC_CHECK_LIB(liveMedia_pic, main, [
1329 # We have -lliveMedia_pic, build plugins
1330 VLC_ADD_PLUGINS([livedotcom])
1331 VLC_ADD_LDFLAGS([livedotcom], [-lliveMedia_pic -lgroupsock_pic -lBasicUsageEnvironment_pic -lUsageEnvironment_pic])
1333 AC_CHECK_LIB(liveMedia, main, [
1334 # We only have -lliveMedia, do builtins
1335 VLC_ADD_BUILTINS([livedotcom])
1336 VLC_ADD_LDFLAGS([livedotcom], [-lliveMedia -lgroupsock -lBasicUsageEnvironment -lUsageEnvironment])
1339 if test "${SYS}" = "mingw32"; then
1340 # add ws2_32 for closesocket, select, recv
1341 VLC_ADD_LDFLAGS([livedotcom],[-lws2_32])
1344 CPPFLAGS="${CPPFLAGS_save}"
1347 AC_MSG_CHECKING(for liveMedia/libliveMedia.a in ${with_livedotcom_tree})
1348 real_livedotcom_tree="`cd ${with_livedotcom_tree} 2>/dev/null && pwd`"
1349 if test -z "${real_livedotcom_tree}"; then
1350 dnl The given directory can't be found
1352 AC_MSG_ERROR([cannot cd to ${with_livedotcom_tree}])
1354 if test -f "${real_livedotcom_tree}/liveMedia/libliveMedia.a"; then
1355 AC_MSG_RESULT(${real_livedotcom_tree}/liveMedia/libliveMedia.a)
1357 VLC_ADD_BUILTINS([livedotcom])
1359 if test "${SYS}" = "mingw32"; then
1360 # add ws2_32 for closesocket, select, recv
1361 VLC_ADD_LDFLAGS([livedotcom],[-lws2_32])
1364 VLC_ADD_LDFLAGS([livedotcom],[-L${real_livedotcom_tree}/liveMedia -lliveMedia])
1365 VLC_ADD_LDFLAGS([livedotcom],[-L${real_livedotcom_tree}/BasicUsageEnvironment -lBasicUsageEnvironment])
1366 VLC_ADD_LDFLAGS([livedotcom],[-L${real_livedotcom_tree}/groupsock -lgroupsock])
1367 VLC_ADD_LDFLAGS([livedotcom],[-L${real_livedotcom_tree}/UsageEnvironment -lUsageEnvironment])
1369 VLC_ADD_CXXFLAGS([livedotcom],[-I${real_livedotcom_tree}/BasicUsageEnvironment/include])
1370 VLC_ADD_CXXFLAGS([livedotcom],[-I${real_livedotcom_tree}/groupsock/include])
1371 VLC_ADD_CXXFLAGS([livedotcom],[-I${real_livedotcom_tree}/liveMedia/include])
1372 VLC_ADD_CXXFLAGS([livedotcom],[-I${real_livedotcom_tree}/UsageEnvironment/include ])
1374 dnl The given live.com wasn't built
1376 AC_MSG_ERROR([cannot find ${real_livedotcom_tree}/liveMedia/libliveMedia.a, make sure you compiled live.com in ${with_livedotcom_tree}])
1383 dnl dvdread module: check for libdvdread
1385 AC_ARG_ENABLE(dvdread,
1386 [ --enable-dvdread dvdread input module (default disabled)])
1387 if test "${enable_dvdread}" != "no"
1389 AC_ARG_WITH(dvdread,
1390 [ --with-dvdread=PATH libdvdread headers and libraries])
1391 AC_ARG_WITH(dvdread-tree,
1392 [ --with-dvdread-tree=PATH libdvdread tree for static linking])
1394 dnl Temporary hack (yeah, sure ;)
1395 if test "${SYS}" = "mingw32" || test "${SYS}" = "darwin" || test "${SYS}" = "beos" ; then
1396 VLC_ADD_LDFLAGS([dvdread],[-ldvdcss])
1399 if test -z "${with_dvdread}"
1401 if test -z "${with_dvdread_tree}"
1403 AC_CHECK_HEADERS(dvdread/dvd_reader.h,
1404 [ VLC_ADD_PLUGINS([dvdread])
1405 VLC_ADD_LDFLAGS([dvdread],[-ldvdread ${LDFLAGS_dvdcss}])
1407 if test -n "${enable_dvdread}"
1409 AC_MSG_ERROR([cannot find libdvdread headers])
1413 AC_MSG_CHECKING(for libdvdread.a in ${with_dvdread_tree})
1414 real_dvdread_tree="`cd ${with_dvdread_tree} 2>/dev/null && pwd`"
1415 if test -z "${real_dvdread_tree}"
1417 dnl The given directory can't be found
1419 AC_MSG_ERROR([cannot cd to ${with_dvdread_tree}])
1421 if test -f "${real_dvdread_tree}/dvdread/.libs/libdvdread.a"
1423 dnl Use a custom libdvdread
1424 AC_MSG_RESULT(${real_dvdread_tree}/dvdread/.libs/libdvdread.a)
1425 VLC_ADD_BUILTINS([dvdread])
1426 VLC_ADD_LDFLAGS([dvdread],[-L${real_dvdread_tree}/dvdread/.libs -ldvdread ${LDFLAGS_dvdcss}])
1427 VLC_ADD_CPPFLAGS([dvdread],[-I${real_dvdread_tree}])
1429 dnl The given libdvdread wasn't built
1431 AC_MSG_ERROR([cannot find ${real_dvdread_tree}/dvdread/.libs/libdvdread.a, make sure you compiled libdvdread in ${with_dvdread_tree}])
1435 AC_MSG_CHECKING(for dvdread headers in ${with_dvdread})
1436 if test -f ${with_dvdread}/include/dvdread/dvd_reader.h
1438 dnl Use ${with_dvdread}/include/dvdread/dvd_reader.h
1440 VLC_ADD_PLUGINS([dvdread])
1441 VLC_ADD_LDFLAGS([dvdread],[-L${with_dvdread}/lib -ldvdread ${LDFLAGS_dvdcss}])
1442 VLC_ADD_CPPFLAGS([dvdread],[-I${with_dvdread}/include])
1444 dnl No libdvdread could be found, sorry
1446 AC_MSG_ERROR([cannot find ${with_dvdread}/include/dvdread/dvd_reader.h])
1452 dnl libdvdnav plugin
1454 AC_ARG_ENABLE(dvdnav,
1455 [ --enable-dvdnav dvdnav input module (default enabled)])
1456 if test "${enable_dvdnav}" != "no"
1458 dnl Same hack than dvdread
1459 if test "${SYS}" = "mingw32" || test "${SYS}" = "darwin" || test "${SYS}" = "beos" ; then
1460 VLC_ADD_LDFLAGS([dvdnav],[-ldvdcss])
1463 DVDNAV_PATH="${PATH}"
1464 AC_ARG_WITH(dvdnav-config-path,
1465 [ --with-dvdnav-config-path=PATH dvdnav-config path (default search in \$PATH)],
1466 [ if test "${with_dvdnav_config_path}" != "no"
1468 DVDNAV_PATH="${with_dvdnav_config_path}:${PATH}"
1470 AC_PATH_PROG(DVDNAV_CONFIG, dvdnav-config, no, ${DVDNAV_PATH})
1471 if test "${DVDNAV_CONFIG}" != "no"
1473 VLC_ADD_PLUGINS([dvdnav])
1474 VLC_ADD_CFLAGS([dvdnav],[`${DVDNAV_CONFIG} --cflags`])
1475 VLC_ADD_LDFLAGS([dvdnav],[`${DVDNAV_CONFIG} --libs`])
1480 dnl Windows DirectShow access module
1482 AC_ARG_ENABLE(dshow,
1483 [ --enable-dshow Win32 DirectShow support (default enabled on Win32)])
1484 if test "${enable_dshow}" != "no"
1486 if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"
1488 AC_CHECK_HEADERS(dshow.h,
1489 [ VLC_ADD_PLUGINS([dshow])
1490 VLC_ADD_CXXFLAGS([dshow],[])
1491 VLC_ADD_LDFLAGS([dshow],[-lole32 -loleaut32 -luuid]) ])
1496 dnl libsmbclient plugin
1499 [ --enable-smb smb input module (default enabled)])
1500 if test "${enable_smb}" != "no"; then
1501 AC_CHECK_HEADERS(libsmbclient.h,
1502 [ VLC_ADD_PLUGINS([access_smb])
1503 VLC_ADD_LDFLAGS([access_smb],[-lsmbclient]) ],
1504 [ if test -n "${enable_smb}"; then
1505 AC_MSG_ERROR([cannot find libsmbclient headers])
1510 dnl libdvbpsi ts demux/mux
1512 AC_ARG_ENABLE(dvbpsi,
1513 [ --enable-dvbpsi dvbpsi ts mux and demux module (default enabled)])
1514 if test "${enable_dvbpsi}" != "no"
1517 [ --with-dvbpsi=PATH libdvbpsi headers and libraries])
1519 [ --with-dvbpsi-tree=PATH libdvbpsi tree for static linking])
1520 case "${with_dvbpsi}" in
1522 if test -z "${with_dvbpsi_tree}"
1524 AC_CHECK_HEADERS(dvbpsi/dr.h,
1525 [ VLC_ADD_PLUGINS([ts])
1526 if test "${enable_sout}" != "no"; then
1527 VLC_ADD_BUILTINS([mux_ts])
1529 VLC_ADD_LDFLAGS([mux_ts ts dvb],[-ldvbpsi]) ],
1530 [ AC_MSG_WARN([cannot find libdvbpsi headers]) ],
1531 [#if defined( HAVE_STDINT_H )
1532 # include <stdint.h>
1533 #elif defined( HAVE_INTTYPES_H )
1534 # include <inttypes.h>
1536 #include <dvbpsi/dvbpsi.h>
1537 #include <dvbpsi/descriptor.h>
1538 #include <dvbpsi/pat.h>
1539 #include <dvbpsi/pmt.h>])
1541 AC_MSG_CHECKING(for libdvbpsi.a in ${with_dvbpsi_tree})
1542 real_dvbpsi_tree="`cd ${with_dvbpsi_tree} 2>/dev/null && pwd`"
1543 if test -z "${real_dvbpsi_tree}"
1545 dnl The given directory can't be found
1547 AC_MSG_ERROR([cannot cd to ${with_dvbpsi_tree}])
1549 if test -f "${real_dvbpsi_tree}/src/.libs/libdvbpsi.a"
1551 dnl Use a custom libdvbpsi
1552 AC_MSG_RESULT(${real_dvbpsi_tree}/src/.libs/libdvbpsi.a)
1553 VLC_ADD_BUILTINS([ts])
1554 if test "${enable_sout}" != "no"; then
1555 VLC_ADD_BUILTINS([mux_ts])
1557 VLC_ADD_CPPFLAGS([mux_ts ts dvb],[-I${real_dvbpsi_tree}/src])
1558 VLC_ADD_LDFLAGS([mux_ts ts dvb],[-L${real_dvbpsi_tree}/src/.libs -ldvbpsi])
1560 dnl The given libdvbpsi wasn't built
1562 AC_MSG_ERROR([cannot find ${real_dvbpsi_tree}/src/.libs/libdvbpsi.a, make sure you compiled libdvbpsi in ${with_dvbpsi_tree}])
1567 dnl Compile without dvbpsi
1570 AC_MSG_CHECKING(for dvbpsi headers in ${with_dvbpsi})
1571 if test -z "${with_dvbpsi}"
1576 LDFLAGS_test="-L${with_dvbpsi}/lib"
1577 CPPFLAGS_test="-I${with_dvbpsi}/include"
1579 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_test}"
1580 AC_CHECK_HEADERS([dvbpsi/dr.h],[
1581 VLC_ADD_PLUGINS([ts])
1582 if test "${enable_sout}" != "no"; then
1583 VLC_ADD_PLUGINS([mux_ts])
1585 VLC_ADD_CPPFLAGS([mux_ts ts dvb],[${CPPFLAGS_test}])
1586 VLC_ADD_LDFLAGS([mux_ts ts dvb],[${LDFLAGS_test} -ldvbpsi])
1589 if test -n "${enable_dvbpsi}"
1591 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])
1594 CPPFLAGS="${CPPFLAGS_save}"
1600 dnl Video4Linux plugin
1603 [ --enable-v4l Video4Linux input support (default disabled)])
1604 if test "${enable_v4l}" = "yes"
1607 [ --with-v4l=PATH path to a v4l-enabled kernel tree],[],[])
1608 if test "${with_v4l}" != "no" -a -n "${with_v4l}"
1610 VLC_ADD_CPPFLAGS([v4l],[-I${with_v4l}/include])
1613 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_v4l}"
1614 AC_CHECK_HEADERS(linux/videodev.h, [
1615 VLC_ADD_PLUGINS([v4l])
1617 CPPFLAGS="${CPPFLAGS_save}"
1621 dnl special access module for Hauppauge PVR cards
1624 [ --enable-pvr PVR cards access module (default disabled)])
1625 if test "${enable_pvr}" = "yes"
1627 VLC_ADD_PLUGINS([pvr])
1630 dnl Need to test libcdio and libvcdinfo for a number of things. Do it now.
1631 AC_ARG_ENABLE(libcdio,
1632 [ --enable-libcdio CD input and control library support (default enabled)])
1636 if test "${enable_libcdio}" != "no"
1638 PKG_CHECK_MODULES(LIBCDIO, libcdio >= 0.72,
1640 AC_DEFINE(HAVE_LIBCDIO, [],
1641 [Define if you have libcdio 0.72 or greater installed]),
1642 [AC_MSG_WARN(CD Reading and information library not found)])
1644 PKG_CHECK_MODULES(VCDINFO, libvcdinfo >= 0.7.21,
1645 [have_libvcdinfo=yes
1646 AC_DEFINE(HAVE_VCDINFO, [],
1647 [Define if you have libvcdinfo 0.7.21 or greater installed])],
1648 [AC_MSG_WARN(VCD information library not found)])
1652 dnl VCDX and CDDAX modules
1654 AC_ARG_ENABLE(cddax,
1655 [ --enable-cddax audio CD plugin with CD Text and CD paranoia via libcdio (default disabled)])
1657 AC_ARG_ENABLE(libcddb,
1658 [ --enable-libcddb CDDB support for libcdio audio CD (default enabled)])
1660 if test "${enable_cddax}" = "yes"
1662 if test "$have_libcdio" = "yes"
1664 AC_DEFINE(HAVE_CDDAX, [], [Define for the audio CD plugin using libcdio])
1665 VLC_ADD_LDFLAGS([cddax],[$LIBCDIO_LIBS $LIBCDIO_CDDA_LIBS $LIBCDIO_PARANOIA_LIBS])
1666 VLC_ADD_CFLAGS([cddax],[$LIBCDIO_CFLAGS])
1667 VLC_ADD_PLUGINS([cddax])
1669 AC_MSG_WARN([cddax plugin disabled because ok libcdio library not found or disabled])
1673 if test "$enable_libcddb" != "no"; then
1674 PKG_CHECK_MODULES(LIBCDDB, libcddb >= 0.9.5, [
1676 AC_DEFINE(HAVE_LIBCDDB, [], [Define this if you have libcddb installed])
1677 VLC_ADD_LDFLAGS([cddax],[$LIBCDDB_LIBS])
1678 VLC_ADD_CFLAGS([cddax],[$LIBCDDB_CFLAGS])
1680 [AC_MSG_WARN(new enough libcddb not found. CDDB access disabled)
1687 [ --enable-vcdx VCD with navigation via libvcdinfo (default disabled)])
1689 if test "${enable_vcdx}" = "yes"
1691 if test "${have_libvcdinfo}" = "yes"
1693 VLC_ADD_LDFLAGS([vcdx],[$VCDINFO_LIBS])
1694 VLC_ADD_CFLAGS([vcdx],[$VCDINFO_CFLAGS])
1696 AC_MSG_WARN([vcdx plugin disabled because ok libvcdinfo library not found or disabled])
1700 PKG_CHECK_MODULES(LIBCDIO, libiso9660 >= 0.72,
1701 [VLC_ADD_LDFLAGS([vcdx],[$LIBISO9660_LIBS])
1702 VLC_ADD_CFLAGS([vcdx],[$LIBISO9660_CFLAGS])],
1703 [AC_MSG_WARN([vcdx plugin disabled because ok libiso9660 library not found])
1706 if test "$have_libvcdinfo" = "yes"
1708 AC_DEFINE(HAVE_VCDX, [],
1709 [Define for the VCD plugin using libcdio/libvcdinfo])
1710 VLC_ADD_LDFLAGS([vcdx],[$VCDINFO_LIBS])
1711 VLC_ADD_CFLAGS([vcdx],[$VCDINFO_CFLAGS])
1712 VLC_ADD_PLUGINS([vcdx])
1714 AC_MSG_WARN([vcdx plugin disabled because ok libvcdinfo library not found])
1720 dnl Built-in CD-DA and VCD module
1723 [ --enable-cdda audio CD via built-in VCD (default enabled)])
1726 [ --enable-vcd built-in VCD (default enabled)])
1728 if test "${enable_vcd}" != "no"
1730 AC_MSG_CHECKING(for cdrom_msf0 in linux/cdrom.h)
1731 AC_EGREP_HEADER(cdrom_msf0,linux/cdrom.h,[
1733 VLC_ADD_PLUGINS([vcd cdda])
1738 AC_MSG_CHECKING(for scsireq in sys/scsiio.h)
1739 AC_EGREP_HEADER(scsireq,sys/scsiio.h,[
1741 VLC_ADD_PLUGINS([vcd cdda])
1742 AC_DEFINE(HAVE_SCSIREQ_IN_SYS_SCSIIO_H, 1, For NetBSD VCD support)
1747 AC_MSG_CHECKING(for ioc_toc_header in sys/cdio.h)
1748 AC_EGREP_HEADER(ioc_toc_header ,sys/cdio.h,[
1750 VLC_ADD_PLUGINS([vcd cdda])
1751 AC_DEFINE(HAVE_IOC_TOC_HEADER_IN_SYS_CDIO_H, 1, For FreeBSD VCD support)
1756 if test "${SYS}" = "bsdi" -o "${SYS}" = "mingw32"
1758 VLC_ADD_PLUGINS([vcd cdda])
1761 if test "${SYS}" = "darwin"
1763 VLC_ADD_PLUGINS([vcd cdda])
1764 VLC_ADD_LDFLAGS([vcd vcdx cdda cddax],[-framework IOKit -framework CoreFoundation])
1765 VLC_ADD_LDFLAGS([vcdx cddax],[-liconv])
1770 dnl Satellite input module
1772 AC_ARG_ENABLE(satellite,
1773 [ --enable-satellite satellite card support (default disabled)],
1774 [ if test "${enable_satellite}" = "yes"
1776 AC_DEFINE(HAVE_SATELLITE, [],
1777 [Define for the satellite plugin])
1778 VLC_ADD_PLUGINS([satellite])
1782 dnl DVB-S/DVB-T/DVB-C satellite/teresterial/cable input using v4l2
1785 [ --enable-dvb DVB-S/T/C card support (default disabled)])
1787 if test "${enable_dvb}" = "yes"
1790 [ --with-dvb=PATH path to a dvb- and v4l2-enabled kernel tree],[],[])
1791 if test "${with_dvb}" != "no" -a -n "${with_dvb}"
1793 VLC_ADD_CFLAGS([dvb],[-I${with_dvb}/include])
1795 CPPFLAGS="${CPPFLAGS_save} -I${with_dvb}/include"
1796 AC_CHECK_HEADERS(linux/dvb/version.h linux/dvb/frontend.h, [
1797 if test -z "${with_dvbpsi_tree}"
1799 VLC_ADD_PLUGINS([dvb])
1801 VLC_ADD_BUILTINS([dvb])
1804 CPPFLAGS="${CPPFLAGS_save}"
1808 dnl Screen capture module
1810 AC_ARG_ENABLE(screen,
1811 [ --enable-screen Screen capture support (default enabled)])
1812 if test "${enable_screen}" != "no"; then
1813 if test "${SYS}" = "darwin"; then
1814 AC_CHECK_HEADERS(ApplicationServices/ApplicationServices.h, [
1815 VLC_ADD_PLUGINS([screen])
1816 VLC_ADD_LDFLAGS([screen],[-framework ApplicationServices])
1818 elif test "${SYS}" = "mingw32"; then
1819 VLC_ADD_PLUGINS([screen])
1820 VLC_ADD_LDFLAGS([screen],[-lgdi32])
1821 elif test "${SYS}" = "mingwce"; then
1822 CPPFLAGS="${CPPFLAGS_save}"
1823 elif test "${SYS}" = "beos"; then
1824 VLC_ADD_PLUGINS([screen])
1825 VLC_ADD_CXXFLAGS([screen],[])
1826 VLC_ADD_LDFLAGS([screen],[-lbe])
1828 CPPFLAGS="${CPPFLAGS_save} -I${x_includes}"
1829 AC_CHECK_HEADERS(X11/Xlib.h, [
1830 VLC_ADD_PLUGINS([screen])
1831 VLC_ADD_LDFLAGS([screen],[-L${x_libraries} -lX11 -lXext])
1832 VLC_ADD_CPPFLAGS([screen],[-I${x_includes}])
1834 CPPFLAGS="${CPPFLAGS_save}"
1839 dnl ipv6 plugin - not for QNX yet
1841 if test "${SYS}" != "nto" &&
1842 test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
1845 AC_CHECK_FUNCS(inet_pton,[have_ipv6=:],[
1846 AC_CHECK_LIB(resolv,inet_pton,
1848 VLC_ADD_LDFLAGS([ipv6],[-lresolv])])
1850 AC_MSG_CHECKING(for sockaddr_in6 in netinet/in.h)
1851 AC_EGREP_HEADER(sockaddr_in6,netinet/in.h,
1852 [AC_MSG_RESULT(yes)], [AC_MSG_RESULT(no); have_ipv6=false])
1853 if ${have_ipv6}; then
1854 VLC_ADD_PLUGINS([ipv6])
1857 if test "${SYS}" = "mingw32"
1859 AC_MSG_CHECKING(for getaddrinfo in ws2tcpip.h)
1860 AC_EGREP_HEADER(addrinfo,ws2tcpip.h,[AC_MSG_RESULT(yes)
1861 VLC_ADD_PLUGINS([ipv6])],[AC_MSG_RESULT(no)])
1865 dnl ogg demux plugin
1868 [ --enable-ogg Ogg demux support (default enabled)])
1869 if test "${enable_ogg}" != "no"
1871 AC_CHECK_HEADERS(ogg/ogg.h, [
1872 AC_CHECK_LIB( ogg, oggpack_read, [
1873 VLC_ADD_PLUGINS([ogg])
1874 if test "${enable_sout}" != "no"; then
1875 VLC_ADD_PLUGINS([mux_ogg])
1877 VLC_ADD_LDFLAGS([ogg mux_ogg],[-logg])])
1882 dnl matroska demux plugin
1885 [ --enable-mkv Matroska demux support (default enabled)])
1886 if test "${enable_mkv}" != "no" -a "${CXX}" != ""; then
1888 AC_CHECK_HEADERS(ebml/EbmlVersion.h, [
1889 AC_MSG_CHECKING(for libebml version >= 0.7.3)
1891 [#include <ebml/EbmlVersion.h>
1892 #ifdef LIBEBML_VERSION
1893 #if LIBEBML_VERSION >= 0x000703
1897 [AC_MSG_RESULT([yes])
1898 AC_CHECK_HEADERS(matroska/KaxVersion.h, [
1899 AC_MSG_CHECKING(for libmatroska version >= 0.7.5)
1901 [#include <matroska/KaxVersion.h>
1902 #ifdef LIBMATROSKA_VERSION
1903 #if LIBMATROSKA_VERSION >= 0x000705
1907 [AC_MSG_RESULT([yes])
1908 AC_CHECK_HEADERS(matroska/KaxAttachments.h)
1909 VLC_ADD_CXXFLAGS([mkv],[])
1910 if test "${SYS}" = "darwin"; then
1911 VLC_ADD_CXXFLAGS([mkv],[-O1])
1913 AC_CHECK_LIB(ebml_pic, main, [
1914 # We have ebml_pic, that's good, we can build an mkv.so plugin !
1915 VLC_ADD_PLUGINS([mkv])
1916 VLC_ADD_LDFLAGS([mkv],[-lmatroska_pic -lebml_pic])
1918 AC_CHECK_LIB(ebml, main, [
1919 # We only have libebml, make mkv.a a builtin
1920 VLC_ADD_BUILTINS([mkv])
1921 VLC_ADD_LDFLAGS([mkv],[-lmatroska -lebml])
1925 [AC_MSG_RESULT([no])
1926 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.])
1930 [AC_MSG_RESULT([no])
1931 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.])
1938 dnl modplug demux plugin
1941 [ --enable-mod Mod demux support (default enabled)])
1942 if test "${enable_mod}" != "no"
1944 AC_CHECK_HEADERS(libmodplug/modplug.h, [
1945 VLC_ADD_PLUGINS([mod])
1946 VLC_ADD_CXXFLAGS([mod],[])
1947 VLC_ADD_LDFLAGS([mod],[-lmodplug])])
1954 AC_ARG_WITH(,[Codec plugins:])
1960 [ --enable-mad libmad module (default enabled)])
1961 if test "${enable_mad}" != "no"
1964 [ --with-mad=PATH path to libmad],[],[])
1965 if test "${with_mad}" != "no" -a -n "${with_mad}"
1967 VLC_ADD_CPPFLAGS([mpgatofixed32],[-I${with_mad}/include])
1968 VLC_ADD_LDFLAGS([mpgatofixed32],[-L${with_mad}/lib])
1971 AC_ARG_WITH(mad-tree,
1972 [ --with-mad-tree=PATH mad tree for static linking],[],[])
1973 if test "${with_mad_tree}" != "no" -a -n "${with_mad_tree}"
1975 real_mad_tree="`cd ${with_mad_tree} 2>/dev/null && pwd`"
1976 if test -z "${real_mad_tree}"
1978 dnl The given directory can't be found
1980 AC_MSG_ERROR([${with_mad_tree} directory doesn't exist])
1982 dnl Use a custom libmad
1983 AC_MSG_CHECKING(for mad.h in ${real_mad_tree})
1984 if test -f ${real_mad_tree}/mad.h
1987 VLC_ADD_CPPFLAGS([mpgatofixed32],[-I${real_mad_tree}])
1988 VLC_ADD_LDFLAGS([mpgatofixed32],[-L${real_mad_tree}/.libs])
1989 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_mpgatofixed32}"
1990 AC_CHECK_LIB(mad, mad_bit_init, [
1991 VLC_ADD_BUILTINS([mpgatofixed32])
1992 VLC_ADD_LDFLAGS([mpgatofixed32],[-lmad])
1993 ],[ AC_MSG_ERROR([the specified tree hasn't been compiled ])
1995 LDFLAGS="${LDFLAGS_save}"
1998 AC_MSG_ERROR([the specified tree doesn't have mad.h])
2001 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_mpgatofixed32}"
2002 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_mpgatofixed32}"
2003 AC_CHECK_HEADERS(mad.h, ,
2004 [ 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.]) ])
2005 AC_CHECK_LIB(mad, mad_bit_init, [
2006 VLC_ADD_PLUGINS([mpgatofixed32])
2007 VLC_ADD_LDFLAGS([mpgatofixed32],[-lmad])],
2008 [ AC_MSG_ERROR([Cannot find libmad library...]) ])
2009 CPPFLAGS="${CPPFLAGS_save}"
2010 LDFLAGS="${LDFLAGS_save}"
2015 dnl libid3tag support (FIXME!!! doesn't work with new input)
2017 AC_CHECK_HEADERS(id3tag.h, [
2018 AC_CHECK_HEADERS(zlib.h, [
2019 VLC_ADD_LDFLAGS([id3tag],[-lid3tag -lz])
2020 VLC_ADD_PLUGINS([id3tag])]) ])
2023 dnl ffmpeg decoder/demuxer plugin
2025 AC_ARG_ENABLE(ffmpeg,
2026 [ --enable-ffmpeg ffmpeg codec (default enabled)])
2027 if test "${enable_ffmpeg}" != "no"
2029 FFMPEG_PATH="${PATH}"
2030 AC_ARG_WITH(ffmpeg-config-path,
2031 [ --with-ffmpeg-config-path=PATH ffmpeg-config path (default search in \$PATH)],
2032 [ if test "${with_ffmpeg_config_path}" != "no"
2034 FFMPEG_PATH="${with_ffmpeg_config_path}:${PATH}"
2036 AC_PATH_PROG(FFMPEG_CONFIG, ffmpeg-config, no, ${FFMPEG_PATH})
2037 if test "${FFMPEG_CONFIG}" != "no"
2039 AC_CHECK_HEADERS(ffmpeg/avcodec.h)
2040 AC_CHECK_HEADERS(postproc/postprocess.h)
2041 VLC_ADD_PLUGINS([ffmpeg])
2042 if test "${enable_sout}" != "no"; then
2043 VLC_ADD_PLUGINS([stream_out_switcher])
2045 VLC_ADD_CFLAGS([ffmpeg stream_out_switcher],[`${FFMPEG_CONFIG} --cflags`])
2046 VLC_ADD_LDFLAGS([ffmpeg stream_out_switcher],[`${FFMPEG_CONFIG} --plugin-libs avcodec avformat postproc`])
2048 AC_ARG_WITH(ffmpeg-mp3lame,
2049 [ --with-ffmpeg-mp3lame specify if ffmpeg has been compiled with mp3lame support],
2051 VLC_ADD_LDFLAGS([ffmpeg],[-lmp3lame]) ])
2053 AC_ARG_WITH(ffmpeg-faac,
2054 [ --with-ffmpeg-faac specify if ffmpeg has been compiled with faac support],
2056 VLC_ADD_LDFLAGS([ffmpeg],[-lfaac]) ])
2058 AC_ARG_WITH(ffmpeg-dts,
2059 [ --with-ffmpeg-dts specify if ffmpeg has been compiled with dts support],
2061 VLC_ADD_LDFLAGS([ffmpeg],[-ldts]) ])
2063 AC_ARG_WITH(ffmpeg-zlib,
2064 [ --with-ffmpeg-zlib specify if ffmpeg has been compiled with zlib support],
2066 VLC_ADD_LDFLAGS([ffmpeg],[-lz]) ])
2068 AC_ARG_WITH(ffmpeg-tree,
2069 [ --with-ffmpeg-tree=PATH ffmpeg tree for static linking])
2072 dnl test for !(--with-ffmpeg-tree)
2074 if test "${with_ffmpeg_tree}" = "no" -o -z "${with_ffmpeg_tree}"; then
2075 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_ffmpeg}"
2076 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_ffmpeg}"
2077 AC_CHECK_HEADERS(ffmpeg/avcodec.h, [], [AC_MSG_ERROR([Missing header file ffmpeg/avcodec.h.])] )
2078 AC_CHECK_HEADERS(postproc/postprocess.h, [], [AC_MSG_ERROR([Missing header file postproc/postprocess.h.])] )
2079 AC_CHECK_LIB(avcodec, avcodec_init, [
2080 VLC_ADD_BUILTINS([ffmpeg])
2081 VLC_ADD_LDFLAGS([ffmpeg],[-lavcodec])
2082 if test "${enable_sout}" != "no"; then
2083 VLC_ADD_BUILTINS([stream_out_switcher])
2085 [ AC_MSG_ERROR([Could not find ffmpeg on your system: you may get it from http://ffmpeg.sf.net/ (cvs version is recommended). Alternatively you can use --disable-ffmpeg to disable the ffmpeg plugins.]) ])
2086 AC_CHECK_LIB(avformat, av_open_input_stream, [
2087 AC_DEFINE(HAVE_LIBAVFORMAT, 1,
2088 [Define if you have ffmpeg's libavformat.])
2089 VLC_ADD_LDFLAGS([ffmpeg],[-lavformat -lz]) ], [], [-lavcodec -lz])
2090 LDFLAGS="${LDFLAGS_save}"
2091 CPPFLAGS="${CPPFLAGS_save}"
2095 dnl test for --with-ffmpeg-tree
2097 if test "${with_ffmpeg_tree}" != "no" -a -n "${with_ffmpeg_tree}"; then
2098 AC_MSG_CHECKING(for libavcodec.a in ${with_ffmpeg_tree})
2099 real_ffmpeg_tree="`cd ${with_ffmpeg_tree} 2>/dev/null && pwd`"
2100 if test -z "${real_ffmpeg_tree}"; then
2101 dnl The given directory can't be found
2103 AC_MSG_ERROR([cannot cd to ${with_ffmpeg_tree}])
2105 if ! test -f "${real_ffmpeg_tree}/libavcodec/libavcodec.a"; then
2106 dnl The given libavcodec wasn't built
2108 AC_MSG_ERROR([cannot find ${real_ffmpeg_tree}/libavcodec/libavcodec.a, make sure you compiled libavcodec in ${with_ffmpeg_tree}])
2110 if ! fgrep -s "pp_get_context" "${real_ffmpeg_tree}/libavcodec/libavcodec.a"; then
2111 dnl The given libavcodec wasn't built with --enable-pp
2113 AC_MSG_ERROR([${real_ffmpeg_tree}/libavcodec/libavcodec.a was not compiled with postprocessing support, make sure you configured ffmpeg with --enable-pp])
2115 dnl Use a custom libffmpeg
2116 AC_MSG_RESULT(${real_ffmpeg_tree}/libavcodec/libavcodec.a)
2118 if fgrep -s "CONFIG_ZLIB=yes" "${real_ffmpeg_tree}/config.mak"; then
2119 if test "${with_ffmpeg_zlib}" != "yes"; then
2120 VLC_ADD_LDFLAGS([ffmpeg],[-lz])
2123 if fgrep -s "CONFIG_MP3LAME=yes" "${real_ffmpeg_tree}/config.mak"; then
2124 if test "${with_ffmpeg_mp3lame}" != "yes"; then
2125 VLC_ADD_LDFLAGS([ffmpeg],[-lmp3lame])
2128 if fgrep -s "CONFIG_FAAC=yes" "${real_ffmpeg_tree}/config.mak"; then
2129 if test "${with_ffmpeg_faac}" != "yes"; then
2130 VLC_ADD_LDFLAGS([ffmpeg],[-lfaac])
2133 if fgrep -s "CONFIG_DTS=yes" "${real_ffmpeg_tree}/config.mak"; then
2134 if test "${with_ffmpeg_dts}" != "yes"; then
2135 VLC_ADD_LDFLAGS([ffmpeg],[-ldts])
2138 if fgrep -s "CONFIG_VORBIS=yes" "${real_ffmpeg_tree}/config.mak"; then
2139 VLC_ADD_LDFLAGS([ffmpeg],[-lvorbis -lvorbisenc])
2141 if fgrep -s "CONFIG_FAAD=yes" "${real_ffmpeg_tree}/config.mak"; then
2142 VLC_ADD_LDFLAGS([ffmpeg],[-lfaad])
2144 if fgrep -s "CONFIG_XVID=yes" "${real_ffmpeg_tree}/config.mak"; then
2145 VLC_ADD_LDFLAGS([ffmpeg],[-lxvidcore])
2148 VLC_ADD_BUILTINS([ffmpeg])
2149 if test "${enable_sout}" != "no"; then
2150 VLC_ADD_BUILTINS([stream_out_switcher])
2152 VLC_ADD_LDFLAGS([ffmpeg],[-L${real_ffmpeg_tree}/libavcodec ${real_ffmpeg_tree}/libavcodec/libavcodec.a])
2153 VLC_ADD_CPPFLAGS([ffmpeg stream_out_switcher],[-I${real_ffmpeg_tree}/libavcodec])
2155 if test -f "${real_ffmpeg_tree}/libavformat/libavformat.a"; then
2156 AC_DEFINE(HAVE_LIBAVFORMAT, 1, [Define if you have ffmpeg's libavformat.])
2157 VLC_ADD_LDFLAGS([ffmpeg],[-L${real_ffmpeg_tree}/libavformat ${real_ffmpeg_tree}/libavformat/libavformat.a])
2158 VLC_ADD_CPPFLAGS([ffmpeg stream_out_switcher],[-I${real_ffmpeg_tree}/libavformat])
2165 dnl ffmpeg decoder/demuxer plugin
2167 AC_ARG_ENABLE(ffmpegaltivec,
2168 [ --enable-ffmpegaltivec ffmpegaltivec codec (DO NOT USE)])
2169 if test "${enable_ffmpegaltivec}" == "yes"
2171 if test "${with_ffmpeg_tree}" != "no" -a -n "${with_ffmpeg_tree}"; then
2172 AC_MSG_CHECKING(for libavcodecaltivec.a in ${with_ffmpeg_tree})
2173 real_ffmpeg_tree="`cd ${with_ffmpeg_tree} 2>/dev/null && pwd`"
2174 if test -z "${real_ffmpeg_tree}"; then
2175 dnl The given directory can't be found
2177 AC_MSG_ERROR([cannot cd to ${with_ffmpeg_tree}])
2179 if ! test -f "${real_ffmpeg_tree}/libavcodec/libavcodecaltivec.a"; then
2180 dnl The given libavcodecaltivec wasn't built
2182 AC_MSG_ERROR([cannot find ${real_ffmpeg_tree}/libavcodec/libavcodecaltivec.a, make sure you compiled libavcodecaltivec in ${with_ffmpeg_tree}])
2184 if ! fgrep -s "pp_get_context" "${real_ffmpeg_tree}/libavcodec/libavcodecaltivec.a"; then
2185 dnl The given libavcodecaltivec wasn't built with --enable-pp
2187 AC_MSG_ERROR([${real_ffmpeg_tree}/libavcodec/libavcodecaltivec.a was not compiled with postprocessing support, make sure you configured ffmpeg with --enable-pp])
2189 dnl Use a custom libffmpeg
2190 AC_MSG_RESULT(${real_ffmpeg_tree}/libavcodec/libavcodecaltivec.a)
2191 VLC_ADD_BUILTINS([ffmpegaltivec])
2192 VLC_ADD_LDFLAGS([ffmpegaltivec],[-L${real_ffmpeg_tree}/libavcodec -lavcodecaltivec])
2193 VLC_ADD_CPPFLAGS([ffmpeg],[-DNO_ALTIVEC_IN_FFMPEG])
2194 VLC_ADD_CPPFLAGS([ffmpegaltivec],[-I${real_ffmpeg_tree}/libavcodec -I${real_ffmpeg_tree}/libavformat])
2196 if test -f "${real_ffmpeg_tree}/libavformat/libavformat.a"; then
2197 AC_DEFINE(HAVE_LIBAVFORMAT, 1, [Define if you have ffmpeg's libavformat.])
2198 VLC_ADD_LDFLAGS([ffmpegaltivec],[-L${real_ffmpeg_tree}/libavformat -lavformataltivec -lz])
2199 VLC_ADD_CPPFLAGS([ffmpegaltivec],[-I${real_ffmpeg_tree}/libavformat])
2201 VLC_ADD_LDFLAGS([stream_out_switcher],[-L${real_ffmpeg_tree}/libavcodec])
2202 VLC_ADD_CPPFLAGS([stream_out_switcher],[-I${real_ffmpeg_tree}/libavcodec -I${real_ffmpeg_tree}/libavformat])
2207 dnl faad decoder plugin
2210 [ --enable-faad faad codec (default disabled)])
2211 if test "${enable_faad}" = "yes"
2213 AC_ARG_WITH(faad-tree,
2214 [ --with-faad-tree=PATH faad tree for static linking])
2215 if test -n "${with_faad_tree}"
2217 AC_MSG_CHECKING(for libfaad.a in ${with_faad_tree})
2218 real_faad_tree="`cd ${with_faad_tree} 2>/dev/null && pwd`"
2219 if test -z "${real_faad_tree}"
2221 dnl The given directory can't be found
2223 AC_MSG_ERROR([cannot cd to ${with_faad_tree}])
2225 if test -f "${real_faad_tree}/libfaad/.libs/libfaad.a"
2227 dnl Use a custom faad
2228 AC_MSG_RESULT(${real_faad_tree}/libfaad/.libs/libfaad.a)
2229 VLC_ADD_BUILTINS([faad])
2230 VLC_ADD_LDFLAGS([faad],[${real_faad_tree}/libfaad/.libs/libfaad.a])
2231 VLC_ADD_CPPFLAGS([faad],[-I${real_faad_tree}/include])
2233 dnl The given libfaad wasn't built
2235 AC_MSG_ERROR([cannot find ${real_faad_tree}/libfaad/.libs/libfaad.a, make sure you compiled libfaad in ${with_faad_tree}])
2238 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_faad}"
2239 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_faad}"
2240 AC_CHECK_HEADERS(faad.h, ,
2241 [ AC_MSG_ERROR([Cannot find development headers for libfaad...]) ])
2242 AC_CHECK_LIB(faad, faacDecOpen, [
2243 VLC_ADD_PLUGINS([faad])
2244 VLC_ADD_LDFLAGS([faad],[-lfaad]) ],
2245 AC_CHECK_LIB(faad, NeAACDecOpen, [
2246 VLC_ADD_PLUGINS([faad])
2247 VLC_ADD_LDFLAGS([faad],[-lfaad]) ],
2248 [ AC_MSG_ERROR([Cannot find libfaad library...]) ]))
2249 LDFLAGS="${LDFLAGS_save}"
2250 CPPFLAGS="${CPPFLAGS_save}"
2255 dnl twolame encoder plugin
2257 AC_ARG_ENABLE(twolame,
2258 [ --enable-twolame twolame codec (default disabled)])
2259 if test "${enable_twolame}" = "yes"
2261 AC_ARG_WITH(twolame-tree,
2262 [ --with-twolame-tree=PATH twolame tree for static linking])
2263 if test -n "${with_twolame_tree}"
2265 AC_MSG_CHECKING(for libtwolame.a in ${with_twolame_tree})
2266 real_twolame_tree="`cd ${with_twolame_tree} 2>/dev/null && pwd`"
2267 if test -z "${real_twolame_tree}"
2269 dnl The given directory can't be found
2271 AC_MSG_ERROR([cannot cd to ${with_twolame_tree}])
2273 if test -f "${real_twolame_tree}/src/libtwolame/.libs/libtwolame.a"
2275 dnl Use a custom twolame
2276 AC_MSG_RESULT(${real_twolame_tree}/src/libtwolame/.libs/libtwolame.a)
2277 VLC_ADD_BUILTINS([twolame])
2278 VLC_ADD_LDFLAGS([twolame],[${real_twolame_tree}/src/libtwolame/.libs/libtwolame.a])
2279 VLC_ADD_CPPFLAGS([twolame],[-I${real_twolame_tree}/src/libtwolame])
2281 dnl The given libtwolame wasn't built
2283 AC_MSG_ERROR([cannot find ${real_twolame_tree}/src/libtwolame/.libs/libtwolame.a, make sure you compiled libtwolame in ${with_twolame_tree}])
2286 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_twolame}"
2287 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_twolame}"
2288 AC_CHECK_HEADERS(twolame.h, ,
2289 [ AC_MSG_ERROR([Cannot find development header for libtwolame...]) ])
2290 AC_CHECK_LIB(twolame, twolame_init, [
2291 VLC_ADD_PLUGINS([twolame])
2292 VLC_ADD_LDFLAGS([twolame],[-ltwolame]) ],
2293 [ AC_MSG_ERROR([Cannot find libtwolame library...]) ])
2294 LDFLAGS="${LDFLAGS_save}"
2295 CPPFLAGS="${CPPFLAGS_save}"
2300 dnl QuickTime plugin
2302 AC_ARG_ENABLE(quicktime,
2303 [ --enable-quicktime QuickTime module (default enabled on MacOS X)])
2304 if test "${enable_quicktime}" != "no" &&
2305 (test "${SYS}" = "darwin" || test "${enable_quicktime}" = "yes")
2307 if test "${SYS}" = "mingw32"; then
2308 VLC_ADD_BUILTINS([quicktime])
2310 AC_CHECK_HEADERS(QuickTime/QuickTime.h,
2311 [ VLC_ADD_BUILTINS([quicktime])
2312 VLC_ADD_LDFLAGS([quicktime],[-framework QuickTime -framework Carbon])
2313 ], [ AC_MSG_ERROR([cannot find QuickTime headers]) ])
2320 AC_CHECK_HEADERS(zlib.h, [
2321 VLC_ADD_LDFLAGS([mp4 skins2 sap mkv],[-lz])
2324 AC_CHECK_HEADERS(sysfs/libsysfs.h, [
2325 VLC_ADD_LDFLAGS([mp4 mkv],[-lsysfs])
2331 AC_CHECK_HEADERS(libtar.h, [
2332 VLC_ADD_LDFLAGS([skins2],[-ltar])
2338 dnl A52/AC3 decoder plugin
2341 [ --enable-a52 A/52 support with liba52 (default enabled)])
2342 if test "${enable_a52}" != "no"
2345 [ --with-a52=PATH a52 headers and libraries])
2346 AC_ARG_WITH(a52-tree,
2347 [ --with-a52-tree=PATH a52dec tree for static linking ],[],[])
2348 if test "${with_a52_tree}" != "no" -a -n "${with_a52_tree}"
2350 real_a52_tree="`cd ${with_a52_tree} 2>/dev/null && pwd`"
2351 if test -z "${real_a52_tree}"
2353 dnl The given directory can't be found
2355 AC_MSG_ERROR([${with_a52_tree} directory doesn't exist])
2357 dnl Use a custom a52dec
2358 AC_MSG_CHECKING(for a52.h in ${real_a52_tree}/include)
2359 if test -f ${real_a52_tree}/include/a52.h
2362 VLC_ADD_CPPFLAGS([a52tofloat32],[-I${real_a52_tree}])
2363 VLC_ADD_LDFLAGS([a52tofloat32],[-L${real_a52_tree}/liba52/.libs])
2364 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_a52tofloat32}"
2365 AC_CHECK_LIB(a52, a52_free, [
2366 VLC_ADD_BUILTINS([a52tofloat32])
2367 VLC_ADD_CPPFLAGS([a52tofloat32],[-DUSE_A52DEC_TREE])
2368 VLC_ADD_LDFLAGS([a52tofloat32],[-la52])
2370 if test -f ${real_a52_tree}/liba52/.libs/liba52.a
2372 AC_MSG_ERROR([make sure you have at least a52dec-0.7.3])
2374 AC_MSG_ERROR([the specified tree hasn't been compiled])
2377 LDFLAGS="${LDFLAGS_save}"
2380 AC_MSG_ERROR([the specified tree doesn't have a52.h])
2383 if test -z "${with_a52}"
2388 LDFLAGS_test="-L${with_a52}/lib"
2389 CPPFLAGS_test="-I${with_a52}/include"
2391 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_test} ${CPPFLAGS_a52tofloat32}"
2392 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_test} ${LDFLAGS_a52tofloat32}"
2393 AC_CHECK_HEADERS(a52dec/a52.h, [
2394 AC_CHECK_LIB(a52, a52_free, [
2395 VLC_ADD_PLUGINS([a52tofloat32])
2396 VLC_ADD_LDFLAGS([a52tofloat32],[${LDFLAGS_test} -la52])
2397 VLC_ADD_CPPFLAGS([a52tofloat32],[${CPPFLAGS_test}])
2399 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.])
2402 CPPFLAGS="${CPPFLAGS_save}"
2403 LDFLAGS="${LDFLAGS_save}"
2407 AC_ARG_WITH(a52-fixed,
2408 [ --with-a52-fixed specify if liba52 has been compiled with fixed point support],
2410 VLC_ADD_CPPFLAGS([a52tofloat32],[-DLIBA52_FIXED]) ])
2413 dnl DTS Coherent Acoustics decoder plugin
2416 [ --enable-dts DTS Coherent Acoustics support with libdts (default enabled)])
2417 if test "${enable_dts}" != "no"; then
2418 AC_ARG_WITH(dts-tree,
2419 [ --with-dts-tree=PATH libdts tree for static linking ],[],[])
2420 if test "${with_dts_tree}" != "no" -a -n "${with_dts_tree}"
2422 real_dts_tree="`cd ${with_dts_tree} 2>/dev/null && pwd`"
2423 if test -z "${real_dts_tree}"
2425 dnl The given directory can't be found
2427 AC_MSG_ERROR([${with_dts_tree} directory doesn't exist])
2429 dnl Use a custom libdts
2430 AC_MSG_CHECKING(for dts.h in ${real_dts_tree}/include)
2431 if test -f ${real_dts_tree}/include/dts.h
2434 VLC_ADD_CPPFLAGS([dtstofloat32],[-I${real_dts_tree}/include])
2435 VLC_ADD_LDFLAGS([dtstofloat32],[-L${real_dts_tree}/libdts])
2436 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_dtstofloat32}"
2437 AC_CHECK_LIB(dts_pic, dts_free, [
2438 VLC_ADD_PLUGINS([dtstofloat32])
2439 VLC_ADD_LDFLAGS([dtstofloat32],[-ldts_pic])
2441 AC_CHECK_LIB(dts, dts_free, [
2442 VLC_ADD_BUILTINS([dtstofloat32])
2443 VLC_ADD_LDFLAGS([dtstofloat32],[-ldts])
2445 if test -f ${real_dts_tree}/libdts/libdts.a
2447 AC_MSG_ERROR([make sure you have at least libdts-0.0.2])
2449 AC_MSG_ERROR([the specified tree hasn't been compiled])
2453 LDFLAGS="${LDFLAGS_save}"
2456 AC_MSG_ERROR([the specified tree doesn't have dts.h])
2459 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_dtstofloat32}"
2460 AC_CHECK_HEADERS(dts.h, [
2461 AC_CHECK_LIB(dts_pic, dts_free, [
2462 VLC_ADD_PLUGINS([dtstofloat32])
2463 VLC_ADD_LDFLAGS([dtstofloat32],[-ldts_pic])
2465 AC_CHECK_LIB(dts, dts_free, [
2466 VLC_ADD_BUILTINS([dtstofloat32])
2467 VLC_ADD_LDFLAGS([dtstofloat32],[-ldts])
2469 if test "${enable_dts}" = "yes"; then
2470 AC_MSG_ERROR([Could not find libdts on your system: you may get it from http://www.videolan.org/dtsdec.html])
2475 LDFLAGS="${LDFLAGS_save}"
2483 [ --enable-flac flac decoder support (default disabled)])
2484 if test "${enable_flac}" = "yes"
2486 AC_CHECK_HEADERS(FLAC/stream_decoder.h, [
2487 VLC_ADD_LDFLAGS([flacdec],[-lFLAC])
2494 AC_ARG_ENABLE(libmpeg2,
2495 [ --enable-libmpeg2 libmpeg2 decoder support (default enabled)])
2496 if test "${enable_libmpeg2}" != "no"
2498 AC_ARG_WITH(libmpeg2-tree,
2499 [ --with-libmpeg2-tree=PATH libmpeg2 tree for static linking])
2500 if test -n "${with_libmpeg2_tree}"
2502 AC_MSG_CHECKING(for libmpeg2.a in ${with_libmpeg2_tree})
2503 real_libmpeg2_tree="`cd ${with_libmpeg2_tree} 2>/dev/null && pwd`"
2504 if test -z "${real_libmpeg2_tree}"
2506 dnl The given directory can't be found
2508 AC_MSG_ERROR([cannot cd to ${with_libmpeg2_tree}])
2510 if test -f "${real_libmpeg2_tree}/libmpeg2/.libs/libmpeg2.a"
2512 dnl Use a custom libmpeg2
2513 AC_MSG_RESULT(${real_libmpeg2_tree}/libmpeg2/.libs/libmpeg2.a)
2514 VLC_ADD_BUILTINS([libmpeg2])
2515 VLC_ADD_LDFLAGS([libmpeg2],[-L${real_libmpeg2_tree}/libmpeg2/.libs -lmpeg2])
2516 VLC_ADD_CFLAGS([libmpeg2],[-I${real_libmpeg2_tree}/include])
2517 eval "`cd ${real_libmpeg2_tree}/include && ln -sf . mpeg2dec 2>/dev/null`"
2519 dnl The given libmpeg2 wasn't built
2521 AC_MSG_ERROR([cannot find ${real_libmpeg2_tree}/libmpeg2/.libs/libmpeg2.a, make sure you compiled libmpeg2 in ${with_libmpeg2_tree}])
2524 AC_CHECK_HEADERS(mpeg2dec/mpeg2.h, [
2525 AC_MSG_CHECKING(for libmpeg2 version >= 0.3.2)
2527 [#include <mpeg2dec/mpeg2.h>
2528 #ifdef MPEG2_RELEASE
2529 #if MPEG2_RELEASE >= MPEG2_VERSION(0,3,2)
2533 [AC_MSG_RESULT([yes])
2534 VLC_ADD_PLUGINS([libmpeg2])
2535 VLC_ADD_LDFLAGS([libmpeg2],[-lmpeg2])],
2536 [AC_MSG_RESULT([no])
2537 AC_MSG_ERROR([Your libmpeg2 is too old (you need the cvs version): you may get a more recent one from http://libmpeg2.sf.net/. Alternatively you can use --disable-libmpeg2 to disable the libmpeg2 plugin.])])],
2539 [AC_MSG_ERROR([Could not find libmpeg2 on your system: you may get it from http://libmpeg2.sf.net/ (you need the cvs version). Alternatively you can use --disable-libmpeg2 to disable the libmpeg2 plugin.])]
2547 AC_ARG_ENABLE(vorbis,
2548 [ --enable-vorbis Vorbis decoder support (default enabled)])
2549 if test "${enable_vorbis}" != "no"
2551 AC_CHECK_HEADERS(vorbis/codec.h, [
2552 VLC_ADD_PLUGINS([vorbis])
2553 VLC_ADD_LDFLAGS([vorbis],[-lvorbis -logg]) ],[])
2555 AC_CHECK_HEADERS(vorbis/vorbisenc.h, [
2556 VLC_ADD_LDFLAGS([vorbis],[-lvorbisenc]) ],[])
2562 AC_ARG_ENABLE(tremor,
2563 [ --enable-tremor Tremor decoder support (default disabled)])
2564 if test "${enable_tremor}" = "yes"
2566 AC_CHECK_HEADERS(tremor/ivorbiscodec.h, [
2567 VLC_ADD_PLUGINS([tremor])
2568 VLC_ADD_LDFLAGS([tremor],[-lvorbisidec -logg])
2575 AC_ARG_ENABLE(speex,
2576 [ --enable-speex Speex decoder support (default enabled)])
2577 if test "${enable_speex}" != "no"
2579 AC_CHECK_HEADERS(speex/speex.h, [
2580 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_speex}"
2581 AC_CHECK_LIB(speex, speex_decode_int, [
2582 VLC_ADD_PLUGINS([speex])
2583 VLC_ADD_LDFLAGS([speex],[-lspeex]) ],
2584 [ AC_MSG_RESULT([no])
2585 AC_MSG_WARN([Your libspeex is too old, please get the development
2587 LDFLAGS="${LDFLAGS_save}"
2592 dnl tarkin decoder plugin
2594 AC_ARG_ENABLE(tarkin,
2595 [ --enable-tarkin experimental tarkin codec (default disabled)])
2596 if test "${enable_tarkin}" = "yes"
2598 AC_ARG_WITH(tarkin-tree,
2599 [ --with-tarkin-tree=PATH tarkin tree for static linking])
2600 if test -n "${with_tarkin_tree}"
2602 AC_MSG_CHECKING(for tarkin.o in ${with_tarkin_tree})
2603 real_tarkin_tree="`cd ${with_tarkin_tree} 2>/dev/null && pwd`"
2604 if test -f "${real_tarkin_tree}/tarkin.o"
2606 VLC_ADD_BUILTINS([tarkin])
2607 VLC_ADD_CPPFLAGS([tarkin],[-I${real_tarkin_tree}])
2608 VLC_ADD_LDFLAGS([tarkin],[${real_tarkin_tree}/mem.o ${real_tarkin_tree}/pnm.o ${real_tarkin_tree}/wavelet.o ${real_tarkin_tree}/wavelet_xform.o ${real_tarkin_tree}/wavelet_coeff.o ${real_tarkin_tree}/yuv.o ${real_tarkin_tree}/tarkin.o ${real_tarkin_tree}/info.o -logg])
2611 dnl The given tarkin tree wasn't built
2613 AC_MSG_ERROR([cannot find ${real_tarkin_tree}/tarkin.o,
2614 make sure you compiled tarkin in ${with_tarkin_tree}])
2620 dnl theora decoder plugin
2622 AC_ARG_ENABLE(theora,
2623 [ --enable-theora experimental theora codec (default disabled)])
2624 if test "${enable_theora}" = "yes"
2626 AC_CHECK_HEADERS(theora/theora.h, [
2627 AC_CHECK_LIB(theora, theora_granule_time, [
2628 if test "${SYS}" = "mingw32"; then
2629 VLC_ADD_PLUGINS([theora])
2631 VLC_ADD_BUILTINS([theora])
2633 theora_libs="-ltheora -logg"
2634 VLC_ADD_LDFLAGS([theora],[${theora_libs}]) ],[
2635 AC_MSG_ERROR([libtheora doesn't appear to be installed on your system.
2636 You also need to check that you have a libogg posterior to the 1.0 release.])],
2642 dnl dirac decoder plugin
2644 AC_ARG_ENABLE(dirac,
2645 [ --enable-dirac experimental dirac codec (default disabled)])
2646 if test "${enable_dirac}" = "yes"; then
2647 AC_CHECK_HEADERS(libdirac_decoder/dirac_parser.h, [
2648 AC_CHECK_LIB(dirac_decoder, dirac_decoder_init, [
2649 VLC_ADD_PLUGINS([dirac])
2650 VLC_ADD_LDFLAGS([dirac],[-ldirac_decoder -ldirac_encoder -lstdc++]) ],[
2651 AC_MSG_ERROR([libdirac doesn't appear to be installed on you system.])],
2657 dnl PNG decoder module
2660 [ --enable-png PNG support (default enabled)])
2661 if test "${enable_png}" != "no"; then
2662 AC_CHECK_HEADERS(png.h, [
2663 LDFLAGS="${LDFLAGS_save} -lz"
2664 AC_CHECK_LIB(png, png_set_rows, [
2665 VLC_ADD_LDFLAGS([png],[-lpng -lz])
2666 VLC_ADD_PLUGINS([png])
2667 AC_DEFINE(HAVE_LIBPNG, [], [Define if you have the PNG library: libpng])],
2669 LDFLAGS="${LDFLAGS_save}"
2674 dnl H264 encoder plugin (using libx264)
2677 [ --enable-x264 H264 encoding support with libx264 (default enabled)])
2678 if test "${enable_x264}" != "no"; then
2679 AC_ARG_WITH(x264-tree,
2680 [ --with-x264-tree=PATH x264 tree for static linking ],[],[])
2681 if test "${with_x264_tree}" != "no" -a -n "${with_x264_tree}"
2683 real_x264_tree="`cd ${with_x264_tree} 2>/dev/null && pwd`"
2684 if test -z "${real_x264_tree}"
2686 dnl The given directory can't be found
2688 AC_MSG_ERROR([${with_x264_tree} directory doesn't exist])
2690 dnl Use a custom libx264
2691 AC_MSG_CHECKING(for x264.h in ${real_x264_tree})
2692 if test -f ${real_x264_tree}/x264.h
2695 VLC_ADD_CPPFLAGS([x264],[-I${real_x264_tree}])
2696 VLC_ADD_LDFLAGS([x264],[-L${real_x264_tree}])
2697 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_x264}"
2698 AC_CHECK_LIB(x264, x264_encoder_open, [
2699 VLC_ADD_BUILTINS([x264])
2700 VLC_ADD_LDFLAGS([x264],[-lx264])
2702 AC_MSG_ERROR([the specified tree hasn't been compiled])
2704 LDFLAGS="${LDFLAGS_save}"
2707 AC_MSG_ERROR([the specified tree doesn't have x264.h])
2710 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_x264}"
2711 AC_CHECK_HEADERS(x264.h, [
2712 AC_CHECK_LIB(x264, x264_encoder_open, [
2713 VLC_ADD_PLUGINS([x264])
2714 VLC_ADD_LDFLAGS([x264],[-lx264])
2716 if test "${enable_x264}" = "yes"; then
2717 AC_MSG_ERROR([Could not find libx264 on your system: you may get it from http://www.videolan.org/x264.html])
2721 LDFLAGS="${LDFLAGS_save}"
2729 [ --enable-cmml CMML support (default enabled)])
2730 if test "${enable_cmml}" != "no"
2732 VLC_ADD_PLUGINS([cmml])
2740 AC_ARG_WITH(,[Video plugins:])
2743 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
2744 CPPFLAGS="${CPPFLAGS_save} -I${x_includes}"
2745 AC_CHECK_HEADERS(X11/extensions/dpms.h, [
2746 AC_MSG_CHECKING(for DPMSInfo in X11/extensions/dpms.h)
2747 AC_EGREP_HEADER(DPMSInfo,X11/extensions/dpms.h,[
2749 AC_DEFINE(DPMSINFO_IN_DPMS_H, 1,
2750 Define if <X11/extensions/dpms.h> defines DPMSInfo.)
2755 #include <X11/Xlib.h>
2757 CPPFLAGS="${CPPFLAGS_save}"
2762 dnl (enabled by default except on win32)
2765 [ --enable-x11 X11 support (default enabled)])
2766 if test "${enable_x11}" != "no" &&
2767 (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
2768 test "${enable_x11}" = "yes"); then
2769 CPPFLAGS="${CPPFLAGS_save} -I${x_includes}"
2770 AC_CHECK_HEADERS(X11/Xlib.h, [
2771 VLC_ADD_PLUGINS([x11])
2772 VLC_ADD_LDFLAGS([x11],[-L${x_libraries} -lX11 -lXext])
2773 VLC_ADD_CPPFLAGS([x11],[-I${x_includes}])
2775 CPPFLAGS="${CPPFLAGS_save}"
2780 dnl (enabled by default except on win32)
2782 AC_ARG_ENABLE(xvideo,
2783 [ --enable-xvideo XVideo support (default enabled)])
2784 if test "${enable_xvideo}" != "no" &&
2785 (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
2786 test "${enable_xvideo}" = "yes"); then
2787 CPPFLAGS="${CPPFLAGS_save} -I${x_includes}"
2788 AC_CHECK_HEADERS(X11/extensions/Xv.h, [
2789 CFLAGS="${CFLAGS_save} -L${x_libraries} -lX11 -lXext"
2790 AC_CHECK_LIB(Xv,XvPutImage,[
2791 # If libXv.so is available, xvideo can be a plugin. Otherwise, we
2792 # test for libXv_pic.
2793 if test -f /usr/X11R6/lib/libXv.so -o -f "${x_libraries}"/libXv.so; then
2794 VLC_ADD_PLUGINS([xvideo])
2795 VLC_ADD_CPPFLAGS([xvideo],[-I${x_includes}])
2796 VLC_ADD_LDFLAGS([xvideo],[-L${x_libraries} -lX11 -lXext -lXv])
2798 AC_CHECK_LIB(Xv_pic,XvPutImage,[
2799 VLC_ADD_PLUGINS([xvideo])
2800 VLC_ADD_CPPFLAGS([xvideo],[-I${x_includes}])
2801 VLC_ADD_LDFLAGS([xvideo],[-L${x_libraries} -lX11 -lXext -lXv_pic])
2803 VLC_ADD_BUILTINS([xvideo])
2804 VLC_ADD_LDFLAGS([xvideo],[-L${x_libraries} -lX11 -lXext -lXv])
2805 VLC_ADD_CPPFLAGS([xvideo],[-I${x_includes}])
2809 CFLAGS="${CFLAGS_save}"
2811 CPPFLAGS="${CPPFLAGS_save}")
2816 dnl (enabled by default except on win32)
2819 [ --enable-glx X11 OpenGL (GLX) support (default enabled)])
2820 if test "${enable_glx}" != "no" &&
2821 (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
2822 test "${enable_glx}" = "yes"); then
2823 CPPFLAGS="${CPPFLAGS_save} -I${x_includes}"
2824 AC_CHECK_HEADERS(X11/Xlib.h, [
2825 AC_CHECK_HEADERS(GL/glx.h, [
2826 VLC_ADD_PLUGINS([glx])
2827 VLC_ADD_LDFLAGS([glx],[-L${x_libraries} -lX11 -lXext -lGL -lGLU])
2828 VLC_ADD_CPPFLAGS([glx],[-I${x_includes}])
2830 CPPFLAGS="${CPPFLAGS_save}"
2834 dnl Check for the Xinerama extension
2836 if test "${enable_xvideo}" != "no" &&
2837 (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
2838 test "${enable_xvideo}" = "yes"); then
2839 ac_cv_have_xinerama="no"
2840 CPPFLAGS="${CPPFLAGS_save} -I${x_includes}"
2841 CFLAGS="${CFLAGS_save} -L${x_libraries} -lX11 -lXext"
2842 AC_CHECK_HEADERS(X11/extensions/Xinerama.h,[
2843 AC_CHECK_LIB(Xinerama_pic, XineramaQueryExtension,[
2844 VLC_ADD_LDFLAGS([xvideo],[-lXinerama_pic])
2845 VLC_ADD_LDFLAGS([x11],[-lXinerama_pic])
2846 VLC_ADD_LDFLAGS([glx],[-lXinerama_pic])
2847 ac_cv_have_xinerama="yes"
2849 AC_CHECK_LIB(Xinerama, XineramaQueryExtension,[
2850 VLC_ADD_LDFLAGS([xvideo],[-lXinerama])
2851 VLC_ADD_LDFLAGS([x11],[-lXinerama])
2852 VLC_ADD_LDFLAGS([glx],[-lXinerama])
2853 ac_cv_have_xinerama="yes"
2857 if test "${ac_cv_have_xinerama}" = "yes"; then
2858 AC_DEFINE(HAVE_XINERAMA, 1, [Define this if you have libXinerama installed])
2860 CFLAGS="${CFLAGS_save}"
2861 CPPFLAGS="${CPPFLAGS_save}"
2866 dnl (enabled by default except on beos)
2868 AC_ARG_ENABLE(opengl,
2869 [ --enable-opengl OpenGL support (default enabled)])
2870 if test "${enable_opengl}" != "no" &&
2871 test "${SYS}" != "beos" -a "${SYS}" != "mingwce"; then
2872 if test "${SYS}" != "darwin"; then
2873 AC_CHECK_HEADERS(GL/gl.h, [
2874 VLC_ADD_PLUGINS([opengl])
2875 if test "${SYS}" != "mingw32"; then
2876 VLC_ADD_LDFLAGS([opengl],[-L${x_libraries} -lGL -lGLU])
2878 VLC_ADD_LDFLAGS([opengl],[-lopengl32])
2882 dnl OS X special case (no GL/gl.h but OpenGL/gl.h)
2883 VLC_ADD_PLUGINS([opengl])
2884 VLC_ADD_LDFLAGS([opengl],[-framework OpenGL])
2892 [ --enable-sdl SDL support (default enabled)])
2893 if test "${enable_sdl}" != "no"
2896 AC_ARG_WITH(sdl-config-path,
2897 [ --with-sdl-config-path=PATH sdl-config path (default search in \$PATH)],
2898 [ if test "${with_sdl_config_path}" != "no"
2900 SDL_PATH="${with_sdl_config_path}:${PATH}"
2902 AC_PATH_PROG(SDL12_CONFIG, sdl12-config, no, ${SDL_PATH})
2903 SDL_CONFIG="${SDL12_CONFIG}"
2904 SDL_HEADER="SDL12/SDL.h"
2905 if test "${SDL_CONFIG}" = "no"
2907 AC_PATH_PROG(SDL11_CONFIG, sdl11-config, no, ${SDL_PATH})
2908 SDL_CONFIG=${SDL11_CONFIG}
2909 SDL_HEADER="SDL11/SDL.h"
2911 if test "${SDL_CONFIG}" = "no"
2913 AC_PATH_PROG(SDL_CONFIG, sdl-config, no, ${SDL_PATH})
2914 SDL_HEADER="SDL/SDL.h"
2916 # check for cross-compiling
2918 AC_ARG_WITH(sdl-prefix,
2919 [ --with-sdl-prefix=PATH path to libsdl (needed for cross-compiling),
2921 --with-sdl-prefix=/usr/local/arm/2.95.3/arm-linux/usr)],[],[])
2922 if test "${with_sdl_prefix}" != "no" -a -n "${with_sdl_prefix}"
2924 SDL_PREFIX="--prefix=${with_sdl_prefix}"
2926 if test "${SDL_CONFIG}" != "no"
2928 VLC_ADD_PLUGINS([vout_sdl aout_sdl])
2929 VLC_ADD_CFLAGS([vout_sdl aout_sdl],[`${SDL_CONFIG} ${SDL_PREFIX} --cflags | sed 's,SDL,,'`])
2930 VLC_ADD_LDFLAGS([vout_sdl aout_sdl],[`${SDL_CONFIG} ${SDL_PREFIX} --libs | sed 's,-rdynamic,,'`])
2931 CPPFLAGS="${CPPFLAGS_save} ${CFLAGS_vout_sdl}"
2932 AC_CHECK_HEADERS(${SDL_HEADER}, AC_DEFINE_UNQUOTED(SDL_INCLUDE_FILE,
2933 <${SDL_HEADER}>, Indicate whether we should use SDL/SDL.h or SDL11/SDL.h),
2934 [ AC_CHECK_HEADERS(SDL.h, AC_DEFINE(SDL_INCLUDE_FILE, <SDL.h>,
2935 As a last resort we also test for SDL.h presence),
2936 [ AC_MSG_ERROR([The development package for SDL is not installed.
2937 Please install it and try again. Alternatively you can also configure with
2940 CPPFLAGS="${CPPFLAGS_save}"
2941 if expr 1.1.5 \> `${SDL_CONFIG} --version` >/dev/null
2943 AC_MSG_ERROR([The development package for SDL is not installed.
2944 Please install it and try again. Alternatively you can also configure with
2947 elif test "${enable_sdl}" = "yes"
2949 AC_MSG_ERROR([I couldn't find the SDL package. You can download libSDL
2950 from http://www.libsdl.org/, or configure with --disable-sdl. Have a nice day.
2958 AC_ARG_ENABLE(freetype,
2959 [ --enable-freetype freetype support (default enabled)])
2960 AC_ARG_ENABLE(fribidi,
2961 [ --enable-fribidi fribidi support (default enabled)])
2962 if test "${enable_freetype}" != "no"
2964 FREETYPE_PATH="${PATH}"
2965 AC_ARG_WITH(freetype-config-path,
2966 [ --with-freetype-config-path=PATH freetype-config path (default search in \$PATH)],
2967 [ if test "${with_freetype_config_path}" != "no"
2969 FREETYPE_PATH="${with_freetype_config_path}:${PATH}"
2971 AC_PATH_PROG(FREETYPE_CONFIG, freetype-config, no, ${FREETYPE_PATH})
2973 if test "${FREETYPE_CONFIG}" != "no"
2975 VLC_ADD_PLUGINS([freetype])
2976 VLC_ADD_CFLAGS([freetype],[`${FREETYPE_CONFIG} --cflags`])
2977 VLC_ADD_LDFLAGS([freetype],[`${FREETYPE_CONFIG} --libs`])
2978 AC_CHECK_HEADERS(Carbon/Carbon.h,
2979 [VLC_ADD_LDFLAGS([freetype],[-framework Carbon])])
2980 elif test "${enable_freetype}" = "yes"
2982 AC_MSG_ERROR([I couldn't find the freetype package. You can download libfreetype2
2983 from http://www.freetype.org/, or configure with --disable-freetype. Have a nice day.
2988 if test "${enable_fribidi}" != "no"
2990 FRIBIDI_PATH="${PATH}"
2991 AC_ARG_WITH(fribidi-config-path,
2992 [ --with-fribidi-config-path=PATH fribidi-config path (default search in \$PATH)],
2993 [ if test "${with_fribidi_config_path}" != "no"
2995 FRIBIDI_PATH="${with_fribidi_config_path}:${PATH}"
2997 AC_PATH_PROG(FRIBIDI_CONFIG, fribidi-config, no, ${FRIBIDI_PATH})
2999 if test "${FRIBIDI_CONFIG}" != "no"
3001 VLC_ADD_CFLAGS([freetype], [`${FRIBIDI_CONFIG} --cflags` -DHAVE_FRIBIDI])
3002 VLC_ADD_CPPFLAGS([skins2], [`${FRIBIDI_CONFIG} --cflags` -DHAVE_FRIBIDI])
3003 VLC_ADD_LDFLAGS([freetype], [`${FRIBIDI_CONFIG} --libs`])
3004 VLC_ADD_LDFLAGS([skins2], [`${FRIBIDI_CONFIG} --libs`])
3012 AC_ARG_ENABLE(libxml2,
3013 [ --enable-libxml2 libxml2 support (default enabled)])
3014 if test "${enable_libxml2}" != "no"
3017 AC_ARG_WITH(xml2-config-path,
3018 [ --with-xml2-config-path=PATH xml2-config path (default search in \$PATH)],
3019 [ if test "${with_xml2_config_path}" != "no"; then
3020 XML2_PATH="${with_xml2_config_path}:${PATH}"
3022 AC_PATH_PROG(XML2_CONFIG, xml2-config, no, ${XML2_PATH})
3023 if test "${XML2_CONFIG}" != "no"; then
3024 VLC_ADD_CPPFLAGS([xml],[`${XML2_CONFIG} --cflags`])
3025 VLC_ADD_LDFLAGS([xml],[`${XML2_CONFIG} --libs`])
3026 dnl depends on the xmlTextReader extension
3027 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_xml}"
3028 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_xml}"
3029 AC_CHECK_LIB(xml2,xmlTextReaderConstName,[
3030 AC_EGREP_HEADER(xmlTextReaderConstName,libxml/xmlreader.h,[
3031 VLC_ADD_PLUGINS([xml]) ],[
3032 AC_MSG_WARN([libxml2 missing the xmlTextReader extension, you should update your version])
3033 if test "${enable_xml2}" = "yes"; then
3034 AC_MSG_ERROR([libxml2 missing the xmlTextReader extension])
3037 AC_MSG_WARN([libxml2 missing the xmlTextReader extension, you should update your version])
3038 if test "${enable_xml2}" = "yes"; then
3039 AC_MSG_ERROR([libxml2 missing the xmlTextReader extension])
3041 LDFLAGS="${LDFLAGS_save}"
3042 CPPFLAGS="${CPPFLAGS_save}"
3044 if test "${enable_xml2}" = "yes"; then
3045 AC_MSG_ERROR([Could not find libxml2])
3054 [ --enable-svg SVG support (default disabled)])
3055 if test "${enable_svg}" == "yes"
3057 PKG_CHECK_MODULES(SVG,
3058 librsvg-2.0 >= 2.5.0,
3060 VLC_ADD_LDFLAGS([svg],[$SVG_LIBS])
3061 VLC_ADD_CFLAGS([svg],[$SVG_CFLAGS])
3062 VLC_ADD_PLUGINS([svg]) ],
3063 [AC_MSG_WARN(SVG library not found)])
3067 dnl Qt Embedded module
3068 dnl (disabled by default)
3071 [ --enable-qte QT Embedded support (default disabled)])
3072 if test "${enable_qte}" = "yes"
3075 [ --with-qte=PATH Qt Embedded headers and libraries])
3076 if test "${with_qte}" != "no" -a -n "${with_qte}"
3078 VLC_ADD_LDFLAGS([qte],[-L${with_qte}/lib `echo -L${with_qte}/lib | sed 's,opt/QtPalmtop,usr,'` -ljpeg -lqte])
3079 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])
3081 VLC_ADD_LDFLAGS([qte],[-L${QTDIR}/lib `echo -L${QTDIR}/lib | sed 's,opt/QtPalmtop,usr,'` -ljpeg -lqte])
3082 VLC_ADD_CXXFLAGS([qte],[-I${QTDIR}/include `echo -I${QTDIR}/include | sed 's,opt/QtPalmtop,usr,'` -DQT_QWS_IPAQ -DQWS -fno-exceptions -fno-rtti])
3084 VLC_ADD_PLUGINS([qte])
3086 CPPFLAGS="${CPPFLAGS_save} ${CXXFLAGS_qte}"
3087 AC_CHECK_HEADERS(qt.h jpeglib.h, ,[
3088 AC_MSG_ERROR([echo "Cannot find QT Embedded development headers."])
3090 CPPFLAGS="${CPPFLAGS_save}"
3094 dnl Qt Video output module
3095 dnl (disabled by default)
3097 dnl AC_ARG_ENABLE(qt_video,
3098 dnl [ --enable-qt_video QT Video Output support (default disabled)])
3099 dnl if test "${enable_qt_video}" = "yes"
3101 dnl VLC_ADD_PLUGINS([qt_video])
3102 dnl VLC_ADD_LDFLAGS([qt_video],[-L${QTDIR}/lib])
3103 dnl LDFLAGS="${LDFLAGS_save} ${LDFLAGS_qt_video}"
3104 dnl AC_CHECK_LIB(qt-mt,main,[
3105 dnl VLC_ADD_LDFLAGS([qt_video],[-lqt-mt])
3107 dnl AC_CHECK_LIB(qt,main,[
3108 dnl VLC_ADD_LDFLAGS([qt_video],[-lqt])
3111 dnl NEED_QTE_MAIN=yes
3112 dnl LDFLAGS="${LDFLAGS_save}"
3113 dnl VLC_ADD_CXXFLAGS([qt_video],[-I/usr/include/qt3 -I/usr/include/qt -I${QTDIR}/include])
3117 dnl Roku HD1000 Video output module
3119 AC_ARG_ENABLE(hd1000v,
3120 [ --enable-hd1000v HD1000 Video Output module (default enabled on HD1000)])
3121 if test "${enable_hd1000v}" != "no" -a "${CXX}" != "" &&
3122 (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
3123 test "${enable_hd1000v}" = "yes"); then
3125 AC_CHECK_HEADERS([cascade/graphics/CascadeScreen.h cascade/graphics/CascadeBitmap.h],
3127 can_build_roku="yes"
3131 AC_MSG_WARN([Not building Roku HD1000 compatible video output])
3133 if test "$can_build_roku" = "yes"
3135 VLC_ADD_PLUGINS([hd1000v])
3136 VLC_ADD_LDFLAGS([hd1000v],[-lCascade -ldvbpsi -lmad])
3142 dnl Windows DirectX module
3144 AC_ARG_ENABLE(directx,
3145 [ --enable-directx Win32 DirectX support (default enabled on Win32)])
3146 if test "${enable_directx}" != "no"
3148 if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce" -o "${SYS}" = "cygwin"
3150 AC_ARG_WITH(directx,
3151 [ --with-directx=PATH Win32 DirectX headers])
3152 if test -z "${with_directx}"
3154 AC_CHECK_HEADERS(ddraw.h,
3155 [ VLC_ADD_PLUGINS([vout_directx aout_directx])
3156 VLC_ADD_LDFLAGS([vout_directx],[-lgdi32])
3157 dnl to be moved when dependance is removed
3158 AC_CHECK_HEADERS(GL/gl.h, [
3159 VLC_ADD_PLUGINS([glwin32])
3160 VLC_ADD_LDFLAGS([glwin32],[-lopengl32 -lgdi32])
3163 AC_MSG_CHECKING(for directX headers in ${with_directx})
3164 if test -f ${with_directx}/ddraw.h
3166 VLC_ADD_PLUGINS([vout_directx aout_directx])
3167 VLC_ADD_CPPFLAGS([vout_directx aout_directx],[-I${with_directx}])
3168 VLC_ADD_LDFLAGS([vout_directx],[-lgdi32])
3172 AC_MSG_ERROR([Cannot find ${with_directx}/ddraw.h!])
3179 dnl Linux framebuffer module
3182 [ --enable-fb Linux framebuffer support (default enabled on Linux)])
3183 if test "${enable_fb}" != "no"
3185 AC_CHECK_HEADERS(linux/fb.h, [
3186 VLC_ADD_PLUGINS([fb])
3191 dnl Linux MGA module
3194 [ --enable-mga Linux kernel Matrox support (default disabled)],
3195 [ if test "${enable_mga}" = "yes"
3197 VLC_ADD_PLUGINS([mga])
3203 AC_ARG_ENABLE(svgalib,
3204 [ --enable-svgalib SVGAlib support (default disabled)])
3205 if test "${enable_svgalib}" = "yes"
3207 VLC_ADD_PLUGINS([svgalib])
3208 VLC_ADD_LDFLAGS([svgalib],[-lvgagl -lvga])
3215 [ --enable-ggi GGI support (default disabled)])
3216 if test "${enable_ggi}" = "yes"
3218 VLC_ADD_PLUGINS([ggi])
3219 VLC_ADD_LDFLAGS([ggi],[-lggi])
3221 [ --with-ggi=PATH path to libggi],
3222 [ if test "${with_ggi}" != "no" -a -n "${with_ggi}"
3224 VLC_ADD_CPPFLAGS([ggi],[-I${with_ggi}/include])
3225 VLC_ADD_LDFLAGS([ggi],[-L${with_ggi}/lib])
3232 AC_ARG_ENABLE(glide,
3233 [ --enable-glide Glide (3dfx) support (default disabled)])
3234 if test "${enable_glide}" = "yes"
3236 VLC_ADD_PLUGINS([glide])
3237 VLC_ADD_LDFLAGS([glide],[-lglide2x -lm])
3238 VLC_ADD_CPPFLAGS([glide],[-I/usr/include/glide])
3240 [ --with-glide=PATH path to libglide],
3241 [ if test "${with_glide}" != "no" -a -n "${with_glide}"
3243 VLC_ADD_CPPFLAGS([glide],[-I${with_glide}/include])
3244 VLC_ADD_LDFLAGS([glide],[-L${with_glide}/lib])
3252 [ --enable-aa aalib output (default disabled)])
3253 if test "${enable_aa}" = "yes"
3255 AC_CHECK_HEADER(aalib.h,have_aa="true",have_aa="false")
3256 if test "${have_aa}" = "true"
3258 VLC_ADD_PLUGINS([aa])
3259 VLC_ADD_LDFLAGS([aa],[-laa])
3267 [ --enable-caca libcaca output (default disabled)])
3268 if test "${enable_caca}" = "yes"
3271 AC_ARG_WITH(caca-config-path,
3272 [ --with-caca-config-path=PATH caca-config path (default search in \$PATH)],
3273 [ if test "${with_caca_config_path}" != "no"
3275 CACA_PATH="${with_caca_config_path}:${PATH}"
3277 AC_PATH_PROG(CACA_CONFIG, caca-config, no, ${CACA_PATH})
3278 if test "${CACA_CONFIG}" != "no"
3280 VLC_ADD_PLUGINS([caca])
3281 VLC_ADD_CFLAGS([caca],[`${CACA_CONFIG} --cflags`])
3282 VLC_ADD_LDFLAGS([caca],[`${CACA_CONFIG} --plugin-libs`])
3287 dnl win32 GDI plugin
3289 AC_ARG_ENABLE(wingdi,
3290 [ --enable-wingdi Win32 GDI module (default enabled on Win32)])
3291 if test "${enable_wingdi}" != "no"; then
3292 if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"; then
3293 VLC_ADD_PLUGINS([wingdi])
3294 VLC_ADD_LDFLAGS([wingdi],[-lgdi32])
3296 if test "${SYS}" = "mingwce"; then
3297 VLC_ADD_PLUGINS([wingdi wingapi])
3305 AC_ARG_WITH(,[Audio plugins:])
3308 dnl OSS /dev/dsp module (enabled by default except on win32)
3311 [ --enable-oss Linux OSS /dev/dsp support (enabled on Linux)])
3313 if test "${enable_oss}" != "no" &&
3314 (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
3315 test "${enable_oss}" = "yes")
3317 AC_CHECK_HEADERS(soundcard.h sys/soundcard.h machine/soundcard.h, [
3318 VLC_ADD_PLUGINS([oss])
3319 AC_CHECK_LIB(ossaudio,main,VLC_ADD_LDFLAGS([oss],[-lossaudio]))
3327 [ --enable-esd Esound library support (default disabled)],
3328 [if test "${enable_esd}" = "yes"
3330 AC_PATH_PROG(ESD_CONFIG, esd-config, no)
3331 if test "${ESD_CONFIG}" != "no"
3333 VLC_ADD_PLUGINS([esd])
3334 VLC_ADD_CFLAGS([esd],[`${ESD_CONFIG} --cflags`])
3335 VLC_ADD_LDFLAGS([esd],[`${ESD_CONFIG} --libs`])
3340 dnl Portaudio module
3342 AC_ARG_ENABLE(portaudio,
3343 [ --enable-portaudio Portaudio library support (default disabled)],
3344 [if test "${enable_portaudio}" = "yes"
3346 VLC_ADD_PLUGINS([portaudio])
3347 VLC_ADD_CXXFLAGS([portaudio],[])
3348 if test "${SYS}" = "mingw32"; then
3349 VLC_ADD_LDFLAGS([portaudio],[-lportaudio -lwinmm -lole32])
3351 VLC_ADD_LDFLAGS([portaudio],[-lportaudio])
3359 [ --enable-arts aRts sound server (default disabled)],
3360 [if test "${enable_arts}" = "yes"
3362 AC_PATH_PROG(ARTS_CONFIG, artsc-config, no)
3363 if test "${ARTS_CONFIG}" != "no"
3365 VLC_ADD_PLUGINS([arts])
3366 VLC_ADD_CFLAGS([arts],[`${ARTS_CONFIG} --cflags`])
3367 VLC_ADD_LDFLAGS([arts],[`${ARTS_CONFIG} --libs `])
3375 [ --enable-alsa ALSA sound support for Linux (default enabled)])
3376 if test "${enable_alsa}" != "no"
3378 AC_CHECK_HEADER(alsa/asoundlib.h, AC_CHECK_LIB(asound, main, have_alsa="true", have_alsa="false"),have_alsa="false")
3379 if test "${have_alsa}" = "true"
3381 AC_TRY_COMPILE([#define ALSA_PCM_NEW_HW_PARAMS_API
3382 #define ALSA_PCM_NEW_SW_PARAMS_API
3383 #include <alsa/asoundlib.h>],
3384 [void foo() { snd_pcm_hw_params_get_period_time(0,0,0); }],
3385 AC_DEFINE(HAVE_ALSA_NEW_API, 1, Define if ALSA is at least rc4))
3386 VLC_ADD_PLUGINS([alsa])
3387 VLC_ADD_LDFLAGS([alsa],[-lasound -lm -ldl])
3389 if test "${enable_alsa}" = "yes"; then
3390 AC_MSG_ERROR([Could not find ALSA development headers])
3396 dnl win32 waveOut plugin
3398 AC_ARG_ENABLE(waveout,
3399 [ --enable-waveout Win32 waveOut module (default enabled on Win32)])
3400 if test "${enable_waveout}" != "no"; then
3401 if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"; then
3402 VLC_ADD_PLUGINS([waveout])
3403 VLC_ADD_LDFLAGS([waveout],[-lwinmm])
3405 if test "${SYS}" = "mingwce"; then
3406 VLC_ADD_PLUGINS([waveout])
3411 dnl CoreAudio plugin
3413 AC_ARG_ENABLE(coreaudio,
3414 [ --enable-coreaudio CoreAudio module (default enabled on MacOS X)])
3415 if test "${enable_coreaudio}" != "no" &&
3416 (test "${SYS}" = "darwin" || test "${enable_coreaudio}" = "yes")
3418 AC_CHECK_HEADERS(CoreAudio/CoreAudio.h,
3419 [ VLC_ADD_BUILTINS([coreaudio auhal])
3420 VLC_ADD_LDFLAGS([coreaudio auhal],[-framework CoreAudio -framework AudioUnit -framework AudioToolbox])
3421 ], [ AC_MSG_ERROR([cannot find CoreAudio headers]) ])
3425 dnl Roku HD1000 audio
3427 AC_ARG_ENABLE(hd1000a,
3428 [ --enable-hd1000a HD1000 audio module (default enabled on HD1000)])
3429 if test "${enable_hd1000a}" != "no" -a "${CXX}" != "" &&
3430 (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
3431 test "${enable_hd1000a}" = "yes")
3434 AC_CHECK_HEADERS(deschutes/libraries/hdmachinex225/PCMAudioPlayer.h, [
3435 VLC_ADD_PLUGINS([hd1000a])
3436 AC_CHECK_LIB(HDMachineX225,main,VLC_ADD_LDFLAGS([hd1000a],[-lHDMachineX225])) ])
3441 dnl CyberLink for C++ UPnP stack
3443 AC_ARG_ENABLE(cyberlink,
3444 [ --enable-cyberlink CyberLink for C++ UPnP stack (default disabled)])
3445 if test "${CXX}" != "" -a "${enable_cyberlink}" = "yes" || (test "${enable_cyberlink}" != "no"); then
3446 AC_ARG_WITH(cyberlink-tree,
3447 [ --with-cyberlink-tree=PATH CyberLink for C++ tree for static linking])
3450 dnl test for --with-cyberlink-tree
3452 if test ! -z "${with_cyberlink_tree}" -a "${CXX}" != ""; then
3454 real_cyberlink_tree="`cd ${with_cyberlink_tree} 2>/dev/null && pwd`"
3455 if test -z "${real_cyberlink_tree}"
3457 dnl The given directory can't be found
3459 AC_MSG_ERROR([cannot cd to ${with_cyberlink_tree}])
3461 CXXFLAGS_save="${CXXFLAGS}"
3462 CXXFLAGS_cyberlink="-I${real_cyberlink_tree}/include"
3463 CXXFLAGS="${CXXFLAGS} ${CXXFLAGS_cyberlink}"
3464 AC_CHECK_HEADERS([cybergarage/upnp/MediaServer.h],
3465 [ VLC_ADD_CXXFLAGS([upnp], [${CXXFLAGS_cyberlink}])
3466 VLC_ADD_PLUGINS([upnp])
3468 AC_MSG_ERROR([cannot find CyberLink for C++ headers])
3470 AC_MSG_CHECKING(for libclink.a in ${with_cyberlink_tree})
3471 if test -f "${real_cyberlink_tree}/lib/unix/libclink.a"
3473 AC_MSG_RESULT(${real_cyberlink_tree}/lib/unix/libclink.a)
3474 VLC_ADD_LDFLAGS([upnp], [${real_cyberlink_tree}/lib/unix/libclink.a -lexpat])
3477 AC_MSG_ERROR([cannot find ${real_cyberlink_tree}/lib/unix/libclink.a, make sure you compiled CyberLink for C++ in ${with_cyberlink_tree}])
3479 CXXFLAGS="${CXXFLAGS_save}"
3485 dnl Interface plugins
3488 AC_ARG_WITH(,[Interface plugins:])
3490 dnl special case for BeOS
3491 if test "${SYS}" = "beos"
3493 VLC_ADD_BUILTINS([beos])
3499 AC_ARG_ENABLE(skins2,
3500 [ --enable-skins2 Skins2 interface module (experimental)])
3501 if test "${enable_skins2}" = "yes" ||
3502 (test "${SYS}" != "darwin" && test "${SYS}" != "beos" &&
3503 test "${SYS}" != "mingwce" && test "${enable_skins2}" != "no"); then
3505 dnl test for the required libraries
3506 skins2_missing_lib="no"
3509 if test "${FREETYPE_CONFIG}" != "no"; then
3510 VLC_ADD_CPPFLAGS([skins2],[`${FREETYPE_CONFIG} --cflags`])
3511 VLC_ADD_LDFLAGS([skins2],[`${FREETYPE_CONFIG} --libs`])
3513 skins2_missing_lib="yes"
3514 if test "${enable_skins2}" = "yes"; then
3515 AC_MSG_ERROR([Could not find freetype (required for skins2)])
3519 if test "${skins2_missing_lib}" = "no" && (test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"); then
3520 VLC_ADD_PLUGINS([skins2])
3521 ALIASES="${ALIASES} svlc"
3522 VLC_ADD_CPPFLAGS([skins2],[-U_OFF_T_ -U_off_t -Imodules/gui/skins2 -DWIN32_SKINS])
3523 VLC_ADD_CXXFLAGS([skins2],[-O2 -fno-rtti])
3524 VLC_ADD_LDFLAGS([skins2],[-loleaut32 -lwinspool -lwinmm -lshell32 -lctl3d32 -ladvapi32 -lwsock32 -lgdi32 -lcomdlg32 -lole32 -luuid -lcomctl32])
3526 else if test "${skins2_missing_lib}" = "no"; then
3527 VLC_ADD_PLUGINS([skins2])
3528 ALIASES="${ALIASES} svlc"
3529 VLC_ADD_CPPFLAGS([skins2],[-Imodules/gui/skins2 -I${x_includes} -DX11_SKINS])
3530 VLC_ADD_CXXFLAGS([skins2],[-O2 -fno-rtti])
3531 VLC_ADD_LDFLAGS([skins2],[-L${x_libraries} -lXext -lX11])
3539 dnl AC_ARG_ENABLE(gtk,
3540 dnl [ --enable-gtk Gtk+ support (default enabled)])
3541 dnl if test "${enable_gtk}" != "no"
3543 dnl GTK_PATH="${PATH}"
3544 dnl AC_ARG_WITH(gtk-config-path,
3545 dnl [ --with-gtk-config-path=PATH gtk-config path (default search in \$PATH)],
3546 dnl [ if test "${with_gtk_config_path}" != "no"
3548 dnl GTK_PATH="${with_gtk_config_path}:${PATH}"
3550 dnl # look for gtk-config
3551 dnl AC_PATH_PROG(GTK12_CONFIG, gtk12-config, no, ${GTK_PATH})
3552 dnl GTK_CONFIG=${GTK12_CONFIG}
3553 dnl if test "${GTK_CONFIG}" = "no"
3555 dnl AC_PATH_PROG(GTK_CONFIG, gtk-config, no, ${GTK_PATH})
3557 dnl if test "${GTK_CONFIG}" != "no"
3559 dnl if expr 1.2.0 \> `${GTK_CONFIG} --version` >/dev/null
3561 dnl AC_MSG_ERROR([Your development package for Gtk+ is too old, you need at least version 1.2.0. Please upgrade and try again. Alternatively you can also configure with --disable-gtk.])
3563 dnl if test "${SYS}" != "mingw32"; then
3564 dnl VLC_ADD_CFLAGS([gtk],[`${GTK_CONFIG} --cflags gtk gthread`])
3565 dnl VLC_ADD_LDFLAGS([gtk],[`${GTK_CONFIG} --libs gtk gthread | sed 's,-rdynamic,,'`])
3567 dnl VLC_ADD_CFLAGS([gtk],[`${GTK_CONFIG} --cflags gtk`])
3568 dnl VLC_ADD_LDFLAGS([gtk],[`${GTK_CONFIG} --libs gtk | sed 's,-rdynamic,,'`])
3570 dnl # now look for the gtk.h header
3571 dnl CPPFLAGS="${CPPFLAGS_save} ${CFLAGS_gtk}"
3572 dnl ac_cv_gtk_headers=yes
3573 dnl AC_CHECK_HEADERS(gtk/gtk.h glib.h gdk/gdk.h, , [
3574 dnl ac_cv_gtk_headers=no
3575 dnl echo "Cannot find gtk development headers."
3577 dnl if test "${ac_cv_gtk_headers}" = "yes"
3579 dnl VLC_ADD_PLUGINS([gtk])
3580 dnl if test "${SYS}" != "mingw32"; then
3581 dnl NEED_GTK_MAIN=yes
3583 dnl ALIASES="${ALIASES} gvlc"
3585 dnl CPPFLAGS="${CPPFLAGS_save}"
3590 dnl Gtk+2 module ! Disabled for now as it is unusable and confuses users
3592 dnl AC_ARG_ENABLE(gtk2,
3593 dnl [ --enable-gtk2 Gtk2 support (default disabled)])
3594 dnl if test "${enable_gtk2}" = "yes"
3596 dnl PKG_CHECK_MODULES(GTK2, [gtk+-2.0 >= 2.0.0, gthread-2.0])
3597 dnl VLC_ADD_CFLAGS([gtk2],[${GTK2_CFLAGS}])
3598 dnl VLC_ADD_LDFLAGS([gtk2],[${GTK2_LIBS}])
3599 dnl VLC_ADD_PLUGINS([gtk2])
3600 dnl if test "${SYS}" != "mingw32"; then
3601 dnl NEED_GTK2_MAIN=yes
3606 dnl PDA Gtk+2 module
3609 [ --enable-pda PDA interface needs Gtk2 support (default disabled)])
3610 if test "${enable_pda}" = "yes"
3612 PKG_CHECK_MODULES(GTK2, [gtk+-2.0 >= 2.0.0, gthread-2.0])
3613 VLC_ADD_CFLAGS([gtk2],[${GTK2_CFLAGS}])
3614 VLC_ADD_LDFLAGS([gtk2],[${GTK2_LIBS}])
3615 VLC_ADD_CFLAGS([pda],[${GTK2_CFLAGS} ${CFLAGS_pda}])
3616 VLC_ADD_LDFLAGS([pda],[${GTK2_LIBS} ${LDFLAGS_pda}])
3617 VLC_ADD_PLUGINS([pda])
3618 if test "${SYS}" != "mingw32"; then
3624 dnl dnl Gnome module
3626 dnl AC_ARG_ENABLE(gnome,
3627 dnl [ --enable-gnome Gnome interface support (default disabled)],
3628 dnl [if test "${enable_gnome}" = "yes"; then
3629 dnl # look for gnome-config
3630 dnl AC_PATH_PROG(GNOME_CONFIG, gnome-config, no)
3631 dnl if test -x ${GNOME_CONFIG}
3633 dnl VLC_ADD_CFLAGS([gnome],[`${GNOME_CONFIG} --cflags gtk gnomeui`])
3634 dnl VLC_ADD_LDFLAGS([gnome],[`${GNOME_CONFIG} --libs gnomeui | sed 's,-rdynamic,,'`])
3636 dnl # now look for the gnome.h header
3637 dnl CPPFLAGS="${CPPFLAGS_save} ${CFLAGS_gnome}"
3638 dnl AC_CHECK_HEADERS(gnome.h, [
3639 dnl VLC_ADD_PLUGINS([gnome])
3640 dnl NEED_GTK_MAIN=yes
3641 dnl NEED_GNOME_MAIN=yes
3642 dnl ALIASES="${ALIASES} gnome-vlc"
3643 dnl dnl We need this because of some moronic gnomesupport.h flavours
3644 dnl AC_MSG_CHECKING(for strndup in gnome.h)
3645 dnl AC_EGREP_HEADER(strndup,gnome.h,[
3646 dnl AC_MSG_RESULT(yes)
3647 dnl AC_DEFINE(STRNDUP_IN_GNOME_H, 1,
3648 dnl Define if <gnome.h> defines strndup.)],[
3649 dnl AC_MSG_RESULT(no)])
3651 dnl AC_MSG_ERROR([Can't find gnome headers. Please install the gnome
3652 dnl developement tools or remove the --enable-gnome option])
3654 dnl CPPFLAGS="${CPPFLAGS_save}"
3658 dnl Gnome2 module ! Disabled for know as it is unuseable and confuses users
3660 dnl AC_ARG_ENABLE(gnome2,
3661 dnl [ --enable-gnome2 Gnome2 support (default disabled)])
3662 dnl if test "${enable_gnome2}" = "yes"
3664 dnl PKG_CHECK_MODULES(GNOME2, [libgnomeui-2.0])
3665 dnl VLC_ADD_CFLAGS([gnome2],[${GNOME2_CFLAGS}])
3666 dnl VLC_ADD_LDFLAGS([gnome2],[${GNOME2_LIBS}])
3667 dnl VLC_ADD_PLUGINS([gnome2])
3668 dnl if test "${SYS}" != "mingw32"; then
3669 dnl NEED_GNOME2_MAIN=yes
3674 dnl wxWindows module
3676 AC_ARG_ENABLE(wxwindows,
3677 [ --enable-wxwindows wxWindows support (default enabled)])
3678 if test "${enable_wxwindows}" != "no"
3680 WXWINDOWS_PATH="${PATH}"
3681 AC_ARG_WITH(wx-config-path,
3682 [ --with-wx-config-path=PATH wx-config path (default search in \$PATH)],
3683 [ if test "${with_wx_config_path}" != "no"
3685 WXWINDOWS_PATH="${with_wx_config_path}:${PATH}"
3687 WXWINDOWS_NAME="wx-config"
3688 AC_ARG_WITH(wx-config,
3689 [ --with-wx-config=NAME wx-config name (default is wx-config)],
3690 [ if test "${with_wx_config}" != "no"
3692 WXWINDOWS_NAME="${with_wx_config}"
3694 # look for wx-config
3695 AC_PATH_PROG(WX_CONFIG, ${WXWINDOWS_NAME}, no, ${WXWINDOWS_PATH})
3696 if test "${WX_CONFIG}" != "no" -a "${CXX}" != ""
3698 if expr 2.3.0 \> `${WX_CONFIG} --version` >/dev/null
3700 AC_MSG_ERROR([Your development package for wxWindows is too old, you need at least version 2.3.0. Please upgrade and try again. Alternatively you can also configure with --disable-wxwindows.])
3704 # playlist.cpp:1351: error: ISO C++ forbids cast to non-reference type
3705 # into a warning. However better would be to fix playlist.cpp
3706 AC_CACHE_CHECK([if \$CXX accepts -fpermissive],
3707 [ac_cv_cxx_fpermissive],
3708 [CXXFLAGS="${CXXFLAGS_save} -fpermissive"
3709 AC_TRY_COMPILE([],,ac_cv_cxx_fpermissive=yes,
3710 ac_cv_cxx_fpermissive=no)])
3711 if test "${ac_cv_cxx_fpermissive}" = "yes"; then
3712 VLC_ADD_CXXFLAGS([wxwindows],-fpermissive)
3714 VLC_ADD_LDFLAGS([wxwindows],[`${WX_CONFIG} --libs`])
3715 VLC_ADD_CXXFLAGS([wxwindows],[`${WX_CONFIG} --cxxflags`])
3716 if test "$have_libcdio" = "yes"
3718 VLC_ADD_LDFLAGS([wxwindows],[$LIBCDIO_LIBS])
3719 VLC_ADD_CXXFLAGS([wxwindows],[$LIBCDIO_CFLAGS])
3721 AC_MSG_WARN([Probe disc disabled because ok libcdio library not found])
3724 if test "$have_libvcdinfo" = "yes"
3726 VLC_ADD_LDFLAGS([wxwindows],[$VCDINFO_LIBS])
3727 VLC_ADD_CXXFLAGS([wxwindows],[$VCDINFO_CFLAGS])
3729 AC_MSG_WARN([VCD information on Probe disc disabled because ok libvcdinfo not found])
3732 # now look for the wxprec.h header
3733 CPPFLAGS="${CPPFLAGS_save} ${CXXFLAGS_wxwindows}"
3734 ac_cv_wx_headers=yes
3735 AC_CHECK_HEADERS(wx/wxprec.h, , [
3737 echo "Cannot find wxWindows development headers."
3739 if test "${ac_cv_wx_headers}" = "yes"
3741 VLC_ADD_PLUGINS([wxwindows])
3742 ALIASES="${ALIASES} wxvlc"
3744 CPPFLAGS="${CPPFLAGS_save}"
3750 dnl WinCE GUI module
3752 if test "${SYS}" = "mingwce"; then
3753 VLC_ADD_BUILTINS([wince])
3754 VLC_ADD_CXXFLAGS([wince],[])
3755 VLC_ADD_LDFLAGS([wince],[-lcommctrl -lcommdlg -laygshell])
3757 VLC_ADD_LDFLAGS([wince],[\\\${top_builddir}modules/gui/wince/wince_rc.o])
3758 elif test "${SYS}" = "mingw32"; then
3759 VLC_ADD_CXXFLAGS([wince],[])
3760 VLC_ADD_LDFLAGS([wince],[-lcomctl32 -lcomdlg32 -lgdi32 -lole32])
3762 VLC_ADD_LDFLAGS([wince],[\\\${top_builddir}modules/gui/wince/wince_rc.o])
3766 dnl Simple test for skins2 dependency
3768 if test "${enable_skins2}" != "no"
3770 if test "${WX_CONFIG}" = "no"
3772 AC_MSG_ERROR([The skins2 module depends on the wxWindows 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 wxWindows development package or alternatively you can also configure with: --disable-wxwindows --disable-skins2.])
3779 dnl AC_ARG_ENABLE(qt,
3780 dnl [ --enable-qt Qt interface support (default disabled)],
3781 dnl [if test "${enable_qt}" = "yes"; then
3782 dnl VLC_ADD_PLUGINS([qt])
3783 dnl ALIASES="${ALIASES} qvlc"
3784 dnl VLC_ADD_LDFLAGS([qt],[-L${QTDIR}/lib])
3785 dnl LDFLAGS="${LDFLAGS_save} ${LDFLAGS_qt}"
3786 dnl AC_CHECK_LIB(qt-mt,main,[
3787 dnl VLC_ADD_LDFLAGS([qt],[-lqt-mt])
3789 dnl AC_CHECK_LIB(qt,main,[
3790 dnl VLC_ADD_LDFLAGS([qt],[-lqt])
3793 dnl LDFLAGS="${LDFLAGS_save}"
3794 dnl VLC_ADD_CXXFLAGS([qt],[-I/usr/include/qt3 -I/usr/include/qt -I${QTDIR}/include])
3795 dnl if test -x ${QTDIR}/bin/moc
3797 dnl MOC=${QTDIR}/bin/moc
3806 dnl AC_ARG_ENABLE(kde,
3807 dnl [ --enable-kde KDE interface support (default disabled)],
3808 dnl [if test "${enable_kde}" = "yes"; then
3809 dnl VLC_ADD_PLUGINS([kde])
3810 dnl ALIASES="${ALIASES} kvlc"
3811 dnl VLC_ADD_LDFLAGS([kde],[-L${KDEDIR}/lib])
3812 dnl dnl Check for -lkfile (only in KDE 2) or -lkdeui -lkio (KDE 3)
3813 dnl LDFLAGS="${LDFLAGS_save} ${LDFLAGS_kde}"
3814 dnl AC_CHECK_LIB(kfile,main,[
3815 dnl VLC_ADD_LDFLAGS([kde],[-lkfile])
3817 dnl LDFLAGS="${LDFLAGS_save} ${LDFLAGS_kde}"
3818 dnl AC_CHECK_LIB(kdeui,main,[
3819 dnl VLC_ADD_LDFLAGS([kde],[-lkdeui])
3821 dnl LDFLAGS="${LDFLAGS_save} ${LDFLAGS_kde}"
3822 dnl AC_CHECK_LIB(kio,main,[
3823 dnl VLC_ADD_LDFLAGS([kde],[-lkio])
3825 dnl LDFLAGS="${LDFLAGS_save}"
3826 dnl VLC_ADD_CXXFLAGS([kde],[-I/usr/include/kde -I/usr/include/qt3 -I/usr/include/qt])
3827 dnl VLC_ADD_CXXFLAGS([kde],[-I${KDEDIR}/include -I${QTDIR}/include])
3828 dnl if test -x ${QTDIR}/bin/moc
3830 dnl MOC=${QTDIR}/bin/moc
3837 dnl Opie QT embedded module
3840 [ --enable-opie Qt embedded interface support (default disabled)],
3841 [if test "${enable_opie}" = "yes"; then
3843 [ --with-qte=PATH Qt Embedded headers and libraries])
3844 if test "${with_qte}" != "no" -a -n "${with_qte}"
3846 VLC_ADD_LDFLAGS([qte],[-L${with_qte}/lib `echo -L${with_qte}/lib | sed 's,opt/QtPalmtop,usr,'` -ljpeg -lqte])
3847 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])
3849 VLC_ADD_LDFLAGS([qte],[-L${QTDIR}/lib `echo -L${QTDIR}/lib | sed 's,opt/QtPalmtop,usr,'`])
3850 VLC_ADD_CXXFLAGS([qte],[-I${QTDIR}/include `echo -I${QTDIR}/include | sed 's,opt/QtPalmtop,usr,'`])
3852 CPPFLAGS="${CPPFLAGS_save} ${CXXFLAGS_qte}"
3853 AC_CHECK_HEADERS(qt.h jpeglib.h, ,[
3854 AC_MSG_ERROR([echo "Cannot find QT Embedded development headers."])
3856 CPPFLAGS="${CPPFLAGS_save}"
3858 VLC_ADD_PLUGINS([opie])
3860 VLC_ADD_LDFLAGS([opie],[-lqpe ${LDFLAGS_qte}])
3861 VLC_ADD_CXXFLAGS([opie],[${CXXFLAGS_qte}])
3862 if test "${with_qte}" != "no" -a -n "${with_qte}"
3864 MOC=${with_qte}/bin/moc
3866 MOC=${QTDIR}/bin/moc
3873 AC_ARG_ENABLE(macosx,
3874 [ --enable-macosx MacOS X support (default enabled on MacOS X)],
3875 [if test "${enable_macosx}" = "yes"
3877 VLC_ADD_BUILTINS([macosx])
3878 VLC_ADD_LDFLAGS([macosx],[-framework IOKit -framework Cocoa -framework Carbon -framework QuickTime -lobjc -ObjC -framework OpenGL])
3880 [AC_CHECK_HEADERS(Cocoa/Cocoa.h,
3881 VLC_ADD_BUILTINS([macosx])
3882 VLC_ADD_LDFLAGS([macosx],[-framework IOKit -framework Cocoa -framework Carbon -framework QuickTime -lobjc -ObjC -framework OpenGL])
3889 [ --enable-qnx QNX RTOS support (default enabled on QNX RTOS)])
3890 if test "${enable_qnx}" != "no"
3892 AC_CHECK_HEADERS(Ph.h, [
3893 VLC_ADD_PLUGINS([qnx])
3894 VLC_ADD_LDFLAGS([qnx],[-lasound -lph])
3901 AC_ARG_ENABLE(ncurses,
3902 [ --enable-ncurses ncurses interface support (default disabled)],
3903 [if test "${enable_ncurses}" = "yes"; then
3904 VLC_ADD_PLUGINS([ncurses])
3905 VLC_ADD_LDFLAGS([ncurses],[-lncurses])
3912 [ --enable-xosd xosd interface support (default disabled)])
3913 if test "${enable_xosd}" = "yes"
3915 AC_CHECK_HEADER(xosd.h, have_xosd="true", have_xosd="false")
3916 AC_CHECK_LIB(xosd,xosd_set_offset,
3917 AC_DEFINE(HAVE_XOSD_VERSION_1, 1, Define if <xosd.h> is 1.0.x),
3918 AC_CHECK_LIB(xosd,xosd_set_horizontal_offset,
3919 AC_DEFINE(HAVE_XOSD_VERSION_2, 1, Define if <xosd.h> is 2.0.x),
3920 AC_TRY_COMPILE([#include <xosd.h>],
3921 [void foo() { xosd_init("foo","bar",12,XOSD_top,2,12,42); }],,
3922 AC_DEFINE(HAVE_XOSD_VERSION_0, 1, Define if <xosd.h> is pre-1.0.0))))
3923 if test "${have_xosd}" = "true"
3925 VLC_ADD_PLUGINS([xosd])
3926 VLC_ADD_LDFLAGS([xosd],[-lxosd])
3931 dnl Visualisation plugin
3933 AC_ARG_ENABLE(visual,
3934 [ --enable-visual visualisation plugin (default enabled)])
3935 if test "${enable_visual}" != "no"
3937 VLC_ADD_PLUGINS([visual])
3941 dnl OpenGL visualisation plugin
3943 AC_ARG_ENABLE(galaktos,
3944 [ --enable-galaktos OpenGL visualisation plugin (default disabled)])
3945 if test "${enable_galaktos}" = "yes"
3947 AC_CHECK_HEADERS(GL/gl.h, [
3948 VLC_ADD_PLUGINS([galaktos])
3949 if test "${SYS}" != "mingw32"; then
3950 VLC_ADD_LDFLAGS([galaktos],[-L${x_libraries} -lGL -lGLU])
3952 VLC_ADD_LDFLAGS([galaktos],[-lopengl32])
3958 dnl goom visualization plugin
3961 [ --enable-goom goom visualisation plugin (default disabled)])
3962 if test "${enable_goom}" = "yes"
3964 AC_ARG_WITH(goom-tree,
3965 [ --with-goom-tree=PATH goom tree for static linking (required)])
3968 dnl test for --with-goom-tree
3970 if test "${with_goom_tree}" != "no" -a -n "${with_goom_tree}"; then
3971 AC_MSG_CHECKING(for libgoom2.a in ${with_goom_tree})
3972 real_goom_tree="`cd ${with_goom_tree} 2>/dev/null && pwd`"
3973 if test -z "${real_goom_tree}"; then
3974 dnl The given directory can't be found
3976 AC_MSG_ERROR([cannot cd to ${with_goom_tree}])
3978 if test -f "${real_goom_tree}/src/.libs/libgoom2.a"; then
3979 AC_MSG_RESULT(${real_goom_tree}/src/.libs/libgoom2.a)
3980 VLC_ADD_BUILTINS([goom])
3981 VLC_ADD_LDFLAGS([goom],[-L${real_goom_tree}/src/.libs -lgoom2])
3982 VLC_ADD_CPPFLAGS([goom],[-I${real_goom_tree}/src -DUSE_GOOM_TREE])
3984 dnl The given libgoom2 wasn't built, try to look for the old goom
3986 AC_MSG_CHECKING(for libgoom.a in ${with_goom_tree})
3987 if test -f "${real_goom_tree}/libgoom.a"; then
3988 AC_MSG_RESULT(${real_goom_tree}/libgoom.a)
3989 VLC_ADD_BUILTINS([goom])
3990 VLC_ADD_LDFLAGS([goom],[-L${real_goom_tree} -lgoom])
3991 VLC_ADD_CPPFLAGS([goom],[-I${real_goom_tree} -DUSE_GOOM_TREE -DOLD_GOOM])
3993 dnl The given libgoom wasn't built
3995 AC_MSG_ERROR([cannot find ${real_goom_tree}/src/.libs/libgoom2.a, make sure you compiled goom in ${with_goom_tree}])
3999 AC_CHECK_HEADERS(goom/goom.h, [
4000 LDFLAGS="${LDFLAGS_save} ${LDFLAGS_goom}"
4001 AC_CHECK_LIB(goom2, goom_init, [
4002 VLC_ADD_PLUGINS([goom])
4003 VLC_ADD_LDFLAGS([goom],[-lgoom2])
4005 AC_MSG_ERROR([Could not find goom on your system: you may get it from http://www.ios-software.com/.])
4007 LDFLAGS="${LDFLAGS_save}"
4013 dnl SLP access plugin
4016 [ --enable-slp SLP service discovery support (default disabled)])
4017 if test "${enable_slp}" = "yes"
4020 [ --with-slp=PATH libslp headers and libraries])
4021 if test -z "${with_slp}"
4023 AC_CHECK_HEADERS(slp.h, have_slp="true", have_slp="false")
4024 if test "${have_slp}" = "true"
4026 VLC_ADD_PLUGINS([slp])
4027 VLC_ADD_LDFLAGS([slp],[-lslp])
4028 VLC_ADD_LDFLAGS([stream_out_standard],[-lslp])
4031 AC_MSG_CHECKING(for slp headers in ${with_slp})
4032 if test -f ${with_slp}/slp.h
4034 dnl Use ${with_slp}/libslp/slp.h
4036 VLC_ADD_PLUGINS([slp])
4037 VLC_ADD_LDFLAGS([slp],[-L${with_slp} -lslp])
4038 VLC_ADD_LDFLAGS([stream_out_standard],[-L${with_slp} -lslp])
4039 VLC_ADD_CPPFLAGS([slp],[-I${with_slp}])
4040 AC_DEFINE(HAVE_SLP_H)
4042 dnl No libslp could be found, sorry
4044 AC_MSG_ERROR([cannot find ${with_slp}/slp.h])
4050 dnl DAAP access plugin and services discovery
4053 [ --enable-daap DAAP shares services discovery support (default enabled)])
4054 if test "$enable_daap" != "no"
4056 PKG_CHECK_MODULES(DAAP, opendaap >= 0.3.0,
4057 [ VLC_ADD_PLUGINS([daap])
4058 VLC_ADD_LDFLAGS([daap],[$DAAP_LIBS])
4059 VLC_ADD_CFLAGS([daap],[$DAAP_CFLAGS])]:,
4060 [AC_MSG_WARN(DAAP library not found)])
4067 [ --enable-lirc lirc support (default disabled)])
4068 if test "${enable_lirc}" = "yes"
4070 AC_CHECK_HEADER(lirc/lirc_client.h, AC_CHECK_LIB(lirc_client, lirc_init, have_lirc="true", have_lirc="false"),have_lirc="false")
4071 if test "${have_lirc}" = "true"
4073 VLC_ADD_PLUGINS([lirc])
4074 VLC_ADD_LDFLAGS([lirc],[-llirc_client])
4081 AC_ARG_ENABLE(joystick,
4082 [ --enable-joystick joystick control (default enabled)])
4083 if test "${enable_joystick}" = "yes"; then
4084 AC_CHECK_HEADER(linux/joystick.h, [VLC_ADD_PLUGINS([joystick])])
4088 dnl corba (ORBit) plugin
4090 dnl Default: do not enable corba
4092 AC_ARG_ENABLE(corba,
4093 [ --enable-corba corba interface support (default disabled)])
4094 if test "${enable_corba}" = "yes"; then
4096 PKG_CHECK_MODULES(CORBA,
4097 ORBit-2.0 >= 2.8.0 \
4098 glib-2.0 >= $GLIB_VERSION \
4099 gobject-2.0 >= $GLIB_VERSION \
4100 gthread-2.0 >= $GLIB_VERSION,
4103 VLC_ADD_LDFLAGS([corba],[$CORBA_LIBS])
4104 VLC_ADD_CFLAGS([corba],[$CORBA_CFLAGS])
4105 VLC_ADD_PLUGINS([corba snapshot]) ],
4107 AC_MSG_WARN(corba library not found) ])
4109 AM_CONDITIONAL(ENABLE_CORBA, test "$enablecorba" = "true")
4111 AC_ARG_WITH(,[Misc options:])
4114 dnl Endianness check, AC_C_BIGENDIAN doesn't work if we are cross-compiling
4116 dnl We give the user the opportunity to specify
4117 dnl --with-words=big or --with-words=little ; otherwise, try to guess
4120 [ --with-words=endianness set endianness (big or little)])
4121 case "${with_words}" in
4123 ac_cv_c_bigendian=yes
4126 ac_cv_c_bigendian=no
4129 dnl Try to guess endianness by matching patterns on a compiled
4130 dnl binary, by looking for an ASCII or EBCDIC string
4131 AC_CACHE_CHECK([whether the byte order is big-endian],
4132 [ac_cv_c_bigendian],
4133 [ac_cv_c_bigendian="unknown"
4134 [cat >conftest.c <<EOF
4135 short am[] = { 0x4249, 0x4765, 0x6e44, 0x6961, 0x6e53, 0x7953, 0 };
4136 short ai[] = { 0x694c, 0x5454, 0x656c, 0x6e45, 0x6944, 0x6e61, 0 };
4137 void _a(void) { char*s = (char*)am; s = (char *)ai; }
4138 short ei[] = { 0x89D3, 0xe3e3, 0x8593, 0x95c5, 0x89c4, 0x9581, 0 };
4139 short em[] = { 0xc2c9, 0xc785, 0x95c4, 0x8981, 0x95e2, 0xa8e2, 0 };
4140 void _e(void) { char*s = (char*)em; s = (char*)ei; }
4141 int main(void) { _a(); _e(); return 0; }
4144 if test -f conftest.c
4146 if ${CC-cc} -c conftest.c -o conftest.o >>config.log 2>&1 \
4147 && test -f conftest.o
4149 if test "`strings conftest.o | grep BIGenDianSyS`"
4151 ac_cv_c_bigendian="yes"
4153 if test "`strings conftest.o | grep LiTTleEnDian`"
4155 ac_cv_c_bigendian="no"
4160 if test "${ac_cv_c_bigendian}" = "unknown"
4162 AC_MSG_ERROR([Could not guess endianness, please use --with-words])
4166 dnl Now we know what to use for endianness, just put it in the header
4167 if test "${ac_cv_c_bigendian}" = "yes"
4169 AC_DEFINE(WORDS_BIGENDIAN, 1, big endian system)
4173 dnl DLL loader copied from MPlayer copied from somewhere else (WINE ?)
4176 AC_ARG_ENABLE(loader,
4177 [ --enable-loader build DLL loader for ELF i386 platforms (default disabled)])
4178 AM_CONDITIONAL(LOADER, [test "${enable_loader}" = "yes"])
4179 AS_IF([test "${enable_loader}" = "yes"],
4180 [ VLC_ADD_PLUGINS([dmo quicktime])
4181 VLC_ADD_CPPFLAGS([dmo],[-I../../../@top_srcdir@/loader])
4182 VLC_ADD_LDFLAGS([dmo],[../../../loader/libloader.a])
4183 VLC_ADD_CPPFLAGS([quicktime],[-I../../@top_srcdir@/loader])
4184 VLC_ADD_LDFLAGS([quicktime],[../../loader/libloader.a])
4188 dnl Microsoft ActiveX support
4191 AC_ARG_ENABLE(activex,
4192 [ --enable-activex build a vlc-based ActiveX control (default enabled on Win32)])
4193 if test "${enable_activex}" != "no"
4195 if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"
4197 AC_CHECK_PROGS(MIDL, [midl widl], no)
4198 AC_CHECK_HEADERS(ole2.h olectl.h,
4199 [ VLC_ADD_CXXFLAGS([activex],[-fno-exceptions])
4200 VLC_ADD_LDFLAGS([activex],[-lole32 -loleaut32 -luuid -lshlwapi])
4201 AC_CHECK_HEADERS(objsafe.h,
4202 VLC_ADD_CXXFLAGS([activex],[-DHAVE_OBJSAFE_HEADER])
4206 [ AC_MSG_ERROR([required OLE headers are missing from your system]) ]
4210 AC_ARG_VAR(MIDL, [Microsoft IDL compiler (Win32 platform only)])
4211 AM_CONDITIONAL(HAS_MIDL_COMPILER, test "${MIDL}" != "no")
4212 AM_CONDITIONAL(BUILD_ACTIVEX,${activex})
4218 AC_ARG_ENABLE(mozilla,
4219 [ --enable-mozilla build a vlc-based Mozilla plugin (default disabled)])
4220 if test "${enable_mozilla}" = "yes" -a "${SYS}" != "mingw32"
4222 AC_PATH_PROG(MOZILLA_CONFIG, mozilla-config, no)
4223 if test "${MOZILLA_CONFIG}" = "no"
4225 AC_MSG_ERROR([Please install the Mozilla development tools, mozilla-config was not found.])
4227 if test "${SYS}" != "mingw32"; then
4228 LDFLAGS="${LDFLAGS_save} -L${x_libraries}"
4229 AC_CHECK_LIB(Xt,XtStrings,
4230 [VLC_ADD_LDFLAGS([mozilla],[-L${x_libraries} -lXt -lX11 -lSM -lICE])],
4232 [[-L${x_libraries} -lX11 -lSM -lICE]
4234 LDFLAGS="${LDFLAGS_save}"
4237 dnl Workaround for http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=150490
4238 VLC_ADD_CPPFLAGS([mozilla],[[`${MOZILLA_CONFIG} --cflags plugin xpcom java | sed 's,-I\([^ ]*\)/mozilla/\([^ ]*\),-I\1/\2 -I\1/mozilla/\2,g' | xargs`]])
4239 VLC_ADD_LDFLAGS([mozilla],[`${MOZILLA_CONFIG} --libs plugin xpcom`])
4240 CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_mozilla}"
4241 AC_CHECK_HEADERS(mozilla-config.h)
4242 CPPFLAGS="${CPPFLAGS_save}"
4245 dnl special case for mingw32
4246 elif test "${enable_mozilla}" = "yes"
4248 AC_CHECK_TOOL(CYGPATH, cygpath, "")
4249 AC_ARG_WITH(mozilla-sdk-path,
4250 [ --with-mozilla-sdk-path=PATH path to win32 mozilla sdk], [
4251 real_mozilla_sdk="`cd ${with_mozilla_sdk_path} 2>/dev/null && pwd`"
4252 CPPFLAGS="${CPPFLAGS_save} ${real_mozilla_sdk}"
4253 AC_CHECK_HEADERS(mozilla-config.h, [
4255 VLC_ADD_CPPFLAGS([mozilla],[-DXPCOM_GLUE -I${real_mozilla_sdk} -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])
4256 VLC_ADD_LDFLAGS([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 -lnspr4 -lplds4 -lplc4 -lembedstring -lxpcomglue -Wl,--kill-at])
4257 XPIDL_INCL="-I${real_mozilla_sdk}/xpcom/idl"
4258 if test -n "${CYGPATH}"; then
4259 XPIDL="${real_mozilla_sdk}/xpcom/bin/xpidl"
4260 real_mozilla_sdk="`${CYGPATH} -w ${real_mozilla_sdk}`"
4261 XPIDL_INCL="${XPIDL_INCL} -I\"${real_mozilla_sdk}/xpcom/idl\""
4263 CPPFLAGS="${CPPFLAGS_save}"
4267 dnl Not necessarily in ${PATH}
4268 if test -z "${XPIDL}" -o ! -x "${XPIDL}"; then
4269 XPIDL="/usr/lib/mozilla/xpidl"
4271 AS_IF([test "${MOZILLA_CONFIG}"], [
4272 if test -z "${XPIDL_INCL}"; then
4273 XPIDL_INCL="`${MOZILLA_CONFIG} --cflags plugin xpcom java` \
4274 `${MOZILLA_CONFIG} --idlflags plugin xpcom java` "
4277 AM_CONDITIONAL(BUILD_MOZILLA,${mozilla})
4282 AC_ARG_ENABLE(testsuite,
4283 [ --enable-testsuite build test modules (default disabled)])
4284 if test "${enable_testsuite}" = "yes"
4286 TESTS="test1 test2 test3 test4"
4288 dnl we define those so that bootstrap sets the right linker
4289 VLC_ADD_CXXFLAGS([test2],[])
4290 VLC_ADD_OBJCFLAGS([test3],[])
4291 dnl this one is needed until automake knows what to do
4292 VLC_ADD_LDFLAGS([test3],[-lobjc])
4294 VLC_ADD_PLUGINS([${TESTS}])
4295 #VLC_ADD_BUILTINS([${TESTS}])
4301 if test "${NEED_GTK_MAIN}" != "no"
4303 VLC_ADD_PLUGINS([gtk_main])
4304 VLC_ADD_CFLAGS([gtk_main],[${CFLAGS_gtk}])
4305 VLC_ADD_LDFLAGS([gtk_main],[${LDFLAGS_gtk}])
4308 if test "${NEED_GNOME_MAIN}" != "no"
4310 VLC_ADD_PLUGINS([gnome_main])
4311 VLC_ADD_CFLAGS([gnome_main],[${CFLAGS_gtk} ${CFLAGS_gnome}])
4312 VLC_ADD_LDFLAGS([gnome_main],[${LDFLAGS_gtk} ${LDFLAGS_gnome}])
4315 if test "${NEED_GTK2_MAIN}" != "no"
4317 VLC_ADD_PLUGINS([gtk2_main])
4318 VLC_ADD_CFLAGS([gtk2],[-DNEED_GTK2_MAIN])
4319 VLC_ADD_CFLAGS([pda],[-DNEED_GTK2_MAIN])
4320 VLC_ADD_CFLAGS([gtk2_main],[${CFLAGS_gtk2} ${CFLAGS_pda}])
4321 VLC_ADD_LDFLAGS([gtk2_main],[${LDFLAGS_gtk2} ${LDFLAGS_pda}])
4324 if test "${NEED_GNOME2_MAIN}" != "no"
4326 VLC_ADD_PLUGINS([gnome2_main])
4327 VLC_ADD_CFLAGS([gnome2_main],[${CFLAGS_gtk2} ${CFLAGS_gnome2}])
4328 VLC_ADD_LDFLAGS([gnome2_main],[${LDFLAGS_gtk2} ${LDFLAGS_gnome2}])
4334 if test "${NEED_QTE_MAIN}" != "no"
4336 VLC_ADD_PLUGINS([qte_main])
4337 VLC_ADD_CXXFLAGS([opie qte qt_video],[-DNEED_QTE_MAIN])
4338 VLC_ADD_CXXFLAGS([qte_main],[${CXXFLAGS_qte} ${CXXFLAGS_qt_video}])
4339 VLC_ADD_LDFLAGS([qte_main],[${LDFLAGS_qte} ${LDFLAGS_qt_video}])
4344 dnl Plugin and builtin checks
4346 builtin_support=false
4349 dnl Support for plugins - this must be AT THE END
4350 AC_ARG_ENABLE(plugins,
4351 [ --disable-plugins make all plugins built-in (default plugins enabled)],
4352 [if test "${enable_plugins}" = "no"
4354 plugin_support=false
4357 dnl Automagically disable plugins if there is no system support for
4358 dnl dynamically loadable files (.so, .dll, .dylib).
4359 dnl don't forget vlc-win32 still can load .dll as plugins
4360 if test "${ac_cv_have_plugins}" = "no"
4362 echo "*** Your system doesn't have plugin support. All plugins will be built"
4364 plugin_support=false
4367 dnl Export automake variables
4368 if ${plugin_support}
4370 AC_DEFINE(HAVE_DYNAMIC_PLUGINS, 1, Define if we have support for dynamic plugins)
4371 for plugin in `echo ${PLUGINS}`
4373 eval "${plugin}_p=yes"
4376 VLC_ADD_BUILTINS([${PLUGINS}])
4379 AM_CONDITIONAL(HAVE_PLUGINS, ${plugin_support})
4381 [if echo "${BUILTINS}" | grep '[^ ]' >/dev/null 2>&1
4384 for builtin in `echo ${BUILTINS}`
4386 eval "${builtin}_b=yes"
4389 AM_CONDITIONAL(HAVE_BUILTINS, ${builtin_support})
4391 dnl Import conditional variables generated by bootstrap
4395 dnl Stuff used by the program
4397 AC_DEFINE_UNQUOTED(VERSION_MESSAGE, "${VERSION} ${CODENAME}", [Simple version string])
4398 AC_DEFINE_UNQUOTED(COPYRIGHT_MESSAGE, "VLC media player - version ${VERSION} ${CODENAME} - (c) 1996-2005 the VideoLAN team", [Copyright string])
4399 AC_DEFINE_UNQUOTED(CONFIGURE_LINE, "${CONFIGURE_LINE}", [The ./configure command line])
4401 dnl Old definitions for version-dependant plugins
4402 dnl VLC_SYMBOL="`echo ${VERSION} | sed -e 'y/.-+/___/'`"
4403 dnl AC_DEFINE_UNQUOTED(MODULE_SUFFIX, "__${VLC_SYMBOL}", [String suffix for module functions])
4404 dnl AC_DEFINE_UNQUOTED(MODULE_SYMBOL, ${VLC_SYMBOL}, [Symbol suffix for module functions])
4406 dnl New definitions with value matching 0.8.2 release
4407 AC_DEFINE_UNQUOTED(MODULE_SUFFIX, "__0_8_2", [String suffix for module functions])
4408 AC_DEFINE_UNQUOTED(MODULE_SYMBOL, 0_8_2, [Symbol suffix for module functions])
4410 dnl Version number for ActiveX INF
4411 VERSION32="`echo -n ${VERSION} | sed -e 's/@<:@a-z\-@:>@//g' | sed -e 'y/./,/'`"
4412 VERSION32="`echo -n ${VERSION32}',0'`"
4415 DATA_PATH="${ac_tool_prefix}/share/vlc"
4417 PLUGIN_PATH="${ac_tool_prefix}/lib/vlc"
4418 AC_SUBST(PLUGIN_PATH)
4421 dnl Handle substvars that use $(top_srcdir)
4423 VLC_CONFIG="top_builddir=\"\$(top_builddir)\" \$(top_builddir)/vlc-config"
4424 AC_SUBST(VLC_CONFIG)
4425 CPPFLAGS_save="${CPPFLAGS_save} -I\$(top_srcdir)/include"
4433 dnl Create the vlc-config script
4435 LDFLAGS_libvlc="${LDFLAGS_vlc} ${LDFLAGS_builtin}"
4436 for i in `echo "${BUILTINS}" | sed -e 's@[^ ]*/@@g'` ; do LDFLAGS_libvlc="${LDFLAGS_libvlc} ${libdir}/vlc/${i}.a `eval echo '$'{LDFLAGS_${i}}`" ; done
4439 dnl Configuration is finished
4448 AC_SUBST(XPIDL_INCL)
4451 AC_SUBST(ALL_LINGUAS)
4453 dnl Import substitutions generated by bootstrap
4456 dnl Create vlc-config.in
4457 VLC_OUTPUT_VLC_CONFIG_IN
4478 modules/access/Makefile
4479 modules/access/dshow/Makefile
4480 modules/access/dvb/Makefile
4481 modules/access/mms/Makefile
4482 modules/access/pvr/Makefile
4483 modules/access/satellite/Makefile
4484 modules/access/v4l/Makefile
4485 modules/access/cdda/Makefile
4486 modules/access/vcd/Makefile
4487 modules/access/vcdx/Makefile
4488 modules/access/screen/Makefile
4489 modules/access_filter/Makefile
4490 modules/access_output/Makefile
4491 modules/audio_filter/Makefile
4492 modules/audio_filter/channel_mixer/Makefile
4493 modules/audio_filter/converter/Makefile
4494 modules/audio_filter/resampler/Makefile
4495 modules/audio_mixer/Makefile
4496 modules/audio_output/Makefile
4497 modules/codec/Makefile
4498 modules/codec/cmml/Makefile
4499 modules/codec/dmo/Makefile
4500 modules/codec/ffmpeg/Makefile
4501 modules/codec/spudec/Makefile
4502 modules/control/Makefile
4503 modules/control/corba/Makefile
4504 modules/demux/Makefile
4505 modules/demux/asf/Makefile
4506 modules/demux/avi/Makefile
4507 modules/demux/mp4/Makefile
4508 modules/demux/mpeg/Makefile
4509 modules/demux/playlist/Makefile
4510 modules/demux/util/Makefile
4511 modules/gui/Makefile
4512 modules/gui/beos/Makefile
4513 modules/gui/pda/Makefile
4514 modules/gui/gtk/Makefile
4515 modules/gui/gtk2/Makefile
4516 modules/gui/kde/Makefile
4517 modules/gui/macosx/Makefile
4518 modules/gui/qnx/Makefile
4519 modules/gui/qt/Makefile
4520 modules/gui/skins2/Makefile
4521 modules/gui/wxwindows/Makefile
4522 modules/gui/wince/Makefile
4523 modules/misc/Makefile
4524 modules/misc/dummy/Makefile
4525 modules/misc/memcpy/Makefile
4526 modules/misc/network/Makefile
4527 modules/misc/testsuite/Makefile
4528 modules/misc/playlist/Makefile
4529 modules/misc/xml/Makefile
4530 modules/mux/Makefile
4531 modules/mux/mpeg/Makefile
4532 modules/packetizer/Makefile
4533 modules/services_discovery/Makefile
4534 modules/stream_out/Makefile
4535 modules/stream_out/transrate/Makefile
4536 modules/video_chroma/Makefile
4537 modules/video_filter/Makefile
4538 modules/video_filter/swscale/Makefile
4539 modules/video_output/Makefile
4540 modules/video_output/directx/Makefile
4541 modules/video_output/qte/Makefile
4542 modules/video_output/x11/Makefile
4543 modules/visualization/Makefile
4544 modules/visualization/visual/Makefile
4545 modules/visualization/galaktos/Makefile
4548 dnl Generate makefiles
4551 # Cannot use AC_CONFIG_FILES([vlc-config]) as is automatically built,
4552 # not provided with the source
4553 ${SHELL} ./config.status --file=vlc-config
4554 chmod 0755 vlc-config
4556 dnl echo "Enabled builtin modules :"
4557 dnl for a in `./vlc-config --target builtin` ; do echo $a; done | sed -e 's,modules\/\(.*\)\/lib\(.*\)\.a,\2 (\1),'
4559 dnl echo "Enabled plugin modules :"
4560 dnl for a in `./vlc-config --target plugin` ; do echo $a; done | sed -e 's,modules\/\(.*\)\/lib\(.*\)_plugin,\2 (\1),'
4564 --------------------
4565 vlc version : ${VERSION}
4567 architecture : ${ARCH}
4569 test "${enable_debug}" = "yes" && printf "debug "
4570 test "${enable_cprof}" = "yes" && printf "cprof "
4571 test "${enable_gprof}" = "yes" && printf "gprof "
4572 test "${enable_optimizations}" = "yes" && printf "optim "
4573 test "${enable_release}" = "yes" && printf "release " || printf "devel "
4575 vlc aliases :${ALIASES}
4577 You can tune the compiler flags in vlc-config.
4578 To build vlc and its plugins, type \`make'.