X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=configure.ac;h=17056ed97880dd4c5c12330b673c78dac7c22b35;hb=78d4a87fc6ad5f58af52886364a77d75e8ee6cd2;hp=b8a523891a38b9521adb7a37c667fdf6dcfec073;hpb=3ade296d070f266dbedbb1b1a14cae71bff713e7;p=vlc diff --git a/configure.ac b/configure.ac index b8a523891a..17056ed978 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: @@ -168,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]) @@ -183,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" @@ -214,6 +222,9 @@ case "${host_os}" in echo " Assuming --disable-glx" 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 @@ -233,10 +244,32 @@ case "${host_os}" in echo " Assuming --disable-mmx (due to a bug in ld)" enable_sse="no" echo " Assuming --disable-sse (due to a bug in ld)" - enable_ffmpeg="no" - echo " Assuming --disable-ffmpeg (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*) AC_CHECK_TOOL(WINDRES, windres, :) @@ -356,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 @@ -456,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) ]) @@ -507,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.]) @@ -720,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) @@ -813,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) @@ -828,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 @@ -860,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 @@ -877,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])], @@ -996,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], @@ -1144,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], @@ -1262,7 +1219,7 @@ 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 i422_i420]) + 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]) @@ -1655,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])], @@ -1692,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]) @@ -2224,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 @@ -2344,7 +2301,7 @@ then fi dnl -dnl Video4Linux plugin +dnl Video4Linux2 plugin dnl AC_ARG_ENABLE(v4l2, [ --enable-v4l2 Video4Linux2 input support (default disabled)]) @@ -2357,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]) @@ -2425,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 @@ -2449,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]) @@ -2464,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]) ], @@ -2496,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]) @@ -2559,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]) ],: @@ -3067,6 +3037,12 @@ 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 + + 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 else @@ -3718,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,7 +3714,7 @@ AC_CHECK_HEADERS(png.h, [ VLC_ADD_LIBS([png],[-lpng -lz]) VLC_ADD_PLUGINS([png]) VLC_ADD_PLUGINS([osdmenu osd_parser]) - AC_DEFINE(HAVE_LIBPNG, [], [Define if you have the PNG library: libpng])], + AC_DEFINE(HAVE_LIBPNG, 1, [Define if you have the PNG library: libpng])], [],[-lz]) LDFLAGS="${LDFLAGS_save}" ]) @@ -4594,6 +4570,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 @@ -5150,6 +5133,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}" @@ -5169,18 +5153,19 @@ 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]) + VLC_ADD_LIBS([qt4],[$QT4_LIBS -lX11]) 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) ]) ) ]) @@ -5308,32 +5293,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 @@ -5358,6 +5343,7 @@ AC_ARG_ENABLE(ncurses, [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, @@ -5497,8 +5483,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]) ], @@ -5523,6 +5509,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 @@ -5530,9 +5549,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"], [ @@ -5540,9 +5557,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"], [ @@ -5552,23 +5570,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 @@ -5753,7 +5768,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}]) @@ -5790,11 +5806,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 @@ -5875,7 +5892,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 @@ -6034,7 +6051,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]) @@ -6044,17 +6062,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_0c" -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 @@ -6124,6 +6140,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 @@ -6237,7 +6254,7 @@ 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 " More over FFmpeg support has been disabled." - echo " VLC WILL NOT BE ABLE TO PLAY MOST FILES." + echo " FFmpeg will be REALLY slow." + echo " VLC WILL NOT PERFORM AS EXPECTED." echo "" fi