X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=configure.ac;h=e5e1b018a437c4ae7a89a9dc094890fc7c122b6b;hb=46ff91c65202b418c260fe5f4a8c3b3cd0e6580a;hp=1f5135d69fa2d34a36a71c32aa759326fc901607;hpb=632c8544ad6441380af5ac3f2f53bb478d3abadf;p=vlc diff --git a/configure.ac b/configure.ac index 1f5135d69f..e5e1b018a4 100644 --- a/configure.ac +++ b/configure.ac @@ -8,6 +8,7 @@ VERSION_EXTRA="svn" CONFIGURE_LINE="`echo "$0 $ac_configure_args" | sed -e 's/\\\/\\\\\\\/g'`" CODENAME="Grishenko" +COPYRIGHT_YEARS="1996-2008" AC_PREREQ(2.59) dnl this really should be 2.59c AC_CONFIG_SRCDIR(src/libvlc.c) @@ -15,7 +16,7 @@ AC_CONFIG_AUX_DIR(autotools) AC_CANONICAL_BUILD AC_CANONICAL_HOST -AM_INIT_AUTOMAKE([1.9 check-news dist-bzip2 no-dist-gzip -Wall]) +AM_INIT_AUTOMAKE AM_CONFIG_HEADER(config.h) dnl Too many people are not aware of maintainer mode: @@ -75,10 +76,10 @@ AC_ARG_WITH(contrib, if test "`grep HOST ${topdir}/extras/contrib/config.mak 2>/dev/null|awk '{print $3}'`" != "`$CC -dumpmachine`"; then if test "${with_contrib}" = "yes"; then AC_MSG_RESULT([no]) - AC_MSG_ERROR([ not using the libs in extras/contrib as it is not the same host]) + AC_MSG_ERROR([ not using the libs in extras/contrib as it is not the same host]) else AC_MSG_RESULT([no]) - AC_MSG_WARN([ not using the libs in extras/contrib as it is not the same host]) + AC_MSG_WARN([ not using the libs in extras/contrib as it is not the same host]) fi else if test -d ${topdir}/extras/contrib/lib; then @@ -93,17 +94,13 @@ AC_ARG_WITH(contrib, OBJCFLAGS="${OBJCFLAGS} -I${topdir}/extras/contrib/include" OBJCFLAGS_save="${OBJCFLAGS_save} -I${topdir}/extras/contrib/include" if test $build = $host -o "$PKG_CONFIG_LIBDIR"; then - export PKG_CONFIG_PATH=${topdir}/extras/contrib/lib/pkgconfig:$PKG_CONFIG_PATH + export PKG_CONFIG_PATH=${topdir}/extras/contrib/lib/pkgconfig:$PKG_CONFIG_PATH else - export PKG_CONFIG_LIBDIR=${topdir}/extras/contrib/lib/pkgconfig + export PKG_CONFIG_LIBDIR=${topdir}/extras/contrib/lib/pkgconfig fi LDFLAGS="${LDFLAGS} -L${topdir}/extras/contrib/lib" LDFLAGS_save="${LDFLAGS_save} -L${topdir}/extras/contrib/lib" -dnl kludge because only the debian package provides a ffmpeg-config - if test -z $with_ffmpeg_config_path; then - with_ffmpeg_config_path=${topdir}/extras/contrib/bin; - fi if test -z $with_live555_tree; then with_live555_tree=${topdir}/extras/contrib/src/live fi @@ -172,9 +169,9 @@ case "${host_os}" in CFLAGS_save="${CFLAGS_save} -D_INTL_REDIRECT_MACROS"; CFLAGS="${CFLAGS_save}" CXXFLAGS_save="${CXXFLAGS_save} -D_INTL_REDIRECT_MACROS"; CXXFLAGS="${CXXFLAGS_save}" OBJCFLAGS_save="${OBJCFLAGS_save} -D_INTL_REDIRECT_MACROS -std=gnu99"; OBJCFLAGS="${OBJCFLAGS_save}" + LDFLAGS_save="${LDFLAGS_save} -Wl,-headerpad_max_install_names"; LDFLAGS="${LDFLAGS_save}" VLC_ADD_LDFLAGS([mp4], [-Wl,-framework,IOKit,-framework,CoreFoundation]) VLC_ADD_LDFLAGS([mkv mp4], [-Wl,-framework,IOKit,-framework,CoreFoundation]) - VLC_ADD_CFLAGS([libvlc vlc],[-x objective-c]) VLC_ADD_LDFLAGS([vlc],[-Wl,-undefined,dynamic_lookup]) VLC_ADD_LDFLAGS([libvlc_control],[-Wl,dynamic_lookup]) VLC_ADD_LDFLAGS([ffmpeg i420_rgb_mmx],[-Wl,-read_only_relocs,suppress]) @@ -187,6 +184,13 @@ case "${host_os}" in then echo "" echo "Building with Mac OS X defaults:" + with_macosx_version_min="10.4" + echo " Assuming --with-macosx-version-min=10.4" + build_dir=`pwd` + echo " Assuming --prefix=${build_dir}/vlc_install_dir" + ac_default_prefix="${build_dir}/vlc_install_dir" + enable_macosx="yes" + echo " Assuming --enable-macosx" enable_faad="yes" echo " Assuming --enable-faad" enable_flac="yes" @@ -219,6 +223,52 @@ case "${host_os}" in enable_xvideo="no" echo " Assuming --disable-xvideo" + with_macosx_sdk="" + echo " Compiling with default SDK" + fi + if test ".`uname -p`" = ".i386"; then + dnl Due to a ld(64) bug in 10.5 we cannot use our mmx code + dnl without hacking it a lot, we disable mmx and sse. + dnl (that bug is about ld being unable to handle + dnl text relocation) + save_cflags="$CFLAGS" + CFLAGS="$CFLAGS -dynamiclib -single_module -read_only_relocs suppress" + AC_TRY_LINK( + [int a;], [asm("movq _a,%mm0\n");], + ac_ld_does_not_support_text_reloc=no, + ac_ld_does_not_support_text_reloc=yes) + CFLAGS="$save_cflags" + + if test "x$ac_ld_does_not_support_text_reloc" = "xyes"; then + enable_mmx="no" + echo " Assuming --disable-mmx (due to a bug in ld)" + enable_sse="no" + echo " Assuming --disable-sse (due to a bug in ld)" + fi + fi + dnl + dnl Check for Mac OS X SDK settings + dnl + AC_ARG_WITH(macosx-sdk, + [ --with-macosx-sdk=DIR compile using the SDK in DIR]) + if test "${with_macosx_sdk}" != "" ; then + CC="${CC} -isysroot ${with_macosx_sdk}" + CXX="${CXX} -isysroot ${with_macosx_sdk}" + OBJC="${OBJC} -isysroot ${with_macosx_sdk}" + LD="${LD} -syslibroot ${with_macosx_sdk}" + fi + AC_ARG_WITH(macosx-version-min, + [ --with-macosx-version-min=VERSION compile for MacOSX VERSION and above]) + if test "${with_macosx_version_min}" != "" ; then + CC="${CC} -mmacosx-version-min=${with_macosx_version_min}" + CXX="${CXX} -mmacosx-version-min=${with_macosx_version_min}" + OBJC="${OBJC} -mmacosx-version-min=${with_macosx_version_min}" + LD="${LD} -macosx_version_min=${with_macosx_version_min}" + CFLAGS_save="${CFLAGS_save} -DMACOSX_DEPLOYMENT_TARGET=${with_macosx_version_min}"; CFLAGS="${CFLAGS_save}" + CXXFLAGS_save="${CXXFLAGS_save} -DMACOSX_DEPLOYMENT_TARGET=${with_macosx_version_min}"; CXXFLAGS="${CXXFLAGS_save}" + OBJCFLAGS_save="${OBJCFLAGS_save} -DMACOSX_DEPLOYMENT_TARGET=${with_macosx_version_min}"; OBJCFLAGS="${OBJCFLAGS_save}" + MACOSX_DEPLOYMENT_TARGET=${with_macosx_version_min} + export MACOSX_DEPLOYMENT_TARGET fi ;; *mingw32* | *cygwin* | *wince* | *mingwce* | *pe*) @@ -248,7 +298,7 @@ case "${host_os}" in VLC_ADD_LDFLAGS([vlc],[-mwindows]) VLC_ADD_LIBS([activex mozilla],[-lgdi32]) VLC_ADD_LIBS([cdda vcdx cddax sdl_image],[-lwinmm]) - VLC_ADD_LIBS([access_http access_mms access_udp access_tcp access_ftp access_output_udp access_output_shout sap slp http stream_out_standard stream_out_rtp vod_rtsp access_realrtsp telnet rc netsync gnutls growl flac ts audioscrobbler],[-lws2_32]) + VLC_ADD_LIBS([access_http access_mms access_udp access_tcp access_ftp access_output_udp access_output_shout sap slp http stream_out_standard stream_out_rtp vod_rtsp access_realrtsp telnet rc netsync gnutls growl flac ts audioscrobbler lua],[-lws2_32]) fi if test "${SYS}" = "mingwce"; then # add ws2 for closesocket, select, recv @@ -308,9 +358,9 @@ dnl for program foo on win32 case "${build_os}" in cygwin|msys) ac_executable_extensions=".exe" - ;; + ;; *) - ;; + ;; esac dnl @@ -339,23 +389,6 @@ m4_defun([AC_DEPLIBS_CHECK_METHOD],[]) lt_cv_deplibs_check_method=pass_all -dnl -dnl Check for Mac OS X SDK settings -dnl -AC_ARG_WITH(macosx-sdk, - [ --with-macosx-sdk compile with the Mac OS X 10.4u SDK],[], with_macosx_sdk=no) -if test "${with_macosx_sdk}" != "no" ; then - CC="${CC} -isysroot /Developer/SDKs/MacOSX10.4u.sdk" - CXX="${CXX} -isysroot /Developer/SDKs/MacOSX10.4u.sdk" - OBJC="${OBJC} -isysroot /Developer/SDKs/MacOSX10.4u.sdk" - LD="${LD} -syslibroot /Developer/SDKs/MacOSX10.4u.sdk" - CFLAGS_save="${CFLAGS_save} -DMACOSX_DEPLOYMENT_TARGET=10.4 -mmacosx-version-min=10.4"; CFLAGS="${CFLAGS_save}" - CXXFLAGS_save="${CXXFLAGS_save} -DMACOSX_DEPLOYMENT_TARGET=10.4 -mmacosx-version-min=10.4"; CXXFLAGS="${CXXFLAGS_save}" - OBJCFLAGS_save="${OBJCFLAGS_save} -DMACOSX_DEPLOYMENT_TARGET=10.4 -mmacosx-version-min=10.4"; OBJCFLAGS="${OBJCFLAGS_save}" - MACOSX_DEPLOYMENT_TARGET="10.4" - export MACOSX_DEPLOYMENT_TARGET -fi - dnl dnl Gettext stuff dnl @@ -439,14 +472,14 @@ CPPFLAGS_save="${CPPFLAGS_save} -DSYS_`echo ${SYS} | sed -e 's/-.*//' | tr 'abcd dnl Check for system libs needed need_libc=false -AC_CHECK_FUNCS(gettimeofday strtod strtol strtof strtoll strtoull strsep isatty vasprintf asprintf swab sigrelse getpwuid memalign posix_memalign if_nametoindex atoll getenv putenv setenv gmtime_r ctime_r localtime_r lrintf daemon scandir fork bsearch lstat strlcpy) - dnl Check for usual libc functions -AC_CHECK_FUNCS(strdup strndup strnlen atof) +AC_CHECK_FUNCS([gettimeofday strtod strtol strtof strtoll strtoull strsep isatty vasprintf asprintf swab sigrelse getpwuid memalign posix_memalign if_nametoindex atoll getenv putenv setenv gmtime_r ctime_r localtime_r lrintf daemon scandir fork bsearch lstat strlcpy strdup strndup strnlen atof lldiv]) AC_CHECK_FUNCS(strcasecmp,,[AC_CHECK_FUNCS(stricmp)]) AC_CHECK_FUNCS(strncasecmp,,[AC_CHECK_FUNCS(strnicmp)]) AC_CHECK_FUNCS(strcasestr,,[AC_CHECK_FUNCS(stristr)]) +AH_BOTTOM([#include ]) + AS_IF([test "${SYS}" = "linux"], [ AC_CHECK_FUNCS(tee) ]) @@ -490,17 +523,26 @@ AC_CHECK_FUNCS(gethostbyname,,[ ]) ]) +AC_CHECK_HEADERS(zlib.h, [ + VLC_ADD_LIBS([access_http],[-lz]) +]) + dnl Check for socklen_t -AC_CACHE_CHECK([for socklen_t], ac_cv_type_socklen_t, - [AC_TRY_COMPILE( - [#include - #include ], - [socklen_t len = 42; return len;], - ac_cv_type_socklen_t=yes, - ac_cv_type_socklen_t=no)]) -if test "${ac_cv_type_socklen_t}" != "no"; then - AC_DEFINE(HAVE_SOCKLEN_T, 1, [Define if defines socklen_t.]) -fi +AH_TEMPLATE(socklen_t, [Define to `int' if does not define.]) +AC_CACHE_CHECK([for socklen_t in sys/socket.h], +ac_cv_type_socklen_t, +[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([ +[#include +#ifdef WIN32 +# include +# include +#else +# include +#endif]], [[socklen_t len; len = 0;]])], +ac_cv_type_socklen_t=yes, +ac_cv_type_socklen_t=no)]) +AS_IF([test "$ac_cv_type_socklen_t" = no], + [AC_DEFINE(socklen_t, int)]) dnl Check for struct sockaddr_storage AH_TEMPLATE(sockaddr_storage, [Define to `sockaddr' if does not define.]) @@ -676,7 +718,7 @@ if test "${ac_cv_have_plugins}" = "no"; then ac_cv_my_have_dlopen=yes, AC_CHECK_LIB(dl, dlopen, ac_cv_my_have_dlopen=yes - VLC_ADD_LIBS([libvlc],[-ldl]), + VLC_ADD_LIBS([libvlc realaudio],[-ldl]), AC_CHECK_LIB(svld, dlopen, ac_cv_my_have_dlopen=yes VLC_ADD_LIBS([libvlc],[-lsvld])))) @@ -703,89 +745,30 @@ if test "${THREAD_LIB}" = "error"; then THREAD_LIB="" fi -dnl Check for cthreads under GNU/Hurd for instance -AC_CHECK_LIB(threads,cthread_fork,THREAD_LIB="-lthreads") +VLC_ADD_LIBS([libvlc plugin],[${THREAD_LIB}]) -dnl -dnl GNU portable threads -dnl -AC_ARG_ENABLE(pth, - [ --enable-pth GNU Pth support (default disabled)], - [ if test "${enable_pth}" = "yes"; then - AC_CHECK_LIB(pth,pth_init) - AC_MSG_CHECKING(for pth_init in pth.h) - AC_EGREP_HEADER(pth_init,pth.h,[ - AC_MSG_RESULT(yes) - AC_DEFINE(PTH_INIT_IN_PTH_H, 1, - Define if defines pth_init) - THREAD_LIB="-lpth" - ],[ - AC_MSG_RESULT(no) - ]) - fi +AC_CHECK_LIB(rt, clock_nanosleep, [ + VLC_ADD_LIBS([libvlc],[-lrt]) + AC_DEFINE(HAVE_CLOCK_NANOSLEEP, 1, [Define to 1 if you have clock_nanosleep.]) +], [ + dnl HP/UX port + AC_CHECK_LIB(rt,sem_init, [VLC_ADD_LIBS([libvlc],[-lrt])]) ]) -dnl -dnl State Threads -dnl -AC_ARG_ENABLE(st, - [ --enable-st State Threads (default disabled)], - [ if test "${enable_st}" = "yes"; then - AC_CHECK_LIB(st,st_init) - AC_MSG_CHECKING(for st_init in st.h) - AC_EGREP_HEADER(st_init,st.h,[ - AC_MSG_RESULT(yes) - AC_DEFINE(ST_INIT_IN_ST_H, 1, - Define if defines st_init) - THREAD_LIB="-lst" - ],[ - AC_MSG_RESULT(yes) - ]) - fi +have_nanosleep=false +AC_CHECK_FUNCS(nanosleep,have_nanosleep=:,[ + AC_CHECK_LIB(rt,nanosleep, + [VLC_ADD_LIBS([libvlc],[-lrt]) have_nanosleep=:], + [AC_CHECK_LIB(posix4,nanosleep, + [VLC_ADD_LIBS([libvlc],[-lposix4]) have_nanosleep=:])] + ) ]) - -VLC_ADD_LIBS([libvlc plugin],[${THREAD_LIB}]) - -dnl Don't link with rt when using GNU-pth -if test "${THREAD_LIB}" != "-lpth" && test "${THREAD_LIB}" != "-lst"; then - AC_CHECK_LIB(rt, clock_nanosleep, [ - VLC_ADD_LIBS([libvlc],[-lrt]) - AC_DEFINE(HAVE_CLOCK_NANOSLEEP, 1, [Define to 1 if you have clock_nanosleep.]) - ], [ - dnl HP/UX port - AC_CHECK_LIB(rt,sem_init, [VLC_ADD_LIBS([libvlc],[-lrt])]) - ]) - - have_nanosleep=false - AC_CHECK_FUNCS(nanosleep,have_nanosleep=:,[ - AC_CHECK_LIB(rt,nanosleep, - [VLC_ADD_LIBS([libvlc],[-lrt]) have_nanosleep=:], - [AC_CHECK_LIB(posix4,nanosleep, - [VLC_ADD_LIBS([libvlc],[-lposix4]) have_nanosleep=:])] - ) - ]) - if ${have_nanosleep}; then - AC_DEFINE(HAVE_NANOSLEEP, 1, - Define if nanosleep is available.) - fi +if ${have_nanosleep}; then + AC_DEFINE(HAVE_NANOSLEEP, 1, [Define if nanosleep is available.]) fi +fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" dnl Check for misc headers -AC_MSG_CHECKING(for pthread_cond_t in pthread.h) -AC_EGREP_HEADER(pthread_cond_t,pthread.h,[ - AC_MSG_RESULT(yes) - AC_DEFINE(PTHREAD_COND_T_IN_PTHREAD_H, 1, - Define if defines pthread_cond_t.)],[ - AC_MSG_RESULT(no)]) - -AC_MSG_CHECKING(for pthread_once in pthread.h) -AC_EGREP_HEADER(pthread_once,pthread.h,[ - AC_MSG_RESULT(yes) - AC_DEFINE(PTHREAD_ONCE_IN_PTHREAD_H, 1, - Define if defines pthread_once.)],[ - AC_MSG_RESULT(no)]) -fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" - AC_MSG_CHECKING(for strncasecmp in strings.h) AC_EGREP_HEADER(strncasecmp,strings.h,[ AC_MSG_RESULT(yes) @@ -796,12 +779,10 @@ AC_EGREP_HEADER(strncasecmp,strings.h,[ dnl Check for headers AC_CHECK_HEADERS(signal.h time.h errno.h stdint.h stdbool.h getopt.h strings.h inttypes.h sys/int_types.h wchar.h locale.h) AC_CHECK_HEADERS(sys/sockio.h fcntl.h sys/types.h sys/time.h sys/times.h sys/ioctl.h sys/stat.h) -AC_CHECK_HEADERS([arpa/inet.h netinet/in.h sys/socket.h netinet/udplite.h]) +AC_CHECK_HEADERS([arpa/inet.h netinet/in.h netinet/udplite.h]) AC_CHECK_HEADERS([net/if.h], [], [], [ - #if HAVE_SYS_SOCKET_H - # include - #endif + #include ]) if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then AC_CHECK_HEADERS(machine/param.h sys/shm.h) @@ -811,7 +792,12 @@ fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" AC_HEADER_TIME -AC_CHECK_TYPE(ssize_t, int) +dnl LP64 adn LLP64 architectures had better define ssize_t by themselves... +AH_TEMPLATE(ssize_t, [Define to `int' if does not define.]) +AC_CHECK_TYPE(ssize_t,, [ + AC_DEFINE(ssize_t, int) +]) + AC_SEARCH_LIBS(poll, [poll], [AC_DEFINE(HAVE_POLL, 1, [Define to 1 if the OS is usabl... err, has poll().])]) dnl Check for dirent @@ -843,7 +829,7 @@ AC_EGREP_HEADER(timespec,sys/time.h,[ dnl Check for threads library if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then -AC_CHECK_HEADERS(cthreads.h pthread.h kernel/scheduler.h kernel/OS.h) +AC_CHECK_HEADERS(pthread.h kernel/scheduler.h kernel/OS.h) fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" dnl Find where are the X headers and libraries @@ -860,14 +846,14 @@ AC_ARG_ENABLE(hal, if test "${enable_hal}" != "no" then PKG_CHECK_MODULES(HAL, hal >= 0.5.0, - [ AC_DEFINE( HAVE_HAL_1, [] , [Define if you have the new HAL library API]) - AC_DEFINE( HAVE_HAL, [], [Define if you have the HAL library] ) + [ AC_DEFINE( HAVE_HAL_1, 1 , [Define if you have the new HAL library API]) + AC_DEFINE( HAVE_HAL, 1, [Define if you have the HAL library] ) VLC_ADD_PLUGINS([hal probe_hal]) VLC_ADD_LIBS([libvlc hal probe_hal],[$HAL_LIBS]) VLC_ADD_CFLAGS([libvlc hal probe_hal],[$HAL_CFLAGS])], dnl No hal 0.5 Test for 0.2 [ PKG_CHECK_MODULES( HAL, hal >= 0.2.97, - [AC_DEFINE(HAVE_HAL, [], [Define if you have the HAL library]) + [AC_DEFINE(HAVE_HAL, 1, [Define if you have the HAL library]) VLC_ADD_PLUGINS([hal]) VLC_ADD_LIBS([libvlc hal],[$HAL_LIBS]) VLC_ADD_CFLAGS([libvlc hal],[$HAL_CFLAGS])], @@ -979,15 +965,17 @@ if test "${ac_cv_c_ntohl_sys_param_h}" != "no"; then fi CFLAGS="${CFLAGS_save}" -RDC_PROG_CC_WFLAGS([all extra no-unused-parameter sign-compare undef pointer-arith bad-function-cast cast-align write-strings missing-prototypes volatile-register-var]) +RDC_PROG_CC_WFLAGS([all extra sign-compare undef pointer-arith bad-function-cast cast-align write-strings missing-prototypes volatile-register-var]) RDC_PROG_CC_FLAGS_IFELSE([-pipe]) dnl This helps detect broken plugins with undefined symbols dnl Better fail loudly at build-time than silenty at run-time. dnl Unfortunately, this sucks on FreeBSD (won't even link with -lc) -dnl RDC_PROG_LINK_FLAGS_IFELSE([-Wl,-z,defs], [ -dnl VLC_ADD_LDFLAGS([plugin],[-Wl,-z,defs]) -dnl ]) +if test `uname -s` != FreeBSD; then + RDC_PROG_LINK_FLAGS_IFELSE([-Wl,-z,defs], [ + VLC_ADD_LDFLAGS([plugin],[-Wl,-z,defs]) + ]) +fi dnl Check for various optimization flags AC_CACHE_CHECK([if \$CC accepts -Os], @@ -1127,20 +1115,6 @@ dnl VLC_ADD_LDFLAGS([plugin mozilla],[-shared]) dnl ]) dnl ]) -dnl Check for variadic macros -AC_CACHE_CHECK([for variadic cpp macros], - [ac_cv_cpp_variadic_macros], - [CFLAGS="${CFLAGS_save}" - AC_TRY_COMPILE( - [#include - #define a(b,c...) printf(b,##c)], - [a("foo");a("%s","bar");a("%s%s","baz","quux");], - ac_cv_cpp_variadic_macros=yes, - ac_cv_cpp_variadic_macros=no)]) -if test "${ac_cv_cpp_variadic_macros}" != "no"; then - AC_DEFINE(HAVE_VARIADIC_MACROS, 1, Support for variadic macros) -fi - dnl Checks for __attribute__(aligned()) directive AC_CACHE_CHECK([__attribute__ ((aligned ())) support], [ac_cv_c_attribute_aligned], @@ -1232,6 +1206,8 @@ VLC_ADD_PLUGINS([packetizer_mpegvideo packetizer_h264]) VLC_ADD_PLUGINS([packetizer_mpeg4video packetizer_mpeg4audio]) VLC_ADD_PLUGINS([packetizer_vc1]) +ALIASES="${ALIASES} cvlc" + dnl dnl default modules that need g++ dnl @@ -1243,11 +1219,12 @@ if test "${SYS}" != "mingwce"; then VLC_ADD_PLUGINS([access_fake access_filter_timeshift access_filter_record access_filter_dump]) VLC_ADD_PLUGINS([gestures rc telnet hotkeys showintf marq podcast shout sap fake folder]) VLC_ADD_PLUGINS([rss mosaic wall motiondetect clone crop erase bluescreen alphamask gaussianblur]) - VLC_ADD_PLUGINS([i420_yuy2 i422_yuy2 i420_ymga]) + VLC_ADD_PLUGINS([i420_yuy2 i422_yuy2 i420_ymga i422_i420 yuy2_i422 yuy2_i420 chroma_chain]) VLC_ADD_PLUGINS([aout_file linear_resampler bandlimited_resampler]) VLC_ADD_PLUGINS([float32_mixer spdif_mixer simple_channel_mixer]) VLC_ADD_PLUGINS([dolby_surround_decoder headphone_channel_mixer normvol equalizer param_eq]) VLC_ADD_PLUGINS([converter_float a52tospdif dtstospdif audio_format]) + ALIASES="${ALIASES} rvlc" fi dnl @@ -1526,16 +1503,20 @@ AS_IF([test "${CFLAGS_TUNING}"], dnl dnl x86 accelerations dnl -if test "${host_cpu}" = "i686" -o "${host_cpu}" = "i586" -o "${host_cpu}" = "x86" -o "${host_cpu}" = "i386" -o "${host_cpu}" = "i486" -o "${host_cpu}" = "x86_64" -then +AC_ARG_ENABLE(mmx, +[ --disable-mmx disable MMX optimizations (default enabled on x86)], +[ if test "${enable_mmx}" = "yes"; then ARCH="${ARCH} mmx"; + VLC_ADD_PLUGINS([${ACCEL_MODULES}]) fi ], +[ if test "${host_cpu}" = "i686" -o "${host_cpu}" = "i586" -o "${host_cpu}" = "x86" -o "${host_cpu}" = "i386" -o "${host_cpu}" = "i486" -o "${host_cpu}" = "x86_64"; then ARCH="${ARCH} mmx" - VLC_ADD_PLUGINS([${ACCEL_MODULES}]) -fi -if test "${host_cpu}" = "i686" -o "${host_cpu}" = "x86_64" -then - ARCH="${ARCH} sse sse2" - VLC_ADD_PLUGINS([${ACCEL_MODULES}]) -fi + VLC_ADD_PLUGINS([${ACCEL_MODULES}]) fi ]) + +AC_ARG_ENABLE(sse, +[ --disable-sse disable SSE (1 and 2) optimizations (default enabled on i686 and x86_64)], +[ if test "${enable_sse}" = "yes"; then ARCH="${ARCH} sse sse2"; + VLC_ADD_PLUGINS([${ACCEL_MODULES}]) fi ], +[ if test "${host_cpu}" = "i686" -o "${host_cpu}" = "x86_64"; then ARCH="${ARCH} sse sse2"; + VLC_ADD_PLUGINS([${ACCEL_MODULES}]) fi ]) dnl dnl Memory usage @@ -1631,7 +1612,7 @@ AC_ARG_ENABLE(shout, [ --enable-shout libshout output plugin (default disabled)]) if test "${enable_shout}" = "yes"; then PKG_CHECK_MODULES(SHOUT, shout >= 2.1, - [AC_DEFINE(HAVE_SHOUT, [], [Define if you have the libshout library]) + [AC_DEFINE(HAVE_SHOUT, 1, [Define if you have the libshout library]) VLC_ADD_PLUGINS([access_output_shout]) VLC_ADD_LIBS([access_output_shout],[$SHOUT_LIBS]) VLC_ADD_CFLAGS([access_output_shout],[$SHOUT_CFLAGS])], @@ -1668,7 +1649,7 @@ then ]) ]) if test "x${have_lua}" = "xyes" ; then - AC_DEFINE(HAVE_LUA, [], [Define if you have the lua library]) + AC_DEFINE(HAVE_LUA, 1, [Define if you have the lua library]) VLC_ADD_PLUGINS([lua]) VLC_ADD_LIBS([lua],[$LUA_LIBS]) VLC_ADD_CFLAGS([lua],[$LUA_CFLAGS]) @@ -1717,10 +1698,10 @@ AS_IF([test "${enable_notify}" != "no" -a "${SYS}" != "mingw32"], [ [ VLC_ADD_PLUGINS([notify]) VLC_ADD_CFLAGS(notify, [$NOTIFY_CFLAGS]) - VLC_ADD_LIBS(notify, [$NOTIFY_LIBS]) + VLC_ADD_LIBS(notify, [$NOTIFY_LIBS]) ],[ - AS_IF([test "${enable_notify}" = "yes"],[ - AC_MSG_WARN( libnotify not found) ]) + AS_IF([test "${enable_notify}" = "yes"],[ + AC_MSG_WARN( libnotify not found) ]) ]) ]) @@ -1741,9 +1722,9 @@ AC_ARG_ENABLE(musicbrainz, [ --enable-musicbrainz MusicBrainz support (default disabled) ]) AS_IF([test "${enable_musicbrainz}" = "yes"],[ PKG_CHECK_MODULES(MUSICBRAINZ, libmusicbrainz, - [ VLC_ADD_PLUGINS([musicbrainz]) - VLC_ADD_LIBS([musicbrainz],[$MUSICBRAINZ_LIBS]) - VLC_ADD_CFLAGS([musicbrainz],[$MUSICBRAINZ_CFLAGS]) ], + [ VLC_ADD_PLUGINS([musicbrainz]) + VLC_ADD_LIBS([musicbrainz],[$MUSICBRAINZ_LIBS]) + VLC_ADD_CFLAGS([musicbrainz],[$MUSICBRAINZ_CFLAGS]) ], [AC_MSG_WARN(MusicBrainz library not found)]) ]) @@ -2200,7 +2181,7 @@ if test "${enable_smb}" != "no"; then AC_MSG_ERROR([cannot find libsmbclient headers]) fi ]) AC_CHECK_MEMBER([struct _SMBCCTX.close_fn], - AC_DEFINE([HAVE__SMBCCTX_CLOSE_FN], [1], [Define if samba has _SMBCCTX.close_fn]),, + AC_DEFINE([HAVE__SMBCCTX_CLOSE_FN], 1, [Define if samba has _SMBCCTX.close_fn]),, [#include ]) fi @@ -2320,7 +2301,7 @@ then fi dnl -dnl Video4Linux plugin +dnl Video4Linux2 plugin dnl AC_ARG_ENABLE(v4l2, [ --enable-v4l2 Video4Linux2 input support (default disabled)]) @@ -2333,6 +2314,19 @@ then VLC_ADD_CPPFLAGS([v4l2],[-I${with_v4l2}/include]) fi + AC_CHECK_HEADER(alsa/asoundlib.h, AC_CHECK_LIB(asound, main, have_v4l2_alsa="true", have_v4l2_alsa="false"),have_v4l2_alsa="false") + if test "${have_v4l2_alsa}" = "true" + then + CFLAGS="${CFLAGS_save}" + AC_TRY_COMPILE([#define ALSA_PCM_NEW_HW_PARAMS_API + #define ALSA_PCM_NEW_SW_PARAMS_API + #include ], + [snd_pcm_hw_params_get_period_time(0,0,0);], + AC_DEFINE(HAVE_ALSA_NEW_API, 1, Define if ALSA is at least rc4)) + VLC_ADD_LDFLAGS([v4l2],[-lasound -lm -ldl]) + AC_DEFINE(HAVE_ALSA, 1, Define if ALSA is present.) + fi + CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_v4l2}" AC_CHECK_HEADERS(linux/videodev2.h, [ VLC_ADD_PLUGINS([v4l2]) @@ -2401,13 +2395,13 @@ if test "${enable_libcdio}" != "no" then PKG_CHECK_MODULES(LIBCDIO, libcdio >= 0.78.2, have_libcdio=yes - AC_DEFINE(HAVE_LIBCDIO, [], + AC_DEFINE(HAVE_LIBCDIO, 1, [Define if you have libcdio 0.78.2 or greater installed]), [AC_MSG_WARN(CD Reading and information library not found)]) PKG_CHECK_MODULES(VCDINFO, libvcdinfo >= 0.7.22, [have_libvcdinfo=yes - AC_DEFINE(HAVE_VCDINFO, [], + AC_DEFINE(HAVE_VCDINFO, 1, [Define if you have libvcdinfo 0.7.22 or greater installed])], [AC_MSG_WARN(VCD information library not found)]) fi @@ -2425,7 +2419,7 @@ if test "${enable_cddax}" = "yes" then if test "$have_libcdio" = "yes" then - AC_DEFINE(HAVE_CDDAX, [], [Define for the audio CD plugin using libcdio]) + AC_DEFINE(HAVE_CDDAX, 1, [Define for the audio CD plugin using libcdio]) VLC_ADD_LIBS([cddax],[$LIBCDIO_LIBS]) VLC_ADD_CFLAGS([cddax],[$LIBCDIO_CFLAGS]) VLC_ADD_PLUGINS([cddax]) @@ -2440,7 +2434,7 @@ then if test "$enable_libcddb" != "no"; then PKG_CHECK_MODULES(LIBCDDB, libcddb >= 0.9.5, [ HAVE_LIBCDDB=yes - AC_DEFINE(HAVE_LIBCDDB, [], [Define this if you have libcddb installed]) + AC_DEFINE(HAVE_LIBCDDB, 1, [Define this if you have libcddb installed]) VLC_ADD_LIBS([cddax],[$LIBCDDB_LIBS]) VLC_ADD_CFLAGS([cddax],[$LIBCDDB_CFLAGS]) ], @@ -2472,7 +2466,7 @@ then if test "$have_libvcdinfo" = "yes" then - AC_DEFINE(HAVE_VCDX, [], + AC_DEFINE(HAVE_VCDX, 1, [Define for the VCD plugin using libcdio/libvcdinfo]) VLC_ADD_LIBS([vcdx],[$VCDINFO_LIBS]) VLC_ADD_CFLAGS([vcdx],[$VCDINFO_CFLAGS]) @@ -2535,7 +2529,7 @@ then if test "$enable_libcddb" != "no"; then PKG_CHECK_MODULES(LIBCDDB, libcddb >= 0.9.5, [ HAVE_LIBCDDB=yes - AC_DEFINE(HAVE_LIBCDDB, [], [Define this if you have libcddb installed]) + AC_DEFINE(HAVE_LIBCDDB, 1, [Define this if you have libcddb installed]) VLC_ADD_LIBS([cdda],[$LIBCDDB_LIBS]) VLC_ADD_CFLAGS([cdda],[$LIBCDDB_CFLAGS]) ],: @@ -2887,8 +2881,8 @@ AS_IF([test "${enable_id3tag}" != "no"], [ dnl dnl ffmpeg decoder/demuxer plugin dnl -dnl we try to find ffmpeg using : 1- given tree 2- ffmpeg-config, 3- pkg-config -dnl 4- default place, +dnl we try to find ffmpeg using : 1- given tree, 2- pkg-config +dnl 3- default place, AC_ARG_ENABLE(ffmpeg, [ --enable-ffmpeg ffmpeg codec (default enabled)]) @@ -2965,7 +2959,7 @@ dnl Those options have to be here because the .pc can be bogus for ffmpeg previo fi]) AC_ARG_WITH(ffmpeg-x264, - [ --with-ffmpeg-x264 specify if ffmpeg has been compiled with libamrnb support], + [ --with-ffmpeg-x264 specify if ffmpeg has been compiled with libx264 support], [ if test "$with_ffmpeg_x264" = "yes"; then VLC_ADD_LIBS([ffmpeg],[-lx264]) @@ -3027,7 +3021,7 @@ dnl Those options have to be here because the .pc can be bogus for ffmpeg previo ],[ unset PKG_CONFIG_PATH ]) - AS_IF([test -n "${PKG_CONFIG_LIBDIR_save}"],[ + AS_IF([test -n "${PKG_CONFIG_LIBDIR_save}"],[ export PKG_CONFIG_LIBDIR="${PKG_CONFIG_LIBDIR_save}" ],[ unset PKG_CONFIG_LIBDIR @@ -3043,32 +3037,14 @@ dnl Those options have to be here because the .pc can be bogus for ffmpeg previo VLC_ADD_LIBS([ffmpeg],[-L${real_ffmpeg_tree}/libswscale ${real_ffmpeg_tree}/libswscale/libswscale.a]) VLC_ADD_CPPFLAGS([ffmpeg stream_out_switcher],[-I${real_ffmpeg_tree}/libswscale]) fi -else - -dnl Look for a ffmpeg-config (we are on debian ) - FFMPEG_PATH="${PATH}" - AC_ARG_WITH(ffmpeg-config-path, - [ --with-ffmpeg-config-path=PATH ffmpeg-config path (default search in \$PATH)], - [ if test "${with_ffmpeg_config_path}" != "no" - then - FFMPEG_PATH="${with_ffmpeg_config_path}" - fi ]) - AC_PATH_PROG(FFMPEG_CONFIG, ffmpeg-config, no, ${FFMPEG_PATH}) - if test "${FFMPEG_CONFIG}" != "no" - then - AC_CHECK_HEADERS(ffmpeg/avcodec.h, [], [AC_MSG_ERROR([Missing header file ffmpeg/avcodec.h.])] ) - AC_CHECK_HEADERS(ffmpeg/avformat.h) - AC_CHECK_HEADERS(ffmpeg/avutil.h) - AC_CHECK_HEADERS(postproc/postprocess.h, [], [AC_MSG_ERROR([Missing header file postproc/postprocess.h.])] ) - VLC_ADD_PLUGINS([ffmpeg]) - if test "${enable_sout}" != "no" -a "${enable_switcher}" = "yes"; then - VLC_ADD_PLUGINS([stream_out_switcher]) + if test -f "${real_ffmpeg_tree}/libavformat/libavformat.a"; then + AC_DEFINE(HAVE_LIBAVFORMAT_TREE, 1, [Define if you have ffmpeg's libavformat.]) + VLC_ADD_LIBS([ffmpeg],[-L${real_ffmpeg_tree}/libavformat -lavformat -lz]) + VLC_ADD_CPPFLAGS([ffmpeg],[-I${real_ffmpeg_tree}/libavformat]) fi - VLC_ADD_CFLAGS([ffmpeg stream_out_switcher],[`${FFMPEG_CONFIG} --cflags`]) - VLC_ADD_LIBS([ffmpeg stream_out_switcher],[`${FFMPEG_CONFIG} --plugin-libs avcodec avformat postproc`]) +else - else dnl Trying with pkg-config PKG_CHECK_MODULES(FFMPEG,[libavcodec, libavformat], @@ -3152,7 +3128,6 @@ dnl AC_CHECK_HEADERS(ffmpeg/swscale.h, [], [AC_MSG_ERROR([Missing header file CPPFLAGS="${CPPFLAGS_save}" ]) fi - fi fi dnl @@ -3719,7 +3694,7 @@ dnl AC_ARG_ENABLE(dirac, [ --enable-dirac experimental dirac codec (default disabled)]) if test "${enable_dirac}" = "yes"; then - PKG_CHECK_MODULES(DIRAC,[dirac >= 0.8.0], [ + PKG_CHECK_MODULES(DIRAC,[dirac >= 0.9.0], [ VLC_ADD_PLUGINS([dirac]) VLC_ADD_CFLAGS([dirac],[$DIRAC_CFLAGS]) VLC_ADD_LIBS([dirac],[$DIRAC_LIBS -lstdc++]) ],[ @@ -3738,8 +3713,8 @@ AC_CHECK_HEADERS(png.h, [ AC_CHECK_LIB(png, png_set_rows, [ VLC_ADD_LIBS([png],[-lpng -lz]) VLC_ADD_PLUGINS([png]) - VLC_ADD_PLUGINS([osdmenu]) - AC_DEFINE(HAVE_LIBPNG, [], [Define if you have the PNG library: libpng])], + VLC_ADD_PLUGINS([osdmenu osd_parser]) + AC_DEFINE(HAVE_LIBPNG, 1, [Define if you have the PNG library: libpng])], [],[-lz]) LDFLAGS="${LDFLAGS_save}" ]) @@ -3801,7 +3776,7 @@ dnl dnl libfluidsynth (MIDI synthetizer) plugin dnl AC_ARG_ENABLE(fluidsynth, - [ --enable-fluidsynth MIDI synthesisr with libfluidsynth (default auto)]) + [ --enable-fluidsynth MIDI synthesisr with libfluidsynth (default enabled)]) AS_IF([test "x${enable_fluidsynth}" != "xno"], [ PKG_CHECK_MODULES(FLUIDSYNTH, fluidsynth, [ VLC_ADD_PLUGINS(fluidsynth) @@ -4172,55 +4147,36 @@ AC_ARG_ENABLE(fribidi, [ --enable-fribidi fribidi support (default enabled)]) if test "${enable_freetype}" != "no" then - FREETYPE_PATH="${PATH}" - AC_ARG_WITH(freetype-config-path, - [ --with-freetype-config-path=PATH freetype-config path (default search in \$PATH)], - [ if test "${with_freetype_config_path}" != "no" - then - FREETYPE_PATH="${with_freetype_config_path}:${PATH}" - fi ]) - AC_PATH_PROG(FREETYPE_CONFIG, freetype-config, no, ${FREETYPE_PATH}) - - if test "${FREETYPE_CONFIG}" != "no" - then - VLC_ADD_PLUGINS([freetype]) - VLC_ADD_CFLAGS([freetype],[`${FREETYPE_CONFIG} --cflags`]) - VLC_ADD_LIBS([freetype],[`${FREETYPE_CONFIG} --libs`]) - if test "${SYS}" = "mingw32"; then - VLC_ADD_LIBS([freetype],[-lxml2]) - fi + PKG_CHECK_MODULES(FREETYPE, freetype2,[ + VLC_ADD_PLUGINS([freetype]) + have_freetype=yes + VLC_ADD_CPPFLAGS([freetype skins2],[${FREETYPE_CFLAGS}]) + VLC_ADD_LIBS([freetype skins2],[${FREETYPE_LIBS}]) + if test "${SYS}" = "mingw32"; then + VLC_ADD_LIBS([freetype skins2],[-lxml2]) + fi AC_CHECK_HEADERS(fontconfig/fontconfig.h, - [VLC_ADD_CFLAGS([freetype],[-DHAVE_FONTCONFIG]) + [VLC_ADD_CPPFLAGS([freetype],[-DHAVE_FONTCONFIG]) VLC_ADD_LIBS([freetype],[-lfontconfig])]) AC_CHECK_HEADERS(Carbon/Carbon.h, [VLC_ADD_LDFLAGS([freetype],[-Wl,-framework,Carbon])]) - elif test "${enable_freetype}" = "yes" - then + ],[ + have_freetype=no + AS_IF([ test "${enable_freetype}" = "yes"],[ AC_MSG_ERROR([I couldn't find the freetype package. You can download libfreetype2 from http://www.freetype.org/, or configure with --disable-freetype. Have a nice day. + ]) ]) - fi + ]) dnl fribidi support if test "${enable_fribidi}" != "no" then - FRIBIDI_PATH="${PATH}" - AC_ARG_WITH(fribidi-config-path, - [ --with-fribidi-config-path=PATH fribidi-config path (default search in \$PATH)], - [ if test "${with_fribidi_config_path}" != "no" - then - FRIBIDI_PATH="${with_fribidi_config_path}:${PATH}" - fi ]) - AC_PATH_PROG(FRIBIDI_CONFIG, fribidi-config, no, ${FRIBIDI_PATH}) - - if test "${FRIBIDI_CONFIG}" != "no" - then - VLC_ADD_CFLAGS([freetype], [`${FRIBIDI_CONFIG} --cflags` -DHAVE_FRIBIDI]) - VLC_ADD_CPPFLAGS([skins2], [`${FRIBIDI_CONFIG} --cflags` -DHAVE_FRIBIDI]) - VLC_ADD_LIBS([freetype], [`${FRIBIDI_CONFIG} --libs`]) - VLC_ADD_LIBS([skins2], [`${FRIBIDI_CONFIG} --libs`]) + PKG_CHECK_MODULES(FRIBIDI, fribidi, [ + VLC_ADD_CPPFLAGS([freetype skins2], [${FRIBIDI_CFLAGS} -DHAVE_FRIBIDI]) + VLC_ADD_LIBS([freetype skins2], [${FRIBIDI_LIBS}]) + ]) fi - fi fi dnl @@ -4595,6 +4551,13 @@ then VLC_ADD_PLUGINS([caca]) VLC_ADD_CFLAGS([caca],[`${CACA_CONFIG} --cflags`]) VLC_ADD_LIBS([caca],[`${CACA_CONFIG} --plugin-libs`]) + AC_COMPILE_IFELSE( [AC_LANG_PROGRAM([[#include + caca_event_t ev;]], + [[ev.type = 0;]] + )], + [], + [AC_DEFINE(CACA_EVENT_OPAQUE, [1], ["Define if struct caca_event is opaque and must not be accessed directly"])] + ) fi fi @@ -4843,7 +4806,7 @@ dnl dnl UPnP Plugin (Intel SDK) dnl AC_ARG_ENABLE(upnp, - [ --enable-upnp Intel UPnP SDK (default auto)]) + [ --enable-upnp Intel UPnP SDK (default enabled)]) VLC_ADD_CXXFLAGS([upnp_intel], [ ]) AS_IF([test "x${enable_upnp}" != "xno"], [ @@ -4888,10 +4851,7 @@ if test "${enable_skins2}" = "yes" || skins2_missing_lib="no" dnl freetype - if test "${FREETYPE_CONFIG}" != "no"; then - VLC_ADD_CPPFLAGS([skins2],[`${FREETYPE_CONFIG} --cflags`]) - VLC_ADD_LIBS([skins2],[`${FREETYPE_CONFIG} --libs`]) - else + if test "${have_freetype}" != "yes"; then skins2_missing_lib="yes" if test "${enable_skins2}" = "yes"; then AC_MSG_ERROR([Could not find freetype (required for skins2)]) @@ -5151,6 +5111,7 @@ then if test "${ac_cv_wx_headers}" = "yes" then VLC_ADD_PLUGINS([wxwidgets]) + AC_DEFINE([HAVE_WX], 1, [Define to 1 if you have WxWidgets library.]) ALIASES="${ALIASES} wxvlc" fi CPPFLAGS="${CPPFLAGS_save}" @@ -5170,18 +5131,23 @@ AS_IF([test "${enable_qt4}" != "no" && (test "${SYS}" != "darwin" || test "${enable_qt4}" = "yes")], [ PKG_CHECK_MODULES(QT4, [QtCore QtGui >= 4.2.0], [ VLC_ADD_PLUGINS([qt4]) + AC_DEFINE([HAVE_QT4], 1, [Define to 1 if you have QT4 library.]) ALIASES="${ALIASES} qvlc" enableqt4=true - VLC_ADD_LIBS([qt4],[$QT4_LIBS]) + if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" -a "${SYS}" != "cygwin" -a "${SYS}" != "darwin"; then + VLC_ADD_LIBS([qt4],[$QT4_LIBS -lX11]) + else + VLC_ADD_LIBS([qt4],[$QT4_LIBS]) + fi VLC_ADD_CXXFLAGS([qt4],[$QT4_CFLAGS -DQT4LOCALEDIR=\\\\\\\"$($PKG_CONFIG --variable=prefix QtCore)/share/qt4/translations/\\\\\\\"]) AC_PATH_PROGS(MOC, [moc-qt4 moc], moc,`$PKG_CONFIG --variable=exec_prefix QtCore`/bin) AC_PATH_PROG(RCC, rcc, rcc,`$PKG_CONFIG --variable=exec_prefix QtCore`/bin) AC_PATH_PROGS(UIC, [uic-qt4 uic], uic,`$PKG_CONFIG --variable=exec_prefix QtCore`/bin) ], AS_IF([test "${enable_qt4}" = "yes"],[ - AC_MSG_ERROR(QT4 library not found) + AC_MSG_ERROR(QT4 library not found) ],[ - AC_MSG_WARN(QT4 library not found) + AC_MSG_WARN(QT4 library not found) ]) ) ]) @@ -5309,32 +5275,32 @@ AC_ARG_ENABLE(opie, fi]) dnl -dnl MacOS X module +dnl MacOS X video output/gui modules dnl -ORIGCFLAGS=$CFLAGS -CFLAGS="$CFLAGS -x objective-c" AC_ARG_ENABLE(macosx, - [ --enable-macosx MacOS X support (default enabled on MacOS X)], - [if test "${enable_macosx}" = "yes" - then - VLC_ADD_PLUGINS([access_eyetv]) - VLC_ADD_LDFLAGS([access_eyetv], [-Wl,-framework,CoreFoundation]) - VLC_ADD_LDFLAGS([minimal_macosx],[-Wl,-framework,IOKit,-framework,Cocoa,-framework,Carbon,-lobjc,-ObjC,-framework,OpenGL,-framework,AGL]) - VLC_ADD_LDFLAGS([macosx],[-Wl,-framework,IOKit,-framework,Cocoa,-framework,Carbon,-framework,QuickTime,-lobjc,-ObjC,-framework,OpenGL,-framework,AGL,-framework,QTKit,-framework,WebKit]) - VLC_ADD_OBJCFLAGS( [macosx],[-fobjc-exceptions] ) - VLC_ADD_OBJCFLAGS( [minimal_macosx],[-fobjc-exceptions] ) - fi], - [AC_CHECK_HEADERS(Cocoa/Cocoa.h, - [VLC_ADD_PLUGINS([access_eyetv]) - VLC_ADD_LDFLAGS([access_eyetv], [-Wl,-framework,CoreFoundation]) - VLC_ADD_BUILTINS([macosx]) - VLC_ADD_BUILTINS([minimal_macosx]) - VLC_ADD_LDFLAGS([minimal_macosx],[-Wl,-framework,IOKit,-framework,Cocoa,-framework,Carbon,-framework,QuickTime,-lobjc,-ObjC,-framework,OpenGL,-framework,AGL]) - VLC_ADD_LDFLAGS([macosx],[-Wl,-framework,IOKit,-framework,Cocoa,-framework,Carbon,-framework,QuickTime,-lobjc,-ObjC,-framework,OpenGL,-framework,AGL,-framework,QTKit,-framework,WebKit]) - VLC_ADD_OBJCFLAGS([macosx],[-fobjc-exceptions]) - VLC_ADD_OBJCFLAGS([minimal_macosx],[-fobjc-exceptions]) - ])]) -CFLAGS=$ORIGCFLAGS + [ --enable-macosx MacOS X support (default enabled on MacOS X)]) +if test "x${enable_macosx}" = "xyes" +then + VLC_ADD_LDFLAGS([access_eyetv], [-Wl,-framework,Foundation]) + VLC_ADD_LDFLAGS([macosx minimal_macosx opengllayer],[-Wl,-framework,Cocoa]) + VLC_ADD_LDFLAGS([macosx minimal_macosx opengllayer],[-Wl,-framework,OpenGL]) + VLC_ADD_LDFLAGS([macosx minimal_macosx], [-Wl,-framework,Carbon]) + VLC_ADD_LDFLAGS([macosx minimal_macosx], [-Wl,-framework,AGL]) + VLC_ADD_LDFLAGS([macosx], [-Wl,-framework,IOKit]) + VLC_ADD_LDFLAGS([macosx], [-Wl,-framework,QuickTime]) + VLC_ADD_LDFLAGS([macosx], [-Wl,-framework,QTKit]) + VLC_ADD_LDFLAGS([macosx], [-Wl,-framework,WebKit]) + VLC_ADD_LDFLAGS([opengllayer], [-Wl,-framework,QuartzCore]) + VLC_ADD_OBJCFLAGS([macosx minimal_macosx opengllayer], [-fobjc-exceptions] ) + + VLC_ADD_PLUGINS([access_eyetv]) + VLC_ADD_BUILTINS([macosx minimal_macosx]) + + ORIGCFLAGS=$CFLAGS + CFLAGS="$CFLAGS -x objective-c" + AC_CHECK_HEADER(QuartzCore/CALayer.h, [VLC_ADD_BUILTINS([opengllayer])]) + CFLAGS=$ORIGCFLAGS +fi dnl dnl QNX RTOS module @@ -5355,19 +5321,24 @@ dnl AC_ARG_ENABLE(ncurses, [ --disable-ncurses ncurses interface support (default enabled)], [if test "${enable_ncurses}" != "no"; then - AC_CHECK_HEADERS(ncursesw/curses.h, - [AC_CHECK_LIB( ncursesw, mvprintw, - [VLC_ADD_PLUGINS([ncurses]) - VLC_ADD_LIBS([ncurses],[-lncursesw])]) - ], - [AC_CHECK_HEADER(curses.h, - [AC_CHECK_LIB(ncurses, mvprintw, - [VLC_ADD_PLUGINS([ncurses]) - VLC_ADD_LIBS([ncurses],[-lncurses])] - )] - )] - ) - fi]) + AC_CHECK_HEADER(ncurses.h, + [AC_CHECK_LIB(ncursesw, mvprintw, + [VLC_ADD_PLUGINS([ncurses]) + VLC_ADD_LIBS([ncurses],[-lncursesw]) + ALIASES="${ALIASES} nvlc" + AC_DEFINE([HAVE_NCURSESW], 1, [Define to 1 if you have libncursesw.]) + ], + [AC_CHECK_LIB( ncurses, mvprintw, + [VLC_ADD_PLUGINS([ncurses]) + ALIASES="${ALIASES} nvlc" + VLC_ADD_LIBS([ncurses],[-lncurses])], + [AS_IF([test "x${enable_ncurses}" != "x"], [ + AC_MSG_ERROR([libncurses not found])])] + )] + )] + ) + fi] +) dnl dnl XOSD plugin @@ -5494,8 +5465,8 @@ if test "${enable_bonjour}" != "no" then PKG_CHECK_MODULES(BONJOUR, avahi-client >= 0.3, [PKG_CHECK_MODULES(BONJOUR, avahi-client >= 0.6, - [AC_DEFINE(HAVE_AVAHI_06, [], [Define if you have avahi-client 0.6 or greater])],) - AC_DEFINE(HAVE_AVAHI_CLIENT, [], [Define if you have the avahi-client library]) + [AC_DEFINE(HAVE_AVAHI_06, 1, [Define if you have avahi-client 0.6 or greater])],) + AC_DEFINE(HAVE_AVAHI_CLIENT, 1, [Define if you have the avahi-client library]) VLC_ADD_LIBS([bonjour access_output_http],[$BONJOUR_LIBS]) VLC_ADD_CFLAGS([bonjour access_output_http],[$BONJOUR_CFLAGS]) VLC_ADD_PLUGINS([bonjour]) ], @@ -5520,6 +5491,39 @@ fi AC_ARG_WITH(,[Misc options:]) +dnl +dnl libgcrypt +dnl +AC_ARG_ENABLE(libgcrypt, + [ --enable-libgcrypt libgcrypts support (default enabled)]) + +GCRYPT_PATH="${PATH}" +AC_ARG_WITH(libgcrypt-config-path, +[ --with-libgcrypt-config-path=PATH libgcrypt-config path (default search in \$PATH)], + [ if test "${with_libgcrypt_config_path}" != "no" + then + GCRYPT_PATH="${with_libgcrypt_config_path}:${PATH}" + fi ]) + +if test "${enable_libgcrypt}" != "no" +then + dnl Workaround for cross-compiling since AM_PATH_LIBGRYPT doesn't dectect + dnl it and looks for libgcrypt headers in the wrong place. + if test "${host_cpu}" = "${build_cpu}" + then + AM_PATH_LIBGCRYPT([1:1.1.94], [have_libgcrypt="yes"], [have_libgcrypt="no"]) + else + AC_CHECK_HEADERS(gcrypt.h,have_libgcrypt="yes",have_libgcrypt="no") + fi +fi +AM_CONDITIONAL([HAVE_LIBGCRYPT], [test "${have_libgcrypt}" = "yes"]) +AS_IF([test "${have_libgcrypt}" = "yes"],[ + # look for libgcrypt-config + AC_PATH_PROG(GCRYPT_CONFIG, "libgcrypt-config", no, ${GCRYPT_PATH}) + GCRYPT_CFLAGS=`${GCRYPT_CONFIG} --cflags` + GCRYPT_LIBS=`${GCRYPT_CONFIG} --libs` +]) + dnl dnl TLS/SSL dnl @@ -5527,9 +5531,7 @@ AC_ARG_ENABLE(gnutls, [ --enable-gnutls gnutls TLS/SSL support (default enabled)]) AS_IF([test "${enable_gnutls}" != "no"], [ - PKG_CHECK_MODULES(GNUTLS, [gnutls >= 1.3.3], [have_gnutls="yes"], [have_gnutls="no"]) - - AS_IF([test "${have_gnutls}" = "yes"], [ + PKG_CHECK_MODULES(GNUTLS, [gnutls >= 1.3.3], [ VLC_ADD_PLUGINS([gnutls]) VLC_ADD_CFLAGS([gnutls], [$GNUTLS_CFLAGS]) AS_IF([test "${SYS}" = "mingw32"], [ @@ -5537,9 +5539,10 @@ AS_IF([test "${enable_gnutls}" != "no"], [ VLC_ADD_LIBS([gnutls], [-lz]) VLC_ADD_LIBS([gnutls], [${LTLIBINTL}]) ]) - AC_CHECK_LIB([gcrypt], [gcry_control], [ - VLC_ADD_LIBS([gnutls], [-lgcrypt -lgpg-error]) - ], [], [-lgpg-error]) + AS_IF([test "${have_libgcrypt}" = "yes"],[ + VLC_ADD_LIBS([gnutls], ${GCRYPT_LIBS}) + VLC_ADD_CFLAGS([gnutls], ${GCRYPT_CFLAGS}) + ], [-lgpg-error]) VLC_ADD_LIBS([gnutls], [$GNUTLS_LIBS]) ], [ AS_IF([test "${enable_gnutls}" = "yes"], [ @@ -5549,23 +5552,20 @@ AS_IF([test "${enable_gnutls}" != "no"], [ ]) dnl -dnl libgcrypt +dnl update checking system dnl -AC_ARG_ENABLE(libgcrypt, - [ --enable-libgcrypt libgcrypts support (default enabled)]) -if test "${enable_libgcrypt}" != "no" -a "${enable_gnutls}" != "no"i +AC_ARG_ENABLE(update-check, + [ --enable-update-check update checking system (default disabled)]) +if test "${enable_update_check}" = "yes" then - dnl Workaround for cross-compiling since AM_PATH_LIBGRYPT doesn't dectect - dnl it and looks for libgcrypt headers in the wrong place. - if test "${host_cpu}" = "${build_cpu}" + if test "${have_libgcrypt}" != "yes" then - AM_PATH_LIBGCRYPT([1:1.1.94], [have_libgcrypt="yes"], [have_libgcrypt="no"]) - else - AC_CHECK_HEADERS(gcrypt.h,have_libgcrypt="yes",have_libgcrypt="no") + AC_MSG_ERROR([libgcrypt is required for update checking system]) fi + VLC_ADD_LIBS([libvlc], ${GCRYPT_LIBS}) + VLC_ADD_CFLAGS([libvlc], ${GCRYPT_CFLAGS}) + AC_DEFINE([UPDATE_CHECK], 1, [Define if you want to use the VLC update mechanism]) fi -AM_CONDITIONAL([HAVE_LIBGCRYPT], [test "${have_libgcrypt}" = "yes"]) - dnl dnl Endianness check, AC_C_BIGENDIAN doesn't work if we are cross-compiling @@ -5640,7 +5640,7 @@ AS_IF([test "${enable_loader}" = "yes"], VLC_ADD_CPPFLAGS([quicktime],[-I../../@top_srcdir@/libs/loader]) VLC_ADD_LIBS([quicktime],[../../libs/loader/libloader.la -lpthread]) VLC_ADD_CPPFLAGS([realaudio],[-I../../@top_srcdir@/libs/loader -DLOADER]) - VLC_ADD_LIBS([realaudio],[../../libs/loader/libloader.la -ldl -lpthread]) + VLC_ADD_LIBS([realaudio],[../../libs/loader/libloader.la]) ]) dnl @@ -5750,7 +5750,8 @@ then MOZILLA_CONFIG_H="${firefox_include}/mozilla-config.h" fi if grep '^#define MOZ_X11 1' ${MOZILLA_CONFIG_H} 2>&1 > /dev/null ; then - VLC_ADD_LIBS([mozilla], [${X_LIBS} ${X_PRE_LIBS} -lX11 -lXt]) + AC_CHECK_HEADERS(X11/xpm.h,,AC_MSG_ERROR([Please install libXpm-devel library for required X11/xpm.h])) + VLC_ADD_LIBS([mozilla], [${X_LIBS} ${X_PRE_LIBS} -lX11 -lXt -lXpm]) fi VLC_ADD_CPPFLAGS([mozilla],[${CPPFLAGS}]) VLC_ADD_LDFLAGS([mozilla],[${MOZILLA_LDFLAGS}]) @@ -5787,11 +5788,12 @@ then AC_CHECK_LIB(Xt,XtStrings, [ VLC_ADD_CPPFLAGS([mozilla],[${X_CFLAGS}]) - VLC_ADD_LIBS([mozilla],[${X_LIBS} ${X_PRE_LIBS} -lXt -lX11 -lSM -lICE]) + VLC_ADD_LIBS([mozilla],[${X_LIBS} ${X_PRE_LIBS} -lXt -lX11 -lSM -lICE -lXpm]) ], [], - [[${X_LIBS} ${X_PRE_LIBS} -lX11 -lSM -lICE] + [[${X_LIBS} ${X_PRE_LIBS} -lX11 -lSM -lICE -lXpm] ]) + AC_CHECK_HEADERS(X11/xpm.h,,AC_MSG_ERROR([Please install libXpm-devel library for required X11/xpm.h])) LDFLAGS="${LDFLAGS_save}" fi @@ -5872,7 +5874,7 @@ fi AC_LANG_POP(C++) AM_CONDITIONAL(BUILD_MOZILLA,${mozilla}) - dnl Tests for Osso and Xsp +dnl Tests for Osso and Xsp if test "${enable_x11}" != "no" && (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" || test "${enable_x11}" = "yes"); then @@ -6031,7 +6033,8 @@ dnl dnl Stuff used by the program dnl AC_DEFINE_UNQUOTED(VERSION_MESSAGE, "${VERSION} ${CODENAME}", [Simple version string]) -AC_DEFINE_UNQUOTED(COPYRIGHT_MESSAGE, "VLC media player - version ${VERSION} ${CODENAME} - (c) 1996-2007 the VideoLAN team", [Copyright string]) +AC_DEFINE_UNQUOTED(COPYRIGHT_MESSAGE, "VLC media player - version ${VERSION} ${CODENAME} - (c) ${COPYRIGHT_YEARS} the VideoLAN team", [Copyright string]) +AC_DEFINE_UNQUOTED(COPYRIGHT_YEARS, "${COPYRIGHT_YEARS}", [The copyright years]) AC_DEFINE_UNQUOTED(CONFIGURE_LINE, "${CONFIGURE_LINE}", [The ./configure command line]) AC_DEFINE_UNQUOTED(PACKAGE_VERSION_MAJOR,"${VERSION_MAJOR}", [version major number]) AC_DEFINE_UNQUOTED(PACKAGE_VERSION_MINOR,"${VERSION_MINOR}", [version minor number]) @@ -6041,17 +6044,15 @@ AC_SUBST(VERSION_MAJOR) AC_SUBST(VERSION_MINOR) AC_SUBST(VERSION_REVISION) AC_DEFINE_UNQUOTED(VLC_COMPILE_BY, "`whoami`", [user who ran configure]) -AC_DEFINE_UNQUOTED(VLC_COMPILE_HOST, "`hostname`", [host which ran configure]) +if test "${SYS}" = "cygwin" +then + AC_DEFINE_UNQUOTED(VLC_COMPILE_HOST, "`hostname`", [host which ran configure]) +else + AC_DEFINE_UNQUOTED(VLC_COMPILE_HOST, "`hostname -s`", [host which ran configure]) +fi AC_DEFINE_UNQUOTED(VLC_COMPILE_DOMAIN, "`dnsdomainname 2>/dev/null || domainname 2>/dev/null || echo unknown`", [domain of the host which ran configure]) AC_DEFINE_UNQUOTED(VLC_COMPILER, "`$CC -v 2>&1 | tail -n 1`", [compiler]) -dnl New definitions with value matching 0.9.0 release -module_symbol="0_9_0b" -AC_DEFINE_UNQUOTED(MODULE_SUFFIX, "__${module_symbol}", [String suffix for module functions]) -AC_DEFINE_UNQUOTED(MODULE_SYMBOL, $module_symbol, [Symbol suffix for module functions]) -VLC_ENTRY="vlc_entry__${module_symbol}" -AC_SUBST(VLC_ENTRY) - dnl dnl Handle substvars that use $(top_srcdir) dnl @@ -6121,6 +6122,7 @@ AC_CONFIG_FILES([ modules/access/mms/Makefile modules/access/cdda/Makefile modules/access/rtsp/Makefile + modules/access/v4l2/Makefile modules/access/vcd/Makefile modules/access/vcdx/Makefile modules/access/screen/Makefile @@ -6166,6 +6168,7 @@ AC_CONFIG_FILES([ modules/misc/notify/Makefile modules/misc/testsuite/Makefile modules/misc/playlist/Makefile + modules/misc/osd/Makefile modules/misc/xml/Makefile modules/misc/probe/Makefile modules/mux/Makefile @@ -6229,4 +6232,11 @@ with \`./vlc-config --list plugin'. You can tune the compiler flags in vlc-config. To build vlc and its plugins, type \`./compile' or \`make'. " - +if test "x$ac_ld_does_not_support_text_reloc" = "xyes"; then + echo "" + echo "Warning: Due to a bug in ld, mmx/sse support has been" + echo " turned off." + echo " FFmpeg will be REALLY slow." + echo " VLC WILL NOT PERFORM AS EXPECTED." + echo "" +fi