X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;ds=sidebyside;f=configure.ac;h=da7a386d3521a31e20180a7dfe6814f409fa6fdf;hb=84b5c4ae08d65a368b1f4a68c7d6250f84163a65;hp=925fd142bd8d08db0aa0a8f57710875e5315dc6b;hpb=f60c1959836c44f3c704c82b5c6d9610a3977e8b;p=vlc diff --git a/configure.ac b/configure.ac index 925fd142bd..da7a386d35 100644 --- a/configure.ac +++ b/configure.ac @@ -1,10 +1,10 @@ dnl Autoconf settings for vlc -AC_COPYRIGHT([Copyright 2002-2011 the VideoLAN team]) +AC_COPYRIGHT([Copyright 2002-2012 VLC authors and VideoLAN]) -AC_INIT(vlc, 1.2.0-git) -VERSION_MAJOR=1 -VERSION_MINOR=2 +AC_INIT(vlc, 2.1.0-git) +VERSION_MAJOR=2 +VERSION_MINOR=1 VERSION_REVISION=0 VERSION_EXTRA=0 VERSION_DEV=git @@ -13,8 +13,8 @@ PKGDIR="vlc" AC_SUBST(PKGDIR) CONFIGURE_LINE="`echo "$0 $ac_configure_args" | sed -e 's/\\\/\\\\\\\/g'`" -CODENAME="Twoflower" -COPYRIGHT_YEARS="1996-2011" +CODENAME="Rincewind" +COPYRIGHT_YEARS="1996-2012" AC_CONFIG_SRCDIR(src/libvlc.c) AC_CONFIG_AUX_DIR(autotools) @@ -59,6 +59,7 @@ AC_DEFINE([_FILE_OFFSET_BITS], 64, [Define to 64 for large files support.]) AC_DEFINE([_REENTRANT],, [Define to expose reentrant functions.]) AC_DEFINE([_THREAD_SAFE],, [Same as _REENTANT for some other OSes.]) AC_DEFINE([__LIBVLC__],, [Define within the LibVLC source code tree.]) +AC_DEFINE([WIN32_LEAN_AND_MEAN],, [Define to limit the scope of .]) AM_PROG_CC_C_O AC_PROG_CXX @@ -78,11 +79,6 @@ AC_C_CONST AC_C_INLINE AC_C_RESTRICT -dnl -dnl Save *FLAGS -dnl -VLC_SAVE_FLAGS - dnl Extend the --help string at the current spot. AC_DEFUN([EXTEND_HELP_STRING], [m4_divert_once([HELP_ENABLE], [$1])]) @@ -96,86 +92,6 @@ AS_IF([test -n "${with_binary_version}"],[ [Binary specific version]) ]) -dnl -dnl Check for the contrib directory -dnl -AC_ARG_WITH(contrib, - [AS_HELP_STRING([--with-contrib[=DIR]], - [search for 3rd party libraries in DIR/include and DIR/lib]) -]) -AC_MSG_CHECKING([for 3rd party libraries path]) -AS_IF([test -z "${with_contrib}" || test "${with_contrib}" = "yes"], [ - CONTRIB_DIR="${srcdir}/contrib/${host}" - AS_IF([test ! -d "${CONTRIB_DIR}"], [ - echo "${CONTRIB_DIR} not found" >&AS_MESSAGE_LOG_FD - CONTRIB_DIR="${srcdir}/contrib/`$CC -dumpmachine`" - AS_IF([test ! -d "${CONTRIB_DIR}"], [ - echo "${CONTRIB_DIR} not found" >&AS_MESSAGE_LOG_FD - CONTRIB_DIR="${srcdir}/extras/contrib/hosts/${host}" - AS_IF([test ! -d "${CONTRIB_DIR}"], [ - echo "${CONTRIB_DIR} not found" >&AS_MESSAGE_LOG_FD - CONTRIB_DIR="${srcdir}/extras/contrib/hosts/`$CC -dumpmachine`" - AS_IF([test ! -d "${CONTRIB_DIR}"], [ - echo "${CONTRIB_DIR} not found" >&AS_MESSAGE_LOG_FD - CONTRIB_DIR="" - AC_MSG_RESULT([not found]) - ]) - ]) - ]) - ]) -], [ - AS_IF([test "${with_contrib}" != "no"], [ - CONTRIB_DIR="${with_contrib}" - ], [ - CONTRIB_DIR="" - AC_MSG_RESULT([disabled]) - ]) -]) -AS_IF([test -n "${CONTRIB_DIR}"], [ - AS_IF([test -d "${CONTRIB_DIR}/lib"],[ - CONTRIB_DIR=`cd "${CONTRIB_DIR}" && pwd` - ], [ - echo "${CONTRIB_DIR}/lib not found" >&AS_MESSAGE_LOG_FD - CONTRIB_DIR="" - AC_MSG_RESULT([not usable]) - ]) - -]) -AS_IF([test -n "${CONTRIB_DIR}"], [ - AC_MSG_RESULT([${CONTRIB_DIR}]) - export PATH=${CONTRIB_DIR}/bin:$PATH - CPPFLAGS="${CPPFLAGS} -I${CONTRIB_DIR}/include" - CPPFLAGS_save="${CPPFLAGS_save} -I${CONTRIB_DIR}/include" - CFLAGS="${CFLAGS} -I${CONTRIB_DIR}/include" - CFLAGS_save="${CFLAGS_save} -I${CONTRIB_DIR}/include" - CXXFLAGS="${CXXFLAGS} -I${CONTRIB_DIR}/include" - CXXFLAGS_save="${CXXFLAGS_save} -I${CONTRIB_DIR}/include" - OBJCFLAGS="${OBJCFLAGS} -I${CONTRIB_DIR}/include" - OBJCFLAGS_save="${OBJCFLAGS_save} -I${CONTRIB_DIR}/include" - AS_IF([test "$build" = "$host" -o "$PKG_CONFIG_LIBDIR"], [ - export PKG_CONFIG_PATH="${CONTRIB_DIR}/lib/pkgconfig:$PKG_CONFIG_PATH" - ], [ - export PKG_CONFIG_LIBDIR="${CONTRIB_DIR}/lib/pkgconfig" - ]) - LDFLAGS="${LDFLAGS} -L${CONTRIB_DIR}/lib" - LDFLAGS_save="${LDFLAGS_save} -L${CONTRIB_DIR}/lib" - - AS_IF([test "${SYS}" = "darwin"], [ - export LD_LIBRARY_PATH="${CONTRIB_DIR}/lib:$LD_LIBRARY_PATH" - export DYLD_LIBRARY_PATH="${CONTRIB_DIR}/lib:$DYLD_LIBRARY_PATH" - ]) -], [ - AS_IF([test -n "${with_contrib}" && test "${with_contrib}" != "no"], [ - AC_MSG_ERROR([Third party libraries not found!]) - ]) -]) -AC_SUBST(CONTRIB_DIR) - -dnl -dnl Set default values -dnl -LDFLAGS_vlc="${LDFLAGS}" - dnl dnl Check the operating system dnl @@ -189,33 +105,32 @@ case "${host_os}" in ;; bsdi*) SYS=bsdi - CFLAGS_save="${CFLAGS_save} -pthread"; CFLAGS="${CFLAGS_save}" + CFLAGS="${CFLAGS} -pthread" VLC_ADD_LIBS([vcd cdda vcdx],[-ldvd]) ;; - *bsd*) - SYS="${host_os}" - CFLAGS_save="${CFLAGS_save} -pthread"; CFLAGS="${CFLAGS_save}" - case "${host_os}" in - freebsd*) - CPPFLAGS_save="${CPPFLAGS_save} -I/usr/local/include" - CPPFLAGS="${CPPFLAGS_save}" - LDFLAGS_save="${LDFLAGS_save} -L/usr/local/lib" - LDFLAGS="${LDFLAGS_save}" - ;; - openbsd*) - CPPFLAGS_save="${CPPFLAGS_save} -I/usr/local/include -I/usr/X11R6/include" - CPPFLAGS="${CPPFLAGS_save}" - LDFLAGS_save="${LDFLAGS_save} -L/usr/local/lib -L/usr/X11R6/lib/" - LDFLAGS="${LDFLAGS_save}" - ;; - esac + freebsd*) + SYS=freebsd + CFLAGS="${CFLAGS} -pthread" + CPPFLAGS="${CPPFLAGS} -I/usr/local/include" + LDFLAGS="${LDFLAGS} -L/usr/local/lib" + ;; + openbsd*) + SYS=openbsd + CPPFLAGS="${CPPFLAGS} -I/usr/local/include -I/usr/X11R6/include" + LDFLAGS="${LDFLAGS} -L/usr/local/lib -L/usr/X11R6/lib/" + ;; + netbsd*) + SYS=netbsd + ;; + dragonfly*) + SYS=dragonfly ;; darwin*) dnl Force gcc "-arch" flag ARCH_flag="" case "${host}" in - i386*) + i?86*) ARCH_flag="-arch i386" ;; ppc64*) @@ -227,91 +142,60 @@ case "${host_os}" in x86_64*) ARCH_flag="-arch x86_64" ;; + arm*) + ARCH_flag="-arch armv7" + ac_cv_c_bigendian="no" + ac_cv_c_attribute_packed="no" + ;; esac SYS=darwin - CFLAGS_save="${CFLAGS_save} -D_INTL_REDIRECT_MACROS ${ARCH_flag}"; CFLAGS="${CFLAGS_save}" - CXXFLAGS_save="${CXXFLAGS_save} -D_INTL_REDIRECT_MACROS ${ARCH_flag}"; CXXFLAGS="${CXXFLAGS_save}" - CPPFLAGS_save="${CPPFLAGS_save} ${ARCH_flag}"; CPPFLAGS="${CPPFLAGS_save}" - OBJCFLAGS_save="${OBJCFLAGS_save} -D_INTL_REDIRECT_MACROS -std=gnu99 ${ARCH_flag}"; OBJCFLAGS="${OBJCFLAGS_save}" - LDFLAGS_save="${LDFLAGS_save} -Wl,-headerpad_max_install_names ${ARCH_flag}"; LDFLAGS="${LDFLAGS_save}" + CFLAGS="${CFLAGS} -D_INTL_REDIRECT_MACROS ${ARCH_flag}" + CXXFLAGS="${CXXFLAGS} -D_INTL_REDIRECT_MACROS ${ARCH_flag}" + CPPFLAGS="${CPPFLAGS} ${ARCH_flag}" + OBJCFLAGS="${OBJCFLAGS} -D_INTL_REDIRECT_MACROS -std=gnu99 ${ARCH_flag}" + 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([libvlc vlc],[-Wl,-undefined,dynamic_lookup,-framework,Appkit]) + 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]) - AC_ARG_ENABLE(macosx-defaults, - AS_HELP_STRING([--enable-macosx-defaults],[Build the default configuration on Mac OS X (default enabled)])) - if test "x${enable_macosx_defaults}" != "xno" - then - echo "" - echo "Building with Mac OS X defaults:" - build_dir=`pwd` - echo " Assuming --prefix=${build_dir}/vlc_install_dir" - ac_default_prefix="${build_dir}/vlc_install_dir" - enable_faad="yes" - echo " Assuming --enable-faad" - enable_flac="yes" - echo " Assuming --enable-flac" - enable_theora="yes" - echo " Assuming --enable-theora" - enable_shout="yes" - echo " Assuming --enable-shout" - enable_vcdx="yes" - echo " Assuming --enable-vcdx" - enable_caca="yes" - echo " Assuming --enable-caca" - enable_ncurses="yes" - echo " Assuming --enable-ncurses" - enable_twolame="yes" - echo " Assuming --enable-twolame" - enable_realrtsp="yes" - echo " Assuming --enable-realrtsp" - enable_libass="yes" - echo " Assuming --enable-libass" - - enable_skins2="no" - echo " Assuming --disable-skins2" - enable_xcb="no" - echo " Assuming --disable-xcb" - fi + + dnl Allow binaries created on Lion to run on earlier releases + AC_EGREP_CPP(yes, + [#import + #ifdef MAC_OS_X_VERSION_10_7 + yes + #endif], + [AC_MSG_RESULT([yes]) + AC_LIBOBJ([getdelim]) + AC_LIBOBJ([strndup]) + AC_LIBOBJ([strnlen])],) + dnl dnl Check for Mac OS X SDK settings dnl AC_ARG_WITH(macosx-sdk, [AS_HELP_STRING([--with-macosx-sdk=DIR], [compile using the SDK in DIR])]) - if test "${with_macosx_sdk}" != "" ; then - CPP="${CPP} -isysroot ${with_macosx_sdk}" - CC="${CC} -isysroot ${with_macosx_sdk}" - CXX="${CXX} -isysroot ${with_macosx_sdk}" - OBJC="${OBJC} -isysroot ${with_macosx_sdk}" - LD="${LD} -syslibroot ${with_macosx_sdk}" - else - echo " No desired SDK version given, falling back to 10.5" - CPP="${CPP} -isysroot /Developer/SDKs/MacOSX10.5.sdk" - CC="${CC} -isysroot /Developer/SDKs/MacOSX10.5.sdk" - CXX="${CXX} -isysroot /Developer/SDKs/MacOSX10.5.sdk" - OBJC="${OBJC} -isysroot /Developer/SDKs/MacOSX10.5.sdk" - LD="${LD} -syslibroot /Developer/SDKs/MacOSX10.5.sdk" - with_macosx_version_min="10.5" - echo " Assuming --with-macosx-version-min=10.5" - fi + 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]) AC_ARG_WITH(macosx-version-min, [AS_HELP_STRING([--with-macosx-version-min=VERSION], [compile for MacOS X VERSION and above])]) - if test "${with_macosx_version_min}" != "" ; then - CPP="${CPP} -mmacosx-version-min=${with_macosx_version_min}" - 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 + if test "${with_macosx_version_min}" = "" ; then + with_macosx_version_min=10.5 fi + MACOSX_DEPLOYMENT_TARGET=${with_macosx_version_min} + CPP="${CPP} -isysroot ${with_macosx_sdk} -mmacosx-version-min=${with_macosx_version_min}" + CC="${CC} -isysroot ${with_macosx_sdk} -mmacosx-version-min=${with_macosx_version_min}" + CXX="${CXX} -isysroot ${with_macosx_sdk} -mmacosx-version-min=${with_macosx_version_min}" + OBJC="${OBJC} -isysroot ${with_macosx_sdk} -mmacosx-version-min=${with_macosx_version_min}" + LD="${LD} -syslibroot ${with_macosx_sdk} -mmacosx_version_min=${with_macosx_version_min}" + CFLAGS="${CFLAGS} -DMACOSX_DEPLOYMENT_TARGET=${with_macosx_version_min}" + CXXFLAGS="${CXXFLAGS} -DMACOSX_DEPLOYMENT_TARGET=${with_macosx_version_min}" + OBJCFLAGS="${OBJCFLAGS} -DMACOSX_DEPLOYMENT_TARGET=${with_macosx_version_min}" + export MACOSX_DEPLOYMENT_TARGET ;; *mingw32* | *cygwin* | *wince* | *mingwce*) AC_CHECK_TOOL(WINDRES, windres, :) @@ -343,15 +227,6 @@ case "${host_os}" in VLC_ADD_LDFLAGS([vlc],[-mwindows]) VLC_ADD_LIBS([win32text],[-lgdi32]) VLC_ADD_LIBS([cdda vcdx sdl_image vout_sdl],[-lwinmm]) - dnl - dnl DEP and ASLR options - dnl - AC_ARG_WITH(peflags, - [AS_HELP_STRING([--with-peflags], - [use peflags (default enabled on Windows)])]) - if test "${with_peflags}" != "no" ; then - AC_PATH_TOOL(PEFLAGS, peflags, :) - fi AC_CHECK_PROGS(U2D, [unix2dos todos], unix2dos) ac_default_prefix="`pwd`/_win32" DESTDIR="`pwd`/_win32/" @@ -360,7 +235,7 @@ case "${host_os}" in dnl NSIS Installer prefix and WIN64 dnl case "${host}" in - amd64*|i686-w64*|x86_64*) + amd64*|x86_64*) HAVE_WIN64="1" PROGRAMFILES="PROGRAMFILES64" ;; @@ -392,7 +267,7 @@ case "${host_os}" in ;; *os2*) SYS=os2 - LDFLAGS_save="${LDFLAGS_save} -Zomf -Zbin-files -Zargs-wild"; LDFLAGS="${LDFLAGS_save}" + LDFLAGS="${LDFLAGS} -Zomf -Zbin-files -Zargs-wild" ;; *) SYS="${host_os}" @@ -405,10 +280,79 @@ AM_CONDITIONAL(HAVE_WIN32, test "${SYS}" = "mingw32") AM_CONDITIONAL(HAVE_WIN64, test "${HAVE_WIN64}" = "1") AM_CONDITIONAL(HAVE_WINCE, test "${SYS}" = "mingwce") AM_CONDITIONAL(HAVE_SYMBIAN, test "${SYS}" = "symbian") -AM_CONDITIONAL(USE_PEFLAGS, test "${with_peflags}" = "yes") dnl -dnl Sadly autoconf doesn't think about testing foo.exe when ask to test +dnl Check for the contrib directory +dnl +AC_ARG_WITH(contrib, + [AS_HELP_STRING([--with-contrib[=DIR]], + [search for 3rd party libraries in DIR/include and DIR/lib]) +]) +AC_MSG_CHECKING([for 3rd party libraries path]) +AS_IF([test -z "${with_contrib}" || test "${with_contrib}" = "yes"], [ + CONTRIB_DIR="${srcdir}/contrib/${host}" + AS_IF([test ! -d "${CONTRIB_DIR}"], [ + echo "${CONTRIB_DIR} not found" >&AS_MESSAGE_LOG_FD + CONTRIB_DIR="${srcdir}/contrib/`$CC -dumpmachine`" + AS_IF([test ! -d "${CONTRIB_DIR}"], [ + echo "${CONTRIB_DIR} not found" >&AS_MESSAGE_LOG_FD + CONTRIB_DIR="${srcdir}/extras/contrib/hosts/${host}" + AS_IF([test ! -d "${CONTRIB_DIR}"], [ + echo "${CONTRIB_DIR} not found" >&AS_MESSAGE_LOG_FD + CONTRIB_DIR="${srcdir}/extras/contrib/hosts/`$CC -dumpmachine`" + AS_IF([test ! -d "${CONTRIB_DIR}"], [ + echo "${CONTRIB_DIR} not found" >&AS_MESSAGE_LOG_FD + CONTRIB_DIR="" + AC_MSG_RESULT([not found]) + ]) + ]) + ]) + ]) +], [ + AS_IF([test "${with_contrib}" != "no"], [ + CONTRIB_DIR="${with_contrib}" + ], [ + CONTRIB_DIR="" + AC_MSG_RESULT([disabled]) + ]) +]) +AS_IF([test -n "${CONTRIB_DIR}"], [ + AS_IF([test -d "${CONTRIB_DIR}/lib"],[ + CONTRIB_DIR=`cd "${CONTRIB_DIR}" && pwd` + ], [ + echo "${CONTRIB_DIR}/lib not found" >&AS_MESSAGE_LOG_FD + CONTRIB_DIR="" + AC_MSG_RESULT([not usable]) + ]) + +]) +AS_IF([test -n "${CONTRIB_DIR}"], [ + AC_MSG_RESULT([${CONTRIB_DIR}]) + export PATH=${CONTRIB_DIR}/bin:$PATH + CPPFLAGS="${CPPFLAGS} -I${CONTRIB_DIR}/include" + CFLAGS="${CFLAGS} -I${CONTRIB_DIR}/include" + CXXFLAGS="${CXXFLAGS} -I${CONTRIB_DIR}/include" + OBJCFLAGS="${OBJCFLAGS} -I${CONTRIB_DIR}/include" + AS_IF([test "$build" = "$host" -o "$PKG_CONFIG_LIBDIR"], [ + export PKG_CONFIG_PATH="${CONTRIB_DIR}/lib/pkgconfig:$PKG_CONFIG_PATH" + ], [ + export PKG_CONFIG_LIBDIR="${CONTRIB_DIR}/lib/pkgconfig" + ]) + LDFLAGS="${LDFLAGS} -L${CONTRIB_DIR}/lib" + + AS_IF([test "${SYS}" = "darwin"], [ + export LD_LIBRARY_PATH="${CONTRIB_DIR}/lib:$LD_LIBRARY_PATH" + export DYLD_LIBRARY_PATH="${CONTRIB_DIR}/lib:$DYLD_LIBRARY_PATH" + ]) +], [ + AS_IF([test -n "${with_contrib}" && test "${with_contrib}" != "no"], [ + AC_MSG_ERROR([Third party libraries not found!]) + ]) +]) +AC_SUBST(CONTRIB_DIR) + +dnl +dnl Sadly autoconf does not think about testing foo.exe when ask to test dnl for program foo on win32 case "${build_os}" in @@ -465,7 +409,7 @@ dnl dnl Gettext stuff dnl AM_GNU_GETTEXT_VERSION([0.18.1]) -AM_GNU_GETTEXT([external]) +AM_GNU_GETTEXT([external], [need-ngettext]) dnl dnl Iconv stuff @@ -477,20 +421,21 @@ AS_IF([test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"], [ AC_MSG_CHECKING(for broken mingw-runtime) AC_PREPROC_IFELSE([AC_LANG_SOURCE([ #include <_mingw.h> -#if (__MINGW32_MAJOR_VERSION == 3) && (__MINGW32_MINOR_VERSION < 15) -#ifndef __MINGW64_VERSION_MAJOR +#if defined(__MINGW64_VERSION_MAJOR) +# if __MINGW64_VERSION_MAJOR < 3 +# error Attempting to use mingw-runtime with broken vsnprintf and direct2d support +# endif +#elif __MINGW32_MAJOR_VERSION == 3 && __MINGW32_MINOR_VERSION < 15 # error Attempting to use mingw-runtime with broken vsnprintf support -#endif #endif ])], [ AC_MSG_RESULT([ok]) ], [ AC_MSG_RESULT([present]) - AC_MSG_ERROR([LibVLC requires mingw-runtime version 3.15 or higher!]) + 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" - CPPFLAGS_save="${CPPFLAGS_save} -D__USE_MINGW_ANSI_STDIO=1" ]) dnl Check for the need to include the mingwex lib for mingw32 @@ -503,25 +448,21 @@ fi dnl Check for fnative-struct or mms-bitfields support for mingw32 if test "${SYS}" = "mingw32" ; then + VLC_SAVE_FLAGS + CFLAGS="${CFLAGS} -mms-bitfields" + CXXFLAGS="${CXXFLAGS} -mms-bitfields" AC_CACHE_CHECK([if \$CC accepts -mms-bitfields], [ac_cv_c_mms_bitfields], - [CFLAGS="${CFLAGS_save} -mms-bitfields" - AC_TRY_COMPILE([],,ac_cv_c_mms_bitfields=yes, ac_cv_c_mms_bitfields=no)]) - if test "${ac_cv_c_mms_bitfields}" != "no"; then - CFLAGS_save="${CFLAGS_save} -mms-bitfields"; - CXXFLAGS_save="${CXXFLAGS_save} -mms-bitfields"; - else + [AC_TRY_COMPILE([],,ac_cv_c_mms_bitfields=yes, ac_cv_c_mms_bitfields=no)]) + if test "${ac_cv_c_mms_bitfields}" = "no"; then + VLC_RESTORE_FLAGS + CFLAGS="${CFLAGS} -fnative-struct" + CXXFLAGS="${CXXFLAGS} -fnative-struct" AC_CACHE_CHECK([if \$CC accepts -fnative-struct], [ac_cv_c_fnative_struct], - [CFLAGS="${CFLAGS_save} -fnative-struct" - AC_TRY_COMPILE([],,ac_cv_c_fnative_struct=yes, ac_cv_c_fnative_struct=no)]) - if test "${ac_cv_c_fnative_struct}" != "no"; then - CFLAGS_save="${CFLAGS_save} -fnative-struct"; - CXXFLAGS_save="${CXXFLAGS_save} -fnative-struct"; - fi + [AC_TRY_COMPILE([],,ac_cv_c_fnative_struct=yes, ac_cv_c_fnative_struct=no)]) + "${ac_cv_c_fnative_struct}" = "no" && VLC_RESTORE_FLAGS fi - - CFLAGS="${CFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}" fi dnl @@ -544,8 +485,6 @@ AC_PREPROC_IFELSE([AC_LANG_SOURCE([ AC_MSG_ERROR([Buggy GNU/libc (version 2.5 - 2.7) present. VLC would crash; there is no viable work-around for this. Check with your distribution vendor on how to update the glibc run-time. Alternatively, build with --disable-nls.]) - ], [ - AC_DEFINE(DISABLE_BUGGY_GLIBC_CHECK, 1, [Disables runtime check for buggy glibc.]) ]) ]) @@ -558,13 +497,43 @@ 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 uselocale]) -AC_REPLACE_FUNCS([asprintf atof atoll dirfd fdopendir flockfile fsync getdelim getpid gmtime_r lldiv localtime_r nrand48 rewind setenv strcasecmp strcasestr strdup strlcpy strncasecmp strndup strnlen strsep strtof strtok_r strtoll swab tdestroy vasprintf]) +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.]) ]) -# Windows CE doesn't have strcoll() +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])]) + +dnl C11 static_assert() +AC_MSG_CHECKING([for static_assert in assert.h]) +AC_PREPROC_IFELSE([AC_LANG_SOURCE([ +#include +#ifndef static_assert +# error BOOM! +#endif +])], [ + AC_MSG_RESULT([yes]) + AC_DEFINE([HAVE_STATIC_ASSERT], [1], [Define to 1 if defines static_assert.]) +], [ + AC_MSG_RESULT([no]) +]) + +# Windows CE does not have strcoll() AC_FUNC_STRCOLL dnl Check for non-standard system calls @@ -572,15 +541,6 @@ AC_CHECK_FUNCS([accept4 pipe2 eventfd vmsplice sched_getaffinity]) AH_BOTTOM([#include ]) -dnl Check for poll -AC_SEARCH_LIBS(poll, [poll], [ - AC_DEFINE(HAVE_POLL, 1, [Define to 1 if the OS has poll().]) -], [ - AS_IF([test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"], [ - AC_MSG_ERROR([poll() is required.]) - ]) -]) - dnl Check for struct pollfd AC_CHECK_TYPES([struct pollfd],,, [#include @@ -591,8 +551,8 @@ AC_CHECK_TYPES([struct pollfd],,, #endif ]) -dnl Check for connect -LIBS_save="$LIBS" +dnl Checks for socket stuff +VLC_SAVE_FLAGS SOCKET_LIBS="" AC_SEARCH_LIBS(connect, [socket], [ AS_IF([test "$ac_cv_search_connect" != "none required"], [ @@ -606,15 +566,24 @@ AC_SEARCH_LIBS(connect, [socket], [ SOCKET_LIBS="-lws2" ]) ]) -LIBS="$LIBS_save" + +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) dnl Check for socklen_t AH_TEMPLATE(socklen_t, [Define to `int' if does not define.]) -AC_CACHE_CHECK([for socklen_t in sys/socket.h], +AC_CACHE_CHECK([for socklen_t in sys/socket.h], dnl ` (fix VIM syntax highlight ac_cv_type_socklen_t, [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([ [#include @@ -630,8 +599,8 @@ 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.]) -AH_TEMPLATE(ss_family, [Define to `sa_family' if does not define.]) +AH_TEMPLATE(sockaddr_storage, [Define to `sockaddr' if does not define.]) dnl ` (fix VIM syntax highlight +AH_TEMPLATE(ss_family, [Define to `sa_family' if does not define.]) dnl ` (fix VIM syntax highlight AC_CACHE_CHECK([for struct sockaddr_storage], ac_cv_struct_sockaddr_storage, [AC_TRY_COMPILE( [#include @@ -649,19 +618,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 -LIBS_save="${LIBS}" -AC_SEARCH_LIBS([getaddrinfo], [nsl],,, [${SOCKET_LIBS}]) -LIBS="${LIBS_save}" - -AC_CHECK_FUNCS(inet_aton,,[ - AC_CHECK_LIB(resolv,inet_aton,[ - VLC_ADD_LIBS([libvlccore],[-lresolv]) - ]) -]) - dnl FreeBSD has a gnugetopt library for this: GNUGETOPT_LIBS="" AC_CHECK_FUNC(getopt_long,, [ @@ -672,7 +628,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 quicktime realvideo qt4 compressor headphone_channel_mixer normvol audiobargraph_a speex mono colorthres extract ball access_imem hotkeys mosaic gaussianblur dbus x264],[-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="" @@ -687,14 +643,14 @@ AC_CHECK_LIB(m,lrintf, [ dnl Check for dynamic plugins LIBDL="" have_dynamic_objects="no" -LIBS_save="$LIBS" +VLC_SAVE_FLAGS AC_SEARCH_LIBS(dlopen, [dl svld], [ AS_IF([test "$ac_cv_search_dlopen" != "none required"], [ LIBDL="$ac_cv_search_dlopen" ]) have_dynamic_objects="yes" ]) -LIBS="$LIBS_save" +VLC_RESTORE_FLAGS # Windows AS_IF([test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"], [ @@ -714,27 +670,17 @@ 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 - dnl Check for pthreads - borrowed from XMMS - THREAD_LIB=error - if test "${THREAD_LIB}" = "error"; then - AC_CHECK_LIB(pthread,main,THREAD_LIB="-lpthread") - fi - if test "${THREAD_LIB}" = "error"; then - AC_CHECK_LIB(pthreads,main,THREAD_LIB="-lpthreads") - fi - if test "${THREAD_LIB}" = "error"; then - AC_CHECK_LIB(c_r,main,THREAD_LIB="-lc_r") - fi - if test "${THREAD_LIB}" = "error"; then - AC_CHECK_FUNCS(pthread_mutex_lock) - THREAD_LIB="" - fi - VLC_ADD_LIBS([libvlccore libvlc vlc plugin],[${THREAD_LIB}]) + VLC_SAVE_FLAGS + LIBS="" + AC_SEARCH_LIBS(pthread_rwlock_init, pthread pthreads c_r, [ + VLC_ADD_LIBS([libvlccore libvlc vlc plugin],[${LIBS}]) + ]) + VLC_RESTORE_FLAGS AC_CHECK_LIB(rt, clock_nanosleep, [ VLC_ADD_LIBS([libvlccore],[-lrt]) @@ -753,19 +699,11 @@ if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then ]) fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" -dnl Check for misc headers -AC_MSG_CHECKING(for strncasecmp in strings.h) -AC_EGREP_HEADER(strncasecmp,strings.h,[ - AC_MSG_RESULT(yes) - AC_DEFINE(STRNCASECMP_IN_STRINGS_H, 1, - Define if defines strncasecmp.)],[ - AC_MSG_RESULT(no)]) - dnl Check for headers AC_CHECK_HEADERS([search.h]) -AC_CHECK_HEADERS(getopt.h strings.h locale.h xlocale.h) -AC_CHECK_HEADERS(fcntl.h sys/time.h sys/ioctl.h sys/stat.h) -AC_CHECK_HEADERS([arpa/inet.h netinet/in.h netinet/udplite.h sys/eventfd.h]) +AC_CHECK_HEADERS(getopt.h locale.h xlocale.h) +AC_CHECK_HEADERS([sys/time.h sys/ioctl.h]) +AC_CHECK_HEADERS([arpa/inet.h netinet/udplite.h sys/eventfd.h]) AC_CHECK_HEADERS([net/if.h], [], [], [ #include @@ -779,11 +717,11 @@ 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... -AH_TEMPLATE(ssize_t, [Define to `int' if does not define.]) +AH_TEMPLATE(ssize_t, [Define to `int' if does not define.]) dnl ` (fix VIM syntax highlight AC_CHECK_TYPE(ssize_t,, [ AC_DEFINE(ssize_t, int) ]) @@ -833,20 +771,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], @@ -856,7 +780,7 @@ case "${SYS}" in if test "${enable_dbus}" != "no" -a "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" then dnl api stable dbus - PKG_CHECK_MODULES(DBUS, dbus-1 >= 1.0.0, + PKG_CHECK_MODULES(DBUS, [dbus-1 >= 1.0.0], [ AC_DEFINE( HAVE_DBUS, 1, [Define if you have the D-BUS library] ) VLC_ADD_LIBS([libvlccore],[$DBUS_LIBS]) VLC_ADD_CFLAGS([libvlccore],[$DBUS_CFLAGS]) @@ -883,25 +807,26 @@ then VLC_ADD_LIBS([inhibit],[$DBUS_LIBS]) VLC_ADD_CFLAGS([inhibit],[$DBUS_CFLAGS]) ], - [AC_MSG_ERROR([Couldn't find DBus >= 1.0.0, install libdbus-dev ?])] + [AC_MSG_ERROR([${DBUS_PKG_ERRORS}.])] ) fi ;; esac dnl Check for ntohl, etc. +VLC_SAVE_FLAGS +CFLAGS="${CFLAGS} -Wall -Werror" AC_CACHE_CHECK([for ntohl in sys/param.h], [ac_cv_c_ntohl_sys_param_h], - [CFLAGS="${CFLAGS_save} -Wall -Werror" - AC_TRY_COMPILE([#include ], + [ AC_TRY_COMPILE([#include ], [int meuh; ntohl(meuh);], ac_cv_c_ntohl_sys_param_h=yes, ac_cv_c_ntohl_sys_param_h=no)]) if test "${ac_cv_c_ntohl_sys_param_h}" != "no"; then AC_DEFINE(NTOHL_IN_SYS_PARAM_H, 1, Define if defines ntohl.) fi +VLC_RESTORE_FLAGS EXTEND_HELP_STRING([Optimization options:]) -VLC_RESTORE_FLAGS dnl dnl Compiler warnings dnl @@ -963,25 +888,20 @@ AS_IF([test "${enable_coverage}" != "no"], [ LDFLAGS="-lgcov ${LDFLAGS}" ]) -VLC_SAVE_FLAGS - AS_IF([test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"], [ + VLC_SAVE_FLAGS + CFLAGS="${CFLAGS} -fvisibility=hidden" + CXXFLAGS="${CXXFLAGS} -fvisibility=hidden" + OBJCFLAGS="${OBJCFLAGS} -fvisibility=hidden" AC_CACHE_CHECK([if $CC accepts -fvisibility=hidden], [ac_cv_c_visibility_hidden], [ - CFLAGS="${CFLAGS_save} -fvisibility=hidden" AC_COMPILE_IFELSE([AC_LANG_PROGRAM()], [ ac_cv_c_visibility_hidden=yes ], [ ac_cv_c_visibility_hidden=no ]) ]) - AS_IF([test "${ac_cv_c_visibility_hidden}" != "no"], [ - VLC_RESTORE_FLAGS - CFLAGS="${CFLAGS} -fvisibility=hidden" - CXXFLAGS="${CXXFLAGS} -fvisibility=hidden" - OBJCFLAGS="${OBJCFLAGS} -fvisibility=hidden" - VLC_SAVE_FLAGS - ]) + AS_IF([test "${ac_cv_c_visibility_hidden}" = "no"], [VLC_RESTORE_FLAGS]) ]) @@ -992,113 +912,97 @@ AC_ARG_ENABLE(optimizations, [AS_HELP_STRING([--disable-optimizations], [disable compiler optimizations (default enabled)])],, [enable_optimizations="yes"]) -AS_IF([test "${enable_optimizations}" != "no"], [ - enable_optimizations="speed" -]) dnl Check for various optimization flags AS_IF([test "${enable_optimizations}" != "no"], [ - C_O="" dnl -O4 and -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_save} -O4" AC_COMPILE_IFELSE([AC_LANG_PROGRAM()], [ ac_cv_c_o4=yes ], [ ac_cv_c_o4=no ]) ]) - AS_IF([test "${ac_cv_c_o4}" != "no"], [ - C_O="-O4" - ], [ + 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], [ - CFLAGS="${CFLAGS_save} -O3" AC_COMPILE_IFELSE([AC_LANG_PROGRAM()], [ ac_cv_c_o3=yes ], [ ac_cv_c_o3=no ]) ]) - AS_IF([test "${ac_cv_c_o3}" != "no"], [ - C_O="-O3" - ]) + AS_IF([test "${ac_cv_c_o3}" = "no"], [VLC_RESTORE_FLAGS]) ]) ]) - VLC_RESTORE_FLAGS - CFLAGS="${CFLAGS} ${C_O}" - CXXFLAGS="${CXXFLAGS} ${C_O}" - OBJCFLAGS="${OBJCFLAGS} ${C_O}" - VLC_SAVE_FLAGS - dnl Check for -ffast-math + VLC_SAVE_FLAGS + CFLAGS="${CFLAGS} -ffast-math" + CXXFLAGS="${CXXFLAGS} -ffast-math" + OBJCFLAGS="${OBJCFLAGS} -ffast-math" AC_CACHE_CHECK([if $CC accepts -ffast-math], [ac_cv_c_fast_math], [ - CFLAGS="${CFLAGS_save} -ffast-math" AC_COMPILE_IFELSE([AC_LANG_PROGRAM()], [ ac_cv_c_fast_math=yes ], [ ac_cv_c_fast_math=no ]) ]) - AS_IF([test "${ac_cv_c_fast_math}" != "no"], [ - VLC_RESTORE_FLAGS - CFLAGS="${CFLAGS} -ffast-math" - CXXFLAGS="${CXXFLAGS} -ffast-math" - OBJCFLAGS="${OBJCFLAGS} -ffast-math" - VLC_SAVE_FLAGS - ]) + 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 + CFLAGS="${CFLAGS} -funroll-loops" + CXXFLAGS="${CXXFLAGS} -funroll-loops" + OBJCFLAGS="${OBJCFLAGS} -funroll-loops" AC_CACHE_CHECK([if $CC accepts -funroll-loops], [ac_cv_c_unroll_loops], [ - CFLAGS="${CFLAGS_save} -funroll-loops" AC_COMPILE_IFELSE([AC_LANG_PROGRAM()], [ ac_cv_c_unroll_loops=yes ], [ ac_cv_c_unroll_loops=no ]) ]) - AS_IF([test "${ac_cv_c_unroll_loops}" != "no"], [ - VLC_RESTORE_FLAGS - CFLAGS="${CFLAGS} -funroll-loops" - CXXFLAGS="${CXXFLAGS} -funroll-loops" - OBJCFLAGS="${OBJCFLAGS} -funroll-loops" - VLC_SAVE_FLAGS - ]) + AS_IF([test "${ac_cv_c_unroll_loops}" = "no"], [VLC_RESTORE_FLAGS]) AS_IF([test "$enable_debug" = "no"], [ dnl Check for -fomit-frame-pointer + VLC_SAVE_FLAGS + CFLAGS="${CFLAGS} -fomit-frame-pointer" + CXXFLAGS="${CXXFLAGS} -fomit-frame-pointer" + OBJCFLAGS="${OBJCFLAGS} -fomit-frame-pointer" AC_CACHE_CHECK([if $CC accepts -fomit-frame-pointer], [ac_cv_c_omit_frame_pointer], [ - CFLAGS="${CFLAGS_save} -fomit-frame-pointer" AC_COMPILE_IFELSE([AC_LANG_PROGRAM()], [ ac_cv_c_omit_frame_pointer=yes ], [ ac_cv_c_omit_frame_pointer=no ]) ]) - AS_IF([test "${ac_cv_c_omit_frame_pointer}" != "no"], [ - VLC_RESTORE_FLAGS - AS_IF([test "${SYS}" != "darwin"], [ - CFLAGS="${CFLAGS} -fomit-frame-pointer" - CXXFLAGS="${CXXFLAGS} -fomit-frame-pointer" - ], [ - dnl On darwin we explicitely disable it. - CFLAGS="${CFLAGS} -fno-omit-frame-pointer" - CXXFLAGS="${CXXFLAGS} -fno-omit-frame-pointer" - OBJCFLAGS="${OBJCFLAGS} -fno-omit-frame-pointer" - ]) - VLC_SAVE_FLAGS - ]) + AS_IF([test "${ac_cv_c_omit_frame_pointer}" = "no"], [VLC_RESTORE_FLAGS]) ]) ]) dnl Check for Darwin plugin linking flags AS_IF([test "${SYS}" = "darwin"], [ + VLC_SAVE_FLAGS + CFLAGS="${CFLAGS} -bundle -undefined error" AC_CACHE_CHECK([if $CC accepts -bundle -undefined error], [ac_cv_ld_darwin], [ - CFLAGS="${CFLAGS_save} -bundle -undefined error" AC_COMPILE_IFELSE([AC_LANG_PROGRAM()], [ ac_cv_ld_darwin=yes ], [ @@ -1108,19 +1012,21 @@ AS_IF([test "${SYS}" = "darwin"], [ AS_IF([test "${ac_cv_ld_darwin}" != "no"], [ VLC_ADD_LDFLAGS([plugin],[-bundle -undefined error]) ]) + VLC_RESTORE_FLAGS ]) dnl Checks for __attribute__(aligned()) directive +VLC_SAVE_FLAGS +CFLAGS="${CFLAGS} -Werror" AC_CACHE_CHECK([__attribute__ ((aligned ())) support], [ac_cv_c_attribute_aligned], [ac_cv_c_attribute_aligned=0 - CFLAGS="${CFLAGS_save} -Werror" for ac_cv_c_attr_align_try in 2 4 8 16 32 64; do AC_TRY_COMPILE([], [static char c __attribute__ ((aligned(${ac_cv_c_attr_align_try}))) = 0; return c;], [ac_cv_c_attribute_aligned="${ac_cv_c_attr_align_try}"]) - done - CFLAGS="${CFLAGS_save}"]) + done]) +VLC_RESTORE_FLAGS if test "${ac_cv_c_attribute_aligned}" != "0"; then AC_DEFINE_UNQUOTED([ATTRIBUTE_ALIGNED_MAX], [${ac_cv_c_attribute_aligned}],[Maximum supported data alignment]) @@ -1195,48 +1101,65 @@ have_mmx="no" have_mmxext="no" AS_IF([test "${enable_mmx}" != "no"], [ ARCH="${ARCH} mmx" - - AC_CACHE_CHECK([if $CC groks MMX intrinsics], - [ac_cv_c_mmx_intrinsics], - [CFLAGS="${CFLAGS_save} -O -mmmx" - AC_TRY_COMPILE([#include - #include - uint64_t frobzor;], - [__m64 a, b, c; - a = b = c = (__m64)frobzor; - a = _mm_slli_pi16(a, 3); - a = _mm_adds_pi16(a, b); - c = _mm_srli_pi16(c, 8); - c = _mm_slli_pi16(c, 3); - b = _mm_adds_pi16(b, c); - a = _mm_unpacklo_pi8(a, b); - frobzor = (uint64_t)a;], - [ac_cv_c_mmx_intrinsics=yes], - [ac_cv_c_mmx_intrinsics=no])]) + VLC_SAVE_FLAGS + CFLAGS="${CFLAGS} -mmmx" + AC_CACHE_CHECK([if $CC groks MMX intrinsics], [ac_cv_c_mmx_intrinsics], [ + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([ +[#include +#include +uint64_t frobzor;]], [ +[__m64 a, b, c; +a = b = c = (__m64)frobzor; +a = _mm_slli_pi16(a, 3); +a = _mm_adds_pi16(a, b); +c = _mm_srli_pi16(c, 8); +c = _mm_slli_pi16(c, 3); +b = _mm_adds_pi16(b, c); +a = _mm_unpacklo_pi8(a, b); +frobzor = (uint64_t)a;]])], [ + ac_cv_c_mmx_intrinsics=yes + ], [ + ac_cv_c_mmx_intrinsics=no + ]) + ]) + VLC_RESTORE_FLAGS AS_IF([test "${ac_cv_c_mmx_intrinsics}" != "no"], [ - AC_DEFINE(HAVE_MMX_INTRINSICS, 1, - [Define to 1 if MMX intrinsics are available.]) + AC_DEFINE(HAVE_MMX_INTRINSICS, 1, [Define to 1 if MMX intrinsics are available.]) ]) - AC_CACHE_CHECK([if $CC groks MMX inline assembly], - [ac_cv_mmx_inline], - [CFLAGS="${CFLAGS_save}" - AC_TRY_COMPILE(,[void *p;asm volatile("packuswb %%mm1,%%mm2"::"r"(p));], - ac_cv_mmx_inline=yes, ac_cv_mmx_inline=no)]) + VLC_SAVE_FLAGS + CFLAGS="${CFLAGS} -mmmx" + AC_CACHE_CHECK([if $CC groks MMX inline assembly], [ac_cv_mmx_inline], [ + AC_COMPILE_IFELSE([AC_LANG_PROGRAM(,[[ +void *p; +asm volatile("packuswb %%mm1,%%mm2"::"r"(p):"mm1", "mm2"); +]]) + ], [ + ac_cv_mmx_inline=yes + ], [ + ac_cv_mmx_inline=no + ]) + ]) AS_IF([test "${ac_cv_mmx_inline}" != "no"], [ - AC_DEFINE(CAN_COMPILE_MMX, 1, - [Define to 1 inline MMX assembly is available.]) + AC_DEFINE(CAN_COMPILE_MMX, 1, [Define to 1 inline MMX assembly is available.]) have_mmx="yes" ]) AC_CACHE_CHECK([if $CC groks MMX EXT inline assembly], - [ac_cv_mmxext_inline], - [CFLAGS="${CFLAGS_save}" - AC_TRY_COMPILE(,[void *p;asm volatile("maskmovq %%mm1,%%mm2"::"r"(p));], - ac_cv_mmxext_inline=yes, ac_cv_mmxext_inline=no)]) + [ac_cv_mmxext_inline], [ + AC_COMPILE_IFELSE([AC_LANG_PROGRAM(,[[ +void *p; +asm volatile("maskmovq %%mm1,%%mm2"::"r"(p):"mm1", "mm2"); +]]) + ], [ + ac_cv_mmxext_inline=yes + ], [ + ac_cv_mmxext_inline=no + ]) + ]) + VLC_RESTORE_FLAGS AS_IF([test "${ac_cv_mmxext_inline}" != "no"], [ - AC_DEFINE(CAN_COMPILE_MMXEXT, 1, - [Define to 1 if MMX EXT inline assembly is available.]) + AC_DEFINE(CAN_COMPILE_MMXEXT, 1, [Define to 1 if MMX EXT inline assembly is available.]) have_mmxext="yes" ]) ]) @@ -1262,106 +1185,164 @@ have_sse2="no" AS_IF([test "${enable_sse}" != "no"], [ ARCH="${ARCH} sse sse2" - AC_CACHE_CHECK([if $CC groks SSE2 intrinsics], - [ac_cv_c_sse2_intrinsics], - [CFLAGS="${CFLAGS_save} -O -msse2" - AC_TRY_COMPILE([#include - #include - uint64_t frobzor;], - [__m128i a, b, c; - a = b = c = _mm_set1_epi64((__m64)frobzor); - a = _mm_slli_epi16(a, 3); - a = _mm_adds_epi16(a, b); - c = _mm_srli_epi16(c, 8); - c = _mm_slli_epi16(c, 3); - b = _mm_adds_epi16(b, c); - a = _mm_unpacklo_epi8(a, b); - frobzor = (uint64_t)_mm_movepi64_pi64(a);], - [ac_cv_c_sse2_intrinsics=yes], - [ac_cv_c_sse2_intrinsics=no])]) + VLC_SAVE_FLAGS + CFLAGS="${CFLAGS} -msse2" + AC_CACHE_CHECK([if $CC groks SSE2 intrinsics], [ac_cv_c_sse2_intrinsics], [ + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([ +[#include +#include +uint64_t frobzor;]], [ +[__m128i a, b, c; +a = b = c = _mm_set1_epi64((__m64)frobzor); +a = _mm_slli_epi16(a, 3); +a = _mm_adds_epi16(a, b); +c = _mm_srli_epi16(c, 8); +c = _mm_slli_epi16(c, 3); +b = _mm_adds_epi16(b, c); +a = _mm_unpacklo_epi8(a, b); +frobzor = (uint64_t)_mm_movepi64_pi64(a);]])], [ + ac_cv_c_sse2_intrinsics=yes + ], [ + ac_cv_c_sse2_intrinsics=no + ]) + ]) + VLC_RESTORE_FLAGS AS_IF([test "${ac_cv_c_sse2_intrinsics}" != "no"], [ - AC_DEFINE(HAVE_SSE2_INTRINSICS, 1, - [Define to 1 if SSE2 intrinsics are available.]) + AC_DEFINE(HAVE_SSE2_INTRINSICS, 1, [Define to 1 if SSE2 intrinsics are available.]) + ]) + + VLC_SAVE_FLAGS + CFLAGS="${CFLAGS} -msse" + AC_CACHE_CHECK([if $CC groks SSE inline assembly], [ac_cv_sse_inline], [ + AC_COMPILE_IFELSE([AC_LANG_PROGRAM(,[[ +void *p; +asm volatile("xorps %%xmm1,%%xmm2"::"r"(p):"xmm1", "xmm2"); +]]) + ], [ + ac_cv_sse_inline=yes + ], [ + ac_cv_sse_inline=no + ]) ]) - AC_CACHE_CHECK([if $CC groks SSE inline assembly], - [ac_cv_sse_inline], - [CFLAGS="${CFLAGS_save}" - AC_TRY_COMPILE(,[void *p;asm volatile("xorps %%xmm1,%%xmm2"::"r"(p));], - ac_cv_sse_inline=yes, ac_cv_sse_inline=no)]) AS_IF([test "${ac_cv_sse_inline}" != "no" -a "${SYS}" != "solaris"], [ - AC_DEFINE(CAN_COMPILE_SSE, 1, - [Define to 1 if SSE inline assembly is available.]) + AC_DEFINE(CAN_COMPILE_SSE, 1, [Define to 1 if SSE inline assembly is available.]) ]) - AC_CACHE_CHECK([if $CC groks SSE2 inline assembly], - [ac_cv_sse2_inline], - [CFLAGS="${CFLAGS_save}" - AC_TRY_COMPILE(,[void *p;asm volatile("punpckhqdq %%xmm1,%%xmm2"::"r"(p));], - ac_cv_sse2_inline=yes, ac_cv_sse2_inline=no)]) + AC_CACHE_CHECK([if $CC groks SSE2 inline assembly], [ac_cv_sse2_inline], [ + AC_COMPILE_IFELSE([AC_LANG_PROGRAM(,[[ +void *p; +asm volatile("punpckhqdq %%xmm1,%%xmm2"::"r"(p):"xmm1", "xmm2"); +]]) + ], [ + ac_cv_sse2_inline=yes + ], [ + ac_cv_sse2_inline=no + ]) + ]) AS_IF([test "${ac_cv_sse2_inline}" != "no" -a "${SYS}" != "solaris"], [ - AC_DEFINE(CAN_COMPILE_SSE2, 1, - [Define to 1 if SSE2 inline assembly is available.]) + AC_DEFINE(CAN_COMPILE_SSE2, 1, [Define to 1 if SSE2 inline assembly is available.]) have_sse2="yes" ]) # SSE3 - AC_CACHE_CHECK([if $CC groks SSE3 inline assembly], - [ac_cv_sse3_inline], - [CFLAGS="${CFLAGS_save}" - AC_TRY_COMPILE(,[void *p;asm volatile("movsldup %%xmm1,%%xmm0"::"r"(p));], - ac_cv_sse3_inline=yes, ac_cv_sse3_inline=no)]) + AC_CACHE_CHECK([if $CC groks SSE3 inline assembly], [ac_cv_sse3_inline], [ + AC_COMPILE_IFELSE([AC_LANG_PROGRAM(,[[ +void *p; +asm volatile("movsldup %%xmm1,%%xmm0"::"r"(p):"xmm0", "xmm1"); +]]) + ], [ + ac_cv_sse3_inline=yes + ], [ + ac_cv_sse3_inline=no + ]) + ]) + AS_IF([test "${ac_cv_sse3_inline}" != "no"], [ - AC_DEFINE(CAN_COMPILE_SSE3, 1, - [Define to 1 if SSE3 inline assembly is available.]) ]) + AC_DEFINE(CAN_COMPILE_SSE3, 1, [Define to 1 if SSE3 inline assembly is available.]) ]) # SSSE3 - AC_CACHE_CHECK([if $CC groks SSSE3 inline assembly], - [ac_cv_ssse3_inline], - [CFLAGS="${CFLAGS_save}" - AC_TRY_COMPILE(,[void *p;asm volatile("pabsw %%xmm0,%%xmm0"::"r"(p));], - ac_cv_ssse3_inline=yes, ac_cv_ssse3_inline=no)]) + AC_CACHE_CHECK([if $CC groks SSSE3 inline assembly], [ac_cv_ssse3_inline], [ + AC_COMPILE_IFELSE([AC_LANG_PROGRAM(,[[ +void *p; +asm volatile("pabsw %%xmm0,%%xmm0"::"r"(p):"xmm0"); +]]) + ], [ + ac_cv_ssse3_inline=yes + ], [ + ac_cv_ssse3_inline=no + ]) + ]) + AS_IF([test "${ac_cv_ssse3_inline}" != "no"], [ - AC_DEFINE(CAN_COMPILE_SSSE3, 1, - [Define to 1 if SSSE3 inline assembly is available.]) ]) + AC_DEFINE(CAN_COMPILE_SSSE3, 1, [Define to 1 if SSSE3 inline assembly is available.]) ]) # SSE4.1 AC_CACHE_CHECK([if $CC groks SSE4.1 inline assembly], - [ac_cv_sse4_1_inline], - [CFLAGS="${CFLAGS_save}" - AC_TRY_COMPILE(,[void *p;asm volatile("pmaxsb %%xmm1,%%xmm0"::"r"(p));], - ac_cv_sse4_1_inline=yes, ac_cv_sse4_1_inline=no)]) + [ac_cv_sse4_1_inline], [ + AC_COMPILE_IFELSE([AC_LANG_PROGRAM(,[[ +void *p; +asm volatile("pmaxsb %%xmm1,%%xmm0"::"r"(p):"xmm0", "xmm1"); +]]) + ], [ + ac_cv_sse4_1_inline=yes + ], [ + ac_cv_sse4_1_inline=no + ]) + ]) + AS_IF([test "${ac_cv_sse4_1_inline}" != "no"], [ - AC_DEFINE(CAN_COMPILE_SSE4_1, 1, - [Define to 1 if SSE4_1 inline assembly is available.]) ]) + AC_DEFINE(CAN_COMPILE_SSE4_1, 1, [Define to 1 if SSE4_1 inline assembly is available.]) ]) # SSE4.2 AC_CACHE_CHECK([if $CC groks SSE4.2 inline assembly], - [ac_cv_sse4_2_inline], - [CFLAGS="${CFLAGS_save}" - AC_TRY_COMPILE(,[void *p;asm volatile("pcmpgtq %%xmm1,%%xmm0"::"r"(p));], - ac_cv_sse4_2_inline=yes, ac_cv_sse4_2_inline=no)]) + [ac_cv_sse4_2_inline], [ + AC_COMPILE_IFELSE([AC_LANG_PROGRAM(,[[ +void *p; +asm volatile("pcmpgtq %%xmm1,%%xmm0"::"r"(p):"xmm0", "xmm1"); +]]) + ], [ + ac_cv_sse4_2_inline=yes + ], [ + ac_cv_sse4_2_inline=no + ]) + ]) + AS_IF([test "${ac_cv_sse4_2_inline}" != "no"], [ - AC_DEFINE(CAN_COMPILE_SSE4_2, 1, - [Define to 1 if SSE4_2 inline assembly is available.]) ]) + AC_DEFINE(CAN_COMPILE_SSE4_2, 1, [Define to 1 if SSE4_2 inline assembly is available.]) ]) # SSE4A - AC_CACHE_CHECK([if $CC groks SSE4A inline assembly], - [ac_cv_sse4a_inline], - [CFLAGS="${CFLAGS_save}" - AC_TRY_COMPILE(,[void *p;asm volatile("insertq %%xmm1,%%xmm0"::"r"(p));], - ac_cv_sse4a_inline=yes, ac_cv_sse4a_inline=no)]) + AC_CACHE_CHECK([if $CC groks SSE4A inline assembly], [ac_cv_sse4a_inline], [ + AC_COMPILE_IFELSE([AC_LANG_PROGRAM(,[[ +void *p; +asm volatile("insertq %%xmm1,%%xmm0"::"r"(p):"xmm0", "xmm1"); +]]) + ], [ + ac_cv_sse4a_inline=yes + ], [ + ac_cv_sse4a_inline=no + ]) + ]) + VLC_RESTORE_FLAGS AS_IF([test "${ac_cv_sse4a_inline}" != "no"], [ - AC_DEFINE(CAN_COMPILE_SSE4A, 1, - [Define to 1 if SSE4A inline assembly is available.]) ]) + AC_DEFINE(CAN_COMPILE_SSE4A, 1, [Define to 1 if SSE4A inline assembly is available.]) ]) ]) AM_CONDITIONAL([HAVE_SSE2], [test "$have_sse2" = "yes"]) +VLC_SAVE_FLAGS +CFLAGS="${CFLAGS} -mmmx" have_3dnow="no" -AC_CACHE_CHECK([if $CC groks 3D Now! inline assembly], - [ac_cv_3dnow_inline], - [CFLAGS="${CFLAGS_save}" - AC_TRY_COMPILE(,[void *p;asm volatile("pfadd %%mm1,%%mm2"::"r"(p));], - ac_cv_3dnow_inline=yes, ac_cv_3dnow_inline=no)]) +AC_CACHE_CHECK([if $CC groks 3D Now! inline assembly], [ac_cv_3dnow_inline], [ + AC_COMPILE_IFELSE([AC_LANG_PROGRAM(,[[ +void *p; +asm volatile("pfadd %%mm1,%%mm2"::"r"(p):"mm1", "mm2"); +]]) + ], [ + ac_cv_3dnow_inline=yes + ], [ + ac_cv_3dnow_inline=no + ]) +]) +VLC_RESTORE_FLAGS AS_IF([test "${ac_cv_3dnow_inline}" != "no"], [ AC_DEFINE(CAN_COMPILE_3DNOW, 1, [Define to 1 if 3D Now! inline assembly is available.]) @@ -1376,8 +1357,9 @@ AC_ARG_ENABLE(neon, AS_IF([test "${host_cpu}" = "arm"], [enable_neon="yes"] ,[enable_neon="no"]) ]) AS_IF([test "${enable_neon}" != "no"], [ + VLC_SAVE_FLAGS + CFLAGS="${CFLAGS} -mfpu=neon" AC_CACHE_CHECK([if $CC groks NEON inline assembly], [ac_cv_neon_inline], [ - CFLAGS="${CFLAGS_save} -mfpu=neon" AC_COMPILE_IFELSE([ AC_LANG_PROGRAM(,[[ asm volatile("vqmovun.s64 d0, q1":::"d0"); @@ -1388,12 +1370,11 @@ asm volatile("ssat r0, #1, r0":::"r0"); /* assume ARMv6 */ ], [ ac_cv_neon_inline="no" ]) - CFLAGS="${CFLAGS_save}" ]) + VLC_RESTORE_FLAGS AS_IF([test "$ac_cv_neon_inline" != "no"], [ NEON_CFLAGS="$ac_cv_neon_inline" - AC_DEFINE([CAN_COMPILE_NEON], 1, - [Define to 1 if NEON (and ARMv6) assembly is available with NEON_CFLAGS.]) + AC_DEFINE([CAN_COMPILE_NEON], 1, [Define to 1 if NEON (and ARMv6) assembly is available with NEON_CFLAGS.]) ]) ], [ ac_cv_neon_inline="no" @@ -1411,16 +1392,17 @@ AC_ARG_ENABLE(altivec, have_altivec="no" AS_IF([test "${enable_altivec}" = "yes"], [ ARCH="${ARCH} altivec"; + VLC_SAVE_FLAGS AC_CACHE_CHECK([if $CC groks AltiVec inline assembly], [ac_cv_altivec_inline], - [CFLAGS="${CFLAGS_save}" - AC_TRY_COMPILE(,[asm volatile("vperm 0,1,2,3");], + [AC_TRY_COMPILE(,[asm volatile("vperm 0,1,2,3");], ac_cv_altivec_inline="yes", - [CFLAGS="${CFLAGS_save} -Wa,-m7400" + [CFLAGS="${CFLAGS} -Wa,-m7400" AC_TRY_COMPILE(,[asm volatile("vperm 0,1,2,3");], [ac_cv_altivec_inline="-Wa,-m7400"], ac_cv_altivec_inline=no) ])]) + VLC_RESTORE_FLAGS AS_IF([test "${ac_cv_altivec_inline}" != "no"], [ AC_DEFINE(CAN_COMPILE_ALTIVEC, 1, [Define to 1 if AltiVec inline assembly is available.]) @@ -1442,32 +1424,33 @@ dnl - Linux PPC, gcc 3.4, 4.x: need which requires -maltivec dnl - Linux PPC, gcc 3.3: need and -maltivec -mabi=altivec dnl - Linux PPC, gcc 3.x: need and -fvec dnl - Others: test should fail + VLC_SAVE_FLAGS AC_CACHE_CHECK([if \$CC groks AltiVec C extensions], [ac_cv_c_altivec], [# OS X/PPC test (gcc 4.x) - CFLAGS="${CFLAGS_save} -mpim-altivec -force_cpusubtype_ALL" + CFLAGS="${CFLAGS} -mpim-altivec -force_cpusubtype_ALL" AC_TRY_COMPILE([vector unsigned char foo;], [vec_ld(0, (unsigned char *)0);], [ac_cv_c_altivec="-mpim-altivec -force_cpusubtype_ALL"], [# OS X/PPC test (gcc 3.x) - CFLAGS="${CFLAGS_save} -faltivec" + CFLAGS="${CFLAGS} -faltivec" AC_TRY_COMPILE([vector unsigned char foo;], [vec_ld(1 * sizeof(vector float), (unsigned char *)0);], [ac_cv_c_altivec="-faltivec"], dnl Below this are the Linux tests [# Linux/PPC test (gcc 4.x) - CFLAGS="${CFLAGS_save} -maltivec" + CFLAGS="${CFLAGS} -maltivec" AC_TRY_COMPILE([#include ], [vec_ld(0, (unsigned char *)0);], [ac_cv_c_altivec="-maltivec"], [# Linux/PPC test (gcc 3.3) - CFLAGS="${CFLAGS_save} -maltivec -mabi=altivec" + CFLAGS="${CFLAGS} -maltivec -mabi=altivec" AC_TRY_COMPILE([#include ], [vec_ld(0, (unsigned char *)0);], [ac_cv_c_altivec="" ac_cv_c_altivec_abi="-maltivec -mabi=altivec"], [# Linux/PPC test (gcc 3.3) - CFLAGS="${CFLAGS_save} -fvec" + CFLAGS="${CFLAGS} -fvec" AC_TRY_COMPILE([#include ], [vec_ld(0, (unsigned char *)0);], [ac_cv_c_altivec="-fvec"], @@ -1476,75 +1459,30 @@ dnl - Others: test should fail ]) ]) ]) - CFLAGS="${CFLAGS_save}" ]) - AS_IF([test "${ac_cv_c_altivec}" != "no"], [ - CPPFLAGS="${CPPFLAGS_save} ${ac_cv_c_altivec}" - ]) - - AC_CHECK_HEADERS(altivec.h) - CPPFLAGS="${CPPFLAGS_save}" + VLC_RESTORE_FLAGS AS_IF([test "${ac_cv_c_altivec}" != "no"], [ - AC_DEFINE(CAN_COMPILE_C_ALTIVEC, 1, - [Define to 1 if C AltiVec extensions are available.]) + CPPFLAGS="${CPPFLAGS} ${ac_cv_c_altivec}" + AC_DEFINE(CAN_COMPILE_C_ALTIVEC, 1, [Define to 1 if C AltiVec extensions are available.]) VLC_ADD_CFLAGS([libvlccore],[${ac_cv_c_altivec}]) VLC_ADD_CFLAGS([i420_yuy2_altivec memcpyaltivec deinterlace],[${ac_cv_c_altivec} ${ac_cv_c_altivec_abi}]) have_altivec="yes" ]) + AC_CHECK_HEADERS(altivec.h) + VLC_SAVE_FLAGS + LDFLAGS="${LDFLAGS} -Wl,-framework,vecLib" AC_CACHE_CHECK([if linker needs -framework vecLib], [ac_cv_ld_altivec], - [LDFLAGS="${LDFLAGS_vlc} -Wl,-framework,vecLib" - AC_TRY_LINK([],,ac_cv_ld_altivec=yes,ac_cv_ld_altivec=no) - LDFLAGS="${LDFLAGS_save}" - ]) + [AC_TRY_LINK([],,ac_cv_ld_altivec=yes,ac_cv_ld_altivec=no)]) + VLC_RESTORE_FLAGS AS_IF([test "${ac_cv_ld_altivec}" != "no"], [ VLC_ADD_LIBS([libvlccore memcpyaltivec],[-Wl,-framework,vecLib]) ]) ]) AM_CONDITIONAL([HAVE_ALTIVEC], [test "$have_altivec" = "yes"]) -dnl -dnl Special arch tuning -dnl -AC_ARG_WITH(tuning, - [AS_HELP_STRING([--with-tuning=ARCH], - [tune compilation for an architecture (default varies)])]) -if test -n "${with_tuning}"; then - if test "${with_tuning}" != "no"; then - CFLAGS_TUNING="-mtune=${with_tuning}" - fi -else - if test "${SYS}" = "darwin" -a "${host_cpu}" = "i686"; then - CFLAGS_TUNING="-march=prescott -mtune=generic" - elif test "${SYS}" = "darwin" -a "${host_cpu}" = "x86_64"; then - CFLAGS_TUNING="-march=core2 -mtune=core2" - elif test "${host_cpu}" = "i686" -o "${host_cpu}" = "i586" -o "${host_cpu}" = "i486" -o "${host_cpu}" = "i386"; then - CFLAGS_TUNING="-mtune=pentium2" - elif test "${host_cpu}" = "x86_64"; then - CFLAGS_TUNING="-mtune=athlon64" - elif test "${host_cpu}" = "powerpc"; then - CFLAGS_TUNING="-mtune=G4"; - fi -fi - -dnl NOTE: this can't be cached cleanly -AS_IF([test "${CFLAGS_TUNING}"], - [CFLAGS_save="${CFLAGS}" - CFLAGS="${CFLAGS} ${CFLAGS_TUNING}" - - AC_MSG_CHECKING([whether $CC accepts ${CFLAGS_TUNING}]) - AC_COMPILE_IFELSE([AC_LANG_SOURCE([])], - [tuning="yes"], - [CFLAGS_TUNING=""; tuning="no" - AS_IF([test "${with_tuning}"], - [AC_MSG_ERROR([requested tuning not supported])])]) - - AC_MSG_RESULT([$tuning]) - CFLAGS="${CFLAGS_save}" -]) - dnl dnl Memory usage dnl @@ -1586,10 +1524,11 @@ then PKG_CHECK_MODULES(LUA, lua5.1, [ have_lua=yes ], [ - AC_MSG_WARN([lua5.1 not found, trying lua >= 5.1 instead]) + AC_MSG_WARN([${LUA_PKG_ERRORS}, trying lua >= 5.1 instead]) PKG_CHECK_MODULES(LUA, lua >= 5.1, [ have_lua=yes ], [ + AC_MSG_WARN([${LUA_PKG_ERRORS}, trying manual detection instead]) have_lua=yes AC_CHECK_HEADERS([lua.h lauxlib.h lualib.h], [], @@ -1629,7 +1568,7 @@ AC_ARG_ENABLE(httpd, [disable the built-in HTTP server (default enabled)])]) if test "${enable_httpd}" != "no" then - AC_DEFINE(ENABLE_HTTPD, 1, Define if you want the HTTP dameon support) + AC_DEFINE(ENABLE_HTTPD, 1, Define if you want the HTTP daemon support) fi AM_CONDITIONAL(BUILD_HTTPD, [test "${enable_httpd}" != "no"]) @@ -1650,22 +1589,6 @@ AS_IF([test "${enable_vlm}" != "no"], [ AM_CONDITIONAL([ENABLE_VLM], [test "${enable_vlm}" != "no"]) -dnl -dnl ipv6 support -dnl -have_ipv6=no -AC_CHECK_FUNCS(inet_pton,[have_ipv6=yes],[ - AC_CHECK_LIB(nsl,inet_pton, [have_ipv6=yes]) -]) - -AS_IF([test "${have_ipv6}" = "yes"], [ - AC_DEFINE(HAVE_INET_PTON, 1, [Define to 1 if you have inet_pton().])]) - - -AC_CHECK_FUNCS(inet_ntop,[ - AC_DEFINE(HAVE_INET_NTOP, 1, [Define to 1 if you have inet_ntop().])]) - - dnl dnl Input plugins dnl @@ -1683,8 +1606,8 @@ AS_IF([test "${enable_libproxy}" != "no"], [ VLC_ADD_CFLAGS([access_http],[$LIBPROXY_CFLAGS]) VLC_ADD_LIBS([access_http],[$LIBPROXY_LIBS]) ], [ - AS_IF([test "x${enable_libproxy}" != "x"], [ - AC_MSG_ERROR([libproxy could not be found on your system]) + AS_IF([test -n "${enable_libproxy}"], [ + AC_MSG_ERROR([${LIBPROXY_PKG_ERRORS}.]) ]) ]) ]) @@ -1695,154 +1618,89 @@ dnl AC_ARG_ENABLE(live555, [AS_HELP_STRING([--enable-live555], [enable RTSP input through live555 (default enabled)])]) -AC_ARG_WITH(live555-tree, - [AS_HELP_STRING([--with-live555-tree=PATH], - [live555 tree for static linking])]) -if test "${enable_live555}" != "no"; then - - dnl - dnl test for --with-live555-tree - dnl - if test -z "${with_live555_tree}" -a "${CXX}" != ""; then - AC_LANG_PUSH(C++) - CPPFLAGS_save="${CPPFLAGS}" - if test -z "${CONTRIB_DIR}"; then - CPPFLAGS_live555="-I/usr/include/liveMedia -I/usr/include/groupsock -I/usr/include/BasicUsageEnvironment -I/usr/include/UsageEnvironment" - else - CPPFLAGS_live555="-I${CONTRIB_DIR}/include/liveMedia -I${CONTRIB_DIR}/include/groupsock -I${CONTRIB_DIR}/include/BasicUsageEnvironment -I${CONTRIB_DIR}/include/UsageEnvironment" - fi - if test "${SYS}" = "solaris"; then - CPPFLAGS_live555="${CPPFLAGS_live555} -DSOLARIS" - fi - CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_live555}" - - AC_CHECK_HEADERS(liveMedia_version.hh, [ - AC_MSG_CHECKING(for liveMedia version >= 1275091200 ) - AC_EGREP_CPP(yes, - [#include - #ifdef LIVEMEDIA_LIBRARY_VERSION_INT - #if LIVEMEDIA_LIBRARY_VERSION_INT < 1275091200 - yes - #endif - #endif], - [AC_MSG_RESULT([no]) - AC_MSG_WARN([The installed liveMedia version is too old: -Version 2010.05.29 or later is required to proceed. +AS_IF([test "${enable_live555}" != "no" -a -n "${CXX}"], [ + AC_LANG_PUSH(C++) + VLC_SAVE_FLAGS + AS_IF([test -z "${CONTRIB_DIR}"], [ + CPPFLAGS_live555="-I/usr/include/liveMedia -I/usr/include/groupsock -I/usr/include/BasicUsageEnvironment -I/usr/include/UsageEnvironment" + ], [ + CPPFLAGS_live555="-I${CONTRIB_DIR}/include/liveMedia -I${CONTRIB_DIR}/include/groupsock -I${CONTRIB_DIR}/include/BasicUsageEnvironment -I${CONTRIB_DIR}/include/UsageEnvironment" + ]) + AS_IF([test "${SYS}" = "solaris"], [ + CPPFLAGS_live555="${CPPFLAGS_live555} -DSOLARIS" + ]) + CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_live555}" + + AC_CACHE_CHECK([for live555 version 1324598400 or later], [ac_cv_live555], [ + AC_PREPROC_IFELSE([AC_LANG_PROGRAM([ +[#include +#if !defined (LIVEMEDIA_LIBRARY_VERSION_INT) || (LIVEMEDIA_LIBRARY_VERSION_INT < 1324598400) +# error BOOM +#endif]]) + ], [ + ac_cv_live555="yes" + ], [ + ac_cv_live555="no" + ]) + ]) + AS_IF([test "$ac_cv_live555" = "no"], [ + AC_MSG_WARN([liveMedia is missing or its installed version is too old: +Version 2011.12.23 or later is required to proceed. You can get an updated one from http://www.live555.com/liveMedia .]) - AS_IF([test "${enable_live555}" = "yes"], [ - AC_MSG_ERROR([Update live555 or pass --disable-live555 to disable the plugin.]) - ]) - ],[ - AC_MSG_RESULT([yes]) - other_libs="-lgroupsock -lBasicUsageEnvironment -lUsageEnvironment" - other_libs_pic="-lgroupsock_pic -lBasicUsageEnvironment_pic -lUsageEnvironment_pic" - if test "${SYS}" = "mingw32"; then - # add ws2_32 for closesocket, select, recv - other_libs="$other_libs -lws2_32" - elif test "${SYS}" = "mingwce"; then - # add ws2 for closesocket, select, recv - other_libs="$other_libs -lws2" - fi - - dnl We need to check for pic because live555 don't provide shared libs - dnl and we want to build a plugins so we need -fPIC on some arch. - VLC_ADD_CXXFLAGS([live555], [${CPPFLAGS_live555}]) - AC_CHECK_LIB(liveMedia_pic, main, [ - VLC_ADD_PLUGIN([live555]) - VLC_ADD_LIBS([live555], [-lliveMedia_pic ${other_libs_pic}]) - ],[ - AC_CHECK_LIB(liveMedia, main, [ - VLC_ADD_PLUGIN([live555]) - VLC_ADD_LIBS([live555], [-lliveMedia ${other_libs}]) - ],[],[${other_libs}]) ],[${other_libs_pic}]) - - CPPFLAGS="${CPPFLAGS_save}" - AC_LANG_POP(C++) - ]) - ]) - else - AC_MSG_CHECKING(for liveMedia/libliveMedia.a in ${with_live555_tree}) - real_live555_tree="`cd ${with_live555_tree} 2>/dev/null && pwd`" - if test -z "${real_live555_tree}"; then - dnl The given directory can't be found - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot cd to ${with_live555_tree}]) - fi - if test -f "${real_live555_tree}/liveMedia/libliveMedia.a"; then - AC_MSG_RESULT(${real_live555_tree}/liveMedia/libliveMedia.a) - - AC_CHECK_HEADERS(${real_live555_tree}/liveMedia/include/liveMedia_version.hh,[ - AC_MSG_CHECKING(for liveMedia version >= 1275091200 ) - AC_EGREP_CPP(yes, - [#include "${real_live555_tree}/liveMedia/include/liveMedia_version.hh" - #ifdef LIVEMEDIA_LIBRARY_VERSION_INT - #if LIVEMEDIA_LIBRARY_VERSION_INT < 1275091200 - yes - #endif - #endif], - [AC_MSG_RESULT([no]) - AC_MSG_ERROR([Your version of liveMedia is too old: you may get a more recent one from http://www.live555.com/liveMedia. -lternatively you can use --disable-live555 to disable the liveMedia plugin.]) - ],[ - AC_MSG_RESULT([yes]) - ]) - ]) + AS_IF([test -n "${enable_live555}"], [ + AC_MSG_ERROR([Update live555 or pass --disable-live555 to disable RTSP input support.]) + ]) + ], [ + other_libs="-lgroupsock -lBasicUsageEnvironment -lUsageEnvironment" + other_libs_pic="-lgroupsock_pic -lBasicUsageEnvironment_pic -lUsageEnvironment_pic" + AS_IF([test "${SYS}" = "mingw32"], [ + # add ws2_32 for closesocket, select, recv + other_libs="$other_libs -lws2_32" + ], [test "${SYS}" = "mingwce"], [ + # add ws2 for closesocket, select, recv + other_libs="$other_libs -lws2" + ]) + dnl We need to check for pic because live555 don't provide shared libs + dnl and we want to build a plugins so we need -fPIC on some arch. + VLC_ADD_CXXFLAGS([live555], [${CPPFLAGS_live555}]) + AC_CHECK_LIB(liveMedia_pic, main, [ VLC_ADD_PLUGIN([live555]) - - if test "${SYS}" = "mingw32"; then - # add ws2_32 for closesocket, select, recv - VLC_ADD_LIBS([live555],[-lws2_32]) - fi - - VLC_ADD_LIBS([live555],[-L${real_live555_tree}/UsageEnvironment -lUsageEnvironment]) - VLC_ADD_LIBS([live555],[-L${real_live555_tree}/BasicUsageEnvironment -lBasicUsageEnvironment]) - VLC_ADD_LIBS([live555],[-L${real_live555_tree}/groupsock -lgroupsock]) - VLC_ADD_LIBS([live555],[-L${real_live555_tree}/liveMedia -lliveMedia]) - - VLC_ADD_CXXFLAGS([live555],[-I${real_live555_tree}/BasicUsageEnvironment/include]) - VLC_ADD_CXXFLAGS([live555],[-I${real_live555_tree}/groupsock/include]) - VLC_ADD_CXXFLAGS([live555],[-I${real_live555_tree}/liveMedia/include]) - VLC_ADD_CXXFLAGS([live555],[-I${real_live555_tree}/UsageEnvironment/include ]) - if test "${SYS}" = "solaris"; then - VLC_ADD_CXXFLAGS([live555],[-DSOLARIS]) - fi - else - dnl The given live555 wasn't built - AC_MSG_RESULT(no) - if test "${enable_live555}" = "yes"; then - AC_MSG_ERROR([cannot find ${real_live555_tree}/liveMedia/libliveMedia.a, make sure you compiled live555 in ${with_live555_tree}]) - fi - fi - fi -fi + VLC_ADD_LIBS([live555], [-lliveMedia_pic ${other_libs_pic}]) + ],[ + AC_CHECK_LIB(liveMedia, main, [ + VLC_ADD_PLUGIN([live555]) + VLC_ADD_LIBS([live555], [-lliveMedia ${other_libs}]) + ],[],[${other_libs}])],[${other_libs_pic}]) + ]) + VLC_RESTORE_FLAGS + AC_LANG_POP(C++) +]) dnl dnl - special access module for dc1394 input dnl - dv module: digital video module check for libraw1394 dnl - linsys modules: access module check for libzvbi dnl -PKG_ENABLE_MODULES_VLC([DC1394], [], [libraw1394 >= 2.0.1 libdc1394-2 >= 2.1.0], [dc1394 access module], [auto]) -PKG_ENABLE_MODULES_VLC([DV], [access_dv], [libraw1394 >= 2.0.1 libavc1394 >= 0.5.3], [DV input module], [auto]) +PKG_ENABLE_MODULES_VLC([DC1394], [], [libdc1394-2 >= 2.1.0], [IIDC FireWire input module], [auto]) +PKG_ENABLE_MODULES_VLC([DV1394], [], [libraw1394 >= 2.0.1 libavc1394 >= 0.5.3], [DV FireWire input module], [auto]) AC_ARG_ENABLE(linsys, [AS_HELP_STRING([--enable-linsys], [Linux Linear Systems Ltd. SDI and HD-SDI input cards (default enabled)])]) if test "$SYS" = "linux" -a "${enable_linsys}" != "no"; then VLC_ADD_PLUGIN([linsys_hdsdi]) - PKG_CHECK_MODULES(LINSYS_SDI, zvbi-0.2 >= 0.2.28, + PKG_CHECK_MODULES(LINSYS_SDI, [zvbi-0.2 >= 0.2.28], [ VLC_ADD_LIBS([linsys_sdi],[$LINSYS_SDI_LIBS]) VLC_ADD_CFLAGS([linsys_sdi],[$LINSYS_SDI_CFLAGS]) VLC_ADD_PLUGIN([linsys_sdi]) ], - [AC_MSG_WARN([Could not find zvbi >= 0.2.28, install libzvbi-dev ?])] + [AC_MSG_WARN([${LINSYS_SDI_PKG_ERRORS}.])] ) fi dnl dnl dvdread module: check for libdvdread dnl -dnl prepend -ldvdcss on OS that need it -AS_CASE(["${SYS}"], [mingw32|darwin], [VLC_ADD_LIBS([dvdread], [-ldvdcss])]) PKG_ENABLE_MODULES_VLC([DVDREAD], [], [dvdread], [dvdread input module], [auto]) dnl @@ -1853,9 +1711,6 @@ AC_ARG_ENABLE(dvdnav, [disable DVD navigation with libdvdnav (default auto)])]) if test "${enable_dvdnav}" != "no" then - dnl prepend -ldvdcss on OS that need it - AS_CASE(["${SYS}"], [mingw32|darwin], [VLC_ADD_LIBS([dvdnav], [-ldvdcss])]) - PKG_CHECK_MODULES(DVDNAV, dvdnav, [ VLC_ADD_PLUGIN([dvdnav]) VLC_ADD_CFLAGS([dvdnav],[${DVDNAV_CFLAGS}]) @@ -1866,7 +1721,7 @@ then AC_CHECK_LIB(dvdnav, dvdnav_describe_title_chapters, AC_DEFINE(HAVE_DVDNAV_DESCRIBE_TITLE_CHAPTERS, 1, [Define if you have dvdnav_describe_title_chapters.]), [], [${LIBS_dvdnav}])], - [AC_MSG_WARN(dvdnav library not found)]) + [AC_MSG_WARN([${DVDNAV_PKG_ERRORS}.])]) fi dnl @@ -1883,7 +1738,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 @@ -1891,7 +1746,7 @@ fi dnl dnl Blu-ray Disc Support with libbluray dnl -PKG_ENABLE_MODULES_VLC([BLURAY], [libbluray], [libbluray >= 0.2 libxml-2.0 >= 2.6 ], (libbluray for Blu-ray disc support ) ) +PKG_ENABLE_MODULES_VLC([BLURAY], [libbluray], [libbluray >= 0.2.1], (libbluray for Blu-ray disc support ) ) dnl dnl OpenCV wrapper and example filters @@ -1930,22 +1785,25 @@ fi dnl dnl Video4Linux 2 dnl -AC_ARG_ENABLE(libv4l2, [AS_HELP_STRING([--disable-libv4l2], - [disable userspace V4L2 library (default auto)])]) +AC_ARG_ENABLE(v4l2, [AS_HELP_STRING([--disable-v4l2], + [disable Video4Linux version 2 (default auto)])]) AC_ARG_ENABLE(pvr, [AS_HELP_STRING([--enable-pvr], [support PVR V4L2 cards (default disabled)])]) have_v4l2="no" -AC_CHECK_HEADERS([linux/videodev2.h sys/videoio.h], [ - have_v4l2="yes" +AS_IF([test "$enable_v4l2" != "no"], [ + AC_CHECK_HEADERS([linux/videodev2.h sys/videoio.h], [ + have_v4l2="yes" + ]) + AC_CHECK_DECLS([V4L2_CTRL_TYPE_BITMASK],,, [ +#ifdef HAVE_LINUX_VIDEODEV2_H +# include +#endif +#ifdef HAVE_SYS_VIDEOIO_H +# include +#endif + ]) ]) AS_IF([test "$have_v4l2" = "yes"], [ - AS_IF([test "${enable_libv4l2}" != "no"], [ - 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]) ]) @@ -1967,13 +1825,14 @@ then then VLC_ADD_CPPFLAGS([decklink],[-I${with_decklink_sdk}/include]) fi - CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_decklink}" + VLC_SAVE_FLAGS + CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_decklink}" AC_LANG_PUSH(C++) AC_CHECK_HEADERS(DeckLinkAPIDispatch.cpp, [ VLC_ADD_PLUGIN([decklink]) ],[AC_MSG_WARN(Blackmagic DeckLink SDI include files not found, decklink disabled)]) AC_LANG_POP(C++) - CPPFLAGS="${CPPFLAGS_save}" + VLC_RESTORE_FLAGS fi @@ -1993,12 +1852,12 @@ then PKG_CHECK_MODULES(LIBCDIO, [libcdio >= 0.78.2 libiso9660 >= 0.72], [VLC_ADD_LIBS([vcdx],[$LIBCDIO_LIBS]) VLC_ADD_CFLAGS([vcdx],[$LIBCDIO_CFLAGS])], - [AC_MSG_ERROR([vcdx plugin requires libcdio >= 0.78.2 and libiso9660 >= 0.72])]) + [AC_MSG_ERROR([${LIBCDIO_PKG_ERRORS} (required for vcdx plugin).])]) PKG_CHECK_MODULES(LIBVCDINFO, libvcdinfo >= 0.7.22, [VLC_ADD_LIBS([vcdx],[$LIBVCDINFO_LIBS]) VLC_ADD_CFLAGS([vcdx],[$LIBVCDINFO_CFLAGS])], - [AC_MSG_ERROR([vcdx plugin requires libvcdinfo library >= 0.7.22])]) - VLC_ADD_PLUGIN([vcdx]) + [AC_MSG_ERROR([${LIBVCDINFO_PKG_ERRORS} (required for vcdx plugin).])]) + VLC_ADD_PLUGIN([vcdx]) fi dnl @@ -2040,7 +1899,7 @@ then AC_MSG_RESULT(no) ]) - if test "${SYS}" = "bsdi" -o "${SYS}" = "mingw32" + if test "${SYS}" = "bsdi" -o "${SYS}" = "mingw32" -o "${SYS}" = "os2" then VLC_ADD_PLUGIN([vcd cdda]) fi @@ -2053,13 +1912,13 @@ then fi if test "$enable_libcddb" != "no"; then - PKG_CHECK_MODULES(LIBCDDB, libcddb >= 0.9.5, [ + PKG_CHECK_MODULES(LIBCDDB, [libcddb >= 0.9.5], [ HAVE_LIBCDDB=yes AC_DEFINE(HAVE_LIBCDDB, 1, [Define this if you have libcddb installed]) VLC_ADD_LIBS([cdda],[$LIBCDDB_LIBS]) VLC_ADD_CFLAGS([cdda],[$LIBCDDB_CFLAGS]) ],: - [AC_MSG_WARN(new enough libcddb not found. CDDB access disabled) + [AC_MSG_WARN([${LIBCDDB_PKG_ERRORS}: CDDB access disabled.]) HAVE_LIBCDDB=no]) fi fi @@ -2067,17 +1926,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 @@ -2096,8 +1959,6 @@ if test "${enable_screen}" != "no"; then elif test "${SYS}" = "mingw32"; then VLC_ADD_PLUGIN([screen]) VLC_ADD_LIBS([screen],[-lgdi32]) - elif test "${SYS}" = "mingwce"; then - CPPFLAGS="${CPPFLAGS_save}" fi fi @@ -2122,19 +1983,16 @@ then fi dnl -dnl QTCapture -AC_ARG_ENABLE(macosx-qtcapture, - [ --enable-macosx-qtcapture Mac OS X qtcapture (iSight) module (default enabled on Mac OS X)]) -if test "x${enable_macosx_qtcapture}" != "xno" && - (test "${SYS}" = "darwin" || test "${enable_macosx_qtcapture}" = "yes") +dnl QTKit +AC_ARG_ENABLE(macosx-qtkit, + [ --enable-macosx-qtkit Mac OS X qtcapture (video) and qtsound (audio) module (default enabled on Mac OS X)]) +if test "x${enable_macosx_qtkit}" != "xno" && + (test "${SYS}" = "darwin" || test "${enable_macosx_qtkit}" = "yes") then - VLC_ADD_LIBS([qtcapture], [-Wl,-framework,Cocoa]) - VLC_ADD_LIBS([qtcapture], [-Wl,-framework,QTKit]) - VLC_ADD_LIBS([qtcapture], [-Wl,-framework,CoreAudio]) - VLC_ADD_LIBS([qtcapture], [-Wl,-framework,QuartzCore]) - VLC_ADD_LIBS([qtcapture], [-Wl,-framework,CoreVideo]) VLC_ADD_PLUGIN([qtcapture]) + VLC_ADD_PLUGIN([qtsound]) fi +AM_CONDITIONAL(HAVE_QTKIT, [test "${SYS}" = "darwin" -a "x${enable_macosx_qtkit}" != "xno"]) dnl @@ -2184,17 +2042,17 @@ AS_IF([test "${enable_sid}" != "no"], [ VLC_ADD_CFLAGS([sid], [$SID_CFLAGS]) VLC_ADD_LIBS([sid], [$SID_LIBS] [-lresid-builder]) ], [ - AS_IF([test "x${enable_sid}" = "xyes"], - [AC_MSG_ERROR(Library libresid-builder needed for sid was not found)], - [AC_MSG_WARN(Library libresid-builder needed for sid was not found)] + AS_IF([test -n "${enable_sid}"], + [AC_MSG_ERROR([${SID_PKG_ERRORS} (required for sid).])], + [AC_MSG_WARN([${SID_PKG_ERRORS} (required for sid).])] ) ]) CPPFLAGS="$oldCPPFLAGS" AC_LANG_POP(C++) ], [ AS_IF([test "x${enable_sid}" = "xyes"], - [AC_MSG_ERROR(Library libsidplay2 needed for sid was not found)], - [AC_MSG_WARN(Library libsidplay2 needed for sid was not found)] + [AC_MSG_ERROR([${SID_PKG_ERRORS} (required for sid).])], + [AC_MSG_WARN([${SID_PKG_ERRORS} (required for sid).])] ) ]) ]) @@ -2240,9 +2098,6 @@ if test "${enable_mkv}" != "no" -a "${CXX}" != ""; then [AC_MSG_RESULT([yes]) AC_CHECK_HEADERS(matroska/KaxAttachments.h) VLC_ADD_CXXFLAGS([mkv],[]) - if test "${SYS}" = "darwin"; then - VLC_ADD_CXXFLAGS([mkv],[-O1]) - fi AC_CHECK_LIB(ebml_pic, main, [ VLC_ADD_PLUGIN([mkv]) VLC_ADD_LIBS([mkv],[-lmatroska -lebml_pic]) @@ -2277,9 +2132,9 @@ if test "${enable_mod}" != "no" ; then VLC_ADD_CXXFLAGS([mod],[$LIBMODPLUG_CFLAGS]) VLC_ADD_LIBS([mod],[$LIBMODPLUG_LIBS]) ],[ - AS_IF([test x"${enable_mod}" = "xyes"], - [AC_MSG_ERROR(libmodplug not found or a broken version (0.8.8.0) was found!)], - [AC_MSG_WARN(libmodplug not found or a broken version (0.8.8.0) was found!)]) + AS_IF([test -n "${enable_mod}"], + [AC_MSG_ERROR([${LIBMODPLUG_PKG_ERRORS}.])], + [AC_MSG_WARN([${LIBMODPLUG_PKG_ERRORS}.])]) ]) fi @@ -2342,18 +2197,7 @@ AC_ARG_ENABLE(iomx, [ --enable-iomx iomx codec module (default disabled)]) if test "${enable_iomx}" = "yes" then - CPPFLAGS_save="${CPPFLAGS}" - CPPFLAGS="${CPPFLAGS} -I${srcdir}/modules/codec/omxil" # For the OMX headers - AC_LANG_PUSH([C++]) - AC_CHECK_HEADER(media/stagefright/OMXClient.h, [ - VLC_ADD_PLUGIN([iomx]) - VLC_ADD_CXXFLAGS([iomx], [-fno-exceptions -fno-rtti]) - VLC_ADD_LIBS([iomx], [-lstagefright -lmedia -lutils -lbinder]) - ], [ - AC_MSG_ERROR("Could not find IOMX headers") - ]) - AC_LANG_POP([C++]) - CPPFLAGS="${CPPFLAGS_save}" + VLC_ADD_PLUGIN([iomx]) fi dnl @@ -2409,7 +2253,7 @@ then then dnl The given directory can't be found AC_MSG_RESULT(no) - AC_MSG_ERROR([${with_mad_tree} directory doesn't exist]) + 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}) @@ -2418,28 +2262,29 @@ then AC_MSG_RESULT(yes) VLC_ADD_CPPFLAGS([mpgatofixed32],[-I${real_mad_tree}]) VLC_ADD_LIBS([mpgatofixed32],[-L${real_mad_tree}/.libs]) - LDFLAGS="${LDFLAGS_save} ${LIBS_mpgatofixed32}" + 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 hasn't been compiled ]) + ],[ AC_MSG_ERROR([the specified tree has not been compiled ]) ],[]) - LDFLAGS="${LDFLAGS_save}" + VLC_RESTORE_FLAGS else AC_MSG_RESULT(no) - AC_MSG_ERROR([the specified tree doesn't have mad.h]) + AC_MSG_ERROR([the specified tree does not have mad.h]) fi else - CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_mpgatofixed32}" - LDFLAGS="${LDFLAGS_save} ${LIBS_mpgatofixed32}" + 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.]) ]) AC_CHECK_LIB(mad, mad_bit_init, [ VLC_ADD_PLUGIN([mpgatofixed32]) VLC_ADD_LIBS([mpgatofixed32],[-lmad])], [ AC_MSG_ERROR([Cannot find libmad library...]) ]) - CPPFLAGS="${CPPFLAGS_save}" - LDFLAGS="${LDFLAGS_save}" + VLC_RESTORE_FLAGS fi fi @@ -2450,12 +2295,12 @@ AC_ARG_ENABLE(merge-ffmpeg, ]) AM_CONDITIONAL([MERGE_FFMPEG], [test "$enable_merge_ffmpeg" != "no"]) +VLC_SAVE_FLAGS +LDFLAGS="${LDFLAGS} -Wl,-Bsymbolic" AC_CACHE_CHECK([if linker supports -Bsymbolic], [ac_cv_ld_bsymbolic], - [LDFLAGS="${LDFLAGS_vlc} -Wl,-Bsymbolic" - AC_TRY_LINK([],,ac_cv_ld_bsymbolic=yes,ac_cv_ld_bsymbolic=no) - LDFLAGS="${LDFLAGS_save}" - ]) + [AC_TRY_LINK([],,ac_cv_ld_bsymbolic=yes,ac_cv_ld_bsymbolic=no)]) +VLC_RESTORE_FLAGS dnl dnl avcodec decoder/encoder plugin @@ -2479,7 +2324,7 @@ AS_IF([test "${enable_avcodec}" != "no"], [ VLC_RESTORE_FLAGS have_avcodec="yes" ],[ - AC_MSG_ERROR([Could not find libavcodec or libavutil. Use --disable-avcodec to ignore this error.]) + AC_MSG_ERROR([${AVCODEC_PKG_ERRORS}. Pass --disable-avcodec to ignore this error.]) ]) ], [ have_avcodec="no" @@ -2491,32 +2336,32 @@ dnl AC_ARG_ENABLE(libva, [ --enable-libva VAAPI GPU decoding support (libVA) (default auto)]) +AS_IF([test "${enable_libva}" = "yes" -a "${have_avcodec}" != "yes" ], [ + AC_MSG_ERROR([--enable-libva and --disable-avcodec options are mutually exclusive. Use --enable-avcodec.]) +]) AS_IF([test "${enable_libva}" != "no"], [ - AS_IF([test "x${have_avcodec}" = "xyes"], [ - PKG_CHECK_MODULES(LIBVA, [libva libva-x11], - [ - VLC_SAVE_FLAGS - CPPFLAGS="${CPPFLAGS} ${AVCODEC_CFLAGS}" - CFLAGS="${CFLAGS} ${AVCODEC_CFLAGS}" - AC_CHECK_HEADERS(libavcodec/vaapi.h, [ - VLC_ADD_LIBS([avcodec],[$LIBVA_LIBS ${X_LIBS} ${X_PRE_LIBS} -lX11]) - VLC_ADD_CFLAGS([avcodec],[$LIBVA_CFLAGS ${X_CFLAGS}]) - AC_DEFINE(HAVE_AVCODEC_VAAPI, 1, [Define if avcodec has to be built with VAAPI support.]) - echo "VAAPI acceleration activated" - ],[ - AS_IF([test "${enable_libva}" = "yes"], - [AC_MSG_ERROR([libva is present but libavcodec/vaapi.h is missing])], - [AC_MSG_WARN([libva is present but libavcodec/vaapi.h is missing ])]) - ]) - VLC_RESTORE_FLAGS - ],[ - AS_IF([test "${enable_libva}" = "yes"], - [AC_MSG_ERROR([Could not find required libva.])], - [AC_MSG_WARN([libva not found ])]) + PKG_CHECK_MODULES(LIBVA, [libva libva-x11], [ + VLC_SAVE_FLAGS + CPPFLAGS="${CPPFLAGS} ${AVCODEC_CFLAGS}" + CFLAGS="${CFLAGS} ${AVCODEC_CFLAGS}" + AC_CHECK_HEADERS(libavcodec/vaapi.h, [ + VLC_ADD_LIBS([avcodec],[$LIBVA_LIBS ${X_LIBS} ${X_PRE_LIBS} -lX11]) + VLC_ADD_CFLAGS([avcodec],[$LIBVA_CFLAGS ${X_CFLAGS}]) + AC_DEFINE(HAVE_AVCODEC_VAAPI, 1, [Define if avcodec has to be built with VAAPI support.]) + AC_MSG_NOTICE([VAAPI acceleration activated]) + ],[ + AS_IF([test -n "${enable_libva}"], [ + AC_MSG_ERROR([libva is present but libavcodec/vaapi.h is missing]) + ], [ + AC_MSG_WARN([libva is present but libavcodec/vaapi.h is missing ]) ]) + ]) + VLC_RESTORE_FLAGS ],[ - AS_IF([test "x${enable_libva}" != "x"], [ - AC_MSG_ERROR([--enable-libva and --disable-avcodec options are mutually exclusive.]) + AS_IF([test -n "${enable_libva}"], [ + AC_MSG_ERROR([${LIBVA_PKG_ERRORS}.]) + ], [ + AC_MSG_WARN([${LIBVA_PKG_ERRORS}.]) ]) ]) ]) @@ -2540,7 +2385,9 @@ AS_IF([test "${enable_dxva2}" != "no"], [ AS_IF([test "${enable_dxva2}" = "yes"], [AC_MSG_ERROR([dxva2 is present but libavcodec/dxva2.h is missing])], [AC_MSG_WARN([dxva2 is present but libavcodec/dxva2.h is missing ])]) - ]) + ], [#undef _WIN32_WINNT + /* DXVA2 is only available in Vista and above */ + #define _WIN32_WINNT 0x600]) ],[ AS_IF([test "${enable_dxva2}" = "yes"], [AC_MSG_ERROR([Could not find required dxva2api.h])], @@ -2563,7 +2410,7 @@ AC_ARG_ENABLE(switcher, AS_IF([test "${enable_switcher}" = "yes"], [ AS_IF([test "x${have_avcodec}" = "xyes"], [ VLC_ADD_PLUGIN([stream_out_switcher]) - VLC_ADD_LIBS([stream_out_switcher],[$AVCODEC_LIBS $AVUTIL_LIBS]) + VLC_ADD_LIBS([stream_out_switcher],[$AVCODEC_LIBS $AVUTIL_LIBS $LIBM]) VLC_ADD_CFLAGS([stream_out_switcher],[$AVCODEC_CFLAGS $AVUTIL_CFLAGS]) ],[AC_MSG_ERROR([Stream_out switcher depends on avcodec]) ]) @@ -2600,7 +2447,7 @@ then ]) VLC_RESTORE_FLAGS ],[ - AC_MSG_ERROR([Could not find libavformat or libavutil. Use --disable-avformat to ignore this error.]) + AC_MSG_ERROR([${AVFORMAT_PKG_ERRORS}. Pass --disable-avformat to ignore this error.]) ]) fi @@ -2627,7 +2474,7 @@ then ]) VLC_RESTORE_FLAGS ],[ - AC_MSG_ERROR([Could not find libswscale. Use --disable-swscale to ignore this error. Proper software scaling and some video chroma conversion will be missing.]) + AC_MSG_ERROR([${SWSCALE_PKG_ERRORS}. Pass --disable-swscale to ignore this error. Proper software scaling and some video chroma conversion will be missing.]) ]) fi @@ -2650,7 +2497,7 @@ then VLC_ADD_CFLAGS([postproc],[$POSTPROC_CFLAGS $AVUTIL_CFLAGS]) VLC_RESTORE_FLAGS ],[ - AC_MSG_ERROR([Could not find libpostproc. Use --disable-postproc to ignore this error.]) + AC_MSG_ERROR([${POSTPROC_PKG_ERRORS}. Pass --disable-postproc to ignore this error.]) ]) fi @@ -2658,24 +2505,19 @@ dnl dnl faad decoder plugin dnl AC_ARG_ENABLE(faad, -[ --enable-faad faad codec (default disabled)]) -if test "${enable_faad}" = "yes" -then - AC_ARG_WITH(faad-tree, - [ --with-faad-tree=PATH faad tree for static linking]) - if test -n "${with_faad_tree}" - then +[ --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 + 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 a custom faad + 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) VLC_ADD_PLUGIN([faad]) VLC_ADD_LIBS([faad],[${real_faad_tree}/libfaad/.libs/libfaad.a]) @@ -2686,19 +2528,23 @@ then AC_MSG_ERROR([cannot find ${real_faad_tree}/libfaad/.libs/libfaad.a, make sure you compiled libfaad in ${with_faad_tree}]) fi else - CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_faad}" - LDFLAGS="${LDFLAGS_save} ${LIBS_faad}" - AC_CHECK_HEADERS(faad.h, , - [ AC_MSG_ERROR([Cannot find development headers for libfaad...]) ]) - 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]) ], - [ AC_MSG_ERROR([Cannot find libfaad library...]) ])) - LDFLAGS="${LDFLAGS_save}" - CPPFLAGS="${CPPFLAGS_save}" + 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 @@ -2719,17 +2565,8 @@ if test "${enable_quicktime}" = "yes"; then AC_CHECK_HEADERS(QuickTime/QuickTime.h, [ VLC_ADD_PLUGIN([quicktime]) VLC_ADD_LIBS([quicktime],[-Wl,-framework,QuickTime,-framework,Carbon]) - ], [ AC_MSG_ERROR([cannot find QuickTime headers]) ]) - 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]) + ], [ AC_MSG_ERROR([cannot find QuickTime headers]) ]) + fi fi dnl @@ -2750,7 +2587,7 @@ then then dnl The given directory can't be found AC_MSG_RESULT(no) - AC_MSG_ERROR([${with_a52_tree} directory doesn't exist]) + 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) @@ -2759,7 +2596,8 @@ then AC_MSG_RESULT(yes) VLC_ADD_CPPFLAGS([a52tofloat32],[-I${real_a52_tree}]) VLC_ADD_LIBS([a52tofloat32],[-L${real_a52_tree}/liba52/.libs]) - LDFLAGS="${LDFLAGS_save} ${LIBS_a52tofloat32}" + VLC_SAVE_FLAGS + LDFLAGS="${LDFLAGS} ${LIBS_a52tofloat32}" AC_CHECK_LIB(a52, a52_free, [ VLC_ADD_PLUGIN([a52tofloat32]) VLC_ADD_CPPFLAGS([a52tofloat32],[-DUSE_A52DEC_TREE]) @@ -2769,13 +2607,12 @@ then then AC_MSG_ERROR([make sure you have at least a52dec-0.7.3 ($real_a52_tree)]) else - AC_MSG_ERROR([the specified tree hasn't been compiled]) + AC_MSG_ERROR([the specified tree has not been compiled]) fi ]) - LDFLAGS="${LDFLAGS_save}" else AC_MSG_RESULT(no) - AC_MSG_ERROR([the specified tree doesn't have a52.h]) + AC_MSG_ERROR([the specified tree does not have a52.h]) fi else if test -z "${with_a52}" @@ -2786,8 +2623,9 @@ then LDFLAGS_test="-L${with_a52}/lib" CPPFLAGS_test="-I${with_a52}/include" fi - CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_test} ${CPPFLAGS_a52tofloat32}" - LDFLAGS="${LDFLAGS_save} ${LDFLAGS_test} ${LIBS_a52tofloat32}" + VLC_SAVE_FLAGS + CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_test} ${CPPFLAGS_a52tofloat32}" + LDFLAGS="${LDFLAGS} ${LDFLAGS_test} ${LIBS_a52tofloat32}" AC_CHECK_HEADERS(a52dec/a52.h, [ AC_CHECK_LIB(a52, a52_free, [ VLC_ADD_PLUGIN([a52tofloat32]) @@ -2795,12 +2633,11 @@ then VLC_ADD_CPPFLAGS([a52tofloat32],[${CPPFLAGS_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.]) - ]) + ], [$LIBM]) ],[ 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.]) ]) - CPPFLAGS="${CPPFLAGS_save}" - LDFLAGS="${LDFLAGS_save}" + VLC_RESTORE_FLAGS fi fi @@ -2843,14 +2680,23 @@ then fi dnl -dnl Speex plugin +dnl Speex plugins dnl -PKG_ENABLE_MODULES_VLC([SPEEX], [], [ogg speex >= 1.0.5], [Speex decoder support], [auto]) +PKG_ENABLE_MODULES_VLC([SPEEX], [], [ogg speex >= 1.0.5], [Speex support], [auto]) +have_speexdsp="no" +AS_IF([test "${enable_speex}" != "no"], [ + PKG_CHECK_MODULES([SPEEXDSP], [speexdsp], [ + have_speexdsp="yes" + ], [ + AC_MSG_WARN([${SPEEXDSP_PKG_ERRORS}.]) + ]) +]) +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 @@ -2869,16 +2715,71 @@ AC_ARG_ENABLE(png, [ --enable-png PNG support (default enabled)]) if test "${enable_png}" != "no"; then AC_CHECK_HEADERS(png.h, [ - LDFLAGS="${LDFLAGS_save} -lz" + VLC_SAVE_FLAGS + LDFLAGS="${LDFLAGS} -lz $LIBM" AC_CHECK_LIB(png, png_set_rows, [ - VLC_ADD_LIBS([png],[-lpng -lz -lm]) + VLC_ADD_LIBS([png],[-lpng -lz $LIBM]) VLC_ADD_PLUGIN([png osdmenu osd_parser])], - [],[-lz]) - LDFLAGS="${LDFLAGS_save}" + [],[-lz $LIBM] ) + VLC_RESTORE_FLAGS ]) 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 @@ -2894,7 +2795,7 @@ if test "${enable_x264}" != "no"; then then dnl The given directory can't be found AC_MSG_RESULT(no) - AC_MSG_ERROR([${with_x264_tree} directory doesn't exist]) + 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}) @@ -2911,12 +2812,11 @@ if test "${enable_x264}" != "no"; then VLC_ADD_CFLAGS([x264], [-DPTW32_STATIC_LIB]) fi ],[ - AC_MSG_ERROR([the specified tree hasn't been compiled]) + AC_MSG_ERROR([the specified tree has not been compiled]) ]) - LDFLAGS="${LDFLAGS_save}" else AC_MSG_RESULT(no) - AC_MSG_ERROR([the specified tree doesn't have x264.h]) + AC_MSG_ERROR([the specified tree does not have x264.h]) fi else PKG_CHECK_MODULES(X264,x264 >= 0.86, [ @@ -2933,17 +2833,16 @@ if test "${enable_x264}" != "no"; then fi ],[ if test "${enable_x264}" = "yes"; then - AC_MSG_ERROR([Could not find libx264 >= 0.86 on your system: you may get it from http://www.videolan.org/x264.html]) + AC_MSG_ERROR([${X264_PKG_ERRORS}: you may get it from http://www.videolan.org/x264.html]) fi ]) - LDFLAGS="${LDFLAGS_save}" fi 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 @@ -2959,8 +2858,7 @@ AC_ARG_ENABLE(telx, zvbi) (default enabled if zvbi is absent)])) AS_IF( [test "${enable_zvbi}" != "no"],[ - PKG_CHECK_MODULES(ZVBI, - zvbi-0.2 >= 0.2.28, + PKG_CHECK_MODULES(ZVBI, [zvbi-0.2 >= 0.2.28], [ VLC_ADD_LIBS([zvbi],[$ZVBI_LIBS]) if test "${SYS}" = "mingw32"; then @@ -2970,11 +2868,10 @@ AS_IF( [test "${enable_zvbi}" != "no"],[ VLC_ADD_PLUGIN([zvbi]) AC_DEFINE(ZVBI_COMPILED, 1, [Define if the zvbi module is built]) AS_IF( [test "${enable_telx}" = "yes"],[ - AC_MSG_WARN([The zvbi and telx modules are uncompatibles. - Using zvbi.]) + AC_MSG_WARN([The zvbi and telx modules are incompatible. Using zvbi.]) ]) ],[ - AC_MSG_WARN(ZVBI library not found. Enabling the telx module instead) + AC_MSG_WARN([${ZVBI_PKG_ERRORS}. Enabling the telx module instead.]) ]) ]) AS_IF( [test "${enable_telx}" != "no" ],[ @@ -2987,7 +2884,7 @@ dnl AC_ARG_ENABLE(libass, [ --enable-libass Subtitle support using libass (default enabled)]) AS_IF( [test "${enable_libass}" != "no"], [ - PKG_CHECK_MODULES(LIBASS, libass >= 0.9.8, + PKG_CHECK_MODULES(LIBASS, [libass >= 0.9.8], [ VLC_ADD_LIBS([libass],[$LIBASS_LIBS]) VLC_ADD_CFLAGS([libass],[$LIBASS_CFLAGS]) @@ -2998,7 +2895,7 @@ AS_IF( [test "${enable_libass}" != "no"], [ VLC_ADD_LIBS([libass],[-lfontconfig]) ]) ],[ - AC_MSG_WARN([LIBASS library not found]) + AC_MSG_WARN([${LIBASS_PKG_ERRORS}.]) ]) ]) @@ -3017,8 +2914,8 @@ AS_IF([test "${enable_tiger}" != "no"], [ AC_DEFINE(HAVE_TIGER, 1, [Define if libtiger is available.]) VLC_ADD_CFLAGS([kate],[$TIGER_CFLAGS]) VLC_ADD_LIBS([kate],[$TIGER_LIBS]) ],[ - AS_IF([test "x${enable_tiger}" != "x"], [ - AC_MSG_ERROR([libtiger does not appear to be installed on your system.]) + AS_IF([test -n "${enable_tiger}"], [ + AC_MSG_ERROR([${TIGER_PKG_ERRORS}.]) ]) ]) ]) @@ -3030,6 +2927,37 @@ dnl EXTEND_HELP_STRING([Video plugins:]) +dnl +dnl OpenGL +dnl +PKG_CHECK_MODULES([GL], [gl], [ + have_gl="yes" +], [ + AC_CHECK_HEADER([GL/gl.h], [ + have_gl="yes" + GL_CFLAGS="" + GL_LIBS="-lGL" + ], [ + have_gl="no" + ]) +]) + +dnl OpenGL ES 2: depends on EGL 1.1 and is currently unfinished +dnl PKG_ENABLE_MODULES_VLC([GLES2], [], [glesv2], [OpenGL ES v2 support], [auto]) +dnl OpenGL ES 1: depends on EGL 1.0 and is currently broken +dnl PKG_ENABLE_MODULES_VLC([GLES1], [], [glesv1_cm], [OpenGL ES v1 support], [auto]) + +AC_ARG_ENABLE(egl, + [ --enable-egl OpenGL support through EGL (default disabled)],, [ + enable_egl="no" +]) +AS_IF([test "$enable_egl" != "no"], [ + PKG_CHECK_MODULES([EGL], [egl], [ + VLC_ADD_PLUGIN([gl]) + VLC_ADD_PLUGIN([egl]) + ]) +]) + dnl dnl Xlib dnl @@ -3052,6 +2980,10 @@ 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" AS_IF([test "${enable_xcb}" != "no"], [ @@ -3072,7 +3004,7 @@ AS_IF([test "${enable_xcb}" != "no"], [ VLC_ADD_LIBS([panoramix],[${XCB_RANDR_LIBS} ${XCB_LIBS}]) VLC_ADD_CFLAGS([panoramix],[${XCB_RANDR_CFLAGS} ${XCB_CFLAGS}]) ], [ - AC_MSG_WARN([libxcb-randr not found. Panoramix filter will not be supported.]) + AC_MSG_WARN([${XCB_RANDR_PKG_ERRORS}. Panoramix filter will not be supported.]) ]) dnl xcb-utils @@ -3083,35 +3015,17 @@ AS_IF([test "${enable_xcb}" != "no"], [ VLC_ADD_LIBS([globalhotkeys], [${XCB_KEYSYMS_LIBS} ${XCB_LIBS}]) VLC_ADD_CFLAGS([xcb_window], [-DHAVE_XCB_KEYSYMS]) ], [ - AC_MSG_WARN([libxcb-keysyms (0.3.4 or later) not found. Hotkeys will not work.]) + AC_MSG_WARN([${XCB_KEYSYMS_PKG_ERRORS}. Hotkeys will not work.]) ]) -]) -AM_CONDITIONAL([HAVE_XCB], [test "${have_xcb}" = "yes"]) -AC_ARG_ENABLE(glx, - [ --enable-glx X11 OpenGL (GLX) support (default enabled)],, [ - enable_glx="$enable_xcb" -]) -AS_IF([test "${enable_glx}" != "no"], [ - PKG_CHECK_MODULES(XLIB_XCB, [x11-xcb]) - PKG_CHECK_MODULES(GL, [gl],, [ - AC_CHECK_HEADER([GL/gl.h], [ - GL_CFLAGS="" - GL_LIBS="-lGL" - ], [ - AC_MSG_ERROR([GLX (libGL) cannot be found. If you do not need OpenGL with X11, use --disable-glx.]) + AS_IF([test "${enable_glx}" != "no"], [ + AS_IF([test "${have_gl}" != "yes"], [ + AC_MSG_ERROR([${GL_PKG_ERRORS}. Pass --disable-glx if you do not need OpenGL X11 support.]) ]) + VLC_ADD_PLUGIN([xcb_glx]) ]) - VLC_ADD_PLUGIN([xcb_glx]) ]) - -dnl -dnl OpenGL -dnl -PKG_ENABLE_MODULES_VLC([GL], [], [gl], [OpenGL support], [auto]) -PKG_ENABLE_MODULES_VLC([GLES1], [], [glesv1_cm], [OpenGL ES v1 support], [auto]) -PKG_ENABLE_MODULES_VLC([GLES2], [], [glesv2], [OpenGL ES v2 support], [auto]) -PKG_ENABLE_MODULES_VLC([EGL], [], [egl], [EGL support], [auto]) +AM_CONDITIONAL([HAVE_XCB], [test "${have_xcb}" = "yes"]) dnl dnl SDL module @@ -3139,14 +3053,11 @@ then VLC_ADD_PLUGIN([sdl_image]) VLC_ADD_LIBS([sdl_image],[${SDL_IMAGE_LIBS}]) VLC_ADD_CFLAGS([sdl_image], [${SDL_IMAGE_CFLAGS}])], - [ AC_MSG_WARN([The development package for SDL_image is not installed. - You should install it alongside your SDL package.]) + [ AC_MSG_WARN([${SDL_IMAGE_PKG_ERRORS}. You should install it alongside your SDL package.]) ]) ]) ],[ - AC_MSG_WARN([The development package for SDL is not present or too old. - You need 1.2.10. Alternatively you can also configure with - --disable-sdl.]) + AC_MSG_WARN([${SDL_PKG_ERRORS}.]) ]) fi @@ -3204,13 +3115,13 @@ if test "${enable_freetype}" != "no"; then PKG_CHECK_MODULES(FRIBIDI, fribidi, [ VLC_ADD_CPPFLAGS([freetype skins2], [${FRIBIDI_CFLAGS} -DHAVE_FRIBIDI]) VLC_ADD_LIBS([freetype skins2], [${FRIBIDI_LIBS}]) - ],[AC_MSG_WARN([library fribidi not found. Bidirectional support will be disabled in freetype])]) + ],[AC_MSG_WARN([${FRIBIDI_PKG_ERRORS}. Bidirectional support will be disabled in FreeType.])]) fi ],[ have_freetype=no - AS_IF([ test "${enable_freetype}" = "yes"],[ - AC_MSG_ERROR([Freetype2 package cannot be detected. Install Freetype2 development or configure with --disable-freetype.]) + AS_IF([test -n "${enable_freetype}"],[ + AC_MSG_ERROR([${FREETYPE_PKG_ERRORS}. Install FreeType2 development or configure with --disable-freetype.]) ]) ]) fi @@ -3279,10 +3190,11 @@ if test "${enable_directx}" != "no"; then ) dnl OpenGL - AC_CHECK_HEADERS(GL/glext.h, + AC_CHECK_HEADERS(GL/wglew.h, [ VLC_ADD_PLUGIN([glwin32]) VLC_ADD_LIBS([glwin32],[-lopengl32 -lgdi32]) ],[],[ + #include #include ]) @@ -3291,7 +3203,7 @@ if test "${enable_directx}" != "no"; then [ VLC_ADD_PLUGIN([direct3d]) VLC_ADD_LIBS([direct3d],[-lgdi32]) ]) - VLC_ADD_LIBS([direct3d directx glwin32],[-lole32]) + VLC_ADD_LIBS([direct3d directx glwin32],[-lole32 -luuid]) fi fi @@ -3307,7 +3219,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!]) ]) @@ -3321,7 +3233,7 @@ AC_ARG_ENABLE(wingdi, if test "${enable_wingdi}" != "no"; then if test "${SYS}" = "mingw32"; then VLC_ADD_PLUGIN([wingdi]) - VLC_ADD_LIBS([wingdi],[-lgdi32 -lole32]) + VLC_ADD_LIBS([wingdi],[-lgdi32 -lole32 -luuid]) fi if test "${SYS}" = "mingwce"; then VLC_ADD_PLUGIN([wingdi wingapi]) @@ -3355,12 +3267,10 @@ if test "${enable_directfb}" = "yes"; then LIBS_mydirectfb= if test "${with_directfb}" != "no" -a -n "${with_directfb}"; then dnl Trying the given location - CPPFLAGS_save="${CPPFLAGS}" - LIBS_save="${LIBS}" + VLC_SAVE_FLAGS CPPFLAGS_new="-I${with_directfb}/include -D_REENTRANT -D_GNU_SOURCE" - LIBS_new="-L${with_directfb}/lib/fusion/.libs/ -L${with_directfb}/lib/direct/.libs/" - LIBS_new="${LIBS_new} -L${with_directfb}/src/.libs/" + LIBS_new="-L${with_directfb}/lib/fusion/.libs/ -L${with_directfb}/lib/direct/.libs/ -L${with_directfb}/src/.libs/" CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_new}" LIBS="${LIBS} ${LIBS_new}" @@ -3374,9 +3284,7 @@ if test "${enable_directfb}" = "yes"; then ], have_directfb="false") ], have_directfb="false") - dnl Restore flags - CPPFLAGS="${CPPFLAGS_save}" - LIBS="${LIBS_save}" + VLC_RESTORE_FLAGS if test "${have_directfb}" = "true"; then LIBS_mydirectfb="${LIBS_new} -lz $LIBDL -ldirectfb -lfusion -ldirect -lpthread" @@ -3403,7 +3311,7 @@ if test "${enable_directfb}" = "yes"; then VLC_ADD_CPPFLAGS([directfb],[${CPPFLAGS_mydirectfb}]) VLC_ADD_LIBS([directfb],[${LIBS_mydirectfb}]) else - AC_MSG_ERROR([cannot find directfb headers and/or libraries ]) + AC_MSG_ERROR([${DIRECTFB_PKG_ERRORS}.]) fi fi @@ -3430,6 +3338,29 @@ dnl libcaca plugin dnl PKG_ENABLE_MODULES_VLC([CACA], [], [caca >= 0.99.beta14], [libcaca output],[auto]) +dnl +dnl OS/2 KVA plugin +dnl +AC_ARG_ENABLE(kva, + [AS_HELP_STRING([--enable-kva], + [support the K Video Accelerator KVA (default enabled on OS/2)])],, [ + AS_IF([test "$SYS" = "os2"], [ + enable_kva="yes" + ]) +]) +have_kva="no" +KVA_LIBS="" +AS_IF([test "$enable_kva" != "no"], [ + AC_CHECK_HEADERS([kva.h], [ + have_kva="yes" + AC_CHECK_LIB(kva, main, [ + KVA_LIBS="-lkva" + ]) + ]) +]) +AC_SUBST(KVA_LIBS) +AM_CONDITIONAL([HAVE_KVA], [test "${have_kva}" = "yes"]) + dnl dnl Audio plugins dnl @@ -3493,8 +3424,8 @@ dnl Open Sound System module dnl AC_ARG_ENABLE(oss, [AS_HELP_STRING([--enable-oss], - [support the Open Sound System OSS (default enabled on BSD)])],, [ - AS_IF([test "$SYS" = "mingw32" -o "$SYS" = "mingwce" -o "$SYS" = "linux"], [ + [support the Open Sound System OSS (default enabled on FreeBSD/NetBSD/DragonFlyBSD)])],, [ + AS_IF([test "$SYS" = "mingw32" -o "$SYS" = "mingwce" -o "$SYS" = "linux" -o "$SYS" = "openbsd"], [ enable_oss="no" ]) ]) @@ -3512,9 +3443,41 @@ AC_SUBST(OSS_LIBS) AM_CONDITIONAL([HAVE_OSS], [test "${have_oss}" = "yes"]) dnl -dnl Portaudio module +dnl OpenBSD sndio module dnl -PKG_ENABLE_MODULES_VLC([PORTAUDIO], [], [portaudio-2.0], [Portaudio library support], [auto]) +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 Windows Audio Session plugin +dnl +AC_ARG_ENABLE([wasapi], + [AS_HELP_STRING([--enable-wasapi], + [use the Windows Audio Session API (default auto)]) +]) +have_wasapi="no" +AS_IF([test "$enable_wasapi" != "no"], [ + AC_CHECK_HEADER([audioclient.h], [ + have_wasapi="yes" + ], [ + AS_IF([test "x${enable_wasapi}" != "x"], [ + AC_MSG_ERROR([Windows Audio Session API not found.]) + ]) + ]) +]) +AM_CONDITIONAL([HAVE_WASAPI], [test "${have_wasapi}" = "yes"]) dnl dnl win32 waveOut plugin @@ -3580,62 +3543,33 @@ dnl PKG_ENABLE_MODULES_VLC([SAMPLERATE], [], [samplerate], [Resampler with libsamplerate], [auto]) dnl -dnl Interface plugins -dnl - -EXTEND_HELP_STRING([Interface plugins:]) - -dnl -dnl Skins2 module +dnl OS/2 KAI plugin dnl -AC_ARG_ENABLE(skins2, - [AS_HELP_STRING([--enable-skins2], [skins interface module (default auto)])]) -AS_IF([test "${enable_skins2}" != "no"], [ - have_skins_deps="yes" - AS_IF([test "${SYS}" = "mingw32"], [ - VLC_ADD_CPPFLAGS([skins2],[-U_OFF_T_ -U_off_t -Imodules/gui/skins2 -DWIN32_SKINS]) - VLC_ADD_CXXFLAGS([skins2],[-O2 -fno-rtti]) - VLC_ADD_LIBS([skins2],[-loleaut32 -lwinspool -lwinmm -lshell32 -ladvapi32 -lwsock32 -lgdi32 -lcomdlg32 -lole32 -luuid -lcomctl32 -lmsimg32 -luser32]) - - ], [test "${SYS}" = "darwin"], [ - VLC_ADD_CPPFLAGS([skins2],[-Imodules/gui/skins2 -DMACOSX_SKINS]) - VLC_ADD_CXXFLAGS([skins2],[-O2 -fno-rtti]) - VLC_ADD_LIBS([skins2],[-Wl,-framework,Carbon]) - - ], [ - PKG_CHECK_MODULES([XPM], [xpm],, [have_skins_deps="no"]) - PKG_CHECK_MODULES([XINERAMA], [xinerama],, [have_skins_deps="no"]) - PKG_CHECK_MODULES([XEXT], [xext],, [have_skins_deps="no"]) - VLC_ADD_CPPFLAGS([skins2],[-Imodules/gui/skins2 ${X_CFLAGS} ${XEXT_CFLAGS} ${XPM_CFLAGS} -DX11_SKINS]) - VLC_ADD_CXXFLAGS([skins2],[-O2 -fno-rtti]) - VLC_ADD_LIBS([skins2],[${X_LIBS} ${X_PRE_LIBS} ${XEXT_LIBS} ${XPM_LIBS} ${XINERAMA_LIBS} -lX11]) - - ]) - AS_IF([test "${have_freetype}" != "yes"], [ - have_skins_deps="no" +AC_ARG_ENABLE(kai, + [AS_HELP_STRING([--enable-kai], + [support the K Audio Interface KAI (default enabled on OS/2)])],, [ + AS_IF([test "$SYS" = "os2"], [ + enable_kai="yes" ]) - - AS_IF([test "${have_skins_deps}" = "no"], [ - AS_IF([test "x${enable_skins2}" = "x"], [ - AC_MSG_WARN([Skins2 interface disabled due to missing dependencies.]) - ], [ - AC_MSG_ERROR([Skins2 interface requires FreeType, libxpm, libxext and libxinerama]) +]) +have_kai="no" +KAI_LIBS="" +AS_IF([test "$enable_kai" != "no"], [ + AC_CHECK_HEADERS([kai.h], [ + have_kai="yes" + AC_CHECK_LIB(kai, main, [ + KAI_LIBS="-lkai" ]) - enable_skins2="no" - ], [ - VLC_ADD_PLUGIN([skins2]) - ALIASES="${ALIASES} svlc" ]) ]) -AM_CONDITIONAL(BUILD_SKINS, [test "${enable_skins2}" = "yes"]) +AC_SUBST(KAI_LIBS) +AM_CONDITIONAL([HAVE_KAI], [test "${have_kai}" = "yes"]) -AC_ARG_ENABLE(libtar, - [ --enable-libtar libtar support for skins2 (default auto)]) -AS_IF([test "${enable_skins2}" = "yes" && test "${enable_libtar}" != "no"], [ - AC_CHECK_HEADERS(libtar.h, [ - VLC_ADD_LIBS([skins2],[-ltar]) - ]) -]) +dnl +dnl Interface plugins +dnl + +EXTEND_HELP_STRING([Interface plugins:]) dnl dnl Hildon UI @@ -3648,7 +3582,7 @@ AS_IF([test "${enable_hildon}" = "yes"], [ VLC_ADD_CFLAGS([hildon],[${HILDON_FM_CFLAGS} -DHAVE_HILDON_FM]) VLC_ADD_LIBS([hildon],[${HILDON_FM_LIBS}]) ], [ - AC_MSG_WARN(hildon-fm-2 not found) + AC_MSG_WARN([${HILDON_FM_PKG_ERRORS}.]) ]) VLC_ADD_CFLAGS([hildon],[${HILDON_CFLAGS} ${X_CFLAGS}]) VLC_ADD_LIBS([hildon],[${HILDON_LIBS} ${X_LIBS} ${X_PRE_LIBS} -lX11]) @@ -3656,7 +3590,7 @@ AS_IF([test "${enable_hildon}" = "yes"], [ ALIASES="${ALIASES} mvlc" ], [ AS_IF([test "${enable_hildon}" = "yes"],[ - AC_MSG_ERROR([Hildon libraries not found]) + AC_MSG_ERROR([${HILDON_PKG_ERRORS}.]) ]) enable_hildon="no" ]) @@ -3678,7 +3612,7 @@ AS_IF([test "${enable_qt4}" != "no"], [ ALIASES="${ALIASES} qvlc" AC_LANG_PUSH([C++]) - CPPFLAGS_save="${CPPFLAGS}" + VLC_SAVE_FLAGS AC_MSG_CHECKING([whether Qt uses X11]) CPPFLAGS="${CPPFLAGS} ${QT4_CFLAGS}" @@ -3695,7 +3629,7 @@ AS_IF([test "${enable_qt4}" != "no"], [ AC_MSG_RESULT([no]) ]) - CPPFLAGS="${CPPFLAGS_save}" + VLC_RESTORE_FLAGS AC_LANG_POP([C++]) AS_IF([test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"], [ @@ -3708,10 +3642,10 @@ AS_IF([test "${enable_qt4}" != "no"], [ AC_PATH_PROG(RCC, rcc, rcc,`eval $PKG_CONFIG --variable=exec_prefix QtCore`/bin) AC_PATH_PROGS(UIC, [uic-qt4 uic], uic,`eval $PKG_CONFIG --variable=exec_prefix QtCore`/bin) ], [ - AS_IF([test "${enable_qt4}" = "yes"],[ - AC_MSG_ERROR([Qt 4 library not found]) + AS_IF([test -n "${enable_qt4}"],[ + AC_MSG_ERROR([${QT4_PKG_ERRORS}.]) ],[ - AC_MSG_WARN([Qt 4 library not found]) + AC_MSG_WARN([${QT4_PKG_ERRORS}.]) ]) enable_qt4="no" ]) @@ -3721,8 +3655,69 @@ AM_CONDITIONAL(ENABLE_QT4, [test "x$enable_qt4" != "xno"]) dnl dnl Simple test for skins2 dependency dnl -AS_IF([test "${enable_skins2}" != "no" && test "x$enable_qt4" = "xno"], [ - AC_MSG_ERROR([The skins2 module depends on a the Qt4 development package. Without it you won't be able to open any dialog box from the interface, which makes the skins2 interface rather useless. Install the Qt4 development package or alternatively you can also configure with: --disable-qt4 --disable-skins2.]) +AS_IF([test "x$enable_qt4" = "xno"], [ + AS_IF([test "${enable_skins2}" = "yes"], [ + AC_MSG_ERROR([The skins2 module depends on the Qt4 interface. Without it you will not be able to open any dialog box from the interface, which makes the skins2 interface rather useless. Install the Qt4 development package or alternatively you can also configure with: --disable-qt4 --disable-skins2.]) + ], [ + enable_skins2="no" + AC_MSG_WARN([The skins2 module depends on the Qt4 interface, Qt4 is not built so skins2 is disabled.]) + ]) +]) + +dnl +dnl Skins2 module +dnl +AC_ARG_ENABLE(skins2, + [AS_HELP_STRING([--enable-skins2], [skins interface module (default auto)])]) +AS_IF([test "${enable_skins2}" != "no"], [ + have_skins_deps="yes" + + dnl Win32 + AS_IF([test "${SYS}" = "mingw32"], [ + VLC_ADD_CPPFLAGS([skins2],[-U_OFF_T_ -U_off_t -DWIN32_SKINS]) + VLC_ADD_LIBS([skins2],[-lgdi32 -lole32 -luuid -lmsimg32]) + dnl MacOS + ], [test "${SYS}" = "darwin"], [ + VLC_ADD_CPPFLAGS([skins2],[ -DMACOSX_SKINS]) + VLC_ADD_LIBS([skins2],[-Wl,-framework,Carbon]) + dnl Linux/Unix + ], [ + PKG_CHECK_MODULES([XPM], [xpm],, [have_skins_deps="no"]) + PKG_CHECK_MODULES([XINERAMA], [xinerama],, [have_skins_deps="no"]) + PKG_CHECK_MODULES([XEXT], [xext],, [have_skins_deps="no"]) + VLC_ADD_CPPFLAGS([skins2],[${X_CFLAGS} ${XEXT_CFLAGS} ${XPM_CFLAGS} -DX11_SKINS]) + VLC_ADD_LIBS([skins2],[${X_LIBS} ${X_PRE_LIBS} ${XEXT_LIBS} ${XPM_LIBS} ${XINERAMA_LIBS} -lX11]) + ]) + + dnl for All OSes + VLC_ADD_CXXFLAGS([skins2],[-O2 -fno-rtti]) + + dnl we need freetype + AS_IF([test "${have_freetype}" != "yes"], [ + have_skins_deps="no" + ]) + + AS_IF([test "${have_skins_deps}" = "no"], [ + AS_IF([test "x${enable_skins2}" = "x"], [ + AC_MSG_WARN([Skins2 interface disabled due to missing dependencies.]) + ], [ + AC_MSG_ERROR([Skins2 interface requires FreeType, libxpm, libxext and libxinerama]) + ]) + enable_skins2="no" + ], [ + VLC_ADD_PLUGIN([skins2]) + ALIASES="${ALIASES} svlc" + enable_skins2="yes" + ]) +]) +AM_CONDITIONAL(BUILD_SKINS, [test "${enable_skins2}" = "yes"]) + +AC_ARG_ENABLE(libtar, + [ --enable-libtar libtar support for skins2 (default auto)]) +AS_IF([test "${enable_skins2}" = "yes" && test "${enable_libtar}" != "no"], [ + AC_CHECK_HEADERS(libtar.h, [ + VLC_ADD_LIBS([skins2],[-ltar]) + ]) ]) dnl @@ -3730,26 +3725,28 @@ dnl MacOS X gui module dnl AC_ARG_ENABLE(macosx, [ --enable-macosx Mac OS X gui support (default enabled on Mac OS X)]) -if test "x${enable_macosx}" != "xno" && -(test "${SYS}" = "darwin" || test "${enable_macosx}" = "yes") +if test "x${enable_macosx}" != "xno" -a "${SYS}" = "darwin" then - VLC_ADD_LIBS([macosx minimal_macosx],[-Wl,-framework,Cocoa]) - VLC_ADD_LIBS([macosx minimal_macosx],[-Wl,-framework,OpenGL]) - VLC_ADD_LIBS([macosx minimal_macosx], [-Wl,-framework,Carbon]) - VLC_ADD_LIBS([macosx minimal_macosx], [-Wl,-framework,CoreServices]) - VLC_ADD_LIBS([macosx minimal_macosx], [-Wl,-framework,AGL]) - VLC_ADD_LIBS([macosx], [-Wl,-framework,QTKit]) - VLC_ADD_LIBS([macosx], [-Wl,-framework,IOKit]) - VLC_ADD_LIBS([macosx], [-F${CONTRIB_DIR}/Sparkle -Wl,-framework,Sparkle]) - VLC_ADD_OBJCFLAGS([macosx], [-F${CONTRIB_DIR}/Sparkle]) - VLC_ADD_LIBS([macosx], [-F${CONTRIB_DIR}/BGHUDAppKit -Wl,-framework,BGHUDAppKit]) - VLC_ADD_OBJCFLAGS([macosx], [-F${CONTRIB_DIR}/BGHUDAppKit]) - dnl For bug report - VLC_ADD_LIBS([macosx], [-Wl,-framework,AddressBook]) - VLC_ADD_LIBS([macosx], [-Wl,-framework,WebKit]) + VLC_ADD_LIBS([macosx minimal_macosx], [-Wl,-framework,Cocoa -Wl,-framework,OpenGL -Wl,-framework,Carbon -Wl,-framework,CoreServices -Wl,-framework,AGL]) VLC_ADD_OBJCFLAGS([macosx minimal_macosx], [-fobjc-exceptions] ) - VLC_ADD_PLUGIN([macosx minimal_macosx]) + + VLC_ADD_LIBS([macosx], [-Wl,-framework,QTKit -Wl,-framework,IOKit -Wl,-framework,AddressBook -Wl,-framework,WebKit -Wl,-framework,CoreAudio -Wl,-framework,SystemConfiguration]) + + 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 + then + AC_MSG_ERROR([BGHUDAppKit framework is required and was not found in ${CONTRIB_DIR}]) + fi + VLC_ADD_LIBS([macosx], [-F${CONTRIB_DIR} -Wl,-framework,BGHUDAppKit]) + VLC_ADD_OBJCFLAGS([macosx], [-F${CONTRIB_DIR}]) + fi dnl @@ -3768,57 +3765,26 @@ dnl dnl ncurses module dnl AC_ARG_ENABLE(ncurses, - [ --disable-ncurses ncurses interface support (default disabled)], - [if test "${enable_ncurses}" != "no"; then - AC_CHECK_HEADER(ncurses.h, - [AC_CHECK_LIB(ncursesw, mvprintw, - [VLC_ADD_PLUGIN([ncurses]) - VLC_ADD_LIBS([ncurses],[-lncursesw]) +[AS_HELP_STRING([--disable-ncurses],[ncurses text-based interface (default auto)])]) +if test "${enable_ncurses}" != "no"; then + VLC_SAVE_FLAGS + LIBS="" + AC_CHECK_HEADER(ncurses.h, [ + AC_CHECK_LIB(ncursesw, mvprintw, [ + AC_SEARCH_LIBS([tgetent], [ncursesw tinfow tinfo], [ + VLC_ADD_PLUGIN([ncurses]) ALIASES="${ALIASES} nvlc" - AC_CHECK_LIB(ncursesw, tgetent, [], - AC_CHECK_LIB(tinfow, tgetent, [VLC_ADD_LIBS([ncurses],[-ltinfow])], - [AC_CHECK_LIB(tinfo, tgetent, [VLC_ADD_LIBS([ncurses],[-ltinfo])], - [AS_IF([test "${enable_ncurses}" = "yes"], - [AC_MSG_ERROR([tgetent not found in ncursesw tinfow tinfo] - )])]) - ] - ) - ) - ], - [AS_IF([test "${enable_ncurses}" = "yes"], [ - AC_MSG_ERROR([libncursesw not found])])] - )], - [AS_IF([test "${enable_ncurses}" = "yes"], [ - AC_MSG_ERROR([ncurses.h not found])])] - ) - fi] -) - -dnl -dnl XOSD plugin -dnl -AC_ARG_ENABLE(xosd, - [ --enable-xosd xosd interface support (default disabled)]) -if test "${enable_xosd}" = "yes" -then - AC_CHECK_HEADERS(xosd.h, - AC_CHECK_LIB(xosd, xosd_set_horizontal_offset, [ - VLC_ADD_PLUGIN([xosd]) - VLC_ADD_LIBS([xosd],[-lxosd]) + VLC_ADD_LIBS([ncurses],[-lncursesw ${LIBS}]) + ], [ + AS_IF([test "${enable_ncurses}" = "yes"], [AC_MSG_ERROR([tgetent not found])]) + ]) + ], [ + AS_IF([test "${enable_ncurses}" = "yes"], [AC_MSG_ERROR([libncursesw not found])]) ]) - ) -fi - -dnl -dnl Framebuffer (overlay) plugin -dnl -AC_ARG_ENABLE(fbosd, - [ --enable-fbosd fbosd interface support (default disabled)]) -if test "${enable_fbosd}" = "yes" -then - AC_CHECK_HEADERS(linux/fb.h, [ - VLC_ADD_PLUGIN([fbosd]) - ]) + ], [ + AS_IF([test "${enable_ncurses}" = "yes"], [AC_MSG_ERROR([ncurses.h not found])]) + ]) + VLC_RESTORE_FLAGS fi dnl @@ -3869,7 +3835,24 @@ AS_IF([test "${enable_projectm}" != "no"], [ AC_MSG_WARN( [Using libprojectM version 1] ) ]) ],[ - AC_MSG_WARN([libprojectM library not found]) + AC_MSG_WARN([${PROJECTM_PKG_ERRORS}.]) + ]) + ]) + +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}.]) ]) ]) @@ -3936,11 +3919,6 @@ AS_IF([test "${enable_libgcrypt}" != "no"], [ ) ]) -if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"; then - AS_IF([test "${have_libgcrypt}" = "yes"],[ - VLC_ADD_LIBS([rtp stream_out_rtp], [${GCRYPT_LIBS}]) - ]) -fi AC_SUBST(GCRYPT_CFLAGS) AC_SUBST(GCRYPT_LIBS) AM_CONDITIONAL([HAVE_GCRYPT], [test "${have_libgcrypt}" = "yes"]) @@ -3958,54 +3936,16 @@ AS_IF([test "${have_libgcrypt}" != "yes"], [ enable_gnutls="no" ]) AS_IF([test "${enable_gnutls}" != "no"], [ - PKG_CHECK_MODULES(GNUTLS, [gnutls >= 2.0.0], [ + PKG_CHECK_MODULES(GNUTLS, [gnutls >= 2.6.6], [ VLC_ADD_PLUGIN([gnutls]) - VLC_ADD_CFLAGS([gnutls], [$GNUTLS_CFLAGS]) - AS_IF([test "${SYS}" = "mingw32"], [ - dnl pkg-config --libs gnutls omits these - VLC_ADD_LIBS([gnutls], [-lz ${LTLIBINTL} -lcrypt32]) - ]) - VLC_ADD_LIBS([gnutls], [${GCRYPT_LIBS}]) - VLC_ADD_CFLAGS([gnutls], [${GCRYPT_CFLAGS}]) - VLC_ADD_LIBS([gnutls], [$GNUTLS_LIBS]) ], [ - AS_IF([test "${enable_gnutls}" = "yes"], [ - AC_MSG_ERROR([GNU TLS not present or too old (version 2.0.0 required)]) + AS_IF([test -n "${enable_gnutls}"], [ + AC_MSG_ERROR([${GNUTLS_PKG_ERRORS}.)]) ]) ]) ]) -dnl -dnl RemoteOSD plugin (VNC client as video filter) -dnl -AC_MSG_CHECKING([whether to enable the RemoteOSD plugin]) -AS_IF([test "${have_libgcrypt}" = "yes"],[ - AC_MSG_RESULT(yes) - VLC_ADD_PLUGIN([remoteosd]) - VLC_ADD_LIBS([remoteosd], ${GCRYPT_LIBS}) - VLC_ADD_CFLAGS([remoteosd], ${GCRYPT_CFLAGS}) -], [ - AC_MSG_RESULT(no) - AC_MSG_WARN([libgcrypt support required for RemoteOSD plugin]) -]) - - -dnl -dnl RAOP plugin -dnl -AC_MSG_CHECKING([whether to enable the RAOP plugin]) -AS_IF([test "${have_libgcrypt}" = "yes"], [ - AC_MSG_RESULT(yes) - VLC_ADD_PLUGIN([stream_out_raop]) - VLC_ADD_LIBS([stream_out_raop], [${GCRYPT_LIBS} -lgpg-error]) - VLC_ADD_CFLAGS([stream_out_raop], [${GCRYPT_CFLAGS}]) -], [ - AC_MSG_RESULT(no) - AC_MSG_WARN([libgcrypt support required for RAOP plugin]) -]) - - dnl dnl Nokia MCE plugin (Maemo screen unblanking) dnl @@ -4029,7 +3969,7 @@ AS_IF([test "${enable_taglib}" != "no"], [ VLC_ADD_LIBS([taglib],[$TAGLIB_LIBS -lz]) VLC_ADD_CXXFLAGS([taglib],[$TAGLIB_CFLAGS]) ], [ - AC_MSG_WARN(TagLib library not found)]) + AC_MSG_WARN([${TAGLIB_PKG_ERRORS}.])]) ]) @@ -4056,10 +3996,10 @@ AC_ARG_ENABLE(growl, [ --enable-growl growl notification plugin (default disabled)],, [enable_growl=no]) AS_IF([test "${enable_growl}" != "no"], [ - AC_CHECK_HEADERS(${CONTRIB_DIR}/Growl/Growl.framework/Versions/A/Headers/GrowlDefines.h, [ + AC_CHECK_HEADERS(${CONTRIB_DIR}/Growl.framework/Versions/A/Headers/Growl.h, [ VLC_ADD_PLUGIN([growl]) - VLC_ADD_LIBS([growl], [-F${CONTRIB_DIR}/Growl -Wl,-framework,Growl,-framework,CoreFoundation]) - VLC_ADD_OBJCFLAGS([growl], [-F${CONTRIB_DIR}/Growl]) + VLC_ADD_LIBS([growl], [-F${CONTRIB_DIR} -Wl,-framework,Growl,-framework,Foundation]) + VLC_ADD_OBJCFLAGS([growl], [-F${CONTRIB_DIR}]) VLC_ADD_OBJCFLAGS([growl], [-fobjc-exceptions] ) ]) ] @@ -4121,7 +4061,7 @@ AC_ARG_WITH(kde-solid, AS_HELP_STRING([--with-kde-solid=PATH], [KDE Solid actions directory (auto)]),, [ -if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ; then +if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" -a "${SYS}" != "darwin" ; then with_kde_solid="yes" fi ]) @@ -4148,9 +4088,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]) ]) @@ -4168,15 +4107,6 @@ AC_ARG_ENABLE(macosx-vlc-app, AM_CONDITIONAL(BUILD_MACOSX_VLC_APP, [test "${enable_macosx_vlc_app}" != "no" && (test "${SYS}" = "darwin" || test "${enable_macosx_vlc_app}" = "yes") ]) - -dnl -dnl Pic and shared libvlc stuff -dnl -AS_IF([test "${SYS}" = "mingw32"], [ - FILE_LIBVLCCORE_DLL="!define LIBVLCCORE_DLL libvlccore.dll" - FILE_LIBVLC_DLL="!define LIBVLC_DLL libvlc.dll" -]) - dnl dnl Stuff used by the program dnl @@ -4198,23 +4128,13 @@ AC_SUBST(VERSION_MINOR) AC_SUBST(VERSION_REVISION) AC_SUBST(VERSION_EXTRA) AC_SUBST(COPYRIGHT_YEARS) -AC_DEFINE_UNQUOTED(VLC_COMPILE_BY, "`whoami`", [user who ran configure]) +AC_DEFINE_UNQUOTED(VLC_COMPILE_BY, "`whoami|sed -e's/\\\/\\\\\\\/g'`", [user who ran configure]) AC_DEFINE_UNQUOTED(VLC_COMPILE_HOST, "`hostname -f 2>/dev/null || hostname`", [host which ran configure]) AC_DEFINE_UNQUOTED(VLC_COMPILER, "`$CC -v 2>&1 | tail -n 1`", [compiler]) dnl dnl Handle substvars that use $(top_srcdir) dnl -CPPFLAGS_save="-I\$(top_srcdir)/include -I\$(top_builddir)/include ${CPPFLAGS_save}" - -dnl -dnl Restore *FLAGS -dnl -VLC_RESTORE_FLAGS - -dnl -dnl Sort the modules list -dnl -PLUGINS=$( (for i in `echo $PLUGINS`; do echo $i; done)|sort|xargs ) +CPPFLAGS="-I\$(top_srcdir)/include -I\$(top_builddir)/include ${CPPFLAGS}" dnl dnl Configuration is finished @@ -4301,6 +4221,7 @@ AC_CONFIG_FILES([ modules/packetizer/Makefile modules/services_discovery/Makefile modules/stream_filter/Makefile + modules/stream_filter/dash/Makefile modules/stream_out/Makefile modules/stream_out/transcode/Makefile modules/text_renderer/Makefile @@ -4336,39 +4257,41 @@ AM_COND_IF([HAVE_DARWIN], [ dnl Generate makefiles AC_OUTPUT -/bin/echo -n "Enabled modules: ${PLUGINS}" - dnl Do we have to use make or gmake ? -USE_MAKE_OR_GMAKE=`case "${SYS}" in openbsd*) echo "gmake";; *) echo "make";; esac` +if make --version 2>&1|grep -q GNU +then + # GNU make, all seems good + MAKE=make +else + # Known GNU make alias (on BSD) + MAKE=gmake +fi dnl Shortcut to nice compile message -rm -f compile if test -n $SHELL; then SHELL=${CONFIG_SHELL-/bin/sh} fi -echo '#! '$SHELL >compile -echo rm -f .error\$\$ >>compile -echo ERROR=0 >>compile -echo export PATH=$PATH LANG=C >>compile -echo "($USE_MAKE_OR_GMAKE V=1 \$@ 2>&1 || touch .error\$\$)| \\" >>compile -echo '`sed -ne "s/^top_srcdir *= *//p" < Makefile`/extras/buildsystem/make.pl' >>compile -echo test -f .error\$\$ \&\& ERROR=1 >>compile -echo rm -f .error\$\$ >>compile -echo exit \$ERROR >>compile +rm -f compile +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 +test -f .error\$\$ && ERROR=1 +rm -f .error\$\$ +exit \$ERROR" >compile chmod a+x compile -printf " +echo " libvlc configuration -------------------- version : ${VERSION} system : ${SYS} architecture : ${ARCH} -build flavour : " -test "${enable_optimizations}" != "no" && printf ${enable_optimizations} -echo "" +optimizations : ${enable_optimizations}" if test "${enable_vlc}" != "no"; then echo "vlc aliases :${ALIASES}" else echo "build vlc executable : no" fi echo " -To build vlc and its plugins, type \`./compile' or \`$USE_MAKE_OR_GMAKE'." +To build vlc and its plugins, type \`$MAKE', or \`./compile' if you like nice colors."