X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=configure.ac;h=bf863bf97b4ef2c898a17f001ef9e84cc95d8b0e;hb=379980a6047983f8bb0ab878dde66a0fe5b787d6;hp=3cb2574fd837e1cf72eaf9016f02b667c2f8dd83;hpb=a7f48f35c051fa894c0102b24ab0ce76d2d158fd;p=vlc diff --git a/configure.ac b/configure.ac index 3cb2574fd8..bf863bf97b 100644 --- a/configure.ac +++ b/configure.ac @@ -142,6 +142,11 @@ 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 @@ -151,7 +156,7 @@ case "${host_os}" in 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([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]) @@ -168,29 +173,34 @@ case "${host_os}" in AC_LIBOBJ([strnlen])],) dnl - dnl Check for Mac OS X SDK settings + dnl Handle Mac OS X SDK flags dnl AC_ARG_WITH(macosx-sdk, [AS_HELP_STRING([--with-macosx-sdk=DIR], [compile using the SDK in DIR])]) - test "${with_macosx_sdk}" = "" && with_macosx_sdk=/Developer/SDKs/MacOSX10.6.sdk - test ! -d "${with_macosx_sdk}" && AC_MSG_ERROR([SDK "${with_macosx_sdk}" not found]) + if test "${with_macosx_sdk}" != "" ; then + test ! -d "${with_macosx_sdk}" && AC_MSG_ERROR([SDK "${with_macosx_sdk}" not found]) + 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}" + fi 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 - with_macosx_version_min=10.5 + [compile for Mac OS X VERSION and above])]) + if test "${with_macosx_version_min}" != "" ; then + MACOSX_DEPLOYMENT_TARGET=${with_macosx_version_min} + 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} -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 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, :) @@ -404,7 +414,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 @@ -416,16 +426,18 @@ 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" @@ -504,7 +516,8 @@ AC_LINK_IFELSE([ 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 ], [ + AC_LANG_PROGRAM([#include + #include ], [ char *c; va_list ap; if (vasprintf(&c, "%s %d", ap) == -1) @@ -620,7 +633,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 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]) + 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 oldrc ncurses],[-lm]) LIBM="-lm" ], [ LIBM="" @@ -763,20 +776,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], @@ -800,14 +799,6 @@ then VLC_ADD_LIBS([dbus],[$DBUS_LIBS]) VLC_ADD_CFLAGS([dbus],[$DBUS_CFLAGS]) fi - dnl Check for Telepathy - AC_ARG_ENABLE(telepathy, - AS_HELP_STRING([--enable-telepathy],[Telepathy Presence plugin through DBus(default enabled)])) - if test "${enable_telepathy}" != "no"; then - VLC_ADD_PLUGIN([telepathy]) - VLC_ADD_LIBS([telepathy],[$DBUS_LIBS]) - VLC_ADD_CFLAGS([telepathy],[$DBUS_CFLAGS]) - fi dnl Power Management Inhibiter VLC_ADD_PLUGIN([inhibit]) VLC_ADD_LIBS([inhibit],[$DBUS_LIBS]) @@ -1104,7 +1095,6 @@ AC_ARG_ENABLE(mmx, esac ]) have_mmx="no" -have_mmxext="no" AS_IF([test "${enable_mmx}" != "no"], [ ARCH="${ARCH} mmx" VLC_SAVE_FLAGS @@ -1151,26 +1141,9 @@ asm volatile("packuswb %%mm1,%%mm2"::"r"(p):"mm1", "mm2"); have_mmx="yes" ]) - AC_CACHE_CHECK([if $CC groks MMX EXT inline assembly], - [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.]) - have_mmxext="yes" - ]) ]) AM_CONDITIONAL([HAVE_MMX], [test "${have_mmx}" = "yes"]) -AM_CONDITIONAL([HAVE_MMXEXT], [test "${have_mmxext}" = "yes"]) dnl Check for fully workin SSE2 intrinsics dnl We need support for -mmmx, we need , and we also need a @@ -1334,29 +1307,6 @@ asm volatile("insertq %%xmm1,%%xmm0"::"r"(p):"xmm0", "xmm1"); ]) 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], [ - 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.]) - have_3dnow="yes" -]) -AM_CONDITIONAL([HAVE_3DNOW], [test "$have_3dnow" = "yes"]) - - AC_ARG_ENABLE(neon, [AS_HELP_STRING([--disable-neon], [disable NEON optimizations (default auto)])],, [ @@ -1489,44 +1439,6 @@ dnl - Others: test should fail ]) 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 -n "${CFLAGS_TUNING}"], [ - VLC_SAVE_FLAGS - CFLAGS="${CFLAGS} ${CFLAGS_TUNING}" - AC_MSG_CHECKING([whether $CC accepts ${CFLAGS_TUNING}]) - AC_COMPILE_IFELSE([AC_LANG_SOURCE([])], [ - AC_MSG_RESULT([yes]) - ], [ - VLC_RESTORE_FLAGS - AC_MSG_RESULT([no]) - AS_IF([test "${with_tuning}"], [AC_MSG_ERROR([requested tuning not supported])]) - ]) -]) - dnl dnl Memory usage dnl @@ -1666,7 +1578,14 @@ 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" + AS_IF([test ${SYS} != "os2"], [ + LIVE555_PREFIX=${LIVE555_PREFIX-"/usr"} + CPPFLAGS_live555="-I${LIVE555_PREFIX}/include/liveMedia -I${LIVE555_PREFIX}/include/groupsock -I${LIVE555_PREFIX}/include/BasicUsageEnvironment -I${LIVE555_PREFIX}/include/UsageEnvironment" + ], [ + LIVE555_PREFIX=${LIVE555_PREFIX-"/usr/lib/live"} + CPPFLAGS_live555="-I${LIVE555_PREFIX}/liveMedia/include -I${LIVE555_PREFIX}/groupsock/include -I${LIVE555_PREFIX}/BasicUsageEnvironment/include -I${LIVE555_PREFIX}/UsageEnvironment/include" + LDFLAGS_live555="-L${LIVE555_PREFIX}/liveMedia -L${LIVE555_PREFIX}/groupsock -L${LIVE555_PREFIX}/BasicUsageEnvironment -L${LIVE555_PREFIX}/UsageEnvironment" + ]) ], [ CPPFLAGS_live555="-I${CONTRIB_DIR}/include/liveMedia -I${CONTRIB_DIR}/include/groupsock -I${CONTRIB_DIR}/include/BasicUsageEnvironment -I${CONTRIB_DIR}/include/UsageEnvironment" ]) @@ -1674,6 +1593,7 @@ AS_IF([test "${enable_live555}" != "no" -a -n "${CXX}"], [ CPPFLAGS_live555="${CPPFLAGS_live555} -DSOLARIS" ]) CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_live555}" + LDFLAGS="${LDFLAGS} ${LDFLAGS_live555}" AC_CACHE_CHECK([for live555 version 1324598400 or later], [ac_cv_live555], [ AC_PREPROC_IFELSE([AC_LANG_PROGRAM([ @@ -1708,6 +1628,7 @@ You can get an updated one from http://www.live555.com/liveMedia .]) 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}]) + VLC_ADD_LDFLAGS([live555], [${LDFLAGS_live555}]) AC_CHECK_LIB(liveMedia_pic, main, [ VLC_ADD_PLUGIN([live555]) VLC_ADD_LIBS([live555], [-lliveMedia_pic ${other_libs_pic}]) @@ -1726,8 +1647,8 @@ 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], @@ -1838,6 +1759,14 @@ 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_pvr}" = "yes"], [ @@ -2134,9 +2063,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]) @@ -2449,7 +2375,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]) ]) @@ -2544,24 +2470,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]) @@ -2575,15 +2496,19 @@ then VLC_SAVE_FLAGS CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_faad}" LDFLAGS="${LDFLAGS} ${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...]) ])) + 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 @@ -3219,33 +3144,40 @@ then fi AC_ARG_ENABLE(directx, - [ --enable-directx Win32 DirectX support (default enabled on Win32)]) -if test "${enable_directx}" != "no"; then - if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"; then - dnl DDraw - AC_CHECK_HEADERS(ddraw.h, - [ VLC_ADD_PLUGIN([directx aout_directx]) - VLC_ADD_LIBS([directx],[-luser32 -lgdi32]) - ],[AC_MSG_ERROR([Cannot find DirectX headers!])] - ) - - dnl OpenGL - AC_CHECK_HEADERS(GL/wglew.h, - [ VLC_ADD_PLUGIN([glwin32]) - VLC_ADD_LIBS([glwin32],[-lopengl32 -lgdi32]) - ],[],[ - #include - #include - ]) + [AS_HELP_STRING([--enable-directx], + [Microsoft DirectX support (default enabled on Windows)])],, [ + AS_IF([test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"], [ + enable_directx="yes" + ], [ + enable_directx="no" + ]) +]) +have_directx="no" +AS_IF([test "${enable_directx}" != "no"], [ + dnl DirectDraw + AC_CHECK_HEADERS(ddraw.h, [ + have_directx="yes" + ], [ + AC_MSG_ERROR([Cannot find DirectX headers!]) + ]) - dnl Direct3D - AC_CHECK_HEADERS(d3d9.h, - [ VLC_ADD_PLUGIN([direct3d]) - VLC_ADD_LIBS([direct3d],[-lgdi32]) - ]) - VLC_ADD_LIBS([direct3d directx glwin32],[-lole32 -luuid]) - fi -fi + dnl OpenGL + AC_CHECK_HEADERS(GL/wglew.h, [ + VLC_ADD_PLUGIN([glwin32]) + VLC_ADD_LIBS([glwin32],[-lopengl32 -lgdi32]) + ],, [ + #include + #include + ]) + + dnl Direct3D + AC_CHECK_HEADERS(d3d9.h, [ + VLC_ADD_PLUGIN([direct3d]) + VLC_ADD_LIBS([direct3d],[-lgdi32]) + ]) + VLC_ADD_LIBS([direct3d glwin32],[-lole32 -luuid]) +]) +AM_CONDITIONAL([HAVE_DIRECTX], [test "$have_directx" = "yes"]) dnl dnl Windows Direct2D plugin @@ -3500,6 +3432,25 @@ AS_IF([test "$enable_sndio" != "no"], [ ]) 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 dnl @@ -3593,90 +3544,71 @@ dnl EXTEND_HELP_STRING([Interface plugins:]) dnl -dnl Hildon UI +dnl QT dnl -AC_ARG_ENABLE(hildon, - [ --enable-hildon Hildon touchscreen UI (default disabled)]) -AS_IF([test "${enable_hildon}" = "yes"], [ - PKG_CHECK_MODULES(HILDON, [hildon-1], [ - PKG_CHECK_MODULES(HILDON_FM, hildon-fm-2, [ - VLC_ADD_CFLAGS([hildon],[${HILDON_FM_CFLAGS} -DHAVE_HILDON_FM]) - VLC_ADD_LIBS([hildon],[${HILDON_FM_LIBS}]) - ], [ - 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]) - VLC_ADD_PLUGIN([hildon]) - ALIASES="${ALIASES} mvlc" - ], [ - AS_IF([test "${enable_hildon}" = "yes"],[ - AC_MSG_ERROR([${HILDON_PKG_ERRORS}.]) +AC_ARG_ENABLE(qt, [ + AS_HELP_STRING([--disable-qt], [Qt UI support (default enabled)])],, [ + AS_IF([test "${SYS}" = "darwin"], [ + enable_qt="no" + ]) +]) +AS_IF([test "${enable_qt}" != "no"], [ + PKG_CHECK_MODULES([QT], [QtCore >= 5 QtWidgets QtGui],, [ + PKG_CHECK_MODULES([QT], [QtCore QtGui >= 4.6.0],, [ + AS_IF([test -n "${enable_qt}"],[ + AC_MSG_ERROR([${QT_PKG_ERRORS}.]) + ],[ + AC_MSG_WARN([${QT_PKG_ERRORS}.]) + ]) + enable_qt="no" ]) - enable_hildon="no" ]) ]) -AM_CONDITIONAL(BUILD_HILDON, [test "${enable_hildon}" = "yes"]) +AS_IF([test "${enable_qt}" != "no"], [ + VLC_ADD_PLUGIN([qt4]) + VLC_ADD_LIBS([qt4],[${QT_LIBS}]) + VLC_ADD_CXXFLAGS([qt4],[${QT_CFLAGS}]) + ALIASES="${ALIASES} qvlc" -dnl -dnl QT 4 -dnl -AC_ARG_ENABLE(qt4, - [ --enable-qt4 Qt 4 support (default enabled) ],, [ - AS_IF([test "${SYS}" = "darwin"], [enable_qt4=no]) -]) -AS_IF([test "${enable_qt4}" != "no"], [ - PKG_CHECK_MODULES(QT4, [QtCore QtGui >= 4.6.0], [ - VLC_ADD_PLUGIN([qt4]) - VLC_ADD_LIBS([qt4],[${QT4_LIBS}]) - VLC_ADD_CXXFLAGS([qt4],[${QT4_CFLAGS}]) - ALIASES="${ALIASES} qvlc" - - AC_LANG_PUSH([C++]) - VLC_SAVE_FLAGS + AC_LANG_PUSH([C++]) + VLC_SAVE_FLAGS - AC_MSG_CHECKING([whether Qt uses X11]) - CPPFLAGS="${CPPFLAGS} ${QT4_CFLAGS}" - AC_PREPROC_IFELSE([AC_LANG_SOURCE([ + AC_MSG_CHECKING([whether Qt uses Xlib]) + CPPFLAGS="${CPPFLAGS} ${QT_CFLAGS}" + AC_PREPROC_IFELSE([AC_LANG_SOURCE([ #include #if !defined (Q_WS_X11) # error Fail #endif - ])], [ - AC_MSG_RESULT([yes]) - VLC_ADD_LIBS([qt4],[${X_LIBS} ${X_PRE_LIBS} -lX11]) - VLC_ADD_CXXFLAGS([qt4],[${X_CFLAGS}]) - ], [ - AC_MSG_RESULT([no]) - ]) + ])], [ + AC_MSG_RESULT([yes]) + VLC_ADD_LIBS([qt4],[${X_LIBS} ${X_PRE_LIBS} -lX11]) + VLC_ADD_CXXFLAGS([qt4],[${X_CFLAGS}]) + ], [ + AC_MSG_RESULT([no]) + ]) - VLC_RESTORE_FLAGS - AC_LANG_POP([C++]) + VLC_RESTORE_FLAGS + AC_LANG_POP([C++]) - AS_IF([test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"], [ - VLC_ADD_LIBS([qt4],[-lole32]) - ]) - AS_IF([test "${SYS}" = "darwin" ],[ - VLC_ADD_LIBS([qt4], [-Wl,-framework,Cocoa]) - ]) - AC_PATH_PROGS(MOC, [moc-qt4 moc], moc,`eval $PKG_CONFIG --variable=exec_prefix QtCore`/bin) - 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 -n "${enable_qt4}"],[ - AC_MSG_ERROR([${QT4_PKG_ERRORS}.]) - ],[ - AC_MSG_WARN([${QT4_PKG_ERRORS}.]) - ]) - enable_qt4="no" + AS_IF([test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"], [ + VLC_ADD_LIBS([qt4],[-lole32]) ]) + AS_IF([test "${SYS}" = "darwin" ],[ + VLC_ADD_LIBS([qt4], [-Wl,-framework,Cocoa]) + ]) + + QT_PATH="$(eval $PKG_CONFIG --variable=exec_prefix QtCore)" + AC_PATH_PROGS(MOC, [moc-qt4 moc], moc, [${QT_PATH}/bin]) + AC_PATH_PROG(RCC, rcc, rcc, [${QT_PATH}/bin]) + AC_PATH_PROGS(UIC, [uic-qt4 uic], uic, [${QT_PATH}/bin]) ]) -AM_CONDITIONAL(ENABLE_QT4, [test "x$enable_qt4" != "xno"]) +AM_CONDITIONAL(ENABLE_QT4, [test "$enable_qt" != "no"]) dnl dnl Simple test for skins2 dependency dnl -AS_IF([test "x$enable_qt4" = "xno"], [ +AS_IF([test "$enable_qt" = "no"], [ 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.]) ], [ @@ -3695,24 +3627,24 @@ AS_IF([test "${enable_skins2}" != "no"], [ dnl Win32 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_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],[-Imodules/gui/skins2 -DMACOSX_SKINS]) - VLC_ADD_CXXFLAGS([skins2],[-O2 -fno-rtti]) + 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],[-Imodules/gui/skins2 ${X_CFLAGS} ${XEXT_CFLAGS} ${XPM_CFLAGS} -DX11_SKINS]) - VLC_ADD_CXXFLAGS([skins2],[-O2 -fno-rtti]) + 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" @@ -3752,7 +3684,7 @@ then 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]) + 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 @@ -3808,38 +3740,6 @@ if test "${enable_ncurses}" != "no"; then VLC_RESTORE_FLAGS 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, [ - AS_IF([test "${no_x}" != "yes"], [ - VLC_ADD_PLUGIN([xosd]) - VLC_ADD_LIBS([xosd],[-lxosd ${X_LIBS} ${X_PRE_LIBS} -lX11]) - VLC_ADD_CFLAGS([xosd],[${X_CFLAGS}]) - ],[ - AC_MSG_ERROR([Xlib is required with xosd.]) - ]) - ]) - ) -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]) - ]) -fi - dnl dnl Lirc plugin dnl @@ -3989,7 +3889,7 @@ 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]) ], [ AS_IF([test -n "${enable_gnutls}"], [ @@ -4049,9 +3949,9 @@ 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.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} -Wl,-framework,Growl,-framework,CoreFoundation]) + 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] ) ]) @@ -4181,9 +4081,9 @@ 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]) +AC_DEFINE_UNQUOTED(VLC_COMPILER, "`$CC -v 2>&1 | tail -n 1 | sed -e 's/ *$//'`", [compiler]) dnl dnl Handle substvars that use $(top_srcdir) dnl @@ -4256,7 +4156,6 @@ AC_CONFIG_FILES([ modules/demux/playlist/Makefile modules/gui/Makefile modules/gui/macosx/Makefile - modules/gui/hildon/Makefile modules/gui/minimal_macosx/Makefile modules/gui/macosx_dialog_provider/Makefile modules/gui/qt4/Makefile @@ -4286,8 +4185,6 @@ AC_CONFIG_FILES([ modules/visualization/Makefile modules/visualization/visual/Makefile modules/mmx/Makefile - modules/mmxext/Makefile - modules/3dnow/Makefile modules/sse2/Makefile modules/altivec/Makefile modules/arm_neon/Makefile