X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=configure.ac;h=58d5122d62eee8e58963735d44d34b35f3e141c9;hb=7a530806100fd5444b1b873fe8f300613ae5c585;hp=55a64ba5c6b31b1600c1946b4d70e79edd2044c1;hpb=ee397ea877856bb48d7498b5b857a4a715d905c6;p=vlc diff --git a/configure.ac b/configure.ac index 55a64ba5c6..58d5122d62 100644 --- a/configure.ac +++ b/configure.ac @@ -1,6 +1,6 @@ dnl Autoconf settings for vlc -AC_COPYRIGHT([Copyright 2002-2014 VLC authors and VideoLAN]) +AC_COPYRIGHT([Copyright 1999-2015 VLC authors and VideoLAN]) AC_INIT(vlc, 3.0.0-git) VERSION_MAJOR=3 @@ -14,7 +14,7 @@ AC_SUBST(PKGDIR) CONFIGURE_LINE="`echo "$0 $ac_configure_args" | sed -e 's/\\\/\\\\\\\/g'`" CODENAME="Vetinari" -COPYRIGHT_YEARS="1996-2014" +COPYRIGHT_YEARS="1996-2015" AC_CONFIG_SRCDIR(src/libvlc.c) AC_CONFIG_AUX_DIR(autotools) @@ -516,7 +516,6 @@ AS_IF([test "${SYS}" = "mingw32"],[ vlc_winstore_app=1 VLC_ADD_LIBS([libvlccore], [-lole32 -lruntimeobject]) ],[ - VLC_ADD_LIBS([win32text],[-lgdi32]) VLC_ADD_LIBS([libvlccore],[-lwinmm]) ]) ]) @@ -557,26 +556,16 @@ need_libc=false dnl Check for usual libc functions AC_CHECK_DECLS([nanosleep],,,[#include ]) AC_CHECK_FUNCS([daemon fcntl fstatvfs fork getenv getpwuid_r isatty lstat memalign mmap open_memstream openat pread posix_fadvise posix_madvise setlocale stricmp strnicmp strptime uselocale pthread_cond_timedwait_monotonic_np pthread_condattr_setclock]) -AC_REPLACE_FUNCS([atof atoll dirfd fdopendir flockfile fsync getdelim getpid gmtime_r lldiv localtime_r nrand48 poll posix_memalign rewind setenv strcasecmp strcasestr strdup strlcpy strndup strnlen strsep strtof strtok_r strtoll swab tdestroy strverscmp]) +AC_REPLACE_FUNCS([atof atoll dirfd fdopendir flockfile fsync getdelim getpid lldiv nrand48 poll posix_memalign rewind setenv strcasecmp strcasestr strdup strlcpy strndup strnlen strsep strtof strtok_r strtoll swab tdestroy strverscmp]) AC_CHECK_FUNCS(fdatasync,, [AC_DEFINE(fdatasync, fsync, [Alias fdatasync() to fsync() if missing.]) ]) dnl mingw64 implements those as static inline, not functions with C linkage -AC_LINK_IFELSE([ - AC_LANG_PROGRAM([#include ], [ - char *c; - if (asprintf(&c, "%s %d", "string", 1) == -1) - c = NULL; - ])],[AC_DEFINE([HAVE_ASPRINTF],[1],[Define to 1 if you have asprintf function])],[AC_LIBOBJ([asprintf])]) -AC_LINK_IFELSE([ - AC_LANG_PROGRAM([#include - #include ], [ - char *c; - va_list ap; - if (vasprintf(&c, "%s %d", ap) == -1) - c = NULL; - ])],[AC_DEFINE([HAVE_VASPRINTF],[1],[Define to 1 if you have asprintf function])],[AC_LIBOBJ([vasprintf])]) +VLC_REPLACE_DECL([asprintf], [#include ]) +VLC_REPLACE_DECL([vasprintf], [#include ]) +VLC_REPLACE_DECL([gmtime_r], [#include ]) +VLC_REPLACE_DECL([localtime_r], [#include ]) dnl C11 static_assert() AC_MSG_CHECKING([for static_assert in assert.h]) @@ -610,7 +599,6 @@ AC_CHECK_TYPES([struct pollfd],,, #if HAVE_POLL # include #elif defined (_WIN32) -# define _WIN32_WINNT 0x502 # include #endif ]) @@ -629,8 +617,8 @@ AC_SEARCH_LIBS(connect, [socket], [ ]) AC_SEARCH_LIBS([inet_pton], [nsl], [ - AS_IF([test "$ac_cv_search_getaddrinfo" != "none required"], [ - SOCKET_LIBS="$ac_cv_search_getaddrinfo $SOCKET_LIBS" + AS_IF([test "$ac_cv_search_inet_pton" != "none required"], [ + SOCKET_LIBS="$ac_cv_search_inet_pton $SOCKET_LIBS" ]) ],, [${SOCKET_LIBS}]) @@ -650,10 +638,6 @@ AC_LINK_IFELSE([ ])],[AC_DEFINE([HAVE_INET_PTON],[1],[Define to 1 if you have inet_pton function])],[AC_LIBOBJ([inet_pton])]) AC_CHECK_FUNCS([if_nameindex if_nametoindex]) VLC_RESTORE_FLAGS - -AS_IF([test -n "$SOCKET_LIBS"], [ - VLC_ADD_LIBS([access_rtmp access_output_shout sap stream_out_standard stream_out_rtp stream_out_raop stream_out_chromecast oldrc netsync ts remoteosd audiobargraph_a],[${SOCKET_LIBS}]) -]) AC_SUBST(SOCKET_LIBS) dnl Check for socklen_t @@ -701,7 +685,6 @@ 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 noise grain scene chorus_flanger freetype swscale postproc equalizer spatializer param_eq samplerate freetype mpc qt4 compressor headphone_channel_mixer normvol audiobargraph_a audiobargraph_v mono colorthres extract ball hotkeys mosaic gaussianblur x262 x26410b hqdn3d anaglyph oldrc ncurses oldmovie glspectrum smooth],[-lm]) LIBM="-lm" ], [ LIBM="" @@ -771,18 +754,26 @@ AS_IF([test "${SYS}" != "mingw32"], [ ]) AC_SUBST(LIBPTHREAD) +dnl dnl Check for headers +dnl + dnl POSIX -AC_CHECK_HEADERS([arpa/inet.h pthread.h search.h syslog.h sys/shm.h sys/socket.h]) +AC_CHECK_HEADERS([arpa/inet.h pthread.h search.h sys/shm.h sys/socket.h]) AC_CHECK_HEADERS([net/if.h], [], [], [ #include #include ]) +AC_CHECK_HEADER([syslog.h], [have_syslog="yes"], [have_syslog="no"]) +AM_CONDITIONAL([HAVE_SYSLOG], [test "$have_syslog" = "yes"]) + dnl BSD AC_CHECK_HEADERS([netinet/udplite.h sys/param.h sys/mount.h]) + dnl GNU/Linux AC_CHECK_HEADERS([getopt.h linux/dccp.h linux/magic.h mntent.h sys/eventfd.h]) + dnl MacOS AC_CHECK_HEADERS([xlocale.h]) @@ -861,6 +852,16 @@ AS_IF([test "${enable_dbus}" != "no"], [ ]) AM_CONDITIONAL([HAVE_DBUS], [test "${have_dbus}" = "yes"]) + +dnl Check for systemd +PKG_CHECK_MODULES([SYSTEMD], [libsystemd], [ + have_systemd="yes" +], [ + AC_MSG_WARN([${SYSTEMD_PKG_ERRORS}.]) +]) +AM_CONDITIONAL([HAVE_SYSTEMD], [test "${have_systemd}" = "yes"]) + + dnl Check for ntohl, etc. VLC_SAVE_FLAGS CFLAGS="${CFLAGS} -Wall -Werror" @@ -1720,7 +1721,7 @@ PKG_ENABLE_MODULES_VLC([DVDNAV], [], [dvdnav > 4.9.0], [DVD with navigation inpu dnl dnl Blu-ray Disc Support with libbluray dnl -PKG_ENABLE_MODULES_VLC([BLURAY], [libbluray], [libbluray >= 0.3.0], (libbluray for Blu-ray disc support ) ) +PKG_ENABLE_MODULES_VLC([BLURAY], [libbluray], [libbluray >= 0.5.0], (libbluray for Blu-ray disc support ) ) dnl dnl OpenCV wrapper and example filters @@ -1732,12 +1733,12 @@ dnl dnl libsmbclient plugin dnl PKG_ENABLE_MODULES_VLC([SMBCLIENT], [smb], [smbclient], (SMB/CIFS support), [auto]) -AS_IF([test "${SYS}" = "mingw32"], [ VLC_ADD_PLUGIN([access_smb]) ]) +AS_IF([test "${SYS}" = "mingw32"], [ VLC_ADD_PLUGIN([smb]) ]) dnl dnl liBDSM access module dnl -PKG_ENABLE_MODULES_VLC([DSM], [dsm], [libdsm >= 0.0.3], [libdsm SMB/CIFS access/sd module], [auto]) +PKG_ENABLE_MODULES_VLC([DSM], [dsm], [libdsm >= 0.0.4], [libdsm SMB/CIFS access/sd module], [auto]) dnl dnl sftp access support @@ -1962,7 +1963,7 @@ dnl dnl libdvbpsi check for ts mux/demux dnl have_dvbpsi="no" -PKG_WITH_MODULES([DVBPSI], [libdvbpsi], [have_dvbpsi="yes"]) +PKG_WITH_MODULES([DVBPSI], [libdvbpsi >= 1.0.0], [have_dvbpsi="yes"]) AM_CONDITIONAL(HAVE_DVBPSI, [test "${have_dvbpsi}" = "yes"]) @@ -2018,13 +2019,12 @@ AS_IF([test "${enable_sid}" != "no"], [ dnl dnl ogg demux plugin dnl -PKG_ENABLE_MODULES_VLC([OGG], [], [ogg >= 1.0], [Ogg demux support], [auto]) +PKG_ENABLE_MODULES_VLC([OGG], [mux_ogg], [ogg >= 1.0], [Ogg demux support], [auto]) PKG_CHECK_MODULES(LIBVORBIS, [vorbis >= 1.1], [ AC_DEFINE(HAVE_LIBVORBIS, 1, [Define to 1 if you have the libvorbis]) ],[true]) PKG_ENABLE_MODULES_VLC([OGG], [], [ogg >= 1.0], [Ogg demux support], [auto], [${LIBVORBIS_CFLAGS}], [${LIBVORBIS_LIBS}]) if test "${enable_sout}" != "no"; then - PKG_ENABLE_MODULES_VLC([MUX_OGG], [], [ogg >= 1.0], [Ogg mux support], [auto]) dnl Check for libshout PKG_ENABLE_MODULES_VLC([SHOUT], [access_output_shout], [shout >= 2.1], [libshout output plugin], [auto]) fi @@ -2507,8 +2507,6 @@ then CFLAGS="${CFLAGS} ${POSTPROC_CFLAGS}" AC_CHECK_HEADERS(postproc/postprocess.h) VLC_ADD_PLUGIN([postproc]) - VLC_ADD_LIBS([postproc],[$POSTPROC_LIBS $AVUTIL_LIBS]) - VLC_ADD_CFLAGS([postproc],[$POSTPROC_CFLAGS $AVUTIL_CFLAGS]) VLC_RESTORE_FLAGS ],[ AC_MSG_WARN([${POSTPROC_PKG_ERRORS}.]) @@ -2714,6 +2712,17 @@ AC_CHECK_HEADERS(jpeglib.h, [ ]) ]) +dnl +dnl BPG decoder module +dnl +AC_ARG_ENABLE(bpg, + [ --enable-bpg BPG support (default disabled)]) +AS_IF([test "${enable_bpg}" != "no"], [ +AC_CHECK_HEADERS(libbpg.h, [ + VLC_ADD_PLUGIN([bpg]) + ]) +]) + dnl dnl H262 encoder plugin (lib262) dnl @@ -2956,10 +2965,6 @@ AC_ARG_ENABLE(xvideo, [ --enable-xvideo XVideo support (default enabled)],, [ enable_xvideo="$enable_xcb" ]) -AC_ARG_ENABLE(glx, - [ --enable-glx OpenGL support through GLX (default enabled)],, [ - enable_glx="$enable_xcb" -]) have_xcb="no" have_xcb_keysyms="no" @@ -3021,9 +3026,9 @@ AS_IF([test "${have_vdpau}" = "yes" -a "${have_avcodec}" = "yes"], [ AC_MSG_NOTICE([VDPAU decoding acceleration activated]) ], [ AS_IF([test -n "${enable_vdpau}"], [ - AC_MSG_ERROR([libavutil >= 52.4.0 and libavcodec >= 55.26.0 are required for VDPAU decoding.]) + AC_MSG_ERROR([libav libavutil >= 52.4.0 and libavcodec >= 55.26.0 are required for VDPAU decoding.]) ], [ - AC_MSG_WARN([libavutil >= 52.4.0 and libavcodec >= 55.26.0 are required for VDPAU decoding.]) + AC_MSG_WARN([libav libavutil >= 52.4.0 and libavcodec >= 55.26.0 are required for VDPAU decoding.]) ]) ]) ]) @@ -3130,49 +3135,44 @@ AC_ARG_WITH([default-monospace-font-family], [AC_DEFINE_UNQUOTED([DEFAULT_MONOSPACE_FAMILY], "$withval", [Default monospace font family])]) +have_freetype="no" +have_fontconfig="no" +have_fribidi="no" + if test "${enable_freetype}" != "no"; then PKG_CHECK_MODULES(FREETYPE, freetype2, [ - have_freetype=yes - VLC_ADD_PLUGIN([freetype]) - VLC_ADD_CPPFLAGS([freetype skins2],[${FREETYPE_CFLAGS}]) - if test "${SYS}" = "mingw32"; then - VLC_ADD_LIBS([freetype],[-liconv -lz]) - fi - VLC_ADD_LIBS([freetype skins2],[${FREETYPE_LIBS}]) - - AC_CHECK_HEADERS(Carbon/Carbon.h, - [VLC_ADD_LIBS([freetype],[-Wl,-framework,Carbon])]) + have_freetype="yes" + VLC_ADD_CPPFLAGS([skins2],[${FREETYPE_CFLAGS}]) + VLC_ADD_LIBS([skins2],[${FREETYPE_LIBS}]) dnl fontconfig support if test "${SYS}" != "mingw32"; then if test "${enable_fontconfig}" != "no"; then AC_CHECK_HEADERS(fontconfig/fontconfig.h, [ - VLC_ADD_CPPFLAGS([freetype],[-DHAVE_FONTCONFIG]) - VLC_ADD_LIBS([freetype],[-lfontconfig]) + have_fontconfig="yes" ],[AC_MSG_WARN([library fontconfig not found. Styles will be disabled in freetype])]) fi - else - AS_IF([test "$vlc_winstore_app" != "1"],[ - VLC_ADD_LIBS([freetype],[-lgdi32]) - ]) fi dnl fribidi support if test "${enable_fribidi}" != "no"; then PKG_CHECK_MODULES(FRIBIDI, fribidi, [ - VLC_ADD_CPPFLAGS([freetype skins2], [${FRIBIDI_CFLAGS} -DHAVE_FRIBIDI]) - VLC_ADD_LIBS([freetype skins2], [${FRIBIDI_LIBS}]) + have_fribidi="yes" + VLC_ADD_CPPFLAGS([skins2], [${FRIBIDI_CFLAGS} -DHAVE_FRIBIDI]) + VLC_ADD_LIBS([skins2], [${FRIBIDI_LIBS}]) ],[AC_MSG_WARN([${FRIBIDI_PKG_ERRORS}. Bidirectional support will be disabled in FreeType.])]) fi - ],[ - have_freetype=no AS_IF([test -n "${enable_freetype}"],[ AC_MSG_ERROR([${FREETYPE_PKG_ERRORS}. Install FreeType2 development or configure with --disable-freetype.]) ]) ]) fi +AM_CONDITIONAL([HAVE_FREETYPE], [test "${have_freetype}" = "yes"]) +AM_CONDITIONAL([HAVE_FONTCONFIG], [test "${have_fontconfig}" = "yes"]) +AM_CONDITIONAL([HAVE_FRIBIDI], [test "${have_fribidi}" = "yes"]) + dnl dnl QuartzText vout module (iOS/Mac OS) @@ -3183,7 +3183,6 @@ if test "x${enable_macosx_quartztext}" != "xno" && (test "${SYS}" = "darwin" || test "${enable_macosx_quartztext}" = "yes") then VLC_ADD_PLUGIN([quartztext]) - VLC_ADD_LIBS([quartztext],[-Wl,-framework,ApplicationServices]) fi dnl @@ -3232,7 +3231,12 @@ AS_IF([test "${enable_directx}" != "no"], [ #include ]) - dnl Direct3D + dnl Direct3D11 + AC_CHECK_HEADERS(d3d11.h, [ + VLC_ADD_PLUGIN([direct3d11]) + ]) + + dnl Direct3D9 AC_CHECK_HEADERS(d3d9.h, [ VLC_ADD_PLUGIN([direct3d9]) ]) @@ -3366,7 +3370,7 @@ AC_ARG_ENABLE(mmal, [Multi-Media Abstraction Layer (MMAL) hardware plugin (default enable)])) if test "${enable_mmal}" != "no"; then VLC_SAVE_FLAGS - LDFLAGS="${LDFLAGS} -L/opt/vc/lib" + LDFLAGS="${LDFLAGS} -L/opt/vc/lib -lvchostif" CPPFLAGS="${CPPFLAGS} -I/opt/vc/include -I/opt/vc/include/interface/vcos/pthreads -I/opt/vc/include/interface/vmcs_host/linux" AC_CHECK_HEADERS(interface/mmal/mmal.h, [ AC_CHECK_LIB(bcm_host, vc_tv_unregister_callback_full, [ @@ -3374,7 +3378,7 @@ if test "${enable_mmal}" != "no"; then VLC_ADD_PLUGIN([mmal]) VLC_ADD_LDFLAGS([mmal],[ -L/opt/vc/lib ]) VLC_ADD_CFLAGS([mmal],[ -I/opt/vc/include -I/opt/vc/include/interface/vcos/pthreads -I/opt/vc/include/interface/vmcs_host/linux ]) - VLC_ADD_LIBS([mmal],[ -lbcm_host -lmmal ]) ], [ + VLC_ADD_LIBS([mmal],[ -lbcm_host -lmmal -lvchostif ]) ], [ AS_IF([test "${enable_mmal}" = "yes"], [ AC_MSG_ERROR([Cannot find bcm library...]) ], [ AC_MSG_WARN([Cannot find bcm library...]) ]) @@ -3573,9 +3577,7 @@ dnl chromaprint audio track fingerprinter dnl m4_pushdef([libchromaprint_version], 0.6.0) PKG_WITH_MODULES([CHROMAPRINT],[libchromaprint >= libchromaprint_version], - VLC_ADD_PLUGIN([stream_out_chromaprint]) - VLC_ADD_CFLAGS([stream_out_chromaprint],[${CHROMAPRINT_CFLAGS}] [-I./webservices -I../stream_out]) - VLC_ADD_LIBS([stream_out_chromaprint],[${CHROMAPRINT_LIBS}]), + VLC_ADD_PLUGIN([stream_out_chromaprint]), AS_IF([test "${enable_chromaprint}" = "yes"], [AC_MSG_ERROR(Library [libchromaprint >= libchromaprint_version] needed for [chromaprint] was not found)], [AC_MSG_WARN(Library [libchromaprint >= libchromaprint_version] needed for [chromaprint] was not found)] @@ -3591,9 +3593,6 @@ AC_ARG_VAR(PROTOC, [protobuf compiler]) AC_PATH_PROGS(PROTOC, protoc, no) PKG_WITH_MODULES([CHROMECAST],[protobuf-lite >= protobuf_lite_version], [ AS_IF([test "x${PROTOC}" != "xno"], [ - VLC_ADD_PLUGIN([stream_out_chromecast]) - VLC_ADD_CXXFLAGS([stream_out_chromecast],[${CHROMECAST_CFLAGS}] [-I./chromecast]) - VLC_ADD_LIBS([stream_out_chromecast],[${CHROMECAST_LIBS}]) build_chromecast="yes" ], [ AC_MSG_ERROR(protoc compiler needed for [chromecast] was not found) @@ -3788,11 +3787,10 @@ dnl ncurses module dnl AC_ARG_ENABLE(ncurses, [AS_HELP_STRING([--disable-ncurses],[ncurses text-based interface (default auto)])]) +have_ncurses="no" AS_IF([test "${enable_ncurses}" != "no"] ,[ PKG_CHECK_MODULES([NCURSES], [ncursesw], [ - VLC_ADD_PLUGIN([ncurses]) - VLC_ADD_CFLAGS([ncurses],[${NCURSES_CFLAGS}]) - VLC_ADD_LIBS([ncurses],[${NCURSES_LIBS} ${LIBPTHREAD}]) + have_ncurses="yes" ALIASES="${ALIASES} nvlc" ], [ AS_IF([test -n "${enable_ncurses}"], [ @@ -3800,21 +3798,22 @@ AS_IF([test "${enable_ncurses}" != "no"] ,[ ]) ]) ]) +AM_CONDITIONAL([HAVE_NCURSES], [test "${have_ncurses}" = "yes"]) dnl dnl Lirc plugin dnl AC_ARG_ENABLE(lirc, [ --enable-lirc lirc support (default disabled)]) -if test "${enable_lirc}" = "yes" -then - AC_CHECK_HEADER(lirc/lirc_client.h, AC_CHECK_LIB(lirc_client, lirc_init, have_lirc="true", have_lirc="false"),have_lirc="false") - if test "${have_lirc}" = "true" - then - VLC_ADD_PLUGIN([lirc]) - VLC_ADD_LIBS([lirc],[-llirc_client]) - fi -fi +have_lirc="no" +AS_IF([test "${enable_lirc}" = "yes"], [ + AC_CHECK_HEADER(lirc/lirc_client.h, [ + AC_CHECK_LIB(lirc_client, lirc_init, [ + have_lirc="true" + ]) + ]) +]) +AM_CONDITIONAL([HAVE_LIRC], [test "${have_lirc}" = "yes"]) EXTEND_HELP_STRING([Visualisations and Video filter plugins:]) dnl @@ -3851,8 +3850,6 @@ 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}.]) ]) @@ -3866,23 +3863,10 @@ AS_HELP_STRING([--disable-atmo],[AtmoLight (homemade Philips Ambilight clone) (default enabled)]),, [enable_atmo="yes"]) AS_IF([test "${enable_atmo}" != no], [ AS_IF([test "${SYS}" = "mingw32" -o "${SYS}" = "linux"], [ - AC_LANG_PUSH(C++) VLC_ADD_PLUGIN([atmo]) - AC_LANG_POP(C++) ]) ]) -dnl -dnl glSpectrum -dnl -AC_ARG_ENABLE(glspectrum, - [ --enable-glspectrum 3D OpenGL spectrum visualization (default auto)]) -if test "${enable_glspectrum}" != "no" && test "${have_gl}" = "yes" -then - VLC_ADD_PLUGIN([glspectrum]) - VLC_ADD_LIBS([glspectrum],[$GL_LIBS]) -fi - EXTEND_HELP_STRING([Service Discovery plugins:]) dnl dnl Bonjour services discovery @@ -4115,22 +4099,12 @@ AC_CONFIG_FILES([ lib/Makefile bin/Makefile test/Makefile - modules/access_output/Makefile - modules/audio_filter/Makefile - modules/control/Makefile - modules/gui/Makefile modules/gui/ios_dialog_provider/Makefile modules/gui/macosx/Makefile modules/gui/minimal_macosx/Makefile modules/gui/macosx_dialog_provider/Makefile modules/gui/qt4/Makefile modules/gui/skins2/Makefile - modules/mux/Makefile - modules/packetizer/Makefile - modules/stream_out/Makefile - modules/text_renderer/Makefile - modules/video_filter/Makefile - modules/visualization/Makefile modules/hw/mmal/Makefile ])