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]) AG_GST_INIT dnl initialize automake AM_INIT_AUTOMAKE([-Wno-portability 1.14 no-dist-gzip dist-xz tar-ustar subdir-objects]) dnl define PACKAGE_VERSION_* variables AS_VERSION dnl check if this is a release version AS_NANO(GST_GIT="no", GST_GIT="yes") dnl can autoconf find the source ? AC_CONFIG_SRCDIR([docs/plugins/gst-plugins-bad-plugins-docs.sgml]) dnl define the output header for config AC_CONFIG_HEADERS([config.h]) dnl AM_MAINTAINER_MODE only provides the option to configure to enable it AM_MAINTAINER_MODE([enable]) dnl sets host_* variables AC_CANONICAL_HOST dnl use pretty build output with automake >= 1.11 m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])], [AM_DEFAULT_VERBOSITY=1 AC_SUBST(AM_DEFAULT_VERBOSITY)]) 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 AC_SUBST(GST_API_VERSION) AC_DEFINE_UNQUOTED(GST_API_VERSION, "$GST_API_VERSION", [GStreamer API Version]) AG_GST_LIBTOOL_PREPARE dnl CURRENT, REVISION, AGE dnl - library source changed -> increment REVISION dnl - interfaces added/removed/changed -> increment CURRENT, REVISION = 0 dnl - interfaces added -> increment AGE dnl - interfaces removed -> AGE = 0 dnl sets GST_LT_LDFLAGS AS_LIBTOOL(GST, 501, 0, 501) dnl *** required versions of GStreamer stuff *** GST_REQ=1.5.0.1 GSTPB_REQ=1.5.0.1 dnl *** autotools stuff **** dnl allow for different autotools AS_AUTOTOOLS_ALTERNATE dnl Add parameters for aclocal AC_SUBST(ACLOCAL_AMFLAGS, "-I m4 -I common/m4") dnl set up gettext dnl the version check needs to stay here because autopoint greps for it AM_GNU_GETTEXT_VERSION([0.17]) AM_GNU_GETTEXT([external]) AG_GST_GETTEXT([gst-plugins-bad-$GST_API_VERSION]) dnl *** check for arguments to configure *** AG_GST_ARG_DISABLE_FATAL_WARNINGS AG_GST_ARG_DEBUG AG_GST_ARG_PROFILING AG_GST_ARG_VALGRIND AG_GST_ARG_GCOV AG_GST_ARG_EXAMPLES AG_GST_ARG_WITH_PKG_CONFIG_PATH AG_GST_ARG_WITH_PACKAGE_NAME AG_GST_ARG_WITH_PACKAGE_ORIGIN AG_GST_ARG_WITH_PLUGINS AG_GST_ARG_ENABLE_EXTERNAL AG_GST_ARG_ENABLE_EXPERIMENTAL AG_GST_PKG_CONFIG_PATH dnl *** checks for platform *** AG_GST_PLATFORM dnl * hardware/architecture * dnl common/m4/gst-arch.m4 dnl check CPU type AG_GST_ARCH dnl Determine endianness AC_C_BIGENDIAN dnl *** checks for programs *** dnl find a compiler AC_PROG_CC AC_PROG_CC_STDC dnl determine c++ compiler AC_PROG_CXX dnl determine if c++ is available on this system AC_CHECK_PROG(HAVE_CXX, $CXX, yes, no) AC_PROG_OBJC dnl check if the compiler supports '-c' and '-o' options AM_PROG_CC_C_O dnl check if the compiler supports do while(0) macros AG_GST_CHECK_DOWHILE_MACROS AC_PATH_PROG(VALGRIND_PATH, valgrind, no) AM_CONDITIONAL(HAVE_VALGRIND, test ! "x$VALGRIND_PATH" = "xno") dnl check for gobject-introspection GOBJECT_INTROSPECTION_CHECK([1.31.1]) dnl check for documentation tools GTK_DOC_CHECK([1.12]) AG_GST_PLUGIN_DOCS([1.12]) dnl *** checks for libraries *** dnl check for libm, for sin() etc. LT_LIB_M AC_SUBST(LIBM) AC_FUNC_MMAP dnl check for pthreads AX_PTHREAD dnl *** checks for header files *** AC_CHECK_HEADERS([unistd.h], HAVE_UNISTD_H=yes) AM_CONDITIONAL(HAVE_UNISTD_H, test "x$HAVE_UNISTD_H" = "xyes") if test "x$HAVE_UNISTD_H" != "xyes"; then GST_PLUGINS_SELECTED=`echo $GST_PLUGINS_SELECTED | $SED -e s/festival//` fi AC_CHECK_HEADERS([sys/time.h]) dnl used by ext/dts AX_CREATE_STDINT_H AC_CHECK_HEADERS([pthread.h], HAVE_PTHREAD_H=yes) AM_CONDITIONAL(HAVE_PTHREAD_H, test "x$HAVE_PTHREAD_H" = "xyes") if test "x$HAVE_PTHREAD_H" != "xyes"; then GST_PLUGINS_SELECTED=`echo $GST_PLUGINS_SELECTED | $SED -e s/dccp//` fi dnl *** checks for types/defines *** dnl Check for FIONREAD ioctl declaration dnl used in gst/dccp GST_CHECK_FIONREAD dnl *** checks for structures *** dnl *** checks for compiler characteristics *** dnl *** checks for library functions *** AC_CHECK_FUNCS([gmtime_r]) dnl *** checks for headers *** AC_CHECK_HEADERS([sys/utsname.h]) dnl *** checks for dependency libraries *** dnl *** checks for socket and nsl libraries *** AC_CHECK_FUNC(socket,,[AC_CHECK_LIB(socket,socket)]) AC_CHECK_FUNC(gethostbyname,,[AC_CHECK_LIB(nsl,gethostbyname)]) dnl GLib is required GLIB_REQ=2.32.0 AG_GST_GLIB_CHECK([$GLIB_REQ]) dnl checks for gstreamer dnl uninstalled is selected preferentially -- see pkg-config(1) AG_GST_CHECK_GST($GST_API_VERSION, [$GST_REQ], yes) AG_GST_CHECK_GST_BASE($GST_API_VERSION, [$GST_REQ], yes) AG_GST_CHECK_GST_CHECK($GST_API_VERSION, [$GST_REQ], no) AG_GST_CHECK_GST_CONTROLLER($GST_API_VERSION, [$GST_REQ], yes) AM_CONDITIONAL(HAVE_GST_CHECK, test "x$HAVE_GST_CHECK" = "xyes") AG_GST_CHECK_GST_PLUGINS_BASE($GST_API_VERSION, [$GSTPB_REQ], yes) dnl check for uninstalled plugin directories for unit tests AG_GST_CHECK_UNINSTALLED_SETUP([ AG_GST_CHECK_GST_PLUGINS_GOOD($GST_API_VERSION, [0.11.0]) AG_GST_CHECK_GST_PLUGINS_UGLY($GST_API_VERSION, [0.11.0]) AG_GST_CHECK_GST_PLUGINS_LIBAV($GST_API_VERSION, [0.11.0]) ]) dnl Check for documentation xrefs GLIB_PREFIX="`$PKG_CONFIG --variable=prefix glib-2.0`" GST_PREFIX="`$PKG_CONFIG --variable=prefix gstreamer-$GST_API_VERSION`" GSTPB_PREFIX="`$PKG_CONFIG --variable=prefix gstreamer-plugins-base-$GST_API_VERSION`" AC_SUBST(GLIB_PREFIX) AC_SUBST(GST_PREFIX) AC_SUBST(GSTPB_PREFIX) dnl GTK is optional and used in examples HAVE_GTK=NO GTK2_REQ=2.14.0 GTK3_REQ=2.91.3 if test "x$BUILD_EXAMPLES" = "xyes"; then AC_MSG_CHECKING([which gtk+ version to compile examples against (optional)]) AC_ARG_WITH([gtk], AS_HELP_STRING([--with-gtk=3.0|2.0],[which gtk+ version to compile against (default: 2.0)]), [case "$with_gtk" in 2.0) GTK_REQ=$GTK2_REQ ;; 3.0) GTK_REQ=$GTK3_REQ ;; *) AC_MSG_ERROR([invalid gtk+ version specified]);; esac], [with_gtk=2.0 GTK_REQ=$GTK2_REQ]) AC_MSG_RESULT([$with_gtk (>= $GTK_REQ)]) PKG_CHECK_MODULES(GTK, gtk+-x11-$with_gtk >= $GTK_REQ, HAVE_GTK=yes, HAVE_GTK=no) AC_SUBST(GTK_LIBS) AC_SUBST(GTK_CFLAGS) fi AM_CONDITIONAL(HAVE_GTK, test "x$HAVE_GTK" = "xyes") dnl GTK is optional and used in examples HAVE_GTK3=NO if test "x$BUILD_EXAMPLES" = "xyes"; then PKG_CHECK_MODULES(GTK3, gtk+-3.0 >= 3.4, HAVE_GTK3=yes, HAVE_GTK3=no) if test "x$HAVE_GTK3" = "xyes"; then HAVE_GTK=yes GTK_VERSION=`$PKG_CONFIG --variable=gtk_binary_version gtk+-3.0` AC_SUBST(GTK_VERSION) GTK_PREFIX=`$PKG_CONFIG --variable=prefix gdk-pixbuf-2.0` AC_SUBST(GTK_BASE_DIR) fi fi AC_SUBST(GTK3_LIBS) AC_SUBST(GTK3_CFLAGS) AC_SUBST(HAVE_GTK3) AM_CONDITIONAL(HAVE_GTK3, test "x$HAVE_GTK3" = "xyes") dnl clutter is optional and used in examples HAVE_CLUTTER=no HAVE_CLUTTER_X11=no HAVE_CLUTTER_GLX=no if test "x$BUILD_EXAMPLES" = "xyes"; then PKG_CHECK_MODULES(CLUTTER, clutter-1.0 >= 1.8, HAVE_CLUTTER=yes, HAVE_CLUTTER=no) AC_SUBST(CLUTTER_LIBS) AC_SUBST(CLUTTER_CFLAGS) AC_SUBST(HAVE_CLUTTER) PKG_CHECK_MODULES(CLUTTER_GLX, clutter-glx-1.0 >= 1.8, HAVE_CLUTTER_GLX=yes, HAVE_CLUTTER_GLX=no) AC_SUBST(CLUTTER_GLX_LIBS) AC_SUBST(CLUTTER_GLX_CFLAGS) AC_SUBST(HAVE_CLUTTER_GLX) PKG_CHECK_MODULES(CLUTTER_X11, clutter-x11-1.0 >= 1.8, HAVE_CLUTTER_X11=yes, HAVE_CLUTTER_X11=no) AC_SUBST(CLUTTER_X11_LIBS) AC_SUBST(CLUTTER_X11_CFLAGS) AC_SUBST(HAVE_CLUTTER_X11) fi AM_CONDITIONAL(HAVE_CLUTTER, test "x$HAVE_CLUTTER" = "xyes") AM_CONDITIONAL(HAVE_CLUTTER_GLX, test "x$HAVE_CLUTTER_GLX" = "xyes") AM_CONDITIONAL(HAVE_CLUTTER_X11, test "x$HAVE_CLUTTER_X11" = "xyes") dnl used in the gl/clutteractor example if test "x$BUILD_EXAMPLES" = "xyes"; then PKG_CHECK_MODULES(XCOMPOSITE, xcomposite, HAVE_XCOMPOSITE=yes, HAVE_XCOMPOSITE=no) AC_SUBST(XCOMPOSITE_CFLAGS) AC_SUBST(XCOMPOSITE_LIBS) fi AM_CONDITIONAL(HAVE_XCOMPOSITE, test "x$HAVE_XCOMPOSITE" = "xyes") dnl graphene-1.0 is optional and used in gltransformation HAVE_GRAPHENE=NO PKG_CHECK_MODULES(GRAPHENE, graphene-1.0 >= 1.0.0, HAVE_GRAPHENE=yes, HAVE_GRAPHENE=no) if test "x$HAVE_GRAPHENE" = "xyes"; then AC_DEFINE(HAVE_GRAPHENE, [1] , [Use graphene]) fi AC_SUBST(HAVE_GRAPHENE) AC_SUBST(GRAPHENE_LIBS) AC_SUBST(GRAPHENE_CFLAGS) AM_CONDITIONAL(HAVE_GRAPHENE, test "x$HAVE_GRAPHENE" = "xyes") dnl sdl is optional and used in examples HAVE_SDL=NO if test "x$BUILD_EXAMPLES" = "xyes"; then PKG_CHECK_MODULES(SDL, sdl >= 1.2.0, HAVE_SDL=yes, HAVE_SDL=no) AC_SUBST(SDL_LIBS) AC_SUBST(SDL_CFLAGS) AC_SUBST(SDL_CLUTTER) fi AM_CONDITIONAL(HAVE_SDL, test "x$HAVE_SDL" = "xyes") dnl Needed for GtkBuilder to autoconnect signals PKG_CHECK_MODULES(GMODULE_EXPORT, gmodule-export-2.0, HAVE_GMODULE_EXPORT=yes, HAVE_GMODULE_EXPORT=no) dnl Needed by plugins that use g_module_*() API PKG_CHECK_MODULES(GMODULE_NO_EXPORT, gmodule-no-export-2.0) dnl x11 is optional for librfb HAVE_X11=NO PKG_CHECK_MODULES(X11, x11, HAVE_X11=yes, HAVE_X11=no) AC_SUBST(X11_LIBS) AC_SUBST(X11_CFLAGS) AC_SUBST(HAVE_X11) AM_CONDITIONAL(HAVE_X11, test "x$HAVE_X11" = "xyes") if test "x$HAVE_X11" = "xyes"; then AC_DEFINE(HAVE_X11, 1, [Define if you have X11 library]) fi dnl exif (used on jifmux tests) **** PKG_CHECK_MODULES(EXIF, libexif >= 0.6.16, HAVE_EXIF="yes", HAVE_EXIF="no") AC_SUBST(EXIF_LIBS) AC_SUBST(EXIF_CFLAGS) AM_CONDITIONAL(USE_EXIF, test "x$HAVE_EXIF" = "xyes") dnl Orc ORC_CHECK([0.4.17]) dnl set license and copyright notice GST_LICENSE="LGPL" AC_DEFINE_UNQUOTED(GST_LICENSE, "$GST_LICENSE", [GStreamer license]) AC_SUBST(GST_LICENSE) dnl define LIBDIR so we can inform people where we live AS_AC_EXPAND(LIBDIR, $libdir) AC_DEFINE_UNQUOTED(LIBDIR, "$LIBDIR", [library dir]) dnl set location of plugin directory AG_GST_SET_PLUGINDIR dnl set release date/time AG_GST_SET_PACKAGE_RELEASE_DATETIME_WITH_NANO([$PACKAGE_VERSION_NANO], ["${srcdir}/gst-plugins-bad.doap"], [$PACKAGE_VERSION_MAJOR.$PACKAGE_VERSION_MINOR.$PACKAGE_VERSION_MICRO]) dnl build static plugins or not AC_MSG_CHECKING([whether to build static plugins or not]) AC_ARG_ENABLE( static-plugins, AC_HELP_STRING( [--enable-static-plugins], [build static plugins @<:@default=no@:>@]), [AS_CASE( [$enableval], [no], [], [yes], [], [AC_MSG_ERROR([bad value "$enableval" for --enable-static-plugins])])], [enable_static_plugins=no]) AC_MSG_RESULT([$enable_static_plugins]) if test "x$enable_static_plugins" = xyes; then AC_DEFINE(GST_PLUGIN_BUILD_STATIC, 1, [Define if static plugins should be built]) GST_PLUGIN_LIBTOOLFLAGS="" else GST_PLUGIN_LIBTOOLFLAGS="--tag=disable-static" fi AC_SUBST(GST_PLUGIN_LIBTOOLFLAGS) AM_CONDITIONAL(GST_PLUGIN_BUILD_STATIC, test "x$enable_static_plugins" = "xyes") # set by AG_GST_PARSE_SUBSYSTEM_DISABLES above dnl make sure it doesn't complain about unused variables if debugging is disabled NO_WARNINGS="" AG_GST_CHECK_GST_DEBUG_DISABLED([NO_WARNINGS="-Wno-unused"], [NO_WARNINGS=""]) dnl define an ERROR_CFLAGS Makefile variable dnl -Waggregate-return - libexif returns aggregates dnl -Wundef - Windows headers check _MSC_VER unconditionally AG_GST_SET_ERROR_CFLAGS($FATAL_WARNINGS, [ -Wmissing-declarations -Wmissing-prototypes -Wredundant-decls -Wwrite-strings -Wformat-security -Wold-style-definition -Winit-self -Wmissing-include-dirs -Waddress -Wno-multichar -Wnested-externs $NO_WARNINGS]) dnl define an ERROR_CXXFLAGS Makefile variable AG_GST_SET_ERROR_CXXFLAGS($FATAL_WARNINGS, [ -Wmissing-declarations -Wredundant-decls -Wwrite-strings -Wformat-nonliteral -Wformat-security -Winit-self -Wmissing-include-dirs -Waddress -Wno-multichar $NO_WARNINGS]) dnl define an ERROR_OBJCFLAGS Makefile variable AG_GST_SET_ERROR_OBJCFLAGS($FATAL_WARNINGS, [ -Wmissing-declarations -Wredundant-decls -Wwrite-strings -Wformat-nonliteral -Wformat-security -Winit-self -Wmissing-include-dirs -Wno-multichar $NO_WARNINGS]) dnl define correct level for debugging messages AG_GST_SET_LEVEL_DEFAULT($GST_GIT) dnl used in examples AG_GST_DEFAULT_ELEMENTS dnl *** plug-ins to include *** dnl Non ported plugins (non-dependant, then dependant) dnl Make sure you have a space before and after all plugins GST_PLUGINS_NONPORTED=" cdxaparse \ dccp faceoverlay \ hdvparse \ mve nuvdemux \ patchdetect \ sdi tta \ videomeasure \ linsys \ apexsink dc1394 \ gsettings \ musepack nas sdl timidity \ acm wininet \ xvid lv2 teletextdec sndio libvisual" AC_SUBST(GST_PLUGINS_NONPORTED) dnl these are all the gst plug-ins, compilable without additional libs AG_GST_CHECK_PLUGIN(accurip) AG_GST_CHECK_PLUGIN(adpcmdec) AG_GST_CHECK_PLUGIN(adpcmenc) AG_GST_CHECK_PLUGIN(aiff) AG_GST_CHECK_PLUGIN(asfmux) AG_GST_CHECK_PLUGIN(audiofxbad) AG_GST_CHECK_PLUGIN(audiomixer) AG_GST_CHECK_PLUGIN(compositor) AG_GST_CHECK_PLUGIN(audiovisualizers) AG_GST_CHECK_PLUGIN(autoconvert) AG_GST_CHECK_PLUGIN(bayer) AG_GST_CHECK_PLUGIN(camerabin2) AG_GST_CHECK_PLUGIN(cdxaparse) AG_GST_CHECK_PLUGIN(coloreffects) AG_GST_CHECK_PLUGIN(dataurisrc) AG_GST_CHECK_PLUGIN(dccp) AG_GST_CHECK_PLUGIN(debugutils) AG_GST_CHECK_PLUGIN(dvbsuboverlay) AG_GST_CHECK_PLUGIN(dvdspu) AG_GST_CHECK_PLUGIN(faceoverlay) AG_GST_CHECK_PLUGIN(festival) AG_GST_CHECK_PLUGIN(fieldanalysis) AG_GST_CHECK_PLUGIN(freeverb) AG_GST_CHECK_PLUGIN(frei0r) AG_GST_CHECK_PLUGIN(gaudieffects) AG_GST_CHECK_PLUGIN(geometrictransform) AG_GST_CHECK_PLUGIN(gdp) AG_GST_CHECK_PLUGIN(hdvparse) AG_GST_CHECK_PLUGIN(id3tag) AG_GST_CHECK_PLUGIN(inter) AG_GST_CHECK_PLUGIN(interlace) AG_GST_CHECK_PLUGIN(ivfparse) AG_GST_CHECK_PLUGIN(ivtc) AG_GST_CHECK_PLUGIN(jp2kdecimator) AG_GST_CHECK_PLUGIN(jpegformat) AG_GST_CHECK_PLUGIN(librfb) AG_GST_CHECK_PLUGIN(liveadder) AG_GST_CHECK_PLUGIN(midi) AG_GST_CHECK_PLUGIN(mpegdemux) AG_GST_CHECK_PLUGIN(mpegtsdemux) AG_GST_CHECK_PLUGIN(mpegtsmux) AG_GST_CHECK_PLUGIN(mpegpsmux) AG_GST_CHECK_PLUGIN(mve) AG_GST_CHECK_PLUGIN(mxf) AG_GST_CHECK_PLUGIN(nuvdemux) AG_GST_CHECK_PLUGIN(onvif) AG_GST_CHECK_PLUGIN(patchdetect) AG_GST_CHECK_PLUGIN(pcapparse) AG_GST_CHECK_PLUGIN(pnm) AG_GST_CHECK_PLUGIN(rawparse) AG_GST_CHECK_PLUGIN(removesilence) AG_GST_CHECK_PLUGIN(rtp) AG_GST_CHECK_PLUGIN(sdi) AG_GST_CHECK_PLUGIN(sdp) AG_GST_CHECK_PLUGIN(segmentclip) AG_GST_CHECK_PLUGIN(siren) AG_GST_CHECK_PLUGIN(smooth) AG_GST_CHECK_PLUGIN(speed) AG_GST_CHECK_PLUGIN(subenc) AG_GST_CHECK_PLUGIN(stereo) AG_GST_CHECK_PLUGIN(tta) AG_GST_CHECK_PLUGIN(videofilters) AG_GST_CHECK_PLUGIN(videomeasure) AG_GST_CHECK_PLUGIN(videoparsers) AG_GST_CHECK_PLUGIN(videosignal) AG_GST_CHECK_PLUGIN(vmnc) AG_GST_CHECK_PLUGIN(y4m) AG_GST_CHECK_PLUGIN(yadif) dnl *** plug-ins to exclude *** AC_CHECK_HEADER(AVFoundation/AVFoundation.h, HAVE_AVFOUNDATION="yes", HAVE_AVFOUNDATION="no", [-]) AC_CHECK_HEADER(MobileCoreServices/MobileCoreServices.h, HAVE_IOS="yes", HAVE_IOS="no", [-]) AC_CHECK_HEADER(VideoToolbox/VideoToolbox.h, HAVE_VIDEOTOOLBOX="yes", HAVE_VIDEOTOOLBOX="no", [-]) if test "x$HAVE_VIDEOTOOLBOX" = "xyes"; then old_LIBS=$LIBS LIBS="$LIBS -framework VideoToolbox" AC_CHECK_FUNC(VTCompressionSessionPrepareToEncodeFrames, [ AC_DEFINE(HAVE_VIDEOTOOLBOX_10_9_6, 1, [Define if building with VideoToolbox >= 10.9.6]) ], [ ]) LIBS=$old_LIBS fi AM_CONDITIONAL(HAVE_AVFOUNDATION, test "x$HAVE_AVFOUNDATION" = "xyes") if test "x$HAVE_AVFOUNDATION" = "xyes"; then AC_DEFINE(HAVE_AVFOUNDATION, 1, [Define if building with AVFoundation]) fi AM_CONDITIONAL(HAVE_IOS, test "x$HAVE_IOS" = "xyes") if test "x$HAVE_IOS" = "xyes"; then AC_DEFINE(HAVE_IOS, 1, [Define if building for Apple iOS]) fi AM_CONDITIONAL(HAVE_VIDEOTOOLBOX, test "x$HAVE_VIDEOTOOLBOX" = "xyes") if test "x$HAVE_VIDEOTOOLBOX" = "xyes"; then AC_DEFINE(HAVE_VIDEOTOOLBOX, 1, [Define if building with VideoToolbox]) fi dnl disable gst plugins we might not be able to build on this dnl platform: (ugly but minimally invasive) dnl FIXME: maybe move to sys, or make work with winsock2 AC_CHECK_HEADERS([sys/socket.h], HAVE_SYS_SOCKET_H=yes) AC_CHECK_HEADERS([winsock2.h], HAVE_WINSOCK2_H=yes) if test "x$HAVE_WINSOCK2_H" = "xyes"; then WINSOCK2_LIBS="-lws2_32" AC_SUBST(WINSOCK2_LIBS) fi if test "x$HAVE_PTHREAD_H" = "xyes"; then DCCP_LIBS="$DCCP_LIBS $PTHREAD_LIBS" AC_SUBST(DCCP_LIBS) else AG_GST_DISABLE_PLUGIN(dccp) fi dnl *** opengl *** AC_ARG_ENABLE([opengl], [ --enable-opengl Enable Desktop OpenGL support @<:@default=auto@:>@], [case "${enableval}" in yes) NEED_GL=yes ;; no) NEED_GL=no ;; auto) NEED_GL=auto ;; *) AC_MSG_ERROR([bad value ${enableval} for --enable-opengl]) ;; esac],[NEED_GL=auto]) AC_ARG_WITH([opengl-module-name], AS_HELP_STRING([--with-opengl-module-name],[library module name for OpenGL (default: libGL)])) if test x$with_opengl_module_name != x; then AC_DEFINE_UNQUOTED(GST_GL_LIBGL_MODULE_NAME, "$with_opengl_module_name", [OpenGL module name]) fi AC_ARG_ENABLE([gles2], [ --enable-gles2 Enable OpenGL|ES 2.0 support @<:@default=auto@:>@], [case "${enableval}" in yes) NEED_GLES2=yes ;; no) NEED_GLES2=no ;; auto) NEED_GLES2=auto ;; *) AC_MSG_ERROR([bad value ${enableval} for --enable-gles2]) ;; esac],[NEED_GLES2=auto]) AC_ARG_WITH([gles2-module-name], AS_HELP_STRING([--with-gles2-module-name],[library module name for GLES2 (default: libGLESv2)])) if test x$with_gles2_module_name != x; then AC_DEFINE_UNQUOTED(GST_GL_LIBGLESV2_MODULE_NAME, "$with_gles2_module_name", [GLES2 module name]) fi AC_ARG_ENABLE([egl], [ --enable-egl Enable EGL support @<:@default=auto@:>@], [case "${enableval}" in yes) NEED_EGL=yes ;; no) NEED_EGL=no ;; auto) NEED_EGL=auto ;; *) AC_MSG_ERROR([bad value ${enableval} for --enable-egl]) ;; esac],[NEED_EGL=auto]) AC_ARG_WITH([egl-module-name], AS_HELP_STRING([--with-egl-module-name],[library module name for EGL (default: libEGL)])) if test x$with_egl_module_name != x; then AC_DEFINE_UNQUOTED(GST_GL_LIBEGL_MODULE_NAME, "$with_egl_module_name", [EGL module name]) fi AC_ARG_ENABLE([wgl], [ --enable-wgl Enable WGL support @<:@default=auto@:>@], [case "${enableval}" in yes) NEED_WGL=yes ;; no) NEED_WGL=no ;; auto) NEED_WGL=auto ;; *) AC_MSG_ERROR([bad value ${enableval} for --enable-wgl]) ;; esac],[NEED_WGL=auto]) AC_ARG_ENABLE([glx], [ --enable-glx Enable GLX support @<:@default=auto@:>@], [case "${enableval}" in yes) NEED_GLX=yes ;; no) NEED_GLX=no ;; auto) NEED_GLX=auto ;; *) AC_MSG_ERROR([bad value ${enableval} for --enable-glx]) ;; esac],[NEED_GLX=auto]) AC_ARG_ENABLE([cocoa], [ --enable-cocoa Enable Cocoa support @<:@default=auto@:>@], [case "${enableval}" in yes) NEED_COCOA=yes ;; no) NEED_COCOA=no ;; auto) NEED_COCOA=auto ;; *) AC_MSG_ERROR([bad value ${enableval} for --enable-cocoa]) ;; esac],[NEED_COCOA=auto]) AC_ARG_ENABLE([x11], [ --enable-x11 Enable x11 support @<:@default=auto@:>@], [case "${enableval}" in yes) NEED_X11=yes ;; no) NEED_X11=no ;; auto) NEED_X11=auto ;; *) AC_MSG_ERROR([bad value ${enableval} for --enable-x11]) ;; esac],[NEED_X11=auto]) AC_ARG_ENABLE([wayland], [ --enable-wayland Enable Wayland support (requires EGL) @<:@default=auto@:>@], [case "${enableval}" in yes) NEED_WAYLAND_EGL=yes ;; no) NEED_WAYLAND_EGL=no ;; auto) NEED_WAYLAND_EGL=auto ;; *) AC_MSG_ERROR([bad value ${enableval} for --enable-wayland]) ;; esac],[NEED_WAYLAND_EGL=auto]) AC_ARG_ENABLE([dispmanx], [ --enable-dispmanx Enable Dispmanx support (requires EGL) @<:@default=auto@:>@], [case "${enableval}" in yes) NEED_DISPMANX=yes ;; no) NEED_DISPMANX=no ;; auto) NEED_DISPMANX=auto ;; *) AC_MSG_ERROR([bad value ${enableval} for --enable-dispmanx]) ;; esac],[NEED_DISPMANX=auto]) AG_GST_PKG_CHECK_MODULES(X, x11) save_CPPFLAGS="$CPPFLAGS" save_LIBS="$LIBS" HAVE_GL=no HAVE_GLES2=no HAVE_WAYLAND_EGL=no HAVE_EGL_RPI=no case $host in *-mingw32* ) LIBS="$LIBS -lgdi32" AG_GST_CHECK_LIBHEADER(GL, opengl32, glTexImage2D,, GL/gl.h) AC_CHECK_HEADER(GL/wglext.h, HAVE_WGLEXT="yes", HAVE_WGLEXT="no", [#include ]) if test "x$HAVE_WGLEXT" = "xyes"; then HAVE_WGL=yes HAVE_GL=yes fi ;; *) if test "x$NEED_GL" != "xno"; then AG_GST_CHECK_LIBHEADER(GL, GL, glTexImage2D,, GL/gl.h) fi if test "x$NEED_GLES2" != "xno"; then AG_GST_CHECK_LIBHEADER(GLES2, GLESv2, glTexImage2D,, GLES2/gl2.h) fi if test "x$NEED_EGL" != "xno"; then AG_GST_CHECK_LIBHEADER(EGL, EGL, eglGetError,, EGL/egl.h) fi old_LIBS=$LIBS old_CFLAGS=$CFLAGS dnl FIXME: Mali EGL depends on GLESv1 or GLESv2 AC_CHECK_HEADER([EGL/fbdev_window.h], [ LIBS="$LIBS -lUMP" AC_CHECK_LIB([Mali], [mali_image_create], [ LIBS="$LIBS -lMali" AC_CHECK_LIB([GLESv2], [glEnable], [ AC_CHECK_HEADER([GLES2/gl2.h], [ AC_CHECK_LIB([EGL], [eglGetProcAddress], [ AC_CHECK_HEADER([EGL/egl.h], [ HAVE_EGL=yes HAVE_GLES2=yes EGL_LIBS="-lMali -lUMP" EGL_CFLAGS="" AC_DEFINE(USE_EGL_MALI_FB, [1], [Use Mali FB EGL platform]) ]) ]) ]) ]) ]) ]) dnl FIXME: EGL of RPi depends on GLESv1 or GLESv2 dnl FIXME: GLESv2 of RPi depends on EGL... WTF! LIBS="$LIBS -lvcos -lvchiq_arm" AC_CHECK_LIB([bcm_host], [bcm_host_init], [ LIBS="$LIBS -lbcm_host" AC_CHECK_HEADER(bcm_host.h, [ LIBS="$LIBS -lGLESv2" AC_CHECK_LIB([EGL], [eglGetProcAddress], [ LIBS="$LIBS -lEGL" AC_CHECK_HEADER([EGL/egl.h], [ AC_CHECK_LIB([GLESv2], [glEnable], [ AC_CHECK_HEADER([GLES2/gl2.h], [ HAVE_EGL=yes HAVE_GLES2=yes HAVE_EGL_RPI=yes EGL_LIBS="-lbcm_host -lvcos -lvchiq_arm" EGL_CFLAGS="" AC_DEFINE(USE_EGL_RPI, [1], [Use RPi platform]) ]) ]) ]) ]) ]) ]) LIBS=$old_LIBS CFLAGS=$old_CFLAGS PKG_CHECK_MODULES(WAYLAND_EGL, wayland-client >= 1.0 wayland-cursor >= 1.0 wayland-egl >= 9.0, HAVE_WAYLAND_EGL=yes, HAVE_WAYLAND_EGL=no) ;; esac CPPFLAGS="$save_CPPFLAGS" LIBS="$save_LIBS" USE_OPENGL=no USE_GLES2=no USE_GLX=no USE_COCOA=no USE_WGL=no USE_X11=no USE_EAGL=no GL_LIBS= GL_CFLAGS= GL_OBJCFLAGS= dnl Check for what the user asked for and what we could find if test "x$HAVE_EGL" = "xno"; then if test "x$NEED_EGL" = "xyes"; then AC_MSG_ERROR([Could not find the required EGL libraries]) fi fi if test "x$HAVE_GL" = "xno"; then if test "x$NEED_GL" = "xyes"; then AC_MSG_ERROR([Could not find the required OpenGL libraries]) fi fi if test "x$HAVE_GLES2" = "xno"; then if test "x$NEED_GLES2" = "xyes"; then AC_MSG_ERROR([Could not find the required OpenGL|ES 2.0 libraries]) fi fi dnl X, GLX and OpenGL if test "x$HAVE_X" = "xno"; then if test "x$NEED_GLX" = "xyes"; then AC_MSG_ERROR([Building the GLX backend without X11 is unsupported]) fi if test "x$NEED_X11" = "xyes"; then AC_MSG_ERROR([Could not find X11 development libraries]) fi else if test "x$NEED_GL" != "xno"; then if test "x$HAVE_GL" = "xno"; then if test "x$NEED_GLX" = "xyes"; then AC_MSG_ERROR([Building the GLX backend without the OpenGL backend is unsupported]) fi else dnl HAVE_GL=yes USE_OPENGL=yes if test "x$NEED_GLX" != "xno"; then USE_GLX=yes fi fi fi fi dnl check if we can include both GL and GLES2 at the same time if test "x$HAVE_GL" = "xyes" -a "x$HAVE_GLES2" = "xyes"; then GL_INCLUDES=" #ifndef GL_GLEXT_PROTOTYPES #define GL_GLEXT_PROTOTYPES 1 #endif # ifdef __APPLE__ # include # include # else # include # include # endif # if __APPLE__ # include # include # if MAC_OS_X_VERSION_MAX_ALLOWED >= 1070 # define GL_DO_NOT_WARN_IF_MULTI_GL_VERSION_HEADERS_INCLUDED # include # endif # else # include # if __WIN32__ || _WIN32 # include # endif # endif " AC_MSG_CHECKING([whether it is possible to include both GL and GLES2 headers]) save_CPPFLAGS="$CPPFLAGS" CPPFLAGS="$CPPFLAGS $ERROR_CFLAGS" AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[$GL_INCLUDES]], [[ #if !defined(GL_FALSE) #error Failed to include GL headers #endif ]])],[ AC_MSG_RESULT(yes) ],[AC_MSG_RESULT(no) if test "x$NEED_GLES2" = "xyes"; then if test "x$NEED_GL" = "xyes"; then AC_MSG_ERROR([Cannot seem to include both GL and GLES2 headers. Try disabling one API]) fi AC_MSG_WARN([Disabling Desktop GL support]) HAVE_GL=no USE_OPENGL=no else AC_MSG_WARN([Disabling GL|ES 2.0 support]) HAVE_GLES2=no fi ]) CPPFLAGS="$save_CPPFLAGS" fi #dnl Check for OpenGL echo host is $host case $host in *-android*) if test "x$NEED_WGL" = "xyes"; then AC_MSG_ERROR([WGL is not available on Android]) fi if test "x$NEED_GLX" = "xyes"; then AC_MSG_ERROR([GLX is not available on Android]) fi if test "x$NEED_GL" = "xyes"; then AC_MSG_ERROR([GL is not available on Android]) fi if test "x$NEED_X11" = "xyes"; then AC_MSG_ERROR([X11 is not available on Android]) fi if test "x$NEED_COCOA" = "xyes"; then AC_MSG_ERROR([Cocoa is not available on Android]) 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 dnl EGL if test "x$HAVE_EGL" = "xyes"; then if test "x$NEED_EGL" != "xno"; then GL_LIBS="$GL_LIBS -lEGL" USE_EGL=yes fi fi if test "x$USE_EGL" != "xyes"; then AC_MSG_ERROR([Need EGL on Android]) fi if test "x$USE_GLES2" != "xyes"; then AC_MSG_ERROR([Need OpenGL|ES 2.0 on Android]) fi HAVE_WINDOW_ANDROID=yes ;; *-linux* | *-cygwin* | *-solaris* | *-netbsd* | *-freebsd* | *-openbsd* | *-kfreebsd* | *-dragonflybsd* | *-gnu* ) if test "x$NEED_WGL" = "xyes"; then AC_MSG_ERROR([WGL is not available on unix]) fi if test "x$HAVE_X" = "xno"; then if test "x$HAVE_WAYLAND_EGL" = "xno"; then AC_MSG_WARN([X or Wayland is required for OpenGL support]) fi fi dnl check Desktop OpenGL if test "x$HAVE_GL" = "xyes"; then if test "x$NEED_GL" != "xno"; then GL_LIBS="$GL_LIBS -lGL" 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 if test "x$HAVE_X" = "xyes" -a "x$HAVE_EGL_RPI" = "xno"; then if test "x$NEED_X11" != "xno"; then GL_LIBS="$GL_LIBS $X_LIBS" GL_CFLAGS="$GL_CFLAGS $X_CFLAGS" HAVE_WINDOW_X11=yes fi fi if test "x$HAVE_WAYLAND_EGL" = "xyes"; then if test "x$NEED_EGL" = "xno" -o "x$HAVE_EGL" = "xno"; then AC_MSG_WARN([EGL is required by the Wayland backend for OpenGL support]) else if test "x$NEED_WAYLAND_EGL" != "xno"; then HAVE_WINDOW_WAYLAND=yes GL_LIBS="$GL_LIBS $WAYLAND_EGL_LIBS" GL_CFLAGS="$GL_CFLAGS $WAYLAND_EGL_CFLAGS" fi fi fi if test "x$HAVE_EGL_RPI" = "xyes"; then if test "x$NEED_DISPMANX" != "xno"; then HAVE_WINDOW_DISPMANX=yes USE_EGL=yes fi fi dnl EGL if test "x$HAVE_EGL" = "xno"; then if test "x$HAVE_GL" = "xno"; then AC_MSG_WARN([Building requires either EGL or GLX for OpenGL support]) fi else if test "x$NEED_EGL" != "xno"; then if test "x$HAVE_WINDOW_WAYLAND" = "xyes" -o "x$HAVE_WINDOW_X11" = "xyes" -o "x$HAVE_WINDOW_DISPMANX" = "xyes"; then GL_LIBS="$GL_LIBS -lEGL $EGL_LIBS" GL_CFLAGS="$GL_CFLAGS $EGL_CFLAGS" USE_EGL=yes fi fi fi ;; *-darwin*) if test "x$HAVE_IOS" = "xyes"; then if test "x$NEED_WGL" = "xyes"; then AC_MSG_ERROR([WGL is not available on iOS]) fi if test "x$NEED_GLX" = "xyes"; then AC_MSG_ERROR([GLX is not available on iOS]) fi if test "x$NEED_GL" = "xyes"; then AC_MSG_ERROR([GL is not available on iOS]) fi if test "x$NEED_X11" = "xyes"; then AC_MSG_ERROR([X11 is not available on iOS]) fi if test "x$NEED_COCOA" = "xyes"; then AC_MSG_ERROR([Cocoa is not available on iOS]) fi if test "x$NEED_EGL" = "xyes"; then AC_MSG_ERROR([EGL is not available on iOS]) fi GL_LIBS="$LIBS -framework OpenGLES -framework QuartzCore -framework UIKit -framework CoreGraphics -framework CoreFoundation -framework Foundation" GL_CFLAGS="$GL_CFLAGS" USE_GLES2=yes USE_EAGL=yes HAVE_WINDOW_EAGL=yes ac_cv_type_GLsizeiptr=yes ac_cv_type_GLintptr=yes ac_cv_type_GLchar=yes else dnl Only osx supports cocoa. 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" GL_CFLAGS="$GL_CFLAGS" USE_COCOA=yes HAVE_WINDOW_COCOA=yes USE_OPENGL=yes fi if test "x$USE_GLX" = "xyes"; then if test "x$HAVE_X" = "xyes"; then if test "x$NEED_X11" != "xno"; then GL_LIBS="$GL_LIBS $X_LIBS" GL_CFLAGS="$GL_CFLAGS $X_CFLAGS" HAVE_WINDOW_X11=yes fi fi if test "x$HAVE_GL" = "xyes"; then if test "x$NEED_GL" != "xno"; then GL_LIBS="$GL_LIBS -lGL" fi USE_OPENGL=yes fi fi fi ;; *-mingw32*) if test "x$NEED_GLX" = "xyes"; then AC_MSG_ERROR([GLX is not available on Windows]) 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$HAVE_GL" = "xyes"; then if test "x$NEED_GL" != "xno"; then if test "x$HAVE_WGL" = "xyes"; then if test "$NEED_WGL" != "xno"; then GL_LIBS="$GL_LIBS -lgdi32 -lopengl32" HAVE_WINDOW_WIN32=yes USE_OPENGL=yes USE_WGL=yes fi fi fi fi ;; *) AC_MSG_WARN([Don't know how to check for OpenGL on your platform.]) ;; esac GL_PLATFORMS= GL_WINDOWS= GL_APIS= GL_CONFIG_DEFINES= dnl APIs GST_GL_HAVE_OPENGL=0 GST_GL_HAVE_GLES2=0 GST_GL_HAVE_GLES3=0 if test "x$USE_OPENGL" = "xyes"; then GL_APIS="gl $GL_APIS" GST_GL_HAVE_OPENGL=1 fi if test "x$USE_GLES2" = "xyes"; then GL_APIS="gles2 $GL_APIS" GST_GL_HAVE_GLES2=1 fi GL_CONFIG_DEFINES="$GL_CONFIG_DEFINES #define GST_GL_HAVE_OPENGL $GST_GL_HAVE_OPENGL #define GST_GL_HAVE_GLES2 $GST_GL_HAVE_GLES2 #define GST_GL_HAVE_GLES3 $GST_GL_HAVE_GLES3 " dnl WINDOW's GST_GL_HAVE_WINDOW_X11=0 GST_GL_HAVE_WINDOW_COCOA=0 GST_GL_HAVE_WINDOW_WIN32=0 GST_GL_HAVE_WINDOW_WAYLAND=0 GST_GL_HAVE_WINDOW_ANDROID=0 GST_GL_HAVE_WINDOW_DISPMANX=0 GST_GL_HAVE_WINDOW_EAGL=0 if test "x$HAVE_WINDOW_X11" = "xyes"; then GL_WINDOWS="x11 $GL_WINDOWS" GST_GL_HAVE_WINDOW_X11=1 fi if test "x$HAVE_WINDOW_COCOA" = "xyes"; then GL_WINDOWS="cocoa $GL_WINDOWS" GST_GL_HAVE_WINDOW_COCOA=1 fi if test "x$HAVE_WINDOW_WIN32" = "xyes"; then GL_WINDOWS="win32 $GL_WINDOWS" GST_GL_HAVE_WINDOW_WIN32=1 fi if test "x$HAVE_WINDOW_WAYLAND" = "xyes"; then GL_WINDOWS="wayland $GL_WINDOWS" GST_GL_HAVE_WINDOW_WAYLAND=1 fi if test "x$HAVE_WINDOW_ANDROID" = "xyes"; then GL_WINDOWS="android $GL_WINDOWS" GST_GL_HAVE_WINDOW_ANDROID=1 fi if test "x$HAVE_WINDOW_DISPMANX" = "xyes"; then GL_WINDOWS="dispmanx $GL_WINDOWS" GST_GL_HAVE_WINDOW_DISPMANX=1 fi if test "x$HAVE_WINDOW_EAGL" = "xyes"; then GL_WINDOWS="eagl $GL_WINDOWS" GST_GL_HAVE_WINDOW_EAGL=1 fi GL_CONFIG_DEFINES="$GL_CONFIG_DEFINES #define GST_GL_HAVE_WINDOW_X11 $GST_GL_HAVE_WINDOW_X11 #define GST_GL_HAVE_WINDOW_COCOA $GST_GL_HAVE_WINDOW_COCOA #define GST_GL_HAVE_WINDOW_WIN32 $GST_GL_HAVE_WINDOW_WIN32 #define GST_GL_HAVE_WINDOW_WAYLAND $GST_GL_HAVE_WINDOW_WAYLAND #define GST_GL_HAVE_WINDOW_ANDROID $GST_GL_HAVE_WINDOW_ANDROID #define GST_GL_HAVE_WINDOW_DISPMANX $GST_GL_HAVE_WINDOW_DISPMANX #define GST_GL_HAVE_WINDOW_EAGL $GST_GL_HAVE_WINDOW_EAGL " dnl PLATFORM's GST_GL_HAVE_PLATFORM_EGL=0 GST_GL_HAVE_PLATFORM_GLX=0 GST_GL_HAVE_PLATFORM_WGL=0 GST_GL_HAVE_PLATFORM_CGL=0 GST_GL_HAVE_PLATFORM_EAGL=0 if test "x$USE_EGL" = "xyes"; then GL_PLATFORMS="egl $GL_PLATFORMS" GST_GL_HAVE_PLATFORM_EGL=1 fi if test "x$USE_GLX" = "xyes"; then GL_PLATFORMS="glx $GL_PLATFORMS" GST_GL_HAVE_PLATFORM_GLX=1 fi if test "x$USE_WGL" = "xyes"; then GL_PLATFORMS="wgl $GL_PLATFORMS" GST_GL_HAVE_PLATFORM_WGL=1 fi if test "x$USE_COCOA" = "xyes"; then GL_PLATFORMS="cgl $GL_PLATFORMS" GST_GL_HAVE_PLATFORM_CGL=1 fi if test "x$USE_EAGL" = "xyes"; then GL_PLATFORMS="eagl $GL_PLATFORMS" GST_GL_HAVE_PLATFORM_EAGL=1 fi GL_CONFIG_DEFINES="$GL_CONFIG_DEFINES #define GST_GL_HAVE_PLATFORM_EGL $GST_GL_HAVE_PLATFORM_EGL #define GST_GL_HAVE_PLATFORM_GLX $GST_GL_HAVE_PLATFORM_GLX #define GST_GL_HAVE_PLATFORM_WGL $GST_GL_HAVE_PLATFORM_WGL #define GST_GL_HAVE_PLATFORM_CGL $GST_GL_HAVE_PLATFORM_CGL #define GST_GL_HAVE_PLATFORM_EAGL $GST_GL_HAVE_PLATFORM_EAGL " dnl Check for no platforms/window systems if test "x$GL_APIS" = "x"; then AC_MSG_WARN([Either OpenGL or OpenGL|ES is required for OpenGL support]) fi if test "x$GL_PLATFORMS" = "x"; then AC_MSG_WARN([Could not find any OpenGL platforms to use such as CGL, WGL or GLX]) fi if test "x$GL_WINDOWS" = "x"; then AC_MSG_WARN([Could not find any window systems to use such as Cocoa, Win32API or X11]) fi if test "x$GL_APIS" = "x" -o "x$GL_PLATFORMS" = "x" -o "x$GL_WINDOWS" = "x"; then GL_LIBS= GL_CFLAGS= GL_OBJCFLAGS= USE_OPENGL=no USE_GLES2=no USE_GLX=no USE_EGL=no USE_WGL=no USE_COCOA=no USE_EGL_MALI=no USE_EGL_RPI=no USE_EAGL=no HAVE_WINDOW_X11=no HAVE_WINDOW_WIN32=no HAVE_WINDOW_DISPMANX=no HAVE_WINDOW_WAYLAND=no HAVE_WINDOW_ANDROID=no HAVE_WINDOW_COCOA=no HAVE_WINDOW_EAGL=no fi AC_SUBST(GL_LIBS) AC_SUBST(GL_CFLAGS) AC_SUBST(GL_OBJCFLAGS) AC_SUBST(USE_OPENGL) AC_SUBST(USE_GLES2) AM_CONDITIONAL(HAVE_WINDOW_X11, test "x$HAVE_WINDOW_X11" = "xyes") AM_CONDITIONAL(HAVE_WINDOW_COCOA, test "x$HAVE_WINDOW_COCOA" = "xyes") AM_CONDITIONAL(HAVE_WINDOW_WIN32, test "x$HAVE_WINDOW_WIN32" = "xyes") AM_CONDITIONAL(HAVE_WINDOW_DISPMANX, test "x$HAVE_WINDOW_DISPMANX" = "xyes") AM_CONDITIONAL(HAVE_WINDOW_WAYLAND, test "x$HAVE_WINDOW_WAYLAND" = "xyes") AM_CONDITIONAL(HAVE_WINDOW_ANDROID, test "x$HAVE_WINDOW_ANDROID" = "xyes") AM_CONDITIONAL(HAVE_WINDOW_EAGL, test "x$HAVE_WINDOW_EAGL" = "xyes") AM_CONDITIONAL(USE_OPENGL, test "x$USE_OPENGL" = "xyes") AM_CONDITIONAL(USE_GLES2, test "x$USE_GLES2" = "xyes") AM_CONDITIONAL(USE_GLX, test "x$USE_GLX" = "xyes") AM_CONDITIONAL(USE_EGL, test "x$USE_EGL" = "xyes") AM_CONDITIONAL(USE_WGL, test "x$USE_WGL" = "xyes") AM_CONDITIONAL(USE_COCOA, test "x$USE_COCOA" = "xyes") AM_CONDITIONAL(USE_EGL_MALI, test "x$USE_EGL_MALI" = "xyes") AM_CONDITIONAL(USE_EGL_RPI, test "x$USE_EGL_RPI" = "xyes") AM_CONDITIONAL(USE_EAGL, test "x$USE_EAGL" = "xyes") AM_CONDITIONAL(HAVE_GST_GL, test "x$USE_OPENGL" = "xyes" -o "x$USE_GLES2" = "xyes") dnl Check for some types that are not always present GL_INCLUDES="" if test "x$USE_GLES2" = "xyes"; then GL_INCLUDES="$GL_INCLUDES #ifndef GL_GLEXT_PROTOTYPES #define GL_GLEXT_PROTOTYPES 1 #endif # ifdef __APPLE__ # include # include # else # include # include # endif " fi if test "x$USE_OPENGL" = "xyes"; then GL_INCLUDES="$GL_INCLUDES # if __APPLE__ # include # include # else # include # if __WIN32__ || _WIN32 # include # endif # endif " fi GST_GL_HAVE_GLEGLIMAGEOES=0 GST_GL_HAVE_GLCHAR=0 GST_GL_HAVE_GLSIZEIPTR=0 GST_GL_HAVE_GLINTPTR=0 GST_GL_HAVE_GLSYNC=0 GST_GL_HAVE_GLUINT64=0 old_CFLAGS=$CFLAGS CFLAGS="$GL_CFLAGS $CFLAGS" AC_CHECK_TYPES(GLeglImageOES, [], [], [[$GL_INCLUDES]]) if test "x$ac_cv_type_GLeglImageOES" = "xyes"; then GST_GL_HAVE_GLEGLIMAGEOES=1 fi AC_CHECK_TYPES(GLchar, [], [], [[$GL_INCLUDES]]) if test "x$ac_cv_type_GLchar" = "xyes"; then GST_GL_HAVE_GLCHAR=1 fi AC_CHECK_TYPES(GLsizeiptr, [], [], [[$GL_INCLUDES]]) if test "x$ac_cv_type_GLsizeiptr" = "xyes"; then GST_GL_HAVE_GLSIZEIPTR=1 fi AC_CHECK_TYPES(GLintptr, [], [], [[$GL_INCLUDES]]) if test "x$ac_cv_type_GLintptr" = "xyes"; then GST_GL_HAVE_GLINTPTR=1 fi AC_CHECK_TYPES(GLsync, [], [], [[$GL_INCLUDES]]) if test "x$ac_cv_type_GLsync" = "xyes"; then GST_GL_HAVE_GLSYNC=1 fi AC_CHECK_TYPES(GLuint64, [], [], [[$GL_INCLUDES]]) if test "x$ac_cv_type_GLuint64" = "xyes"; then GST_GL_HAVE_GLUINT64=1 fi CFLAGS=$old_CFLAGS GL_CONFIG_DEFINES="$GL_CONFIG_DEFINES #define GST_GL_HAVE_GLEGLIMAGEOES $GST_GL_HAVE_GLEGLIMAGEOES #define GST_GL_HAVE_GLCHAR $GST_GL_HAVE_GLCHAR #define GST_GL_HAVE_GLSIZEIPTR $GST_GL_HAVE_GLSIZEIPTR #define GST_GL_HAVE_GLINTPTR $GST_GL_HAVE_GLINTPTR #define GST_GL_HAVE_GLSYNC $GST_GL_HAVE_GLSYNC #define GST_GL_HAVE_GLUINT64 $GST_GL_HAVE_GLUINT64 " AC_CONFIG_COMMANDS([gst-libs/gst/gl/gstglconfig.h], [ outfile=gstglconfig.h-tmp cat > $outfile <<\_______EOF /* gstglconfig.h * * This is a generated file. Please modify `configure.ac' */ #ifndef __GST_GL_CONFIG_H__ #define __GST_GL_CONFIG_H__ #include G_BEGIN_DECLS _______EOF cat >>$outfile <<_______EOF $gl_config_defines _______EOF cat >>$outfile <<_______EOF G_END_DECLS #endif /* __GST_GL_CONFIG_H__ */ _______EOF if cmp -s $outfile gst-libs/gst/gl/gstglconfig.h; then AC_MSG_NOTICE([gst-libs/gst/gl/gstglconfig.h is unchanged]) rm -f $outfile else mv $outfile gst-libs/gst/gl/gstglconfig.h fi ],[ gl_config_defines='$GL_CONFIG_DEFINES' ]) dnl libpng is optional PKG_CHECK_MODULES(LIBPNG, libpng >= 1.0, HAVE_PNG=yes, HAVE_PNG=no) if test "x$HAVE_PNG" = "xyes"; then AC_DEFINE(HAVE_PNG, [1] , [Use libpng]) fi AC_SUBST(HAVE_PNG) AC_SUBST(LIBPNG_LIBS) AC_SUBST(LIBPNG_CFLAGS) AM_CONDITIONAL(HAVE_PNG, test "x$HAVE_PNG" = "xyes") dnl libjpeg is optional AC_ARG_WITH(jpeg-mmx, [ --with-jpeg-mmx, path to MMX'ified JPEG library]) OLD_LIBS="$LIBS" if test x$with_jpeg_mmx != x; then LIBS="$LIBS -L$with_jpeg_mmx" fi AC_CHECK_LIB(jpeg-mmx, jpeg_set_defaults, HAVE_JPEG="yes", HAVE_JPEG="no") JPEG_LIBS="$LIBS -ljpeg-mmx" LIBS="$OLD_LIBS" if test x$HAVE_JPEG != xyes; then JPEG_LIBS="-ljpeg" AC_CHECK_LIB(jpeg, jpeg_set_defaults, HAVE_JPEG="yes", HAVE_JPEG="no") fi if test x$HAVE_JPEG = xyes; then AC_DEFINE(HAVE_JPEG, [1], [Use libjpeg]) else AC_DEFINE(HAVE_JPEG, [0], [Use libjpeg]) JPEG_LIBS= fi AC_SUBST(JPEG_LIBS) AC_SUBST(HAVE_JPEG) AM_CONDITIONAL(HAVE_JPEG, test "x$HAVE_JPEG" = "xyes") dnl *** sys plug-ins *** dnl DirectSound translit(dnm, m, l) AM_CONDITIONAL(USE_DIRECTSOUND, true) AG_GST_CHECK_FEATURE(DIRECTSOUND, [DirectSound], directsoundsrc, [ HAVE_DIRECTSOUND="no" save_CFLAGS="$CFLAGS" save_LDFLAGS="$LDFLAGS" save_LIBS="$LIBS" CFLAGS="$CFLAGS $DIRECTX_CFLAGS" LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS" LIBS="$LIBS -lwinmm -ldsound -ldxerr9 -luser32" AC_MSG_CHECKING(for DirectSound LDFLAGS) AC_LINK_IFELSE([AC_LANG_PROGRAM([[ #include #include #include #include ]], [[ DXGetErrorString9 (0); DirectSoundCreate(NULL, NULL, NULL); ]])], [HAVE_DIRECTSOUND="yes"], [HAVE_DIRECTSOUND="no"]) AC_MSG_RESULT($HAVE_DIRECTSOUND) CFLAGS=$save_CFLAGS LDFLAGS=$save_LDFLAGS LIBS=$save_LIBS if test "x$HAVE_DIRECTSOUND" = "xyes"; then dnl this is much more than we want DIRECTSOUND_LIBS="-lwinmm -ldsound -ldxerr9 -luser32" AC_SUBST(DIRECTX_CFLAGS) AC_SUBST(DIRECTX_LDFLAGS) AC_SUBST(DIRECTSOUND_LIBS) fi AC_SUBST(HAVE_DIRECTSOUND) ]) dnl WASAPI translit(dnm, m, l) AM_CONDITIONAL(USE_WASAPI, true) AG_GST_CHECK_FEATURE(WASAPI, [WASAPI plug-in], wasapi, [ HAVE_WASAPI="no" save_CFLAGS="$CFLAGS" save_LDFLAGS="$LDFLAGS" save_LIBS="$LIBS" CFLAGS="$CFLAGS $DIRECTX_CFLAGS" LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS" LIBS="$LIBS -lole32 -lwinmm -lksuser" AC_MSG_CHECKING(for WASAPI LDFLAGS) AC_LINK_IFELSE([AC_LANG_PROGRAM([[ #include #include #include #include ]], [[ int main () { HRESULT hr = S_OK; hr = CoInitialize(NULL); if (FAILED(hr)) { printf("CoInitialize failed: hr = 0x%08x", hr); return __LINE__; } int result = 0; // result = do_everything(argc, argv); CoUninitialize(); return result; } ]])], [HAVE_WASAPI="yes"], [HAVE_WASAPI="no"]) AC_MSG_RESULT($HAVE_WASAPI) CFLAGS=$save_CFLAGS LDFLAGS=$save_LDFLAGS LIBS=$save_LIBS if test "x$HAVE_WASAPI" = "xyes"; then WASAPI_LIBS="-lole32 -lwinmm -lksuser" AC_SUBST(WASAPI_LIBS) fi AC_SUBST(HAVE_WASAPI) ]) dnl Direct3D translit(dnm, m, l) AM_CONDITIONAL(USE_DIRECT3D, true) AG_GST_CHECK_FEATURE(DIRECT3D, [Direct3D plug-in], direct3dsink, [ HAVE_DIRECT3D="no" save_CFLAGS="$CFLAGS" save_LDFLAGS="$LDFLAGS" save_LIBS="$LIBS" CFLAGS="$CFLAGS $DIRECTX_CFLAGS" LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS" LIBS="$LIBS -ld3d9 -lgdi32" AC_MSG_CHECKING(for Direct3D LDFLAGS) AC_LINK_IFELSE([AC_LANG_PROGRAM([[ #include #include ]], [[ Direct3DCreate9(D3D_SDK_VERSION); ]])], [HAVE_DIRECT3D="yes"], [HAVE_DIRECT3D="no"]) AC_MSG_RESULT($HAVE_DIRECT3D) CFLAGS=$save_CFLAGS LDFLAGS=$save_LDFLAGS LIBS=$save_LIBS if test "x$HAVE_DIRECT3D" = "xyes"; then DIRECT3D_LIBS="-ld3d9 -lgdi32" AC_SUBST(DIRECT3D_LIBS) fi AC_SUBST(HAVE_DIRECT3D) ]) dnl winscreencap translit(dnm, m, l) AM_CONDITIONAL(USE_WINSCREENCAP, true) AG_GST_CHECK_FEATURE(WINSCREENCAP, [winscreencap plug-in], winscreencap, [ HAVE_WINSCREENCAP="no" save_CFLAGS="$CFLAGS" save_LDFLAGS="$LDFLAGS" save_LIBS="$LIBS" CFLAGS="$CFLAGS $DIRECTX_CFLAGS" LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS" LIBS="$LIBS -ld3d9 -lgdi32" AC_MSG_CHECKING(for Direct3D LDFLAGS) AC_LINK_IFELSE([AC_LANG_PROGRAM([[ #include #include ]], [[ Direct3DCreate9(D3D_SDK_VERSION); ]])], [HAVE_WINSCREENCAP="yes"], [HAVE_WINSCREENCAP="no"]) AC_MSG_RESULT($HAVE_WINSCREENCAP) CFLAGS=$save_CFLAGS LDFLAGS=$save_LDFLAGS LIBS=$save_LIBS if test "x$HAVE_WINSCREENCAP" = "xyes"; then WINSCREENCAP_LIBS="-ld3d9 -lgdi32" AC_SUBST(WINSCREENCAP_LIBS) fi AC_SUBST(HAVE_WINSCREENCAP) ]) dnl winks translit(dnm, m, l) AM_CONDITIONAL(USE_WINKS, true) AG_GST_CHECK_FEATURE(WINKS, [Winks plug-in], winks, [ HAVE_WINKS="no" save_CFLAGS="$CFLAGS" save_LDFLAGS="$LDFLAGS" save_LIBS="$LIBS" CFLAGS="$CFLAGS $DIRECTX_CFLAGS" LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS" LIBS="$LIBS -lole32 -luuid -lstrmiids" AC_MSG_CHECKING(for Winks LDFLAGS) AC_LINK_IFELSE([AC_LANG_PROGRAM([[ #include #include #include ]], [[ int main () { IGraphBuilder *pGraph = NULL; HRESULT hr = CoInitialize(NULL); hr = CoCreateInstance(&CLSID_FilterGraph, NULL, CLSCTX_INPROC_SERVER, &IID_IGraphBuilder, (void **)&pGraph); return 0; } ]])], [HAVE_WINKS="yes"], [HAVE_WINKS="no"]) AC_MSG_RESULT($HAVE_WINKS) CFLAGS=$save_CFLAGS LDFLAGS=$save_LDFLAGS LIBS=$save_LIBS if test "x$HAVE_WINKS" = "xyes"; then dnl this is much more than we want WINKS_LIBS="-ldxguid -lole32 -luuid -lstrmiids -lksuser -lsetupapi" AC_SUBST(DIRECTX_CFLAGS) AC_SUBST(DIRECTX_LDFLAGS) AC_SUBST(WINKS_LIBS) fi AC_SUBST(HAVE_WINKS) ]) dnl *** Android Media *** translit(dnm, m, l) AM_CONDITIONAL(USE_ANDROID_MEDIA, true) HAVE_ANDROID_MEDIA="no" AG_GST_CHECK_FEATURE(ANDROID_MEDIA, [Android Media], androidmedia, [ case "$host" in *android*) AC_CHECK_HEADER(jni.h, HAVE_ANDROID_MEDIA="yes", HAVE_ANDROID_MEDIA="no") ;; *) HAVE_ANDROID_MEDIA="no" ;; esac ]) dnl *** AppleMedia (OS X and iOS) *** translit(dnm, m, l) AM_CONDITIONAL(USE_APPLE_MEDIA, true) HAVE_APPLE_MEDIA="no" dnl SystemConfiguration.h is common to OS X and iOS, so we check for that AG_GST_CHECK_FEATURE(APPLE_MEDIA, [Apple video], applemedia, [ AC_CHECK_HEADER(SystemConfiguration/SystemConfiguration.h, HAVE_APPLE_MEDIA="yes", HAVE_APPLE_MEDIA="no") dnl OSX 10.7 and earlier lack VideoToolbox/VideoToolbox.h if test "x$HAVE_IOS" = "xno"; then AC_CHECK_HEADER(VideoToolbox/VideoToolbox.h,, HAVE_APPLE_MEDIA="no") fi ]) dnl in case header SystemConfiguration/SystemConfiguration.h is found on other platforms case "$host" in *-*darwin*) ;; *) HAVE_APPLE_MEDIA="no" ;; esac 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], [ HAVE_BLUEZ=yes AC_DEFINE(HAVE_BLUEZ5,[1],[Current bluez 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]) ]) ]) dnl *** OS/X AVCVideoServices *** translit(dnm, m, l) AM_CONDITIONAL(USE_AVC, true) HAVE_AVC="no" AG_GST_CHECK_FEATURE(AVC, [AVC Video Services], avcsrc, [ AC_LANG_PUSH([C++]) save_CPPFLAGS="$CPPFLAGS" CPPFLAGS="$CPPFLAGS -framework AVCVideoServices -framework CoreFoundation" save_LIBS="$LIBS" LIBS="$LIBS -framework AVCVideoServices -framework CoreFoundation" AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[]])],[HAVE_AVC=yes],[HAVE_AVC=no]) LIBS=$save_LIBS CPPFLAGS=$save_CPPFLAGS AC_LANG_POP([C++]) ]) dnl in case header AVCVideoServices/AVCVideoServices.h is found on other platforms case "$host" in *-*darwin*) ;; *) HAVE_AVC="no" ;; esac dnl check for shm_open (for shm plugin) translit(dnm, m, l) AM_CONDITIONAL(USE_SHM, true) AG_GST_CHECK_FEATURE(SHM, [POSIX shared memory source and sink], shm, [ if test "x$HAVE_SYS_SOCKET_H" = "xyes"; then case $host in *-darwin* | *-macos10*) AC_DEFINE(HAVE_OSX,[1],[Apple Mac OS X operating system detected]) HAVE_SHM=yes ;; *) AC_CHECK_LIB([rt], [shm_open], AC_CHECK_DECL([MSG_NOSIGNAL], HAVE_SHM=yes, HAVE_SHM=no, [ #include ]), HAVE_SHM=no) AC_SUBST(SHM_LIBS, "-lrt") ;; esac else HAVE_SHM=no fi ]) dnl check for Video CD translit(dnm, m, l) AM_CONDITIONAL(USE_VCD, true) AG_GST_CHECK_FEATURE(VCD, [Video CD], vcdsrc, [ AC_CHECK_HEADER(linux/cdrom.h, HAVE_VCD="yes", HAVE_VCD="no") ]) dnl check for OpenSL ES translit(dnm, m, l) AM_CONDITIONAL(USE_OPENSLES, true) AG_GST_CHECK_FEATURE(OPENSLES, [OpenSL ES], opensl, [ AC_CHECK_HEADER(SLES/OpenSLES.h, HAVE_OPENSLES="yes", HAVE_OPENSLES="no") ]) dnl *** UVC H264 *** 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" ], [HAVE_GUDEV="no"]) PKG_CHECK_MODULES(LIBUSB, libusb-1.0 , [ AC_DEFINE([HAVE_LIBUSB], 1, [Define if libusb 1.x is installed]) HAVE_LIBUSB="yes" ], [HAVE_LIBUSB="no"]) if test "x$HAVE_UVCVIDEO_H" = "xyes" && \ test "x$HAVE_GUDEV" = "xyes" && \ test "x$HAVE_LIBUSB" = "xyes"; then HAVE_UVCH264=yes else HAVE_UVCH264=no fi ]) AC_SUBST(LIBUDEV_CFLAGS) AC_SUBST(LIBUDEV_LIBS) AC_SUBST(LIBUSB_CFLAGS) AC_SUBST(LIBUSB_LIBS) dnl *** ext plug-ins *** dnl keep this list sorted alphabetically ! if test "x$BUILD_EXTERNAL" = "xyes"; then 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, [ HAVE_ASSRENDER="yes" ], [ HAVE_ASSRENDER="no" ]) ]) AC_SUBST(ASSRENDER_CFLAGS) AC_SUBST(ASSRENDER_LIBS) dnl *** vo-amrwbenc *** translit(dnm, m, l) AM_CONDITIONAL(USE_VOAMRWBENC, true) AG_GST_CHECK_FEATURE(VOAMRWBENC, [vo-amrwbenc library], vo-amrwbenc, [ AG_GST_PKG_CHECK_MODULES(VOAMRWBENC, vo-amrwbenc >= 0.1.0) ]) dnl *** vo-aacenc *** translit(dnm, m, l) AM_CONDITIONAL(USE_VOAACENC, true) AG_GST_CHECK_FEATURE(VOAACENC, [vo-aacenc library], vo-aacenc, [ AG_GST_PKG_CHECK_MODULES(VOAACENC, vo-aacenc >= 0.1.0) ]) dnl *** apexsink *** translit(dnm, m, l) AM_CONDITIONAL(USE_APEXSINK, true) AG_GST_CHECK_FEATURE(APEXSINK, [AirPort Express Wireless sink], apexsink, [ PKG_CHECK_MODULES(APEXSINK, [ openssl >= 0.9.5 libcrypto ], [ HAVE_APEXSINK="yes" saved_LIBS="$LIBS" LIBS="" AC_SEARCH_LIBS(socket, [socket], [ ], [ APEXSINK="no" ]) AC_SEARCH_LIBS(gethostbyname, [nsl], [ ], [ APEXSINK="no" ]) APEXSINK_LIBS="$APEXSINK_LIBS $LIBS" LIBS="$saved_LIBS" AC_SUBST(APEXSINK_CFLAGS) AC_SUBST(APEXSINK_LIBS) ], [ APEXSINK="no" ]) ]) dnl *** bs2b *** translit(dnm, m, l) AM_CONDITIONAL(USE_BS2B, true) AG_GST_CHECK_FEATURE(BS2B, [bs2b], bs2b, [ PKG_CHECK_MODULES(BS2B, libbs2b >= 3.1.0, HAVE_BS2B="yes", [ HAVE_BS2B="no" ]) AC_SUBST(BS2B_CFLAGS) AC_SUBST(BS2B_LIBS) ]) dnl *** BZ2 *** translit(dnm, m, l) AM_CONDITIONAL(USE_BZ2, true) AG_GST_CHECK_FEATURE(BZ2, [bz2 library], bz2, [ save_LIBS=$LIBS LIBS="$LIBS -lbz2" AC_MSG_CHECKING([for BZ2_bzlibVersion in -lbz2]) AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include ]], [[const char *version = BZ2_bzlibVersion ();]])],[HAVE_BZ2=yes],[HAVE_BZ2=no]) AC_MSG_RESULT($HAVE_BZ2) LIBS=$save_LIBS if test "x$HAVE_BZ2" = "xyes"; then BZ2_LIBS="-lbz2" fi AC_SUBST(BZ2_LIBS) ]) #dnl *** cairo *** #translit(dnm, m, l) AM_CONDITIONAL(USE_CAIRO, true) #AG_GST_CHECK_FEATURE(CAIRO, [cairo plug-in], cairo, [ # PKG_CHECK_MODULES(CAIRO, cairo >= 1.0 glitz-glx, HAVE_CAIRO=yes, [ # HAVE_CAIRO=no # ]) # AC_SUBST(CAIRO_CFLAGS) # AC_SUBST(CAIRO_LIBS) #]) dnl *** chromaprint *** translit(dnm, m, l) AM_CONDITIONAL(USE_CHROMAPRINT, true) AG_GST_CHECK_FEATURE(CHROMAPRINT, [chromaprint], chromaprint, [ PKG_CHECK_MODULES(CHROMAPRINT, libchromaprint, HAVE_CHROMAPRINT="yes", [ HAVE_CHROMAPRINT="no" ]) AC_SUBST(CHROMAPRINT_CFLAGS) AC_SUBST(CHROMAPRINT_LIBS) ]) 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, [ 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/types.h winsock2.h ws2tcpip.h fcntl.h], [ ], [HAVE_CURL="no"]) ]) AC_MSG_CHECKING([for socket support needed by curlsink]) AC_MSG_RESULT($HAVE_CURL) ], [ HAVE_CURL="no" ]) AC_SUBST(CURL_CFLAGS) AC_SUBST(CURL_LIBS) PKG_CHECK_MODULES(SSH2, libssh2 >= 1.4.3, [ HAVE_SSH2="yes" AC_DEFINE(HAVE_SSH2, 1, [Define if libssh2 is available]) ], [ HAVE_SSH2="no" ]) AM_CONDITIONAL(USE_SSH2, test "x$HAVE_SSH2" = "xyes") AC_SUBST(SSH2_CFLAGS) AC_SUBST(SSH2_LIBS) ],,,[AM_CONDITIONAL(USE_SSH2, false)]) 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" HAVE_DASH="yes"], [HAVE_LIBXML2="no" HAVE_DASH="no"]) AC_SUBST(LIBXML2_CFLAGS) AC_SUBST(LIBXML2_LIBS) ]) dnl *** dc1394 *** translit(dnm, m, l) AM_CONDITIONAL(USE_DC1394, true) AG_GST_CHECK_FEATURE(DC1394, [libdc1394], dc1394, [ PKG_CHECK_MODULES(LIBDC1394, libdc1394-2 >= 2.0.0, [ if test -z "`$PKG_CONFIG --modversion libdc1394-2 | grep 2.0.0-rc`"; then HAVE_DC1394="yes" else HAVE_DC1394="no" fi ], [ HAVE_DC1394="no" AC_MSG_RESULT(no) ]) AC_SUBST(LIBDC1394_CFLAGS) AC_SUBST(LIBDC1394_LIBS) ]) dnl *** decklink *** translit(dnm, m, l) AM_CONDITIONAL(USE_DECKLINK, true) 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" ]) fi ;; *-*darwin*) 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 ]) fi ;; *) HAVE_DECKLINK=no ;; esac AC_SUBST(DECKLINK_CXXFLAGS) AC_SUBST(DECKLINK_LIBS) ]) AM_CONDITIONAL(DECKLINK_OSX, test "x$HAVE_DECKLINK_OSX" = xyes) dnl **** DirectFB **** translit(dnm, m, l) AM_CONDITIONAL(USE_DIRECTFB, true) AG_GST_CHECK_FEATURE(DIRECTFB, [directfb], dfbvideosink , [ PKG_CHECK_MODULES(DIRECTFB, directfb >= 0.9.24, HAVE_DIRECTFB="yes", [ HAVE_DIRECTFB="no" ]) ]) dnl **** Wayland **** translit(dnm, m, l) AM_CONDITIONAL(USE_WAYLAND, true) AG_GST_CHECK_FEATURE(WAYLAND, [wayland sink], wayland , [ PKG_CHECK_MODULES(WAYLAND, wayland-client >= 1.4.0 wayland-scanner, [ HAVE_WAYLAND="yes" ], [ HAVE_WAYLAND="no" ]) ]) AC_PATH_PROG([wayland_scanner], [wayland-scanner]) dnl **** WebP **** translit(dnm, m, l) AM_CONDITIONAL(USE_WEBP, true) AG_GST_CHECK_FEATURE(WEBP, [WebP], webp , [ PKG_CHECK_MODULES(WEBP, libwebp >= 0.2.1, [ HAVE_WEBP="yes" ], [ HAVE_WEBP="no" ]) AC_SUBST(WEBP_CFLAGS) AC_SUBST(WEBP_LIBS) ]) dnl *** Daala *** translit(dnm, m, l) AM_CONDITIONAL(USE_DAALA, true) AG_GST_CHECK_FEATURE(DAALA, [daala], daala, [ if test "x$BUILD_EXPERIMENTAL" = "xyes"; then PKG_CHECK_MODULES(DAALA, daalaenc daaladec, [ HAVE_DAALA="yes" ], [ HAVE_DAALA="no" ]) AC_SUBST(DAALA_CFLAGS) AC_SUBST(DAALA_LIBS) fi ]) dnl *** DTS *** translit(dnm, m, l) AM_CONDITIONAL(USE_DTS, true) AG_GST_CHECK_FEATURE(DTS, [dts library], dtsdec, [ HAVE_DTS="yes" AG_GST_CHECK_LIBHEADER(DTS, dca, dca_init, $LIBM, dca.h, DTS_LIBS="-ldca $LIBM", HAVE_DTS="no") if test $HAVE_DTS = "no"; then AG_GST_CHECK_LIBHEADER(DTS, dts_pic, dts_init, $LIBM, dts.h, [ DTS_LIBS="-ldts_pic $LIBM" AC_DEFINE(DTS_OLD, 1, [Define if an old libdts is used]) ]) fi AC_SUBST(DTS_LIBS) ]) dnl *** resindvd *** translit(dnm, m, l) AM_CONDITIONAL(USE_RESINDVD, true) AG_GST_CHECK_FEATURE(RESINDVD, [resindvd plugin], resindvd, [ PKG_CHECK_MODULES(DVDNAV, dvdnav >= 4.1.2 dvdread >= 4.1.2, HAVE_RESINDVD="yes", [ HAVE_RESINDVD="no" ]) ]) dnl **** Free AAC Encoder (FAAC) **** translit(dnm, m, l) AM_CONDITIONAL(USE_FAAC, true) AG_GST_CHECK_FEATURE(FAAC, [AAC encoder plug-in], faac, [ AG_GST_CHECK_LIBHEADER(FAAC, faac, faacEncOpen, $LIBM, faac.h, FAAC_LIBS="-lfaac $LIBM") AC_SUBST(FAAC_LIBS) ]) dnl **** Free AAC Decoder (FAAD) **** translit(dnm, m, l) AM_CONDITIONAL(USE_FAAD, true) AG_GST_CHECK_FEATURE(FAAD, [AAC decoder plug-in], faad, [ HAVE_FAAD="yes" faad_hdr="" AG_GST_CHECK_LIBHEADER(FAAD, faad, faacDecOpen, $LIBM, faad.h, FAAD_LIBS="-lfaad $LIBM", HAVE_FAAD="no") if test $HAVE_FAAD = "no"; then AG_GST_CHECK_LIBHEADER(FAAD, faad, NeAACDecOpen, $LIBM, neaacdec.h, [ FAAD_LIBS="-lfaad $LIBM" AC_DEFINE(FAAD_IS_NEAAC, 1, [Define if AAC is using new api prefix]) faad_hdr="neaacdec.h" ], [ HAVE_FAAD="no" ],) else faad_hdr="faad.h" fi if test $HAVE_FAAD = "yes"; then AC_MSG_CHECKING([Checking for FAAD >= 2.0]) AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include ]], [[ #if !defined(FAAD2_VERSION) || !defined(FAAD_FMT_DOUBLE) #error Not faad2 #else /* Release candidate of 2.0 is not good enough for us. This field * was added only in 2.0 final and does not exist in 2.0-RC3 */ faacDecConfiguration conf; conf.dontUpSampleImplicitSBR = 1; #endif ]])],[ HAVE_FAAD="yes" 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\"], [ #include <$faad_hdr> GST_CHECK_FAAD_VERSION FAAD2_VERSION ], [ faad2_minor_version=$minor ]) fi done if test x$faad2_minor_version = "x"; then AC_MSG_RESULT([no idea]) else AC_MSG_RESULT([2.$faad2_minor_version]) AC_DEFINE_UNQUOTED([FAAD2_MINOR_VERSION], [$faad2_minor_version], [The x in 2.x]) fi ],[ HAVE_FAAD="no" ]) fi AC_SUBST(FAAD_LIBS) AC_SUBST(FAAD_IS_NEAAC) ]) dnl *** fbdev *** translit(dnm, m, l) AM_CONDITIONAL(USE_FBDEV, true) AG_GST_CHECK_FEATURE(FBDEV, [linux framebuffer], fbdevsink, [ if test "x$HAVE_FBDEV" != "xyes"; then AC_CHECK_HEADER([linux/fb.h], HAVE_FBDEV=yes, HAVE_FBDEV=no) fi ]) dnl *** flite *** translit(dnm, m, l) AM_CONDITIONAL(USE_FLITE, true) AG_GST_CHECK_FEATURE(FLITE, [Flite plugin], flite, [ AG_GST_CHECK_LIBHEADER(FLITE, flite, flite_init, $LIBM, flite/flite.h, FLITE_LIBS="-lflite -lflite_cmu_us_kal -lflite_usenglish -lflite_cmulex $LIBM") AC_SUBST(FLITE_CFLAGS) AC_SUBST(FLITE_LIBS) ]) dnl *** gsm *** translit(dnm, m, l) AM_CONDITIONAL(USE_GSM, true) AG_GST_CHECK_FEATURE(GSM, [GSM library], gsmenc gsmdec, [ AG_GST_CHECK_LIBHEADER(GSM, gsm, gsm_create, , gsm.h, GSM_LIBS="-lgsm") if test $HAVE_GSM != "yes"; then AG_GST_CHECK_LIBHEADER(GSM, gsm, gsm_create, , gsm/gsm.h, GSM_LIBS="-lgsm") if test $HAVE_GSM = "yes"; then AC_DEFINE(GSM_HEADER_IN_SUBDIR, 1, [Define if GSM header in gsm/ subdir]) fi fi AC_SUBST(GSM_LIBS) ]) dnl *** fluidSynth *** translit(dnm, m, l) AM_CONDITIONAL(USE_FLUIDSYNTH, true) AG_GST_CHECK_FEATURE(FLUIDSYNTH, [fluidsynth], fluidsynth, [ PKG_CHECK_MODULES(FLUIDSYNTH, fluidsynth >= 1.0, HAVE_FLUIDSYNTH="yes", [ HAVE_FLUIDSYNTH="no" ]) ]) dnl *** kate *** translit(dnm, m, l) AM_CONDITIONAL(USE_KATE, true) AG_GST_CHECK_FEATURE(KATE, [Kate], kate, [ PKG_CHECK_MODULES(KATE, kate >= 0.1.7, HAVE_KATE="yes", [ HAVE_KATE="no" ]) AC_SUBST(KATE_CFLAGS) AC_SUBST(KATE_LIBS) PKG_CHECK_MODULES(TIGER, tiger >= 0.3.2, [ HAVE_TIGER="yes" AC_DEFINE(HAVE_TIGER, 1, [Define if libtiger is available]) ], [ HAVE_TIGER="no" ] ) AM_CONDITIONAL(USE_TIGER, test "x$HAVE_TIGER" = "xyes") AC_SUBST(TIGER_CFLAGS) AC_SUBST(TIGER_LIBS) ],,,[AM_CONDITIONAL(USE_TIGER, false)]) dnl *** ladspa *** translit(dnm, m, l) AM_CONDITIONAL(USE_LADSPA, true) AG_GST_CHECK_FEATURE(LADSPA, [ladspa], ladspa, [ AC_CHECK_HEADER(ladspa.h, HAVE_LADSPA="yes", HAVE_LADSPA="no") PKG_CHECK_MODULES(LRDF, lrdf, HAVE_LRDF=yes, HAVE_LRDF=no) if test $HAVE_LRDF = "yes"; then AC_DEFINE(HAVE_LRDF, 1, [Define if we have liblrdf]) fi AC_SUBST(LRDF_LIBS) AC_SUBST(LRDF_CFLAGS) ]) dnl *** LV2 *** translit(dnm, m, l) AM_CONDITIONAL(USE_LV2, true) AG_GST_CHECK_FEATURE(LV2, [lv2], lv2, [ PKG_CHECK_MODULES(SLV2, slv2 >= 0.6.6, HAVE_LV2="yes", HAVE_LV2="no") AC_SUBST(SLV2_CFLAGS) AC_SUBST(SLV2_LIBS) ]) dnl *** libde265 *** translit(dnm, m, l) AM_CONDITIONAL(USE_LIBDE265, true) AG_GST_CHECK_FEATURE(LIBDE265, [libde265 HEVC/H.265 decoder], libde265, [ PKG_CHECK_MODULES(LIBDE265, libde265 >= 0.9, HAVE_LIBDE265="yes", HAVE_LIBDE265="no") AC_SUBST(LIBDE265_CFLAGS) AC_SUBST(LIBDE265_LIBS) ]) dnl *** libmms *** translit(dnm, m, l) AM_CONDITIONAL(USE_LIBMMS, true) AG_GST_CHECK_FEATURE(LIBMMS, [mms protocol library], libmms, [ dnl check with pkg-config first PKG_CHECK_MODULES(LIBMMS, libmms >= 0.4, HAVE_LIBMMS="yes", [ HAVE_LIBMMS="no" ]) ]) AC_SUBST(LIBMMS_LIBS) 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", 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 >= 0.9.5 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, [ case "$host" in *-*linux*) HAVE_LINSYS=yes ;; *) HAVE_LINSYS=no ;; esac ]) dnl *** modplug *** translit(dnm, m, l) AM_CONDITIONAL(USE_MODPLUG, true) AG_GST_CHECK_FEATURE(MODPLUG, modplug, modplug, [ if test "x$HAVE_CXX" != "xyes"; then AC_MSG_WARN([Not compiling modplug plugin as it requires a C++ compiler]) HAVE_MODPLUG="no" else PKG_CHECK_MODULES(MODPLUG, libmodplug, HAVE_MODPLUG="yes", HAVE_MODPLUG="no") fi AC_SUBST(MODPLUG_CFLAGS) AC_SUBST(MODPLUG_LIBS) ]) dnl *** mimic *** translit(dnm, m, l) AM_CONDITIONAL(USE_MIMIC, true) AG_GST_CHECK_FEATURE(MIMIC, [libmimic library], mimic, [ MIMIC_REQUIRED=1.0 PKG_CHECK_MODULES(MIMIC, libmimic >= $MIMIC_REQUIRED, HAVE_MIMIC=yes, HAVE_MIMIC=no) AC_SUBST(MIMIC_CFLAGS) AC_SUBST(MIMIC_LIBS) ]) dnl *** mjpegtools version info *** dnl some may prefer older version (given quirks above) dnl hm, no version info seems available within mjpegtools headers dnl and API really moves along echo PKG_CHECK_EXISTS(mjpegtools >= 1.6.1.93 mjpegtools < 1.8.0, [ mjpegtools_api=10601 ], [ PKG_CHECK_EXISTS(mjpegtools >= 1.8.0 mjpegtools < 1.9.0, [ mjpegtools_api=10800 ], [ PKG_CHECK_EXISTS(mjpegtools >= 2.0.0, [ mjpegtools_api=20000 ], [ PKG_CHECK_MODULES(MJPEG, mjpegtools >= 1.9.0 mjpegtools < 2.0.0, [ dnl logging API changed in release candidates OLD_CFLAGS="$CFLAGS" OLD_LIBS="$LIBS" CFLAGS="$MJPEG_CFLAGS" LIBS="$LIBS $MJPEG_LIBS -lmjpegutils $LIBM $PTHREAD_LIBS" AC_CHECK_FUNC(mjpeg_loglev_t, [ mjpegtools_api=10903 ], [ mjpegtools_api=10900 ]) CFLAGS="$OLD_CFLAGS" LIBS="$OLD_LIBS" ], [ mjpegtools_api=0 ]) ]) ]) ]) AC_DEFINE_UNQUOTED(GST_MJPEGTOOLS_API, $mjpegtools_api, [mjpegtools API evolution]) dnl *** mpeg2enc *** translit(dnm, m, l) AM_CONDITIONAL(USE_MPEG2ENC, true) AG_GST_CHECK_FEATURE(MPEG2ENC, [mpeg2enc], mpeg2enc, [ HAVE_MPEG2ENC="no" dnl we require a c++ compiler for this one if [ test x$HAVE_CXX = xyes ]; then dnl libmpeg2enc was first included in mjpegtools-1.6.2-rc3 (1.6.1.92) dnl since many distros include mjpegtools specifically without mplex dnl and mpeg2enc, we check for mpeg2enc on its own, too. PKG_CHECK_MODULES(MPEG2ENC, mjpegtools >= 1.6.1.93, [ dnl HACK because mpeg2enc 1.8.0 header files have a spurious 'include config.h' touch config.h dnl switch over to c++ to test things AC_LANG([C++]) OLD_CPPFLAGS="$CPPFLAGS" dnl HACK as above CPPFLAGS_GOOD="$CPPFLAGS $MPEG2ENC_CFLAGS" CPPFLAGS="$CPPFLAGS_GOOD -I." dnl check headers mpeg2enc_headers_ok=no AC_CHECK_HEADER([mpeg2encoder.hh], [ MPEG2ENC_LIBS="$MPEG2ENC_LIBS -lmpeg2encpp $LIBM $PTHREAD_LIBS" OLD_LIBS="$LIBS" LIBS="$LIBS $MPEG2ENC_LIBS" AC_MSG_CHECKING([for valid mpeg2enc objects]) AC_RUN_IFELSE([AC_LANG_SOURCE([[ #include #include int main (int argc, char *argv[]) { MPEG2EncOptions *options = new MPEG2EncOptions (); MPEG2Encoder *encoder = new MPEG2Encoder (*options); return 0; } ]])],[ AC_MSG_RESULT(yes) dnl so far so good, let's check more things: dnl mjpegtools-1.8.0 does not install the required dnl mpeg2syntaxcodes.h header by default, and a new release dnl is not in sight, so check for this oversight in case dnl distros or folks have fixed this themselves if test "$mjpegtools_api" -ge "10800"; then AC_CHECK_HEADER([mpeg2syntaxcodes.h], [ mpeg2enc_headers_ok=yes ], [ mpeg2enc_headers_ok=no ]) else mpeg2enc_headers_ok=yes fi if test "x$mpeg2enc_headers_ok" = "xyes"; then HAVE_MPEG2ENC="yes" fi CPPFLAGS="$CPPFLAGS_GOOD" AC_SUBST(MPEG2ENC_CFLAGS) AC_SUBST(MPEG2ENC_LIBS) ],[ AC_MSG_RESULT(no) ],[]) LIBS="$OLD_LIBS" ]) CPPFLAGS="$OLD_CPPFLAGS" AC_LANG([C]) ], [ HAVE_MPEG2ENC="no" ]) fi ]) dnl *** mpg123 *** translit(dnm, m, l) AM_CONDITIONAL(USE_MPG123, true) AG_GST_CHECK_FEATURE(MPG123, [mpg123 audio decoder], mpg123, [ PKG_CHECK_MODULES(MPG123, libmpg123 >= 1.13, HAVE_MPG123="yes", HAVE_MPG123="no") AC_SUBST(MPG123_CFLAGS) AC_SUBST(MPG123_LIBS) ]) dnl *** mplex *** translit(dnm, m, l) AM_CONDITIONAL(USE_MPLEX, true) AG_GST_CHECK_FEATURE(MPLEX, [mplex], mplex, [ HAVE_MPLEX="no" dnl we require a c++ compiler for this one if [ test x$HAVE_CXX = xyes ]; then dnl libmplex was first included in mjpegtools-1.6.2-rc4 (1.6.1.93) dnl since many distros include mjpegtools specifically without mplex dnl and mpeg2enc, we check for mplex on its own, too. dnl libmplex < 1.9rc? has fuzzy ABI, valgrind and other problems PKG_CHECK_MODULES(MPLEX, mjpegtools >= 1.9.0, [ dnl HACK because mplex 2.0.0 header files have a spurious 'include config.h' touch config.h dnl switch over to c++ to test things AC_LANG([C++]) OLD_CPPFLAGS="$CPPFLAGS" dnl HACK as above CPPFLAGS_GOOD="$CPPFLAGS $MPLEX_CFLAGS" CPPFLAGS="$CPPFLAGS_GOOD -I." AC_CHECK_HEADER(interact.hpp, [ MPLEX_LIBS="$MPLEX_LIBS -lmplex2 $LIBM" OLD_LIBS="$LIBS" LIBS="$LIBS $MPLEX_LIBS" OLD_LDFLAGS="$LDFLAGS" LDFLAGS="$LDFLAGS $MPLEX_LDFLAGS" dnl older libmplex uses off_t SegmentSize (), which leads to fuzzy ABI; dnl don't want this here AC_MSG_CHECKING([for valid mplex objects]) AC_RUN_IFELSE([AC_LANG_SOURCE([[ #include #include #include int main (int argc, char *argv[]) { class TestOutputStream : public OutputStream { public: TestOutputStream () : OutputStream () { } void Write (uint8_t *a, unsigned int b) { } void NextSegment () { } uint64_t SegmentSize () { } void Close () { } int Open () { } }; MultiplexJob *job = new MultiplexJob (); vector inputs; job->SetupInputStreams (inputs); TestOutputStream *out = new TestOutputStream (); Multiplexor *mux = new Multiplexor(*job, *out, NULL); return 0; } ]])],[ HAVE_MPLEX="yes" CPPFLAGS="$CPPFLAGS_GOOD" AC_SUBST(MPLEX_CFLAGS) AC_SUBST(MPLEX_LIBS) AC_SUBST(MPLEX_LDFLAGS) AC_MSG_RESULT(yes) ],[AC_MSG_RESULT(no)],[]) LIBS="$OLD_LIBS" LDFLAGS="$OLD_LDFLAGS" ]) CPPFLAGS="$OLD_CPPFLAGS" AC_LANG([C]) ], HAVE_MPLEX="no") fi ]) dnl *** musepack *** translit(dnm, m, l) AM_CONDITIONAL(USE_MUSEPACK, true) AG_GST_CHECK_FEATURE(MUSEPACK, [musepackdec], musepack, [ AC_CHECK_HEADER([mpc/mpcdec.h], [ HAVE_MUSEPACK="yes" MUSEPACK_LIBS="-lmpcdec" AC_SUBST(MUSEPACK_LIBS) ], [AC_CHECK_HEADER([mpcdec/mpcdec.h], [ HAVE_MUSEPACK="yes" MUSEPACK_LIBS="-lmpcdec" AC_DEFINE(MPC_IS_OLD_API, 1, [Define if the old MusePack API is used]) AC_SUBST(MUSEPACK_LIBS) ], [HAVE_MUSEPACK="no"])]) ]) dnl *** nas *** translit(dnm, m, l) AM_CONDITIONAL(USE_NAS, true) AG_GST_CHECK_FEATURE(NAS, [nas plug-in], nassink, [ HAVE_NAS="no" if test "x$HAVE_X" = "xyes"; then save_cppflags=$CFLAGS CPPFLAGS="$CPPFLAGS $X_CFLAGS" AG_GST_CHECK_LIBHEADER(NAS, audio, AuOpenServer, $X_LIBS, audio/audiolib.h, NAS_LIBS="$X_LIBS -laudio" NAS_CFLAGS="$X_CFLAGS") CPPFLAGS="$save_cppflags" fi AC_SUBST(NAS_CFLAGS) AC_SUBST(NAS_LIBS) ]) dnl *** neon *** translit(dnm, m, l) AM_CONDITIONAL(USE_NEON, true) AG_GST_CHECK_FEATURE(NEON, [neon http client plugins], neonhttpsrc, [ PKG_CHECK_MODULES(NEON, neon >= 0.27.0 neon <= 0.30.99, HAVE_NEON="yes", [ HAVE_NEON="no" ]) AC_SUBST(NEON_CFLAGS) AC_SUBST(NEON_LIBS) ]) dnl *** ofa *** translit(dnm, m, l) AM_CONDITIONAL(USE_OFA, true) AG_GST_CHECK_FEATURE(OFA, [ofa plugins], ofa, [ PKG_CHECK_MODULES(OFA, libofa >= 0.9.3, HAVE_OFA="yes", [ HAVE_OFA="no" ]) AC_SUBST(OFA_CFLAGS) AC_SUBST(OFA_LIBS) ]) dnl *** OpenAL *** translit(dnm, m, l) AM_CONDITIONAL(USE_OPENAL, true) AG_GST_CHECK_FEATURE(OPENAL, [OpenAL plugin], openal, [ PKG_CHECK_MODULES(OPENAL, openal >= 1.14, HAVE_OPENAL="yes", [ HAVE_OPENAL="no" ]) AC_SUBST(OPENAL_CFLAGS) AC_SUBST(OPENAL_LIBS) ]) dnl *** opencv *** translit(dnm, m, l) AM_CONDITIONAL(USE_OPENCV, true) AG_GST_CHECK_FEATURE(OPENCV, [opencv plugins], opencv, [ dnl we specify a max. version too because we set CV_NO_BACKWARD_COMPATIBILITY dnl and don't want the build to break when a new opencv version comes out. dnl Need to adjust this upwards once we know that our code compiles fine with 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 , [ AC_PROG_CXX AC_LANG([C++]) OLD_CPPFLAGS=$CPPFLAGS CPPFLAGS=$OPENCV_CFLAGS 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 $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" ]) OPENCV_PREFIX="`$PKG_CONFIG --variable=prefix opencv`" AC_DEFINE_UNQUOTED(OPENCV_PREFIX, "$OPENCV_PREFIX", [opencv install prefix]) AC_SUBST(OPENCV_PREFIX) AC_SUBST(OPENCV_CFLAGS) AC_SUBST(OPENCV_LIBS) ]) dnl *** OpenEXR *** translit(dnm, m, l) AM_CONDITIONAL(USE_OPENEXR, true) AG_GST_CHECK_FEATURE(OPENEXR, [openexr library], openexr, [ AG_GST_PKG_CHECK_MODULES(OPENEXR, 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 >= 1.3.0) ]) dnl *** OpenJPEG *** translit(dnm, m, l) AM_CONDITIONAL(USE_OPENJPEG, true) AG_GST_CHECK_FEATURE(OPENJPEG, [openjpeg library], openjpeg, [ HAVE_OPENJPEG="no" save_LIBS="$LIBS" save_CFLAGS="$CFLAGS" OPENJPEG_LIBS="-lopenjp2" LIBS="$LIBS $OPENJPEG_LIBS" CFLAGS="$CFLAGS $OPENJPEG_CFLAGS" AC_LINK_IFELSE([ AC_LANG_PROGRAM([#include ], [return (int) *opj_version ();]) ], [HAVE_OPENJPEG=yes], [HAVE_OPENJPEG=no]) LIBS="$save_LIBS" CFLAGS="$save_CFLAGS" if test x"$HAVE_OPENJPEG" = x"no"; then OPENJPEG_LIBS="" PKG_CHECK_MODULES(OPENJPEG, libopenjpeg1, HAVE_OPENJPEG="yes", AG_GST_CHECK_LIBHEADER(OPENJPEG, openjpeg, opj_version, , openjpeg.h, OPENJPEG_LIBS="-lopenjpeg") ) if test x"$HAVE_OPENJPEG" = x"yes"; then AC_DEFINE([HAVE_OPENJPEG_1], 1, [Define if OpenJPEG 1 is used]) fi fi AC_SUBST(OPENJPEG_CFLAGS) AC_SUBST(OPENJPEG_LIBS) ]) dnl *** OpenNI2 *** translit(dnm, m, l) AM_CONDITIONAL(USE_OPENNI2, true) AG_GST_CHECK_FEATURE(OPENNI2, [openni2 library], openni2, [ PKG_CHECK_MODULES(OPENNI2, libopenni2 >= 0.26, HAVE_OPENNI2="yes", [ HAVE_OPENNI2="no" ] ) AC_SUBST(OPENNI2_CFLAGS) AC_SUBST(OPENNI2_LIBS) ]) dnl *** Opus *** translit(dnm, m, l) AM_CONDITIONAL(USE_OPUS, true) AG_GST_CHECK_FEATURE(OPUS, [opus], opus, [ PKG_CHECK_MODULES(OPUS, opus >= 0.9.4, [ AC_DEFINE([HAVE_OPUS], 1, [Define if Opus >= 0.9.4 is installed]) HAVE_OPUS="yes" ], [ HAVE_OPUS="no" ]) AC_SUBST(OPUS_CFLAGS) AC_SUBST(OPUS_LIBS) ]) dnl *** pvr *** translit(dnm, m, l) AM_CONDITIONAL(USE_PVR, true) AG_GST_CHECK_FEATURE(PVR, [pvrvideosink], pvr, [ PKG_CHECK_MODULES([PVR], [libtimemmgr], HAVE_PVR=yes, HAVE_PVR=no) AC_SUBST(PVR_CFLAGS) AC_SUBST(PVR_LIBS) ]) AC_ARG_WITH([pvr-external-headers], AS_HELP_STRING([--with-pvr-external-headers],[Use system installed PVR2D headers]), [AS_IF([test "x$with_pvr_external_headers" = "xno"], [PVR_CFLAGS="$PVR_CFLAGS -I\$(srcdir)/pvr_includes"])], [PVR_CFLAGS="$PVR_CFLAGS -I\$(srcdir)/pvr_includes"]) dnl *** rsvg *** translit(dnm, m, l) AM_CONDITIONAL(USE_RSVG, true) AG_GST_CHECK_FEATURE(RSVG, [rsvg decoder], rsvg, [ PKG_CHECK_MODULES(RSVG, librsvg-2.0 >= 2.36 cairo, [ HAVE_RSVG="yes" PKG_CHECK_MODULES(RSVG_2_36_2, librsvg-2.0 >= 2.36.2, HAVE_RSVG_2_36_2="yes", HAVE_RSVG_2_36_2="no") if test "x$HAVE_RSVG_2_36_2" = "xyes"; then AC_DEFINE(HAVE_RSVG_2_36_2, [1], [Have RSVG 2.36.2 or newer]) fi ], [ HAVE_RSVG="no" ]) AC_SUBST(RSVG_CFLAGS) AC_SUBST(RSVG_LIBS) ]) dnl *** gl *** translit(dnm, m, l) AM_CONDITIONAL(USE_GL, true) AG_GST_CHECK_FEATURE(GL, [gl elements], gl, [ HAVE_GL="no" if test x"$USE_OPENGL" = x"yes" -o x"$USE_GLES2" = x"yes"; then HAVE_GL="yes" fi ]) dnl *** libvisual *** translit(dnm, m, l) AM_CONDITIONAL(USE_LIBVISUAL, true) AG_GST_CHECK_FEATURE(LIBVISUAL, [libvisual visualization library], libvisual, [ AG_GST_PKG_CHECK_MODULES(LIBVISUAL, libvisual-0.4 >= 0.4.0) if test x$HAVE_LIBVISUAL = xyes; then LIBVIS_PLUGINSDIR="`$PKG_CONFIG --variable=pluginsbasedir libvisual-0.4`" fi AC_MSG_NOTICE([libvisual pluginsdir: $LIBVIS_PLUGINSDIR]) if test x$LIBVIS_PLUGINSDIR != x; then AC_DEFINE_UNQUOTED(LIBVISUAL_PLUGINSBASEDIR, "$LIBVIS_PLUGINSDIR", [directory in which the detected libvisual's plugins are located]) fi ]) dnl *** timidity *** translit(dnm, m, l) AM_CONDITIONAL(USE_TIMIDITY, true) AG_GST_CHECK_FEATURE(TIMIDITY, [timidity midi soft synth plugin], timidity, [ PKG_CHECK_MODULES(TIMIDITY, libtimidity, [ HAVE_TIMIDITY="yes", AC_MSG_CHECKING([for timidity.cfg]) timidity_cfg="" if test -r /etc/timidity.cfg; then timidity_cfg=/etc/timidity.cfg elif test -r /etc/timidity/timidity.cfg; then timidity_cfg=/etc/timidity/timidity.cfg elif test -r /usr/share/timidity/timidity.cfg; then timidity_cfg=/usr/share/timidity/timidity.cfg elif test -r /usr/local/share/timidity/timidity.cfg; then timidity_cfg=/usr/local/share/timidity/timidity.cfg fi if test "x$timidity_cfg" != "x"; then AC_MSG_RESULT($timidity_cfg) AC_DEFINE_UNQUOTED(TIMIDITY_CFG, "$timidity_cfg", [Define location of timidity.cfg]) else AC_MSG_RESULT([not found]) fi ], [ HAVE_TIMIDITY="no" ]) AC_SUBST(TIMIDITY_CFLAGS) AC_SUBST(TIMIDITY_LIBS) ]) dnl *** teletextdec *** translit(dnm, m, l) AM_CONDITIONAL(USE_TELETEXTDEC, true) AG_GST_CHECK_FEATURE(TELETEXTDEC, [Teletext decoder], teletextdec, [ AG_GST_PKG_CHECK_MODULES(TELETEXTDEC, zvbi-0.2) ]) dnl *** wildmidi *** translit(dnm, m, l) AM_CONDITIONAL(USE_WILDMIDI, true) AG_GST_CHECK_FEATURE(WILDMIDI, [wildmidi midi soft synth plugin], wildmidi, [ AG_GST_CHECK_LIBHEADER(WILDMIDI, WildMidi, WildMidi_Init, , wildmidi_lib.h, WILDMIDI_LIBS="-lWildMidi") AC_CHECK_LIB(WildMidi, WildMidi_LoadSamples, AC_DEFINE(HAVE_WILDMIDI_0_2_2, [1], [Have WildMidi 0.2.2 or earlier library])) if test "x$HAVE_WILDMIDI" = "xyes"; then WILDMIDI_CFLAGS= WILDMIDI_LIBS=-lWildMidi AC_MSG_NOTICE(compiling gstWildMidi) else WILDMIDI_CFLAGS= WILDMIDI_LIBS= AC_MSG_WARN(no WildMidi library found (libWildMidi)) fi AC_SUBST(WILDMIDI_CFLAGS) AC_SUBST(WILDMIDI_LIBS) ]) dnl *** SDL *** translit(dnm, m, l) AM_CONDITIONAL(USE_SDL, true) AG_GST_CHECK_FEATURE(SDL, [SDL plug-in], sdlvideosink sdlaudiosink, [ AM_PATH_SDL(, HAVE_SDL=yes, HAVE_SDL=no) ]) dnl **** Smooth Streaming **** translit(dnm, m, l) AM_CONDITIONAL(USE_SMOOTHSTREAMING, true) AG_GST_CHECK_FEATURE(SMOOTHSTREAMING, [Smooth Streaming plug-in], smoothstreaming, [ PKG_CHECK_MODULES(LIBXML2, libxml-2.0 >= 2.4, [HAVE_LIBXML2="yes" HAVE_SMOOTHSTREAMING="yes"], [HAVE_LIBXML2="no" HAVE_SMOOTHSTREAMING="no"]) AC_SUBST(LIBXML2_CFLAGS) AC_SUBST(LIBXML2_LIBS) ]) dnl *** sndfile *** translit(dnm, m, l) AM_CONDITIONAL(USE_SNDFILE, true) AG_GST_CHECK_FEATURE(SNDFILE, [sndfile plug-in], sfdec sfenc, [ PKG_CHECK_MODULES(SNDFILE, sndfile >= 1.0.16, HAVE_SNDFILE="yes", HAVE_SNDFILE="no") AC_SUBST(SNDFILE_CFLAGS) AC_SUBST(SNDFILE_LIBS) ]) dnl *** soundtouch *** translit(dnm, m, l) AM_CONDITIONAL(USE_SOUNDTOUCH, true) AG_GST_CHECK_FEATURE(SOUNDTOUCH, [soundtouch plug-in], soundtouch, [ dnl We only need -lBPM on soundtouch < 1.4 dnl We check for libSoundTouch since Debian used it before upstream dnl added a pkgconfig file. HAVE_SOUNDTOUCH_1_4=yes PKG_CHECK_MODULES(SOUNDTOUCH, soundtouch, [HAVE_SOUNDTOUCH=yes], [PKG_CHECK_MODULES(SOUNDTOUCH, soundtouch-1.4, [HAVE_SOUNDTOUCH=yes], [PKG_CHECK_MODULES(SOUNDTOUCH, soundtouch-1.0, [HAVE_SOUNDTOUCH=yes HAVE_SOUNDTOUCH_1_4=no SOUNDTOUCH_LIBS="$SOUNDTOUCH_LIBS -lBPM"], [PKG_CHECK_MODULES(SOUNDTOUCH, libSoundTouch >= 1.4, [HAVE_SOUNDTOUCH=yes], [PKG_CHECK_MODULES(SOUNDTOUCH, libSoundTouch, [HAVE_SOUNDTOUCH=yes HAVE_SOUNDTOUCH_1_4=no SOUNDTOUCH_LIBS="$SOUNDTOUCH_LIBS -lBPM"], HAVE_SOUNDTOUCH=no)])])])]) AC_SUBST(SOUNDTOUCH_CFLAGS) AC_SUBST(SOUNDTOUCH_LIBS) if test "x$HAVE_CXX" != "xyes"; then USE_SOUNDTOUCH=false AC_MSG_NOTICE([Not building soundtouch plugin: no C++ compiler found]) fi if test "x$HAVE_SOUNDTOUCH" = "xyes" -a "x$HAVE_SOUNDTOUCH_1_4" = "xyes"; then AC_DEFINE([HAVE_SOUNDTOUCH_1_4], [1], [Defined if the available libSoundTouch is >= 1.4]) fi ]) dnl *** spc *** translit(dnm, m, l) AM_CONDITIONAL(USE_SPC, true) AG_GST_CHECK_FEATURE(SPC, [spc decoder], spc, [ AC_CHECK_HEADER(openspc.h, [ AC_CHECK_LIB(openspc, OSPC_Init, [ SPC_LIBS="-lopenspc" AC_SUBST(SPC_LIBS) HAVE_SPC=yes ], [ HAVE_SPC=no ]) ], [ HAVE_SPC=no ]) ]) dnl *** gme *** translit(dnm, m, l) AM_CONDITIONAL(USE_GME, true) AG_GST_CHECK_FEATURE(GME, [gme decoder], gme, [ AC_CHECK_HEADER(gme/gme.h, [ AC_CHECK_LIB(gme, gme_new_emu, [ GME_LIBS="-lgme" AC_SUBST(GME_LIBS) HAVE_GME=yes ], [ HAVE_GME=no ]) ], [ HAVE_GME=no ]) if test "x$HAVE_GME" = "xyes"; then AC_CHECK_LIB(gme, gme_enable_accuracy, [ AC_DEFINE(HAVE_LIBGME_ACCURACY, 1, [Define if gme 0.5.6 or newer is available]) ]) fi ]) dnl *** XVID *** translit(dnm, m, l) AM_CONDITIONAL(USE_XVID, true) AG_GST_CHECK_FEATURE(XVID, [xvid plugins], xvid, [ HAVE_XVID=no AC_CHECK_HEADER(xvid.h, [ OLD_LIBS="$LIBS" LIBS="$PTHREAD_LIBS $LIBM" AC_CHECK_LIB(xvidcore, xvid_encore, [ AC_CHECK_LIB(xvidcore, xvid_decore, [ AC_CHECK_LIB(xvidcore, xvid_global, [ AC_MSG_CHECKING([for up-to-date XviD API version]) AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include ]], [[ #if XVID_API_MAJOR(XVID_API) != 4 #error "Incompatible XviD API version" #endif #if XVID_API_MAJOR(XVID_API) == 4 && XVID_API_MINOR(XVID_API) < 3 #error "Incompatible XviD API version" #endif ]])],[ AC_MSG_RESULT(yes) XVID_LIBS="-lxvidcore $LIBM" AC_SUBST(XVID_LIBS) HAVE_XVID=yes ],[AC_MSG_RESULT(no) ]) ], ) ], ) ], ) LIBS="$OLD_LIBS" ], ) ]) dnl *** dvb *** translit(dnm, m, l) AM_CONDITIONAL(USE_DVB, true) AG_GST_CHECK_FEATURE(DVB, [DVB Source], dvb, [ AC_MSG_CHECKING([Checking for up to date dvb installation]) AC_CHECK_HEADER(linux/dvb/version.h, [ AC_MSG_CHECKING([for up-to-date dvb API]) AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include ]], [[ #if DVB_API_VERSION < 5 || (DVB_API_VERSION == 5 && DVB_API_VERSION_MINOR <= 4) #error "Incompatible dvb API" #endif ]])], [ AC_MSG_RESULT(yes) HAVE_DVB="yes" ], [ AC_MSG_RESULT(no) HAVE_DVB="no" ]) ], [HAVE_DVB="no"]) ]) dnl *** wininet *** translit(dnm, m, l) AM_CONDITIONAL(USE_WININET, true) AG_GST_CHECK_FEATURE(WININET, [Windows internet library], wininet, [ AC_MSG_CHECKING([Checking for windows internet support]) AC_CHECK_HEADERS([windows.h wininet.h], [HAVE_WININET="yes"], [HAVE_WININET="no"], [AC_INCLUDES_DEFAULT #include ]) ]) dnl *** acm *** translit(dnm, m, l) AM_CONDITIONAL(USE_ACM, true) AG_GST_CHECK_FEATURE(ACM, [Windows ACM library], acm, [ AC_MSG_CHECKING([Checking for ACM support]) AC_CHECK_HEADERS([windows.h msacm.h], [HAVE_ACM="yes" AC_SUBST(ACMENC_CFLAGS) AC_SUBST(ACMMP3DEC_CFLAGS) ], [HAVE_ACM="no"], [AC_INCLUDES_DEFAULT #include ]) ]) dnl *** vdpau *** translit(dnm, m, l) AM_CONDITIONAL(USE_VDPAU, true) AG_GST_CHECK_FEATURE(VDPAU, [VDPAU], vdpau, [ VDPAU_CFLAGS= VDPAU_LIBS=-lvdpau HAVE_VDPAU=no PKG_CHECK_MODULES(VDPAU, vdpau, [HAVE_VDPAU="yes"], [ if test "$HAVE_VDPAU" = "no"; then saved_CPPFLAGS="$CPPFLAGS" AC_CHECK_HEADER([vdpau/vdpau.h], [HAVE_VDPAU_H=yes]) if test -z "$HAVE_VDPAU_H"; then dnl Didn't find VDPAU header straight away. dnl Try /usr/include/nvidia. Need to clear caching vars first AC_MSG_NOTICE([VDPAU header not in standard path. Checking /usr/include/nvidia]) unset ac_cv_header_vdpau_vdpau_h unset ac_cv_header_vdpau_vdpau_x11_h VDPAU_CFLAGS="-I/usr/include/nvidia" VDPAU_LIBS="-L/usr/lib/nvidia -lvdpau" CPPFLAGS="$VDPAU_CFLAGS $saved_CPPFLAGS" AC_CHECK_HEADER([vdpau/vdpau.h], [HAVE_VDPAU_H=yes]) fi AC_CHECK_HEADER([vdpau/vdpau_x11.h], [HAVE_VDPAU_X11_H=yes]) if test "x$HAVE_VDPAU_H" = "xyes" -a "x$HAVE_VDPAU_X11_H" = "xyes"; then dnl Found the headers - look for the lib AC_MSG_NOTICE([VDPAU headers found. Checking libraries]) saved_LIBS="$LIBS" LIBS="$VDPAU_LIBS $saved_LIBS" AC_CHECK_LIB(vdpau,vdp_device_create_x11,[HAVE_VDPAU="yes"]) LIBS="$saved_LIBS" fi fi ]) if test "$HAVE_VDPAU" = "yes"; then AC_MSG_NOTICE([Found up to date VDPAU installation]) AC_SUBST(VDPAU_CFLAGS) AC_SUBST(VDPAU_LIBS) fi ]) dnl *** sbc *** translit(dnm, m, l) AM_CONDITIONAL(USE_SBC, true) AG_GST_CHECK_FEATURE(SBC, [SBC bluetooth audio codec], sbc, [ AG_GST_PKG_CHECK_MODULES(SBC, [sbc >= 1.0]) ]) dnl *** schroedinger *** translit(dnm, m, l) AM_CONDITIONAL(USE_SCHRO, true) AG_GST_CHECK_FEATURE(SCHRO, [Schroedinger video codec], schro, [ AG_GST_PKG_CHECK_MODULES(SCHRO, schroedinger-1.0 >= 1.0.10) ]) dnl *** zbar *** translit(dnm, m, l) AM_CONDITIONAL(USE_ZBAR, true) AG_GST_CHECK_FEATURE(ZBAR, [ZBar barcode detector], zbar, [ AG_GST_PKG_CHECK_MODULES(ZBAR, zbar >= 0.9) ]) dnl *** rtmp *** translit(dnm, m, l) AM_CONDITIONAL(USE_RTMP, true) AG_GST_CHECK_FEATURE(RTMP, [rtmp library], rtmp, [ AG_GST_PKG_CHECK_MODULES(RTMP, librtmp) ]) dnl *** spandsp *** translit(dnm, m, l) AM_CONDITIONAL(USE_SPANDSP, true) AG_GST_CHECK_FEATURE(SPANDSP, [Spandsp], spandsp, [ PKG_CHECK_MODULES(SPANDSP, spandsp >= 0.0.6, [ HAVE_SPANDSP="yes" ], [ HAVE_SPANDSP="no" ]) ]) AC_SUBST(SPANDSP_CFLAGS) AC_SUBST(SPANDSP_LIBS) dnl *** GSettings *** translit(dnm, m, l) AM_CONDITIONAL(USE_GSETTINGS, true) AG_GST_CHECK_FEATURE(GSETTINGS, [GSettings plugin], gsettings, [ AG_GST_PKG_CHECK_MODULES(GSETTINGS, gio-2.0 >= 2.25.0) if test "x$HAVE_GSETTINGS" = "xyes"; then GLIB_GSETTINGS fi ]) dnl *** sndio *** translit(dnm, m, l) AM_CONDITIONAL(USE_SNDIO, true) AG_GST_CHECK_FEATURE(SNDIO, [sndio audio], sndio, [ AC_CHECK_HEADER(sndio.h, HAVE_SNDIO="yes", HAVE_SNDIO="no") if test "x$HAVE_SNDIO" = "xyes"; then AC_CHECK_LIB(sndio, sio_open, HAVE_SNDIO="yes", HAVE_SNDIO="no") if test "x$HAVE_SNDIO" = "xyes"; then SNDIO_LIBS=-lsndio AC_SUBST(SNDIO_LIBS) fi fi ]) dnl *** hls *** translit(dnm, m, l) AM_CONDITIONAL(USE_HLS, true) AG_GST_CHECK_FEATURE(HLS, [http live streaming plugin], hls, [ PKG_CHECK_MODULES(NETTLE, nettle, [ AC_DEFINE(HAVE_NETTLE, 1, [Define if nettle is available]) HAVE_HLS="yes" ], [ AM_PATH_LIBGCRYPT([1.2.0], [ AC_DEFINE(HAVE_LIBGCRYPT, 1, [Define if libgcrypt is available]) HAVE_HLS="yes" ], [ PKG_CHECK_MODULES(OPENSSL, openssl, [ AC_DEFINE(HAVE_OPENSSL, 1, [Define if openssl is available]) HAVE_HLS="yes" ], [ HAVE_HLS="no" ]) ]) ]) ]) dnl *** x265 (H.265/HEVC encoder) *** translit(dnm, m, l) AM_CONDITIONAL(USE_X265, true) AG_GST_CHECK_FEATURE(X265, [x265 plug-in], x265, [ AG_GST_PKG_CHECK_MODULES(X265, x265) ]) else dnl not building plugins with external dependencies, dnl but we still need to set the conditionals AM_CONDITIONAL(USE_ASSRENDER, false) AM_CONDITIONAL(USE_VOAMRWBENC, false) AM_CONDITIONAL(USE_VOAACENC, false) AM_CONDITIONAL(USE_APEXSINK, false) AM_CONDITIONAL(USE_BS2B, false) AM_CONDITIONAL(USE_BZ2, false) AM_CONDITIONAL(USE_CHROMAPRINT, false) AM_CONDITIONAL(USE_CURL, false) AM_CONDITIONAL(USE_SSH2, false) AM_CONDITIONAL(USE_DASH, false) AM_CONDITIONAL(USE_DC1394, false) AM_CONDITIONAL(USE_DECKLINK, false) AM_CONDITIONAL(DECKLINK_OSX, false) AM_CONDITIONAL(USE_DIRECTFB, false) AM_CONDITIONAL(USE_WAYLAND, false) AM_CONDITIONAL(USE_DAALA, false) AM_CONDITIONAL(USE_DTS, false) AM_CONDITIONAL(USE_EXIF, false) AM_CONDITIONAL(USE_RESINDVD, false) AM_CONDITIONAL(USE_FAAC, false) AM_CONDITIONAL(USE_FAAD, false) AM_CONDITIONAL(USE_FBDEV, false) AM_CONDITIONAL(USE_FLITE, false) AM_CONDITIONAL(USE_FLUIDSYNTH, false) AM_CONDITIONAL(USE_GL, false) AM_CONDITIONAL(USE_GSM, false) AM_CONDITIONAL(USE_HLS, false) AM_CONDITIONAL(USE_KATE, false) AM_CONDITIONAL(USE_TIGER, false) AM_CONDITIONAL(USE_LADSPA, false) AM_CONDITIONAL(USE_LV2, false) AM_CONDITIONAL(USE_LIBDE265, false) AM_CONDITIONAL(USE_LIBMMS, false) AM_CONDITIONAL(USE_LINSYS, false) AM_CONDITIONAL(USE_MODPLUG, false) AM_CONDITIONAL(USE_MIMIC, false) AM_CONDITIONAL(USE_MPEG2ENC, false) AM_CONDITIONAL(USE_MPG123, false) AM_CONDITIONAL(USE_MPLEX, false) AM_CONDITIONAL(USE_MUSEPACK, false) AM_CONDITIONAL(USE_NAS, false) AM_CONDITIONAL(USE_NEON, false) AM_CONDITIONAL(USE_OFA, false) AM_CONDITIONAL(USE_OPENAL, false) AM_CONDITIONAL(USE_OPENCV, false) AM_CONDITIONAL(USE_OPENEXR, false) AM_CONDITIONAL(USE_OPENJPEG, false) AM_CONDITIONAL(USE_OPENNI2, false) AM_CONDITIONAL(USE_OPUS, false) AM_CONDITIONAL(USE_PVR, false) AM_CONDITIONAL(USE_LIBVISUAL, false) AM_CONDITIONAL(USE_TIMIDITY, false) AM_CONDITIONAL(USE_WILDMIDI, false) AM_CONDITIONAL(USE_SDL, false) AM_CONDITIONAL(USE_SMOOTHSTREAMING, false) AM_CONDITIONAL(USE_SNDFILE, false) AM_CONDITIONAL(USE_SOUNDTOUCH, false) AM_CONDITIONAL(USE_SPANDSP, false) AM_CONDITIONAL(USE_SPC, false) AM_CONDITIONAL(USE_SRTP, false) AM_CONDITIONAL(USE_GME, false) AM_CONDITIONAL(USE_GSETTINGS, false) AM_CONDITIONAL(USE_XVID, false) AM_CONDITIONAL(USE_DVB, false) AM_CONDITIONAL(USE_WININET, false) AM_CONDITIONAL(USE_ACM, false) AM_CONDITIONAL(USE_VDPAU, false) AM_CONDITIONAL(USE_SBC, false) AM_CONDITIONAL(USE_SCHRO, false) AM_CONDITIONAL(USE_ZBAR, false) AM_CONDITIONAL(USE_RSVG, false) AM_CONDITIONAL(USE_RTMP, false) AM_CONDITIONAL(USE_TELETEXTDEC, false) AM_CONDITIONAL(USE_SNDIO, false) AM_CONDITIONAL(USE_UVCH264, 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 dnl *** finalize CFLAGS, LDFLAGS, LIBS dnl Overview: dnl GST_OPTION_CFLAGS: common flags for profiling, debugging, errors, ... dnl GST_*: flags shared by built objects to link against GStreamer dnl GST_ALL_LDFLAGS: linker flags shared by all dnl GST_LIB_LDFLAGS: additional linker flags for all libaries dnl GST_LT_LDFLAGS: library versioning of our libraries dnl GST_PLUGIN_LDFLAGS: flags to be used for all plugins dnl GST_OPTION_CFLAGS if test "x$USE_DEBUG" = xyes; then PROFILE_CFLAGS="-g" fi AC_SUBST(PROFILE_CFLAGS) if test "x$PACKAGE_VERSION_NANO" = "x1"; then dnl Define _only_ during CVS (not pre-releases or releases) DEPRECATED_CFLAGS="-DGST_DISABLE_DEPRECATED" else DEPRECATED_CFLAGS="" fi AC_SUBST(DEPRECATED_CFLAGS) dnl every flag in GST_OPTION_CFLAGS and GST_OPTION_CXXFLAGS can be overridden dnl at make time with e.g. make ERROR_CFLAGS="" GST_OPTION_CFLAGS="\$(WARNING_CFLAGS) \$(ERROR_CFLAGS) \$(DEBUG_CFLAGS) \$(PROFILE_CFLAGS) \$(GCOV_CFLAGS) \$(OPT_CFLAGS) \$(DEPRECATED_CFLAGS)" GST_OPTION_CXXFLAGS="\$(WARNING_CXXFLAGS) \$(ERROR_CXXFLAGS) \$(DEBUG_CFLAGS) \$(PROFILE_CFLAGS) \$(GCOV_CFLAGS) \$(OPT_CFLAGS) \$(DEPRECATED_CFLAGS)" GST_OPTION_OBJCFLAGS="\$(WARNING_OBJCFLAGS) \$(ERROR_OBJCFLAGS) \$(DEBUG_CFLAGS) \$(PROFILE_CFLAGS) \$(GCOV_CFLAGS) \$(OPT_CFLAGS) \$(DEPRECATED_CFLAGS)" AC_SUBST(GST_OPTION_CFLAGS) AC_SUBST(GST_OPTION_CXXFLAGS) AC_SUBST(GST_OPTION_OBJCFLAGS) dnl FIXME: do we want to rename to GST_ALL_* ? dnl prefer internal headers to already installed ones dnl also add builddir include for enumtypes and marshal dnl add GST_OPTION_CFLAGS, but overridable GST_CFLAGS="$GST_CFLAGS -DGST_USE_UNSTABLE_API" GST_CXXFLAGS="$GST_CFLAGS $GLIB_EXTRA_CFLAGS \$(GST_OPTION_CXXFLAGS)" GST_OBJCFLAGS="$GST_CFLAGS $GLIB_EXTRA_CFLAGS \$(GST_OPTION_OBJCFLAGS)" GST_CFLAGS="$GST_CFLAGS $GLIB_EXTRA_CFLAGS \$(GST_OPTION_CFLAGS)" AC_SUBST(GST_CFLAGS) AC_SUBST(GST_CXXFLAGS) AC_SUBST(GST_OBJCFLAGS) AC_SUBST(GST_LIBS) GST_PLUGINS_BAD_CXXFLAGS="-I\$(top_srcdir)/gst-libs -I\$(top_builddir)/gst-libs" GST_PLUGINS_BAD_OBJCFLAGS="-I\$(top_srcdir)/gst-libs -I\$(top_builddir)/gst-libs" GST_PLUGINS_BAD_CFLAGS="-I\$(top_srcdir)/gst-libs -I\$(top_builddir)/gst-libs" AC_SUBST(GST_PLUGINS_BAD_CFLAGS) AC_SUBST(GST_PLUGINS_BAD_CXXFLAGS) AC_SUBST(GST_PLUGINS_BAD_OBJCFLAGS) dnl LDFLAGS really should only contain flags, not libs - they get added before dnl whatevertarget_LIBS and -L flags here affect the rest of the linking GST_ALL_LDFLAGS="-no-undefined" AC_SUBST(GST_ALL_LDFLAGS) dnl GST_LIB_LDFLAGS dnl linker flags shared by all libraries dnl LDFLAGS modifier defining exported symbols from built libraries dnl (export _gst_foo but not __gst_foo) GST_LIB_LDFLAGS="-export-symbols-regex ^_?\(gst_\|Gst\|GST_\).*" AC_SUBST(GST_LIB_LDFLAGS) dnl this really should only contain flags, not libs - they get added before dnl whatevertarget_LIBS and -L flags here affect the rest of the linking GST_PLUGIN_LDFLAGS="-module -avoid-version -export-symbols-regex '^[_]*gst_plugin_.*' $GST_ALL_LDFLAGS" AC_SUBST(GST_PLUGIN_LDFLAGS) dnl *** output files *** $MKDIR_P tests/check/orc dnl po/Makefile.in AC_CONFIG_FILES( Makefile common/Makefile common/m4/Makefile gst-plugins-bad.spec gst/Makefile gst/accurip/Makefile gst/adpcmdec/Makefile gst/adpcmenc/Makefile gst/aiff/Makefile gst/asfmux/Makefile gst/audiofxbad/Makefile gst/audiomixer/Makefile gst/audiovisualizers/Makefile gst/autoconvert/Makefile gst/bayer/Makefile gst/camerabin2/Makefile gst/cdxaparse/Makefile gst/coloreffects/Makefile gst/dataurisrc/Makefile gst/dccp/Makefile gst/debugutils/Makefile gst/dvbsuboverlay/Makefile gst/dvdspu/Makefile gst/faceoverlay/Makefile gst/festival/Makefile gst/fieldanalysis/Makefile gst/freeverb/Makefile gst/frei0r/Makefile gst/gaudieffects/Makefile gst/geometrictransform/Makefile gst/gdp/Makefile gst/hdvparse/Makefile gst/id3tag/Makefile gst/inter/Makefile gst/interlace/Makefile gst/ivfparse/Makefile gst/ivtc/Makefile gst/jp2kdecimator/Makefile gst/jpegformat/Makefile gst/librfb/Makefile gst/liveadder/Makefile gst/midi/Makefile gst/mpegdemux/Makefile gst/mpegtsdemux/Makefile gst/mpegtsmux/Makefile gst/mpegtsmux/tsmux/Makefile gst/mpegpsmux/Makefile gst/mve/Makefile gst/mxf/Makefile gst/nuvdemux/Makefile gst/onvif/Makefile gst/patchdetect/Makefile gst/pcapparse/Makefile gst/pnm/Makefile gst/rawparse/Makefile gst/removesilence/Makefile gst/rtp/Makefile gst/sdi/Makefile gst/sdp/Makefile gst/segmentclip/Makefile gst/siren/Makefile gst/smooth/Makefile gst/speed/Makefile gst/subenc/Makefile gst/stereo/Makefile gst/tta/Makefile gst/videofilters/Makefile gst/videomeasure/Makefile gst/videoparsers/Makefile gst/videosignal/Makefile gst/vmnc/Makefile gst/y4m/Makefile gst/yadif/Makefile gst/compositor/Makefile gst-libs/Makefile gst-libs/gst/Makefile gst-libs/gst/adaptivedemux/Makefile gst-libs/gst/basecamerabinsrc/Makefile gst-libs/gst/gl/Makefile gst-libs/gst/gl/android/Makefile gst-libs/gst/gl/cocoa/Makefile gst-libs/gst/gl/dispmanx/Makefile gst-libs/gst/gl/glprototypes/Makefile gst-libs/gst/gl/eagl/Makefile gst-libs/gst/gl/egl/Makefile gst-libs/gst/gl/wayland/Makefile gst-libs/gst/gl/win32/Makefile gst-libs/gst/gl/x11/Makefile gst-libs/gst/insertbin/Makefile gst-libs/gst/interfaces/Makefile gst-libs/gst/codecparsers/Makefile gst-libs/gst/mpegts/Makefile gst-libs/gst/uridownloader/Makefile gst-libs/gst/wayland/Makefile gst-libs/gst/base/Makefile gst-libs/gst/video/Makefile sys/Makefile sys/dshowdecwrapper/Makefile sys/acmenc/Makefile sys/acmmp3dec/Makefile sys/androidmedia/Makefile sys/applemedia/Makefile sys/applemedia-nonpublic/Makefile sys/avc/Makefile sys/bluez/Makefile sys/d3dvideosink/Makefile sys/decklink/Makefile sys/directsound/Makefile sys/dshowsrcwrapper/Makefile sys/dshowvideosink/Makefile sys/dvb/Makefile sys/fbdev/Makefile sys/linsys/Makefile sys/opensles/Makefile sys/shm/Makefile sys/uvch264/Makefile sys/vcd/Makefile sys/vdpau/Makefile sys/pvr2d/Makefile sys/wasapi/Makefile sys/wininet/Makefile sys/winks/Makefile sys/winscreencap/Makefile tests/Makefile tests/check/Makefile tests/files/Makefile tests/examples/Makefile tests/examples/avsamplesink/Makefile tests/examples/camerabin2/Makefile tests/examples/directfb/Makefile tests/examples/gl/Makefile tests/examples/gl/cocoa/Makefile tests/examples/gl/clutter/Makefile tests/examples/gl/generic/Makefile tests/examples/gl/generic/cube/Makefile tests/examples/gl/generic/cubeyuv/Makefile tests/examples/gl/generic/doublecube/Makefile tests/examples/gl/generic/recordgraphic/Makefile tests/examples/gl/gtk/Makefile tests/examples/gl/gtk/gtkvideooverlay/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/mpegts/Makefile tests/examples/mxf/Makefile tests/examples/opencv/Makefile tests/examples/uvch264/Makefile tests/icles/Makefile ext/voamrwbenc/Makefile ext/voaacenc/Makefile ext/assrender/Makefile ext/apexsink/Makefile ext/bs2b/Makefile ext/bz2/Makefile ext/chromaprint/Makefile ext/curl/Makefile ext/dash/Makefile ext/dc1394/Makefile ext/directfb/Makefile ext/wayland/Makefile ext/daala/Makefile ext/dts/Makefile ext/gl/Makefile ext/faac/Makefile ext/faad/Makefile ext/flite/Makefile ext/fluidsynth/Makefile ext/gsm/Makefile ext/hls/Makefile ext/kate/Makefile ext/ladspa/Makefile ext/lv2/Makefile ext/libde265/Makefile ext/libmms/Makefile ext/libvisual/Makefile ext/Makefile ext/modplug/Makefile ext/mpeg2enc/Makefile ext/mpg123/Makefile ext/mimic/Makefile ext/mplex/Makefile ext/musepack/Makefile ext/nas/Makefile ext/neon/Makefile ext/ofa/Makefile ext/openal/Makefile ext/opencv/Makefile ext/openexr/Makefile ext/openh264/Makefile ext/openjpeg/Makefile ext/openni2/Makefile ext/opus/Makefile ext/rsvg/Makefile ext/resindvd/Makefile ext/rtmp/Makefile ext/sbc/Makefile ext/schroedinger/Makefile ext/sdl/Makefile ext/smoothstreaming/Makefile ext/sndfile/Makefile ext/soundtouch/Makefile ext/spandsp/Makefile ext/sndio/Makefile ext/srtp/Makefile ext/teletextdec/Makefile ext/gme/Makefile ext/gsettings/Makefile ext/gsettings/org.freedesktop.gstreamer.default-elements.gschema.xml ext/spc/Makefile ext/timidity/Makefile ext/webp/Makefile ext/x265/Makefile ext/xvid/Makefile ext/zbar/Makefile ext/dtls/Makefile po/Makefile.in docs/Makefile docs/plugins/Makefile docs/libs/Makefile docs/version.entities pkgconfig/Makefile pkgconfig/gstreamer-plugins-bad.pc pkgconfig/gstreamer-plugins-bad-uninstalled.pc pkgconfig/gstreamer-codecparsers.pc pkgconfig/gstreamer-codecparsers-uninstalled.pc pkgconfig/gstreamer-insertbin.pc pkgconfig/gstreamer-insertbin-uninstalled.pc pkgconfig/gstreamer-gl.pc pkgconfig/gstreamer-gl-uninstalled.pc pkgconfig/gstreamer-mpegts.pc pkgconfig/gstreamer-mpegts-uninstalled.pc pkgconfig/gstreamer-wayland.pc pkgconfig/gstreamer-wayland-uninstalled.pc pkgconfig/gstreamer-bad-base.pc pkgconfig/gstreamer-bad-base-uninstalled.pc pkgconfig/gstreamer-bad-video.pc pkgconfig/gstreamer-bad-video-uninstalled.pc tools/Makefile m4/Makefile ) dnl Create the config.h file for Visual Studio builds dnl Beware of spaces and /'s in some of the shell variable contents. sed \ -e 's/.*config.h.in.*autoheader.*/\/* Autogenerated config.h created for win32 Visual Studio builds *\/\n\n\/* PREFIX -- specifically added for Windows for easier moving *\/\n#define PREFIX "C:\\\\gstreamer"/' \ -e 's/.* GETTEXT_PACKAGE$/#define GETTEXT_PACKAGE "'$GETTEXT_PACKAGE'"/' \ -e 's/.* GST_DATADIR$/#define GST_DATADIR PREFIX "\\\\share"/' \ -e 's/.* GST_LEVEL_DEFAULT$/#define GST_LEVEL_DEFAULT GST_LEVEL_ERROR/' \ -e 's/.* GST_LICENSE$/#define GST_LICENSE "'$GST_LICENSE'"/' \ -e 's/.* GST_API_VERSION$/#define GST_API_VERSION "'$GST_API_VERSION'"/' \ -e "s,.* GST_PACKAGE_NAME$,#define GST_PACKAGE_NAME \"${GST_PACKAGE_NAME}\"," \ -e 's/.* GST_PACKAGE_ORIGIN$/#define GST_PACKAGE_ORIGIN "Unknown package origin"/' \ -e "s,.* GST_PACKAGE_RELEASE_DATETIME$,#define GST_PACKAGE_RELEASE_DATETIME \"${GST_PACKAGE_RELEASE_DATETIME}\"," \ -e 's/.* HAVE_CPU_I386$/#define HAVE_CPU_I386 1/' \ -e 's/.* HAVE_STDLIB_H$/#define HAVE_STDLIB_H 1/' \ -e 's/.* HAVE_STRING_H$/#define HAVE_STRING_H 1/' \ -e 's/.* HAVE_SYS_STAT_H$/#define HAVE_SYS_STAT_H 1/' \ -e 's/.* HAVE_SYS_TYPES_H$/#define HAVE_SYS_TYPES_H 1/' \ -e 's/.* HAVE_WIN32$/#define HAVE_WIN32 1/' \ -e 's/.* HOST_CPU$/#define HOST_CPU "i686"/' \ -e 's/.* LIBDIR$/#ifdef _DEBUG\n# define LIBDIR PREFIX "\\\\debug\\\\lib"\n#else\n# define LIBDIR PREFIX "\\\\lib"\n#endif/' \ -e 's/.* LOCALEDIR$/#define LOCALEDIR PREFIX "\\\\share\\\\locale"/' \ -e "s/.* PACKAGE$/#define PACKAGE \"$PACKAGE\"/" \ -e 's/.* PACKAGE_BUGREPORT$/#define PACKAGE_BUGREPORT "http:\/\/bugzilla.gnome.org\/enter_bug.cgi?product=GStreamer"/' \ -e "s/.* PACKAGE_NAME$/#define PACKAGE_NAME \"$PACKAGE_NAME\"/" \ -e "s/.* PACKAGE_STRING$/#define PACKAGE_STRING \"$PACKAGE_STRING\"/" \ -e 's/.* PACKAGE_TARNAME$/#define PACKAGE_TARNAME "'$PACKAGE_TARNAME'"/' \ -e 's/.* PACKAGE_VERSION$/#define PACKAGE_VERSION "'$PACKAGE_VERSION'"/' \ -e 's/.* PLUGINDIR$/#ifdef _DEBUG\n# define PLUGINDIR PREFIX "\\\\debug\\\\lib\\\\gstreamer-0.11"\n#else\n# define PLUGINDIR PREFIX "\\\\lib\\\\gstreamer-0.11"\n#endif/' \ -e 's/.* VERSION$/#define VERSION "'$VERSION'"/' \ -e "s/.* DEFAULT_AUDIOSINK$/#define DEFAULT_AUDIOSINK \"directsoundsink\"/" \ -e "s/.* DEFAULT_AUDIOSRC$/#define DEFAULT_AUDIOSRC \"audiotestsrc\"/" \ -e "s/.* DEFAULT_VIDEOSRC$/#define DEFAULT_VIDEOSRC \"videotestsrc\"/" \ -e "s/.* DEFAULT_VISUALIZER$/#define DEFAULT_VISUALIZER \"goom\"/" \ -e 's/.* HAVE_WINDOWS_H$/#define HAVE_WINDOWS_H 1/' \ -e 's/.* HAVE_WININET_H$/#define HAVE_WININET_H 1/' \ -e 's/.* HAVE_WINSOCK2_H$/#define HAVE_WINSOCK2_H 1/' \ -e 's/.* HAVE_WS2TCPIP_H$/#define HAVE_WS2TCPIP_H 1/' \ config.h.in >win32/common/config.h-new AC_OUTPUT AG_GST_OUTPUT_PLUGINS ORC_OUTPUT