rfbsrc: port to 1.0
[platform/upstream/gstreamer.git] / configure.ac
1 AC_PREREQ([2.68])
2
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.1.0.1],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-bad])
7
8 AG_GST_INIT
9
10 dnl initialize automake
11 AM_INIT_AUTOMAKE([-Wno-portability 1.11 no-dist-gzip dist-xz tar-ustar])
12
13 dnl define PACKAGE_VERSION_* variables
14 AS_VERSION
15
16 dnl check if this is a release version
17 AS_NANO(GST_GIT="no", GST_GIT="yes")
18
19 dnl can autoconf find the source ?
20 AC_CONFIG_SRCDIR([docs/plugins/gst-plugins-bad-plugins-docs.sgml])
21
22 dnl define the output header for config
23 AC_CONFIG_HEADERS([config.h])
24
25 dnl AM_MAINTAINER_MODE only provides the option to configure to enable it
26 AM_MAINTAINER_MODE([enable])
27
28 dnl sets host_* variables
29 AC_CANONICAL_HOST
30
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)])
35
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
38 GST_API_VERSION=1.0
39 AC_SUBST(GST_API_VERSION)
40 AC_DEFINE_UNQUOTED(GST_API_VERSION, "$GST_API_VERSION",
41   [GStreamer API Version])
42
43 AG_GST_LIBTOOL_PREPARE
44
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, 2, 0, 2)
52
53 dnl *** required versions of GStreamer stuff ***
54 GST_REQ=1.1.0.1
55 GSTPB_REQ=1.1.0
56
57 dnl *** autotools stuff ****
58
59 dnl allow for different autotools
60 AS_AUTOTOOLS_ALTERNATE
61
62 dnl Add parameters for aclocal
63 AC_SUBST(ACLOCAL_AMFLAGS, "-I m4 -I common/m4")
64
65 dnl set up gettext
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])
70
71 dnl *** check for arguments to configure ***
72
73 AG_GST_ARG_DISABLE_FATAL_WARNINGS
74
75 AG_GST_ARG_DEBUG
76 AG_GST_ARG_PROFILING
77 AG_GST_ARG_VALGRIND
78 AG_GST_ARG_GCOV
79
80 AG_GST_ARG_EXAMPLES
81
82 AG_GST_ARG_WITH_PKG_CONFIG_PATH
83 AG_GST_ARG_WITH_PACKAGE_NAME
84 AG_GST_ARG_WITH_PACKAGE_ORIGIN
85
86 AG_GST_ARG_WITH_PLUGINS
87
88 AG_GST_ARG_ENABLE_EXTERNAL
89
90 AG_GST_ARG_ENABLE_EXPERIMENTAL
91
92 AG_GST_PKG_CONFIG_PATH
93
94 dnl *** checks for platform ***
95 AG_GST_PLATFORM
96
97 dnl * hardware/architecture *
98
99 dnl common/m4/gst-arch.m4
100 dnl check CPU type
101 AG_GST_ARCH
102
103 dnl Determine endianness
104 AC_C_BIGENDIAN
105
106 dnl *** checks for programs ***
107
108 dnl find a compiler
109 AC_PROG_CC
110 AC_PROG_CC_STDC
111
112 dnl determine c++ compiler
113 AC_PROG_CXX
114 dnl determine if c++ is available on this system
115 AC_CHECK_PROG(HAVE_CXX, $CXX, yes, no)
116
117 AC_PROG_OBJC
118
119 dnl check if the compiler supports '-c' and '-o' options
120 AM_PROG_CC_C_O
121
122 dnl check if the compiler supports do while(0) macros
123 AG_GST_CHECK_DOWHILE_MACROS
124
125 AC_PATH_PROG(VALGRIND_PATH, valgrind, no)
126 AM_CONDITIONAL(HAVE_VALGRIND, test ! "x$VALGRIND_PATH" = "xno")
127
128 dnl check for gobject-introspection
129 GOBJECT_INTROSPECTION_CHECK([1.31.1])
130
131 dnl check for documentation tools
132 GTK_DOC_CHECK([1.12])
133 AG_GST_PLUGIN_DOCS([1.12])
134
135 dnl *** checks for libraries ***
136
137 dnl check for libm, for sin() etc.
138 LT_LIB_M
139 AC_SUBST(LIBM)
140
141 AC_FUNC_MMAP
142
143 dnl *** checks for header files ***
144
145 AC_CHECK_HEADERS([unistd.h], HAVE_UNISTD_H=yes)
146 AM_CONDITIONAL(HAVE_UNISTD_H, test "x$HAVE_UNISTD_H" = "xyes")
147
148 if test "x$HAVE_UNISTD_H" != "xyes"; then
149   GST_PLUGINS_SELECTED=`echo $GST_PLUGINS_SELECTED | $SED -e s/festival//`
150 fi
151
152 AC_CHECK_HEADERS([sys/time.h])
153
154 dnl used by ext/dts
155 AX_CREATE_STDINT_H
156
157 AC_CHECK_HEADERS([pthread.h], HAVE_PTHREAD_H=yes)
158 AM_CONDITIONAL(HAVE_PTHREAD_H, test "x$HAVE_PTHREAD_H" = "xyes")
159
160 if test "x$HAVE_PTHREAD_H" != "xyes"; then
161   GST_PLUGINS_SELECTED=`echo $GST_PLUGINS_SELECTED | $SED -e s/dccp//`
162 fi
163
164 dnl *** checks for types/defines ***
165
166 dnl Check for FIONREAD ioctl declaration
167 dnl used in gst/dccp
168 GST_CHECK_FIONREAD
169
170 dnl *** checks for structures ***
171
172 dnl *** checks for compiler characteristics ***
173
174 dnl *** checks for library functions ***
175 AC_CHECK_FUNCS([gmtime_r])
176
177 dnl *** checks for headers ***
178 AC_CHECK_HEADERS([sys/utsname.h])
179
180 dnl *** checks for dependency libraries ***
181
182 dnl *** checks for socket and nsl libraries ***
183 AC_CHECK_FUNC(socket,,[AC_CHECK_LIB(socket,socket)])
184 AC_CHECK_FUNC(gethostbyname,,[AC_CHECK_LIB(nsl,gethostbyname)])
185
186 dnl GLib is required
187 GLIB_REQ=2.32.0
188 AG_GST_GLIB_CHECK([$GLIB_REQ])
189
190 dnl checks for gstreamer
191 dnl uninstalled is selected preferentially -- see pkg-config(1)
192 AG_GST_CHECK_GST($GST_API_VERSION, [$GST_REQ], yes)
193 AG_GST_CHECK_GST_BASE($GST_API_VERSION, [$GST_REQ], yes)
194 AG_GST_CHECK_GST_CHECK($GST_API_VERSION, [$GST_REQ], no)
195 AG_GST_CHECK_GST_CONTROLLER($GST_API_VERSION, [$GST_REQ], yes)
196 AM_CONDITIONAL(HAVE_GST_CHECK, test "x$HAVE_GST_CHECK" = "xyes")
197
198 AG_GST_CHECK_GST_PLUGINS_BASE($GST_API_VERSION, [$GSTPB_REQ], yes)
199
200 dnl check for uninstalled plugin directories for unit tests
201 AG_GST_CHECK_UNINSTALLED_SETUP([
202   AG_GST_CHECK_GST_PLUGINS_GOOD($GST_API_VERSION, [0.11.0])
203   AG_GST_CHECK_GST_PLUGINS_UGLY($GST_API_VERSION, [0.11.0])
204   AG_GST_CHECK_GST_PLUGINS_LIBAV($GST_API_VERSION, [0.11.0])
205 ])
206
207 dnl Check for documentation xrefs
208 GLIB_PREFIX="`$PKG_CONFIG --variable=prefix glib-2.0`"
209 GST_PREFIX="`$PKG_CONFIG --variable=prefix gstreamer-$GST_API_VERSION`"
210 GSTPB_PREFIX="`$PKG_CONFIG --variable=prefix gstreamer-plugins-base-$GST_API_VERSION`"
211 AC_SUBST(GLIB_PREFIX)
212 AC_SUBST(GST_PREFIX)
213 AC_SUBST(GSTPB_PREFIX)
214
215 dnl GTK is optional and used in examples
216 HAVE_GTK=NO
217 GTK2_REQ=2.14.0
218 GTK3_REQ=2.91.3
219 if test "x$BUILD_EXAMPLES" = "xyes"; then
220   AC_MSG_CHECKING([which gtk+ version to compile examples against (optional)])
221   AC_ARG_WITH([gtk],
222     AS_HELP_STRING([--with-gtk=3.0|2.0],[which gtk+ version to compile against (default: 2.0)]),
223     [case "$with_gtk" in
224         2.0) GTK_REQ=$GTK2_REQ ;;
225         3.0) GTK_REQ=$GTK3_REQ ;;
226         *) AC_MSG_ERROR([invalid gtk+ version specified]);;
227     esac],
228     [with_gtk=2.0
229      GTK_REQ=$GTK2_REQ])
230   AC_MSG_RESULT([$with_gtk (>= $GTK_REQ)])
231   PKG_CHECK_MODULES(GTK, gtk+-x11-$with_gtk >= $GTK_REQ, HAVE_GTK=yes, HAVE_GTK=no)
232   AC_SUBST(GTK_LIBS)
233   AC_SUBST(GTK_CFLAGS)
234 fi
235 AM_CONDITIONAL(HAVE_GTK, test "x$HAVE_GTK" = "xyes")
236
237
238
239 dnl Needed for GtkBuilder to autoconnect signals
240 PKG_CHECK_MODULES(GMODULE_EXPORT, gmodule-export-2.0, HAVE_GMODULE_EXPORT=yes, HAVE_GMODULE_EXPORT=no)
241
242 dnl Needed by plugins that use g_module_*() API
243 PKG_CHECK_MODULES(GMODULE_NO_EXPORT, gmodule-no-export-2.0)
244
245 dnl x11 is optional for librfb and eglglessink
246 HAVE_X11=NO
247 PKG_CHECK_MODULES(X11, x11, HAVE_X11=yes, HAVE_X11=no)
248 AC_SUBST(X11_LIBS)
249 AC_SUBST(X11_CFLAGS)
250 AC_SUBST(HAVE_X11)
251 AM_CONDITIONAL(HAVE_X11, test "x$HAVE_X11" = "xyes")
252 if test "x$HAVE_X11" = "xyes"; then
253   AC_DEFINE(HAVE_X11, 1, [Define if you have X11 library])
254 fi
255
256 dnl exif (used on jifmux tests) ****
257 PKG_CHECK_MODULES(EXIF, libexif >= 0.6.16, HAVE_EXIF="yes", HAVE_EXIF="no")
258 AC_SUBST(EXIF_LIBS)
259 AC_SUBST(EXIF_CFLAGS)
260 AM_CONDITIONAL(USE_EXIF, test "x$HAVE_EXIF" = "xyes")
261
262 dnl Orc
263 ORC_CHECK([0.4.17])
264
265 dnl set license and copyright notice
266 GST_LICENSE="LGPL"
267 AC_DEFINE_UNQUOTED(GST_LICENSE, "$GST_LICENSE", [GStreamer license])
268 AC_SUBST(GST_LICENSE)
269
270 dnl define LIBDIR so we can inform people where we live
271 AS_AC_EXPAND(LIBDIR, $libdir)
272 AC_DEFINE_UNQUOTED(LIBDIR, "$LIBDIR", [library dir])
273
274 dnl set location of plugin directory
275 AG_GST_SET_PLUGINDIR
276
277 dnl set release date/time
278 AG_GST_SET_PACKAGE_RELEASE_DATETIME_WITH_NANO([$PACKAGE_VERSION_NANO],
279   ["${srcdir}/gst-plugins-bad.doap"],
280   [$PACKAGE_VERSION_MAJOR.$PACKAGE_VERSION_MINOR.$PACKAGE_VERSION_MICRO])
281
282 dnl build static plugins or not
283 AC_MSG_CHECKING([whether to build static plugins or not])
284 AC_ARG_ENABLE(
285   static-plugins,
286   AC_HELP_STRING(
287     [--enable-static-plugins],
288     [build static plugins @<:@default=no@:>@]),
289   [AS_CASE(
290     [$enableval], [no], [], [yes], [],
291     [AC_MSG_ERROR([bad value "$enableval" for --enable-static-plugins])])],
292   [enable_static_plugins=no])
293 AC_MSG_RESULT([$enable_static_plugins])
294 if test "x$enable_static_plugins" = xyes; then
295   AC_DEFINE(GST_PLUGIN_BUILD_STATIC, 1,
296     [Define if static plugins should be built])
297   GST_PLUGIN_LIBTOOLFLAGS=""
298 else
299   GST_PLUGIN_LIBTOOLFLAGS="--tag=disable-static"
300 fi
301 AC_SUBST(GST_PLUGIN_LIBTOOLFLAGS)
302 AM_CONDITIONAL(GST_PLUGIN_BUILD_STATIC, test "x$enable_static_plugins" = "xyes")
303
304 # set by AG_GST_PARSE_SUBSYSTEM_DISABLES above
305 dnl make sure it doesn't complain about unused variables if debugging is disabled
306 NO_WARNINGS=""
307 AG_GST_CHECK_GST_DEBUG_DISABLED([NO_WARNINGS="-Wno-unused"], [NO_WARNINGS=""])
308
309 dnl define an ERROR_CFLAGS Makefile variable
310 dnl -Waggregate-return - libexif returns aggregates
311 dnl -Wundef - Windows headers check _MSC_VER unconditionally
312 AG_GST_SET_ERROR_CFLAGS($FATAL_WARNINGS, [
313     -Wmissing-declarations -Wmissing-prototypes -Wredundant-decls
314     -Wwrite-strings -Wformat-security -Wold-style-definition
315     -Winit-self -Wmissing-include-dirs -Waddress -Wno-multichar
316     -Wnested-externs $NO_WARNINGS])
317
318 dnl define an ERROR_CXXFLAGS Makefile variable
319 AG_GST_SET_ERROR_CXXFLAGS($FATAL_WARNINGS, [
320     -Wmissing-declarations -Wredundant-decls
321     -Wwrite-strings -Wformat-nonliteral -Wformat-security
322     -Winit-self -Wmissing-include-dirs -Waddress -Wno-multichar $NO_WARNINGS])
323
324 dnl define an ERROR_OBJCFLAGS Makefile variable
325 AG_GST_SET_ERROR_OBJCFLAGS($FATAL_WARNINGS, [
326     -Wmissing-declarations -Wredundant-decls
327     -Wwrite-strings -Wformat-nonliteral -Wformat-security
328     -Winit-self -Wmissing-include-dirs -Wno-multichar $NO_WARNINGS])
329
330 dnl define correct level for debugging messages
331 AG_GST_SET_LEVEL_DEFAULT($GST_GIT)
332
333 dnl used in examples
334 AG_GST_DEFAULT_ELEMENTS
335
336 dnl *** plug-ins to include ***
337 dnl Non ported plugins (non-dependant, then dependant)
338 dnl Make sure you have a space before and after all plugins
339 GST_PLUGINS_NONPORTED=" cdxaparse \
340  dccp faceoverlay \
341  hdvparse ivfparse jp2kdecimator \
342  mve mythtv nsf nuvdemux \
343  patchdetect real \
344  sdi stereo tta \
345  videomeasure videosignal vmnc \
346  linsys vcd \
347  apexsink cdaudio dc1394 dirac directfb \
348  gsettings \
349  musepack musicbrainz nas neon ofa openal sdl sndfile timidity \
350  directdraw direct3d9 acm wininet \
351  xvid lv2 teletextdec sndio osx_video quicktime"
352 AC_SUBST(GST_PLUGINS_NONPORTED)
353
354 dnl these are all the gst plug-ins, compilable without additional libs
355 AG_GST_CHECK_PLUGIN(accurip)
356 AG_GST_CHECK_PLUGIN(adpcmdec)
357 AG_GST_CHECK_PLUGIN(adpcmenc)
358 AG_GST_CHECK_PLUGIN(aiff)
359 AG_GST_CHECK_PLUGIN(asfmux)
360 AG_GST_CHECK_PLUGIN(audiovisualizers)
361 AG_GST_CHECK_PLUGIN(autoconvert)
362 AG_GST_CHECK_PLUGIN(bayer)
363 AG_GST_CHECK_PLUGIN(camerabin2)
364 AG_GST_CHECK_PLUGIN(cdxaparse)
365 AG_GST_CHECK_PLUGIN(coloreffects)
366 AG_GST_CHECK_PLUGIN(dataurisrc)
367 AG_GST_CHECK_PLUGIN(dccp)
368 AG_GST_CHECK_PLUGIN(debugutils)
369 AG_GST_CHECK_PLUGIN(dvbsuboverlay)
370 AG_GST_CHECK_PLUGIN(dvdspu)
371 AG_GST_CHECK_PLUGIN(faceoverlay)
372 AG_GST_CHECK_PLUGIN(festival)
373 AG_GST_CHECK_PLUGIN(fieldanalysis)
374 AG_GST_CHECK_PLUGIN(freeverb)
375 AG_GST_CHECK_PLUGIN(frei0r)
376 AG_GST_CHECK_PLUGIN(gaudieffects)
377 AG_GST_CHECK_PLUGIN(geometrictransform)
378 AG_GST_CHECK_PLUGIN(gdp)
379 AG_GST_CHECK_PLUGIN(hdvparse)
380 AG_GST_CHECK_PLUGIN(id3tag)
381 AG_GST_CHECK_PLUGIN(inter)
382 AG_GST_CHECK_PLUGIN(interlace)
383 AG_GST_CHECK_PLUGIN(ivfparse)
384 AG_GST_CHECK_PLUGIN(ivtc)
385 AG_GST_CHECK_PLUGIN(jp2kdecimator)
386 AG_GST_CHECK_PLUGIN(jpegformat)
387 AG_GST_CHECK_PLUGIN(librfb)
388 AG_GST_CHECK_PLUGIN(liveadder)
389 AG_GST_CHECK_PLUGIN(midi)
390 AG_GST_CHECK_PLUGIN(mpegdemux)
391 AG_GST_CHECK_PLUGIN(mpegtsdemux)
392 AG_GST_CHECK_PLUGIN(mpegtsmux)
393 AG_GST_CHECK_PLUGIN(mpegpsmux)
394 AG_GST_CHECK_PLUGIN(mve)
395 AG_GST_CHECK_PLUGIN(mxf)
396 AG_GST_CHECK_PLUGIN(nsf)
397 AG_GST_CHECK_PLUGIN(nuvdemux)
398 AG_GST_CHECK_PLUGIN(patchdetect)
399 AG_GST_CHECK_PLUGIN(pcapparse)
400 AG_GST_CHECK_PLUGIN(pnm)
401 AG_GST_CHECK_PLUGIN(rawparse)
402 AG_GST_CHECK_PLUGIN(real)
403 AG_GST_CHECK_PLUGIN(removesilence)
404 AG_GST_CHECK_PLUGIN(sdi)
405 AG_GST_CHECK_PLUGIN(sdp)
406 AG_GST_CHECK_PLUGIN(segmentclip)
407 AG_GST_CHECK_PLUGIN(siren)
408 AG_GST_CHECK_PLUGIN(smooth)
409 AG_GST_CHECK_PLUGIN(speed)
410 AG_GST_CHECK_PLUGIN(subenc)
411 AG_GST_CHECK_PLUGIN(stereo)
412 AG_GST_CHECK_PLUGIN(tta)
413 AG_GST_CHECK_PLUGIN(videofilters)
414 AG_GST_CHECK_PLUGIN(videomeasure)
415 AG_GST_CHECK_PLUGIN(videoparsers)
416 AG_GST_CHECK_PLUGIN(videosignal)
417 AG_GST_CHECK_PLUGIN(vmnc)
418 AG_GST_CHECK_PLUGIN(y4m)
419 AG_GST_CHECK_PLUGIN(yadif)
420
421 dnl *** plug-ins to exclude ***
422
423 dnl real plugin only works on i386 and x86_64 for the time being.
424 if test "x$HAVE_CPU_I386" != "xyes" && test "x$HAVE_CPU_X86_64" != "xyes"; then
425   AC_MSG_WARN([Not building real plugin, only works on 32bit and 64bit x86 platforms])
426   AG_GST_DISABLE_PLUGIN(real)
427 fi
428
429 dnl disable gst plugins we might not be able to build on this
430 dnl platform: (ugly but minimally invasive)
431 dnl FIXME: maybe move to sys, or make work with winsock2
432 AC_CHECK_HEADERS([sys/socket.h], HAVE_SYS_SOCKET_H=yes)
433 AC_CHECK_HEADERS([winsock2.h], HAVE_WINSOCK2_H=yes)
434
435 if test "x$HAVE_WINSOCK2_H" = "xyes"; then
436   WINSOCK2_LIBS="-lws2_32"
437   AC_SUBST(WINSOCK2_LIBS)
438 fi
439
440 if test "x$HAVE_PTHREAD_H" = "xyes"; then
441   DCCP_LIBS="$DCCP_LIBS -lpthread"
442   AC_SUBST(DCCP_LIBS)
443 else
444   AG_GST_DISABLE_PLUGIN(dccp)
445 fi
446
447 dnl *** gst-libs/gst/egl ***
448 AC_ARG_WITH([egl-window-system],
449               AS_HELP_STRING([--with-egl-window-system],[EGL window system to use (x11, mali-fb, rpi, ios, none)]),
450               [EGL_WINDOW_SYSTEM="$withval"],
451               [EGL_WINDOW_SYSTEM="auto"])
452
453 if test x"$EGL_WINDOW_SYSTEM" = x"auto"; then
454   dnl Mali
455   old_LIBS=$LIBS
456   old_CFLAGS=$CFLAGS
457   LIBS="$LIBS -lUMP $EGL_LIBS"
458   CFLAGS="$CFLAGS $EGL_CFLAGS"
459   AC_CHECK_LIB([Mali], [mali_image_create], [EGL_WINDOW_SYSTEM="mali-fb"], [EGL_WINDOW_SYSTEM="auto"])
460   LIBS=$old_LIBS
461   CFLAGS=$old_CFLAGS
462
463   dnl RPi
464   if test x"$EGL_WINDOW_SYSTEM" = x"auto"; then
465       old_LIBS=$LIBS
466       old_CFLAGS=$CFLAGS
467       LIBS="$LIBS -lvcos -lvchiq_arm"
468       CFLAGS="$CFLAGS"
469       AC_CHECK_LIB([bcm_host], [bcm_host_init],
470         [
471           LIBS="$LIBS -lbcm_host"
472           AC_CHECK_HEADER([bcm_host.h], [EGL_WINDOW_SYSTEM="rpi"], [EGL_WINDOW_SYSTEM="auto"])
473       ])
474       LIBS=$old_LIBS
475       CFLAGS=$old_CFLAGS
476   fi
477
478   if test x"$EGL_WINDOW_SYSTEM" = x"auto"; then
479       if test x"$HAVE_X11" = x"yes"; then
480         EGL_WINDOW_SYSTEM="x11"
481       fi
482   fi
483
484   if test x"$EGL_WINDOW_SYSTEM" = x"auto"; then
485     if test x"$HAVE_IOS" = x"yes"; then
486       EGL_WINDOW_SYSTEM="ios"
487     fi
488   fi
489
490   if test x"$EGL_WINDOW_SYSTEM" = x"auto"; then
491     EGL_WINDOW_SYSTEM="none"
492   fi
493 fi
494
495 case "$EGL_WINDOW_SYSTEM" in
496   x11|none)
497     PKG_CHECK_MODULES(EGL, egl, HAVE_EGL="yes", [
498       HAVE_EGL="no"
499       old_LIBS=$LIBS
500       old_CFLAGS=$CFLAGS
501       
502       AC_CHECK_LIB([EGL], [eglGetProcAddress],
503         [
504           AC_CHECK_HEADER([EGL/egl.h],
505             [
506               HAVE_EGL="yes"
507               EGL_LIBS="-lEGL"
508               EGL_CFLAGS=""
509             ]
510           )
511         ]
512       )
513       
514       LIBS=$old_LIBS
515       CFLAGS=$old_CFLAGS
516     ])
517       
518     if test x"$HAVE_EGL" = x"yes" -a x"$EGL_WINDOW_SYSTEM" = x"x11"; then
519       if test x"$HAVE_X11" != x"yes"; then
520         AC_MSG_ERROR([libX11 not found and is required for EGL X11 window system])
521       else
522         AC_DEFINE(USE_EGL_X11, [1], [Use X11 EGL window system])
523         EGL_CFLAGS="$EGL_CFLAGS $X11_CFLAGS"
524         EGL_LIBS="$EGL_LIBS $X11_LIBS"
525       fi
526     fi
527     ;;
528   mali-fb)
529     dnl FIXME: Mali EGL depends on GLESv1 or GLESv2
530     HAVE_EGL="no"
531     old_LIBS=$LIBS
532     old_CFLAGS=$CFLAGS
533     AC_CHECK_HEADER([EGL/fbdev_window.h],
534       [
535         LIBS="$LIBS -lUMP"
536         AC_CHECK_LIB([Mali], [mali_image_create],
537           [
538             LIBS="$LIBS -lMali"
539             AC_CHECK_LIB([GLESv2], [glEnable],
540               [
541                 AC_CHECK_HEADER([GLES2/gl2.h],
542                   [
543                     AC_CHECK_LIB([EGL], [eglGetProcAddress],
544                       [
545                         AC_CHECK_HEADER([EGL/egl.h],
546                           [
547                             HAVE_EGL="yes"
548                             EGL_LIBS="-lGLESv2 -lEGL -lMali -lUMP"
549                             EGL_CFLAGS=""
550                             AC_DEFINE(USE_EGL_MALI_FB, [1], [Use Mali FB EGL window system])
551                           ])
552                       ])
553                   ])
554               ])
555           ])
556       ])
557     LIBS=$old_LIBS
558     CFLAGS=$old_CFLAGS
559     ;;
560   rpi)
561     old_LIBS=$LIBS
562     old_CFLAGS=$CFLAGS
563
564     dnl FIXME: EGL of RPi depends on GLESv1 or GLESv2
565     dnl FIXME: GLESv2 of RPi depends on EGL... WTF!
566     LIBS="$LIBS -lvcos -lvchiq_arm"
567     AC_CHECK_LIB([bcm_host], [bcm_host_init],
568       [
569         LIBS="$LIBS -lbcm_host"
570         AC_CHECK_HEADER(bcm_host.h,
571           [
572             LIBS="$LIBS -lGLESv2"
573             AC_CHECK_LIB([EGL], [eglGetProcAddress],
574               [
575                 LIBS="$LIBS -lEGL"
576                 AC_CHECK_HEADER([EGL/egl.h],
577                   [
578                     AC_CHECK_LIB([GLESv2], [glEnable],
579                       [
580                         AC_CHECK_HEADER([GLES2/gl2.h],
581                           [
582                             HAVE_EGL="yes"
583                             EGL_LIBS="-lGLESv2 -lEGL -lbcm_host -lvcos -lvchiq_arm"
584                             EGL_CFLAGS=""
585                             AC_DEFINE(USE_EGL_RPI, [1], [Use RPi EGL window system])
586                         ])
587                     ])
588                 ])
589             ])
590         ])
591     ])
592
593     LIBS=$old_LIBS
594     CFLAGS=$old_CFLAGS
595     ;;
596   ios)
597     HAVE_EGLGLES="yes"
598     ;;
599   *)
600     AC_MSG_ERROR([invalid EGL window system specified])
601     ;;
602 esac
603
604 AC_SUBST(EGL_LIBS)
605 AC_SUBST(EGL_CFLAGS)
606 AM_CONDITIONAL(HAVE_EGL, test x"$HAVE_EGL" = x"yes")
607
608 dnl *** sys plug-ins ***
609
610 dnl DirectSound
611 translit(dnm, m, l) AM_CONDITIONAL(USE_DIRECTSOUND, true)
612 AG_GST_CHECK_FEATURE(DIRECTSOUND, [DirectSound], directsoundsrc, [
613   HAVE_DIRECTSOUND="no"
614   save_CFLAGS="$CFLAGS"
615   save_LDFLAGS="$LDFLAGS"
616   save_LIBS="$LIBS"
617   CFLAGS="$CFLAGS $DIRECTX_CFLAGS"
618   LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS"
619   LIBS="$LIBS -ldsound -ldxerr9 -luser32"
620   AC_MSG_CHECKING(for DirectSound LDFLAGS)
621   AC_LINK_IFELSE([AC_LANG_PROGRAM([[
622 #include <windows.h>
623 #include <dxerr9.h>
624 #include <dsound.h>
625 ]], [[
626   DXGetErrorString9 (0);
627   DirectSoundCreate(NULL, NULL, NULL);
628 ]])],
629     [HAVE_DIRECTSOUND="yes"],
630     [HAVE_DIRECTSOUND="no"])
631   AC_MSG_RESULT($HAVE_DIRECTSOUND)
632   CFLAGS=$save_CFLAGS
633   LDFLAGS=$save_LDFLAGS
634   LIBS=$save_LIBS
635
636   if test "x$HAVE_DIRECTSOUND" = "xyes";  then
637     dnl this is much more than we want
638     DIRECTSOUND_LIBS="-ldsound -ldxerr9 -luser32"
639     AC_SUBST(DIRECTX_CFLAGS)
640     AC_SUBST(DIRECTX_LDFLAGS)
641     AC_SUBST(DIRECTSOUND_LIBS)
642   fi
643   AC_SUBST(HAVE_DIRECTSOUND)
644 ])
645
646 dnl WASAPI
647 translit(dnm, m, l) AM_CONDITIONAL(USE_WASAPI, true)
648 AG_GST_CHECK_FEATURE(WASAPI, [WASAPI plug-in], wasapi, [
649   HAVE_WASAPI="no"
650   save_CFLAGS="$CFLAGS"
651   save_LDFLAGS="$LDFLAGS"
652   save_LIBS="$LIBS"
653   CFLAGS="$CFLAGS $DIRECTX_CFLAGS"
654   LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS"
655   LIBS="$LIBS -lole32 -lwinmm -lksuser"
656   AC_MSG_CHECKING(for WASAPI LDFLAGS)
657   AC_LINK_IFELSE([AC_LANG_PROGRAM([[
658 #include <windows.h>
659 #include <stdio.h>
660 #include <mmsystem.h>
661 #include <mmdeviceapi.h>
662 ]], [[
663 int main ()
664 {
665     HRESULT hr = S_OK;
666
667     hr = CoInitialize(NULL);
668     if (FAILED(hr)) {
669         printf("CoInitialize failed: hr = 0x%08x", hr);
670         return __LINE__;
671     }
672
673         int result = 0;
674     // result = do_everything(argc, argv);
675     
676     CoUninitialize();
677     return result;
678 }
679 ]])],
680     [HAVE_WASAPI="yes"],
681     [HAVE_WASAPI="no"])
682   AC_MSG_RESULT($HAVE_WASAPI)
683   CFLAGS=$save_CFLAGS
684   LDFLAGS=$save_LDFLAGS
685   LIBS=$save_LIBS
686
687   if test "x$HAVE_WASAPI" = "xyes";  then
688     WASAPI_LIBS="-lole32 -lwinmm -lksuser"
689     AC_SUBST(WASAPI_LIBS)
690   fi
691   AC_SUBST(HAVE_WASAPI)
692 ])
693
694 dnl Direct3D
695 translit(dnm, m, l) AM_CONDITIONAL(USE_DIRECT3D, true)
696 AG_GST_CHECK_FEATURE(DIRECT3D, [Direct3D plug-in], direct3dsink, [
697   HAVE_DIRECT3D="no"
698   save_CFLAGS="$CFLAGS"
699   save_LDFLAGS="$LDFLAGS"
700   save_LIBS="$LIBS"
701   CFLAGS="$CFLAGS $DIRECTX_CFLAGS"
702   LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS"
703   LIBS="$LIBS -ld3d9 -lgdi32"
704   AC_MSG_CHECKING(for Direct3D LDFLAGS)
705   AC_LINK_IFELSE([AC_LANG_PROGRAM([[
706 #include <windows.h>
707 #include <d3d9.h>
708 ]], [[
709   Direct3DCreate9(D3D_SDK_VERSION);
710 ]])],
711     [HAVE_DIRECT3D="yes"],
712     [HAVE_DIRECT3D="no"])
713   AC_MSG_RESULT($HAVE_DIRECT3D)
714   CFLAGS=$save_CFLAGS
715   LDFLAGS=$save_LDFLAGS
716   LIBS=$save_LIBS
717
718   if test "x$HAVE_DIRECT3D" = "xyes";  then
719     DIRECT3D_LIBS="-ld3d9 -lgdi32"
720     AC_SUBST(DIRECT3D_LIBS)
721   fi
722   AC_SUBST(HAVE_DIRECT3D)
723 ])
724
725 dnl DirectDraw
726 translit(dnm, m, l) AM_CONDITIONAL(USE_DIRECTDRAW, true)
727 AG_GST_CHECK_FEATURE(DIRECTDRAW, [DirectDraw plug-in], directdrawsink, [
728   HAVE_DIRECTDRAW="no"
729   save_CFLAGS="$CFLAGS"
730   save_LDFLAGS="$LDFLAGS"
731   save_LIBS="$LIBS"
732   CFLAGS="$CFLAGS $DIRECTX_CFLAGS"
733   LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS"
734   LIBS="$LIBS -lddraw -lgdi32"
735   AC_MSG_CHECKING(for DirectDraw LDFLAGS)
736   AC_LINK_IFELSE([AC_LANG_PROGRAM([[
737 #include <windows.h>
738 #include <ddraw.h>
739 ]], [[
740   GetStockObject(0);
741   DirectDrawCreate(NULL, NULL, NULL);
742 ]])],
743     [HAVE_DIRECTDRAW="yes"],
744     [HAVE_DIRECTDRAW="no"])
745   AC_MSG_RESULT($HAVE_DIRECTDRAW)
746   CFLAGS=$save_CFLAGS
747   LDFLAGS=$save_LDFLAGS
748   LIBS=$save_LIBS
749
750   if test "x$HAVE_DIRECTDRAW" = "xyes";  then
751     dnl this is much more than we want
752     DIRECTDRAW_LIBS="-lddraw -ldxguid -lgdi32"
753     AC_SUBST(DIRECTX_CFLAGS)
754     AC_SUBST(DIRECTX_LDFLAGS)
755     AC_SUBST(DIRECTDRAW_LIBS)
756   fi
757   AC_SUBST(HAVE_DIRECTDRAW)
758 ])
759
760 dnl Direct3D9
761 AM_CONDITIONAL(USE_DIRECT3D9, true)
762 AG_GST_CHECK_FEATURE(DIRECT3D9, [Direct3D9], winscreencap, [
763   HAVE_DIRECT3D9="no"
764   save_CFLAGS="$CFLAGS"
765   save_LDFLAGS="$LDFLAGS"
766   save_LIBS="$LIBS"
767   CFLAGS="$CFLAGS $DIRECTX_CFLAGS"
768   LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS"
769   LIBS="$LIBS -ld3d9 -lgdi32"
770   AC_MSG_CHECKING(for Direct3D9 LDFLAGS)
771   AC_LINK_IFELSE([AC_LANG_PROGRAM([[
772 #include <windows.h>
773 #include <d3d9.h>
774 ]], [[
775   Direct3DCreate9(D3D_SDK_VERSION);
776 ]])],
777     [HAVE_DIRECT3D9="yes"],
778     [HAVE_DIRECT3D9="no"])
779   AC_MSG_RESULT($HAVE_DIRECT3D9)
780   CFLAGS=$save_CFLAGS
781   LDFLAGS=$save_LDFLAGS
782   LIBS=$save_LIBS
783
784   if test "x$HAVE_DIRECT3D9" = "xyes";  then
785
786     DIRECT3D9_LIBS="-ld3d9 -lgdi32"
787     AC_SUBST(DIRECT3D9_LIBS)
788   fi
789   AC_SUBST(HAVE_DIRECT3D9)
790 ])
791
792 dnl DirectShow
793 translit(dnm, m, l) AM_CONDITIONAL(USE_DIRECTSHOW, true)
794 AG_GST_CHECK_FEATURE(DIRECTSHOW, [DirectShow plug-in], winks, [
795   HAVE_DIRECTSHOW="no"
796   save_CFLAGS="$CFLAGS"
797   save_LDFLAGS="$LDFLAGS"
798   save_LIBS="$LIBS"
799   CFLAGS="$CFLAGS $DIRECTX_CFLAGS"
800   LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS"
801   LIBS="$LIBS -lole32 -luuid -lstrmiids"
802   AC_MSG_CHECKING(for DirectShow LDFLAGS)
803   AC_LINK_IFELSE([AC_LANG_PROGRAM([[
804 #include <windows.h>
805 #include <strmif.h>
806 #include <uuids.h>
807
808 int main () {
809   IGraphBuilder *pGraph = NULL;
810   HRESULT hr = CoInitialize(NULL);
811   hr = CoCreateInstance(&CLSID_FilterGraph, NULL, CLSCTX_INPROC_SERVER, 
812                         &IID_IGraphBuilder, (void **)&pGraph);
813
814   return 0;
815 }
816 ]])],
817     [HAVE_DIRECTSHOW="yes"],
818     [HAVE_DIRECTSHOW="no"])
819   AC_MSG_RESULT($HAVE_DIRECTSHOW)
820   CFLAGS=$save_CFLAGS
821   LDFLAGS=$save_LDFLAGS
822   LIBS=$save_LIBS
823
824   if test "x$HAVE_DIRECTSHOW" = "xyes";  then
825     dnl this is much more than we want
826     DIRECTSHOW_LIBS="-ldxguid -lole32 -luuid -lstrmiids -lksuser -lsetupapi"
827     AC_SUBST(DIRECTX_CFLAGS)
828     AC_SUBST(DIRECTX_LDFLAGS)
829     AC_SUBST(DIRECTSHOW_LIBS)
830   fi
831   AC_SUBST(HAVE_DIRECTSHOW)
832 ])
833
834 dnl *** Android Media ***
835 translit(dnm, m, l) AM_CONDITIONAL(USE_ANDROID_MEDIA, true)
836 HAVE_ANDROID_MEDIA="no"
837 AG_GST_CHECK_FEATURE(ANDROID_MEDIA, [Android Media], androidmedia, [
838   case "$host" in
839     *android*)
840       AC_CHECK_HEADER(jni.h, HAVE_ANDROID_MEDIA="yes", HAVE_ANDROID_MEDIA="no")
841       ;;
842     *)
843       HAVE_ANDROID_MEDIA="no"
844       ;;
845   esac
846 ])
847
848 dnl *** AppleMedia (OS X and iOS) ***
849 translit(dnm, m, l) AM_CONDITIONAL(USE_APPLE_MEDIA, true)
850 HAVE_APPLE_MEDIA="no"
851 dnl SystemConfiguration.h is common to OS X and iOS, so we check for that
852 AG_GST_CHECK_FEATURE(APPLE_MEDIA, [Apple video], applemedia, [
853   AC_CHECK_HEADER(SystemConfiguration/SystemConfiguration.h, HAVE_APPLE_MEDIA="yes", HAVE_APPLE_MEDIA="no")
854 ])
855 dnl in case header SystemConfiguration/SystemConfiguration.h is found on other platforms
856 case "$host" in
857   *-*darwin*)
858     ;;
859   *)
860     HAVE_APPLE_MEDIA="no"
861     ;;
862 esac
863
864 AC_CHECK_HEADER(MobileCoreServices/MobileCoreServices.h, HAVE_IOS="yes", HAVE_IOS="no", [-])
865
866 AM_CONDITIONAL(HAVE_IOS, test "x$HAVE_IOS" = "xyes")
867 if test "x$HAVE_IOS" = "xyes"; then
868   AC_DEFINE(HAVE_IOS, 1, [Define if building for Apple iOS])
869 fi
870
871 dnl *** bluez ***
872 translit(dnm, m, l) AM_CONDITIONAL(USE_BLUEZ, true)
873 AG_GST_CHECK_FEATURE(BLUEZ, [Bluez], bluez, [
874   PKG_CHECK_MODULES([BLUEZ], [bluez < 5.0], [
875     dnl FIXME: we should be able to replace this with the GLib DBus stuff
876     PKG_CHECK_MODULES([DBUS], [dbus-1], [HAVE_BLUEZ=yes], [HAVE_BLUEZ=no])
877   ], [
878     HAVE_BLUEZ=no
879   ])
880 ])
881
882 dnl *** OS X videosrc ***
883 translit(dnm, m, l) AM_CONDITIONAL(USE_OSX_VIDEO, true)
884 HAVE_OSX_VIDEO="no"
885 AG_GST_CHECK_FEATURE(OSX_VIDEO, [OSX video], osxvideosrc, [
886   AC_CHECK_TYPE([SeqGrabComponent], HAVE_OSX_VIDEO="yes", HAVE_OSX_VIDEO="no",
887       [#include <Quicktime/Quicktime.h>])
888 ])
889 dnl in case header Quicktime/Quicktime.h is found on other platforms
890 case "$host" in
891   *-*darwin*)
892     ;;
893   *)
894     HAVE_OSX_VIDEO="no"
895     ;;
896 esac
897
898 dnl *** OS/X AVCVideoServices ***
899 translit(dnm, m, l) AM_CONDITIONAL(USE_AVC, true)
900 HAVE_AVC="no"
901 AG_GST_CHECK_FEATURE(AVC, [AVC Video Services], avcsrc, [
902   AC_LANG_PUSH([C++])
903   save_CPPFLAGS="$CPPFLAGS"
904   CPPFLAGS="$CPPFLAGS -framework AVCVideoServices -framework CoreFoundation"
905   save_LIBS="$LIBS"
906   LIBS="$LIBS -framework AVCVideoServices -framework CoreFoundation"
907   AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[]])],[HAVE_AVC=yes],[HAVE_AVC=no])
908   LIBS=$save_LIBS
909   CPPFLAGS=$save_CPPFLAGS
910   AC_LANG_POP([C++])
911 ])
912 dnl in case header AVCVideoServices/AVCVideoServices.h is found on other platforms
913 case "$host" in
914   *-*darwin*)
915     ;;
916   *)
917     HAVE_AVC="no"
918     ;;
919 esac
920
921 dnl check for QuickTime
922 translit(dnm, m, l) AM_CONDITIONAL(USE_QUICKTIME, true)
923 AG_GST_CHECK_FEATURE(QUICKTIME, [QuickTime wrapper], qtwrapper, [
924   AC_CHECK_TYPE([SampleReferenceRecord], HAVE_QUICKTIME="yes", HAVE_QUICKTIME="no",
925       [#include <Quicktime/Quicktime.h>])
926 ])
927
928 dnl check for shm_open (for shm plugin)
929 translit(dnm, m, l) AM_CONDITIONAL(USE_SHM, true)
930 AG_GST_CHECK_FEATURE(SHM, [POSIX shared memory source and sink], shm, [
931     if test "x$HAVE_SYS_SOCKET_H" = "xyes"; then
932         case $host in
933         *-darwin* | *-macos10*)
934             AC_DEFINE(HAVE_OSX,[1],[Apple Mac OS X operating system detected])
935             HAVE_SHM=yes
936             ;;
937         *)
938             AC_CHECK_LIB([rt], [shm_open],
939                 AC_CHECK_DECL([MSG_NOSIGNAL], HAVE_SHM=yes, HAVE_SHM=no, [
940                 #include <sys/socket.h>
941                     ]),
942                 HAVE_SHM=no)
943             AC_SUBST(SHM_LIBS, "-lrt")
944             ;;
945         esac
946     else
947         HAVE_SHM=no
948     fi
949 ])
950
951 dnl *** Video 4 Linux 2 ***
952 dnl for information about the header/define, see sys/v4l2/gstv4l2element.h
953 dnl renamed to GST_V4L2 because of some conflict with kernel headers
954 translit(dnm, m, l) AM_CONDITIONAL(USE_MFC, true)
955 AG_GST_CHECK_FEATURE(MFC, [Multi Format Codec], mfc, [
956   AC_MSG_CHECKING([Checking for up to date v4l2 installation])
957   AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
958 #include <sys/types.h>
959 #ifdef __sun /* Solaris */
960 #include <sys/types.h>
961 #include <sys/videodev2.h>
962 #elif __FreeBSD__
963 #include <linux/videodev2.h>
964 #else /* Linux */
965 #include <linux/types.h>
966 #define _LINUX_TIME_H
967 #define __user
968 #include <linux/videodev2.h>
969 #endif
970 #if defined(V4L2_MAJOR_VERSION) || defined(V4L2_MINOR_VERSION)
971 #error too early v4l2 version or no v4l2 at all
972 #endif
973 #if !defined(V4L2_PIX_FMT_H264)
974 #error v4l2 version too old
975 #endif
976     ]], [[
977 return 0;
978     ]])],[
979       HAVE_MFC="yes"
980       AC_MSG_RESULT(yes)
981     ],[
982       HAVE_MFC="no"
983       AC_MSG_RESULT(no)
984
985       HAVE_VIDEODEV=no
986       AC_CHECK_HEADER(linux/videodev2.h, [ HAVE_VIDEODEV=yes ],
987       [
988         AC_CHECK_HEADER(sys/videodev2.h, [ HAVE_VIDEODEV=yes ])
989       ])
990
991       if test "x$HAVE_VIDEODEV" = "xyes"; then
992         AC_MSG_WARN([video4linux2 headers were found, but they're old.])
993         AC_MSG_WARN([Please update v4l2 to compile the MFC plugins])
994       else
995         AC_MSG_WARN([v4l2 was not found])
996       fi
997     ])
998 ])
999
1000 dnl check for Video CD
1001 translit(dnm, m, l) AM_CONDITIONAL(USE_VCD, true)
1002 AG_GST_CHECK_FEATURE(VCD, [Video CD], vcdsrc, [
1003   AC_CHECK_HEADER(linux/cdrom.h, HAVE_VCD="yes", HAVE_VCD="no")
1004 ])
1005
1006 dnl check for OpenSL ES
1007 translit(dnm, m, l) AM_CONDITIONAL(USE_OPENSLES, true)
1008 AG_GST_CHECK_FEATURE(OPENSLES, [OpenSL ES], opensl, [
1009   AC_CHECK_HEADER(SLES/OpenSLES.h, HAVE_OPENSLES="yes", HAVE_OPENSLES="no")
1010 ])
1011
1012 dnl *** UVC H264 ***
1013 translit(dnm, m, l) AM_CONDITIONAL(USE_UVCH264, true)
1014 AG_GST_CHECK_FEATURE(UVCH264, [UVC H264], uvch264, [
1015   AC_CHECK_HEADER(linux/uvcvideo.h, HAVE_UVCVIDEO_H=yes, HAVE_UVCVIDEO_H=no)
1016   AG_GST_PKG_CHECK_MODULES(GST_VIDEO, gstreamer-video-1.0)
1017   PKG_CHECK_MODULES(G_UDEV, gudev-1.0 , [
1018           AC_DEFINE([HAVE_GUDEV], 1, [Define if gudev is installed])
1019           HAVE_GUDEV="yes" ],
1020           [HAVE_GUDEV="no"])
1021   PKG_CHECK_MODULES(LIBUSB, libusb-1.0 , [
1022           AC_DEFINE([HAVE_LIBUSB], 1, [Define if libusb 1.x is installed])
1023           HAVE_LIBUSB="yes" ],
1024           [HAVE_LIBUSB="no"])
1025   if test "x$HAVE_UVCVIDEO_H" == "xyes" && \
1026      test "x$HAVE_GUDEV" == "xyes" && \
1027      test "x$HAVE_LIBUSB" == "xyes"; then
1028     HAVE_UVCH264=yes
1029   else
1030     HAVE_UVCH264=no
1031   fi
1032 ])
1033 AC_SUBST(LIBUDEV_CFLAGS)
1034 AC_SUBST(LIBUDEV_LIBS)
1035 AC_SUBST(LIBUSB_CFLAGS)
1036 AC_SUBST(LIBUSB_LIBS)
1037
1038
1039 dnl *** ext plug-ins ***
1040 dnl keep this list sorted alphabetically !
1041
1042 if test "x$BUILD_EXTERNAL" = "xyes"; then
1043
1044 dnl *** assrender ***
1045 translit(dnm, m, l) AM_CONDITIONAL(USE_ASSRENDER, true)
1046 AG_GST_CHECK_FEATURE(ASSRENDER, [ASS/SSA renderer], assrender, [
1047   PKG_CHECK_MODULES(ASSRENDER, libass >= 0.9.4, [
1048     HAVE_ASSRENDER="yes" ], [
1049     HAVE_ASSRENDER="no"
1050   ])
1051 ])
1052 AC_SUBST(ASSRENDER_CFLAGS)
1053 AC_SUBST(ASSRENDER_LIBS)
1054
1055 dnl *** vo-amrwbenc ***
1056 translit(dnm, m, l) AM_CONDITIONAL(USE_VOAMRWBENC, true)
1057 AG_GST_CHECK_FEATURE(VOAMRWBENC, [vo-amrwbenc library], vo-amrwbenc, [
1058   AG_GST_PKG_CHECK_MODULES(VOAMRWBENC, vo-amrwbenc >= 0.1.0)
1059 ])
1060
1061 dnl *** vo-aacenc ***
1062 translit(dnm, m, l) AM_CONDITIONAL(USE_VOAACENC, true)
1063 AG_GST_CHECK_FEATURE(VOAACENC, [vo-aacenc library], vo-aacenc, [
1064   AG_GST_PKG_CHECK_MODULES(VOAACENC, vo-aacenc >= 0.1.0)
1065 ])
1066
1067 dnl *** apexsink ***
1068 translit(dnm, m, l) AM_CONDITIONAL(USE_APEXSINK, true)
1069 AG_GST_CHECK_FEATURE(APEXSINK, [AirPort Express Wireless sink], apexsink, [
1070   PKG_CHECK_MODULES(APEXSINK, [ openssl >= 0.9.5  libcrypto ], [
1071     HAVE_APEXSINK="yes"
1072     saved_LIBS="$LIBS"
1073     LIBS=""
1074     AC_SEARCH_LIBS(socket, [socket], [ ], [ APEXSINK="no" ])
1075     AC_SEARCH_LIBS(gethostbyname, [nsl], [ ], [ APEXSINK="no" ])
1076     APEXSINK_LIBS="$APEXSINK_LIBS $LIBS"
1077     LIBS="$saved_LIBS"
1078     AC_SUBST(APEXSINK_CFLAGS)
1079     AC_SUBST(APEXSINK_LIBS)
1080   ], [
1081     APEXSINK="no"
1082   ])
1083 ])
1084
1085 dnl *** BZ2 ***
1086 translit(dnm, m, l) AM_CONDITIONAL(USE_BZ2, true)
1087 AG_GST_CHECK_FEATURE(BZ2, [bz2 library], bz2, [
1088   AG_GST_CHECK_LIBHEADER(BZ2, bz2, BZ2_bzCompress, ,bzlib.h, BZ2_LIBS="-lbz2")
1089   AC_SUBST(BZ2_LIBS)
1090 ])
1091
1092 #dnl *** cairo ***
1093 #translit(dnm, m, l) AM_CONDITIONAL(USE_CAIRO, true)
1094 #AG_GST_CHECK_FEATURE(CAIRO, [cairo plug-in], cairo, [
1095 #  PKG_CHECK_MODULES(CAIRO, cairo >= 1.0 glitz-glx, HAVE_CAIRO=yes, [
1096 #    HAVE_CAIRO=no
1097 #  ])
1098 #  AC_SUBST(CAIRO_CFLAGS)
1099 #  AC_SUBST(CAIRO_LIBS)
1100 #])
1101
1102 dnl *** cdaudio ***
1103 translit(dnm, m, l) AM_CONDITIONAL(USE_CDAUDIO, true)
1104 AG_GST_CHECK_FEATURE(CDAUDIO, [cdaudio], cdaudio, [
1105   PKG_CHECK_MODULES(CDAUDIO, libcdaudio, [
1106           HAVE_CDAUDIO="yes"
1107   ], [
1108           HAVE_CDAUDIO="no"
1109   ])
1110   AC_SUBST(CDAUDIO_CFLAGS)
1111   AC_SUBST(CDAUDIO_LIBS)
1112 ])
1113
1114 dnl *** celt ***
1115 translit(dnm, m, l) AM_CONDITIONAL(USE_CELT, true)
1116 AG_GST_CHECK_FEATURE(CELT, [celt], celt, [
1117   PKG_CHECK_MODULES(CELT, celt >= 0.5.0, [
1118           AC_DEFINE([HAVE_CELT], 1, [Define if libcelt 0.5 is installed])
1119           HAVE_CELT="yes"
1120   ], [
1121           HAVE_CELT="no"
1122   ])
1123
1124   PKG_CHECK_MODULES(CELT_0_7, celt >= 0.7.0, [
1125           AC_DEFINE([HAVE_CELT_0_7], 1, [Define if libcelt 0.7 is installed])
1126   ], [
1127           dnl to prevent an error
1128           true
1129   ])
1130
1131   PKG_CHECK_MODULES(CELT_0_8, celt >= 0.8.0, [
1132           AC_DEFINE([HAVE_CELT_0_8], 1, [Define if libcelt 0.8 is installed])
1133   ], [
1134           dnl to prevent an error
1135           true
1136   ])
1137
1138   PKG_CHECK_MODULES(CELT_0_11, celt >= 0.11.0, [
1139           AC_DEFINE([HAVE_CELT_0_11], 1, [Define if libcelt 0.11 is installed])
1140   ], [
1141           dnl to prevent an error
1142           true
1143   ])
1144   AC_SUBST(CELT_CFLAGS)
1145   AC_SUBST(CELT_LIBS)
1146 ])
1147
1148 dnl *** chromaprint ***
1149 translit(dnm, m, l) AM_CONDITIONAL(USE_CHROMAPRINT, true)
1150 AG_GST_CHECK_FEATURE(CHROMAPRINT, [chromaprint], chromaprint, [
1151   PKG_CHECK_MODULES(CHROMAPRINT, libchromaprint, HAVE_CHROMAPRINT="yes", [
1152     HAVE_CHROMAPRINT="no"
1153   ])
1154   AC_SUBST(CHROMAPRINT_CFLAGS)
1155   AC_SUBST(CHROMAPRINT_LIBS)
1156 ])
1157
1158 dnl *** Curl ***
1159 translit(dnm, m, l) AM_CONDITIONAL(USE_CURL, true)
1160 AG_GST_CHECK_FEATURE(CURL, [Curl plugin], curl, [
1161   PKG_CHECK_MODULES(CURL, libcurl >= 7.21.0, [
1162     HAVE_CURL="yes"
1163     AC_CHECK_HEADERS([unistd.h sys/socket.h sys/types.h netinet/in.h netinet/ip.h netinet/tcp.h fcntl.h], [ ], [
1164       AC_CHECK_HEADERS([unistd.h sys/types.h winsock2.h ws2tcpip.h fcntl.h], [ ], [HAVE_CURL="no"])
1165     ])
1166     AC_MSG_CHECKING([for socket support needed by curlsink])
1167     AC_MSG_RESULT($HAVE_CURL)
1168   ], [
1169     HAVE_CURL="no"
1170   ])
1171   AC_SUBST(CURL_CFLAGS)
1172   AC_SUBST(CURL_LIBS)
1173 ])
1174
1175 dnl **** DASH ****
1176 translit(dnm, m, l) AM_CONDITIONAL(USE_DASH, true)
1177 AG_GST_CHECK_FEATURE(DASH, [DASH plug-in], dash, [
1178   PKG_CHECK_MODULES(LIBXML2, libxml-2.0 >= 2.4, [HAVE_LIBXML2="yes"
1179     HAVE_DASH="yes"], [HAVE_LIBXML2="no"
1180     HAVE_DASH="no"])
1181   AC_SUBST(LIBXML2_CFLAGS)
1182   AC_SUBST(LIBXML2_LIBS)
1183 ])
1184
1185 dnl *** dc1394  ***
1186 translit(dnm, m, l) AM_CONDITIONAL(USE_DC1394, true)
1187 AG_GST_CHECK_FEATURE(DC1394, [libdc1394], dc1394, [
1188    PKG_CHECK_MODULES(LIBDC1394, libdc1394-2 >= 2.0.0, [
1189         if test -z "`$PKG_CONFIG --modversion libdc1394-2 | grep 2.0.0-rc`"; then
1190                 HAVE_DC1394="yes"
1191         else
1192                 HAVE_DC1394="no"
1193         fi
1194    ], [
1195         HAVE_DC1394="no"
1196         AC_MSG_RESULT(no)
1197    ])
1198    AC_SUBST(LIBDC1394_CFLAGS)
1199    AC_SUBST(LIBDC1394_LIBS)
1200 ])
1201
1202 dnl *** decklink  ***
1203 translit(dnm, m, l) AM_CONDITIONAL(USE_DECKLINK, true)
1204 AG_GST_CHECK_FEATURE(DECKLINK, [decklink], decklink, [
1205    HAVE_DECKLINK=no
1206    case "$host" in
1207      *-*linux*)
1208        if test "x$HAVE_PTHREAD_H" = "xyes"; then
1209          AC_CHECK_LIB(dl, dlopen,
1210            [
1211             HAVE_DECKLINK=yes
1212             DECKLINK_CXXFLAGS=
1213             DECKLINK_LIBS="-lpthread -ldl"
1214            ])
1215        fi
1216        ;;
1217      *-*darwin*)
1218        if test "x$HAVE_PTHREAD_H" = "xyes"; then
1219          AC_CHECK_LIB(dl, dlopen,
1220            [
1221             HAVE_DECKLINK=yes
1222             DECKLINK_CXXFLAGS=
1223             DECKLINK_LIBS="-lpthread -ldl"
1224             HAVE_DECKLINK_OSX=yes
1225            ])
1226        fi
1227        ;;
1228      *)
1229        HAVE_DECKLINK=no
1230        ;;
1231    esac
1232
1233    AC_SUBST(DECKLINK_CXXFLAGS)
1234    AC_SUBST(DECKLINK_LIBS)
1235 ])
1236 AM_CONDITIONAL(DECKLINK_OSX, test "x$HAVE_DECKLINK_OSX" = xyes)
1237
1238 dnl **** DirectFB ****
1239 translit(dnm, m, l) AM_CONDITIONAL(USE_DIRECTFB, true)
1240 AG_GST_CHECK_FEATURE(DIRECTFB, [directfb], dfbvideosink , [
1241   PKG_CHECK_MODULES(DIRECTFB, directfb >= 0.9.24, HAVE_DIRECTFB="yes", [
1242     HAVE_DIRECTFB="no"
1243   ])
1244 ])
1245
1246 dnl **** Wayland ****
1247 translit(dnm, m, l) AM_CONDITIONAL(USE_WAYLAND, true)
1248 AG_GST_CHECK_FEATURE(WAYLAND, [wayland sink], wayland , [
1249   PKG_CHECK_MODULES(WAYLAND, wayland-client >= 1.0.0, [
1250     HAVE_WAYLAND="yes" ], [ HAVE_WAYLAND="no"
1251   ])
1252 ])
1253
1254 dnl **** Dirac ****
1255 translit(dnm, m, l) AM_CONDITIONAL(USE_DIRAC, true)
1256 AG_GST_CHECK_FEATURE(DIRAC, [dirac], dirac, [
1257   PKG_CHECK_MODULES(DIRAC, dirac >= 0.10, HAVE_DIRAC="yes", [
1258     HAVE_DIRAC="no"
1259   ])
1260 ])
1261
1262 dnl *** DTS ***
1263 translit(dnm, m, l) AM_CONDITIONAL(USE_DTS, true)
1264 AG_GST_CHECK_FEATURE(DTS, [dts library], dtsdec, [
1265   HAVE_DTS="yes"
1266   AG_GST_CHECK_LIBHEADER(DTS, dca, dca_init, $LIBM, dca.h,
1267     DTS_LIBS="-ldca $LIBM", HAVE_DTS="no")
1268   if test $HAVE_DTS = "no"; then
1269     AG_GST_CHECK_LIBHEADER(DTS, dts_pic, dts_init, $LIBM, dts.h,
1270       [ DTS_LIBS="-ldts_pic $LIBM"
1271         AC_DEFINE(DTS_OLD, 1, [Define if an old libdts is used])
1272       ])
1273   fi
1274   AC_SUBST(DTS_LIBS)
1275 ])
1276
1277 dnl *** resindvd ***
1278 translit(dnm, m, l) AM_CONDITIONAL(USE_RESINDVD, true)
1279 AG_GST_CHECK_FEATURE(RESINDVD, [resindvd plugin], resindvd, [
1280   PKG_CHECK_MODULES(DVDNAV, dvdnav >= 4.1.2 dvdread >= 4.1.2, HAVE_RESINDVD="yes", [
1281     HAVE_RESINDVD="no"
1282   ])
1283 ])
1284
1285 dnl **** Free AAC Encoder (FAAC) ****
1286 translit(dnm, m, l) AM_CONDITIONAL(USE_FAAC, true)
1287 AG_GST_CHECK_FEATURE(FAAC, [AAC encoder plug-in], faac, [
1288   AG_GST_CHECK_LIBHEADER(FAAC, faac, faacEncOpen, $LIBM, faac.h,
1289     FAAC_LIBS="-lfaac $LIBM")
1290   AS_SCRUB_INCLUDE(FAAC_CFLAGS)
1291   AC_SUBST(FAAC_LIBS)
1292 ])
1293
1294 dnl **** Free AAC Decoder (FAAD) ****
1295 translit(dnm, m, l) AM_CONDITIONAL(USE_FAAD, true)
1296 AG_GST_CHECK_FEATURE(FAAD, [AAC decoder plug-in], faad, [
1297   HAVE_FAAD="yes"
1298   faad_hdr=""
1299   AG_GST_CHECK_LIBHEADER(FAAD, faad, faacDecOpen, $LIBM, faad.h,
1300     FAAD_LIBS="-lfaad $LIBM", HAVE_FAAD="no")
1301   if test $HAVE_FAAD = "no"; then
1302     AG_GST_CHECK_LIBHEADER(FAAD, faad, NeAACDecOpen, $LIBM, neaacdec.h,
1303       [ FAAD_LIBS="-lfaad $LIBM"
1304         AC_DEFINE(FAAD_IS_NEAAC, 1, [Define if AAC is using new api prefix])
1305         faad_hdr="neaacdec.h"
1306       ], [
1307         HAVE_FAAD="no"
1308       ],)
1309   else
1310     faad_hdr="faad.h"
1311   fi
1312   if test $HAVE_FAAD = "yes"; then
1313     AC_MSG_CHECKING([Checking for FAAD >= 2.0])
1314     AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <faad.h>]], [[
1315         #if !defined(FAAD2_VERSION) || !defined(FAAD_FMT_DOUBLE)
1316         #error Not faad2
1317         #else
1318         /* Release candidate of 2.0 is not good enough for us. This field
1319          * was added only in 2.0 final and does not exist in 2.0-RC3 */
1320         faacDecConfiguration conf; conf.dontUpSampleImplicitSBR = 1;
1321         #endif
1322     ]])],[
1323       HAVE_FAAD="yes"
1324
1325       AC_MSG_CHECKING([Checking FAAD2 version in $faad_hdr])
1326       for minor in 10 9 8 7 6 5 0; do
1327         if test x$faad2_minor_version = "x"; then
1328           AC_EGREP_CPP([GST_CHECK_FAAD_VERSION \"2\.$minor\"], [
1329               #include <$faad_hdr>
1330               GST_CHECK_FAAD_VERSION FAAD2_VERSION
1331             ], [
1332               faad2_minor_version=$minor
1333             ])
1334         fi
1335       done
1336       if test x$faad2_minor_version = "x"; then
1337         AC_MSG_RESULT([no idea])
1338       else
1339         AC_MSG_RESULT([2.$faad2_minor_version])
1340         AC_DEFINE_UNQUOTED([FAAD2_MINOR_VERSION], [$faad2_minor_version], [The x in 2.x])
1341       fi
1342     ],[
1343       HAVE_FAAD="no"
1344     ])
1345   fi
1346   AS_SCRUB_INCLUDE(FAAD_CFLAGS)
1347   AC_SUBST(FAAD_LIBS)
1348   AC_SUBST(FAAD_IS_NEAAC)
1349 ])
1350
1351 dnl *** fbdev ***
1352 translit(dnm, m, l) AM_CONDITIONAL(USE_FBDEV, true)
1353 AG_GST_CHECK_FEATURE(FBDEV, [linux framebuffer], fbdevsink, [
1354   if test "x$HAVE_FBDEV" != "xyes"; then
1355     AC_CHECK_HEADER([linux/fb.h], HAVE_FBDEV=yes, HAVE_FBDEV=no)
1356   fi
1357 ])
1358
1359 dnl *** flite ***
1360 translit(dnm, m, l) AM_CONDITIONAL(USE_FLITE, true)
1361 AG_GST_CHECK_FEATURE(FLITE, [Flite plugin], flite, [
1362   AG_GST_CHECK_LIBHEADER(FLITE, flite, flite_init, $LIBM, flite/flite.h,
1363     FLITE_LIBS="-lflite -lflite_cmu_us_kal -lflite_usenglish -lflite_cmulex $LIBM")
1364
1365   AC_SUBST(FLITE_CFLAGS)
1366   AC_SUBST(FLITE_LIBS)
1367 ])
1368
1369 dnl *** gsm ***
1370 translit(dnm, m, l) AM_CONDITIONAL(USE_GSM, true)
1371 AG_GST_CHECK_FEATURE(GSM, [GSM library], gsmenc gsmdec, [
1372   AG_GST_CHECK_LIBHEADER(GSM, gsm, gsm_create, , gsm.h, GSM_LIBS="-lgsm")
1373   if test $HAVE_GSM != "yes"; then
1374     AG_GST_CHECK_LIBHEADER(GSM, gsm, gsm_create, , gsm/gsm.h, GSM_LIBS="-lgsm")
1375     if test $HAVE_GSM = "yes"; then
1376       AC_DEFINE(GSM_HEADER_IN_SUBDIR, 1, [Define if GSM header in gsm/ subdir])
1377     fi
1378   fi
1379   AC_SUBST(GSM_LIBS)
1380 ])
1381
1382 dnl *** fluidSynth ***
1383 translit(dnm, m, l) AM_CONDITIONAL(USE_FLUIDSYNTH, true)
1384 AG_GST_CHECK_FEATURE(FLUIDSYNTH, [fluidsynth], fluidsynth, [
1385   PKG_CHECK_MODULES(FLUIDSYNTH, fluidsynth >= 1.0, HAVE_FLUIDSYNTH="yes", [
1386     HAVE_FLUIDSYNTH="no"
1387   ])
1388 ])
1389
1390 dnl *** kate ***
1391 translit(dnm, m, l) AM_CONDITIONAL(USE_KATE, true)
1392 AG_GST_CHECK_FEATURE(KATE, [Kate], kate, [
1393   PKG_CHECK_MODULES(KATE, kate >= 0.1.7, HAVE_KATE="yes", [
1394     HAVE_KATE="no"
1395   ])
1396   AC_SUBST(KATE_CFLAGS)
1397   AC_SUBST(KATE_LIBS)
1398   PKG_CHECK_MODULES(TIGER, tiger >= 0.3.2,
1399     [
1400       HAVE_TIGER="yes"
1401       AC_DEFINE(HAVE_TIGER, 1, [Define if libtiger is available])
1402     ],
1403     [
1404       HAVE_TIGER="no"
1405     ]
1406   )
1407   AM_CONDITIONAL(USE_TIGER, test "x$HAVE_TIGER" = "xyes")
1408   AC_SUBST(TIGER_CFLAGS)
1409   AC_SUBST(TIGER_LIBS)
1410 ],,,[AM_CONDITIONAL(USE_TIGER, false)])
1411
1412 dnl *** ladspa ***
1413 translit(dnm, m, l) AM_CONDITIONAL(USE_LADSPA, true)
1414 AG_GST_CHECK_FEATURE(LADSPA, [ladspa], ladspa, [
1415   AC_CHECK_HEADER(ladspa.h, HAVE_LADSPA="yes", HAVE_LADSPA="no")
1416
1417   PKG_CHECK_MODULES(LRDF, lrdf, HAVE_LRDF=yes, HAVE_LRDF=no)
1418   if test $HAVE_LRDF = "yes"; then
1419     AC_DEFINE(HAVE_LRDF, 1, [Define if we have liblrdf])
1420   fi
1421   AC_SUBST(LRDF_LIBS)
1422   AC_SUBST(LRDF_CFLAGS)
1423 ])
1424
1425 dnl *** LV2 ***
1426 translit(dnm, m, l) AM_CONDITIONAL(USE_LV2, true)
1427 AG_GST_CHECK_FEATURE(LV2, [lv2], lv2, [
1428   PKG_CHECK_MODULES(SLV2, slv2 >= 0.6.6, HAVE_LV2="yes", HAVE_LV2="no")
1429   AC_SUBST(SLV2_CFLAGS)
1430   AC_SUBST(SLV2_LIBS)
1431 ])
1432
1433 dnl *** libmms ***
1434 translit(dnm, m, l) AM_CONDITIONAL(USE_LIBMMS, true)
1435 AG_GST_CHECK_FEATURE(LIBMMS, [mms protocol library], libmms, [
1436   dnl check with pkg-config first
1437   PKG_CHECK_MODULES(LIBMMS, libmms >= 0.4, HAVE_LIBMMS="yes", [
1438     HAVE_LIBMMS="no"
1439   ])
1440 ])
1441 AC_SUBST(LIBMMS_LIBS)
1442
1443
1444 dnl *** libsrtp ***
1445 translit(dnm, m, l) AM_CONDITIONAL(USE_SRTP, true)
1446 AG_GST_CHECK_FEATURE(SRTP, [srtp library], srtp, [
1447   HAVE_SRTP="yes"
1448   AG_GST_CHECK_LIBHEADER(SRTP, srtp, srtp_init, , srtp/srtp.h,
1449     SRTP_LIBS="-lsrtp", HAVE_SRTP="no")
1450   AC_SUBST(SRTP_LIBS)
1451 ])
1452
1453 dnl *** linsys ***
1454 translit(dnm, m, l) AM_CONDITIONAL(USE_LINSYS, true)
1455 AG_GST_CHECK_FEATURE(LINSYS, [Linear Systems SDI plugin], linsys, [
1456   case "$host" in
1457     *-*linux*)
1458       HAVE_LINSYS=yes
1459       ;;
1460     *)
1461       HAVE_LINSYS=no
1462       ;;
1463   esac
1464 ])
1465
1466 dnl *** modplug ***
1467 translit(dnm, m, l) AM_CONDITIONAL(USE_MODPLUG, true)
1468 AG_GST_CHECK_FEATURE(MODPLUG, modplug, modplug, [
1469   if test "x$HAVE_CXX" != "xyes"; then
1470     AC_MSG_WARN([Not compiling modplug plugin as it requires a C++ compiler])
1471     HAVE_MODPLUG="no"
1472   else
1473     PKG_CHECK_MODULES(MODPLUG, libmodplug, HAVE_MODPLUG="yes", HAVE_MODPLUG="no")
1474   fi
1475   AC_SUBST(MODPLUG_CFLAGS)
1476   AC_SUBST(MODPLUG_LIBS)
1477 ])
1478
1479 dnl *** mimic ***
1480 translit(dnm, m, l) AM_CONDITIONAL(USE_MIMIC, true)
1481 AG_GST_CHECK_FEATURE(MIMIC, [libmimic library], mimic, [
1482   MIMIC_REQUIRED=1.0
1483   PKG_CHECK_MODULES(MIMIC, libmimic >= $MIMIC_REQUIRED,
1484       HAVE_MIMIC=yes, HAVE_MIMIC=no)
1485   AC_SUBST(MIMIC_CFLAGS)
1486   AC_SUBST(MIMIC_LIBS)
1487 ])
1488
1489 dnl *** mjpegtools version info ***
1490 dnl some may prefer older version (given quirks above)
1491 dnl hm, no version info seems available within mjpegtools headers
1492 dnl and API really moves along
1493 echo
1494 PKG_CHECK_EXISTS(mjpegtools >= 1.6.1.93 mjpegtools < 1.8.0, [
1495   mjpegtools_api=10601
1496 ], [
1497   PKG_CHECK_EXISTS(mjpegtools >= 1.8.0 mjpegtools < 1.9.0, [
1498     mjpegtools_api=10800
1499   ], [
1500     PKG_CHECK_EXISTS(mjpegtools >= 2.0.0, [
1501       mjpegtools_api=20000
1502     ], [
1503       PKG_CHECK_MODULES(MJPEG, mjpegtools >= 1.9.0 mjpegtools < 2.0.0, [
1504         dnl logging API changed in release candidates
1505         OLD_CFLAGS="$CFLAGS"
1506         OLD_LIBS="$LIBS"
1507         CFLAGS="$MJPEG_CFLAGS"
1508         LIBS="$LIBS $MJPEG_LIBS -lmjpegutils $LIBM -lpthread"
1509         AC_CHECK_FUNC(mjpeg_loglev_t, [
1510           mjpegtools_api=10903
1511           ], [
1512           mjpegtools_api=10900
1513           ])
1514         CFLAGS="$OLD_CFLAGS"
1515         LIBS="$OLD_LIBS"
1516       ], [
1517         mjpegtools_api=0
1518       ])
1519     ])
1520   ])
1521 ])
1522 AC_DEFINE_UNQUOTED(GST_MJPEGTOOLS_API, $mjpegtools_api,
1523   [mjpegtools API evolution])
1524
1525 dnl *** mpeg2enc ***
1526 translit(dnm, m, l) AM_CONDITIONAL(USE_MPEG2ENC, true)
1527 AG_GST_CHECK_FEATURE(MPEG2ENC, [mpeg2enc], mpeg2enc, [
1528   HAVE_MPEG2ENC="no"
1529   dnl we require a c++ compiler for this one
1530   if [ test x$HAVE_CXX = xyes ]; then
1531     dnl libmpeg2enc was first included in mjpegtools-1.6.2-rc3 (1.6.1.92)
1532     dnl since many distros include mjpegtools specifically without mplex
1533     dnl and mpeg2enc, we check for mpeg2enc on its own, too.
1534     PKG_CHECK_MODULES(MPEG2ENC, mjpegtools >= 1.6.1.93, [
1535       dnl HACK because mpeg2enc 1.8.0 header files have a spurious 'include config.h'
1536       touch config.h
1537       dnl switch over to c++ to test things
1538       AC_LANG([C++])
1539       OLD_CPPFLAGS="$CPPFLAGS"
1540       dnl HACK as above
1541       CPPFLAGS_GOOD="$CPPFLAGS $MPEG2ENC_CFLAGS"
1542       CPPFLAGS="$CPPFLAGS_GOOD -I."
1543       dnl check headers
1544       mpeg2enc_headers_ok=no
1545       AC_CHECK_HEADER([mpeg2encoder.hh], [
1546         MPEG2ENC_LIBS="$MPEG2ENC_LIBS -lmpeg2encpp $LIBM -lpthread"
1547         OLD_LIBS="$LIBS"
1548         LIBS="$LIBS $MPEG2ENC_LIBS"
1549         AC_MSG_CHECKING([for valid mpeg2enc objects])
1550         AC_RUN_IFELSE([AC_LANG_SOURCE([[
1551           #include <mpeg2encoder.hh>
1552           #include <mpeg2encoptions.hh>
1553
1554           int
1555           main (int   argc,
1556                 char *argv[])
1557           {
1558             MPEG2EncOptions *options = new MPEG2EncOptions ();
1559             MPEG2Encoder *encoder = new MPEG2Encoder (*options);
1560             return 0;
1561           }
1562         ]])],[
1563           AC_MSG_RESULT(yes)
1564           dnl so far so good, let's check more things:
1565           dnl mjpegtools-1.8.0 does not install the required
1566           dnl mpeg2syntaxcodes.h header by default, and a new release
1567           dnl is not in sight, so check for this oversight in case
1568           dnl distros or folks have fixed this themselves
1569           if test "$mjpegtools_api" -ge "10800"; then
1570             AC_CHECK_HEADER([mpeg2syntaxcodes.h], [
1571                 mpeg2enc_headers_ok=yes
1572               ], [
1573                 mpeg2enc_headers_ok=no
1574               ])
1575           else
1576             mpeg2enc_headers_ok=yes
1577           fi
1578           if test "x$mpeg2enc_headers_ok" = "xyes"; then
1579             HAVE_MPEG2ENC="yes"
1580           fi
1581           CPPFLAGS="$CPPFLAGS_GOOD"
1582           AC_SUBST(MPEG2ENC_CFLAGS)
1583           AC_SUBST(MPEG2ENC_LIBS)
1584         ],[
1585           AC_MSG_RESULT(no)
1586         ],[])
1587         LIBS="$OLD_LIBS"
1588       ])
1589
1590       CPPFLAGS="$OLD_CPPFLAGS"
1591       AC_LANG([C])
1592     ], [
1593       HAVE_MPEG2ENC="no"
1594     ])
1595   fi
1596 ])
1597
1598 dnl *** mpg123 ***
1599 translit(dnm, m, l) AM_CONDITIONAL(USE_MPG123, true)
1600 AG_GST_CHECK_FEATURE(MPG123, [mpg123 audio decoder], mpg123, [
1601   PKG_CHECK_MODULES(MPG123, libmpg123 >= 1.13, HAVE_MPG123="yes", HAVE_MPG123="no")
1602   AC_SUBST(MPG123_CFLAGS)
1603   AC_SUBST(MPG123_LIBS)
1604 ])
1605
1606 dnl *** mplex ***
1607 translit(dnm, m, l) AM_CONDITIONAL(USE_MPLEX, true)
1608 AG_GST_CHECK_FEATURE(MPLEX, [mplex], mplex, [
1609   HAVE_MPLEX="no"
1610   dnl we require a c++ compiler for this one
1611   if [ test x$HAVE_CXX = xyes ]; then
1612     dnl libmplex was first included in mjpegtools-1.6.2-rc4 (1.6.1.93)
1613     dnl since many distros include mjpegtools specifically without mplex
1614     dnl and mpeg2enc, we check for mplex on its own, too.
1615     dnl libmplex < 1.9rc? has fuzzy ABI, valgrind and other problems
1616     PKG_CHECK_MODULES(MPLEX, mjpegtools >= 1.9.0, [
1617       dnl HACK because mplex 2.0.0 header files have a spurious 'include config.h'
1618       touch config.h
1619       dnl switch over to c++ to test things
1620       AC_LANG([C++])
1621       OLD_CPPFLAGS="$CPPFLAGS"
1622       dnl HACK as above
1623       CPPFLAGS_GOOD="$CPPFLAGS $MPLEX_CFLAGS"
1624       CPPFLAGS="$CPPFLAGS_GOOD -I."
1625       AC_CHECK_HEADER(interact.hpp, [
1626         MPLEX_LIBS="$MPLEX_LIBS -lmplex2 $LIBM"
1627         OLD_LIBS="$LIBS"
1628         LIBS="$LIBS $MPLEX_LIBS"
1629         OLD_LDFLAGS="$LDFLAGS"
1630         LDFLAGS="$LDFLAGS $MPLEX_LDFLAGS"
1631         dnl older libmplex uses off_t SegmentSize (), which leads to fuzzy ABI;
1632         dnl don't want this here
1633         AC_MSG_CHECKING([for valid mplex objects])
1634         AC_RUN_IFELSE([AC_LANG_SOURCE([[
1635
1636 #include <interact.hpp>
1637 #include <outputstrm.hpp>
1638 #include <multiplexor.hpp>
1639 int
1640 main (int   argc,
1641       char *argv[])
1642 {
1643   class TestOutputStream : public OutputStream {
1644   public:
1645     TestOutputStream () : OutputStream () { }
1646     void Write (uint8_t *a, unsigned int b) { }
1647     void NextSegment () { }
1648     uint64_t SegmentSize () { }
1649     void Close () { }
1650     int Open () { }
1651 };
1652   MultiplexJob *job = new MultiplexJob ();
1653   vector<IBitStream *> inputs;
1654   job->SetupInputStreams (inputs);
1655   TestOutputStream *out = new TestOutputStream ();
1656   Multiplexor *mux = new Multiplexor(*job, *out, NULL);
1657   return 0;
1658 }
1659         ]])],[
1660           HAVE_MPLEX="yes"
1661           CPPFLAGS="$CPPFLAGS_GOOD"
1662           AC_SUBST(MPLEX_CFLAGS)
1663           AC_SUBST(MPLEX_LIBS)
1664           AC_SUBST(MPLEX_LDFLAGS)
1665           AC_MSG_RESULT(yes)
1666         ],[AC_MSG_RESULT(no)],[])
1667         LIBS="$OLD_LIBS"
1668         LDFLAGS="$OLD_LDFLAGS"
1669       ])
1670       CPPFLAGS="$OLD_CPPFLAGS"
1671       AC_LANG([C])
1672     ], HAVE_MPLEX="no")
1673   fi
1674 ])
1675
1676 dnl *** musepack ***
1677 translit(dnm, m, l) AM_CONDITIONAL(USE_MUSEPACK, true)
1678 AG_GST_CHECK_FEATURE(MUSEPACK, [musepackdec], musepack, [
1679   AC_CHECK_HEADER([mpc/mpcdec.h], [
1680     HAVE_MUSEPACK="yes"
1681     MUSEPACK_LIBS="-lmpcdec"
1682     AC_SUBST(MUSEPACK_LIBS)
1683     ], [AC_CHECK_HEADER([mpcdec/mpcdec.h], [
1684       HAVE_MUSEPACK="yes"
1685       MUSEPACK_LIBS="-lmpcdec"
1686       AC_DEFINE(MPC_IS_OLD_API, 1, [Define if the old MusePack API is used])
1687       AC_SUBST(MUSEPACK_LIBS)
1688     ], [HAVE_MUSEPACK="no"])])
1689 ])
1690
1691 dnl *** musicbrainz ***
1692 translit(dnm, m, l) AM_CONDITIONAL(USE_MUSICBRAINZ, true)
1693 AG_GST_CHECK_FEATURE(MUSICBRAINZ, [musicbrainz tag generation], musicbrainz, [
1694   PKG_CHECK_MODULES(MUSICBRAINZ, libmusicbrainz >= 2.1.0, HAVE_MUSICBRAINZ="yes", HAVE_MUSICBRAINZ="no")
1695   AC_SUBST(MUSICBRAINZ_CFLAGS)
1696   AC_SUBST(MUSICBRAINZ_LIBS)
1697 ])
1698
1699 dnl *** MythTV ***
1700 translit(dnm, m, l) AM_CONDITIONAL(USE_MYTHTV, true)
1701 AG_GST_CHECK_FEATURE(MYTHTV, [MythTV client plugins], mythtvsrc, [
1702   PKG_CHECK_MODULES(GMYTH, gmyth >= 0.4 gmyth <= 0.7.99, HAVE_MYTHTV="yes", [
1703     HAVE_MYTHTV="no"
1704   ])
1705   AC_SUBST(GMYTH_CFLAGS)
1706   AC_SUBST(GMYTH_LIBS)
1707 ])
1708
1709 dnl *** nas ***
1710 translit(dnm, m, l) AM_CONDITIONAL(USE_NAS, true)
1711 AG_GST_CHECK_FEATURE(NAS, [nas plug-in], nassink, [
1712   HAVE_NAS="no"
1713   AG_GST_CHECK_X
1714   if test "x$HAVE_X" = "xyes"; then
1715     save_cppflags=$CFLAGS
1716     CPPFLAGS="$CPPFLAGS $X_CFLAGS"
1717     AG_GST_CHECK_LIBHEADER(NAS, audio, AuOpenServer, $X_LIBS, audio/audiolib.h,
1718       NAS_LIBS="$X_LIBS -laudio" NAS_CFLAGS="$X_CFLAGS")
1719     CPPFLAGS="$save_cppflags"
1720   fi
1721   AC_SUBST(NAS_CFLAGS)
1722   AC_SUBST(NAS_LIBS)
1723 ])
1724
1725 dnl *** neon ***
1726 translit(dnm, m, l) AM_CONDITIONAL(USE_NEON, true)
1727 AG_GST_CHECK_FEATURE(NEON, [neon http client plugins], neonhttpsrc, [
1728   PKG_CHECK_MODULES(NEON, neon >= 0.27.0  neon <= 0.29.99, HAVE_NEON="yes", [
1729     HAVE_NEON="no"
1730   ])
1731   AC_SUBST(NEON_CFLAGS)
1732   AC_SUBST(NEON_LIBS)
1733 ])
1734
1735 dnl *** ofa ***
1736 translit(dnm, m, l) AM_CONDITIONAL(USE_OFA, true)
1737 AG_GST_CHECK_FEATURE(OFA, [ofa plugins], ofa, [
1738   PKG_CHECK_MODULES(OFA, libofa >= 0.9.3, HAVE_OFA="yes", [
1739     HAVE_OFA="no"
1740   ])
1741   AC_SUBST(OFA_CFLAGS)
1742   AC_SUBST(OFA_LIBS)
1743 ])
1744
1745 dnl *** OpenAL ***
1746 translit(dnm, m, l) AM_CONDITIONAL(USE_OPENAL, true)
1747 AG_GST_CHECK_FEATURE(OPENAL, [OpenAL plugin], openal, [
1748   PKG_CHECK_MODULES(OPENAL, openal, HAVE_OPENAL="yes", [
1749     HAVE_OPENAL="no"
1750   ])
1751   AC_SUBST(OPENAL_CFLAGS)
1752   AC_SUBST(OPENAL_LIBS)
1753 ])
1754
1755 dnl *** opencv ***
1756 translit(dnm, m, l) AM_CONDITIONAL(USE_OPENCV, true)
1757 AG_GST_CHECK_FEATURE(OPENCV, [opencv plugins], opencv, [
1758   dnl we specify a max. version too because we set CV_NO_BACKWARD_COMPATIBILITY
1759   dnl and don't want the build to break when a new opencv version comes out.
1760   dnl Need to adjust this upwards once we know that our code compiles fine with
1761   dnl a new version and the no-backward-compatibility define. (There doesn't
1762   dnl seem to be a switch to suppress the warnings the cvcompat.h header
1763   dnl causes.)
1764   PKG_CHECK_MODULES(OPENCV, opencv >= 2.0.0 opencv <= 2.4.3 , [
1765     AC_PROG_CXX
1766     AC_LANG([C++])
1767     OLD_CPPFLAGS=$CPPFLAGS
1768     CPPFLAGS=$OPENCV_CFLAGS
1769     AC_CHECK_HEADERS([highgui.h opencv2/highgui/highgui_c.h])
1770     CPPFLAGS=$OLD_CPPFLAGS
1771     AC_LANG([C])
1772
1773     if test $ac_cv_header_highgui_h = "yes" -o $ac_cv_header_opencv2_highgui_highgui_c_h = "yes" ; then
1774       HAVE_OPENCV="yes"
1775     else
1776       AC_MSG_RESULT([neither highgui.h nor opencv2/highgui/highgui_c.h could not be found])
1777       HAVE_OPENCV="no"
1778     fi
1779   ], [
1780     HAVE_OPENCV="no"
1781   ])
1782   OPENCV_PREFIX="`$PKG_CONFIG --variable=prefix opencv`"
1783   AC_DEFINE_UNQUOTED(OPENCV_PREFIX, "$OPENCV_PREFIX", [opencv install prefix])
1784   AC_SUBST(OPENCV_PREFIX)
1785   AC_SUBST(OPENCV_CFLAGS)
1786   AC_SUBST(OPENCV_LIBS)
1787 ])
1788
1789 dnl *** OpenJPEG ***
1790 translit(dnm, m, l) AM_CONDITIONAL(USE_OPENJPEG, true)
1791 AG_GST_CHECK_FEATURE(OPENJPEG, [openjpeg library], openjpeg, [
1792   HAVE_OPENJPEG="no"
1793   PKG_CHECK_MODULES(OPENJPEG, libopenjpeg1,
1794     HAVE_OPENJPEG="yes",
1795     AG_GST_CHECK_LIBHEADER(OPENJPEG, openjpeg, opj_version, , openjpeg.h, OPENJPEG_LIBS="-lopenjpeg")
1796   )
1797   AC_SUBST(OPENJPEG_CFLAGS)
1798   AC_SUBST(OPENJPEG_LIBS)
1799 ])
1800
1801 dnl *** Opus ***
1802 translit(dnm, m, l) AM_CONDITIONAL(USE_OPUS, true)
1803 AG_GST_CHECK_FEATURE(OPUS, [opus], opus, [
1804   PKG_CHECK_MODULES(OPUS, opus >= 0.9.4, [
1805           AC_DEFINE([HAVE_OPUS], 1, [Define if Opus >= 0.9.4 is installed])
1806           HAVE_OPUS="yes"
1807   ], [
1808           HAVE_OPUS="no"
1809   ])
1810   AC_SUBST(OPUS_CFLAGS)
1811   AC_SUBST(OPUS_LIBS)
1812 ])
1813
1814 dnl *** pvr ***
1815 translit(dnm, m, l) AM_CONDITIONAL(USE_PVR, true)
1816 AG_GST_CHECK_FEATURE(PVR, [pvrvideosink], pvr, [
1817   PKG_CHECK_MODULES([PVR], [libtimemmgr], HAVE_PVR=yes, HAVE_PVR=no)
1818   AC_SUBST(PVR_CFLAGS)
1819   AC_SUBST(PVR_LIBS)
1820 ])
1821
1822  AC_ARG_WITH([pvr-external-headers],
1823               AS_HELP_STRING([--with-pvr-external-headers],[Use system installed PVR2D headers]),
1824               [AS_IF([test "x$with_pvr_external_headers" = "xno"],
1825                      [PVR_CFLAGS="$PVR_CFLAGS -I\$(srcdir)/pvr_includes"])],
1826               [PVR_CFLAGS="$PVR_CFLAGS -I\$(srcdir)/pvr_includes"])
1827
1828 dnl *** rsvg ***
1829 translit(dnm, m, l) AM_CONDITIONAL(USE_RSVG, true)
1830 AG_GST_CHECK_FEATURE(RSVG, [rsvg decoder], rsvg, [
1831   PKG_CHECK_MODULES(RSVG, librsvg-2.0 >= 2.36 cairo, [
1832     HAVE_RSVG="yes"
1833     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")
1834     if test "x$HAVE_RSVG_2_36_2" = "xyes"; then
1835       AC_DEFINE(HAVE_RSVG_2_36_2, [1], [Have RSVG 2.36.2 or newer])
1836     fi
1837   ], [
1838     HAVE_RSVG="no"
1839   ])
1840   AC_SUBST(RSVG_CFLAGS)
1841   AC_SUBST(RSVG_LIBS)
1842 ])
1843
1844 dnl *** eglgles ***
1845 translit(dnm, m, l) AM_CONDITIONAL(USE_EGLGLES, true)
1846 AG_GST_CHECK_FEATURE(EGLGLES, [eglgles sink], eglgles, [
1847   HAVE_EGLGLES="no"
1848
1849   if test x"$HAVE_EGL" = x"yes"; then
1850       PKG_CHECK_MODULES(EGLGLES, egl glesv2, HAVE_EGLGLES="yes", [
1851         HAVE_EGLGLES="no"
1852         old_LIBS=$LIBS
1853         old_CFLAGS=$CFLAGS
1854
1855         LIBS="$LIBS $EGL_LIBS"
1856         CFLAGS="$CFLAGS $EGL_CFLAGS"
1857         AC_CHECK_LIB([GLESv2], [glEnable],
1858           [
1859             AC_CHECK_HEADER([GLES2/gl2.h],
1860               [
1861                  HAVE_EGLGLES="yes"
1862                  EGLGLES_LIBS="-lGLESv2"
1863                  EGLGLES_CFLAGS=""
1864               ])
1865           ])
1866         LIBS=$old_LIBS
1867         CFLAGS=$old_CFLAGS
1868       ])
1869   fi
1870
1871   AC_SUBST(EGLGLES_CFLAGS)
1872   AC_SUBST(EGLGLES_LIBS)
1873 ])
1874
1875 dnl *** timidity ***
1876 translit(dnm, m, l) AM_CONDITIONAL(USE_TIMIDITY, true)
1877 AG_GST_CHECK_FEATURE(TIMIDITY, [timidity midi soft synth plugin], timidity, [
1878   PKG_CHECK_MODULES(TIMIDITY, libtimidity, [
1879     HAVE_TIMIDITY="yes",
1880         AC_MSG_CHECKING([for timidity.cfg])
1881         timidity_cfg=""
1882         if test -r /etc/timidity.cfg; then
1883           timidity_cfg=/etc/timidity.cfg
1884         elif test -r /etc/timidity/timidity.cfg; then
1885           timidity_cfg=/etc/timidity/timidity.cfg
1886         elif test -r /usr/share/timidity/timidity.cfg; then
1887           timidity_cfg=/usr/share/timidity/timidity.cfg
1888         elif test -r /usr/local/share/timidity/timidity.cfg; then
1889           timidity_cfg=/usr/local/share/timidity/timidity.cfg
1890         fi
1891         if test "x$timidity_cfg" != "x"; then
1892           AC_MSG_RESULT($timidity_cfg)
1893       AC_DEFINE_UNQUOTED(TIMIDITY_CFG, "$timidity_cfg", [Define location of timidity.cfg])
1894         else
1895           AC_MSG_RESULT([not found])
1896         fi
1897   ], [
1898     HAVE_TIMIDITY="no"
1899   ])
1900   AC_SUBST(TIMIDITY_CFLAGS)
1901   AC_SUBST(TIMIDITY_LIBS)
1902 ])
1903
1904 dnl *** teletextdec ***
1905 translit(dnm, m, l) AM_CONDITIONAL(USE_TELETEXTDEC, true)
1906 AG_GST_CHECK_FEATURE(TELETEXTDEC, [Teletext decoder], teletextdec, [
1907   AG_GST_PKG_CHECK_MODULES(TELETEXTDEC, zvbi-0.2)
1908  ])
1909
1910 dnl *** wildmidi ***
1911 translit(dnm, m, l) AM_CONDITIONAL(USE_WILDMIDI, true)
1912 AG_GST_CHECK_FEATURE(WILDMIDI, [wildmidi midi soft synth plugin], wildmidi, [
1913   AG_GST_CHECK_LIBHEADER(WILDMIDI, WildMidi,
1914                          WildMidi_Init, ,
1915                          wildmidi_lib.h,
1916                          WILDMIDI_LIBS="-lWildMidi")
1917   AC_CHECK_LIB(WildMidi, WildMidi_LoadSamples, AC_DEFINE(HAVE_WILDMIDI_0_2_2, [1], [Have WildMidi 0.2.2 or earlier library]))
1918
1919   if test "x$HAVE_WILDMIDI" = "xyes"; then
1920          WILDMIDI_CFLAGS=
1921          WILDMIDI_LIBS=-lWildMidi
1922          AC_MSG_NOTICE(compiling gstWildMidi)
1923   else
1924          WILDMIDI_CFLAGS=
1925          WILDMIDI_LIBS=
1926          AC_MSG_WARN(no WildMidi library found (libWildMidi))
1927   fi
1928   AC_SUBST(WILDMIDI_CFLAGS)
1929   AC_SUBST(WILDMIDI_LIBS)
1930 ])
1931
1932 dnl *** SDL ***
1933 translit(dnm, m, l) AM_CONDITIONAL(USE_SDL, true)
1934 AG_GST_CHECK_FEATURE(SDL, [SDL plug-in], sdlvideosink sdlaudiosink, [
1935     AM_PATH_SDL(, HAVE_SDL=yes, HAVE_SDL=no)
1936 ])
1937
1938 dnl **** Smooth Streaming ****
1939 translit(dnm, m, l) AM_CONDITIONAL(USE_SMOOTHSTREAMING, true)
1940 AG_GST_CHECK_FEATURE(SMOOTHSTREAMING, [Smooth Streaming plug-in], smoothstreaming, [
1941   PKG_CHECK_MODULES(LIBXML2, libxml-2.0 >= 2.4,
1942     [HAVE_LIBXML2="yes"
1943      HAVE_SMOOTHSTREAMING="yes"],
1944     [HAVE_LIBXML2="no"
1945      HAVE_SMOOTHSTREAMING="no"])
1946   AC_SUBST(LIBXML2_CFLAGS)
1947   AC_SUBST(LIBXML2_LIBS)
1948 ])
1949
1950 dnl *** sndfile ***
1951 translit(dnm, m, l) AM_CONDITIONAL(USE_SNDFILE, true)
1952 AG_GST_CHECK_FEATURE(SNDFILE, [sndfile plug-in], sfsrc sfsink, [
1953   PKG_CHECK_MODULES(SNDFILE, sndfile >= 1.0.16, HAVE_SNDFILE="yes", HAVE_SNDFILE="no")
1954   AC_SUBST(SNDFILE_CFLAGS)
1955   AC_SUBST(SNDFILE_LIBS)
1956 ])
1957
1958 dnl *** soundtouch ***
1959 translit(dnm, m, l) AM_CONDITIONAL(USE_SOUNDTOUCH, true)
1960 AG_GST_CHECK_FEATURE(SOUNDTOUCH, [soundtouch plug-in], soundtouch, [
1961   dnl We only need -lBPM on soundtouch < 1.4
1962   dnl We check for libSoundTouch since Debian used it before upstream
1963   dnl added a pkgconfig file.
1964   HAVE_SOUNDTOUCH_1_4=yes
1965   PKG_CHECK_MODULES(SOUNDTOUCH, soundtouch,
1966     [HAVE_SOUNDTOUCH=yes],
1967     [PKG_CHECK_MODULES(SOUNDTOUCH, soundtouch-1.4,
1968       [HAVE_SOUNDTOUCH=yes],
1969       [PKG_CHECK_MODULES(SOUNDTOUCH, soundtouch-1.0,
1970         [HAVE_SOUNDTOUCH=yes
1971           HAVE_SOUNDTOUCH_1_4=no
1972           SOUNDTOUCH_LIBS="$SOUNDTOUCH_LIBS -lBPM"],
1973         [PKG_CHECK_MODULES(SOUNDTOUCH, libSoundTouch >= 1.4,
1974           [HAVE_SOUNDTOUCH=yes],
1975           [PKG_CHECK_MODULES(SOUNDTOUCH, libSoundTouch,
1976             [HAVE_SOUNDTOUCH=yes
1977               HAVE_SOUNDTOUCH_1_4=no
1978               SOUNDTOUCH_LIBS="$SOUNDTOUCH_LIBS -lBPM"],
1979             HAVE_SOUNDTOUCH=no)])])])])
1980   AC_SUBST(SOUNDTOUCH_CFLAGS)
1981   AC_SUBST(SOUNDTOUCH_LIBS)
1982   if test "x$HAVE_CXX" != "xyes"; then
1983     USE_SOUNDTOUCH=false
1984     AC_MSG_NOTICE([Not building soundtouch plugin: no C++ compiler found])
1985   fi
1986   if test "x$HAVE_SOUNDTOUCH" = "xyes" -a "x$HAVE_SOUNDTOUCH_1_4" = "xyes"; then
1987      AC_DEFINE([HAVE_SOUNDTOUCH_1_4], [1],
1988          [Defined if the available libSoundTouch is >= 1.4])
1989   fi
1990 ])
1991
1992 dnl *** spc ***
1993 translit(dnm, m, l) AM_CONDITIONAL(USE_SPC, true)
1994 AG_GST_CHECK_FEATURE(SPC, [spc decoder], spc, [
1995   AC_CHECK_HEADER(openspc.h, [
1996     AC_CHECK_LIB(openspc, OSPC_Init, [
1997       SPC_LIBS="-lopenspc"
1998       AC_SUBST(SPC_LIBS)
1999       HAVE_SPC=yes
2000     ], [
2001       HAVE_SPC=no
2002     ])
2003   ], [
2004     HAVE_SPC=no
2005   ])
2006 ])
2007
2008 dnl *** gme ***
2009 translit(dnm, m, l) AM_CONDITIONAL(USE_GME, true)
2010 AG_GST_CHECK_FEATURE(GME, [gme decoder], gme, [
2011   AC_CHECK_HEADER(gme/gme.h, [
2012     AC_CHECK_LIB(gme, gme_new_emu, [
2013       GME_LIBS="-lgme"
2014       AC_SUBST(GME_LIBS)
2015       HAVE_GME=yes
2016     ], [
2017       HAVE_GME=no
2018     ])
2019   ], [
2020     HAVE_GME=no
2021   ])
2022
2023   if test "x$HAVE_GME" = "xyes"; then
2024     AC_CHECK_LIB(gme, gme_enable_accuracy, [
2025       AC_DEFINE(HAVE_LIBGME_ACCURACY, 1, [Define if gme 0.5.6 or newer is available])
2026       ])
2027   fi
2028 ])
2029
2030 dnl *** XVID ***
2031 translit(dnm, m, l) AM_CONDITIONAL(USE_XVID, true)
2032 AG_GST_CHECK_FEATURE(XVID, [xvid plugins], xvid, [
2033   HAVE_XVID=no
2034   AC_CHECK_HEADER(xvid.h, [
2035     OLD_LIBS="$LIBS"
2036     LIBS="-lpthread $LIBM"
2037     AC_CHECK_LIB(xvidcore, xvid_encore, [
2038       AC_CHECK_LIB(xvidcore, xvid_decore, [
2039         AC_CHECK_LIB(xvidcore, xvid_global, [
2040           AC_MSG_CHECKING([for uptodate XviD API version])
2041           AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <xvid.h>]], [[
2042               #if XVID_API_MAJOR(XVID_API) != 4
2043               #error "Incompatible XviD API version"
2044               #endif
2045               #if XVID_API_MAJOR(XVID_API) == 4 && XVID_API_MINOR(XVID_API) < 3
2046               #error "Incompatible XviD API version"
2047               #endif
2048           ]])],[ AC_MSG_RESULT(yes)
2049             XVID_LIBS="-lxvidcore $LIBM"
2050             AC_SUBST(XVID_LIBS)
2051             HAVE_XVID=yes
2052           ],[AC_MSG_RESULT(no) ])
2053         ], )
2054       ], )
2055     ], )
2056     LIBS="$OLD_LIBS"
2057   ], )
2058 ])
2059
2060 dnl *** dvb ***
2061 translit(dnm, m, l) AM_CONDITIONAL(USE_DVB, true)
2062 AG_GST_CHECK_FEATURE(DVB, [DVB Source], dvb, [
2063   AC_MSG_CHECKING([Checking for up to date dvb installation])
2064   AC_CHECK_HEADER(linux/dvb/frontend.h, [HAVE_DVB="yes"], [HAVE_DVB="no"])
2065 ])
2066
2067 dnl *** wininet ***
2068 translit(dnm, m, l) AM_CONDITIONAL(USE_WININET, true)
2069 AG_GST_CHECK_FEATURE(WININET, [Windows internet library], wininet, [
2070   AC_MSG_CHECKING([Checking for windows internet support])
2071   AC_CHECK_HEADERS([windows.h wininet.h],
2072       [HAVE_WININET="yes"], [HAVE_WININET="no"],
2073       [AC_INCLUDES_DEFAULT
2074 #include <windows.h>])
2075 ])
2076
2077 dnl *** acm ***
2078 translit(dnm, m, l) AM_CONDITIONAL(USE_ACM, true)
2079 AG_GST_CHECK_FEATURE(ACM, [Windows ACM library], acm, [
2080   AC_MSG_CHECKING([Checking for ACM support])
2081   AC_CHECK_HEADERS([windows.h msacm.h],
2082       [HAVE_ACM="yes"
2083        AC_SUBST(ACMENC_CFLAGS)
2084        AC_SUBST(ACMMP3DEC_CFLAGS)
2085       ], [HAVE_ACM="no"],
2086       [AC_INCLUDES_DEFAULT
2087 #include <windows.h>])
2088 ])
2089
2090 dnl *** vdpau ***
2091 translit(dnm, m, l) AM_CONDITIONAL(USE_VDPAU, true)
2092 AG_GST_CHECK_FEATURE(VDPAU, [VDPAU], vdpau, [
2093   VDPAU_CFLAGS=
2094   VDPAU_LIBS=-lvdpau
2095   HAVE_VDPAU=no
2096
2097   PKG_CHECK_MODULES(VDPAU, vdpau, [HAVE_VDPAU="yes"],
2098   [
2099     if test "$HAVE_VDPAU" = "no"; then
2100       saved_CPPFLAGS="$CPPFLAGS"
2101       AC_CHECK_HEADER([vdpau/vdpau.h], [HAVE_VDPAU_H=yes])
2102
2103       if test -z "$HAVE_VDPAU_H"; then
2104         dnl Didn't find VDPAU header straight away.
2105         dnl Try /usr/include/nvidia. Need to clear caching vars first
2106         AC_MSG_NOTICE([VDPAU header not in standard path. Checking /usr/include/nvidia])
2107         unset ac_cv_header_vdpau_vdpau_h
2108         unset ac_cv_header_vdpau_vdpau_x11_h
2109         VDPAU_CFLAGS="-I/usr/include/nvidia"
2110         VDPAU_LIBS="-L/usr/lib/nvidia -lvdpau"
2111         CPPFLAGS="$VDPAU_CFLAGS $saved_CPPFLAGS"
2112         AC_CHECK_HEADER([vdpau/vdpau.h], [HAVE_VDPAU_H=yes])
2113       fi
2114
2115       AC_CHECK_HEADER([vdpau/vdpau_x11.h], [HAVE_VDPAU_X11_H=yes])
2116
2117       if test "x$HAVE_VDPAU_H" = "xyes" -a "x$HAVE_VDPAU_X11_H" = "xyes"; then
2118         dnl Found the headers - look for the lib
2119         AC_MSG_NOTICE([VDPAU headers found. Checking libraries])
2120         saved_LIBS="$LIBS"
2121         LIBS="$VDPAU_LIBS $saved_LIBS"
2122         AC_CHECK_LIB(vdpau,vdp_device_create_x11,[HAVE_VDPAU="yes"])
2123         LIBS="$saved_LIBS"
2124       fi
2125     fi
2126   ])
2127
2128   if test "$HAVE_VDPAU" = "yes"; then
2129     AC_MSG_NOTICE([Found up to date VDPAU installation])
2130     AC_SUBST(VDPAU_CFLAGS)
2131     AC_SUBST(VDPAU_LIBS)
2132   fi
2133 ])
2134
2135 dnl *** sbc ***
2136 translit(dnm, m, l) AM_CONDITIONAL(USE_SBC, true)
2137 AG_GST_CHECK_FEATURE(SBC, [SBC bluetooth audio codec], sbc, [
2138   AG_GST_PKG_CHECK_MODULES(SBC, [sbc >= 1.0])
2139 ])
2140
2141 dnl *** schroedinger ***
2142 translit(dnm, m, l) AM_CONDITIONAL(USE_SCHRO, true)
2143 AG_GST_CHECK_FEATURE(SCHRO, [Schroedinger video codec], schro, [
2144   AG_GST_PKG_CHECK_MODULES(SCHRO, schroedinger-1.0 >= 1.0.10)
2145 ])
2146
2147 dnl *** zbar ***
2148 translit(dnm, m, l) AM_CONDITIONAL(USE_ZBAR, true)
2149 AG_GST_CHECK_FEATURE(ZBAR, [ZBar barcode detector], zbar, [
2150   AG_GST_PKG_CHECK_MODULES(ZBAR, zbar >= 0.9)
2151 ])
2152
2153 dnl *** rtmp ***
2154 translit(dnm, m, l) AM_CONDITIONAL(USE_RTMP, true)
2155 AG_GST_CHECK_FEATURE(RTMP, [rtmp library], rtmp, [
2156   AG_GST_PKG_CHECK_MODULES(RTMP, librtmp)
2157 ])
2158
2159 dnl *** spandsp ***
2160 translit(dnm, m, l) AM_CONDITIONAL(USE_SPANDSP, true)
2161 AG_GST_CHECK_FEATURE(SPANDSP, [Spandsp], spandsp, [
2162   PKG_CHECK_MODULES(SPANDSP, spandsp >= 0.0.6, [
2163     HAVE_SPANDSP="yes" ], [
2164     HAVE_SPANDSP="no"
2165   ])
2166 ])
2167 AC_SUBST(SPANDSP_CFLAGS)
2168 AC_SUBST(SPANDSP_LIBS)
2169
2170 dnl *** GSettings ***
2171 translit(dnm, m, l) AM_CONDITIONAL(USE_GSETTINGS, true)
2172 AG_GST_CHECK_FEATURE(GSETTINGS, [GSettings plugin], gsettings, [
2173   AG_GST_PKG_CHECK_MODULES(GSETTINGS, gio-2.0 >= 2.25.0)
2174   if test "x$HAVE_GSETTINGS" = "xyes"; then
2175     GLIB_GSETTINGS
2176   fi
2177 ])
2178
2179 dnl *** sndio ***
2180 translit(dnm, m, l) AM_CONDITIONAL(USE_SNDIO, true)
2181 AG_GST_CHECK_FEATURE(SNDIO, [sndio audio], sndio, [
2182   AC_CHECK_HEADER(sndio.h, HAVE_SNDIO="yes", HAVE_SNDIO="no")
2183   if test "x$HAVE_SNDIO" = "xyes"; then
2184     AC_CHECK_LIB(sndio, sio_open, HAVE_SNDIO="yes", HAVE_SNDIO="no")
2185     if test "x$HAVE_SNDIO" = "xyes"; then
2186       SNDIO_LIBS=-lsndio
2187       AC_SUBST(SNDIO_LIBS)
2188     fi
2189   fi
2190 ])
2191
2192 dnl *** hls ***
2193 translit(dnm, m, l) AM_CONDITIONAL(USE_HLS, true)
2194 AG_GST_CHECK_FEATURE(HLS, [http live streaming plugin], hls, [
2195   PKG_CHECK_MODULES(GNUTLS, gnutls >= 2.11.3, [ HAVE_HLS="yes" ], [ HAVE_HLS="no" ])
2196 ])
2197
2198 else
2199
2200 dnl not building plugins with external dependencies,
2201 dnl but we still need to set the conditionals
2202
2203 AM_CONDITIONAL(USE_ASSRENDER, false)
2204 AM_CONDITIONAL(USE_VOAMRWBENC, false)
2205 AM_CONDITIONAL(USE_VOAACENC, false)
2206 AM_CONDITIONAL(USE_APEXSINK, false)
2207 AM_CONDITIONAL(USE_BZ2, false)
2208 AM_CONDITIONAL(USE_CDAUDIO, false)
2209 AM_CONDITIONAL(USE_CELT, false)
2210 AM_CONDITIONAL(USE_CHROMAPRINT, false)
2211 AM_CONDITIONAL(USE_CURL, false)
2212 AM_CONDITIONAL(USE_DASH, false)
2213 AM_CONDITIONAL(USE_DC1394, false)
2214 AM_CONDITIONAL(USE_DECKLINK, false)
2215 AM_CONDITIONAL(DECKLINK_OSX, false)
2216 AM_CONDITIONAL(USE_DIRECTFB, false)
2217 AM_CONDITIONAL(USE_WAYLAND, false)
2218 AM_CONDITIONAL(USE_DIRAC, false)
2219 AM_CONDITIONAL(USE_DTS, false)
2220 AM_CONDITIONAL(USE_EXIF, false)
2221 AM_CONDITIONAL(USE_RESINDVD, false)
2222 AM_CONDITIONAL(USE_FAAC, false)
2223 AM_CONDITIONAL(USE_FAAD, false)
2224 AM_CONDITIONAL(USE_FBDEV, false)
2225 AM_CONDITIONAL(USE_FLITE, false)
2226 AM_CONDITIONAL(USE_FLUIDSYNTH, false)
2227 AM_CONDITIONAL(USE_GSM, false)
2228 AM_CONDITIONAL(USE_HLS, false)
2229 AM_CONDITIONAL(USE_KATE, false)
2230 AM_CONDITIONAL(USE_TIGER, false)
2231 AM_CONDITIONAL(USE_LADSPA, false)
2232 AM_CONDITIONAL(USE_LV2, false)
2233 AM_CONDITIONAL(USE_LIBMMS, false)
2234 AM_CONDITIONAL(USE_LINSYS, false)
2235 AM_CONDITIONAL(USE_MODPLUG, false)
2236 AM_CONDITIONAL(USE_MIMIC, false)
2237 AM_CONDITIONAL(USE_MPEG2ENC, false)
2238 AM_CONDITIONAL(USE_MPG123, false)
2239 AM_CONDITIONAL(USE_MPLEX, false)
2240 AM_CONDITIONAL(USE_MUSEPACK, false)
2241 AM_CONDITIONAL(USE_MUSICBRAINZ, false)
2242 AM_CONDITIONAL(USE_MYTHTV, false)
2243 AM_CONDITIONAL(USE_NAS, false)
2244 AM_CONDITIONAL(USE_NEON, false)
2245 AM_CONDITIONAL(USE_OFA, false)
2246 AM_CONDITIONAL(USE_OPENAL, false)
2247 AM_CONDITIONAL(USE_OPENCV, false)
2248 AM_CONDITIONAL(USE_OPENJPEG, false)
2249 AM_CONDITIONAL(USE_OPUS, false)
2250 AM_CONDITIONAL(USE_PVR, false)
2251 AM_CONDITIONAL(USE_RSVG, false)
2252 AM_CONDITIONAL(USE_TIMIDITY, false)
2253 AM_CONDITIONAL(USE_WILDMIDI, false)
2254 AM_CONDITIONAL(USE_SDL, false)
2255 AM_CONDITIONAL(USE_SMOOTHSTREAMING, false)
2256 AM_CONDITIONAL(USE_SNDFILE, false)
2257 AM_CONDITIONAL(USE_SOUNDTOUCH, false)
2258 AM_CONDITIONAL(USE_SPANDSP, false)
2259 AM_CONDITIONAL(USE_SPC, false)
2260 AM_CONDITIONAL(USE_SRTP, false)
2261 AM_CONDITIONAL(USE_GME, false)
2262 AM_CONDITIONAL(USE_GSETTINGS, false)
2263 AM_CONDITIONAL(USE_XVID, false)
2264 AM_CONDITIONAL(USE_DVB, false)
2265 AM_CONDITIONAL(USE_WININET, false)
2266 AM_CONDITIONAL(USE_ACM, false)
2267 AM_CONDITIONAL(USE_VDPAU, false)
2268 AM_CONDITIONAL(USE_SCHRO, false)
2269 AM_CONDITIONAL(USE_ZBAR, false)
2270 AM_CONDITIONAL(USE_RTMP, false)
2271 AM_CONDITIONAL(USE_TELETEXTDEC, false)
2272 AM_CONDITIONAL(USE_SNDIO, false)
2273 AM_CONDITIONAL(USE_UVCH264, false)
2274
2275 fi dnl of EXT plugins
2276
2277 dnl *** finalize CFLAGS, LDFLAGS, LIBS
2278
2279 dnl Overview:
2280 dnl GST_OPTION_CFLAGS:  common flags for profiling, debugging, errors, ...
2281 dnl GST_*:              flags shared by built objects to link against GStreamer
2282 dnl GST_ALL_LDFLAGS:    linker flags shared by all
2283 dnl GST_LIB_LDFLAGS:    additional linker flags for all libaries
2284 dnl GST_LT_LDFLAGS:     library versioning of our libraries
2285 dnl GST_PLUGIN_LDFLAGS: flags to be used for all plugins
2286
2287 dnl GST_OPTION_CFLAGS
2288 if test "x$USE_DEBUG" = xyes; then
2289    PROFILE_CFLAGS="-g"
2290 fi
2291 AC_SUBST(PROFILE_CFLAGS)
2292
2293 if test "x$PACKAGE_VERSION_NANO" = "x1"; then
2294   dnl Define _only_ during CVS (not pre-releases or releases)
2295   DEPRECATED_CFLAGS="-DGST_DISABLE_DEPRECATED"
2296 else
2297   DEPRECATED_CFLAGS=""
2298 fi
2299 AC_SUBST(DEPRECATED_CFLAGS)
2300
2301 dnl every flag in GST_OPTION_CFLAGS and GST_OPTION_CXXFLAGS can be overridden
2302 dnl at make time with e.g. make ERROR_CFLAGS=""
2303 GST_OPTION_CFLAGS="\$(WARNING_CFLAGS) \$(ERROR_CFLAGS) \$(DEBUG_CFLAGS) \$(PROFILE_CFLAGS) \$(GCOV_CFLAGS) \$(OPT_CFLAGS) \$(DEPRECATED_CFLAGS)"
2304 GST_OPTION_CXXFLAGS="\$(WARNING_CXXFLAGS) \$(ERROR_CXXFLAGS) \$(DEBUG_CFLAGS) \$(PROFILE_CFLAGS) \$(GCOV_CFLAGS) \$(OPT_CFLAGS) \$(DEPRECATED_CFLAGS)"
2305 GST_OPTION_OBJCFLAGS="\$(WARNING_OBJCFLAGS) \$(ERROR_OBJCFLAGS) \$(DEBUG_CFLAGS) \$(PROFILE_CFLAGS) \$(GCOV_CFLAGS) \$(OPT_CFLAGS) \$(DEPRECATED_CFLAGS)"
2306 AC_SUBST(GST_OPTION_CFLAGS)
2307 AC_SUBST(GST_OPTION_CXXFLAGS)
2308 AC_SUBST(GST_OPTION_OBJCFLAGS)
2309
2310 dnl FIXME: do we want to rename to GST_ALL_* ?
2311 dnl prefer internal headers to already installed ones
2312 dnl also add builddir include for enumtypes and marshal
2313 dnl add GST_OPTION_CFLAGS, but overridable
2314 GST_CFLAGS="$GST_CFLAGS -DGST_USE_UNSTABLE_API"
2315 GST_CXXFLAGS="$GST_CFLAGS $GLIB_EXTRA_CFLAGS \$(GST_OPTION_CXXFLAGS)"
2316 GST_OBJCFLAGS="$GST_CFLAGS $GLIB_EXTRA_CFLAGS \$(GST_OPTION_OBJCFLAGS)"
2317 GST_CFLAGS="$GST_CFLAGS $GLIB_EXTRA_CFLAGS \$(GST_OPTION_CFLAGS)"
2318 AC_SUBST(GST_CFLAGS)
2319 AC_SUBST(GST_CXXFLAGS)
2320 AC_SUBST(GST_OBJCFLAGS)
2321 AC_SUBST(GST_LIBS)
2322 GST_PLUGINS_BAD_CXXFLAGS="-I\$(top_srcdir)/gst-libs -I\$(top_builddir)/gst-libs"
2323 GST_PLUGINS_BAD_OBJCFLAGS="-I\$(top_srcdir)/gst-libs -I\$(top_builddir)/gst-libs"
2324 GST_PLUGINS_BAD_CFLAGS="-I\$(top_srcdir)/gst-libs -I\$(top_builddir)/gst-libs"
2325 AC_SUBST(GST_PLUGINS_BAD_CFLAGS)
2326 AC_SUBST(GST_PLUGINS_BAD_CXXFLAGS)
2327 AC_SUBST(GST_PLUGINS_BAD_OBJCFLAGS)
2328
2329 dnl LDFLAGS really should only contain flags, not libs - they get added before
2330 dnl whatevertarget_LIBS and -L flags here affect the rest of the linking
2331 GST_ALL_LDFLAGS="-no-undefined"
2332 AC_SUBST(GST_ALL_LDFLAGS)
2333
2334 dnl GST_LIB_LDFLAGS
2335 dnl linker flags shared by all libraries
2336 dnl LDFLAGS modifier defining exported symbols from built libraries
2337 dnl (export _gst_foo but not __gst_foo)
2338 GST_LIB_LDFLAGS="-export-symbols-regex ^_?\(gst_\|Gst\|GST_\).*"
2339 AC_SUBST(GST_LIB_LDFLAGS)
2340
2341 dnl this really should only contain flags, not libs - they get added before
2342 dnl whatevertarget_LIBS and -L flags here affect the rest of the linking
2343 GST_PLUGIN_LDFLAGS="-module -avoid-version -export-symbols-regex '^[_]*gst_plugin_.*' $GST_ALL_LDFLAGS"
2344 AC_SUBST(GST_PLUGIN_LDFLAGS)
2345
2346 dnl *** output files ***
2347
2348 dnl po/Makefile.in
2349
2350 AC_CONFIG_FILES(
2351 Makefile
2352 common/Makefile
2353 common/m4/Makefile
2354 gst-plugins-bad.spec
2355 gst/Makefile
2356 gst/accurip/Makefile
2357 gst/adpcmdec/Makefile
2358 gst/adpcmenc/Makefile
2359 gst/aiff/Makefile
2360 gst/asfmux/Makefile
2361 gst/audiovisualizers/Makefile
2362 gst/autoconvert/Makefile
2363 gst/bayer/Makefile
2364 gst/camerabin2/Makefile
2365 gst/cdxaparse/Makefile
2366 gst/coloreffects/Makefile
2367 gst/dataurisrc/Makefile
2368 gst/dccp/Makefile
2369 gst/debugutils/Makefile
2370 gst/dvbsuboverlay/Makefile
2371 gst/dvdspu/Makefile
2372 gst/faceoverlay/Makefile
2373 gst/festival/Makefile
2374 gst/fieldanalysis/Makefile
2375 gst/freeverb/Makefile
2376 gst/frei0r/Makefile
2377 gst/gaudieffects/Makefile
2378 gst/geometrictransform/Makefile
2379 gst/gdp/Makefile
2380 gst/hdvparse/Makefile
2381 gst/id3tag/Makefile
2382 gst/inter/Makefile
2383 gst/interlace/Makefile
2384 gst/ivfparse/Makefile
2385 gst/ivtc/Makefile
2386 gst/jp2kdecimator/Makefile
2387 gst/jpegformat/Makefile
2388 gst/librfb/Makefile
2389 gst/liveadder/Makefile
2390 gst/midi/Makefile
2391 gst/mpegdemux/Makefile
2392 gst/mpegtsdemux/Makefile
2393 gst/mpegtsmux/Makefile
2394 gst/mpegtsmux/tsmux/Makefile
2395 gst/mpegpsmux/Makefile
2396 gst/mve/Makefile
2397 gst/mxf/Makefile
2398 gst/nsf/Makefile
2399 gst/nuvdemux/Makefile
2400 gst/patchdetect/Makefile
2401 gst/pcapparse/Makefile
2402 gst/pnm/Makefile
2403 gst/rawparse/Makefile
2404 gst/real/Makefile
2405 gst/removesilence/Makefile
2406 gst/sdi/Makefile
2407 gst/sdp/Makefile
2408 gst/segmentclip/Makefile
2409 gst/siren/Makefile
2410 gst/smooth/Makefile
2411 gst/speed/Makefile
2412 gst/subenc/Makefile
2413 gst/stereo/Makefile
2414 gst/tta/Makefile
2415 gst/videofilters/Makefile
2416 gst/videomeasure/Makefile
2417 gst/videoparsers/Makefile
2418 gst/videosignal/Makefile
2419 gst/vmnc/Makefile
2420 gst/y4m/Makefile
2421 gst/yadif/Makefile
2422 gst-libs/Makefile
2423 gst-libs/gst/Makefile
2424 gst-libs/gst/basecamerabinsrc/Makefile
2425 gst-libs/gst/egl/Makefile
2426 gst-libs/gst/insertbin/Makefile
2427 gst-libs/gst/interfaces/Makefile
2428 gst-libs/gst/signalprocessor/Makefile
2429 gst-libs/gst/codecparsers/Makefile
2430 gst-libs/gst/uridownloader/Makefile
2431 sys/Makefile
2432 sys/dshowdecwrapper/Makefile
2433 sys/acmenc/Makefile
2434 sys/acmmp3dec/Makefile
2435 sys/androidmedia/Makefile
2436 sys/applemedia/Makefile
2437 sys/avc/Makefile
2438 sys/bluez/Makefile
2439 sys/d3dvideosink/Makefile
2440 sys/decklink/Makefile
2441 sys/directdraw/Makefile
2442 sys/directsound/Makefile
2443 sys/dshowsrcwrapper/Makefile
2444 sys/dshowvideosink/Makefile
2445 sys/dvb/Makefile
2446 sys/fbdev/Makefile
2447 sys/linsys/Makefile
2448 sys/opensles/Makefile
2449 sys/osxvideo/Makefile
2450 sys/qtwrapper/Makefile
2451 sys/mfc/Makefile
2452 sys/shm/Makefile
2453 sys/uvch264/Makefile
2454 sys/vcd/Makefile
2455 sys/vdpau/Makefile
2456 sys/pvr2d/Makefile
2457 sys/wasapi/Makefile
2458 sys/wininet/Makefile
2459 sys/winks/Makefile
2460 sys/winscreencap/Makefile
2461 tests/Makefile
2462 tests/check/Makefile
2463 tests/files/Makefile
2464 tests/examples/Makefile
2465 tests/examples/camerabin2/Makefile
2466 tests/examples/directfb/Makefile
2467 tests/examples/mxf/Makefile
2468 tests/examples/opencv/Makefile
2469 tests/examples/uvch264/Makefile
2470 tests/icles/Makefile
2471 ext/voamrwbenc/Makefile
2472 ext/voaacenc/Makefile
2473 ext/assrender/Makefile
2474 ext/apexsink/Makefile
2475 ext/bz2/Makefile
2476 ext/cdaudio/Makefile
2477 ext/celt/Makefile
2478 ext/chromaprint/Makefile
2479 ext/curl/Makefile
2480 ext/dash/Makefile
2481 ext/dc1394/Makefile
2482 ext/dirac/Makefile
2483 ext/directfb/Makefile
2484 ext/wayland/Makefile
2485 ext/dts/Makefile
2486 ext/eglgles/Makefile
2487 ext/faac/Makefile
2488 ext/faad/Makefile
2489 ext/flite/Makefile
2490 ext/fluidsynth/Makefile
2491 ext/gsm/Makefile
2492 ext/hls/Makefile
2493 ext/kate/Makefile
2494 ext/ladspa/Makefile
2495 ext/lv2/Makefile
2496 ext/libmms/Makefile
2497 ext/Makefile
2498 ext/modplug/Makefile
2499 ext/mpeg2enc/Makefile
2500 ext/mpg123/Makefile
2501 ext/mimic/Makefile
2502 ext/mplex/Makefile
2503 ext/musepack/Makefile
2504 ext/musicbrainz/Makefile
2505 ext/mythtv/Makefile
2506 ext/nas/Makefile
2507 ext/neon/Makefile
2508 ext/ofa/Makefile
2509 ext/openal/Makefile
2510 ext/opencv/Makefile
2511 ext/openjpeg/Makefile
2512 ext/opus/Makefile
2513 ext/rsvg/Makefile
2514 ext/resindvd/Makefile
2515 ext/rtmp/Makefile
2516 ext/sbc/Makefile
2517 ext/schroedinger/Makefile
2518 ext/sdl/Makefile
2519 ext/smoothstreaming/Makefile
2520 ext/sndfile/Makefile
2521 ext/soundtouch/Makefile
2522 ext/spandsp/Makefile
2523 ext/sndio/Makefile
2524 ext/srtp/Makefile
2525 ext/teletextdec/Makefile
2526 ext/gme/Makefile
2527 ext/gsettings/Makefile
2528 ext/gsettings/org.freedesktop.gstreamer.default-elements.gschema.xml
2529 ext/spc/Makefile
2530 ext/timidity/Makefile
2531 ext/xvid/Makefile
2532 ext/zbar/Makefile
2533 po/Makefile.in
2534 docs/Makefile
2535 docs/plugins/Makefile
2536 docs/libs/Makefile
2537 docs/version.entities
2538 pkgconfig/Makefile
2539 pkgconfig/gstreamer-plugins-bad.pc
2540 pkgconfig/gstreamer-plugins-bad-uninstalled.pc
2541 pkgconfig/gstreamer-codecparsers.pc
2542 pkgconfig/gstreamer-codecparsers-uninstalled.pc
2543 pkgconfig/gstreamer-insertbin.pc
2544 pkgconfig/gstreamer-insertbin-uninstalled.pc
2545 pkgconfig/gstreamer-egl.pc
2546 pkgconfig/gstreamer-egl-uninstalled.pc
2547 tools/Makefile
2548 m4/Makefile
2549 win32/common/config.h
2550 )
2551 AC_OUTPUT
2552
2553 AG_GST_OUTPUT_PLUGINS
2554 ORC_OUTPUT
2555