3 dnl initialize autoconf
4 dnl when going to/from release please set the nano (fourth number) right !
5 dnl releases only do Wall, cvs and prerelease does Werror too
6 AC_INIT([GStreamer Bad Plug-ins],[1.5.0.1],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-bad])
10 dnl initialize automake
11 AM_INIT_AUTOMAKE([-Wno-portability 1.11 no-dist-gzip dist-xz tar-ustar subdir-objects])
13 dnl define PACKAGE_VERSION_* variables
16 dnl check if this is a release version
17 AS_NANO(GST_GIT="no", GST_GIT="yes")
19 dnl can autoconf find the source ?
20 AC_CONFIG_SRCDIR([docs/plugins/gst-plugins-bad-plugins-docs.sgml])
22 dnl define the output header for config
23 AC_CONFIG_HEADERS([config.h])
25 dnl AM_MAINTAINER_MODE only provides the option to configure to enable it
26 AM_MAINTAINER_MODE([enable])
28 dnl sets host_* variables
31 dnl use pretty build output with automake >= 1.11
32 m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])],
33 [AM_DEFAULT_VERBOSITY=1
34 AC_SUBST(AM_DEFAULT_VERBOSITY)])
36 dnl our libraries and install dirs use GST_API_VERSION in the filename
37 dnl to allow side-by-side installation of different API versions
39 AC_SUBST(GST_API_VERSION)
40 AC_DEFINE_UNQUOTED(GST_API_VERSION, "$GST_API_VERSION",
41 [GStreamer API Version])
43 AG_GST_LIBTOOL_PREPARE
45 dnl CURRENT, REVISION, AGE
46 dnl - library source changed -> increment REVISION
47 dnl - interfaces added/removed/changed -> increment CURRENT, REVISION = 0
48 dnl - interfaces added -> increment AGE
49 dnl - interfaces removed -> AGE = 0
50 dnl sets GST_LT_LDFLAGS
51 AS_LIBTOOL(GST, 501, 0, 501)
53 dnl *** required versions of GStreamer stuff ***
57 dnl *** autotools stuff ****
59 dnl allow for different autotools
60 AS_AUTOTOOLS_ALTERNATE
62 dnl Add parameters for aclocal
63 AC_SUBST(ACLOCAL_AMFLAGS, "-I m4 -I common/m4")
66 dnl the version check needs to stay here because autopoint greps for it
67 AM_GNU_GETTEXT_VERSION([0.17])
68 AM_GNU_GETTEXT([external])
69 AG_GST_GETTEXT([gst-plugins-bad-$GST_API_VERSION])
71 dnl *** check for arguments to configure ***
73 AG_GST_ARG_DISABLE_FATAL_WARNINGS
82 AG_GST_ARG_WITH_PKG_CONFIG_PATH
83 AG_GST_ARG_WITH_PACKAGE_NAME
84 AG_GST_ARG_WITH_PACKAGE_ORIGIN
86 AG_GST_ARG_WITH_PLUGINS
88 AG_GST_ARG_ENABLE_EXTERNAL
90 AG_GST_ARG_ENABLE_EXPERIMENTAL
92 AG_GST_PKG_CONFIG_PATH
94 dnl *** checks for platform ***
97 dnl * hardware/architecture *
99 dnl common/m4/gst-arch.m4
103 dnl Determine endianness
106 dnl *** checks for programs ***
112 dnl determine c++ compiler
114 dnl determine if c++ is available on this system
115 AC_CHECK_PROG(HAVE_CXX, $CXX, yes, no)
119 dnl check if the compiler supports '-c' and '-o' options
122 dnl check if the compiler supports do while(0) macros
123 AG_GST_CHECK_DOWHILE_MACROS
125 AC_PATH_PROG(VALGRIND_PATH, valgrind, no)
126 AM_CONDITIONAL(HAVE_VALGRIND, test ! "x$VALGRIND_PATH" = "xno")
128 dnl check for gobject-introspection
129 GOBJECT_INTROSPECTION_CHECK([1.31.1])
131 dnl check for documentation tools
132 GTK_DOC_CHECK([1.12])
133 AG_GST_PLUGIN_DOCS([1.12])
135 dnl *** checks for libraries ***
137 dnl check for libm, for sin() etc.
143 dnl check for pthreads
146 dnl *** checks for header files ***
148 AC_CHECK_HEADERS([unistd.h], HAVE_UNISTD_H=yes)
149 AM_CONDITIONAL(HAVE_UNISTD_H, test "x$HAVE_UNISTD_H" = "xyes")
151 if test "x$HAVE_UNISTD_H" != "xyes"; then
152 GST_PLUGINS_SELECTED=`echo $GST_PLUGINS_SELECTED | $SED -e s/festival//`
155 AC_CHECK_HEADERS([sys/time.h])
160 AC_CHECK_HEADERS([pthread.h], HAVE_PTHREAD_H=yes)
161 AM_CONDITIONAL(HAVE_PTHREAD_H, test "x$HAVE_PTHREAD_H" = "xyes")
163 if test "x$HAVE_PTHREAD_H" != "xyes"; then
164 GST_PLUGINS_SELECTED=`echo $GST_PLUGINS_SELECTED | $SED -e s/dccp//`
167 dnl *** checks for types/defines ***
169 dnl Check for FIONREAD ioctl declaration
173 dnl *** checks for structures ***
175 dnl *** checks for compiler characteristics ***
177 dnl *** checks for library functions ***
178 AC_CHECK_FUNCS([gmtime_r])
180 dnl *** checks for headers ***
181 AC_CHECK_HEADERS([sys/utsname.h])
183 dnl *** checks for dependency libraries ***
185 dnl *** checks for socket and nsl libraries ***
186 AC_CHECK_FUNC(socket,,[AC_CHECK_LIB(socket,socket)])
187 AC_CHECK_FUNC(gethostbyname,,[AC_CHECK_LIB(nsl,gethostbyname)])
191 AG_GST_GLIB_CHECK([$GLIB_REQ])
193 dnl checks for gstreamer
194 dnl uninstalled is selected preferentially -- see pkg-config(1)
195 AG_GST_CHECK_GST($GST_API_VERSION, [$GST_REQ], yes)
196 AG_GST_CHECK_GST_BASE($GST_API_VERSION, [$GST_REQ], yes)
197 AG_GST_CHECK_GST_CHECK($GST_API_VERSION, [$GST_REQ], no)
198 AG_GST_CHECK_GST_CONTROLLER($GST_API_VERSION, [$GST_REQ], yes)
199 AM_CONDITIONAL(HAVE_GST_CHECK, test "x$HAVE_GST_CHECK" = "xyes")
201 AG_GST_CHECK_GST_PLUGINS_BASE($GST_API_VERSION, [$GSTPB_REQ], yes)
203 dnl check for uninstalled plugin directories for unit tests
204 AG_GST_CHECK_UNINSTALLED_SETUP([
205 AG_GST_CHECK_GST_PLUGINS_GOOD($GST_API_VERSION, [0.11.0])
206 AG_GST_CHECK_GST_PLUGINS_UGLY($GST_API_VERSION, [0.11.0])
207 AG_GST_CHECK_GST_PLUGINS_LIBAV($GST_API_VERSION, [0.11.0])
210 dnl Check for documentation xrefs
211 GLIB_PREFIX="`$PKG_CONFIG --variable=prefix glib-2.0`"
212 GST_PREFIX="`$PKG_CONFIG --variable=prefix gstreamer-$GST_API_VERSION`"
213 GSTPB_PREFIX="`$PKG_CONFIG --variable=prefix gstreamer-plugins-base-$GST_API_VERSION`"
214 AC_SUBST(GLIB_PREFIX)
216 AC_SUBST(GSTPB_PREFIX)
218 dnl GTK is optional and used in examples
222 if test "x$BUILD_EXAMPLES" = "xyes"; then
223 AC_MSG_CHECKING([which gtk+ version to compile examples against (optional)])
225 AS_HELP_STRING([--with-gtk=3.0|2.0],[which gtk+ version to compile against (default: 2.0)]),
227 2.0) GTK_REQ=$GTK2_REQ ;;
228 3.0) GTK_REQ=$GTK3_REQ ;;
229 *) AC_MSG_ERROR([invalid gtk+ version specified]);;
233 AC_MSG_RESULT([$with_gtk (>= $GTK_REQ)])
234 PKG_CHECK_MODULES(GTK, gtk+-x11-$with_gtk >= $GTK_REQ, HAVE_GTK=yes, HAVE_GTK=no)
238 AM_CONDITIONAL(HAVE_GTK, test "x$HAVE_GTK" = "xyes")
241 dnl GTK is optional and used in examples
243 if test "x$BUILD_EXAMPLES" = "xyes"; then
244 PKG_CHECK_MODULES(GTK3, gtk+-3.0 >= 3.4, HAVE_GTK3=yes, HAVE_GTK3=no)
245 if test "x$HAVE_GTK3" = "xyes"; then
247 GTK_VERSION=`$PKG_CONFIG --variable=gtk_binary_version gtk+-3.0`
248 AC_SUBST(GTK_VERSION)
249 GTK_PREFIX=`$PKG_CONFIG --variable=prefix gdk-pixbuf-2.0`
250 AC_SUBST(GTK_BASE_DIR)
254 AC_SUBST(GTK3_CFLAGS)
256 AM_CONDITIONAL(HAVE_GTK3, test "x$HAVE_GTK3" = "xyes")
258 dnl clutter is optional and used in examples
262 if test "x$BUILD_EXAMPLES" = "xyes"; then
263 PKG_CHECK_MODULES(CLUTTER, clutter-1.0 >= 1.8, HAVE_CLUTTER=yes, HAVE_CLUTTER=no)
264 AC_SUBST(CLUTTER_LIBS)
265 AC_SUBST(CLUTTER_CFLAGS)
266 AC_SUBST(HAVE_CLUTTER)
268 PKG_CHECK_MODULES(CLUTTER_GLX, clutter-glx-1.0 >= 1.8, HAVE_CLUTTER_GLX=yes, HAVE_CLUTTER_GLX=no)
269 AC_SUBST(CLUTTER_GLX_LIBS)
270 AC_SUBST(CLUTTER_GLX_CFLAGS)
271 AC_SUBST(HAVE_CLUTTER_GLX)
273 PKG_CHECK_MODULES(CLUTTER_X11, clutter-x11-1.0 >= 1.8, HAVE_CLUTTER_X11=yes, HAVE_CLUTTER_X11=no)
274 AC_SUBST(CLUTTER_X11_LIBS)
275 AC_SUBST(CLUTTER_X11_CFLAGS)
276 AC_SUBST(HAVE_CLUTTER_X11)
278 AM_CONDITIONAL(HAVE_CLUTTER, test "x$HAVE_CLUTTER" = "xyes")
279 AM_CONDITIONAL(HAVE_CLUTTER_GLX, test "x$HAVE_CLUTTER_GLX" = "xyes")
280 AM_CONDITIONAL(HAVE_CLUTTER_X11, test "x$HAVE_CLUTTER_X11" = "xyes")
282 dnl used in the gl/clutteractor example
283 if test "x$BUILD_EXAMPLES" = "xyes"; then
284 PKG_CHECK_MODULES(XCOMPOSITE, xcomposite, HAVE_XCOMPOSITE=yes, HAVE_XCOMPOSITE=no)
285 AC_SUBST(XCOMPOSITE_CFLAGS)
286 AC_SUBST(XCOMPOSITE_LIBS)
288 AM_CONDITIONAL(HAVE_XCOMPOSITE, test "x$HAVE_XCOMPOSITE" = "xyes")
290 dnl graphene-1.0 is optional and used in gltransformation
292 PKG_CHECK_MODULES(GRAPHENE, graphene-1.0 >= 1.0.0, HAVE_GRAPHENE=yes, HAVE_GRAPHENE=no)
293 if test "x$HAVE_GRAPHENE" = "xyes"; then
294 AC_DEFINE(HAVE_GRAPHENE, [1] , [Use graphene])
296 AC_SUBST(HAVE_GRAPHENE)
297 AC_SUBST(GRAPHENE_LIBS)
298 AC_SUBST(GRAPHENE_CFLAGS)
299 AM_CONDITIONAL(HAVE_GRAPHENE, test "x$HAVE_GRAPHENE" = "xyes")
302 dnl sdl is optional and used in examples
304 if test "x$BUILD_EXAMPLES" = "xyes"; then
305 PKG_CHECK_MODULES(SDL, sdl >= 1.2.0, HAVE_SDL=yes, HAVE_SDL=no)
308 AC_SUBST(SDL_CLUTTER)
310 AM_CONDITIONAL(HAVE_SDL, test "x$HAVE_SDL" = "xyes")
313 dnl Needed for GtkBuilder to autoconnect signals
314 PKG_CHECK_MODULES(GMODULE_EXPORT, gmodule-export-2.0, HAVE_GMODULE_EXPORT=yes, HAVE_GMODULE_EXPORT=no)
316 dnl Needed by plugins that use g_module_*() API
317 PKG_CHECK_MODULES(GMODULE_NO_EXPORT, gmodule-no-export-2.0)
319 dnl x11 is optional for librfb
321 PKG_CHECK_MODULES(X11, x11, HAVE_X11=yes, HAVE_X11=no)
325 AM_CONDITIONAL(HAVE_X11, test "x$HAVE_X11" = "xyes")
326 if test "x$HAVE_X11" = "xyes"; then
327 AC_DEFINE(HAVE_X11, 1, [Define if you have X11 library])
330 dnl exif (used on jifmux tests) ****
331 PKG_CHECK_MODULES(EXIF, libexif >= 0.6.16, HAVE_EXIF="yes", HAVE_EXIF="no")
333 AC_SUBST(EXIF_CFLAGS)
334 AM_CONDITIONAL(USE_EXIF, test "x$HAVE_EXIF" = "xyes")
339 dnl set license and copyright notice
341 AC_DEFINE_UNQUOTED(GST_LICENSE, "$GST_LICENSE", [GStreamer license])
342 AC_SUBST(GST_LICENSE)
344 dnl define LIBDIR so we can inform people where we live
345 AS_AC_EXPAND(LIBDIR, $libdir)
346 AC_DEFINE_UNQUOTED(LIBDIR, "$LIBDIR", [library dir])
348 dnl set location of plugin directory
351 dnl set release date/time
352 AG_GST_SET_PACKAGE_RELEASE_DATETIME_WITH_NANO([$PACKAGE_VERSION_NANO],
353 ["${srcdir}/gst-plugins-bad.doap"],
354 [$PACKAGE_VERSION_MAJOR.$PACKAGE_VERSION_MINOR.$PACKAGE_VERSION_MICRO])
356 dnl build static plugins or not
357 AC_MSG_CHECKING([whether to build static plugins or not])
361 [--enable-static-plugins],
362 [build static plugins @<:@default=no@:>@]),
364 [$enableval], [no], [], [yes], [],
365 [AC_MSG_ERROR([bad value "$enableval" for --enable-static-plugins])])],
366 [enable_static_plugins=no])
367 AC_MSG_RESULT([$enable_static_plugins])
368 if test "x$enable_static_plugins" = xyes; then
369 AC_DEFINE(GST_PLUGIN_BUILD_STATIC, 1,
370 [Define if static plugins should be built])
371 GST_PLUGIN_LIBTOOLFLAGS=""
373 GST_PLUGIN_LIBTOOLFLAGS="--tag=disable-static"
375 AC_SUBST(GST_PLUGIN_LIBTOOLFLAGS)
376 AM_CONDITIONAL(GST_PLUGIN_BUILD_STATIC, test "x$enable_static_plugins" = "xyes")
378 # set by AG_GST_PARSE_SUBSYSTEM_DISABLES above
379 dnl make sure it doesn't complain about unused variables if debugging is disabled
381 AG_GST_CHECK_GST_DEBUG_DISABLED([NO_WARNINGS="-Wno-unused"], [NO_WARNINGS=""])
383 dnl define an ERROR_CFLAGS Makefile variable
384 dnl -Waggregate-return - libexif returns aggregates
385 dnl -Wundef - Windows headers check _MSC_VER unconditionally
386 AG_GST_SET_ERROR_CFLAGS($FATAL_WARNINGS, [
387 -Wmissing-declarations -Wmissing-prototypes -Wredundant-decls
388 -Wwrite-strings -Wformat-security -Wold-style-definition
389 -Winit-self -Wmissing-include-dirs -Waddress -Wno-multichar
390 -Wnested-externs $NO_WARNINGS])
392 dnl define an ERROR_CXXFLAGS Makefile variable
393 AG_GST_SET_ERROR_CXXFLAGS($FATAL_WARNINGS, [
394 -Wmissing-declarations -Wredundant-decls
395 -Wwrite-strings -Wformat-nonliteral -Wformat-security
396 -Winit-self -Wmissing-include-dirs -Waddress -Wno-multichar $NO_WARNINGS])
398 dnl define an ERROR_OBJCFLAGS Makefile variable
399 AG_GST_SET_ERROR_OBJCFLAGS($FATAL_WARNINGS, [
400 -Wmissing-declarations -Wredundant-decls
401 -Wwrite-strings -Wformat-nonliteral -Wformat-security
402 -Winit-self -Wmissing-include-dirs -Wno-multichar $NO_WARNINGS])
404 dnl define correct level for debugging messages
405 AG_GST_SET_LEVEL_DEFAULT($GST_GIT)
408 AG_GST_DEFAULT_ELEMENTS
410 dnl *** plug-ins to include ***
411 dnl Non ported plugins (non-dependant, then dependant)
412 dnl Make sure you have a space before and after all plugins
413 GST_PLUGINS_NONPORTED=" cdxaparse \
416 mve mythtv nuvdemux \
423 musepack nas sdl timidity \
424 directdraw acm wininet \
425 xvid lv2 teletextdec sndio osx_video quicktime libvisual"
426 AC_SUBST(GST_PLUGINS_NONPORTED)
428 dnl these are all the gst plug-ins, compilable without additional libs
429 AG_GST_CHECK_PLUGIN(accurip)
430 AG_GST_CHECK_PLUGIN(adpcmdec)
431 AG_GST_CHECK_PLUGIN(adpcmenc)
432 AG_GST_CHECK_PLUGIN(aiff)
433 AG_GST_CHECK_PLUGIN(asfmux)
434 AG_GST_CHECK_PLUGIN(audiofxbad)
435 AG_GST_CHECK_PLUGIN(audiomixer)
436 AG_GST_CHECK_PLUGIN(compositor)
437 AG_GST_CHECK_PLUGIN(audiovisualizers)
438 AG_GST_CHECK_PLUGIN(autoconvert)
439 AG_GST_CHECK_PLUGIN(bayer)
440 AG_GST_CHECK_PLUGIN(camerabin2)
441 AG_GST_CHECK_PLUGIN(cdxaparse)
442 AG_GST_CHECK_PLUGIN(coloreffects)
443 AG_GST_CHECK_PLUGIN(dataurisrc)
444 AG_GST_CHECK_PLUGIN(dccp)
445 AG_GST_CHECK_PLUGIN(debugutils)
446 AG_GST_CHECK_PLUGIN(dvbsuboverlay)
447 AG_GST_CHECK_PLUGIN(dvdspu)
448 AG_GST_CHECK_PLUGIN(faceoverlay)
449 AG_GST_CHECK_PLUGIN(festival)
450 AG_GST_CHECK_PLUGIN(fieldanalysis)
451 AG_GST_CHECK_PLUGIN(freeverb)
452 AG_GST_CHECK_PLUGIN(frei0r)
453 AG_GST_CHECK_PLUGIN(gaudieffects)
454 AG_GST_CHECK_PLUGIN(geometrictransform)
455 AG_GST_CHECK_PLUGIN(gdp)
456 AG_GST_CHECK_PLUGIN(hdvparse)
457 AG_GST_CHECK_PLUGIN(id3tag)
458 AG_GST_CHECK_PLUGIN(inter)
459 AG_GST_CHECK_PLUGIN(interlace)
460 AG_GST_CHECK_PLUGIN(ivfparse)
461 AG_GST_CHECK_PLUGIN(ivtc)
462 AG_GST_CHECK_PLUGIN(jp2kdecimator)
463 AG_GST_CHECK_PLUGIN(jpegformat)
464 AG_GST_CHECK_PLUGIN(librfb)
465 AG_GST_CHECK_PLUGIN(liveadder)
466 AG_GST_CHECK_PLUGIN(midi)
467 AG_GST_CHECK_PLUGIN(mpegdemux)
468 AG_GST_CHECK_PLUGIN(mpegtsdemux)
469 AG_GST_CHECK_PLUGIN(mpegtsmux)
470 AG_GST_CHECK_PLUGIN(mpegpsmux)
471 AG_GST_CHECK_PLUGIN(mve)
472 AG_GST_CHECK_PLUGIN(mxf)
473 AG_GST_CHECK_PLUGIN(nuvdemux)
474 AG_GST_CHECK_PLUGIN(patchdetect)
475 AG_GST_CHECK_PLUGIN(pcapparse)
476 AG_GST_CHECK_PLUGIN(pnm)
477 AG_GST_CHECK_PLUGIN(rawparse)
478 AG_GST_CHECK_PLUGIN(real)
479 AG_GST_CHECK_PLUGIN(removesilence)
480 AG_GST_CHECK_PLUGIN(rtp)
481 AG_GST_CHECK_PLUGIN(sdi)
482 AG_GST_CHECK_PLUGIN(sdp)
483 AG_GST_CHECK_PLUGIN(segmentclip)
484 AG_GST_CHECK_PLUGIN(siren)
485 AG_GST_CHECK_PLUGIN(smooth)
486 AG_GST_CHECK_PLUGIN(speed)
487 AG_GST_CHECK_PLUGIN(subenc)
488 AG_GST_CHECK_PLUGIN(stereo)
489 AG_GST_CHECK_PLUGIN(tta)
490 AG_GST_CHECK_PLUGIN(videofilters)
491 AG_GST_CHECK_PLUGIN(videomeasure)
492 AG_GST_CHECK_PLUGIN(videoparsers)
493 AG_GST_CHECK_PLUGIN(videosignal)
494 AG_GST_CHECK_PLUGIN(vmnc)
495 AG_GST_CHECK_PLUGIN(y4m)
496 AG_GST_CHECK_PLUGIN(yadif)
498 dnl *** plug-ins to exclude ***
500 dnl real plugin only works on i386 and x86_64 for the time being.
501 if test "x$HAVE_CPU_I386" != "xyes" && test "x$HAVE_CPU_X86_64" != "xyes"; then
502 AC_MSG_WARN([Not building real plugin, only works on 32bit and 64bit x86 platforms])
503 AG_GST_DISABLE_PLUGIN(real)
506 AC_CHECK_HEADER(AVFoundation/AVFoundation.h, HAVE_AVFOUNDATION="yes", HAVE_AVFOUNDATION="no", [-])
507 AC_CHECK_HEADER(MobileCoreServices/MobileCoreServices.h, HAVE_IOS="yes", HAVE_IOS="no", [-])
508 AC_CHECK_HEADER(VideoToolbox/VideoToolbox.h, HAVE_VIDEOTOOLBOX="yes", HAVE_VIDEOTOOLBOX="no", [-])
510 if test "x$HAVE_VIDEOTOOLBOX" = "xyes"; then
512 LIBS="$LIBS -framework VideoToolbox"
513 AC_CHECK_FUNC(VTCompressionSessionPrepareToEncodeFrames, [
514 AC_DEFINE(HAVE_VIDEOTOOLBOX_10_9_6, 1, [Define if building with VideoToolbox >= 10.9.6])
520 AM_CONDITIONAL(HAVE_AVFOUNDATION, test "x$HAVE_AVFOUNDATION" = "xyes")
521 if test "x$HAVE_AVFOUNDATION" = "xyes"; then
522 AC_DEFINE(HAVE_AVFOUNDATION, 1, [Define if building with AVFoundation])
525 AM_CONDITIONAL(HAVE_IOS, test "x$HAVE_IOS" = "xyes")
526 if test "x$HAVE_IOS" = "xyes"; then
527 AC_DEFINE(HAVE_IOS, 1, [Define if building for Apple iOS])
530 AM_CONDITIONAL(HAVE_VIDEOTOOLBOX, test "x$HAVE_VIDEOTOOLBOX" = "xyes")
531 if test "x$HAVE_VIDEOTOOLBOX" = "xyes"; then
532 AC_DEFINE(HAVE_VIDEOTOOLBOX, 1, [Define if building with VideoToolbox])
535 dnl disable gst plugins we might not be able to build on this
536 dnl platform: (ugly but minimally invasive)
537 dnl FIXME: maybe move to sys, or make work with winsock2
538 AC_CHECK_HEADERS([sys/socket.h], HAVE_SYS_SOCKET_H=yes)
539 AC_CHECK_HEADERS([winsock2.h], HAVE_WINSOCK2_H=yes)
541 if test "x$HAVE_WINSOCK2_H" = "xyes"; then
542 WINSOCK2_LIBS="-lws2_32"
543 AC_SUBST(WINSOCK2_LIBS)
546 if test "x$HAVE_PTHREAD_H" = "xyes"; then
547 DCCP_LIBS="$DCCP_LIBS $PTHREAD_LIBS"
550 AG_GST_DISABLE_PLUGIN(dccp)
554 AC_ARG_ENABLE([opengl],
555 [ --enable-opengl Enable Desktop OpenGL support @<:@default=auto@:>@],
556 [case "${enableval}" in
559 auto) NEED_GL=auto ;;
560 *) AC_MSG_ERROR([bad value ${enableval} for --enable-opengl]) ;;
561 esac],[NEED_GL=auto])
563 AC_ARG_WITH([opengl-module-name],
564 AS_HELP_STRING([--with-opengl-module-name],[library module name for OpenGL (default: libGL)]))
565 if test x$with_opengl_module_name != x; then
566 AC_DEFINE_UNQUOTED(GST_GL_LIBGL_MODULE_NAME, "$with_opengl_module_name", [OpenGL module name])
569 AC_ARG_ENABLE([gles2],
570 [ --enable-gles2 Enable OpenGL|ES 2.0 support @<:@default=auto@:>@],
571 [case "${enableval}" in
572 yes) NEED_GLES2=yes ;;
574 auto) NEED_GLES2=auto ;;
575 *) AC_MSG_ERROR([bad value ${enableval} for --enable-gles2]) ;;
576 esac],[NEED_GLES2=auto])
578 AC_ARG_WITH([gles2-module-name],
579 AS_HELP_STRING([--with-gles2-module-name],[library module name for GLES2 (default: libGLESv2)]))
580 if test x$with_gles2_module_name != x; then
581 AC_DEFINE_UNQUOTED(GST_GL_LIBGLESV2_MODULE_NAME, "$with_gles2_module_name", [GLES2 module name])
585 [ --enable-egl Enable EGL support @<:@default=auto@:>@],
586 [case "${enableval}" in
589 auto) NEED_EGL=auto ;;
590 *) AC_MSG_ERROR([bad value ${enableval} for --enable-egl]) ;;
591 esac],[NEED_EGL=auto])
593 AC_ARG_WITH([egl-module-name],
594 AS_HELP_STRING([--with-egl-module-name],[library module name for EGL (default: libEGL)]))
595 if test x$with_egl_module_name != x; then
596 AC_DEFINE_UNQUOTED(GST_GL_LIBEGL_MODULE_NAME, "$with_egl_module_name", [EGL module name])
600 [ --enable-wgl Enable WGL support @<:@default=auto@:>@],
601 [case "${enableval}" in
604 auto) NEED_WGL=auto ;;
605 *) AC_MSG_ERROR([bad value ${enableval} for --enable-wgl]) ;;
606 esac],[NEED_WGL=auto])
609 [ --enable-glx Enable GLX support @<:@default=auto@:>@],
610 [case "${enableval}" in
613 auto) NEED_GLX=auto ;;
614 *) AC_MSG_ERROR([bad value ${enableval} for --enable-glx]) ;;
615 esac],[NEED_GLX=auto])
617 AC_ARG_ENABLE([cocoa],
618 [ --enable-cocoa Enable Cocoa support (using GNUstep on non OS X platforms) @<:@default=auto@:>@],
619 [case "${enableval}" in
620 yes) NEED_COCOA=yes ;;
622 auto) NEED_COCOA=auto ;;
623 *) AC_MSG_ERROR([bad value ${enableval} for --enable-cocoa]) ;;
624 esac],[NEED_COCOA=auto])
627 [ --enable-x11 Enable x11 support @<:@default=auto@:>@],
628 [case "${enableval}" in
631 auto) NEED_X11=auto ;;
632 *) AC_MSG_ERROR([bad value ${enableval} for --enable-x11]) ;;
633 esac],[NEED_X11=auto])
635 AC_ARG_ENABLE([wayland],
636 [ --enable-wayland Enable Wayland support (requires EGL) @<:@default=auto@:>@],
637 [case "${enableval}" in
638 yes) NEED_WAYLAND_EGL=yes ;;
639 no) NEED_WAYLAND_EGL=no ;;
640 auto) NEED_WAYLAND_EGL=auto ;;
641 *) AC_MSG_ERROR([bad value ${enableval} for --enable-wayland]) ;;
642 esac],[NEED_WAYLAND_EGL=auto])
644 AC_ARG_ENABLE([dispmanx],
645 [ --enable-dispmanx Enable Dispmanx support (requires EGL) @<:@default=auto@:>@],
646 [case "${enableval}" in
647 yes) NEED_DISPMANX=yes ;;
648 no) NEED_DISPMANX=no ;;
649 auto) NEED_DISPMANX=auto ;;
650 *) AC_MSG_ERROR([bad value ${enableval} for --enable-dispmanx]) ;;
651 esac],[NEED_DISPMANX=auto])
654 save_CPPFLAGS="$CPPFLAGS"
660 HAVE_GNUSTEP_COCOA=no
668 AG_GST_CHECK_LIBHEADER(GL, opengl32, glTexImage2D,, GL/gl.h)
669 AG_GST_CHECK_LIBHEADER(GLU, glu32, gluSphere,, GL/glu.h)
670 AC_CHECK_HEADER(GL/wglext.h, HAVE_WGLEXT="yes", HAVE_WGLEXT="no", [#include <GL/gl.h>])
671 if test "x$HAVE_WGLEXT" = "xyes"; then
678 if test "x$NEED_GL" != "xno"; then
679 AG_GST_CHECK_LIBHEADER(GL, GL, glTexImage2D,, GL/gl.h)
680 AG_GST_CHECK_LIBHEADER(GLU, GLU, gluSphere,, GL/glu.h)
682 if test "x$NEED_GLES2" != "xno"; then
683 AG_GST_CHECK_LIBHEADER(GLES2, GLESv2, glTexImage2D,, GLES2/gl2.h)
685 if test "x$NEED_EGL" != "xno"; then
686 AG_GST_CHECK_LIBHEADER(EGL, EGL, eglGetError,, EGL/egl.h)
692 dnl FIXME: Mali EGL depends on GLESv1 or GLESv2
693 AC_CHECK_HEADER([EGL/fbdev_window.h],
696 AC_CHECK_LIB([Mali], [mali_image_create],
699 AC_CHECK_LIB([GLESv2], [glEnable],
701 AC_CHECK_HEADER([GLES2/gl2.h],
703 AC_CHECK_LIB([EGL], [eglGetProcAddress],
705 AC_CHECK_HEADER([EGL/egl.h],
709 EGL_LIBS="-lMali -lUMP"
711 AC_DEFINE(USE_EGL_MALI_FB, [1], [Use Mali FB EGL platform])
719 dnl FIXME: EGL of RPi depends on GLESv1 or GLESv2
720 dnl FIXME: GLESv2 of RPi depends on EGL... WTF!
721 LIBS="$LIBS -lvcos -lvchiq_arm"
722 AC_CHECK_LIB([bcm_host], [bcm_host_init],
724 LIBS="$LIBS -lbcm_host"
725 AC_CHECK_HEADER(bcm_host.h,
727 LIBS="$LIBS -lGLESv2"
728 AC_CHECK_LIB([EGL], [eglGetProcAddress],
731 AC_CHECK_HEADER([EGL/egl.h],
733 AC_CHECK_LIB([GLESv2], [glEnable],
735 AC_CHECK_HEADER([GLES2/gl2.h],
740 EGL_LIBS="-lbcm_host -lvcos -lvchiq_arm"
742 AC_DEFINE(USE_EGL_RPI, [1], [Use RPi platform])
753 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)
760 AC_PATH_PROG([GNUSTEP_CONFIG],[gnustep-config])
761 if test "x$GNUSTEP_CONFIG" != "x"; then
762 GNUSTEP_HOST="`$GNUSTEP_CONFIG --variable=GNUSTEP_HOST`"
765 case $GNUSTEP_HOST in
767 HAVE_GNUSTEP_COCOA=yes
772 HAVE_GNUSTEP_COCOA=yes
779 AC_MSG_CHECKING([for GNUstep])
780 if test "x$HAVE_GNUSTEP_COCOA" = "xyes" ; then
786 CPPFLAGS="$save_CPPFLAGS"
800 dnl Check for what the user asked for and what we could find
801 if test "x$HAVE_EGL" = "xno"; then
802 if test "x$NEED_EGL" = "xyes"; then
803 AC_MSG_ERROR([Could not find the required EGL libraries])
807 if test "x$HAVE_GL" = "xno"; then
808 if test "x$NEED_GL" = "xyes"; then
809 AC_MSG_ERROR([Could not find the required OpenGL libraries])
813 if test "x$HAVE_GLES2" = "xno"; then
814 if test "x$NEED_GLES2" = "xyes"; then
815 AC_MSG_ERROR([Could not find the required OpenGL|ES 2.0 libraries])
819 dnl X, GLX and OpenGL
820 if test "x$HAVE_X" = "xno"; then
821 if test "x$NEED_GLX" = "xyes"; then
822 AC_MSG_ERROR([Building the GLX backend without X11 is unsupported])
824 if test "x$NEED_X11" = "xyes"; then
825 AC_MSG_ERROR([Could not find X11 development libraries])
828 if test "x$NEED_GL" != "xno"; then
829 if test "x$HAVE_GL" = "xno"; then
830 if test "x$NEED_GLX" = "xyes"; then
831 AC_MSG_ERROR([Building the GLX backend without the OpenGL backend is unsupported])
834 if test "x$HAVE_GLU" = "xno"; then
835 if test "x$NEED_GL" = "xyes"; then
836 AC_MSG_ERROR([GLU is required with OpenGL support])
838 AC_MSG_WARN([GLU is required with OpenGL support])
840 else dnl HAVE_GLU=yes
842 if test "x$NEED_GLX" != "xno"; then
850 dnl check if we can include both GL and GLES2 at the same time
851 if test "x$HAVE_GL" = "xyes" -a "x$HAVE_GLU" = "xyes" -a "x$HAVE_GLES2" = "xyes"; then
853 #ifndef GL_GLEXT_PROTOTYPES
854 #define GL_GLEXT_PROTOTYPES 1
857 # include <OpenGLES/ES2/gl.h>
858 # include <OpenGLES/ES2/glext.h>
860 # include <GLES2/gl2.h>
861 # include <GLES2/gl2ext.h>
864 # include <OpenGL/OpenGL.h>
865 # include <OpenGL/gl.h>
866 # include <OpenGL/glu.h>
870 # if __WIN32__ || _WIN32
871 # include <GL/glext.h>
875 AC_MSG_CHECKING([whether it is possible to include both GL and GLES2 headers])
876 save_CPPFLAGS="$CPPFLAGS"
877 CPPFLAGS="$CPPFLAGS $ERROR_CFLAGS"
878 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[$GL_INCLUDES]], [[
879 #if !defined(GL_FALSE)
880 #error Failed to include GL headers
882 ]])],[ AC_MSG_RESULT(yes)
884 if test "x$NEED_GLES2" = "xyes"; then
885 if test "x$NEED_OPENGL" = "xyes"; then
886 AC_MSG_ERROR([Cannot seem to include both GL and GLES2 headers. Try disabling one API])
888 AC_MSG_WARN([Disabling Desktop GL support])
891 AC_MSG_WARN([Disabling GL|ES 2.0 support])
895 CPPFLAGS="$save_CPPFLAGS"
898 #dnl Check for OpenGL, GLU
902 if test "x$NEED_WGL" = "xyes"; then
903 AC_MSG_ERROR([WGL is not available on Android])
905 if test "x$NEED_GLX" = "xyes"; then
906 AC_MSG_ERROR([GLX is not available on Android])
908 if test "x$NEED_GL" = "xyes"; then
909 AC_MSG_ERROR([GL is not available on Android])
911 if test "x$NEED_X11" = "xyes"; then
912 AC_MSG_ERROR([X11 is not available on Android])
914 if test "x$NEED_COCOA" = "xyes"; then
915 AC_MSG_ERROR([Cocoa is not available on Android])
919 if test "x$HAVE_GLES2" = "xyes"; then
920 if test "x$NEED_GLES2" != "xno"; then
921 GL_LIBS="$GL_LIBS -lGLESv2"
927 if test "x$HAVE_EGL" = "xyes"; then
928 if test "x$NEED_EGL" != "xno"; then
929 GL_LIBS="$GL_LIBS -lEGL"
934 if test "x$USE_EGL" != "xyes"; then
935 AC_MSG_ERROR([Need EGL on Android])
938 if test "x$USE_GLES2" != "xyes"; then
939 AC_MSG_ERROR([Need OpenGL|ES 2.0 on Android])
942 HAVE_WINDOW_ANDROID=yes
944 *-linux* | *-cygwin* | *-solaris* | *-netbsd* | *-freebsd* | *-openbsd* | *-kfreebsd* | *-dragonflybsd* | *-gnu* )
945 if test "x$NEED_WGL" = "xyes"; then
946 AC_MSG_ERROR([WGL is not available on unix])
949 if test "x$HAVE_X" = "xno"; then
950 if test "x$HAVE_WAYLAND_EGL" = "xno"; then
951 AC_MSG_WARN([X or Wayland is required for OpenGL support])
955 dnl check Desktop OpenGL
956 if test "x$HAVE_GL" = "xyes"; then
957 if test "x$NEED_GL" != "xno"; then
958 GL_LIBS="$GL_LIBS -lGL"
960 if test "x$HAVE_GLU" = "xyes"; then
961 GL_LIBS="$GL_LIBS -lGLU"
966 if test "x$HAVE_GLES2" = "xyes"; then
967 if test "x$NEED_GLES2" != "xno"; then
968 GL_LIBS="$GL_LIBS -lGLESv2"
973 if test "x$HAVE_X" = "xyes" -a "x$HAVE_EGL_RPI" = "xno"; then
974 if test "x$NEED_X11" != "xno"; then
975 GL_LIBS="$GL_LIBS $X_LIBS"
976 GL_CFLAGS="$GL_CFLAGS $X_CFLAGS"
981 if test "x$HAVE_WAYLAND_EGL" = "xyes"; then
982 if test "x$NEED_EGL" = "xno" -o "x$HAVE_EGL" = "xno"; then
983 AC_MSG_WARN([EGL is required by the Wayland backend for OpenGL support])
985 if test "x$NEED_WAYLAND_EGL" != "xno"; then
986 HAVE_WINDOW_WAYLAND=yes
987 GL_LIBS="$GL_LIBS $WAYLAND_EGL_LIBS"
988 GL_CFLAGS="$GL_CFLAGS $WAYLAND_EGL_CFLAGS"
993 if test "x$HAVE_EGL_RPI" = "xyes"; then
994 if test "x$NEED_DISPMANX" != "xno"; then
995 HAVE_WINDOW_DISPMANX=yes
1001 if test "x$HAVE_EGL" = "xno"; then
1002 if test "x$HAVE_GL" = "xno"; then
1003 AC_MSG_WARN([Building requires either EGL or GLX for OpenGL support])
1006 if test "x$NEED_EGL" != "xno"; then
1007 if test "x$HAVE_WINDOW_WAYLAND" = "xyes" -o "x$HAVE_WINDOW_X11" = "xyes" -o "x$HAVE_WINDOW_DISPMANX" = "xyes"; then
1008 GL_LIBS="$GL_LIBS -lEGL $EGL_LIBS"
1009 GL_CFLAGS="$GL_CFLAGS $EGL_CFLAGS"
1015 dnl GNUstep provides the Cocoa API on unix
1016 if test "x$NEED_COCOA" != "xno"; then
1017 if test "x$HAVE_GNUSTEP_COCOA" = "xyes" ; then
1018 GNUSTEP_OBJCFLAGS="`$GNUSTEP_CONFIG --objc-flags`"
1019 GNUSTEP_LIBS="`$GNUSTEP_CONFIG --gui-libs`"
1020 GL_LIBS="$GL_LIBS $GNUSTEP_LIBS -lgnustep-gui -lgnustep-base"
1021 GL_OBJCFLAGS="$GL_OBJCFLAGS $GNUSTEP_OBJCFLAGS"
1024 HAVE_WINDOW_COCOA=yes
1029 if test "x$HAVE_IOS" = "xyes"; then
1030 if test "x$NEED_WGL" = "xyes"; then
1031 AC_MSG_ERROR([WGL is not available on iOS])
1033 if test "x$NEED_GLX" = "xyes"; then
1034 AC_MSG_ERROR([GLX is not available on iOS])
1036 if test "x$NEED_GL" = "xyes"; then
1037 AC_MSG_ERROR([GL is not available on iOS])
1039 if test "x$NEED_X11" = "xyes"; then
1040 AC_MSG_ERROR([X11 is not available on iOS])
1042 if test "x$NEED_COCOA" = "xyes"; then
1043 AC_MSG_ERROR([Cocoa is not available on iOS])
1045 if test "x$NEED_EGL" = "xyes"; then
1046 AC_MSG_ERROR([EGL is not available on iOS])
1049 GL_LIBS="$LIBS -framework OpenGLES -framework QuartzCore -framework UIKit -framework CoreGraphics -framework CoreFoundation -framework Foundation"
1050 GL_CFLAGS="$GL_CFLAGS"
1053 HAVE_WINDOW_EAGL=yes
1055 ac_cv_type_GLsizeiptr=yes
1056 ac_cv_type_GLintptr=yes
1057 ac_cv_type_GLchar=yes
1059 dnl Only osx supports cocoa.
1060 if test "x$NEED_WGL" = "xyes"; then
1061 AC_MSG_ERROR([WGL is not available on Mac OS X])
1063 if test "x$NEED_EGL" = "xyes"; then
1064 AC_MSG_ERROR([EGL is not available on Mac OS X])
1066 if test "x$NEED_GLES2" = "xyes"; then
1067 AC_MSG_ERROR([OpenGL|ES 2.0 is not supported on your platform yet])
1070 if test "x$NEED_COCOA" != "xno"; then
1071 GL_LIBS="$LIBS -framework OpenGL -framework Cocoa"
1072 GL_CFLAGS="$GL_CFLAGS"
1074 HAVE_WINDOW_COCOA=yes
1078 if test "x$USE_GLX" = "xyes"; then
1079 if test "x$HAVE_X" = "xyes"; then
1080 if test "x$NEED_X11" != "xno"; then
1081 GL_LIBS="$GL_LIBS $X_LIBS"
1082 GL_CFLAGS="$GL_CFLAGS $X_CFLAGS"
1087 if test "x$HAVE_GL" = "xyes"; then
1088 if test "x$NEED_GL" != "xno"; then
1089 GL_LIBS="$GL_LIBS -lGL"
1091 if test "x$HAVE_GLU" = "xyes"; then
1092 GL_LIBS="$GL_LIBS -lGLU"
1100 if test "x$NEED_GLX" = "xyes"; then
1101 AC_MSG_ERROR([GLX is not available on Windows])
1103 if test "x$NEED_GLES2" = "xyes"; then
1104 AC_MSG_ERROR([OpenGL|ES 2.0 is not supported on your platform yet])
1107 if test "x$HAVE_GL" = "xyes"; then
1108 if test "$NEED_GL" != "xno"; then
1109 if test "x$HAVE_WGL" = "xyes"; then
1110 if test "$NEED_WGL" != "xno"; then
1111 GL_LIBS="$GL_LIBS -lgdi32 -lopengl32 -lglu32"
1112 HAVE_WINDOW_WIN32=yes
1120 dnl GNUstep provides the Cocoa API on win32
1121 if test "x$HAVE_GNUSTEP_COCOA" = "xyes" ; then
1122 GNUSTEP_CFLAGS="`$GNUSTEP_CONFIG --objc-flags`"
1123 GNUSTEP_LIBS="`$GNUSTEP_CONFIG --gui-libs`"
1124 GL_LIBS="$GL_LIBS $GNUSTEP_LIBS -lgnustep-gui -lgnustep-base"
1125 GL_OBJCFLAGS="$OBJCFLAGS $GNUSTEP_CFLAGS"
1128 HAVE_WINDOW_COCOA=yes
1132 AC_MSG_WARN([Don't know how to check for OpenGL on your platform.])
1143 GST_GL_HAVE_OPENGL=0
1147 if test "x$USE_OPENGL" = "xyes"; then
1148 GL_APIS="gl $GL_APIS"
1149 GST_GL_HAVE_OPENGL=1
1151 if test "x$USE_GLES2" = "xyes"; then
1152 GL_APIS="gles2 $GL_APIS"
1156 GL_CONFIG_DEFINES="$GL_CONFIG_DEFINES
1157 #define GST_GL_HAVE_OPENGL $GST_GL_HAVE_OPENGL
1158 #define GST_GL_HAVE_GLES2 $GST_GL_HAVE_GLES2
1159 #define GST_GL_HAVE_GLES3 $GST_GL_HAVE_GLES3
1164 GST_GL_HAVE_WINDOW_X11=0
1165 GST_GL_HAVE_WINDOW_COCOA=0
1166 GST_GL_HAVE_WINDOW_WIN32=0
1167 GST_GL_HAVE_WINDOW_WAYLAND=0
1168 GST_GL_HAVE_WINDOW_ANDROID=0
1169 GST_GL_HAVE_WINDOW_DISPMANX=0
1170 GST_GL_HAVE_WINDOW_EAGL=0
1172 if test "x$HAVE_WINDOW_X11" = "xyes"; then
1173 GL_WINDOWS="x11 $GL_WINDOWS"
1174 GST_GL_HAVE_WINDOW_X11=1
1176 if test "x$HAVE_WINDOW_COCOA" = "xyes"; then
1177 GL_WINDOWS="cocoa $GL_WINDOWS"
1178 GST_GL_HAVE_WINDOW_COCOA=1
1180 if test "x$HAVE_WINDOW_WIN32" = "xyes"; then
1181 GL_WINDOWS="win32 $GL_WINDOWS"
1182 GST_GL_HAVE_WINDOW_WIN32=1
1184 if test "x$HAVE_WINDOW_WAYLAND" = "xyes"; then
1185 GL_WINDOWS="wayland $GL_WINDOWS"
1186 GST_GL_HAVE_WINDOW_WAYLAND=1
1188 if test "x$HAVE_WINDOW_ANDROID" = "xyes"; then
1189 GL_WINDOWS="android $GL_WINDOWS"
1190 GST_GL_HAVE_WINDOW_ANDROID=1
1192 if test "x$HAVE_WINDOW_DISPMANX" = "xyes"; then
1193 GL_WINDOWS="dispmanx $GL_WINDOWS"
1194 GST_GL_HAVE_WINDOW_DISPMANX=1
1196 if test "x$HAVE_WINDOW_EAGL" = "xyes"; then
1197 GL_WINDOWS="eagl $GL_WINDOWS"
1198 GST_GL_HAVE_WINDOW_EAGL=1
1201 GL_CONFIG_DEFINES="$GL_CONFIG_DEFINES
1202 #define GST_GL_HAVE_WINDOW_X11 $GST_GL_HAVE_WINDOW_X11
1203 #define GST_GL_HAVE_WINDOW_COCOA $GST_GL_HAVE_WINDOW_COCOA
1204 #define GST_GL_HAVE_WINDOW_WIN32 $GST_GL_HAVE_WINDOW_WIN32
1205 #define GST_GL_HAVE_WINDOW_WAYLAND $GST_GL_HAVE_WINDOW_WAYLAND
1206 #define GST_GL_HAVE_WINDOW_ANDROID $GST_GL_HAVE_WINDOW_ANDROID
1207 #define GST_GL_HAVE_WINDOW_DISPMANX $GST_GL_HAVE_WINDOW_DISPMANX
1208 #define GST_GL_HAVE_WINDOW_EAGL $GST_GL_HAVE_WINDOW_EAGL
1213 GST_GL_HAVE_PLATFORM_EGL=0
1214 GST_GL_HAVE_PLATFORM_GLX=0
1215 GST_GL_HAVE_PLATFORM_WGL=0
1216 GST_GL_HAVE_PLATFORM_CGL=0
1217 GST_GL_HAVE_PLATFORM_EAGL=0
1219 if test "x$USE_EGL" = "xyes"; then
1220 GL_PLATFORMS="egl $GL_PLATFORMS"
1221 GST_GL_HAVE_PLATFORM_EGL=1
1223 if test "x$USE_GLX" = "xyes"; then
1224 GL_PLATFORMS="glx $GL_PLATFORMS"
1225 GST_GL_HAVE_PLATFORM_GLX=1
1227 if test "x$USE_WGL" = "xyes"; then
1228 GL_PLATFORMS="wgl $GL_PLATFORMS"
1229 GST_GL_HAVE_PLATFORM_WGL=1
1231 if test "x$USE_COCOA" = "xyes"; then
1232 GL_PLATFORMS="cgl $GL_PLATFORMS"
1233 GST_GL_HAVE_PLATFORM_CGL=1
1235 if test "x$USE_EAGL" = "xyes"; then
1236 GL_PLATFORMS="eagl $GL_PLATFORMS"
1237 GST_GL_HAVE_PLATFORM_EAGL=1
1240 GL_CONFIG_DEFINES="$GL_CONFIG_DEFINES
1241 #define GST_GL_HAVE_PLATFORM_EGL $GST_GL_HAVE_PLATFORM_EGL
1242 #define GST_GL_HAVE_PLATFORM_GLX $GST_GL_HAVE_PLATFORM_GLX
1243 #define GST_GL_HAVE_PLATFORM_WGL $GST_GL_HAVE_PLATFORM_WGL
1244 #define GST_GL_HAVE_PLATFORM_CGL $GST_GL_HAVE_PLATFORM_CGL
1245 #define GST_GL_HAVE_PLATFORM_EAGL $GST_GL_HAVE_PLATFORM_EAGL
1248 dnl Check for no platforms/window systems
1249 if test "x$GL_APIS" = "x"; then
1250 AC_MSG_WARN([Either OpenGL or OpenGL|ES is required for OpenGL support])
1252 if test "x$GL_PLATFORMS" = "x"; then
1253 AC_MSG_WARN([Could not find any OpenGL platforms to use such as CGL, WGL or GLX])
1255 if test "x$GL_WINDOWS" = "x"; then
1256 AC_MSG_WARN([Could not find any window systems to use such as Cocoa, Win32API or X11])
1259 if test "x$GL_APIS" = "x" -o "x$GL_PLATFORMS" = "x" -o "x$GL_WINDOWS" = "x"; then
1274 HAVE_WINDOW_WIN32=no
1275 HAVE_WINDOW_DISPMANX=no
1276 HAVE_WINDOW_WAYLAND=no
1277 HAVE_WINDOW_ANDROID=no
1278 HAVE_WINDOW_COCOA=no
1284 AC_SUBST(GL_OBJCFLAGS)
1285 AC_SUBST(USE_OPENGL)
1288 AM_CONDITIONAL(HAVE_WINDOW_X11, test "x$HAVE_WINDOW_X11" = "xyes")
1289 AM_CONDITIONAL(HAVE_WINDOW_COCOA, test "x$HAVE_WINDOW_COCOA" = "xyes")
1290 AM_CONDITIONAL(HAVE_WINDOW_WIN32, test "x$HAVE_WINDOW_WIN32" = "xyes")
1291 AM_CONDITIONAL(HAVE_WINDOW_DISPMANX, test "x$HAVE_WINDOW_DISPMANX" = "xyes")
1292 AM_CONDITIONAL(HAVE_WINDOW_WAYLAND, test "x$HAVE_WINDOW_WAYLAND" = "xyes")
1293 AM_CONDITIONAL(HAVE_WINDOW_ANDROID, test "x$HAVE_WINDOW_ANDROID" = "xyes")
1294 AM_CONDITIONAL(HAVE_WINDOW_EAGL, test "x$HAVE_WINDOW_EAGL" = "xyes")
1296 AM_CONDITIONAL(USE_OPENGL, test "x$USE_OPENGL" = "xyes")
1297 AM_CONDITIONAL(USE_GLES2, test "x$USE_GLES2" = "xyes")
1298 AM_CONDITIONAL(USE_GLX, test "x$USE_GLX" = "xyes")
1299 AM_CONDITIONAL(USE_EGL, test "x$USE_EGL" = "xyes")
1300 AM_CONDITIONAL(USE_WGL, test "x$USE_WGL" = "xyes")
1301 AM_CONDITIONAL(USE_COCOA, test "x$USE_COCOA" = "xyes")
1302 AM_CONDITIONAL(USE_EGL_MALI, test "x$USE_EGL_MALI" = "xyes")
1303 AM_CONDITIONAL(USE_EGL_RPI, test "x$USE_EGL_RPI" = "xyes")
1304 AM_CONDITIONAL(USE_EAGL, test "x$USE_EAGL" = "xyes")
1306 AM_CONDITIONAL(HAVE_GST_GL, test "x$USE_OPENGL" = "xyes" -o "x$USE_GLES2" = "xyes")
1308 dnl Check for some types that are not always present
1310 if test "x$USE_GLES2" = "xyes"; then
1311 GL_INCLUDES="$GL_INCLUDES
1312 #ifndef GL_GLEXT_PROTOTYPES
1313 #define GL_GLEXT_PROTOTYPES 1
1316 # include <OpenGLES/ES2/gl.h>
1317 # include <OpenGLES/ES2/glext.h>
1319 # include <GLES2/gl2.h>
1320 # include <GLES2/gl2ext.h>
1325 if test "x$USE_OPENGL" = "xyes"; then
1326 GL_INCLUDES="$GL_INCLUDES
1328 # include <OpenGL/OpenGL.h>
1329 # include <OpenGL/gl.h>
1330 # include <OpenGL/glu.h>
1333 # include <GL/glu.h>
1334 # if __WIN32__ || _WIN32
1335 # include <GL/glext.h>
1341 GST_GL_HAVE_GLEGLIMAGEOES=0
1342 GST_GL_HAVE_GLCHAR=0
1343 GST_GL_HAVE_GLSIZEIPTR=0
1344 GST_GL_HAVE_GLINTPTR=0
1347 CFLAGS="$GL_CFLAGS $CFLAGS"
1349 AC_CHECK_TYPES(GLeglImageOES, [], [], [[$GL_INCLUDES]])
1350 if test "x$ac_cv_type_GLeglImageOES" = "xyes"; then
1351 GST_GL_HAVE_GLEGLIMAGEOES=1
1354 AC_CHECK_TYPES(GLchar, [], [], [[$GL_INCLUDES]])
1355 if test "x$ac_cv_type_GLchar" = "xyes"; then
1356 GST_GL_HAVE_GLCHAR=1
1359 AC_CHECK_TYPES(GLsizeiptr, [], [], [[$GL_INCLUDES]])
1360 if test "x$ac_cv_type_GLsizeiptr" = "xyes"; then
1361 GST_GL_HAVE_GLSIZEIPTR=1
1364 AC_CHECK_TYPES(GLintptr, [], [], [[$GL_INCLUDES]])
1365 if test "x$ac_cv_type_GLintptr" = "xyes"; then
1366 GST_GL_HAVE_GLINTPTR=1
1371 GL_CONFIG_DEFINES="$GL_CONFIG_DEFINES
1372 #define GST_GL_HAVE_GLEGLIMAGEOES $GST_GL_HAVE_GLEGLIMAGEOES
1373 #define GST_GL_HAVE_GLCHAR $GST_GL_HAVE_GLCHAR
1374 #define GST_GL_HAVE_GLSIZEIPTR $GST_GL_HAVE_GLSIZEIPTR
1375 #define GST_GL_HAVE_GLINTPTR $GST_GL_HAVE_GLINTPTR
1378 AC_CONFIG_COMMANDS([gst-libs/gst/gl/gstglconfig.h], [
1379 outfile=gstglconfig.h-tmp
1380 cat > $outfile <<\_______EOF
1383 * This is a generated file. Please modify `configure.ac'
1386 #ifndef __GST_GL_CONFIG_H__
1387 #define __GST_GL_CONFIG_H__
1389 #include <gst/gst.h>
1395 cat >>$outfile <<_______EOF
1399 cat >>$outfile <<_______EOF
1403 #endif /* __GST_GL_CONFIG_H__ */
1407 if cmp -s $outfile gst-libs/gst/gl/gstglconfig.h; then
1408 AC_MSG_NOTICE([gst-libs/gst/gl/gstglconfig.h is unchanged])
1411 mv $outfile gst-libs/gst/gl/gstglconfig.h
1414 gl_config_defines='$GL_CONFIG_DEFINES'
1417 dnl libpng is optional
1418 PKG_CHECK_MODULES(LIBPNG, libpng >= 1.0, HAVE_PNG=yes, HAVE_PNG=no)
1419 if test "x$HAVE_PNG" = "xyes"; then
1420 AC_DEFINE(HAVE_PNG, [1] , [Use libpng])
1423 AC_SUBST(LIBPNG_LIBS)
1424 AC_SUBST(LIBPNG_CFLAGS)
1425 AM_CONDITIONAL(HAVE_PNG, test "x$HAVE_PNG" = "xyes")
1427 dnl libjpeg is optional
1428 AC_ARG_WITH(jpeg-mmx, [ --with-jpeg-mmx, path to MMX'ified JPEG library])
1430 if test x$with_jpeg_mmx != x; then
1431 LIBS="$LIBS -L$with_jpeg_mmx"
1433 AC_CHECK_LIB(jpeg-mmx, jpeg_set_defaults, HAVE_JPEG="yes", HAVE_JPEG="no")
1434 JPEG_LIBS="$LIBS -ljpeg-mmx"
1436 if test x$HAVE_JPEG != xyes; then
1438 AC_CHECK_LIB(jpeg, jpeg_set_defaults, HAVE_JPEG="yes", HAVE_JPEG="no")
1441 if test x$HAVE_JPEG = xyes; then
1442 AC_DEFINE(HAVE_JPEG, [1], [Use libjpeg])
1444 AC_DEFINE(HAVE_JPEG, [0], [Use libjpeg])
1449 AM_CONDITIONAL(HAVE_JPEG, test "x$HAVE_JPEG" = "xyes")
1452 dnl *** sys plug-ins ***
1455 translit(dnm, m, l) AM_CONDITIONAL(USE_DIRECTSOUND, true)
1456 AG_GST_CHECK_FEATURE(DIRECTSOUND, [DirectSound], directsoundsrc, [
1457 HAVE_DIRECTSOUND="no"
1458 save_CFLAGS="$CFLAGS"
1459 save_LDFLAGS="$LDFLAGS"
1461 CFLAGS="$CFLAGS $DIRECTX_CFLAGS"
1462 LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS"
1463 LIBS="$LIBS -ldsound -ldxerr9 -luser32"
1464 AC_MSG_CHECKING(for DirectSound LDFLAGS)
1465 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
1466 #include <windows.h>
1470 DXGetErrorString9 (0);
1471 DirectSoundCreate(NULL, NULL, NULL);
1473 [HAVE_DIRECTSOUND="yes"],
1474 [HAVE_DIRECTSOUND="no"])
1475 AC_MSG_RESULT($HAVE_DIRECTSOUND)
1477 LDFLAGS=$save_LDFLAGS
1480 if test "x$HAVE_DIRECTSOUND" = "xyes"; then
1481 dnl this is much more than we want
1482 DIRECTSOUND_LIBS="-ldsound -ldxerr9 -luser32"
1483 AC_SUBST(DIRECTX_CFLAGS)
1484 AC_SUBST(DIRECTX_LDFLAGS)
1485 AC_SUBST(DIRECTSOUND_LIBS)
1487 AC_SUBST(HAVE_DIRECTSOUND)
1491 translit(dnm, m, l) AM_CONDITIONAL(USE_WASAPI, true)
1492 AG_GST_CHECK_FEATURE(WASAPI, [WASAPI plug-in], wasapi, [
1494 save_CFLAGS="$CFLAGS"
1495 save_LDFLAGS="$LDFLAGS"
1497 CFLAGS="$CFLAGS $DIRECTX_CFLAGS"
1498 LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS"
1499 LIBS="$LIBS -lole32 -lwinmm -lksuser"
1500 AC_MSG_CHECKING(for WASAPI LDFLAGS)
1501 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
1502 #include <windows.h>
1504 #include <mmsystem.h>
1505 #include <mmdeviceapi.h>
1511 hr = CoInitialize(NULL);
1513 printf("CoInitialize failed: hr = 0x%08x", hr);
1518 // result = do_everything(argc, argv);
1524 [HAVE_WASAPI="yes"],
1526 AC_MSG_RESULT($HAVE_WASAPI)
1528 LDFLAGS=$save_LDFLAGS
1531 if test "x$HAVE_WASAPI" = "xyes"; then
1532 WASAPI_LIBS="-lole32 -lwinmm -lksuser"
1533 AC_SUBST(WASAPI_LIBS)
1535 AC_SUBST(HAVE_WASAPI)
1539 translit(dnm, m, l) AM_CONDITIONAL(USE_DIRECT3D, true)
1540 AG_GST_CHECK_FEATURE(DIRECT3D, [Direct3D plug-in], direct3dsink, [
1542 save_CFLAGS="$CFLAGS"
1543 save_LDFLAGS="$LDFLAGS"
1545 CFLAGS="$CFLAGS $DIRECTX_CFLAGS"
1546 LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS"
1547 LIBS="$LIBS -ld3d9 -lgdi32"
1548 AC_MSG_CHECKING(for Direct3D LDFLAGS)
1549 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
1550 #include <windows.h>
1553 Direct3DCreate9(D3D_SDK_VERSION);
1555 [HAVE_DIRECT3D="yes"],
1556 [HAVE_DIRECT3D="no"])
1557 AC_MSG_RESULT($HAVE_DIRECT3D)
1559 LDFLAGS=$save_LDFLAGS
1562 if test "x$HAVE_DIRECT3D" = "xyes"; then
1563 DIRECT3D_LIBS="-ld3d9 -lgdi32"
1564 AC_SUBST(DIRECT3D_LIBS)
1566 AC_SUBST(HAVE_DIRECT3D)
1570 translit(dnm, m, l) AM_CONDITIONAL(USE_DIRECTDRAW, true)
1571 AG_GST_CHECK_FEATURE(DIRECTDRAW, [DirectDraw plug-in], directdrawsink, [
1572 HAVE_DIRECTDRAW="no"
1573 save_CFLAGS="$CFLAGS"
1574 save_LDFLAGS="$LDFLAGS"
1576 CFLAGS="$CFLAGS $DIRECTX_CFLAGS"
1577 LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS"
1578 LIBS="$LIBS -lddraw -lgdi32"
1579 AC_MSG_CHECKING(for DirectDraw LDFLAGS)
1580 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
1581 #include <windows.h>
1585 DirectDrawCreate(NULL, NULL, NULL);
1587 [HAVE_DIRECTDRAW="yes"],
1588 [HAVE_DIRECTDRAW="no"])
1589 AC_MSG_RESULT($HAVE_DIRECTDRAW)
1591 LDFLAGS=$save_LDFLAGS
1594 if test "x$HAVE_DIRECTDRAW" = "xyes"; then
1595 dnl this is much more than we want
1596 DIRECTDRAW_LIBS="-lddraw -ldxguid -lgdi32"
1597 AC_SUBST(DIRECTX_CFLAGS)
1598 AC_SUBST(DIRECTX_LDFLAGS)
1599 AC_SUBST(DIRECTDRAW_LIBS)
1601 AC_SUBST(HAVE_DIRECTDRAW)
1605 translit(dnm, m, l) AM_CONDITIONAL(USE_WINSCREENCAP, true)
1606 AG_GST_CHECK_FEATURE(WINSCREENCAP, [winscreencap plug-in], winscreencap, [
1607 HAVE_WINSCREENCAP="no"
1608 save_CFLAGS="$CFLAGS"
1609 save_LDFLAGS="$LDFLAGS"
1611 CFLAGS="$CFLAGS $DIRECTX_CFLAGS"
1612 LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS"
1613 LIBS="$LIBS -ld3d9 -lgdi32"
1614 AC_MSG_CHECKING(for Direct3D LDFLAGS)
1615 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
1616 #include <windows.h>
1619 Direct3DCreate9(D3D_SDK_VERSION);
1621 [HAVE_WINSCREENCAP="yes"],
1622 [HAVE_WINSCREENCAP="no"])
1623 AC_MSG_RESULT($HAVE_WINSCREENCAP)
1625 LDFLAGS=$save_LDFLAGS
1628 if test "x$HAVE_WINSCREENCAP" = "xyes"; then
1629 WINSCREENCAP_LIBS="-ld3d9 -lgdi32"
1630 AC_SUBST(WINSCREENCAP_LIBS)
1632 AC_SUBST(HAVE_WINSCREENCAP)
1636 translit(dnm, m, l) AM_CONDITIONAL(USE_WINKS, true)
1637 AG_GST_CHECK_FEATURE(WINKS, [Winks plug-in], winks, [
1639 save_CFLAGS="$CFLAGS"
1640 save_LDFLAGS="$LDFLAGS"
1642 CFLAGS="$CFLAGS $DIRECTX_CFLAGS"
1643 LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS"
1644 LIBS="$LIBS -lole32 -luuid -lstrmiids"
1645 AC_MSG_CHECKING(for Winks LDFLAGS)
1646 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
1647 #include <windows.h>
1652 IGraphBuilder *pGraph = NULL;
1653 HRESULT hr = CoInitialize(NULL);
1654 hr = CoCreateInstance(&CLSID_FilterGraph, NULL, CLSCTX_INPROC_SERVER,
1655 &IID_IGraphBuilder, (void **)&pGraph);
1662 AC_MSG_RESULT($HAVE_WINKS)
1664 LDFLAGS=$save_LDFLAGS
1667 if test "x$HAVE_WINKS" = "xyes"; then
1668 dnl this is much more than we want
1669 WINKS_LIBS="-ldxguid -lole32 -luuid -lstrmiids -lksuser -lsetupapi"
1670 AC_SUBST(DIRECTX_CFLAGS)
1671 AC_SUBST(DIRECTX_LDFLAGS)
1672 AC_SUBST(WINKS_LIBS)
1674 AC_SUBST(HAVE_WINKS)
1677 dnl *** Android Media ***
1678 translit(dnm, m, l) AM_CONDITIONAL(USE_ANDROID_MEDIA, true)
1679 HAVE_ANDROID_MEDIA="no"
1680 AG_GST_CHECK_FEATURE(ANDROID_MEDIA, [Android Media], androidmedia, [
1683 AC_CHECK_HEADER(jni.h, HAVE_ANDROID_MEDIA="yes", HAVE_ANDROID_MEDIA="no")
1686 HAVE_ANDROID_MEDIA="no"
1691 dnl *** AppleMedia (OS X and iOS) ***
1692 translit(dnm, m, l) AM_CONDITIONAL(USE_APPLE_MEDIA, true)
1693 HAVE_APPLE_MEDIA="no"
1694 dnl SystemConfiguration.h is common to OS X and iOS, so we check for that
1695 AG_GST_CHECK_FEATURE(APPLE_MEDIA, [Apple video], applemedia, [
1696 AC_CHECK_HEADER(SystemConfiguration/SystemConfiguration.h, HAVE_APPLE_MEDIA="yes", HAVE_APPLE_MEDIA="no")
1697 dnl OSX 10.7 and earlier lack VideoToolbox/VideoToolbox.h
1698 if test "x$HAVE_IOS" = "xno"; then
1699 AC_CHECK_HEADER(VideoToolbox/VideoToolbox.h,, HAVE_APPLE_MEDIA="no")
1703 dnl in case header SystemConfiguration/SystemConfiguration.h is found on other platforms
1708 HAVE_APPLE_MEDIA="no"
1713 translit(dnm, m, l) AM_CONDITIONAL(USE_BLUEZ, true)
1714 AG_GST_CHECK_FEATURE(BLUEZ, [Bluez], bluez, [
1715 PKG_CHECK_MODULES([BLUEZ], [bluez < 5.0], [
1716 dnl FIXME: we should be able to replace this with the GLib DBus stuff
1717 PKG_CHECK_MODULES([DBUS], [dbus-1], [HAVE_BLUEZ=yes], [HAVE_BLUEZ=no])
1723 dnl *** OS X videosrc ***
1724 translit(dnm, m, l) AM_CONDITIONAL(USE_OSX_VIDEO, true)
1726 AG_GST_CHECK_FEATURE(OSX_VIDEO, [OSX video], osxvideosrc, [
1727 AC_CHECK_TYPE([SeqGrabComponent], HAVE_OSX_VIDEO="yes", HAVE_OSX_VIDEO="no",
1728 [#include <Quicktime/Quicktime.h>])
1730 dnl in case header Quicktime/Quicktime.h is found on other platforms
1739 dnl *** OS/X AVCVideoServices ***
1740 translit(dnm, m, l) AM_CONDITIONAL(USE_AVC, true)
1742 AG_GST_CHECK_FEATURE(AVC, [AVC Video Services], avcsrc, [
1744 save_CPPFLAGS="$CPPFLAGS"
1745 CPPFLAGS="$CPPFLAGS -framework AVCVideoServices -framework CoreFoundation"
1747 LIBS="$LIBS -framework AVCVideoServices -framework CoreFoundation"
1748 AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[]])],[HAVE_AVC=yes],[HAVE_AVC=no])
1750 CPPFLAGS=$save_CPPFLAGS
1753 dnl in case header AVCVideoServices/AVCVideoServices.h is found on other platforms
1762 dnl check for QuickTime
1763 translit(dnm, m, l) AM_CONDITIONAL(USE_QUICKTIME, true)
1764 AG_GST_CHECK_FEATURE(QUICKTIME, [QuickTime wrapper], qtwrapper, [
1765 AC_CHECK_TYPE([SampleReferenceRecord], HAVE_QUICKTIME="yes", HAVE_QUICKTIME="no",
1766 [#include <Quicktime/Quicktime.h>])
1769 dnl check for shm_open (for shm plugin)
1770 translit(dnm, m, l) AM_CONDITIONAL(USE_SHM, true)
1771 AG_GST_CHECK_FEATURE(SHM, [POSIX shared memory source and sink], shm, [
1772 if test "x$HAVE_SYS_SOCKET_H" = "xyes"; then
1774 *-darwin* | *-macos10*)
1775 AC_DEFINE(HAVE_OSX,[1],[Apple Mac OS X operating system detected])
1779 AC_CHECK_LIB([rt], [shm_open],
1780 AC_CHECK_DECL([MSG_NOSIGNAL], HAVE_SHM=yes, HAVE_SHM=no, [
1781 #include <sys/socket.h>
1784 AC_SUBST(SHM_LIBS, "-lrt")
1792 dnl check for Video CD
1793 translit(dnm, m, l) AM_CONDITIONAL(USE_VCD, true)
1794 AG_GST_CHECK_FEATURE(VCD, [Video CD], vcdsrc, [
1795 AC_CHECK_HEADER(linux/cdrom.h, HAVE_VCD="yes", HAVE_VCD="no")
1798 dnl check for OpenSL ES
1799 translit(dnm, m, l) AM_CONDITIONAL(USE_OPENSLES, true)
1800 AG_GST_CHECK_FEATURE(OPENSLES, [OpenSL ES], opensl, [
1801 AC_CHECK_HEADER(SLES/OpenSLES.h, HAVE_OPENSLES="yes", HAVE_OPENSLES="no")
1804 dnl *** UVC H264 ***
1805 translit(dnm, m, l) AM_CONDITIONAL(USE_UVCH264, true)
1806 AG_GST_CHECK_FEATURE(UVCH264, [UVC H264], uvch264, [
1807 AC_CHECK_HEADER(linux/uvcvideo.h, HAVE_UVCVIDEO_H=yes, HAVE_UVCVIDEO_H=no)
1808 AG_GST_PKG_CHECK_MODULES(GST_VIDEO, gstreamer-video-1.0)
1809 PKG_CHECK_MODULES(G_UDEV, gudev-1.0 , [
1810 AC_DEFINE([HAVE_GUDEV], 1, [Define if gudev is installed])
1813 PKG_CHECK_MODULES(LIBUSB, libusb-1.0 , [
1814 AC_DEFINE([HAVE_LIBUSB], 1, [Define if libusb 1.x is installed])
1815 HAVE_LIBUSB="yes" ],
1817 if test "x$HAVE_UVCVIDEO_H" == "xyes" && \
1818 test "x$HAVE_GUDEV" == "xyes" && \
1819 test "x$HAVE_LIBUSB" == "xyes"; then
1825 AC_SUBST(LIBUDEV_CFLAGS)
1826 AC_SUBST(LIBUDEV_LIBS)
1827 AC_SUBST(LIBUSB_CFLAGS)
1828 AC_SUBST(LIBUSB_LIBS)
1831 dnl *** ext plug-ins ***
1832 dnl keep this list sorted alphabetically !
1834 if test "x$BUILD_EXTERNAL" = "xyes"; then
1836 dnl *** assrender ***
1837 translit(dnm, m, l) AM_CONDITIONAL(USE_ASSRENDER, true)
1838 AG_GST_CHECK_FEATURE(ASSRENDER, [ASS/SSA renderer], assrender, [
1839 PKG_CHECK_MODULES(ASSRENDER, libass >= 0.9.4, [
1840 HAVE_ASSRENDER="yes" ], [
1844 AC_SUBST(ASSRENDER_CFLAGS)
1845 AC_SUBST(ASSRENDER_LIBS)
1847 dnl *** vo-amrwbenc ***
1848 translit(dnm, m, l) AM_CONDITIONAL(USE_VOAMRWBENC, true)
1849 AG_GST_CHECK_FEATURE(VOAMRWBENC, [vo-amrwbenc library], vo-amrwbenc, [
1850 AG_GST_PKG_CHECK_MODULES(VOAMRWBENC, vo-amrwbenc >= 0.1.0)
1853 dnl *** vo-aacenc ***
1854 translit(dnm, m, l) AM_CONDITIONAL(USE_VOAACENC, true)
1855 AG_GST_CHECK_FEATURE(VOAACENC, [vo-aacenc library], vo-aacenc, [
1856 AG_GST_PKG_CHECK_MODULES(VOAACENC, vo-aacenc >= 0.1.0)
1859 dnl *** apexsink ***
1860 translit(dnm, m, l) AM_CONDITIONAL(USE_APEXSINK, true)
1861 AG_GST_CHECK_FEATURE(APEXSINK, [AirPort Express Wireless sink], apexsink, [
1862 PKG_CHECK_MODULES(APEXSINK, [ openssl >= 0.9.5 libcrypto ], [
1866 AC_SEARCH_LIBS(socket, [socket], [ ], [ APEXSINK="no" ])
1867 AC_SEARCH_LIBS(gethostbyname, [nsl], [ ], [ APEXSINK="no" ])
1868 APEXSINK_LIBS="$APEXSINK_LIBS $LIBS"
1870 AC_SUBST(APEXSINK_CFLAGS)
1871 AC_SUBST(APEXSINK_LIBS)
1878 translit(dnm, m, l) AM_CONDITIONAL(USE_BZ2, true)
1879 AG_GST_CHECK_FEATURE(BZ2, [bz2 library], bz2, [
1882 AC_MSG_CHECKING([for BZ2_bzlibVersion in -lbz2])
1883 AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <bzlib.h>]], [[const char *version = BZ2_bzlibVersion ();]])],[HAVE_BZ2=yes],[HAVE_BZ2=no])
1884 AC_MSG_RESULT($HAVE_BZ2)
1886 if test "x$HAVE_BZ2" = "xyes"; then
1894 #translit(dnm, m, l) AM_CONDITIONAL(USE_CAIRO, true)
1895 #AG_GST_CHECK_FEATURE(CAIRO, [cairo plug-in], cairo, [
1896 # PKG_CHECK_MODULES(CAIRO, cairo >= 1.0 glitz-glx, HAVE_CAIRO=yes, [
1899 # AC_SUBST(CAIRO_CFLAGS)
1900 # AC_SUBST(CAIRO_LIBS)
1903 dnl *** chromaprint ***
1904 translit(dnm, m, l) AM_CONDITIONAL(USE_CHROMAPRINT, true)
1905 AG_GST_CHECK_FEATURE(CHROMAPRINT, [chromaprint], chromaprint, [
1906 PKG_CHECK_MODULES(CHROMAPRINT, libchromaprint, HAVE_CHROMAPRINT="yes", [
1907 HAVE_CHROMAPRINT="no"
1909 AC_SUBST(CHROMAPRINT_CFLAGS)
1910 AC_SUBST(CHROMAPRINT_LIBS)
1914 translit(dnm, m, l) AM_CONDITIONAL(USE_CURL, true)
1915 AG_GST_CHECK_FEATURE(CURL, [Curl plugin], curl, [
1916 PKG_CHECK_MODULES(CURL, libcurl >= 7.21.0, [
1918 AC_CHECK_HEADERS([unistd.h sys/socket.h sys/types.h netinet/in.h netinet/ip.h netinet/tcp.h fcntl.h], [ ], [
1919 AC_CHECK_HEADERS([unistd.h sys/types.h winsock2.h ws2tcpip.h fcntl.h], [ ], [HAVE_CURL="no"])
1921 AC_MSG_CHECKING([for socket support needed by curlsink])
1922 AC_MSG_RESULT($HAVE_CURL)
1926 AC_SUBST(CURL_CFLAGS)
1928 PKG_CHECK_MODULES(SSH2, libssh2 >= 1.4.3, [
1930 AC_DEFINE(HAVE_SSH2, 1, [Define if libssh2 is available])
1934 AM_CONDITIONAL(USE_SSH2, test "x$HAVE_SSH2" = "xyes")
1935 AC_SUBST(SSH2_CFLAGS)
1937 ],,,[AM_CONDITIONAL(USE_SSH2, false)])
1940 translit(dnm, m, l) AM_CONDITIONAL(USE_DASH, true)
1941 AG_GST_CHECK_FEATURE(DASH, [DASH plug-in], dash, [
1942 PKG_CHECK_MODULES(LIBXML2, libxml-2.0 >= 2.4, [HAVE_LIBXML2="yes"
1943 HAVE_DASH="yes"], [HAVE_LIBXML2="no"
1945 AC_SUBST(LIBXML2_CFLAGS)
1946 AC_SUBST(LIBXML2_LIBS)
1950 translit(dnm, m, l) AM_CONDITIONAL(USE_DC1394, true)
1951 AG_GST_CHECK_FEATURE(DC1394, [libdc1394], dc1394, [
1952 PKG_CHECK_MODULES(LIBDC1394, libdc1394-2 >= 2.0.0, [
1953 if test -z "`$PKG_CONFIG --modversion libdc1394-2 | grep 2.0.0-rc`"; then
1962 AC_SUBST(LIBDC1394_CFLAGS)
1963 AC_SUBST(LIBDC1394_LIBS)
1966 dnl *** decklink ***
1967 translit(dnm, m, l) AM_CONDITIONAL(USE_DECKLINK, true)
1968 AG_GST_CHECK_FEATURE(DECKLINK, [decklink], decklink, [
1972 if test "x$HAVE_PTHREAD_H" = "xyes"; then
1973 AC_CHECK_LIB(dl, dlopen,
1977 DECKLINK_LIBS="-lpthread -ldl"
1982 if test "x$HAVE_PTHREAD_H" = "xyes"; then
1983 AC_CHECK_LIB(dl, dlopen,
1987 DECKLINK_LIBS="-lpthread -ldl"
1988 HAVE_DECKLINK_OSX=yes
1997 AC_SUBST(DECKLINK_CXXFLAGS)
1998 AC_SUBST(DECKLINK_LIBS)
2000 AM_CONDITIONAL(DECKLINK_OSX, test "x$HAVE_DECKLINK_OSX" = xyes)
2002 dnl **** DirectFB ****
2003 translit(dnm, m, l) AM_CONDITIONAL(USE_DIRECTFB, true)
2004 AG_GST_CHECK_FEATURE(DIRECTFB, [directfb], dfbvideosink , [
2005 PKG_CHECK_MODULES(DIRECTFB, directfb >= 0.9.24, HAVE_DIRECTFB="yes", [
2010 dnl **** Wayland ****
2011 translit(dnm, m, l) AM_CONDITIONAL(USE_WAYLAND, true)
2012 AG_GST_CHECK_FEATURE(WAYLAND, [wayland sink], wayland , [
2013 PKG_CHECK_MODULES(WAYLAND, wayland-client >= 1.4.0 wayland-scanner, [
2014 HAVE_WAYLAND="yes" ], [ HAVE_WAYLAND="no"
2018 AC_PATH_PROG([wayland_scanner], [wayland-scanner])
2021 translit(dnm, m, l) AM_CONDITIONAL(USE_WEBP, true)
2022 AG_GST_CHECK_FEATURE(WEBP, [WebP], webp , [
2023 PKG_CHECK_MODULES(WEBP, libwebp >= 0.2.1, [
2024 HAVE_WEBP="yes" ], [ HAVE_WEBP="no"
2026 AC_SUBST(WEBP_CFLAGS)
2031 translit(dnm, m, l) AM_CONDITIONAL(USE_DAALA, true)
2032 AG_GST_CHECK_FEATURE(DAALA, [daala], daala, [
2033 if test "x$BUILD_EXPERIMENTAL" = "xyes"; then
2034 PKG_CHECK_MODULES(DAALA, daalaenc daaladec, [
2039 AC_SUBST(DAALA_CFLAGS)
2040 AC_SUBST(DAALA_LIBS)
2045 translit(dnm, m, l) AM_CONDITIONAL(USE_DTS, true)
2046 AG_GST_CHECK_FEATURE(DTS, [dts library], dtsdec, [
2048 AG_GST_CHECK_LIBHEADER(DTS, dca, dca_init, $LIBM, dca.h,
2049 DTS_LIBS="-ldca $LIBM", HAVE_DTS="no")
2050 if test $HAVE_DTS = "no"; then
2051 AG_GST_CHECK_LIBHEADER(DTS, dts_pic, dts_init, $LIBM, dts.h,
2052 [ DTS_LIBS="-ldts_pic $LIBM"
2053 AC_DEFINE(DTS_OLD, 1, [Define if an old libdts is used])
2059 dnl *** resindvd ***
2060 translit(dnm, m, l) AM_CONDITIONAL(USE_RESINDVD, true)
2061 AG_GST_CHECK_FEATURE(RESINDVD, [resindvd plugin], resindvd, [
2062 PKG_CHECK_MODULES(DVDNAV, dvdnav >= 4.1.2 dvdread >= 4.1.2, HAVE_RESINDVD="yes", [
2067 dnl **** Free AAC Encoder (FAAC) ****
2068 translit(dnm, m, l) AM_CONDITIONAL(USE_FAAC, true)
2069 AG_GST_CHECK_FEATURE(FAAC, [AAC encoder plug-in], faac, [
2070 AG_GST_CHECK_LIBHEADER(FAAC, faac, faacEncOpen, $LIBM, faac.h,
2071 FAAC_LIBS="-lfaac $LIBM")
2075 dnl **** Free AAC Decoder (FAAD) ****
2076 translit(dnm, m, l) AM_CONDITIONAL(USE_FAAD, true)
2077 AG_GST_CHECK_FEATURE(FAAD, [AAC decoder plug-in], faad, [
2080 AG_GST_CHECK_LIBHEADER(FAAD, faad, faacDecOpen, $LIBM, faad.h,
2081 FAAD_LIBS="-lfaad $LIBM", HAVE_FAAD="no")
2082 if test $HAVE_FAAD = "no"; then
2083 AG_GST_CHECK_LIBHEADER(FAAD, faad, NeAACDecOpen, $LIBM, neaacdec.h,
2084 [ FAAD_LIBS="-lfaad $LIBM"
2085 AC_DEFINE(FAAD_IS_NEAAC, 1, [Define if AAC is using new api prefix])
2086 faad_hdr="neaacdec.h"
2093 if test $HAVE_FAAD = "yes"; then
2094 AC_MSG_CHECKING([Checking for FAAD >= 2.0])
2095 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <faad.h>]], [[
2096 #if !defined(FAAD2_VERSION) || !defined(FAAD_FMT_DOUBLE)
2099 /* Release candidate of 2.0 is not good enough for us. This field
2100 * was added only in 2.0 final and does not exist in 2.0-RC3 */
2101 faacDecConfiguration conf; conf.dontUpSampleImplicitSBR = 1;
2106 AC_MSG_CHECKING([Checking FAAD2 version in $faad_hdr])
2107 for minor in 10 9 8 7 6 5 0; do
2108 if test x$faad2_minor_version = "x"; then
2109 AC_EGREP_CPP([GST_CHECK_FAAD_VERSION \"2\.$minor\"], [
2110 #include <$faad_hdr>
2111 GST_CHECK_FAAD_VERSION FAAD2_VERSION
2113 faad2_minor_version=$minor
2117 if test x$faad2_minor_version = "x"; then
2118 AC_MSG_RESULT([no idea])
2120 AC_MSG_RESULT([2.$faad2_minor_version])
2121 AC_DEFINE_UNQUOTED([FAAD2_MINOR_VERSION], [$faad2_minor_version], [The x in 2.x])
2128 AC_SUBST(FAAD_IS_NEAAC)
2132 translit(dnm, m, l) AM_CONDITIONAL(USE_FBDEV, true)
2133 AG_GST_CHECK_FEATURE(FBDEV, [linux framebuffer], fbdevsink, [
2134 if test "x$HAVE_FBDEV" != "xyes"; then
2135 AC_CHECK_HEADER([linux/fb.h], HAVE_FBDEV=yes, HAVE_FBDEV=no)
2140 translit(dnm, m, l) AM_CONDITIONAL(USE_FLITE, true)
2141 AG_GST_CHECK_FEATURE(FLITE, [Flite plugin], flite, [
2142 AG_GST_CHECK_LIBHEADER(FLITE, flite, flite_init, $LIBM, flite/flite.h,
2143 FLITE_LIBS="-lflite -lflite_cmu_us_kal -lflite_usenglish -lflite_cmulex $LIBM")
2145 AC_SUBST(FLITE_CFLAGS)
2146 AC_SUBST(FLITE_LIBS)
2150 translit(dnm, m, l) AM_CONDITIONAL(USE_GSM, true)
2151 AG_GST_CHECK_FEATURE(GSM, [GSM library], gsmenc gsmdec, [
2152 AG_GST_CHECK_LIBHEADER(GSM, gsm, gsm_create, , gsm.h, GSM_LIBS="-lgsm")
2153 if test $HAVE_GSM != "yes"; then
2154 AG_GST_CHECK_LIBHEADER(GSM, gsm, gsm_create, , gsm/gsm.h, GSM_LIBS="-lgsm")
2155 if test $HAVE_GSM = "yes"; then
2156 AC_DEFINE(GSM_HEADER_IN_SUBDIR, 1, [Define if GSM header in gsm/ subdir])
2162 dnl *** fluidSynth ***
2163 translit(dnm, m, l) AM_CONDITIONAL(USE_FLUIDSYNTH, true)
2164 AG_GST_CHECK_FEATURE(FLUIDSYNTH, [fluidsynth], fluidsynth, [
2165 PKG_CHECK_MODULES(FLUIDSYNTH, fluidsynth >= 1.0, HAVE_FLUIDSYNTH="yes", [
2166 HAVE_FLUIDSYNTH="no"
2171 translit(dnm, m, l) AM_CONDITIONAL(USE_KATE, true)
2172 AG_GST_CHECK_FEATURE(KATE, [Kate], kate, [
2173 PKG_CHECK_MODULES(KATE, kate >= 0.1.7, HAVE_KATE="yes", [
2176 AC_SUBST(KATE_CFLAGS)
2178 PKG_CHECK_MODULES(TIGER, tiger >= 0.3.2,
2181 AC_DEFINE(HAVE_TIGER, 1, [Define if libtiger is available])
2187 AM_CONDITIONAL(USE_TIGER, test "x$HAVE_TIGER" = "xyes")
2188 AC_SUBST(TIGER_CFLAGS)
2189 AC_SUBST(TIGER_LIBS)
2190 ],,,[AM_CONDITIONAL(USE_TIGER, false)])
2193 translit(dnm, m, l) AM_CONDITIONAL(USE_LADSPA, true)
2194 AG_GST_CHECK_FEATURE(LADSPA, [ladspa], ladspa, [
2195 AC_CHECK_HEADER(ladspa.h, HAVE_LADSPA="yes", HAVE_LADSPA="no")
2197 PKG_CHECK_MODULES(LRDF, lrdf, HAVE_LRDF=yes, HAVE_LRDF=no)
2198 if test $HAVE_LRDF = "yes"; then
2199 AC_DEFINE(HAVE_LRDF, 1, [Define if we have liblrdf])
2202 AC_SUBST(LRDF_CFLAGS)
2206 translit(dnm, m, l) AM_CONDITIONAL(USE_LV2, true)
2207 AG_GST_CHECK_FEATURE(LV2, [lv2], lv2, [
2208 PKG_CHECK_MODULES(SLV2, slv2 >= 0.6.6, HAVE_LV2="yes", HAVE_LV2="no")
2209 AC_SUBST(SLV2_CFLAGS)
2213 dnl *** libde265 ***
2214 translit(dnm, m, l) AM_CONDITIONAL(USE_LIBDE265, true)
2215 AG_GST_CHECK_FEATURE(LIBDE265, [libde265 HEVC/H.265 decoder], libde265, [
2216 PKG_CHECK_MODULES(LIBDE265, libde265 >= 0.9, HAVE_LIBDE265="yes", HAVE_LIBDE265="no")
2217 AC_SUBST(LIBDE265_CFLAGS)
2218 AC_SUBST(LIBDE265_LIBS)
2222 translit(dnm, m, l) AM_CONDITIONAL(USE_LIBMMS, true)
2223 AG_GST_CHECK_FEATURE(LIBMMS, [mms protocol library], libmms, [
2224 dnl check with pkg-config first
2225 PKG_CHECK_MODULES(LIBMMS, libmms >= 0.4, HAVE_LIBMMS="yes", [
2229 AC_SUBST(LIBMMS_LIBS)
2233 translit(dnm, m, l) AM_CONDITIONAL(USE_SRTP, true)
2234 AG_GST_CHECK_FEATURE(SRTP, [srtp library], srtp, [
2236 AG_GST_CHECK_LIBHEADER(SRTP, srtp, srtp_init, , srtp/srtp.h,
2237 SRTP_LIBS="-lsrtp", HAVE_SRTP="no")
2242 translit(dnm, m, l) AM_CONDITIONAL(USE_LINSYS, true)
2243 AG_GST_CHECK_FEATURE(LINSYS, [Linear Systems SDI plugin], linsys, [
2255 translit(dnm, m, l) AM_CONDITIONAL(USE_MODPLUG, true)
2256 AG_GST_CHECK_FEATURE(MODPLUG, modplug, modplug, [
2257 if test "x$HAVE_CXX" != "xyes"; then
2258 AC_MSG_WARN([Not compiling modplug plugin as it requires a C++ compiler])
2261 PKG_CHECK_MODULES(MODPLUG, libmodplug, HAVE_MODPLUG="yes", HAVE_MODPLUG="no")
2263 AC_SUBST(MODPLUG_CFLAGS)
2264 AC_SUBST(MODPLUG_LIBS)
2268 translit(dnm, m, l) AM_CONDITIONAL(USE_MIMIC, true)
2269 AG_GST_CHECK_FEATURE(MIMIC, [libmimic library], mimic, [
2271 PKG_CHECK_MODULES(MIMIC, libmimic >= $MIMIC_REQUIRED,
2272 HAVE_MIMIC=yes, HAVE_MIMIC=no)
2273 AC_SUBST(MIMIC_CFLAGS)
2274 AC_SUBST(MIMIC_LIBS)
2277 dnl *** mjpegtools version info ***
2278 dnl some may prefer older version (given quirks above)
2279 dnl hm, no version info seems available within mjpegtools headers
2280 dnl and API really moves along
2282 PKG_CHECK_EXISTS(mjpegtools >= 1.6.1.93 mjpegtools < 1.8.0, [
2283 mjpegtools_api=10601
2285 PKG_CHECK_EXISTS(mjpegtools >= 1.8.0 mjpegtools < 1.9.0, [
2286 mjpegtools_api=10800
2288 PKG_CHECK_EXISTS(mjpegtools >= 2.0.0, [
2289 mjpegtools_api=20000
2291 PKG_CHECK_MODULES(MJPEG, mjpegtools >= 1.9.0 mjpegtools < 2.0.0, [
2292 dnl logging API changed in release candidates
2293 OLD_CFLAGS="$CFLAGS"
2295 CFLAGS="$MJPEG_CFLAGS"
2296 LIBS="$LIBS $MJPEG_LIBS -lmjpegutils $LIBM $PTHREAD_LIBS"
2297 AC_CHECK_FUNC(mjpeg_loglev_t, [
2298 mjpegtools_api=10903
2300 mjpegtools_api=10900
2302 CFLAGS="$OLD_CFLAGS"
2310 AC_DEFINE_UNQUOTED(GST_MJPEGTOOLS_API, $mjpegtools_api,
2311 [mjpegtools API evolution])
2313 dnl *** mpeg2enc ***
2314 translit(dnm, m, l) AM_CONDITIONAL(USE_MPEG2ENC, true)
2315 AG_GST_CHECK_FEATURE(MPEG2ENC, [mpeg2enc], mpeg2enc, [
2317 dnl we require a c++ compiler for this one
2318 if [ test x$HAVE_CXX = xyes ]; then
2319 dnl libmpeg2enc was first included in mjpegtools-1.6.2-rc3 (1.6.1.92)
2320 dnl since many distros include mjpegtools specifically without mplex
2321 dnl and mpeg2enc, we check for mpeg2enc on its own, too.
2322 PKG_CHECK_MODULES(MPEG2ENC, mjpegtools >= 1.6.1.93, [
2323 dnl HACK because mpeg2enc 1.8.0 header files have a spurious 'include config.h'
2325 dnl switch over to c++ to test things
2327 OLD_CPPFLAGS="$CPPFLAGS"
2329 CPPFLAGS_GOOD="$CPPFLAGS $MPEG2ENC_CFLAGS"
2330 CPPFLAGS="$CPPFLAGS_GOOD -I."
2332 mpeg2enc_headers_ok=no
2333 AC_CHECK_HEADER([mpeg2encoder.hh], [
2334 MPEG2ENC_LIBS="$MPEG2ENC_LIBS -lmpeg2encpp $LIBM $PTHREAD_LIBS"
2336 LIBS="$LIBS $MPEG2ENC_LIBS"
2337 AC_MSG_CHECKING([for valid mpeg2enc objects])
2338 AC_RUN_IFELSE([AC_LANG_SOURCE([[
2339 #include <mpeg2encoder.hh>
2340 #include <mpeg2encoptions.hh>
2346 MPEG2EncOptions *options = new MPEG2EncOptions ();
2347 MPEG2Encoder *encoder = new MPEG2Encoder (*options);
2352 dnl so far so good, let's check more things:
2353 dnl mjpegtools-1.8.0 does not install the required
2354 dnl mpeg2syntaxcodes.h header by default, and a new release
2355 dnl is not in sight, so check for this oversight in case
2356 dnl distros or folks have fixed this themselves
2357 if test "$mjpegtools_api" -ge "10800"; then
2358 AC_CHECK_HEADER([mpeg2syntaxcodes.h], [
2359 mpeg2enc_headers_ok=yes
2361 mpeg2enc_headers_ok=no
2364 mpeg2enc_headers_ok=yes
2366 if test "x$mpeg2enc_headers_ok" = "xyes"; then
2369 CPPFLAGS="$CPPFLAGS_GOOD"
2370 AC_SUBST(MPEG2ENC_CFLAGS)
2371 AC_SUBST(MPEG2ENC_LIBS)
2378 CPPFLAGS="$OLD_CPPFLAGS"
2387 translit(dnm, m, l) AM_CONDITIONAL(USE_MPG123, true)
2388 AG_GST_CHECK_FEATURE(MPG123, [mpg123 audio decoder], mpg123, [
2389 PKG_CHECK_MODULES(MPG123, libmpg123 >= 1.13, HAVE_MPG123="yes", HAVE_MPG123="no")
2390 AC_SUBST(MPG123_CFLAGS)
2391 AC_SUBST(MPG123_LIBS)
2395 translit(dnm, m, l) AM_CONDITIONAL(USE_MPLEX, true)
2396 AG_GST_CHECK_FEATURE(MPLEX, [mplex], mplex, [
2398 dnl we require a c++ compiler for this one
2399 if [ test x$HAVE_CXX = xyes ]; then
2400 dnl libmplex was first included in mjpegtools-1.6.2-rc4 (1.6.1.93)
2401 dnl since many distros include mjpegtools specifically without mplex
2402 dnl and mpeg2enc, we check for mplex on its own, too.
2403 dnl libmplex < 1.9rc? has fuzzy ABI, valgrind and other problems
2404 PKG_CHECK_MODULES(MPLEX, mjpegtools >= 1.9.0, [
2405 dnl HACK because mplex 2.0.0 header files have a spurious 'include config.h'
2407 dnl switch over to c++ to test things
2409 OLD_CPPFLAGS="$CPPFLAGS"
2411 CPPFLAGS_GOOD="$CPPFLAGS $MPLEX_CFLAGS"
2412 CPPFLAGS="$CPPFLAGS_GOOD -I."
2413 AC_CHECK_HEADER(interact.hpp, [
2414 MPLEX_LIBS="$MPLEX_LIBS -lmplex2 $LIBM"
2416 LIBS="$LIBS $MPLEX_LIBS"
2417 OLD_LDFLAGS="$LDFLAGS"
2418 LDFLAGS="$LDFLAGS $MPLEX_LDFLAGS"
2419 dnl older libmplex uses off_t SegmentSize (), which leads to fuzzy ABI;
2420 dnl don't want this here
2421 AC_MSG_CHECKING([for valid mplex objects])
2422 AC_RUN_IFELSE([AC_LANG_SOURCE([[
2424 #include <interact.hpp>
2425 #include <outputstrm.hpp>
2426 #include <multiplexor.hpp>
2431 class TestOutputStream : public OutputStream {
2433 TestOutputStream () : OutputStream () { }
2434 void Write (uint8_t *a, unsigned int b) { }
2435 void NextSegment () { }
2436 uint64_t SegmentSize () { }
2440 MultiplexJob *job = new MultiplexJob ();
2441 vector<IBitStream *> inputs;
2442 job->SetupInputStreams (inputs);
2443 TestOutputStream *out = new TestOutputStream ();
2444 Multiplexor *mux = new Multiplexor(*job, *out, NULL);
2449 CPPFLAGS="$CPPFLAGS_GOOD"
2450 AC_SUBST(MPLEX_CFLAGS)
2451 AC_SUBST(MPLEX_LIBS)
2452 AC_SUBST(MPLEX_LDFLAGS)
2454 ],[AC_MSG_RESULT(no)],[])
2456 LDFLAGS="$OLD_LDFLAGS"
2458 CPPFLAGS="$OLD_CPPFLAGS"
2464 dnl *** musepack ***
2465 translit(dnm, m, l) AM_CONDITIONAL(USE_MUSEPACK, true)
2466 AG_GST_CHECK_FEATURE(MUSEPACK, [musepackdec], musepack, [
2467 AC_CHECK_HEADER([mpc/mpcdec.h], [
2469 MUSEPACK_LIBS="-lmpcdec"
2470 AC_SUBST(MUSEPACK_LIBS)
2471 ], [AC_CHECK_HEADER([mpcdec/mpcdec.h], [
2473 MUSEPACK_LIBS="-lmpcdec"
2474 AC_DEFINE(MPC_IS_OLD_API, 1, [Define if the old MusePack API is used])
2475 AC_SUBST(MUSEPACK_LIBS)
2476 ], [HAVE_MUSEPACK="no"])])
2480 translit(dnm, m, l) AM_CONDITIONAL(USE_MYTHTV, true)
2481 AG_GST_CHECK_FEATURE(MYTHTV, [MythTV client plugins], mythtvsrc, [
2482 PKG_CHECK_MODULES(GMYTH, gmyth >= 0.4 gmyth <= 0.7.99, HAVE_MYTHTV="yes", [
2485 AC_SUBST(GMYTH_CFLAGS)
2486 AC_SUBST(GMYTH_LIBS)
2490 translit(dnm, m, l) AM_CONDITIONAL(USE_NAS, true)
2491 AG_GST_CHECK_FEATURE(NAS, [nas plug-in], nassink, [
2494 if test "x$HAVE_X" = "xyes"; then
2495 save_cppflags=$CFLAGS
2496 CPPFLAGS="$CPPFLAGS $X_CFLAGS"
2497 AG_GST_CHECK_LIBHEADER(NAS, audio, AuOpenServer, $X_LIBS, audio/audiolib.h,
2498 NAS_LIBS="$X_LIBS -laudio" NAS_CFLAGS="$X_CFLAGS")
2499 CPPFLAGS="$save_cppflags"
2501 AC_SUBST(NAS_CFLAGS)
2506 translit(dnm, m, l) AM_CONDITIONAL(USE_NEON, true)
2507 AG_GST_CHECK_FEATURE(NEON, [neon http client plugins], neonhttpsrc, [
2508 PKG_CHECK_MODULES(NEON, neon >= 0.27.0 neon <= 0.30.99, HAVE_NEON="yes", [
2511 AC_SUBST(NEON_CFLAGS)
2516 translit(dnm, m, l) AM_CONDITIONAL(USE_OFA, true)
2517 AG_GST_CHECK_FEATURE(OFA, [ofa plugins], ofa, [
2518 PKG_CHECK_MODULES(OFA, libofa >= 0.9.3, HAVE_OFA="yes", [
2521 AC_SUBST(OFA_CFLAGS)
2526 translit(dnm, m, l) AM_CONDITIONAL(USE_OPENAL, true)
2527 AG_GST_CHECK_FEATURE(OPENAL, [OpenAL plugin], openal, [
2528 PKG_CHECK_MODULES(OPENAL, openal >= 1.14, HAVE_OPENAL="yes", [
2531 AC_SUBST(OPENAL_CFLAGS)
2532 AC_SUBST(OPENAL_LIBS)
2536 translit(dnm, m, l) AM_CONDITIONAL(USE_OPENCV, true)
2537 AG_GST_CHECK_FEATURE(OPENCV, [opencv plugins], opencv, [
2538 dnl we specify a max. version too because we set CV_NO_BACKWARD_COMPATIBILITY
2539 dnl and don't want the build to break when a new opencv version comes out.
2540 dnl Need to adjust this upwards once we know that our code compiles fine with
2541 dnl a new version and the no-backward-compatibility define. (There doesn't
2542 dnl seem to be a switch to suppress the warnings the cvcompat.h header
2544 PKG_CHECK_MODULES(OPENCV, opencv >= 2.0.0 opencv < 2.5.0 , [
2547 OLD_CPPFLAGS=$CPPFLAGS
2548 CPPFLAGS=$OPENCV_CFLAGS
2549 AC_CHECK_HEADERS([highgui.h opencv2/highgui/highgui_c.h])
2550 CPPFLAGS=$OLD_CPPFLAGS
2553 if test $ac_cv_header_highgui_h = "yes" -o $ac_cv_header_opencv2_highgui_highgui_c_h = "yes" ; then
2556 AC_MSG_RESULT([neither highgui.h nor opencv2/highgui/highgui_c.h could not be found])
2562 OPENCV_PREFIX="`$PKG_CONFIG --variable=prefix opencv`"
2563 AC_DEFINE_UNQUOTED(OPENCV_PREFIX, "$OPENCV_PREFIX", [opencv install prefix])
2564 AC_SUBST(OPENCV_PREFIX)
2565 AC_SUBST(OPENCV_CFLAGS)
2566 AC_SUBST(OPENCV_LIBS)
2570 translit(dnm, m, l) AM_CONDITIONAL(USE_OPENEXR, true)
2571 AG_GST_CHECK_FEATURE(OPENEXR, [openexr library], openexr, [
2572 AG_GST_PKG_CHECK_MODULES(OPENEXR, OpenEXR)
2575 dnl *** openh264 ***
2576 translit(dnm, m, l) AM_CONDITIONAL(USE_OPENH264, true)
2577 AG_GST_CHECK_FEATURE(OPENH264, [openh264 library], openh264, [
2578 AG_GST_CHECK_LIBHEADER(OPENH264, openh264, WelsSnprintf, $PTHREAD_LIBS,
2579 wels/codec_api.h, OPENH264_LIBS="-lopenh264 $PTHREAD_LIBS")
2580 AC_SUBST(OPENH264_LIBS)
2583 dnl *** OpenJPEG ***
2584 translit(dnm, m, l) AM_CONDITIONAL(USE_OPENJPEG, true)
2585 AG_GST_CHECK_FEATURE(OPENJPEG, [openjpeg library], openjpeg, [
2589 save_CFLAGS="$CFLAGS"
2590 OPENJPEG_LIBS="-lopenjp2"
2591 LIBS="$LIBS $OPENJPEG_LIBS"
2592 CFLAGS="$CFLAGS $OPENJPEG_CFLAGS"
2594 AC_LANG_PROGRAM([#include <openjpeg-2.0/openjpeg.h>],
2595 [return (int) *opj_version ();])
2596 ], [HAVE_OPENJPEG=yes], [HAVE_OPENJPEG=no])
2598 CFLAGS="$save_CFLAGS"
2600 if test x"$HAVE_OPENJPEG" = x"no"; then
2602 PKG_CHECK_MODULES(OPENJPEG, libopenjpeg1,
2603 HAVE_OPENJPEG="yes",
2604 AG_GST_CHECK_LIBHEADER(OPENJPEG, openjpeg, opj_version, , openjpeg.h, OPENJPEG_LIBS="-lopenjpeg")
2606 if test x"$HAVE_OPENJPEG" = x"yes"; then
2607 AC_DEFINE([HAVE_OPENJPEG_1], 1, [Define if OpenJPEG 1 is used])
2610 AC_SUBST(OPENJPEG_CFLAGS)
2611 AC_SUBST(OPENJPEG_LIBS)
2615 translit(dnm, m, l) AM_CONDITIONAL(USE_OPENNI2, true)
2616 AG_GST_CHECK_FEATURE(OPENNI2, [openni2 library], openni2, [
2617 PKG_CHECK_MODULES(OPENNI2, libopenni2 >= 0.26, HAVE_OPENNI2="yes", [ HAVE_OPENNI2="no" ] )
2618 AC_SUBST(OPENNI2_CFLAGS)
2619 AC_SUBST(OPENNI2_LIBS)
2623 translit(dnm, m, l) AM_CONDITIONAL(USE_OPUS, true)
2624 AG_GST_CHECK_FEATURE(OPUS, [opus], opus, [
2625 PKG_CHECK_MODULES(OPUS, opus >= 0.9.4, [
2626 AC_DEFINE([HAVE_OPUS], 1, [Define if Opus >= 0.9.4 is installed])
2631 AC_SUBST(OPUS_CFLAGS)
2636 translit(dnm, m, l) AM_CONDITIONAL(USE_PVR, true)
2637 AG_GST_CHECK_FEATURE(PVR, [pvrvideosink], pvr, [
2638 PKG_CHECK_MODULES([PVR], [libtimemmgr], HAVE_PVR=yes, HAVE_PVR=no)
2639 AC_SUBST(PVR_CFLAGS)
2643 AC_ARG_WITH([pvr-external-headers],
2644 AS_HELP_STRING([--with-pvr-external-headers],[Use system installed PVR2D headers]),
2645 [AS_IF([test "x$with_pvr_external_headers" = "xno"],
2646 [PVR_CFLAGS="$PVR_CFLAGS -I\$(srcdir)/pvr_includes"])],
2647 [PVR_CFLAGS="$PVR_CFLAGS -I\$(srcdir)/pvr_includes"])
2650 translit(dnm, m, l) AM_CONDITIONAL(USE_RSVG, true)
2651 AG_GST_CHECK_FEATURE(RSVG, [rsvg decoder], rsvg, [
2652 PKG_CHECK_MODULES(RSVG, librsvg-2.0 >= 2.36 cairo, [
2654 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")
2655 if test "x$HAVE_RSVG_2_36_2" = "xyes"; then
2656 AC_DEFINE(HAVE_RSVG_2_36_2, [1], [Have RSVG 2.36.2 or newer])
2661 AC_SUBST(RSVG_CFLAGS)
2666 translit(dnm, m, l) AM_CONDITIONAL(USE_GL, true)
2667 AG_GST_CHECK_FEATURE(GL, [gl elements], gl, [
2670 if test x"$USE_OPENGL" = x"yes" -o x"$USE_GLES2" = x"yes"; then
2675 dnl *** libvisual ***
2676 translit(dnm, m, l) AM_CONDITIONAL(USE_LIBVISUAL, true)
2677 AG_GST_CHECK_FEATURE(LIBVISUAL, [libvisual visualization library], libvisual, [
2678 AG_GST_PKG_CHECK_MODULES(LIBVISUAL, libvisual-0.4 >= 0.4.0)
2679 if test x$HAVE_LIBVISUAL = xyes; then
2680 LIBVIS_PLUGINSDIR="`$PKG_CONFIG --variable=pluginsbasedir libvisual-0.4`"
2682 AC_MSG_NOTICE([libvisual pluginsdir: $LIBVIS_PLUGINSDIR])
2683 if test x$LIBVIS_PLUGINSDIR != x; then
2684 AC_DEFINE_UNQUOTED(LIBVISUAL_PLUGINSBASEDIR,
2685 "$LIBVIS_PLUGINSDIR",
2686 [directory in which the detected libvisual's plugins are located])
2690 dnl *** timidity ***
2691 translit(dnm, m, l) AM_CONDITIONAL(USE_TIMIDITY, true)
2692 AG_GST_CHECK_FEATURE(TIMIDITY, [timidity midi soft synth plugin], timidity, [
2693 PKG_CHECK_MODULES(TIMIDITY, libtimidity, [
2694 HAVE_TIMIDITY="yes",
2695 AC_MSG_CHECKING([for timidity.cfg])
2697 if test -r /etc/timidity.cfg; then
2698 timidity_cfg=/etc/timidity.cfg
2699 elif test -r /etc/timidity/timidity.cfg; then
2700 timidity_cfg=/etc/timidity/timidity.cfg
2701 elif test -r /usr/share/timidity/timidity.cfg; then
2702 timidity_cfg=/usr/share/timidity/timidity.cfg
2703 elif test -r /usr/local/share/timidity/timidity.cfg; then
2704 timidity_cfg=/usr/local/share/timidity/timidity.cfg
2706 if test "x$timidity_cfg" != "x"; then
2707 AC_MSG_RESULT($timidity_cfg)
2708 AC_DEFINE_UNQUOTED(TIMIDITY_CFG, "$timidity_cfg", [Define location of timidity.cfg])
2710 AC_MSG_RESULT([not found])
2715 AC_SUBST(TIMIDITY_CFLAGS)
2716 AC_SUBST(TIMIDITY_LIBS)
2719 dnl *** teletextdec ***
2720 translit(dnm, m, l) AM_CONDITIONAL(USE_TELETEXTDEC, true)
2721 AG_GST_CHECK_FEATURE(TELETEXTDEC, [Teletext decoder], teletextdec, [
2722 AG_GST_PKG_CHECK_MODULES(TELETEXTDEC, zvbi-0.2)
2725 dnl *** wildmidi ***
2726 translit(dnm, m, l) AM_CONDITIONAL(USE_WILDMIDI, true)
2727 AG_GST_CHECK_FEATURE(WILDMIDI, [wildmidi midi soft synth plugin], wildmidi, [
2728 AG_GST_CHECK_LIBHEADER(WILDMIDI, WildMidi,
2731 WILDMIDI_LIBS="-lWildMidi")
2732 AC_CHECK_LIB(WildMidi, WildMidi_LoadSamples, AC_DEFINE(HAVE_WILDMIDI_0_2_2, [1], [Have WildMidi 0.2.2 or earlier library]))
2734 if test "x$HAVE_WILDMIDI" = "xyes"; then
2736 WILDMIDI_LIBS=-lWildMidi
2737 AC_MSG_NOTICE(compiling gstWildMidi)
2741 AC_MSG_WARN(no WildMidi library found (libWildMidi))
2743 AC_SUBST(WILDMIDI_CFLAGS)
2744 AC_SUBST(WILDMIDI_LIBS)
2748 translit(dnm, m, l) AM_CONDITIONAL(USE_SDL, true)
2749 AG_GST_CHECK_FEATURE(SDL, [SDL plug-in], sdlvideosink sdlaudiosink, [
2750 AM_PATH_SDL(, HAVE_SDL=yes, HAVE_SDL=no)
2753 dnl **** Smooth Streaming ****
2754 translit(dnm, m, l) AM_CONDITIONAL(USE_SMOOTHSTREAMING, true)
2755 AG_GST_CHECK_FEATURE(SMOOTHSTREAMING, [Smooth Streaming plug-in], smoothstreaming, [
2756 PKG_CHECK_MODULES(LIBXML2, libxml-2.0 >= 2.4,
2758 HAVE_SMOOTHSTREAMING="yes"],
2760 HAVE_SMOOTHSTREAMING="no"])
2761 AC_SUBST(LIBXML2_CFLAGS)
2762 AC_SUBST(LIBXML2_LIBS)
2766 translit(dnm, m, l) AM_CONDITIONAL(USE_SNDFILE, true)
2767 AG_GST_CHECK_FEATURE(SNDFILE, [sndfile plug-in], sfdec sfenc, [
2768 PKG_CHECK_MODULES(SNDFILE, sndfile >= 1.0.16, HAVE_SNDFILE="yes", HAVE_SNDFILE="no")
2769 AC_SUBST(SNDFILE_CFLAGS)
2770 AC_SUBST(SNDFILE_LIBS)
2773 dnl *** soundtouch ***
2774 translit(dnm, m, l) AM_CONDITIONAL(USE_SOUNDTOUCH, true)
2775 AG_GST_CHECK_FEATURE(SOUNDTOUCH, [soundtouch plug-in], soundtouch, [
2776 dnl We only need -lBPM on soundtouch < 1.4
2777 dnl We check for libSoundTouch since Debian used it before upstream
2778 dnl added a pkgconfig file.
2779 HAVE_SOUNDTOUCH_1_4=yes
2780 PKG_CHECK_MODULES(SOUNDTOUCH, soundtouch,
2781 [HAVE_SOUNDTOUCH=yes],
2782 [PKG_CHECK_MODULES(SOUNDTOUCH, soundtouch-1.4,
2783 [HAVE_SOUNDTOUCH=yes],
2784 [PKG_CHECK_MODULES(SOUNDTOUCH, soundtouch-1.0,
2785 [HAVE_SOUNDTOUCH=yes
2786 HAVE_SOUNDTOUCH_1_4=no
2787 SOUNDTOUCH_LIBS="$SOUNDTOUCH_LIBS -lBPM"],
2788 [PKG_CHECK_MODULES(SOUNDTOUCH, libSoundTouch >= 1.4,
2789 [HAVE_SOUNDTOUCH=yes],
2790 [PKG_CHECK_MODULES(SOUNDTOUCH, libSoundTouch,
2791 [HAVE_SOUNDTOUCH=yes
2792 HAVE_SOUNDTOUCH_1_4=no
2793 SOUNDTOUCH_LIBS="$SOUNDTOUCH_LIBS -lBPM"],
2794 HAVE_SOUNDTOUCH=no)])])])])
2795 AC_SUBST(SOUNDTOUCH_CFLAGS)
2796 AC_SUBST(SOUNDTOUCH_LIBS)
2797 if test "x$HAVE_CXX" != "xyes"; then
2798 USE_SOUNDTOUCH=false
2799 AC_MSG_NOTICE([Not building soundtouch plugin: no C++ compiler found])
2801 if test "x$HAVE_SOUNDTOUCH" = "xyes" -a "x$HAVE_SOUNDTOUCH_1_4" = "xyes"; then
2802 AC_DEFINE([HAVE_SOUNDTOUCH_1_4], [1],
2803 [Defined if the available libSoundTouch is >= 1.4])
2808 translit(dnm, m, l) AM_CONDITIONAL(USE_SPC, true)
2809 AG_GST_CHECK_FEATURE(SPC, [spc decoder], spc, [
2810 AC_CHECK_HEADER(openspc.h, [
2811 AC_CHECK_LIB(openspc, OSPC_Init, [
2812 SPC_LIBS="-lopenspc"
2824 translit(dnm, m, l) AM_CONDITIONAL(USE_GME, true)
2825 AG_GST_CHECK_FEATURE(GME, [gme decoder], gme, [
2826 AC_CHECK_HEADER(gme/gme.h, [
2827 AC_CHECK_LIB(gme, gme_new_emu, [
2838 if test "x$HAVE_GME" = "xyes"; then
2839 AC_CHECK_LIB(gme, gme_enable_accuracy, [
2840 AC_DEFINE(HAVE_LIBGME_ACCURACY, 1, [Define if gme 0.5.6 or newer is available])
2846 translit(dnm, m, l) AM_CONDITIONAL(USE_XVID, true)
2847 AG_GST_CHECK_FEATURE(XVID, [xvid plugins], xvid, [
2849 AC_CHECK_HEADER(xvid.h, [
2851 LIBS="$PTHREAD_LIBS $LIBM"
2852 AC_CHECK_LIB(xvidcore, xvid_encore, [
2853 AC_CHECK_LIB(xvidcore, xvid_decore, [
2854 AC_CHECK_LIB(xvidcore, xvid_global, [
2855 AC_MSG_CHECKING([for up-to-date XviD API version])
2856 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <xvid.h>]], [[
2857 #if XVID_API_MAJOR(XVID_API) != 4
2858 #error "Incompatible XviD API version"
2860 #if XVID_API_MAJOR(XVID_API) == 4 && XVID_API_MINOR(XVID_API) < 3
2861 #error "Incompatible XviD API version"
2863 ]])],[ AC_MSG_RESULT(yes)
2864 XVID_LIBS="-lxvidcore $LIBM"
2867 ],[AC_MSG_RESULT(no) ])
2876 translit(dnm, m, l) AM_CONDITIONAL(USE_DVB, true)
2877 AG_GST_CHECK_FEATURE(DVB, [DVB Source], dvb, [
2878 AC_MSG_CHECKING([Checking for up to date dvb installation])
2879 AC_CHECK_HEADER(linux/dvb/version.h, [
2880 AC_MSG_CHECKING([for up-to-date dvb API])
2881 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <linux/dvb/version.h>]], [[
2882 #if DVB_API_VERSION < 5 || (DVB_API_VERSION == 5 && DVB_API_VERSION_MINOR <= 4)
2883 #error "Incompatible dvb API"
2885 ]])], [ AC_MSG_RESULT(yes)
2887 ], [ AC_MSG_RESULT(no)
2894 translit(dnm, m, l) AM_CONDITIONAL(USE_WININET, true)
2895 AG_GST_CHECK_FEATURE(WININET, [Windows internet library], wininet, [
2896 AC_MSG_CHECKING([Checking for windows internet support])
2897 AC_CHECK_HEADERS([windows.h wininet.h],
2898 [HAVE_WININET="yes"], [HAVE_WININET="no"],
2899 [AC_INCLUDES_DEFAULT
2900 #include <windows.h>])
2904 translit(dnm, m, l) AM_CONDITIONAL(USE_ACM, true)
2905 AG_GST_CHECK_FEATURE(ACM, [Windows ACM library], acm, [
2906 AC_MSG_CHECKING([Checking for ACM support])
2907 AC_CHECK_HEADERS([windows.h msacm.h],
2909 AC_SUBST(ACMENC_CFLAGS)
2910 AC_SUBST(ACMMP3DEC_CFLAGS)
2912 [AC_INCLUDES_DEFAULT
2913 #include <windows.h>])
2917 translit(dnm, m, l) AM_CONDITIONAL(USE_VDPAU, true)
2918 AG_GST_CHECK_FEATURE(VDPAU, [VDPAU], vdpau, [
2923 PKG_CHECK_MODULES(VDPAU, vdpau, [HAVE_VDPAU="yes"],
2925 if test "$HAVE_VDPAU" = "no"; then
2926 saved_CPPFLAGS="$CPPFLAGS"
2927 AC_CHECK_HEADER([vdpau/vdpau.h], [HAVE_VDPAU_H=yes])
2929 if test -z "$HAVE_VDPAU_H"; then
2930 dnl Didn't find VDPAU header straight away.
2931 dnl Try /usr/include/nvidia. Need to clear caching vars first
2932 AC_MSG_NOTICE([VDPAU header not in standard path. Checking /usr/include/nvidia])
2933 unset ac_cv_header_vdpau_vdpau_h
2934 unset ac_cv_header_vdpau_vdpau_x11_h
2935 VDPAU_CFLAGS="-I/usr/include/nvidia"
2936 VDPAU_LIBS="-L/usr/lib/nvidia -lvdpau"
2937 CPPFLAGS="$VDPAU_CFLAGS $saved_CPPFLAGS"
2938 AC_CHECK_HEADER([vdpau/vdpau.h], [HAVE_VDPAU_H=yes])
2941 AC_CHECK_HEADER([vdpau/vdpau_x11.h], [HAVE_VDPAU_X11_H=yes])
2943 if test "x$HAVE_VDPAU_H" = "xyes" -a "x$HAVE_VDPAU_X11_H" = "xyes"; then
2944 dnl Found the headers - look for the lib
2945 AC_MSG_NOTICE([VDPAU headers found. Checking libraries])
2947 LIBS="$VDPAU_LIBS $saved_LIBS"
2948 AC_CHECK_LIB(vdpau,vdp_device_create_x11,[HAVE_VDPAU="yes"])
2954 if test "$HAVE_VDPAU" = "yes"; then
2955 AC_MSG_NOTICE([Found up to date VDPAU installation])
2956 AC_SUBST(VDPAU_CFLAGS)
2957 AC_SUBST(VDPAU_LIBS)
2962 translit(dnm, m, l) AM_CONDITIONAL(USE_SBC, true)
2963 AG_GST_CHECK_FEATURE(SBC, [SBC bluetooth audio codec], sbc, [
2964 AG_GST_PKG_CHECK_MODULES(SBC, [sbc >= 1.0])
2967 dnl *** schroedinger ***
2968 translit(dnm, m, l) AM_CONDITIONAL(USE_SCHRO, true)
2969 AG_GST_CHECK_FEATURE(SCHRO, [Schroedinger video codec], schro, [
2970 AG_GST_PKG_CHECK_MODULES(SCHRO, schroedinger-1.0 >= 1.0.10)
2974 translit(dnm, m, l) AM_CONDITIONAL(USE_ZBAR, true)
2975 AG_GST_CHECK_FEATURE(ZBAR, [ZBar barcode detector], zbar, [
2976 AG_GST_PKG_CHECK_MODULES(ZBAR, zbar >= 0.9)
2980 translit(dnm, m, l) AM_CONDITIONAL(USE_RTMP, true)
2981 AG_GST_CHECK_FEATURE(RTMP, [rtmp library], rtmp, [
2982 AG_GST_PKG_CHECK_MODULES(RTMP, librtmp)
2986 translit(dnm, m, l) AM_CONDITIONAL(USE_SPANDSP, true)
2987 AG_GST_CHECK_FEATURE(SPANDSP, [Spandsp], spandsp, [
2988 PKG_CHECK_MODULES(SPANDSP, spandsp >= 0.0.6, [
2989 HAVE_SPANDSP="yes" ], [
2993 AC_SUBST(SPANDSP_CFLAGS)
2994 AC_SUBST(SPANDSP_LIBS)
2996 dnl *** GSettings ***
2997 translit(dnm, m, l) AM_CONDITIONAL(USE_GSETTINGS, true)
2998 AG_GST_CHECK_FEATURE(GSETTINGS, [GSettings plugin], gsettings, [
2999 AG_GST_PKG_CHECK_MODULES(GSETTINGS, gio-2.0 >= 2.25.0)
3000 if test "x$HAVE_GSETTINGS" = "xyes"; then
3006 translit(dnm, m, l) AM_CONDITIONAL(USE_SNDIO, true)
3007 AG_GST_CHECK_FEATURE(SNDIO, [sndio audio], sndio, [
3008 AC_CHECK_HEADER(sndio.h, HAVE_SNDIO="yes", HAVE_SNDIO="no")
3009 if test "x$HAVE_SNDIO" = "xyes"; then
3010 AC_CHECK_LIB(sndio, sio_open, HAVE_SNDIO="yes", HAVE_SNDIO="no")
3011 if test "x$HAVE_SNDIO" = "xyes"; then
3013 AC_SUBST(SNDIO_LIBS)
3019 translit(dnm, m, l) AM_CONDITIONAL(USE_HLS, true)
3020 AG_GST_CHECK_FEATURE(HLS, [http live streaming plugin], hls, [
3021 PKG_CHECK_MODULES(NETTLE, nettle,
3023 AC_DEFINE(HAVE_NETTLE, 1, [Define if nettle is available])
3026 AM_PATH_LIBGCRYPT([1.2.0],
3028 AC_DEFINE(HAVE_LIBGCRYPT, 1, [Define if libgcrypt is available])
3031 PKG_CHECK_MODULES(OPENSSL, openssl,
3033 AC_DEFINE(HAVE_OPENSSL, 1, [Define if openssl is available])
3042 dnl *** x265 (H.265/HEVC encoder) ***
3043 translit(dnm, m, l) AM_CONDITIONAL(USE_X265, true)
3044 AG_GST_CHECK_FEATURE(X265, [x265 plug-in], x265, [
3045 AG_GST_PKG_CHECK_MODULES(X265, x265)
3050 dnl not building plugins with external dependencies,
3051 dnl but we still need to set the conditionals
3053 AM_CONDITIONAL(USE_ASSRENDER, false)
3054 AM_CONDITIONAL(USE_VOAMRWBENC, false)
3055 AM_CONDITIONAL(USE_VOAACENC, false)
3056 AM_CONDITIONAL(USE_APEXSINK, false)
3057 AM_CONDITIONAL(USE_BZ2, false)
3058 AM_CONDITIONAL(USE_CHROMAPRINT, false)
3059 AM_CONDITIONAL(USE_CURL, false)
3060 AM_CONDITIONAL(USE_SSH2, false)
3061 AM_CONDITIONAL(USE_DASH, false)
3062 AM_CONDITIONAL(USE_DC1394, false)
3063 AM_CONDITIONAL(USE_DECKLINK, false)
3064 AM_CONDITIONAL(DECKLINK_OSX, false)
3065 AM_CONDITIONAL(USE_DIRECTFB, false)
3066 AM_CONDITIONAL(USE_WAYLAND, false)
3067 AM_CONDITIONAL(USE_DAALA, false)
3068 AM_CONDITIONAL(USE_DTS, false)
3069 AM_CONDITIONAL(USE_EXIF, false)
3070 AM_CONDITIONAL(USE_RESINDVD, false)
3071 AM_CONDITIONAL(USE_FAAC, false)
3072 AM_CONDITIONAL(USE_FAAD, false)
3073 AM_CONDITIONAL(USE_FBDEV, false)
3074 AM_CONDITIONAL(USE_FLITE, false)
3075 AM_CONDITIONAL(USE_FLUIDSYNTH, false)
3076 AM_CONDITIONAL(USE_GL, false)
3077 AM_CONDITIONAL(USE_GSM, false)
3078 AM_CONDITIONAL(USE_HLS, false)
3079 AM_CONDITIONAL(USE_KATE, false)
3080 AM_CONDITIONAL(USE_TIGER, false)
3081 AM_CONDITIONAL(USE_LADSPA, false)
3082 AM_CONDITIONAL(USE_LV2, false)
3083 AM_CONDITIONAL(USE_LIBDE265, false)
3084 AM_CONDITIONAL(USE_LIBMMS, false)
3085 AM_CONDITIONAL(USE_LINSYS, false)
3086 AM_CONDITIONAL(USE_MODPLUG, false)
3087 AM_CONDITIONAL(USE_MIMIC, false)
3088 AM_CONDITIONAL(USE_MPEG2ENC, false)
3089 AM_CONDITIONAL(USE_MPG123, false)
3090 AM_CONDITIONAL(USE_MPLEX, false)
3091 AM_CONDITIONAL(USE_MUSEPACK, false)
3092 AM_CONDITIONAL(USE_MYTHTV, false)
3093 AM_CONDITIONAL(USE_NAS, false)
3094 AM_CONDITIONAL(USE_NEON, false)
3095 AM_CONDITIONAL(USE_OFA, false)
3096 AM_CONDITIONAL(USE_OPENAL, false)
3097 AM_CONDITIONAL(USE_OPENCV, false)
3098 AM_CONDITIONAL(USE_OPENEXR, false)
3099 AM_CONDITIONAL(USE_OPENJPEG, false)
3100 AM_CONDITIONAL(USE_OPENNI2, false)
3101 AM_CONDITIONAL(USE_OPUS, false)
3102 AM_CONDITIONAL(USE_PVR, false)
3103 AM_CONDITIONAL(USE_LIBVISUAL, false)
3104 AM_CONDITIONAL(USE_TIMIDITY, false)
3105 AM_CONDITIONAL(USE_WILDMIDI, false)
3106 AM_CONDITIONAL(USE_SDL, false)
3107 AM_CONDITIONAL(USE_SMOOTHSTREAMING, false)
3108 AM_CONDITIONAL(USE_SNDFILE, false)
3109 AM_CONDITIONAL(USE_SOUNDTOUCH, false)
3110 AM_CONDITIONAL(USE_SPANDSP, false)
3111 AM_CONDITIONAL(USE_SPC, false)
3112 AM_CONDITIONAL(USE_SRTP, false)
3113 AM_CONDITIONAL(USE_GME, false)
3114 AM_CONDITIONAL(USE_GSETTINGS, false)
3115 AM_CONDITIONAL(USE_XVID, false)
3116 AM_CONDITIONAL(USE_DVB, false)
3117 AM_CONDITIONAL(USE_WININET, false)
3118 AM_CONDITIONAL(USE_ACM, false)
3119 AM_CONDITIONAL(USE_VDPAU, false)
3120 AM_CONDITIONAL(USE_SBC, false)
3121 AM_CONDITIONAL(USE_SCHRO, false)
3122 AM_CONDITIONAL(USE_ZBAR, false)
3123 AM_CONDITIONAL(USE_RSVG, false)
3124 AM_CONDITIONAL(USE_RTMP, false)
3125 AM_CONDITIONAL(USE_TELETEXTDEC, false)
3126 AM_CONDITIONAL(USE_SNDIO, false)
3127 AM_CONDITIONAL(USE_UVCH264, false)
3128 AM_CONDITIONAL(USE_WEBP, false)
3129 AM_CONDITIONAL(USE_OPENH264, false)
3130 AM_CONDITIONAL(USE_X265, false)
3132 fi dnl of EXT plugins
3134 dnl *** finalize CFLAGS, LDFLAGS, LIBS
3137 dnl GST_OPTION_CFLAGS: common flags for profiling, debugging, errors, ...
3138 dnl GST_*: flags shared by built objects to link against GStreamer
3139 dnl GST_ALL_LDFLAGS: linker flags shared by all
3140 dnl GST_LIB_LDFLAGS: additional linker flags for all libaries
3141 dnl GST_LT_LDFLAGS: library versioning of our libraries
3142 dnl GST_PLUGIN_LDFLAGS: flags to be used for all plugins
3144 dnl GST_OPTION_CFLAGS
3145 if test "x$USE_DEBUG" = xyes; then
3148 AC_SUBST(PROFILE_CFLAGS)
3150 if test "x$PACKAGE_VERSION_NANO" = "x1"; then
3151 dnl Define _only_ during CVS (not pre-releases or releases)
3152 DEPRECATED_CFLAGS="-DGST_DISABLE_DEPRECATED"
3154 DEPRECATED_CFLAGS=""
3156 AC_SUBST(DEPRECATED_CFLAGS)
3158 dnl every flag in GST_OPTION_CFLAGS and GST_OPTION_CXXFLAGS can be overridden
3159 dnl at make time with e.g. make ERROR_CFLAGS=""
3160 GST_OPTION_CFLAGS="\$(WARNING_CFLAGS) \$(ERROR_CFLAGS) \$(DEBUG_CFLAGS) \$(PROFILE_CFLAGS) \$(GCOV_CFLAGS) \$(OPT_CFLAGS) \$(DEPRECATED_CFLAGS)"
3161 GST_OPTION_CXXFLAGS="\$(WARNING_CXXFLAGS) \$(ERROR_CXXFLAGS) \$(DEBUG_CFLAGS) \$(PROFILE_CFLAGS) \$(GCOV_CFLAGS) \$(OPT_CFLAGS) \$(DEPRECATED_CFLAGS)"
3162 GST_OPTION_OBJCFLAGS="\$(WARNING_OBJCFLAGS) \$(ERROR_OBJCFLAGS) \$(DEBUG_CFLAGS) \$(PROFILE_CFLAGS) \$(GCOV_CFLAGS) \$(OPT_CFLAGS) \$(DEPRECATED_CFLAGS)"
3163 AC_SUBST(GST_OPTION_CFLAGS)
3164 AC_SUBST(GST_OPTION_CXXFLAGS)
3165 AC_SUBST(GST_OPTION_OBJCFLAGS)
3167 dnl FIXME: do we want to rename to GST_ALL_* ?
3168 dnl prefer internal headers to already installed ones
3169 dnl also add builddir include for enumtypes and marshal
3170 dnl add GST_OPTION_CFLAGS, but overridable
3171 GST_CFLAGS="$GST_CFLAGS -DGST_USE_UNSTABLE_API"
3172 GST_CXXFLAGS="$GST_CFLAGS $GLIB_EXTRA_CFLAGS \$(GST_OPTION_CXXFLAGS)"
3173 GST_OBJCFLAGS="$GST_CFLAGS $GLIB_EXTRA_CFLAGS \$(GST_OPTION_OBJCFLAGS)"
3174 GST_CFLAGS="$GST_CFLAGS $GLIB_EXTRA_CFLAGS \$(GST_OPTION_CFLAGS)"
3175 AC_SUBST(GST_CFLAGS)
3176 AC_SUBST(GST_CXXFLAGS)
3177 AC_SUBST(GST_OBJCFLAGS)
3179 GST_PLUGINS_BAD_CXXFLAGS="-I\$(top_srcdir)/gst-libs -I\$(top_builddir)/gst-libs"
3180 GST_PLUGINS_BAD_OBJCFLAGS="-I\$(top_srcdir)/gst-libs -I\$(top_builddir)/gst-libs"
3181 GST_PLUGINS_BAD_CFLAGS="-I\$(top_srcdir)/gst-libs -I\$(top_builddir)/gst-libs"
3182 AC_SUBST(GST_PLUGINS_BAD_CFLAGS)
3183 AC_SUBST(GST_PLUGINS_BAD_CXXFLAGS)
3184 AC_SUBST(GST_PLUGINS_BAD_OBJCFLAGS)
3186 dnl LDFLAGS really should only contain flags, not libs - they get added before
3187 dnl whatevertarget_LIBS and -L flags here affect the rest of the linking
3188 GST_ALL_LDFLAGS="-no-undefined"
3189 AC_SUBST(GST_ALL_LDFLAGS)
3192 dnl linker flags shared by all libraries
3193 dnl LDFLAGS modifier defining exported symbols from built libraries
3194 dnl (export _gst_foo but not __gst_foo)
3195 GST_LIB_LDFLAGS="-export-symbols-regex ^_?\(gst_\|Gst\|GST_\).*"
3196 AC_SUBST(GST_LIB_LDFLAGS)
3198 dnl this really should only contain flags, not libs - they get added before
3199 dnl whatevertarget_LIBS and -L flags here affect the rest of the linking
3200 GST_PLUGIN_LDFLAGS="-module -avoid-version -export-symbols-regex '^[_]*gst_plugin_.*' $GST_ALL_LDFLAGS"
3201 AC_SUBST(GST_PLUGIN_LDFLAGS)
3203 dnl *** output files ***
3205 $MKDIR_P tests/check/orc
3213 gst-plugins-bad.spec
3215 gst/accurip/Makefile
3216 gst/adpcmdec/Makefile
3217 gst/adpcmenc/Makefile
3220 gst/audiofxbad/Makefile
3221 gst/audiomixer/Makefile
3222 gst/audiovisualizers/Makefile
3223 gst/autoconvert/Makefile
3225 gst/camerabin2/Makefile
3226 gst/cdxaparse/Makefile
3227 gst/coloreffects/Makefile
3228 gst/dataurisrc/Makefile
3230 gst/debugutils/Makefile
3231 gst/dvbsuboverlay/Makefile
3233 gst/faceoverlay/Makefile
3234 gst/festival/Makefile
3235 gst/fieldanalysis/Makefile
3236 gst/freeverb/Makefile
3238 gst/gaudieffects/Makefile
3239 gst/geometrictransform/Makefile
3241 gst/hdvparse/Makefile
3244 gst/interlace/Makefile
3245 gst/ivfparse/Makefile
3247 gst/jp2kdecimator/Makefile
3248 gst/jpegformat/Makefile
3250 gst/liveadder/Makefile
3252 gst/mpegdemux/Makefile
3253 gst/mpegtsdemux/Makefile
3254 gst/mpegtsmux/Makefile
3255 gst/mpegtsmux/tsmux/Makefile
3256 gst/mpegpsmux/Makefile
3259 gst/nuvdemux/Makefile
3260 gst/patchdetect/Makefile
3261 gst/pcapparse/Makefile
3263 gst/rawparse/Makefile
3265 gst/removesilence/Makefile
3269 gst/segmentclip/Makefile
3276 gst/videofilters/Makefile
3277 gst/videomeasure/Makefile
3278 gst/videoparsers/Makefile
3279 gst/videosignal/Makefile
3283 gst/compositor/Makefile
3285 gst-libs/gst/Makefile
3286 gst-libs/gst/basecamerabinsrc/Makefile
3287 gst-libs/gst/gl/Makefile
3288 gst-libs/gst/gl/android/Makefile
3289 gst-libs/gst/gl/cocoa/Makefile
3290 gst-libs/gst/gl/dispmanx/Makefile
3291 gst-libs/gst/gl/glprototypes/Makefile
3292 gst-libs/gst/gl/eagl/Makefile
3293 gst-libs/gst/gl/egl/Makefile
3294 gst-libs/gst/gl/wayland/Makefile
3295 gst-libs/gst/gl/win32/Makefile
3296 gst-libs/gst/gl/x11/Makefile
3297 gst-libs/gst/insertbin/Makefile
3298 gst-libs/gst/interfaces/Makefile
3299 gst-libs/gst/codecparsers/Makefile
3300 gst-libs/gst/mpegts/Makefile
3301 gst-libs/gst/uridownloader/Makefile
3302 gst-libs/gst/wayland/Makefile
3303 gst-libs/gst/base/Makefile
3304 gst-libs/gst/video/Makefile
3306 sys/dshowdecwrapper/Makefile
3308 sys/acmmp3dec/Makefile
3309 sys/androidmedia/Makefile
3310 sys/applemedia/Makefile
3311 sys/applemedia-nonpublic/Makefile
3314 sys/d3dvideosink/Makefile
3315 sys/decklink/Makefile
3316 sys/directdraw/Makefile
3317 sys/directsound/Makefile
3318 sys/dshowsrcwrapper/Makefile
3319 sys/dshowvideosink/Makefile
3323 sys/opensles/Makefile
3324 sys/osxvideo/Makefile
3325 sys/qtwrapper/Makefile
3327 sys/uvch264/Makefile
3332 sys/wininet/Makefile
3334 sys/winscreencap/Makefile
3336 tests/check/Makefile
3337 tests/files/Makefile
3338 tests/examples/Makefile
3339 tests/examples/camerabin2/Makefile
3340 tests/examples/directfb/Makefile
3341 tests/examples/gl/Makefile
3342 tests/examples/gl/cocoa/Makefile
3343 tests/examples/gl/clutter/Makefile
3344 tests/examples/gl/generic/Makefile
3345 tests/examples/gl/generic/cube/Makefile
3346 tests/examples/gl/generic/cubeyuv/Makefile
3347 tests/examples/gl/generic/doublecube/Makefile
3348 tests/examples/gl/generic/recordgraphic/Makefile
3349 tests/examples/gl/gtk/Makefile
3350 tests/examples/gl/gtk/gtkvideooverlay/Makefile
3351 tests/examples/gl/gtk/filternovideooverlay/Makefile
3352 tests/examples/gl/gtk/filtervideooverlay/Makefile
3353 tests/examples/gl/gtk/fxtest/Makefile
3354 tests/examples/gl/gtk/switchvideooverlay/Makefile
3355 tests/examples/gl/qt/Makefile
3356 tests/examples/gl/sdl/Makefile
3357 tests/examples/mpegts/Makefile
3358 tests/examples/mxf/Makefile
3359 tests/examples/opencv/Makefile
3360 tests/examples/uvch264/Makefile
3361 tests/icles/Makefile
3362 ext/voamrwbenc/Makefile
3363 ext/voaacenc/Makefile
3364 ext/assrender/Makefile
3365 ext/apexsink/Makefile
3367 ext/chromaprint/Makefile
3371 ext/directfb/Makefile
3372 ext/wayland/Makefile
3379 ext/fluidsynth/Makefile
3385 ext/libde265/Makefile
3387 ext/libvisual/Makefile
3389 ext/modplug/Makefile
3390 ext/mpeg2enc/Makefile
3394 ext/musepack/Makefile
3401 ext/openexr/Makefile
3402 ext/openh264/Makefile
3403 ext/openjpeg/Makefile
3404 ext/openni2/Makefile
3407 ext/resindvd/Makefile
3410 ext/schroedinger/Makefile
3412 ext/smoothstreaming/Makefile
3413 ext/sndfile/Makefile
3414 ext/soundtouch/Makefile
3415 ext/spandsp/Makefile
3418 ext/teletextdec/Makefile
3420 ext/gsettings/Makefile
3421 ext/gsettings/org.freedesktop.gstreamer.default-elements.gschema.xml
3423 ext/timidity/Makefile
3430 docs/plugins/Makefile
3432 docs/version.entities
3434 pkgconfig/gstreamer-plugins-bad.pc
3435 pkgconfig/gstreamer-plugins-bad-uninstalled.pc
3436 pkgconfig/gstreamer-codecparsers.pc
3437 pkgconfig/gstreamer-codecparsers-uninstalled.pc
3438 pkgconfig/gstreamer-insertbin.pc
3439 pkgconfig/gstreamer-insertbin-uninstalled.pc
3440 pkgconfig/gstreamer-gl.pc
3441 pkgconfig/gstreamer-gl-uninstalled.pc
3442 pkgconfig/gstreamer-mpegts.pc
3443 pkgconfig/gstreamer-mpegts-uninstalled.pc
3444 pkgconfig/gstreamer-wayland.pc
3445 pkgconfig/gstreamer-wayland-uninstalled.pc
3446 pkgconfig/gstreamer-bad-base.pc
3447 pkgconfig/gstreamer-bad-base-uninstalled.pc
3448 pkgconfig/gstreamer-bad-video.pc
3449 pkgconfig/gstreamer-bad-video-uninstalled.pc
3454 dnl Create the config.h file for Visual Studio builds
3455 dnl Beware of spaces and /'s in some of the shell variable contents.
3457 -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"/' \
3458 -e 's/.* GETTEXT_PACKAGE$/#define GETTEXT_PACKAGE "'$GETTEXT_PACKAGE'"/' \
3459 -e 's/.* GST_DATADIR$/#define GST_DATADIR PREFIX "\\\\share"/' \
3460 -e 's/.* GST_LEVEL_DEFAULT$/#define GST_LEVEL_DEFAULT GST_LEVEL_ERROR/' \
3461 -e 's/.* GST_LICENSE$/#define GST_LICENSE "'$GST_LICENSE'"/' \
3462 -e 's/.* GST_API_VERSION$/#define GST_API_VERSION "'$GST_API_VERSION'"/' \
3463 -e "s,.* GST_PACKAGE_NAME$,#define GST_PACKAGE_NAME \"${GST_PACKAGE_NAME}\"," \
3464 -e 's/.* GST_PACKAGE_ORIGIN$/#define GST_PACKAGE_ORIGIN "Unknown package origin"/' \
3465 -e "s,.* GST_PACKAGE_RELEASE_DATETIME$,#define GST_PACKAGE_RELEASE_DATETIME \"${GST_PACKAGE_RELEASE_DATETIME}\"," \
3466 -e 's/.* HAVE_CPU_I386$/#define HAVE_CPU_I386 1/' \
3467 -e 's/.* HAVE_STDLIB_H$/#define HAVE_STDLIB_H 1/' \
3468 -e 's/.* HAVE_STRING_H$/#define HAVE_STRING_H 1/' \
3469 -e 's/.* HAVE_SYS_STAT_H$/#define HAVE_SYS_STAT_H 1/' \
3470 -e 's/.* HAVE_SYS_TYPES_H$/#define HAVE_SYS_TYPES_H 1/' \
3471 -e 's/.* HAVE_WIN32$/#define HAVE_WIN32 1/' \
3472 -e 's/.* HOST_CPU$/#define HOST_CPU "i686"/' \
3473 -e 's/.* LIBDIR$/#ifdef _DEBUG\n# define LIBDIR PREFIX "\\\\debug\\\\lib"\n#else\n# define LIBDIR PREFIX "\\\\lib"\n#endif/' \
3474 -e 's/.* LOCALEDIR$/#define LOCALEDIR PREFIX "\\\\share\\\\locale"/' \
3475 -e "s/.* PACKAGE$/#define PACKAGE \"$PACKAGE\"/" \
3476 -e 's/.* PACKAGE_BUGREPORT$/#define PACKAGE_BUGREPORT "http:\/\/bugzilla.gnome.org\/enter_bug.cgi?product=GStreamer"/' \
3477 -e "s/.* PACKAGE_NAME$/#define PACKAGE_NAME \"$PACKAGE_NAME\"/" \
3478 -e "s/.* PACKAGE_STRING$/#define PACKAGE_STRING \"$PACKAGE_STRING\"/" \
3479 -e 's/.* PACKAGE_TARNAME$/#define PACKAGE_TARNAME "'$PACKAGE_TARNAME'"/' \
3480 -e 's/.* PACKAGE_VERSION$/#define PACKAGE_VERSION "'$PACKAGE_VERSION'"/' \
3481 -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/' \
3482 -e 's/.* VERSION$/#define VERSION "'$VERSION'"/' \
3483 -e "s/.* DEFAULT_AUDIOSINK$/#define DEFAULT_AUDIOSINK \"directsoundsink\"/" \
3484 -e "s/.* DEFAULT_AUDIOSRC$/#define DEFAULT_AUDIOSRC \"audiotestsrc\"/" \
3485 -e "s/.* DEFAULT_VIDEOSRC$/#define DEFAULT_VIDEOSRC \"videotestsrc\"/" \
3486 -e "s/.* DEFAULT_VISUALIZER$/#define DEFAULT_VISUALIZER \"goom\"/" \
3487 -e 's/.* HAVE_WINDOWS_H$/#define HAVE_WINDOWS_H 1/' \
3488 -e 's/.* HAVE_WININET_H$/#define HAVE_WININET_H 1/' \
3489 -e 's/.* HAVE_WINSOCK2_H$/#define HAVE_WINSOCK2_H 1/' \
3490 -e 's/.* HAVE_WS2TCPIP_H$/#define HAVE_WS2TCPIP_H 1/' \
3491 config.h.in >win32/common/config.h-new
3495 AG_GST_OUTPUT_PLUGINS