X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=configure.ac;h=4c16c28e0358950572fc8749c499eff982f83bc2;hb=09814f3e8b8d753fcbba33e7242ec86379cbc1a1;hp=7fe4ebb69fd2bdce6b0d017cbecfff1db1a17e25;hpb=9f8c044ac3b8efa27c2923bc0b29624cd13165d9;p=vlc diff --git a/configure.ac b/configure.ac index 7fe4ebb69f..4c16c28e03 100644 --- a/configure.ac +++ b/configure.ac @@ -152,7 +152,7 @@ case "${host_os}" in LDFLAGS="${LDFLAGS} -Wl,-headerpad_max_install_names ${ARCH_flag}" VLC_ADD_LIBS([mkv mp4 motion], [-Wl,-framework,IOKit,-framework,CoreFoundation]) VLC_ADD_LIBS([libvlc vlc],[-Wl,-undefined,dynamic_lookup]) - VLC_ADD_LIBS([avcodec avformat access_avio swscale postproc i420_rgb_mmx x264],[-Wl,-read_only_relocs,suppress]) + VLC_ADD_LIBS([avcodec avformat access_avio swscale postproc i420_rgb_mmx x264 x26410b],[-Wl,-read_only_relocs,suppress]) VLC_ADD_CFLAGS([motion],[-fconstant-cfstrings]) VLC_ADD_LIBS([libvlccore],[-Wl,-framework,CoreFoundation]) @@ -174,7 +174,7 @@ case "${host_os}" in [AS_HELP_STRING([--with-macosx-sdk=DIR], [compile using the SDK in DIR])]) test "${with_macosx_sdk}" = "" && with_macosx_sdk=/Developer/SDKs/MacOSX10.6.sdk - ! test -d "${with_macosx_sdk}" && AC_MSG_ERROR([SDK "${with_macosx_sdk}" not found]) + test ! -d "${with_macosx_sdk}" && AC_MSG_ERROR([SDK "${with_macosx_sdk}" not found]) AC_ARG_WITH(macosx-version-min, [AS_HELP_STRING([--with-macosx-version-min=VERSION], [compile for MacOS X VERSION and above])]) @@ -490,8 +490,8 @@ need_libc=false dnl Check for usual libc functions AC_CHECK_DECLS([nanosleep],,,[#include ]) -AC_CHECK_FUNCS([daemon fcntl fstatvfs fork getenv getpwuid_r if_nameindex if_nametoindex isatty lstat memalign mmap openat pread posix_fadvise posix_madvise setlocale stricmp strnicmp strptime uselocale]) -AC_REPLACE_FUNCS([atof atoll dirfd fdopendir flockfile fsync getdelim getpid gmtime_r inet_pton lldiv localtime_r nrand48 poll rewind setenv strcasecmp strcasestr strdup strlcpy strncasecmp strndup strnlen strsep strtof strtok_r strtoll swab tdestroy]) +AC_CHECK_FUNCS([daemon fcntl fstatvfs fork getenv getpwuid_r isatty lstat memalign mmap openat pread posix_fadvise posix_madvise setlocale stricmp strnicmp strptime uselocale]) +AC_REPLACE_FUNCS([atof atoll dirfd fdopendir flockfile fsync getdelim getpid gmtime_r inet_pton lldiv localtime_r nrand48 poll posix_memalign rewind setenv strcasecmp strcasestr strdup strlcpy strncasecmp strndup strnlen strsep strtof strtok_r strtoll swab tdestroy strverscmp]) AC_CHECK_FUNCS(fdatasync,, [AC_DEFINE(fdatasync, fsync, [Alias fdatasync() to fsync() if missing.]) ]) @@ -543,7 +543,7 @@ AC_CHECK_TYPES([struct pollfd],,, #endif ]) -dnl Check for connect +dnl Checks for socket stuff VLC_SAVE_FLAGS SOCKET_LIBS="" AC_SEARCH_LIBS(connect, [socket], [ @@ -558,9 +558,18 @@ AC_SEARCH_LIBS(connect, [socket], [ SOCKET_LIBS="-lws2" ]) ]) + +AC_SEARCH_LIBS([getaddrinfo], [nsl], [ + AS_IF([test "$ac_cv_search_getaddrinfo" != "none required"], [ + SOCKET_LIBS="$ac_cv_search_getaddrinfo $SOCKET_LIBS" + ]) +],, [${SOCKET_LIBS}]) + +AC_CHECK_FUNCS([if_nameindex if_nametoindex]) VLC_RESTORE_FLAGS + AS_IF([test -n "$SOCKET_LIBS"], [ - VLC_ADD_LIBS([access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp access_output_shout sap stream_out_select stream_out_standard stream_out_rtp stream_out_raop vod_rtsp access_realrtsp rtp oldrc netsync gnutls flac ts audioscrobbler lua remoteosd zvbi audiobargraph_a netsync],[${SOCKET_LIBS}]) + VLC_ADD_LIBS([access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp access_output_shout sap stream_out_select stream_out_standard stream_out_rtp stream_out_raop vod_rtsp access_realrtsp rtp oldrc netsync gnutls flac ts audioscrobbler lua remoteosd zvbi audiobargraph_a netsync stream_filter_dash],[${SOCKET_LIBS}]) ]) AC_SUBST(SOCKET_LIBS) @@ -601,13 +610,6 @@ AS_IF([test "${ac_cv_struct_sockaddr_storage}" = no], [ AC_DEFINE(ss_family, sa_family) ]) -dnl getaddrinfo, getnameinfo and gai_strerror check -dnl -lnsl and -lsocket are needed on Solaris; -dnl we purposedly make the test fail on Windows -VLC_SAVE_FLAGS -AC_SEARCH_LIBS([getaddrinfo], [nsl],,, [${SOCKET_LIBS}]) -VLC_RESTORE_FLAGS - dnl FreeBSD has a gnugetopt library for this: GNUGETOPT_LIBS="" AC_CHECK_FUNC(getopt_long,, [ @@ -618,7 +620,7 @@ AC_CHECK_FUNC(getopt_long,, [ AC_SUBST(GNUGETOPT_LIBS) AC_CHECK_LIB(m,cos,[ - VLC_ADD_LIBS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom visual panoramix rotate noise grain scene kate flac lua chorus_flanger freetype avcodec avformat access_avio swscale postproc i420_rgb faad twolame equalizer spatializer param_eq samplerate freetype mod mpc dmo mp4 quicktime realvideo qt4 compressor headphone_channel_mixer normvol audiobargraph_a speex mono colorthres extract ball access_imem hotkeys mosaic gaussianblur dbus x264 hqdn3d],[-lm]) + VLC_ADD_LIBS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom visual panoramix rotate noise grain scene kate flac lua chorus_flanger freetype avcodec avformat access_avio swscale postproc i420_rgb faad twolame equalizer spatializer param_eq samplerate freetype mpc dmo mp4 quicktime qt4 compressor headphone_channel_mixer normvol audiobargraph_a speex mono colorthres extract ball access_imem hotkeys mosaic gaussianblur dbus x26410b hqdn3d anaglyph],[-lm]) LIBM="-lm" ], [ LIBM="" @@ -660,7 +662,7 @@ AS_IF([test "${have_dynamic_objects}" != "no"], [ AM_CONDITIONAL(HAVE_DYNAMIC_PLUGINS, [test "${have_dynamic_objects}" != "no"]) AC_SUBST(LIBDL) -VLC_ADD_LIBS([realvideo lua],[$LIBDL]) +VLC_ADD_LIBS([lua],[$LIBDL]) dnl Check for thread library if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then @@ -707,7 +709,7 @@ AC_CHECK_HEADERS([sys/mount.h], [], [], if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then AC_CHECK_HEADERS(machine/param.h sys/shm.h) AC_CHECK_HEADERS([linux/version.h linux/dccp.h scsi/scsi.h linux/magic.h]) - AC_CHECK_HEADERS(syslog.h) + AC_CHECK_HEADERS(syslog.h mntent.h) fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" dnl LP64 and LLP64 architectures had better define ssize_t by themselves... @@ -761,20 +763,6 @@ fi AM_CONDITIONAL(HAVE_MINIZIP, [ test "${have_minizip}" = "yes" ]) -dnl Manual switch for UTF-8 -AC_ARG_ENABLE(non-utf8, - [AS_HELP_STRING([--enable-non-utf8], - [support legacy non-UTF-8 systems (default disabled)])],, [ - AS_IF([test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce" -o "${SYS}" = "os2"], [ - enable_non_utf8="no" - ]) -]) -AS_IF([test "${enable_non_utf8}" != "no"], [ - AC_DEFINE([ASSUME_UTF8], [1], - [Define to 1 if the operating system uses UTF-8 internally]) -]) - - dnl Check for dbus AC_ARG_ENABLE(dbus, [AS_HELP_STRING([--enable-dbus], @@ -962,6 +950,12 @@ AS_IF([test "${enable_optimizations}" != "no"], [ ]) ]) AS_IF([test "${ac_cv_c_fast_math}" = "no"], [VLC_RESTORE_FLAGS]) + AH_BOTTOM([ +#ifndef __FAST_MATH__ +# pragma STDC FENV_ACCESS OFF +# pragma STDC FP_CONTRACT ON +#endif +]) dnl Check for -funroll-loops VLC_SAVE_FLAGS @@ -1100,7 +1094,7 @@ have_mmxext="no" AS_IF([test "${enable_mmx}" != "no"], [ ARCH="${ARCH} mmx" VLC_SAVE_FLAGS - CFLAGS="${CFLAGS} -O -mmmx" + CFLAGS="${CFLAGS} -mmmx" AC_CACHE_CHECK([if $CC groks MMX intrinsics], [ac_cv_c_mmx_intrinsics], [ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([ [#include @@ -1184,7 +1178,7 @@ AS_IF([test "${enable_sse}" != "no"], [ ARCH="${ARCH} sse sse2" VLC_SAVE_FLAGS - CFLAGS="${CFLAGS} -O -msse2" + CFLAGS="${CFLAGS} -msse2" AC_CACHE_CHECK([if $CC groks SSE2 intrinsics], [ac_cv_c_sse2_intrinsics], [ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([ [#include @@ -1774,7 +1768,7 @@ then AC_CHECK_HEADERS(dshow.h, [ VLC_ADD_PLUGIN([dshow]) VLC_ADD_CXXFLAGS([dshow],[]) - VLC_ADD_LIBS([dshow],[-lole32 -loleaut32 -luuid]) ]) + VLC_ADD_LIBS([dshow],[-lole32 -loleaut32 -luuid -lstrmiids -lksuser])]) AC_LANG_POP(C++) fi fi @@ -1832,11 +1826,6 @@ AS_IF([test "$enable_v4l2" != "no"], [ ]) ]) AS_IF([test "$have_v4l2" = "yes"], [ - PKG_CHECK_MODULES(LIBV4L2, libv4l2, [ - AC_DEFINE(HAVE_LIBV4L2, 1, [Define to 1 if libv4l2 is available]) - ], [ - AC_MSG_WARN([${LIBV4L2_PKG_ERRORS}.]) - ]) AS_IF([test "${enable_pvr}" = "yes"], [ VLC_ADD_PLUGIN([pvr]) ]) @@ -1959,17 +1948,21 @@ fi dnl dnl Linux DVB dnl -AC_CACHE_CHECK([for Linux DVB version 5], [ac_cv_linux_s2api], [ +AC_CACHE_CHECK([for Linux DVB version 5.1], [ac_cv_linux_dvb_5_1], [ AC_PREPROC_IFELSE([AC_LANG_PROGRAM([ [#include #if (DVB_API_VERSION < 5) -EXPLODE -#endif]])], [ - ac_cv_linux_s2api=yes +# error Linux DVB API v3.2 and older are not supported. +#endif +#if (DVB_API_VERSION == 5 && DVB_API_VERSION_MINOR < 1) +# error Linux DVB API v5.0 is unsupported. Please update. +#endif +]])], [ + ac_cv_linux_dvb_5_1=yes ], [ - ac_cv_linux_s2api=no + ac_cv_linux_dvb_5_1=no ])]) -AM_CONDITIONAL([HAVE_LINUX_DVB], [test "$ac_cv_linux_s2api" = "yes"]) +AM_CONDITIONAL([HAVE_LINUX_DVB], [test "$ac_cv_linux_dvb_5_1" = "yes"]) dnl dnl Screen capture module @@ -2602,15 +2595,6 @@ if test "${enable_quicktime}" = "yes"; then fi fi -dnl -dnl Real plugin -dnl -AC_ARG_ENABLE(real, - [ --enable-real Real video decoder module (default disabled)]) -if test "${enable_real}" = "yes"; then - VLC_ADD_PLUGIN([realvideo]) -fi - dnl dnl A52/AC3 decoder plugin dnl @@ -2738,7 +2722,7 @@ AM_CONDITIONAL([HAVE_SPEEXDSP], [test "$have_speexdsp" = "yes"]) dnl dnl theora decoder plugin dnl -PKG_ENABLE_MODULES_VLC([THEORA], [], [ogg theora >= 1.0], [experimental theora codec], [auto]) +PKG_ENABLE_MODULES_VLC([THEORA], [], [ogg theoradec >= 1.0 theoraenc], [experimental theora codec], [auto]) dnl dnl dirac encoder plugin @@ -2768,6 +2752,60 @@ AC_CHECK_HEADERS(png.h, [ fi AM_CONDITIONAL(BUILD_OSDMENU, [test "${enable_png}" != "no"]) +dnl +dnl H264 encoder plugin (10-bit lib264) +dnl +AC_ARG_ENABLE(x26410b, + [ --enable-x26410b H264 10-bit encoding support with static libx264 (default disabled)]) +if test "${enable_x26410b}" != "no"; then +AC_ARG_WITH(x26410b-tree, + [ --with-x26410b-tree=PATH H264 10-bit encoding module with libx264 (static linking)],[],[]) + if test "${with_x26410b_tree}" != "no" -a -n "${with_x26410b_tree}" + then + real_x26410b_tree="̧`cd ${with_x26410b_tree} 2>/dev/null && pwd`" + if test -z "${real_x26410b_tree}" + then + AC_MSG_RESULT(no) + AC_MSG_ERROR([${with_x26410b_tree} directory does not exist]) + fi + AC_MSG_CHECKING(for x264.h in ${real_x26410b_tree}) + if test -f ${with_x26410b_tree}/x264_config.h + then + AC_MSG_RESULT(yes) + AC_MSG_CHECKING(for 10-bit build of x264) + if grep -q "BIT_DEPTH.*10" ${with_x26410b_tree}/x264_config.h ;then + AC_MSG_RESULT(yes) + VLC_ADD_PLUGIN([x26410b]) + VLC_ADD_CFLAGS([x26410b],[-I${with_x26410b_tree}]) + VLC_ADD_LIBS([x26410b],[-L${with_x26410b_tree} -lm -lpthread -lx264]) + else + AC_MSG_RESULT(no) + AC_MSG_ERROR([${with_x26410b_tree} isnt build 10-bit]) + fi + else + AC_MSG_RESULT(no) + AC_MSG_ERROR([${with_x26410b_tree} doesnt have x264_config.h]) + fi + else + PKG_CHECK_MODULES(X26410B, x26410b, [ + VLC_ADD_PLUGIN([x26410b]) + VLC_ADD_LDFLAGS([x26410b],[${X26410B_LIBS}]) + AS_IF([test "${ac_cv_ld_bsymbolic}" != "no"], [ + VLC_ADD_LIBS([x26410b],[-Wl,-Bsymbolic]) + ]) + VLC_ADD_CFLAGS([x26410b],[${X26410B_CFLAGS}]) + if echo ${X26410B_LIBS} |grep -q 'pthreadGC2'; then + VLC_ADD_CFLAGS([x26410b], [-DPTW32_STATIC_LIB]) + fi + ], [ + if test "${enable_x26410b}" = "yes"; then + AC_MSG_ERROR([x26410b module doesn't work without staticly compiled libx264.a]) + fi + ]) + fi +fi + + dnl dnl H264 encoder plugin (using libx264) dnl @@ -2830,7 +2868,7 @@ fi dnl dnl libfluidsynth (MIDI synthetizer) plugin dnl -PKG_ENABLE_MODULES_VLC([FLUIDSYNTH], [], [fluidsynth], [MIDI synthetiser with libfluidsynth], [auto]) +PKG_ENABLE_MODULES_VLC([FLUIDSYNTH], [], [fluidsynth >= 1.1.2], [MIDI synthetiser with libfluidsynth], [auto]) dnl dnl Teletext Modules @@ -3010,11 +3048,7 @@ AS_IF([test "${enable_xcb}" != "no"], [ AS_IF([test "${have_gl}" != "yes"], [ AC_MSG_ERROR([${GL_PKG_ERRORS}. Pass --disable-glx if you do not need OpenGL X11 support.]) ]) - PKG_CHECK_MODULES(XLIB_XCB, [x11-xcb], [ - VLC_ADD_PLUGIN([xcb_glx]) - ], [ - AC_MSG_ERROR([${XLIB_XCB_PKG_ERRORS}. Pass --disable-glx if you do not need OpenGL X11 support.]) - ]) + VLC_ADD_PLUGIN([xcb_glx]) ]) ]) AM_CONDITIONAL([HAVE_XCB], [test "${have_xcb}" = "yes"]) @@ -3211,7 +3245,7 @@ AC_ARG_ENABLE(direct2d, AS_IF([test "${enable_direct2d}" != "no"], [ AC_CHECK_HEADERS(d2d1.h, [ VLC_ADD_PLUGIN([direct2d]) - VLC_ADD_LIBS([direct2d],[-lgdi32 -lole32]) + VLC_ADD_LIBS([direct2d],[-lgdi32 -lole32 -luuid]) ], [ AC_MSG_WARN([Cannot find Direct2D headers!]) ]) @@ -3434,6 +3468,24 @@ AS_IF([test "$enable_oss" != "no"], [ AC_SUBST(OSS_LIBS) AM_CONDITIONAL([HAVE_OSS], [test "${have_oss}" = "yes"]) +dnl +dnl OpenBSD sndio module +dnl +AC_ARG_ENABLE([sndio], + [AS_HELP_STRING([--disable-sndio], + [support the OpenBSD sndio (default auto)])],, [ + AS_IF([test "$SYS" = "opensd"], [ + enable_sndio="yes" + ]) +]) +have_sndio="no" +AS_IF([test "$enable_sndio" != "no"], [ + AC_CHECK_HEADER([sndio.h], [ + have_sndio="yes" + ]) +]) +AM_CONDITIONAL([HAVE_SNDIO], [test "${have_sndio}" = "yes"]) + dnl dnl win32 waveOut plugin dnl @@ -3688,14 +3740,14 @@ then VLC_ADD_LIBS([macosx], [-Wl,-framework,QTKit -Wl,-framework,IOKit -Wl,-framework,AddressBook -Wl,-framework,WebKit]) - if ! test -d ${CONTRIB_DIR}/Sparkle.framework + if test ! -d ${CONTRIB_DIR}/Sparkle.framework then AC_MSG_ERROR([Sparkle framework is required and was not found in ${CONTRIB_DIR}]) fi VLC_ADD_LIBS([macosx], [-F${CONTRIB_DIR} -Wl,-framework,Sparkle]) VLC_ADD_OBJCFLAGS([macosx], [-F${CONTRIB_DIR}]) - if ! test -d ${CONTRIB_DIR}/BGHUDAppKit.framework + if test ! -d ${CONTRIB_DIR}/BGHUDAppKit.framework then AC_MSG_ERROR([BGHUDAppKit framework is required and was not found in ${CONTRIB_DIR}]) fi @@ -3826,6 +3878,23 @@ AS_IF([test "${enable_projectm}" != "no"], ]) ]) +dnl +dnl Vovoid VSXu visualization plugin +dnl +AC_ARG_ENABLE(vsxu, + [ --enable-vsxu Vovoid VSXu visualization plugin (default auto)]) +AS_IF([test "${enable_vsxu}" != "no"], + [ + PKG_CHECK_MODULES(VSXU, libvsxu, + [ + VLC_ADD_PLUGIN([vsxu]) + VLC_ADD_CXXFLAGS([vsxu],[$VSXU_CFLAGS]) + VLC_ADD_LIBS([vsxu],[$VSXU_LIBS]) + ],[ + AC_MSG_WARN([${VSXU_PKG_ERRORS}.]) + ]) + ]) + dnl dnl AtmoLight (homemade Philips Ambilight clone) dnl @@ -4058,9 +4127,8 @@ AC_ARG_ENABLE(loader, AM_CONDITIONAL(LOADER, [test "${enable_loader}" = "yes"]) AS_IF([test "${enable_loader}" = "yes"], [ VLC_ADD_PLUGIN([dmo]) - VLC_ADD_CPPFLAGS([dmo quicktime realvideo],[-I\\\${top_srcdir}/modules/codec/loader]) - VLC_ADD_LIBS([dmo quicktime realvideo],[\\\${top_builddir}/modules/codec/loader/libloader.la]) - VLC_ADD_CPPFLAGS([realvideo], [-DLOADER]) + VLC_ADD_CPPFLAGS([dmo quicktime ],[-I\\\${top_srcdir}/modules/codec/loader]) + VLC_ADD_LIBS([dmo quicktime ],[\\\${top_builddir}/modules/codec/loader/libloader.la]) VLC_ADD_LIBS([dmo quicktime], [-lpthread]) ]) @@ -4107,11 +4175,6 @@ dnl Handle substvars that use $(top_srcdir) dnl CPPFLAGS="-I\$(top_srcdir)/include -I\$(top_builddir)/include ${CPPFLAGS}" -dnl -dnl Sort the modules list -dnl -PLUGINS=$( (for i in `echo $PLUGINS`; do echo $i; done)|sort|xargs ) - dnl dnl Configuration is finished dnl @@ -4251,7 +4314,7 @@ echo "#! $SHELL rm -f .error\$\$ ERROR=0 export PATH=\"$PATH\" LANG=C -($MAKE V=1 \$@ 2>&1 || touch .error\$\$)| `sed -ne "s/^top_srcdir *= *//p" < Makefile`/extras/buildsystem/make.pl +($MAKE V=1 \$@ 2>&1 || touch .error\$\$)| `sed -ne \"s/^top_srcdir *= *//p\" < Makefile`/extras/buildsystem/make.pl test -f .error\$\$ && ERROR=1 rm -f .error\$\$ exit \$ERROR" >compile