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
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)
AM_INIT_AUTOMAKE(tar-ustar color-tests foreign)
AC_CONFIG_HEADERS([config.h])
-# Disable with "./configure --disable-silent-rules" or "make V=1"
AM_SILENT_RULES([yes])
-
-dnl Too many people are not aware of maintainer mode:
-dnl If you want to use it, you definitely know what you are doing, so
-dnl you can specify "--disable-maintainer-mode". But if you want the default
-dnl automake behavior, you've likely never heard of maintainer mode, so we
-dnl can't expect you to enable it manually.
-AS_IF([test "x${enable_maintainer_mode}" != "xno"],
- [enable_maintainer_mode="yes"])
-AM_MAINTAINER_MODE
+AM_MAINTAINER_MODE([enable])
dnl
dnl Directories
AC_ARG_VAR([DESKTOP_FILE_VALIDATE], [Validator for desktop entry files])
AC_CHECK_PROGS(DESKTOP_FILE_VALIDATE, [${DESKTOP_FILE_VALIDATE} desktop-file-validate], :)
-AC_CHECK_PROGS(YASM, yasm)
+AC_PATH_PROG(YASM, yasm)
dnl Check for compiler properties
AC_C_CONST
# DEP, ASLR, NO SEH
LDFLAGS="${LDFLAGS} -Wl,--nxcompat -Wl,--no-seh -Wl,--dynamicbase"
- VLC_ADD_LIBS([libvlccore],[-lwinmm])
- VLC_ADD_LDFLAGS([vlc],[-mwindows])
- VLC_ADD_LIBS([win32text],[-lgdi32])
AC_CHECK_PROGS(U2D, [unix2dos todos], unix2dos)
ac_default_prefix="`pwd`/_win32"
DESTDIR="`pwd`/_win32/"
*os2*)
SYS=os2
LDFLAGS="${LDFLAGS} -Zomf -Zbin-files -Zargs-wild -Zhigh-mem"
+ AC_LIBOBJ([freeaddrinfo])
;;
*)
SYS="${host_os}"
AC_SUBST(CONTRIB_DIR)
dnl Add extras/tools to the PATH
-TOOLS_DIR="${srcdir}/extras/tools/build"
+TOOLS_DIR="${srcdir}/extras/tools/build/bin"
AS_IF([test -d "${TOOLS_DIR}"], [
TOOLS_DIR=`cd "${TOOLS_DIR}" && pwd`
export PATH="${TOOLS_DIR}":$PATH
dnl
dnl checks for mingw
AS_IF([test "${SYS}" = "mingw32"], [
+
dnl Check for broken versions of mingw-runtime compatability library
AC_MSG_CHECKING(for broken mingw-runtime)
AC_PREPROC_IFELSE([AC_LANG_SOURCE([
AC_MSG_RESULT([present])
AC_MSG_ERROR([LibVLC requires mingw-runtime version 3.15 or higher, or mingw-w64 version 3.0 or higher!])
])
+
dnl force use of mingw provided c99 *printf over msvcrt
CPPFLAGS="${CPPFLAGS} -D__USE_MINGW_ANSI_STDIO=1"
-dnl Check for the need to include the mingwex lib for mingw32
+ dnl Add WinMainCRTStartup entry point to show it's a WinMain application
+ VLC_ADD_LDFLAGS([vlc],[-mwindows])
+
+ dnl Check for the need to include the mingwex lib for mingw32
VLC_SAVE_FLAGS
AC_CHECK_LIB(mingwex,opendir,
AC_CHECK_LIB(mingw32,opendir,,
)
VLC_RESTORE_FLAGS
-dnl Check for fnative-struct or mms-bitfields support for mingw32
+ dnl Check for fnative-struct or mms-bitfields support for mingw32
VLC_SAVE_FLAGS
CFLAGS="${CFLAGS} -mms-bitfields"
CXXFLAGS="${CXXFLAGS} -mms-bitfields"
[Build targetted for Windows Store apps (default disabled)]))
vlc_winstore_app=0
-AS_IF([test "${SYS}" = "mingw32" -a "${enable_winstore_app}" = "yes"], [
+AS_IF([test "${SYS}" = "mingw32"],[
+ AS_IF([test "${enable_winstore_app}" = "yes"], [
vlc_winstore_app=1
- VLC_ADD_LIBS([libvlccore], [-lole32 -lruntimeobject])
+ VLC_ADD_LIBS([libvlccore], [-lole32 -lruntimeobject])
+ ],[
+ VLC_ADD_LIBS([libvlccore],[-lwinmm])
])
+ ])
AC_DEFINE_UNQUOTED(VLC_WINSTORE_APP, ${vlc_winstore_app}, [Define to 1 if you want to build for Windows Store apps])
AM_CONDITIONAL([HAVE_WINSTORE], [test "$vlc_winstore_app" = "1"])
dnl Check for usual libc functions
AC_CHECK_DECLS([nanosleep],,,[#include <time.h>])
-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 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_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 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 <stdio.h>], [
- 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 <stdio.h>
- #include <stdarg.h>], [
- 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 <stdio.h>])
+VLC_REPLACE_DECL([vasprintf], [#include <stdio.h>])
+VLC_REPLACE_DECL([gmtime_r], [#include <time.h>])
+VLC_REPLACE_DECL([localtime_r], [#include <time.h>])
dnl C11 static_assert()
AC_MSG_CHECKING([for static_assert in assert.h])
])
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}])
])],[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
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],[-lm])
LIBM="-lm"
], [
LIBM=""
])
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 <sys/types.h>
#include <sys/socket.h>
])
+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])
])
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"
dnl Check for various optimization flags
AS_IF([test "${enable_optimizations}" != "no"], [
- dnl -O4 and -O3 only in production builds
+ dnl -O3 only in production builds
AS_IF([test "${enable_debug}" = "no"], [
VLC_SAVE_FLAGS
- CFLAGS="${CFLAGS} -O4"
- CXXFLAGS="${CXXFLAGS} -O4"
- OBJCFLAGS="${OBJCFLAGS} -O4"
- AC_CACHE_CHECK([if $CC accepts -O4], [ac_cv_c_o4], [
+ CFLAGS="${CFLAGS} -O3"
+ CXXFLAGS="${CXXFLAGS} -O3"
+ OBJCFLAGS="${OBJCFLAGS} -O3"
+ AC_CACHE_CHECK([if $CC accepts -O3], [ac_cv_c_o3], [
AC_COMPILE_IFELSE([AC_LANG_PROGRAM()], [
- ac_cv_c_o4=yes
+ ac_cv_c_o3=yes
], [
- ac_cv_c_o4=no
- ])
- ])
- AS_IF([test "${ac_cv_c_o4}" = "no"], [
- VLC_RESTORE_FLAGS
- CFLAGS="${CFLAGS} -O3"
- CXXFLAGS="${CXXFLAGS} -O3"
- OBJCFLAGS="${OBJCFLAGS} -O3"
- AC_CACHE_CHECK([if $CC accepts -O3], [ac_cv_c_o3], [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM()], [
- ac_cv_c_o3=yes
- ], [
- ac_cv_c_o3=no
- ])
+ ac_cv_c_o3=no
])
- AS_IF([test "${ac_cv_c_o3}" = "no"], [VLC_RESTORE_FLAGS])
])
+ AS_IF([test "${ac_cv_c_o3}" = "no"], [VLC_RESTORE_FLAGS])
])
dnl Check for -ffast-math
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
+# ifndef _MSC_VER
+# pragma STDC FENV_ACCESS OFF
+# pragma STDC FP_CONTRACT ON
+# else
+# pragma fenv_access(off)
+# pragma fp_contract(on)
+# endif
#endif
])
dnl
dnl libarchive access module
dnl
-PKG_ENABLE_MODULES_VLC([ARCHIVE], [access_archive], [libarchive >= 2.8.5], (libarchive support), [auto])
+PKG_ENABLE_MODULES_VLC([ARCHIVE], [access_archive], [libarchive >= 3.1.0], (libarchive support), [auto])
dnl
dnl live555 input
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
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], [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
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"])
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
dnl
dnl mad plugin
dnl
+have_mad="no"
+MAD_CFLAGS=""
+MAD_LIBS=""
+
+AC_ARG_WITH(mad, [ --with-mad=PATH path to libmad], [
+ enable_mad="yes"
+], [
+ with_mad="no"
+])
+AS_IF([test "${with_mad}" != "no"], [
+ MAD_CFLAGS="-I${with_mad}/include"
+ MAD_LIBS="-L${with_mad}/lib"
+])
+
AC_ARG_ENABLE(mad,
[ --enable-mad libmad module (default enabled)])
-if test "${enable_mad}" != "no"
-then
- AC_ARG_WITH(mad,
- [ --with-mad=PATH path to libmad],[],[])
- if test "${with_mad}" != "no" -a -n "${with_mad}"
- then
- VLC_ADD_CPPFLAGS([mpgatofixed32],[-I${with_mad}/include])
- VLC_ADD_LIBS([mpgatofixed32],[-L${with_mad}/lib])
- fi
-
- AC_ARG_WITH(mad-tree,
- [ --with-mad-tree=PATH mad tree for static linking],[],[])
- if test "${with_mad_tree}" != "no" -a -n "${with_mad_tree}"
- then
- real_mad_tree="`cd ${with_mad_tree} 2>/dev/null && pwd`"
- if test -z "${real_mad_tree}"
- then
- dnl The given directory can't be found
- AC_MSG_RESULT(no)
- AC_MSG_ERROR([${with_mad_tree} directory does not exist])
- fi
- dnl Use a custom libmad
- AC_MSG_CHECKING(for mad.h in ${real_mad_tree})
- if test -f ${real_mad_tree}/mad.h
- then
- AC_MSG_RESULT(yes)
- VLC_ADD_CPPFLAGS([mpgatofixed32],[-I${real_mad_tree}])
- VLC_ADD_LIBS([mpgatofixed32],[-L${real_mad_tree}/.libs])
- VLC_SAVE_FLAGS
- LDFLAGS="${LDFLAGS} ${LIBS_mpgatofixed32}"
- AC_CHECK_LIB(mad, mad_bit_init, [
- VLC_ADD_PLUGIN([mpgatofixed32])
- VLC_ADD_LIBS([mpgatofixed32],[-lmad])
- ],[ AC_MSG_ERROR([the specified tree has not been compiled ])
- ],[])
- VLC_RESTORE_FLAGS
- else
- AC_MSG_RESULT(no)
- AC_MSG_ERROR([the specified tree does not have mad.h])
- fi
- else
- VLC_SAVE_FLAGS
- CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_mpgatofixed32}"
- LDFLAGS="${LDFLAGS} ${LIBS_mpgatofixed32}"
- AC_CHECK_HEADERS(mad.h, ,
- [ AC_MSG_ERROR([Could not find libmad on your system: you may get it from http://www.underbit.com/products/mad/. Alternatively you can use --disable-mad to disable the mad plugin.]) ])
+AS_IF([test "${enable_mad}" != "no"], [
+ VLC_SAVE_FLAGS
+ CPPFLAGS="${CPPFLAGS} ${MAD_CFLAGS}"
+ LDFLAGS="${LDFLAGS} ${MAD_LIBS}"
+ AC_CHECK_HEADERS(mad.h, [
AC_CHECK_LIB(mad, mad_bit_init, [
- VLC_ADD_PLUGIN([mpgatofixed32])
- VLC_ADD_LIBS([mpgatofixed32],[-lmad])],
- [ AC_MSG_ERROR([Cannot find libmad library...]) ])
- VLC_RESTORE_FLAGS
- fi
-fi
+ have_mad="yes"
+ MAD_LIBS="${MAD_LIBS} -lmad"
+ ])
+ ])
+ VLC_RESTORE_FLAGS
+ AS_IF([test -n "$enable_mad" -a "${have_mad}" = "no"], [
+ AC_MSG_ERROR([Could not find libmad. Install it or pass --disable-mad to disable it.])
+ ])
+])
+AC_SUBST(MAD_CFLAGS)
+AC_SUBST(MAD_LIBS)
+AM_CONDITIONAL([HAVE_MAD], [test "${have_mad}" = "yes"])
+
+dnl mpg123 plugin
+dnl
+dnl
+PKG_ENABLE_MODULES_VLC([MPG123], [mpg123], [libmpg123], [libmpg123 decoder support], [auto])
AC_ARG_ENABLE(merge-ffmpeg,
CPPFLAGS="${CPPFLAGS} ${SWSCALE_CFLAGS}"
CFLAGS="${CFLAGS} ${SWSCALE_CFLAGS}"
AC_CHECK_HEADERS(libswscale/swscale.h)
+ AC_CHECK_HEADERS(libavutil/avutil.h)
VLC_ADD_PLUGIN([swscale])
VLC_ADD_LIBS([swscale],[$SWSCALE_LIBS])
VLC_ADD_CFLAGS([swscale],[$SWSCALE_CFLAGS])
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}.])
dnl
AC_ARG_ENABLE(faad,
[ --enable-faad faad codec (default auto)])
-if test "${enable_faad}" != "no"; then
- AC_ARG_WITH(faad-tree, [ --with-faad-tree=PATH faad tree for static linking])
- if test -n "${with_faad_tree}"; then
- AC_MSG_CHECKING(for libfaad.a in ${with_faad_tree})
- real_faad_tree="`cd ${with_faad_tree} 2>/dev/null && pwd`"
- if test -z "${real_faad_tree}"; then
- dnl The given directory can't be found
- AC_MSG_RESULT(no)
- AC_MSG_ERROR([cannot cd to ${with_faad_tree}])
- fi
- if test -f "${real_faad_tree}/libfaad/.libs/libfaad.a"; then
- dnl Use the custom faad
- AC_MSG_RESULT(${real_faad_tree}/libfaad/.libs/libfaad.a)
+have_faad="no"
+AS_IF([test "${enable_faad}" != "no"], [
+ AC_CHECK_HEADERS([faad.h], [
+ AC_CHECK_LIB(faad, faacDecOpen, [have_faad="yes"],, [$LIBM])
+ AC_CHECK_LIB(faad, NeAACDecOpen, [have_faad="yes"],, [$LIBM])
+
+ AS_IF([test "${have_faad}" = "yes"], [
VLC_ADD_PLUGIN([faad])
- VLC_ADD_LIBS([faad],[${real_faad_tree}/libfaad/.libs/libfaad.a])
- VLC_ADD_CPPFLAGS([faad],[-I${real_faad_tree}/include])
- else
- dnl The given libfaad wasn't built
- AC_MSG_RESULT(no)
- AC_MSG_ERROR([cannot find ${real_faad_tree}/libfaad/.libs/libfaad.a, make sure you compiled libfaad in ${with_faad_tree}])
- fi
- else
- VLC_SAVE_FLAGS
- CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_faad}"
- LDFLAGS="${LDFLAGS} ${LIBS_faad}"
- AC_CHECK_HEADERS(faad.h,
- [ AC_CHECK_LIB(faad, faacDecOpen, [
- VLC_ADD_PLUGIN([faad])
- VLC_ADD_LIBS([faad],[-lfaad]) ], [
- AC_CHECK_LIB(faad, NeAACDecOpen, [
- VLC_ADD_PLUGIN([faad])
- VLC_ADD_LIBS([faad],[-lfaad]) ], [
- AS_IF([test "${enable_faad}" = "yes"],
- [ AC_MSG_ERROR([Cannot find libfaad library...]) ],
- [ AC_MSG_WARN([Cannot find libfaad library...]) ]) ]) ])
- ] , [ AS_IF([test "${enable_faad}" = "yes"],
- [ AC_MSG_ERROR([Cannot find development headers for libfaad...]) ],
- [ AC_MSG_WARN([Cannot find development headers for libfaad...]) ]) ])
- VLC_RESTORE_FLAGS
- fi
-fi
+ VLC_ADD_LIBS([faad],[-lfaad])
+ ], [
+ AS_IF([test "${enable_faad}" = "yes"], [
+ AC_MSG_ERROR([cannot find FAAD library])
+ ], [
+ AC_MSG_WARN([cannot find FAAD library])
+ ])
+ ])
+ ])
+])
dnl
dnl libvpx decoder plugin
then
AC_ARG_WITH(a52,
[ --with-a52=PATH a52 headers and libraries])
- AC_ARG_WITH(a52-tree,
- [ --with-a52-tree=PATH a52dec tree for static linking ],[],[])
- if test "${with_a52_tree}" != "no" -a -n "${with_a52_tree}"
- then
- real_a52_tree="`cd ${with_a52_tree} 2>/dev/null && pwd`"
- if test -z "${real_a52_tree}"
- then
- dnl The given directory can't be found
- AC_MSG_RESULT(no)
- AC_MSG_ERROR([${with_a52_tree} directory does not exist])
- fi
- dnl Use a custom a52dec
- AC_MSG_CHECKING(for a52.h in ${real_a52_tree}/include)
- if test -f ${real_a52_tree}/include/a52.h
- then
- AC_MSG_RESULT(yes)
- VLC_ADD_CPPFLAGS([a52tofloat32],[-I${real_a52_tree}])
- VLC_ADD_LIBS([a52tofloat32],[-L${real_a52_tree}/liba52/.libs])
- VLC_SAVE_FLAGS
- LDFLAGS="${LDFLAGS} ${LIBS_a52tofloat32}"
- AC_CHECK_LIB(a52, a52_free, [
- VLC_ADD_PLUGIN([a52tofloat32])
- VLC_ADD_CPPFLAGS([a52tofloat32],[-DUSE_A52DEC_TREE])
- VLC_ADD_LIBS([a52tofloat32],[-la52])
- ],[
- if test -f ${real_a52_tree}/liba52/.libs/liba52.a
- then
- AC_MSG_ERROR([make sure you have at least a52dec-0.7.3 ($real_a52_tree)])
- else
- AC_MSG_ERROR([the specified tree has not been compiled])
- fi
- ])
- else
- AC_MSG_RESULT(no)
- AC_MSG_ERROR([the specified tree does not have a52.h])
- fi
- else
if test -z "${with_a52}"
then
LDFLAGS_test=""
AC_MSG_ERROR([Could not find liba52 on your system: you may get it from http://liba52.sf.net/. Alternatively you can use --disable-a52 to disable the a52 plugin.])
])
VLC_RESTORE_FLAGS
- fi
fi
dnl
])
])
+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
AC_ARG_ENABLE(x262,
[ --enable-x262 H262 encoding support with static libx262 (default disabled)])
if test "${enable_x262}" != "no"; then
-AC_ARG_WITH(x262-tree,
- [ --with-x262-tree=PATH H262 encoding module with libx262 (static linking)],[],[])
- if test "${with_x262_tree}" != "no" -a -n "${with_x262_tree}"
- then
- real_x262_tree="̧`cd ${with_x262_tree} 2>/dev/null && pwd`"
- if test -z "${real_x262_tree}"
- then
- AC_MSG_RESULT(no)
- AC_MSG_ERROR([${with_x262_tree} directory does not exist])
- fi
- AC_MSG_CHECKING(for x262.h in ${real_x262_tree})
- if test -f ${with_x262_tree}/x262_config.h
- then
- VLC_ADD_PLUGIN([x262])
- VLC_ADD_CFLAGS([x262],[-I${with_x262_tree}])
- VLC_ADD_LIBS([x262],[-L${with_x262_tree} -lm -lpthread -lx262])
- else
- AC_MSG_RESULT(no)
- AC_MSG_ERROR([${with_x262_tree} doesnt have x262_config.h])
- fi
- else
PKG_CHECK_MODULES(X262, x262, [
VLC_ADD_PLUGIN([x262])
VLC_ADD_LDFLAGS([x262],[${X262_LIBS}])
AC_MSG_ERROR([x262 module doesn't work without staticly compiled libx262.a])
fi
])
- fi
fi
dnl x265 encoder
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_LIBS([x26410b],[${X26410B_LIBS}])
AC_MSG_ERROR([x26410b module doesn't work without staticly compiled libx264.a])
fi
])
- fi
fi
AC_ARG_ENABLE(x264,
[ --enable-x264 H264 encoding support with libx264 (default enabled)])
if test "${enable_x264}" != "no"; then
- AC_ARG_WITH(x264-tree,
- [ --with-x264-tree=PATH x264 tree for static linking ],[],[])
- if test "${with_x264_tree}" != "no" -a -n "${with_x264_tree}"
- then
- real_x264_tree="`cd ${with_x264_tree} 2>/dev/null && pwd`"
- if test -z "${real_x264_tree}"
- then
- dnl The given directory can't be found
- AC_MSG_RESULT(no)
- AC_MSG_ERROR([${with_x264_tree} directory does not exist])
- fi
- dnl Use a custom libx264
- AC_MSG_CHECKING(for x264.h in ${real_x264_tree})
- if test -f ${real_x264_tree}/x264.h
- then
- AC_MSG_RESULT(yes)
- VLC_ADD_CPPFLAGS([x264],[-I${real_x264_tree}])
- VLC_ADD_LIBS([x264],[-L${real_x264_tree}])
- PKG_CHECK_MODULES(X264,x264, [
- VLC_ADD_PLUGIN([x264])
- VLC_ADD_LIBS([x264],[${X264_LIBS}])
- VLC_ADD_CFLAGS([x264],[${X264_CFLAGS}])
- if echo ${X264_LIBS} |grep -q 'pthreadGC2'; then
- VLC_ADD_CFLAGS([x264], [-DPTW32_STATIC_LIB])
- fi
- ],[
- AC_MSG_ERROR([the specified tree has not been compiled])
- ])
- else
- AC_MSG_RESULT(no)
- AC_MSG_ERROR([the specified tree does not have x264.h])
- fi
- else
PKG_CHECK_MODULES(X264,x264 >= 0.86, [
VLC_ADD_PLUGIN([x264])
VLC_ADD_LIBS([x264],[${X264_LIBS}])
AC_MSG_ERROR([${X264_PKG_ERRORS}: you may get it from http://www.videolan.org/x264.html])
fi
])
- fi
fi
dnl
AC_MSG_WARN(Library [aribb24] needed for [aribsub] was not found)
have_aribb24="no"
])
- AM_CONDITIONAL([HAVE_ARIBB24], [test "${have_aribb24}" = "yes"])
])
+AM_CONDITIONAL([HAVE_ARIBB24], [test x"${have_aribb24}" = x"yes"])
+
+dnl
+dnl ARIB B25
+dnl
+PKG_ENABLE_MODULES_VLC([ARIBB25], [aribcam], [aribb25 >= 0.2.6], [ARIB STD-B25], [auto])
dnl
dnl kate decoder plugin
[ --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"
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.])
])
])
])
[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
- 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)
(test "${SYS}" = "darwin" || test "${enable_macosx_quartztext}" = "yes")
then
VLC_ADD_PLUGIN([quartztext])
- VLC_ADD_LIBS([quartztext],[-Wl,-framework,ApplicationServices])
fi
dnl
[ --enable-android-surface Android Surface video output module (default disabled)])
if test "${enable_android_surface}" = "yes"; then
VLC_ADD_PLUGIN([android_surface])
- VLC_ADD_PLUGIN([android_opaque])
+ VLC_ADD_PLUGIN([android_window])
fi
dnl
#include <GL/gl.h>
])
- dnl Direct3D
+ dnl Direct3D11
+ AC_CHECK_HEADERS(d3d11.h, [
+ VLC_ADD_PLUGIN([direct3d11])
+ ])
+
+ dnl Direct3D9
AC_CHECK_HEADERS(d3d9.h, [
- VLC_ADD_PLUGIN([direct3d])
+ VLC_ADD_PLUGIN([direct3d9])
])
dnl Direct2D
[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, [
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...]) ])
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)]
dnl Chromecast streaming support
dnl
m4_pushdef([protobuf_lite_version], 2.5.0)
+AC_ARG_VAR(PROTOC, [protobuf compiler])
+AC_PATH_PROGS(PROTOC, protoc, no)
PKG_WITH_MODULES([CHROMECAST],[protobuf-lite >= protobuf_lite_version], [
- AC_CHECK_PROGS(PROTOC, protoc)
- AS_IF([test "${PROTOC}" = "protoc"], [
- VLC_ADD_PLUGIN([stream_out_chromecast])
- VLC_ADD_CXXFLAGS([stream_out_chromecast],[${CHROMECAST_CFLAGS}] [-I./chromecast])
- VLC_ADD_LIBS([stream_out_chromecast],[${CHROMECAST_LIBS}])
+ AS_IF([test "x${PROTOC}" != "xno"], [
build_chromecast="yes"
], [
AC_MSG_ERROR(protoc compiler needed for [chromecast] was not found)
])
QT_PATH="$(eval $PKG_CONFIG --variable=exec_prefix Qt5Core)"
QT_HOST_PATH="$(eval $PKG_CONFIG --variable=host_bins Qt5Core)"
- AC_PATH_PROGS(MOC, [moc-qt5 moc], moc, [${QT_HOST_PATH} ${QT_PATH}/bin ${CONTRIB_DIR}/bin])
- AC_PATH_PROGS(RCC, [rcc-qt5 rcc], rcc, [${QT_HOST_PATH} ${QT_PATH}/bin ${CONTRIB_DIR}/bin])
- AC_PATH_PROGS(UIC, [uic-qt5 uic], uic, [${QT_HOST_PATH} ${QT_PATH}/bin ${CONTRIB_DIR}/bin])
+ AC_PATH_PROGS(MOC, [moc-qt5 moc], moc, ["${QT_HOST_PATH}" "${QT_PATH}/bin" "${CONTRIB_DIR}/bin"])
+ AC_PATH_PROGS(RCC, [rcc-qt5 rcc], rcc, ["${QT_HOST_PATH}" "${QT_PATH}/bin" "${CONTRIB_DIR}/bin"])
+ AC_PATH_PROGS(UIC, [uic-qt5 uic], uic, ["${QT_HOST_PATH}" "${QT_PATH}/bin" "${CONTRIB_DIR}/bin"])
], [
PKG_CHECK_MODULES([QT], [QtCore QtGui >= 4.6.0],, [
AS_IF([test -n "${enable_qt}"],[
enable_qt="no"
])
QT_PATH="$(eval $PKG_CONFIG --variable=exec_prefix QtCore)"
- AC_PATH_PROGS(MOC, [moc-qt4 moc], moc, [${QT_PATH}/bin ${CONTRIB_DIR}/bin])
+ AC_PATH_PROGS(MOC, [moc-qt4 moc], moc, ["${QT_PATH}/bin" "${CONTRIB_DIR}/bin"])
AC_PATH_PROG(RCC, rcc, rcc, [${QT_PATH}/bin ${CONTRIB_DIR}/bin])
- AC_PATH_PROGS(UIC, [uic-qt4 uic], uic, [${QT_PATH}/bin ${CONTRIB_DIR}/bin])
+ AC_PATH_PROGS(UIC, [uic-qt4 uic], uic, ["${QT_PATH}/bin" "${CONTRIB_DIR}/bin"])
])
])
AS_IF([test "${enable_qt}" != "no"], [
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}])
+ have_ncurses="yes"
ALIASES="${ALIASES} nvlc"
], [
AS_IF([test -n "${enable_ncurses}"], [
])
])
])
+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
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}.])
])
(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
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
])