X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=configure.ac;h=2611a110304951158170993d6f4c134fb74e109a;hb=68f1623b0bba378deb64b2a22eb852732f5ec73e;hp=e9defb851a0fc2516fe91511a309ea3e926ad141;hpb=4b925047838c633d71165a0f9a9c879870203c64;p=vlc diff --git a/configure.ac b/configure.ac index e9defb851a..2611a11030 100644 --- a/configure.ac +++ b/configure.ac @@ -1694,7 +1694,7 @@ AS_IF([test "$SYS" = "linux" -a "${enable_linsys}" != "no"], [ dnl dnl dvdread module: check for libdvdread dnl -PKG_ENABLE_MODULES_VLC([DVDREAD], [], [dvdread], [dvdread input module], [auto]) +PKG_ENABLE_MODULES_VLC([DVDREAD], [], [dvdread > 4.9.0], [dvdread input module], [auto]) dnl dnl libdvdnav plugin @@ -1999,6 +1999,10 @@ dnl dnl ogg demux plugin dnl PKG_ENABLE_MODULES_VLC([OGG], [], [ogg >= 1.0], [Ogg demux support], [auto]) +PKG_CHECK_MODULES(LIBVORBIS, [vorbis >= 1.1], [ + AC_DEFINE(HAVE_LIBVORBIS, 1, [Define to 1 if you have the libvorbis]) +],[]) +PKG_ENABLE_MODULES_VLC([OGG], [], [ogg >= 1.0], [Ogg demux support], [auto], [${LIBVORBIS_CFLAGS}], [${LIBVORBIS_LIBS}]) if test "${enable_sout}" != "no"; then PKG_ENABLE_MODULES_VLC([MUX_OGG], [], [ogg >= 1.0], [Ogg mux support], [auto]) dnl Check for libshout @@ -2142,6 +2146,33 @@ then VLC_ADD_CFLAGS([omxil omxil_vout],[-DRPI_OMX]) fi +dnl +dnl MMAL codec plugin +dnl +AC_ARG_ENABLE(mmal-codec, + AS_HELP_STRING([--enable-mmal-codec], + [Multi-Media Abstraction Layer (MMAL) based codec plugin for Raspberry Pi (default enable)])) +if test "${enable_mmal_codec}" != "no"; then + VLC_SAVE_FLAGS + LDFLAGS="${LDFLAGS} -L/opt/vc/lib" + CPPFLAGS="${CPPFLAGS} -I/opt/vc/include -I/opt/vc/include/interface/vcos/pthreads -I/opt/vc/include/interface/vmcs_host/linux" + AC_CHECK_HEADERS(interface/mmal/mmal.h, + [ AC_CHECK_LIB(bcm_host, bcm_host_init, [ + VLC_ADD_PLUGIN([mmal_codec]) + VLC_ADD_LDFLAGS([mmal_codec],[ -L/opt/vc/lib ]) + VLC_ADD_CFLAGS([mmal_codec],[ -I/opt/vc/include -I/opt/vc/include/interface/vcos/pthreads -I/opt/vc/include/interface/vmcs_host/linux ]) + VLC_ADD_LIBS([mmal_codec],[ -lbcm_host -lmmal ]) ], [ + AS_IF([test "${enable_mmal_codec}" = "yes"], + [ AC_MSG_ERROR([Cannot find bcm library...]) ], + [ AC_MSG_WARN([Cannot find bcm library...]) ]) + ], + []) + ] , [ AS_IF([test "${enable_mmal_codec}" = "yes"], + [ AC_MSG_ERROR([Cannot find development headers for mmal...]) ], + [ AC_MSG_WARN([Cannot find development headers for mmal...]) ]) ]) + VLC_RESTORE_FLAGS +fi + dnl dnl CrystalHD codec plugin dnl @@ -2251,6 +2282,26 @@ PKG_CHECK_EXISTS([libavutil], [ ]) AC_MSG_RESULT([${avfork}]) +dnl +dnl gstreamer stuff +dnl +AC_ARG_ENABLE(gst-decode, + [ --enable-gst-decode GStreamer based decoding support (currently supports only video decoding) (default auto)]) + +have_gst_decode="no" +AS_IF([test "${enable_gst_decode}" != "no"], [ + PKG_CHECK_MODULES([GST_APP], [gstreamer-app-1.0], [ + PKG_CHECK_MODULES([GST_VIDEO], [gstreamer-video-1.0], [ + have_gst_decode="yes" + ], [ + AC_MSG_WARN([${GST_VIDEO_PKG_ERRORS}. GStreamer decoder module will not be built.]) + ]) + ], [ + AC_MSG_WARN([${GST_APP_PKG_ERRORS}. GStreamer modules will not be built.]) + ]) +]) +AM_CONDITIONAL([HAVE_GST_DECODE], [test "${have_gst_decode}" = "yes"]) + dnl dnl avcodec decoder/encoder plugin dnl @@ -2285,30 +2336,50 @@ AC_ARG_ENABLE(libva, 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.]) ]) -have_avcodec_vaapi="no" -AS_IF([test "${enable_libva}" != "no" -a "${have_avcodec}" = "yes"], [ - PKG_CHECK_MODULES(LIBVA, [libva libva-x11], [ - VLC_SAVE_FLAGS - CPPFLAGS="${CPPFLAGS} ${AVCODEC_CFLAGS}" - CFLAGS="${CFLAGS} ${AVCODEC_CFLAGS}" - AC_CHECK_HEADERS(libavcodec/vaapi.h, [ - AC_MSG_NOTICE([VAAPI acceleration activated]) - have_avcodec_vaapi="yes" - ],[ - 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 - ],[ + +have_vaapi="no" +have_vaapi_drm="no" +have_vaapi_x11="no" +AS_IF([test "${enable_libva}" != "no"], [ + PKG_CHECK_EXISTS([libva], [ + have_vaapi="yes" + ], [ AS_IF([test -n "${enable_libva}"], [ AC_MSG_ERROR([${LIBVA_PKG_ERRORS}.]) ], [ AC_MSG_WARN([${LIBVA_PKG_ERRORS}.]) ]) ]) + PKG_CHECK_MODULES([LIBVA_DRM], [libva-drm], [ + have_vaapi_drm="yes" + ], [ + AC_MSG_WARN([${LIBVA_DRM_PKG_ERRORS}.]) + ]) + PKG_CHECK_MODULES(LIBVA_X11, [libva-x11], [ + have_vaapi_x11="yes" + ], [ + AC_MSG_WARN([${LIBVA_X11_PKG_ERRORS}.]) + ]) +]) +AM_CONDITIONAL([HAVE_VAAPI_DRM], [test "${have_vaapi_drm}" = "yes"]) +AM_CONDITIONAL([HAVE_VAAPI_X11], [test "${have_vaapi_x11}" = "yes"]) + +have_avcodec_vaapi="no" +AS_IF([test "${have_vaapi}" = "yes" -a "${have_avcodec}" = "yes"], [ + VLC_SAVE_FLAGS + CPPFLAGS="${CPPFLAGS} ${AVCODEC_CFLAGS}" + CFLAGS="${CFLAGS} ${AVCODEC_CFLAGS}" + AC_CHECK_HEADERS([libavcodec/vaapi.h], [ + AC_MSG_NOTICE([VAAPI acceleration activated]) + have_avcodec_vaapi="yes" + ],[ + 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 ]) AM_CONDITIONAL([HAVE_AVCODEC_VAAPI], [test "${have_avcodec_vaapi}" = "yes"]) @@ -2377,7 +2448,13 @@ AS_IF([test "${enable_vda}" != "no"], [ AC_MSG_ERROR([--enable-vda and --disable-avcodec options are mutually exclusive.]) ]) ]) - fi + AS_IF([test "${have_avcodec_vda}" = "yes"], [ + SAVE_LIBS=$LIBS + LIBS="$LIBS $AVCODEC_LIBS" + AC_CHECK_FUNCS([av_vda_alloc_context]) + LIBS=$SAVE_LIBS + ]) + fi ]) AM_CONDITIONAL([HAVE_AVCODEC_VDA], [test "${have_avcodec_vda}" = "yes"]) @@ -2969,27 +3046,25 @@ PKG_CHECK_MODULES([EGL], [egl], [ ]) AM_CONDITIONAL([HAVE_EGL], [test "${have_egl}" = "yes"]) +have_gl="no" PKG_CHECK_MODULES([GL], [gl], [ have_gl="yes" ], [ - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([ - [#include ]], [ + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ +#ifdef _WIN32 +# include +#endif +#include +]], [ [int t0 = GL_TEXTURE0;]]) ], [ GL_CFLAGS="" + have_gl="yes" AS_IF([test "${SYS}" != "mingw32"], [ - have_gl="yes" GL_LIBS="-lGL" ], [ - AC_CHECK_HEADER([GL/glew.h], [ - have_gl="yes" - ], [ - have_gl="no" - ]) GL_LIBS="-lopengl32" ]) - ], [ - have_gl="no" ]) ]) AM_CONDITIONAL([HAVE_GL], [test "${have_gl}" = "yes"]) @@ -3081,14 +3156,14 @@ AS_IF([test "${have_vdpau}" = "yes" -a "${have_avcodec}" = "yes"], [ libav) av_vdpau_ver="55.26.0" ;; ffmpeg) av_vdpau_ver="55.42.100" ;; esac - PKG_CHECK_EXISTS([libavutil >= 0.52.4 libavcodec >= ${av_vdpau_ver}], [ + PKG_CHECK_EXISTS([libavutil >= 52.4.0 libavcodec >= ${av_vdpau_ver}], [ have_avcodec_vdpau="yes" AC_MSG_NOTICE([VDPAU decoding acceleration activated]) ], [ AS_IF([test -n "${enable_vdpau}"], [ - AC_MSG_ERROR([libavutil >= 0.52.4 and libavcodec >= 55.26.0 are required for VDPAU decoding.]) + AC_MSG_ERROR([libavutil >= 52.4.0 and libavcodec >= 55.26.0 are required for VDPAU decoding.]) ], [ - AC_MSG_WARN([libavutil >= 0.52.4 and libavcodec >= 55.26.0 are required for VDPAU decoding.]) + AC_MSG_WARN([libavutil >= 52.4.0 and libavcodec >= 55.26.0 are required for VDPAU decoding.]) ]) ]) ]) @@ -3214,9 +3289,10 @@ then fi dnl -dnl SVG module +dnl SVG module (text rendering and image decoding) dnl PKG_ENABLE_MODULES_VLC([SVG], [], [librsvg-2.0 >= 2.9.0], [SVG rendering library],[auto]) +PKG_ENABLE_MODULES_VLC([SVGDEC], [], [librsvg-2.0 >= 2.9.0 cairo >= 1.13.1], [SVG image decoder library],[auto]) dnl dnl android surface module @@ -3392,6 +3468,33 @@ AS_IF([test "$enable_kva" != "no"], [ AC_SUBST(KVA_LIBS) AM_CONDITIONAL([HAVE_KVA], [test "${have_kva}" = "yes"]) +dnl +dnl MMAL vout plugin +dnl +AC_ARG_ENABLE(mmal-vout, + AS_HELP_STRING([--enable-mmal-vout], + [Multi-Media Abstraction Layer (MMAL) based vout plugin for Raspberry Pi (default enable)])) +if test "${enable_mmal_vout}" != "no"; then + VLC_SAVE_FLAGS + LDFLAGS="${LDFLAGS} -L/opt/vc/lib" + CPPFLAGS="${CPPFLAGS} -I/opt/vc/include -I/opt/vc/include/interface/vcos/pthreads -I/opt/vc/include/interface/vmcs_host/linux" + AC_CHECK_HEADERS(interface/mmal/mmal.h, + [ AC_CHECK_LIB(bcm_host, vc_tv_unregister_callback_full, [ + VLC_ADD_PLUGIN([mmal_vout]) + VLC_ADD_LDFLAGS([mmal_vout],[ -L/opt/vc/lib ]) + VLC_ADD_CFLAGS([mmal_vout],[ -I/opt/vc/include -I/opt/vc/include/interface/vcos/pthreads -I/opt/vc/include/interface/vmcs_host/linux ]) + VLC_ADD_LIBS([mmal_vout],[ -lbcm_host -lmmal ]) ], [ + AS_IF([test "${enable_mmal_vout}" = "yes"], + [ AC_MSG_ERROR([Cannot find bcm library...]) ], + [ AC_MSG_WARN([Cannot find bcm library...]) ]) + ], + []) + ] , [ AS_IF([test "${enable_mmal_vout}" = "yes"], + [ AC_MSG_ERROR([Cannot find development headers for mmal...]) ], + [ AC_MSG_WARN([Cannot find development headers for mmal...]) ]) ]) + VLC_RESTORE_FLAGS +fi + dnl dnl Audio plugins dnl @@ -3406,23 +3509,11 @@ AC_ARG_ENABLE(pulse, [use the PulseAudio client library (default auto)])]) have_pulse="no" AS_IF([test "${enable_pulse}" != "no"], [ - PKG_CHECK_MODULES([PULSE], [libpulse >= 0.9.22], [ + PKG_CHECK_MODULES([PULSE], [libpulse >= 1.0], [ have_pulse="yes" ], [ - PKG_CHECK_MODULES([PULSE], [libpulse >= 0.9.16], [ - AS_IF([test "${no_x}" != "yes"], [ - have_pulse="yes" - PULSE_LIBS="$PULSE_LIBS ${X_LIBS} ${X_PRE_LIBS} -lX11" - ], [ - AS_IF([test "${enable_pulse}" = "yes"], [ - AC_MSG_ERROR([Xlib is required with PulseAudio pre-0.9.22 versions -(see http://www.pulseaudio.org/ticket/799 for further reference).]) - ]) - ]) - ], [ - AS_IF([test "x${enable_pulse}" != "x"], [ - AC_MSG_ERROR([$PULSE_PKG_ERRORS. PulseAudio 0.9.22 or later required.]) - ]) + AS_IF([test "x${enable_pulse}" != "x"], [ + AC_MSG_ERROR([$PULSE_PKG_ERRORS. PulseAudio 1.0 or later required.]) ]) ]) ]) @@ -3618,9 +3709,10 @@ AC_ARG_ENABLE(qt, [ AS_IF([test "${enable_qt}" != "no"], [ PKG_CHECK_MODULES([QT], [Qt5Core >= 5.1.0 Qt5Widgets Qt5Gui], [ QT_PATH="$(eval $PKG_CONFIG --variable=exec_prefix Qt5Core)" - AC_PATH_PROGS(MOC, [moc-qt5 moc], moc, [${QT_PATH}/bin ${CONTRIB_DIR}/bin]) - AC_PATH_PROG(RCC, [rcc-qt5 rcc], rcc, [${QT_PATH}/bin ${CONTRIB_DIR}/bin]) - AC_PATH_PROGS(UIC, [uic-qt5 uic], uic, [${QT_PATH}/bin ${CONTRIB_DIR}/bin]) + QT_HOST_PATH="$(eval $PKG_CONFIG --variable=host_bins Qt5Core)" + AC_PATH_PROGS(MOC, [moc-qt5 moc], moc, [${QT_HOST_PATH} ${QT_PATH}/bin ${CONTRIB_DIR}/bin]) + AC_PATH_PROG(RCC, [rcc-qt5 rcc], rcc, [${QT_HOST_PATH} ${QT_PATH}/bin ${CONTRIB_DIR}/bin]) + AC_PATH_PROGS(UIC, [uic-qt5 uic], uic, [${QT_HOST_PATH} ${QT_PATH}/bin ${CONTRIB_DIR}/bin]) ], [ PKG_CHECK_MODULES([QT], [QtCore QtGui >= 4.6.0],, [ AS_IF([test -n "${enable_qt}"],[ @@ -3928,10 +4020,10 @@ AS_IF([test "${enable_libgcrypt}" != "no"], [ GCRYPT_CFLAGS="`libgcrypt-config --cflags`" GCRYPT_LIBS="`libgcrypt-config --libs`" ], [ - AC_MSG_ERROR([libgcrypt not found. Install libgcrypt or use --disable-libgcrypt. Have a nice day.]) + AC_MSG_ERROR([libgcrypt not found. Install libgcrypt or pass --disable-libgcrypt.]) ], [`libgcrypt-config --libs`]) ], [ - AC_MSG_ERROR([libgcrypt version 1.1.94 or higher not found. Install libgcrypt or use --disable-libgcrypt. Have a nice day.]) + AC_MSG_ERROR([libgcrypt version 1.1.94 or higher not found. Install libgcrypt or pass --disable-libgcrypt.]) ], [#include ] ) ]) @@ -3963,7 +4055,7 @@ AC_ARG_ENABLE(taglib, [AS_HELP_STRING([--disable-taglib], [do not use TagLib (default enabled)])]) AS_IF([test "${enable_taglib}" != "no"], [ - PKG_CHECK_MODULES(TAGLIB, taglib >= 1.6.1, [ + PKG_CHECK_MODULES(TAGLIB, taglib >= 1.9, [ VLC_ADD_PLUGIN([taglib]) ], [ AC_MSG_WARN([${TAGLIB_PKG_ERRORS}.])])