-AC_PREREQ([2.68])
+AC_PREREQ([2.69])
dnl initialize autoconf
dnl when going to/from release please set the nano (fourth number) right !
-dnl releases only do Wall, cvs and prerelease does Werror too
-AC_INIT([GStreamer Bad Plug-ins],[1.5.0.1],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-bad])
+dnl releases only do Wall, git and prerelease does Werror too
+AC_INIT([GStreamer Bad Plug-ins],[1.7.0.1],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-bad])
AG_GST_INIT
dnl initialize automake
-AM_INIT_AUTOMAKE([-Wno-portability 1.11 no-dist-gzip dist-xz tar-ustar subdir-objects])
+AM_INIT_AUTOMAKE([-Wno-portability 1.14 no-dist-gzip dist-xz tar-ustar subdir-objects])
dnl define PACKAGE_VERSION_* variables
AS_VERSION
[AM_DEFAULT_VERBOSITY=1
AC_SUBST(AM_DEFAULT_VERBOSITY)])
+dnl PKG_CONFIG_SYSROOT_DIR is a valid environment variable
+m4_pattern_allow(PKG_CONFIG_SYSROOT_DIR)
+
dnl our libraries and install dirs use GST_API_VERSION in the filename
dnl to allow side-by-side installation of different API versions
GST_API_VERSION=1.0
dnl - interfaces added -> increment AGE
dnl - interfaces removed -> AGE = 0
dnl sets GST_LT_LDFLAGS
-AS_LIBTOOL(GST, 501, 0, 501)
+AS_LIBTOOL(GST, 700, 0, 700)
dnl *** required versions of GStreamer stuff ***
-GST_REQ=1.5.0.1
-GSTPB_REQ=1.5.0.1
+GST_REQ=1.7.0.1
+GSTPB_REQ=1.7.0.1
dnl *** autotools stuff ****
#ifndef GL_GLEXT_PROTOTYPES
#define GL_GLEXT_PROTOTYPES 1
#endif
-# ifdef __APPLE__
+# ifdef HAVE_IOS
# include <OpenGLES/ES2/gl.h>
# include <OpenGLES/ES2/glext.h>
# else
# include <GLES2/gl2.h>
# include <GLES2/gl2ext.h>
# endif
-# if __APPLE__
+# ifdef __APPLE__
# include <OpenGL/OpenGL.h>
# include <OpenGL/gl.h>
# if MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
if test "x$NEED_WGL" = "xyes"; then
AC_MSG_ERROR([WGL is not available on Mac OS X])
fi
- if test "x$NEED_EGL" = "xyes"; then
- AC_MSG_ERROR([EGL is not available on Mac OS X])
- fi
- if test "x$NEED_GLES2" = "xyes"; then
- AC_MSG_ERROR([OpenGL|ES 2.0 is not supported on your platform yet])
- fi
if test "x$NEED_COCOA" != "xno"; then
GL_LIBS="$LIBS -framework OpenGL -framework Cocoa -framework QuartzCore -framework CoreFoundation"
USE_OPENGL=yes
fi
fi
+
+ if test "x$HAVE_EGL" = "xyes"; then
+ if test "x$NEED_EGL" != "xno"; then
+ if test "x$HAVE_WINDOW_X11" = "xyes"; then
+ GL_LIBS="$GL_LIBS -lEGL $EGL_LIBS"
+ GL_CFLAGS="$GL_CFLAGS $EGL_CFLAGS"
+ USE_EGL=yes
+ fi
+ fi
+ fi
+
+ dnl OpenGL|ES 2.0
+ if test "x$HAVE_GLES2" = "xyes"; then
+ if test "x$NEED_GLES2" != "xno"; then
+ GL_LIBS="$GL_LIBS -lGLESv2"
+ USE_GLES2=yes
+ fi
+ fi
fi
;;
*-mingw32*)
#ifndef GL_GLEXT_PROTOTYPES
#define GL_GLEXT_PROTOTYPES 1
#endif
-# ifdef __APPLE__
+# ifdef HAVE_IOS
# include <OpenGLES/ES2/gl.h>
# include <OpenGLES/ES2/glext.h>
# else
if test "x$USE_OPENGL" = "xyes"; then
GL_INCLUDES="$GL_INCLUDES
-# if __APPLE__
+# ifdef __APPLE__
# include <OpenGL/OpenGL.h>
# include <OpenGL/gl.h>
# else
save_LIBS="$LIBS"
CFLAGS="$CFLAGS $DIRECTX_CFLAGS"
LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS"
- LIBS="$LIBS -ldsound -ldxerr9 -luser32"
+ LIBS="$LIBS -lwinmm -ldsound -ldxerr9 -luser32"
AC_MSG_CHECKING(for DirectSound LDFLAGS)
AC_LINK_IFELSE([AC_LANG_PROGRAM([[
#include <windows.h>
#include <dxerr9.h>
#include <dsound.h>
+#include <mmsystem.h>
]], [[
DXGetErrorString9 (0);
DirectSoundCreate(NULL, NULL, NULL);
if test "x$HAVE_DIRECTSOUND" = "xyes"; then
dnl this is much more than we want
- DIRECTSOUND_LIBS="-ldsound -ldxerr9 -luser32"
+ DIRECTSOUND_LIBS="-lwinmm -ldsound -ldxerr9 -luser32"
AC_SUBST(DIRECTX_CFLAGS)
AC_SUBST(DIRECTX_LDFLAGS)
AC_SUBST(DIRECTSOUND_LIBS)
dnl *** bluez ***
translit(dnm, m, l) AM_CONDITIONAL(USE_BLUEZ, true)
AG_GST_CHECK_FEATURE(BLUEZ, [Bluez], bluez, [
- PKG_CHECK_MODULES([BLUEZ4], [bluez < 5.0], [
- HAVE_BLUEZ=yes
- AC_DEFINE(HAVE_BLUEZ4,[1],[Old bluez detected])
- ], [
- PKG_CHECK_MODULES([BLUEZ5], [bluez >= 5.0], [
+ PKG_CHECK_MODULES([BLUEZ5], [bluez >= 5.0], [
+ PKG_CHECK_MODULES([GIO_UNIX], gio-unix-2.0 > 2.24, [
+ AC_CHECK_PROG([GDBUS_CODEGEN],[gdbus-codegen],[gdbus-codegen])
HAVE_BLUEZ=yes
- AC_DEFINE(HAVE_BLUEZ5,[1],[Current bluez detected])
+ AC_DEFINE(HAVE_BLUEZ5,[1],[Bluez5 detected])
], [
HAVE_BLUEZ=no
])
- ])
- AS_IF([ test x$HAVE_BLUEZ = xyes ],[
- dnl FIXME: we should be able to replace this with the GLib DBus stuff
- PKG_CHECK_MODULES([DBUS], [dbus-1], [HAVE_BLUEZ=yes], [HAVE_BLUEZ=no])
+ ], [
+ HAVE_BLUEZ=no
])
])
translit(dnm, m, l) AM_CONDITIONAL(USE_UVCH264, true)
AG_GST_CHECK_FEATURE(UVCH264, [UVC H264], uvch264, [
AC_CHECK_HEADER(linux/uvcvideo.h, HAVE_UVCVIDEO_H=yes, HAVE_UVCVIDEO_H=no)
- AG_GST_PKG_CHECK_MODULES(GST_VIDEO, gstreamer-video-1.0)
PKG_CHECK_MODULES(G_UDEV, gudev-1.0 , [
AC_DEFINE([HAVE_GUDEV], 1, [Define if gudev is installed])
HAVE_GUDEV="yes" ],
AC_SUBST(LIBUSB_CFLAGS)
AC_SUBST(LIBUSB_LIBS)
+dnl *** NVENC ***
+translit(dnm, m, l) AM_CONDITIONAL(USE_NVENC, true)
+AG_GST_CHECK_FEATURE(NVENC, [NVIDIA Encode API], nvenc, [
+ AG_GST_PKG_CHECK_MODULES(GST_VIDEO, gstreamer-video-1.0)
+ AG_GST_PKG_CHECK_MODULES(GST_PBUTILS, gstreamer-pbutils-1.0)
+ AC_ARG_WITH([cuda-prefix],
+ AS_HELP_STRING([--with-cuda-prefix],
+ [Use the provided prefix for detecting the cuda installation]),
+ [AS_IF([test "x$with_cuda_prefix" != "x"],
+ [CUDA_PREFIX="$with_cuda_prefix"])],
+ [CUDA_PREFIX=""])
+
+ HAVE_CUDA="yes"
+ if test "x$CUDA_PREFIX" != "x"; then
+ dnl only override if not already set
+ if test "x$CUDA_CFLAGS" = "x" -a "x$CUDA_LIBS" = "x"; then
+ dnl this is an educated guess, user can always override these
+ CUDA_CFLAGS="-I$CUDA_PREFIX/include"
+ CUDA_LIBS="-L$CUDA_PREFIX/lib -L$CUDA_PREFIX/lib64 -L$CUDA_PREFIX/lib/stubs -L$CUDA_PREFIX/lib64/stubs -lcuda -lcudart"
+ fi
+ else
+ PKG_CHECK_MODULES([CUDA], [cuda-7.5 cudart-7.5],, [
+ PKG_CHECK_MODULES([CUDA], [cuda-7.0 cudart-7.0],, [
+ PKG_CHECK_MODULES([CUDA], [cuda-6.5 cudart-6.5],, [
+ AC_MSG_WARN([Could not find cuda headers/libraries])])])])
+ fi
+
+ HAVE_CUDA_H=no
+ HAVE_CUDART_H=no
+ save_CPPFLAGS="$CPPFLAGS"
+ CPPFLAGS="$CUDA_CFLAGS $save_CPPFLAGS "
+ AC_CHECK_HEADER([cuda.h], [HAVE_CUDA_H=yes],
+ AC_MSG_WARN([Could not find cuda.h]))
+ AC_CHECK_HEADER([cuda_runtime_api.h], [HAVE_CUDART_H=yes],
+ AC_MSG_WARN([Could not find cuda_runtime_api.h]))
+ CPPFLAGS=$save_CPPFLAGS
+
+ dnl libcuda and libcudart libraries
+ save_LIBS="$LIBS"
+ LIBS="$CUDA_LIBS $save_LIBS"
+ HAVE_CUDART_LIB="no"
+ AC_CHECK_LIB(cudart,cudaGetErrorString,[HAVE_CUDART_LIB="yes"], [
+ AC_MSG_WARN([Could not find cudart library])])
+ HAVE_CUDA_LIB="no"
+ AC_CHECK_LIB(cuda,cuInit,[HAVE_CUDA_LIB="yes"], [
+ AC_MSG_WARN([Could not find cuda library])])
+ LIBS="$save_LIBS"
+
+ dnl nvEncodeAPI.h header
+ HAVE_NVENCODEAPI_H=no
+ AC_ARG_VAR(NVENCODE_CFLAGS, [C compiler flags for NvEncodeAPI.h])
+ save_CPPFLAGS="$CPPFLAGS"
+ CPPFLAGS="$NVENCODE_CFLAGS $save_CPPFLAGS"
+ AC_CHECK_HEADER([nvEncodeAPI.h], [
+ AC_PREPROC_IFELSE([AC_LANG_SOURCE([[#include <nvEncodeAPI.h>
+ #if NVENCAPI_MAJOR_VERSION < 5
+ #error "Need nvEncodeAPI.h >= 5.0"
+ #endif
+ ]])], [
+ HAVE_NVENCODEAPI_H=yes
+ ], [
+ AC_MSG_WARN([nvEncodeAPI.h must be >= 5.0])
+ ])
+ ],
+ AC_MSG_WARN([Could not find nvEncodeAPI.h]))
+ AC_SUBST(NVENCODE_CFLAGS)
+ CPPFLAGS="$save_CPPFLAGS"
+
+ dnl libnvnidia-encode library
+ HAVE_NVENCODE_LIB=no
+ AC_ARG_VAR(NVENCODE_LIBS, [linker flags for nvidia-encode])
+ saved_LIBS="$LIBS"
+ LIBS="$NVENCODE_LIBS $saved_LIBS"
+ AC_CHECK_LIB(nvidia-encode, NvEncodeAPICreateInstance, [HAVE_NVENCODE_LIB="yes"],
+ AC_MSG_WARN([Could not find library nvidia-encode]))
+ NVENCODE_LIBS="$NVENCODE_LIBS -lnvidia-encode"
+ AC_SUBST(NVENCODE_LIBS)
+ LIBS="$saved_LIBS"
+
+ USE_NVENC_GST_GL=no
+ if test "x$HAVE_CUDA_H" = "xyes" \
+ -a "x$HAVE_CUDART_H" = "xyes" \
+ -a "x$HAVE_CUDA_LIB" = "xyes" \
+ -a "x$HAVE_CUDART_LIB" = "xyes" \
+ -a "x$HAVE_NVENCODEAPI_H" = "xyes" \
+ -a "x$HAVE_NVENCODE_LIB" = "xyes"; then
+ HAVE_NVENC="yes"
+ if test x"$USE_OPENGL" = x"yes"; then
+ dnl cuda-gl interop header
+ save_CPPFLAGS="$CPPFLAGS"
+ CPPFLAGS="$save_CPPFLAGS $CUDA_CFLAGS"
+ AC_CHECK_HEADER([cuda_gl_interop.h], [
+ USE_NVENC_GST_GL="yes"
+ AC_DEFINE(HAVE_NVENC_GST_GL, [1] , [NVENC GStreamer OpenGL support available])
+ ])
+ CPPFLAGS="$save_CPPFLAGS"
+ fi
+ else
+ HAVE_NVENC="no"
+ fi
+])
+AM_CONDITIONAL(USE_NVENC_GST_GL, test "x$USE_NVENC_GST_GL" = "xyes")
dnl *** ext plug-ins ***
dnl keep this list sorted alphabetically !
dnl *** assrender ***
translit(dnm, m, l) AM_CONDITIONAL(USE_ASSRENDER, true)
AG_GST_CHECK_FEATURE(ASSRENDER, [ASS/SSA renderer], assrender, [
- PKG_CHECK_MODULES(ASSRENDER, libass >= 0.9.4, [
+ PKG_CHECK_MODULES(ASSRENDER, libass >= 0.10.2, [
HAVE_ASSRENDER="yes" ], [
HAVE_ASSRENDER="no"
])
dnl *** Curl ***
translit(dnm, m, l) AM_CONDITIONAL(USE_CURL, true)
AG_GST_CHECK_FEATURE(CURL, [Curl plugin], curl, [
- PKG_CHECK_MODULES(CURL, libcurl >= 7.21.0, [
+ PKG_CHECK_MODULES(CURL, libcurl >= 7.35.0, [
HAVE_CURL="yes"
- AC_CHECK_HEADERS([unistd.h sys/socket.h sys/types.h netinet/in.h netinet/ip.h netinet/tcp.h fcntl.h], [ ], [
+ AC_CHECK_HEADERS([unistd.h sys/socket.h sys/types.h netinet/in.h netinet/tcp.h fcntl.h], [ ], [
AC_CHECK_HEADERS([unistd.h sys/types.h winsock2.h ws2tcpip.h fcntl.h], [ ], [HAVE_CURL="no"])
])
+ AC_CHECK_HEADERS([netinet/ip.h], [], [HAVE_CURL="no"],
+ [[#ifdef HAVE_SYS_TYPES_H
+ # include <sys/types.h>
+ #endif
+ #ifdef HAVE_NETINET_IN_H
+ # include <netinet/in.h>
+ #endif
+ ]])
AC_MSG_CHECKING([for socket support needed by curlsink])
AC_MSG_RESULT($HAVE_CURL)
], [
dnl **** DASH ****
translit(dnm, m, l) AM_CONDITIONAL(USE_DASH, true)
AG_GST_CHECK_FEATURE(DASH, [DASH plug-in], dash, [
- PKG_CHECK_MODULES(LIBXML2, libxml-2.0 >= 2.4, [HAVE_LIBXML2="yes"
+ PKG_CHECK_MODULES(LIBXML2, libxml-2.0 >= 2.8, [HAVE_LIBXML2="yes"
HAVE_DASH="yes"], [HAVE_LIBXML2="no"
HAVE_DASH="no"])
AC_SUBST(LIBXML2_CFLAGS)
AG_GST_CHECK_FEATURE(DECKLINK, [decklink], decklink, [
HAVE_DECKLINK=no
case "$host" in
+ *android*)
+ HAVE_DECKLINK=no
+ ;;
*-*linux*)
if test "x$HAVE_PTHREAD_H" = "xyes"; then
AC_CHECK_LIB(dl, dlopen,
HAVE_DECKLINK=yes
DECKLINK_CXXFLAGS=
DECKLINK_LIBS="-lpthread -ldl"
- HAVE_DECKLINK_OSX=yes
+ HAVE_DECKLINK_OSX=yes
])
fi
;;
AC_MSG_CHECKING([Checking FAAD2 version in $faad_hdr])
for minor in 10 9 8 7 6 5 0; do
if test x$faad2_minor_version = "x"; then
- AC_EGREP_CPP([GST_CHECK_FAAD_VERSION \"2\.$minor\"], [
+ AC_EGREP_CPP([\"2\.$minor\"$], [
#include <$faad_hdr>
- GST_CHECK_FAAD_VERSION FAAD2_VERSION
+ FAAD2_VERSION
], [
faad2_minor_version=$minor
])
dnl *** libsrtp ***
translit(dnm, m, l) AM_CONDITIONAL(USE_SRTP, true)
AG_GST_CHECK_FEATURE(SRTP, [srtp library], srtp, [
- PKG_CHECK_MODULES(SRTP, libsrtp, HAVE_SRTP="yes",
+ PKG_CHECK_MODULES(SRTP, libsrtp, HAVE_SRTP="yes",
AG_GST_CHECK_LIBHEADER(SRTP, srtp, srtp_init, , srtp/srtp.h, SRTP_LIBS="-lsrtp")
)
AC_SUBST(SRTP_LIBS)
AC_SUBST(SRTP_CFLAGS)
])
+dnl *** dtls ***
+translit(dnm, m, l) AM_CONDITIONAL(USE_DTLS, true)
+AG_GST_CHECK_FEATURE(DTLS, [DTLS plugin], dtls, [
+ PKG_CHECK_MODULES(DTLS, [ openssl >= 1.0.1 libcrypto ], [
+ HAVE_DTLS="yes"
+ AC_SUBST(DTLS_CFLAGS)
+ AC_SUBST(DTLS_LIBS)
+ ], [
+ HAVE_DTLS="no"
+ ])
+])
+
dnl *** linsys ***
translit(dnm, m, l) AM_CONDITIONAL(USE_LINSYS, true)
AG_GST_CHECK_FEATURE(LINSYS, [Linear Systems SDI plugin], linsys, [
dnl a new version and the no-backward-compatibility define. (There doesn't
dnl seem to be a switch to suppress the warnings the cvcompat.h header
dnl causes.)
- PKG_CHECK_MODULES(OPENCV, opencv >= 2.0.0 opencv < 2.5.0 , [
+ PKG_CHECK_MODULES(OPENCV, opencv >= 2.3.0 opencv < 2.5.0 , [
AC_PROG_CXX
AC_LANG([C++])
OLD_CPPFLAGS=$CPPFLAGS
CPPFLAGS=$OPENCV_CFLAGS
- AC_CHECK_HEADERS([highgui.h opencv2/highgui/highgui_c.h])
+ something_not_found=no
+ AC_CHECK_HEADERS([opencv2/contrib/contrib.hpp \
+ opencv2/core/core_c.h \
+ opencv2/core/types_c.h \
+ opencv2/core/version.hpp \
+ opencv2/highgui/highgui_c.h \
+ opencv2/imgproc/imgproc.hpp \
+ opencv2/imgproc/imgproc_c.h \
+ opencv2/legacy/compat.hpp \
+ opencv2/legacy/legacy.hpp \
+ opencv2/objdetect/objdetect.hpp \
+ opencv2/video/background_segm.hpp], [], [something_not_found=yes])
CPPFLAGS=$OLD_CPPFLAGS
AC_LANG([C])
- if test $ac_cv_header_highgui_h = "yes" -o $ac_cv_header_opencv2_highgui_highgui_c_h = "yes" ; then
- HAVE_OPENCV="yes"
- else
- AC_MSG_RESULT([neither highgui.h nor opencv2/highgui/highgui_c.h could not be found])
+ if test $something_not_found = "yes"; then
+ AC_MSG_RESULT([not all opencv2 headers were found])
HAVE_OPENCV="no"
+ else
+ HAVE_OPENCV="yes"
fi
], [
HAVE_OPENCV="no"
AC_SUBST(OPENCV_PREFIX)
AC_SUBST(OPENCV_CFLAGS)
AC_SUBST(OPENCV_LIBS)
+ dnl the OpenCV prefix is used at runtime for some object properties, and also
+ dnl used here to detect which directory is the correct one. For the second
+ dnl case, make sure the right sysroot is used, ensuring correct behavior
+ dnl during cross compilation.
+ if test -d "$PKG_CONFIG_SYSROOT_DIR/$OPENCV_PREFIX/share/opencv/"; then
+ AC_DEFINE_UNQUOTED(OPENCV_PATH_NAME, ["opencv"], [OpenCV path name])
+ else
+ AC_DEFINE_UNQUOTED(OPENCV_PATH_NAME, ["OpenCV"], [OpenCV path name])
+ fi
])
dnl *** OpenEXR ***
dnl *** openh264 ***
translit(dnm, m, l) AM_CONDITIONAL(USE_OPENH264, true)
AG_GST_CHECK_FEATURE(OPENH264, [openh264 library], openh264, [
- AG_GST_PKG_CHECK_MODULES(OPENH264, openh264)
+ AG_GST_PKG_CHECK_MODULES(OPENH264, openh264 >= 1.3.0)
])
dnl *** OpenJPEG ***
fi
])
+dnl *** gtk+ ***
+HAVE_GTK3_GL="no"
+translit(dnm, m, l) AM_CONDITIONAL(USE_GTK3, true)
+AG_GST_CHECK_FEATURE(GTK3, [Gtk+ elements], gtk, [
+ PKG_CHECK_MODULES(GTK3, gtk+-3.0, [
+ AC_DEFINE([HAVE_GTK3], 1, [Define if Gtk+ 3.0 is installed])
+ HAVE_GTK3="yes"
+ ], [
+ HAVE_GTK3="no"
+ ])
+ PKG_CHECK_MODULES(GTK3_GL, gtk+-3.0 >= 3.15.0, [
+ GDK_WINDOWING="no"
+ if test "x$GST_GL_HAVE_WINDOW_X11" = "x1" -a "x$GST_GL_HAVE_PLATFORM_GLX" = "x1"; then
+ PKG_CHECK_MODULES(GTK3_X11, gtk+-x11-3.0, [
+ GTK3_CFLAGS="$GTK3_CFLAGS $GTK3_X11_CFLAGS"
+ GTK3_LIBS="$GTK3_LIBS $GTK3_X11_LIBS"
+ GDK_WINDOWING="yes"
+ ], [AC_MSG_NOTICE([Could not find Gtk X11 integration])])
+ fi
+ if test "x$GST_GL_HAVE_WINDOW_WAYLAND" = "x1" -a "x$GST_GL_HAVE_PLATFORM_EGL" = "x1"; then
+ PKG_CHECK_MODULES(GTK3_WAYLAND, gtk+-wayland-3.0, [
+ GTK3_CFLAGS="$GTK3_CFLAGS $GTK3_WAYLAND_CFLAGS"
+ GTK3_LIBS="$GTK3_LIBS $GTK3_WAYLAND_LIBS"
+ GDK_WINDOWING="yes"
+ ], [AC_MSG_NOTICE([Could not find Gtk Wayland integration])])
+ fi
+ if test "x$GDK_WINDOWING" = "xyes"; then
+ AC_DEFINE([HAVE_GTK3_GL], 1, [Define if Gtk+ 3.0 GL is installed])
+ HAVE_GTK3_GL="yes"
+ fi
+ ], [
+ HAVE_GTK3_GL="no"
+ ])
+])
+AM_CONDITIONAL(USE_GTK3_GL, test "x$HAVE_GTK3_GL" = "xyes")
+
+dnl *** Qt ***
+translit(dnm, m, l) AM_CONDITIONAL(USE_QT, true)
+AG_GST_CHECK_FEATURE(QT, [Qt elements], qt, [
+ PKG_CHECK_MODULES(QT, Qt5Core Qt5Gui Qt5Qml Qt5Quick >= 5.4.0, [
+ QT_PATH=`$PKG_CONFIG --variable=exec_prefix Qt5Core`
+ QT_HOST_PATH=`$PKG_CONFIG --variable=host_bins Qt5Core`
+ AC_PATH_PROGS(MOC, [moc-qt5 moc], moc, ["${QT_HOST_PATH}" "${QT_PATH}/bin"])
+ AC_PATH_PROGS(RCC, [rcc-qt5 rcc], rcc, ["${QT_HOST_PATH}" "${QT_PATH}/bin"])
+ AC_PATH_PROGS(UIC, [uic-qt5 uic], uic, ["${QT_HOST_PATH}" "${QT_PATH}/bin"])
+ if test "x$MOC" = "x" || test "x$UIC" = "x" || test "x$RCC" = "x"; then
+ AC_MSG_WARN([One of the required qt build programs was not found])
+ HAVE_QT="no"
+ else
+ HAVE_QT="yes"
+ HAVE_QT_WINDOWING="no"
+ if test "x$GST_GL_HAVE_WINDOW_X11" = "x1" -a "x$GST_GL_HAVE_PLATFORM_GLX" = "x1"; then
+ PKG_CHECK_MODULES(QT_X11, Qt5X11Extras, [
+ AC_DEFINE([HAVE_QT_X11], [], [Define if Qt X11 integration is installed])
+ QT_CFLAGS="$QT_CFLAGS $QT_X11_CFLAGS"
+ QT_LIBS="$QT_LIBS $QT_X11_LIBS"
+ HAVE_QT_WINDOWING="yes"
+ ], [AC_MSG_NOTICE([Could not find Qt X11 integration])])
+ fi
+ if test "x$GST_GL_HAVE_WINDOW_WAYLAND" = "x1" -a "x$GST_GL_HAVE_PLATFORM_EGL" = "x1"; then
+ PKG_CHECK_MODULES(QT_WAYLAND, Qt5WaylandClient, [
+ AC_DEFINE([HAVE_QT_WAYLAND], [],
+ [Define if Qt Wayland integration is installed])
+ QT_CFLAGS="$QT_CFLAGS $QT_WAYLAND_CFLAGS"
+ QT_LIBS="$QT_LIBS $QT_WAYLAND_LIBS"
+ HAVE_QT_WINDOWING="yes"
+ ], [AC_MSG_NOTICE([Could not find Qt Wayland integration])])
+ fi
+ if test "x$GST_GL_HAVE_WINDOW_ANDROID" = "x1" -a "x$GST_GL_HAVE_PLATFORM_EGL" = "x1"; then
+ PKG_CHECK_MODULES(QT_ANDROID, Qt5AndroidExtras, [
+ # c++ on android requires a standard library and there are multiple
+ # choices. cerbero provides a pkg-config file the describes a choice
+ # so try to use that. Outside cerbero one has to pass these flags
+ # manually for the library one is using
+ PKG_CHECK_MODULES(GNUSTL, gnustl, [
+ QT_CFLAGS="$QT_CFLAGS $GNUSTL_CFLAGS"
+ QT_LIBS="$QT_CFLAGS $GNUSTL_LIBS"
+ ], [
+ AC_MSG_NOTICE([Could not find Standard C++ library])])
+
+ AC_DEFINE([HAVE_QT_ANDROID], [],
+ [Define if Qt Android integration is installed])
+ QT_CFLAGS="$QT_CFLAGS $QT_ANDROID_CFLAGS"
+ QT_LIBS="$QT_LIBS $QT_ANDROID_LIBS"
+ HAVE_QT_WINDOWING="yes"
+ ], [AC_MSG_NOTICE([Could not find Qt Android integration])])
+ fi
+ if test "x$GST_GL_HAVE_WINDOW_COCOA" = "x1" -a "x$GST_GL_HAVE_PLATFORM_CGL" = "x1"; then
+ PKG_CHECK_MODULES(QT_MAC, Qt5MacExtras, [
+ AC_DEFINE([HAVE_QT_MAC], [],
+ [Define if Qt Mac integration is installed])
+ QT_LIBDIR=`$PKG_CONFIG --variable=libdir Qt5Core`
+ QT_CFLAGS="$QT_CFLAGS $QT_MAC_CFLAGS -F$QT_LIBDIR -framework QtCore -framework QtGui -framework QtQuick -framework QtQml -framework QtMacExtras"
+ QT_LIBS="$QT_LIBS $QT_MAC_LIBS"
+ HAVE_QT_WINDOWING="yes"
+ ], [AC_MSG_NOTICE([Could not find Qt Mac integration])])
+ fi
+ if test "x$GST_GL_HAVE_WINDOW_EAGL" = "x1" -a "x$GST_GL_HAVE_PLATFORM_EAGL" = "x1"; then
+ if test "x$HAVE_IOS" = "xyes"; then
+ # iOS doesn't have its own extras package so if we have the core
+ # modules we are good to go
+ AC_DEFINE([HAVE_QT_IOS], [],
+ [Define if Qt iOS integration is installed])
+ HAVE_QT_WINDOWING="yes"
+ fi
+ fi
+ if test "x$HAVE_QT_WINDOWING" = "xno"; then
+ AC_MSG_WARN([Could not find any Qt Windowing integration])
+ HAVE_QT="no"
+ fi
+ AC_SUBST([QT_CFLAGS])
+ AC_SUBST([QT_LIBS])
+ fi
+ ], [
+ HAVE_QT="no"
+ ])
+])
+
dnl *** libvisual ***
translit(dnm, m, l) AM_CONDITIONAL(USE_LIBVISUAL, true)
AG_GST_CHECK_FEATURE(LIBVISUAL, [libvisual visualization library], libvisual, [
AM_CONDITIONAL(USE_FLUIDSYNTH, false)
AM_CONDITIONAL(USE_GL, false)
AM_CONDITIONAL(USE_GSM, false)
+AM_CONDITIONAL(USE_GTK3, false)
+AM_CONDITIONAL(USE_GTK3_GL, false)
AM_CONDITIONAL(USE_HLS, false)
AM_CONDITIONAL(USE_KATE, false)
AM_CONDITIONAL(USE_TIGER, false)
AM_CONDITIONAL(USE_OPENNI2, false)
AM_CONDITIONAL(USE_OPUS, false)
AM_CONDITIONAL(USE_PVR, false)
+AM_CONDITIONAL(USE_QT, false)
AM_CONDITIONAL(USE_LIBVISUAL, false)
AM_CONDITIONAL(USE_TIMIDITY, false)
AM_CONDITIONAL(USE_WILDMIDI, false)
AM_CONDITIONAL(USE_WEBP, false)
AM_CONDITIONAL(USE_OPENH264, false)
AM_CONDITIONAL(USE_X265, false)
+AM_CONDITIONAL(USE_DTLS, false)
fi dnl of EXT plugins
sys/dvb/Makefile
sys/fbdev/Makefile
sys/linsys/Makefile
+sys/nvenc/Makefile
sys/opensles/Makefile
sys/shm/Makefile
sys/uvch264/Makefile
tests/examples/Makefile
tests/examples/avsamplesink/Makefile
tests/examples/camerabin2/Makefile
+tests/examples/codecparsers/Makefile
tests/examples/directfb/Makefile
tests/examples/gl/Makefile
tests/examples/gl/cocoa/Makefile
tests/examples/gl/generic/recordgraphic/Makefile
tests/examples/gl/gtk/Makefile
tests/examples/gl/gtk/gtkvideooverlay/Makefile
+tests/examples/gl/gtk/3dvideo/Makefile
tests/examples/gl/gtk/filternovideooverlay/Makefile
tests/examples/gl/gtk/filtervideooverlay/Makefile
tests/examples/gl/gtk/fxtest/Makefile
tests/examples/gl/gtk/switchvideooverlay/Makefile
tests/examples/gl/qt/Makefile
tests/examples/gl/sdl/Makefile
+tests/examples/gtk/Makefile
tests/examples/mpegts/Makefile
tests/examples/mxf/Makefile
tests/examples/opencv/Makefile
ext/daala/Makefile
ext/dts/Makefile
ext/gl/Makefile
+ext/gtk/Makefile
ext/faac/Makefile
ext/faad/Makefile
ext/flite/Makefile
ext/openjpeg/Makefile
ext/openni2/Makefile
ext/opus/Makefile
+ext/qt/Makefile
ext/rsvg/Makefile
ext/resindvd/Makefile
ext/rtmp/Makefile
ext/x265/Makefile
ext/xvid/Makefile
ext/zbar/Makefile
+ext/dtls/Makefile
po/Makefile.in
docs/Makefile
docs/plugins/Makefile