tizen 2.3.1 release
[framework/multimedia/gst-plugins-bad0.10.git] / configure.ac
1 AC_PREREQ(2.60)
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, 0.10.23,
7     http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer,
8     gst-plugins-bad)
9
10 AG_GST_INIT
11
12 dnl initialize automake
13 AM_INIT_AUTOMAKE([-Wno-portability 1.10])
14
15 dnl define PACKAGE_VERSION_* variables
16 AS_VERSION
17
18 dnl check if this is a release version
19 AS_NANO(GST_GIT="no", GST_GIT="yes")
20
21 dnl can autoconf find the source ?
22 AC_CONFIG_SRCDIR([docs/plugins/gst-plugins-bad-plugins-docs.sgml])
23
24 dnl define the output header for config
25 AM_CONFIG_HEADER([config.h])
26
27 dnl AM_MAINTAINER_MODE only provides the option to configure to enable it
28 AM_MAINTAINER_MODE
29
30 dnl sets host_* variables
31 AC_CANONICAL_HOST
32
33 dnl use pretty build output with automake >= 1.11
34 m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])],
35   [AM_DEFAULT_VERBOSITY=1
36    AC_SUBST(AM_DEFAULT_VERBOSITY)])
37
38 dnl our libraries and install dirs use major.minor as a version
39 GST_MAJORMINOR=$GST_PLUGINS_BAD_VERSION_MAJOR.$GST_PLUGINS_BAD_VERSION_MINOR
40 dnl we override it here if we need to for the release candidate of new series
41 GST_MAJORMINOR=0.10
42 AC_SUBST(GST_MAJORMINOR)
43
44 dnl CURRENT, REVISION, AGE
45 dnl - library source changed -> increment REVISION
46 dnl - interfaces added/removed/changed -> increment CURRENT, REVISION = 0
47 dnl - interfaces added -> increment AGE
48 dnl - interfaces removed -> AGE = 0
49 dnl sets GST_LT_LDFLAGS
50 AS_LIBTOOL(GST, 23, 0, 0)
51
52 AG_GST_LIBTOOL_PREPARE
53
54 dnl FIXME: this macro doesn't actually work;
55 dnl the generated libtool script has no support for the listed tags.
56 dnl So this needs to be fixed first if we want to use this
57 dnl AS_LIBTOOL_TAGS([CXX])
58
59 AC_LIBTOOL_WIN32_DLL
60 AM_PROG_LIBTOOL
61
62 dnl *** required versions of GStreamer stuff ***
63 GST_REQ=0.10.36
64 GSTPB_REQ=0.10.36
65
66 dnl *** autotools stuff ****
67
68 dnl allow for different autotools
69 AS_AUTOTOOLS_ALTERNATE
70
71 dnl Add parameters for aclocal
72 AC_SUBST(ACLOCAL_AMFLAGS, "-I m4 -I common/m4")
73
74 dnl set up gettext
75 dnl the version check needs to stay here because autopoint greps for it
76 AM_GNU_GETTEXT_VERSION([0.17])
77 AM_GNU_GETTEXT([external])
78 AG_GST_GETTEXT([gst-plugins-bad-$GST_MAJORMINOR])
79
80 dnl *** check for arguments to configure ***
81
82 AG_GST_ARG_DEBUG
83 AG_GST_ARG_PROFILING
84 AG_GST_ARG_VALGRIND
85 AG_GST_ARG_GCOV
86
87 AG_GST_ARG_EXAMPLES
88
89 AG_GST_ARG_WITH_PKG_CONFIG_PATH
90 AG_GST_ARG_WITH_PACKAGE_NAME
91 AG_GST_ARG_WITH_PACKAGE_ORIGIN
92
93 AG_GST_ARG_WITH_PLUGINS
94
95 AG_GST_ARG_ENABLE_EXTERNAL
96
97 AG_GST_ARG_ENABLE_EXPERIMENTAL
98
99 dnl *** checks for platform ***
100 AG_GST_PLATFORM
101
102 dnl * hardware/architecture *
103
104 dnl common/m4/gst-arch.m4
105 dnl check CPU type
106 AG_GST_ARCH
107
108 dnl Determine endianness
109 AC_C_BIGENDIAN
110
111 dnl *** checks for programs ***
112
113 dnl find a compiler
114 AC_PROG_CC
115 AC_PROG_CC_STDC
116
117 dnl determine c++ compiler
118 AC_PROG_CXX
119 dnl determine if c++ is available on this system
120 AC_CHECK_PROG(HAVE_CXX, $CXX, yes, no)
121
122 AS_PROG_OBJC
123
124 dnl check if the compiler supports '-c' and '-o' options
125 AM_PROG_CC_C_O
126
127 dnl check if the compiler supports do while(0) macros
128 AG_GST_CHECK_DOWHILE_MACROS
129
130 AC_PATH_PROG(VALGRIND_PATH, valgrind, no)
131 AM_CONDITIONAL(HAVE_VALGRIND, test ! "x$VALGRIND_PATH" = "xno")
132
133 dnl check for documentation tools
134 GTK_DOC_CHECK([1.3])
135 AS_PATH_PYTHON([2.1])
136 AG_GST_PLUGIN_DOCS([1.3],[2.1])
137
138 dnl *** checks for libraries ***
139
140 dnl check for libm, for sin() etc.
141 AC_CHECK_LIBM
142 AC_SUBST(LIBM)
143
144 AC_FUNC_MMAP
145
146 dnl *** checks for header files ***
147
148 AC_CHECK_HEADERS([unistd.h], HAVE_UNISTD_H=yes)
149 AM_CONDITIONAL(HAVE_UNISTD_H, test "x$HAVE_UNISTD_H" = "xyes")
150
151 if test "x$HAVE_UNISTD_H" != "xyes"; then
152   GST_PLUGINS_SELECTED=`echo $GST_PLUGINS_SELECTED | $SED -e s/festival//`
153 fi
154
155 dnl used by camerabin
156 AC_CHECK_HEADERS([sys/time.h])
157
158 dnl used by ext/dts
159 AX_CREATE_STDINT_H
160
161 AC_CHECK_HEADERS([pthread.h], HAVE_PTHREAD_H=yes)
162 AM_CONDITIONAL(HAVE_PTHREAD_H, test "x$HAVE_PTHREAD_H" = "xyes")
163
164 if test "x$HAVE_PTHREAD_H" != "xyes"; then
165   GST_PLUGINS_SELECTED=`echo $GST_PLUGINS_SELECTED | $SED -e s/dccp//`
166 fi
167
168 dnl *** checks for types/defines ***
169
170 dnl Check for FIONREAD ioctl declaration
171 dnl used in gst/dccp
172 GST_CHECK_FIONREAD
173
174 dnl *** checks for structures ***
175
176 dnl *** checks for compiler characteristics ***
177
178 dnl *** checks for library functions ***
179 AC_CHECK_FUNCS([gmtime_r])
180
181 dnl *** checks for headers ***
182 AC_CHECK_HEADERS([sys/utsname.h])
183
184 dnl *** checks for dependency libraries ***
185
186 dnl *** checks for socket and nsl libraries ***
187 AC_CHECK_FUNC(socket,,[AC_CHECK_LIB(socket,socket)])
188 AC_CHECK_FUNC(gethostbyname,,[AC_CHECK_LIB(nsl,gethostbyname)])
189
190 dnl GLib is required
191 AG_GST_GLIB_CHECK([2.24])
192
193 dnl checks for gstreamer
194 dnl uninstalled is selected preferentially -- see pkg-config(1)
195 AG_GST_CHECK_GST($GST_MAJORMINOR, [$GST_REQ], yes)
196 AG_GST_CHECK_GST_BASE($GST_MAJORMINOR, [$GST_REQ], yes)
197 AG_GST_CHECK_GST_GDP($GST_MAJORMINOR, [$GST_REQ], yes)
198 AG_GST_CHECK_GST_CHECK($GST_MAJORMINOR, [$GST_REQ], no)
199 AG_GST_CHECK_GST_CONTROLLER($GST_MAJORMINOR, [$GST_REQ], yes)
200 AM_CONDITIONAL(HAVE_GST_CHECK, test "x$HAVE_GST_CHECK" = "xyes")
201
202 AG_GST_CHECK_GST_PLUGINS_BASE($GST_MAJORMINOR, [$GSTPB_REQ], yes)
203
204 dnl check for uninstalled plugin directories for unit tests
205 AG_GST_CHECK_GST_PLUGINS_GOOD($GST_MAJORMINOR, [0.10.25])
206 AG_GST_CHECK_GST_PLUGINS_UGLY($GST_MAJORMINOR, [0.10.16])
207 AG_GST_CHECK_GST_PLUGINS_FFMPEG($GST_MAJORMINOR, [0.10.11])
208
209 dnl Check for documentation xrefs
210 GLIB_PREFIX="`$PKG_CONFIG --variable=prefix glib-2.0`"
211 GST_PREFIX="`$PKG_CONFIG --variable=prefix gstreamer-$GST_MAJORMINOR`"
212 GSTPB_PREFIX="`$PKG_CONFIG --variable=prefix gstreamer-plugins-base-$GST_MAJORMINOR`"
213 AC_SUBST(GLIB_PREFIX)
214 AC_SUBST(GST_PREFIX)
215 AC_SUBST(GSTPB_PREFIX)
216
217 dnl GTK is optional and used in examples
218 HAVE_GTK=NO
219 GTK2_REQ=2.14.0
220 GTK3_REQ=2.91.3
221 if test "x$BUILD_EXAMPLES" = "xyes"; then
222   AC_MSG_CHECKING([which gtk+ version to compile examples against (optional)])
223   AC_ARG_WITH([gtk],
224     AC_HELP_STRING([--with-gtk=3.0|2.0],
225                    [which gtk+ version to compile against (default: 2.0)]),
226     [case "$with_gtk" in
227         2.0) GTK_REQ=$GTK2_REQ ;;
228         3.0) GTK_REQ=$GTK3_REQ ;;
229         *) AC_MSG_ERROR([invalid gtk+ version specified]);;
230     esac],
231     [with_gtk=2.0
232      GTK_REQ=$GTK2_REQ])
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)
235   AC_SUBST(GTK_LIBS)
236   AC_SUBST(GTK_CFLAGS)
237 fi
238 AM_CONDITIONAL(HAVE_GTK, test "x$HAVE_GTK" = "xyes")
239
240
241
242 dnl Needed for GtkBuilder to autoconnect signals
243 PKG_CHECK_MODULES(GMODULE_EXPORT, gmodule-export-2.0, HAVE_GMODULE_EXPORT=yes, HAVE_GMODULE_EXPORT=no)
244
245 dnl x11 is optional for librfb
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.11])
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 define an ERROR_CFLAGS Makefile variable
283 dnl -Waggregate-return - libexif returns aggregates
284 dnl -Wundef - Windows headers check _MSC_VER unconditionally
285 AG_GST_SET_ERROR_CFLAGS($GST_GIT, [
286     -Wmissing-declarations -Wmissing-prototypes -Wredundant-decls
287     -Wwrite-strings -Wformat-security -Wold-style-definition
288     -Winit-self -Wmissing-include-dirs -Waddress -Wno-multichar
289     -Wnested-externs])
290
291 dnl define an ERROR_CXXFLAGS Makefile variable
292 AG_GST_SET_ERROR_CXXFLAGS($GST_GIT, [
293     -Wmissing-declarations -Wredundant-decls
294     -Wwrite-strings -Wformat-nonliteral -Wformat-security
295     -Winit-self -Wmissing-include-dirs -Waddress -Wno-multichar ])
296
297 dnl define correct level for debugging messages
298 AG_GST_SET_LEVEL_DEFAULT($GST_GIT)
299
300 dnl used in examples
301 AG_GST_DEFAULT_ELEMENTS
302
303 dnl *** plug-ins to include ***
304
305 dnl these are all the gst plug-ins, compilable without additional libs
306 AG_GST_CHECK_PLUGIN(adpcmdec)
307 AG_GST_CHECK_PLUGIN(adpcmenc)
308 AG_GST_CHECK_PLUGIN(aiff)
309 AG_GST_CHECK_PLUGIN(asfmux)
310 AG_GST_CHECK_PLUGIN(audiovisualizers)
311 AG_GST_CHECK_PLUGIN(autoconvert)
312 AG_GST_CHECK_PLUGIN(bayer)
313 AG_GST_CHECK_PLUGIN(camerabin)
314 AG_GST_CHECK_PLUGIN(camerabin2)
315 AG_GST_CHECK_PLUGIN(cdxaparse)
316 AG_GST_CHECK_PLUGIN(coloreffects)
317 AG_GST_CHECK_PLUGIN(colorspace)
318 AG_GST_CHECK_PLUGIN(dataurisrc)
319 AG_GST_CHECK_PLUGIN(dccp)
320 AG_GST_CHECK_PLUGIN(debugutils)
321 AG_GST_CHECK_PLUGIN(dtmf)
322 AG_GST_CHECK_PLUGIN(dvbsuboverlay)
323 AG_GST_CHECK_PLUGIN(dvdspu)
324 AG_GST_CHECK_PLUGIN(faceoverlay)
325 AG_GST_CHECK_PLUGIN(festival)
326 AG_GST_CHECK_PLUGIN(fieldanalysis)
327 AG_GST_CHECK_PLUGIN(freeze)
328 AG_GST_CHECK_PLUGIN(freeverb)
329 AG_GST_CHECK_PLUGIN(frei0r)
330 AG_GST_CHECK_PLUGIN(gaudieffects)
331 AG_GST_CHECK_PLUGIN(geometrictransform)
332 AG_GST_CHECK_PLUGIN(h264parse)
333 AG_GST_CHECK_PLUGIN(hdvparse)
334 AG_GST_CHECK_PLUGIN(hls)
335 AG_GST_CHECK_PLUGIN(id3tag)
336 AG_GST_CHECK_PLUGIN(inter)
337 AG_GST_CHECK_PLUGIN(interlace)
338 AG_GST_CHECK_PLUGIN(ivfparse)
339 AG_GST_CHECK_PLUGIN(jp2kdecimator)
340 AG_GST_CHECK_PLUGIN(jpegformat)
341 AG_GST_CHECK_PLUGIN(legacyresample)
342 AG_GST_CHECK_PLUGIN(librfb)
343 AG_GST_CHECK_PLUGIN(liveadder)
344 AG_GST_CHECK_PLUGIN(mpegdemux)
345 AG_GST_CHECK_PLUGIN(mpegtsdemux)
346 AG_GST_CHECK_PLUGIN(mpegtsmux)
347 AG_GST_CHECK_PLUGIN(mpegpsmux)
348 AG_GST_CHECK_PLUGIN(mpegvideoparse)
349 AG_GST_CHECK_PLUGIN(mve)
350 AG_GST_CHECK_PLUGIN(mxf)
351 AG_GST_CHECK_PLUGIN(nsf)
352 AG_GST_CHECK_PLUGIN(nuvdemux)
353 AG_GST_CHECK_PLUGIN(patchdetect)
354 AG_GST_CHECK_PLUGIN(pcapparse)
355 AG_GST_CHECK_PLUGIN(pnm)
356 AG_GST_CHECK_PLUGIN(rawparse)
357 AG_GST_CHECK_PLUGIN(real)
358 AG_GST_CHECK_PLUGIN(removesilence)
359 AG_GST_CHECK_PLUGIN(rtpmux)
360 AG_GST_CHECK_PLUGIN(rtpvp8)
361 AG_GST_CHECK_PLUGIN(scaletempo)
362 AG_GST_CHECK_PLUGIN(sdi)
363 AG_GST_CHECK_PLUGIN(sdp)
364 AG_GST_CHECK_PLUGIN(segmentclip)
365 AG_GST_CHECK_PLUGIN(siren)
366 AG_GST_CHECK_PLUGIN(smooth)
367 AG_GST_CHECK_PLUGIN(speed)
368 AG_GST_CHECK_PLUGIN(subenc)
369 AG_GST_CHECK_PLUGIN(stereo)
370 AG_GST_CHECK_PLUGIN(tta)
371 AG_GST_CHECK_PLUGIN(videofilters)
372 AG_GST_CHECK_PLUGIN(videomaxrate)
373 AG_GST_CHECK_PLUGIN(videomeasure)
374 AG_GST_CHECK_PLUGIN(videoparsers)
375 AG_GST_CHECK_PLUGIN(videosignal)
376 AG_GST_CHECK_PLUGIN(vmnc)
377 AG_GST_CHECK_PLUGIN(y4m)
378
379 dnl *** plug-ins to exclude ***
380
381 dnl real plugin only works on i386 and x86_64 for the time being.
382 if test "x$HAVE_CPU_I386" != "xyes" && test "x$HAVE_CPU_X86_64" != "xyes"; then
383   AC_MSG_WARN([Not building real plugin, only works on 32bit and 64bit x86 platforms])
384   AG_GST_DISABLE_PLUGIN(real)
385 fi
386
387 # This will always succeed because we depend on GLib >= 2.16
388 PKG_CHECK_MODULES(GIO, gio-2.0 >= 2.16, HAVE_GIO=yes, HAVE_GIO=no)
389 AC_SUBST(GIO_CFLAGS)
390 AC_SUBST(GIO_LIBS)
391
392 dnl disable gst plugins we might not be able to build on this
393 dnl platform: librfb (ugly but minimally invasive)
394 dnl FIXME: maybe move to sys, or make work with winsock2
395 AC_CHECK_HEADERS([sys/socket.h], HAVE_SYS_SOCKET_H=yes)
396 AC_CHECK_HEADERS([winsock2.h], HAVE_WINSOCK2_H=yes)
397
398 if test "x$HAVE_WINSOCK2_H" = "xyes"; then
399   WIN32_LIBS="-lws2_32"
400   AC_SUBST(WIN32_LIBS)
401 fi
402
403 dnl needed for festival
404 AM_CONDITIONAL(HAVE_WINSOCK2_H, test "x$HAVE_WINSOCK2_H" = "xyes")
405
406 if test "x$HAVE_WINSOCK2_H" = "xyes"; then
407   DCCP_LIBS="$DCCP_LIBS -lws2_32"
408   XDG_LIBS="$XDG_LIBS -lws2_32"
409   AC_SUBST(DCCP_LIBS)
410   AC_SUBST(XDG_LIBS)
411 fi
412
413 if test "x$HAVE_PTHREAD_H" = "xyes"; then
414   DCCP_LIBS="$DCCP_LIBS -lpthread"
415   AC_SUBST(DCCP_LIBS)
416 fi
417
418 if test "x$HAVE_PTHREAD_H" != "xyes"; then
419   AG_GST_DISABLE_PLUGIN(dccp)
420 fi
421
422 dnl *** sys plug-ins ***
423
424 dnl DirectSound
425 translit(dnm, m, l) AM_CONDITIONAL(USE_DIRECTSOUND, true)
426 AG_GST_CHECK_FEATURE(DIRECTSOUND, [DirectSound], directsoundsrc, [
427   HAVE_DIRECTSOUND="no"
428   save_CFLAGS="$CFLAGS"
429   save_LDFLAGS="$LDFLAGS"
430   save_LIBS="$LIBS"
431   CFLAGS="$CFLAGS $DIRECTX_CFLAGS"
432   LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS"
433   LIBS="$LIBS -ldsound -ldxerr9 -luser32"
434   AC_MSG_CHECKING(for DirectSound LDFLAGS)
435   AC_LINK_IFELSE([
436 #include <windows.h>
437 #include <dxerr9.h>
438 #include <dsound.h>
439
440 int main ()
441 {
442   DXGetErrorString9 (0);
443   DirectSoundCreate(NULL, NULL, NULL);
444
445   return 0;
446 }
447 ],
448     [HAVE_DIRECTSOUND="yes"],
449     [HAVE_DIRECTSOUND="no"])
450   AC_MSG_RESULT($HAVE_DIRECTSOUND)
451   CFLAGS=$save_CFLAGS
452   LDFLAGS=$save_LDFLAGS
453   LIBS=$save_LIBS
454
455   if test "x$HAVE_DIRECTSOUND" = "xyes";  then
456     dnl this is much more than we want
457     DIRECTSOUND_LIBS="-ldsound -ldxerr9 -luser32"
458     AC_SUBST(DIRECTX_CFLAGS)
459     AC_SUBST(DIRECTX_LDFLAGS)
460     AC_SUBST(DIRECTSOUND_LIBS)
461   fi
462   AC_SUBST(HAVE_DIRECTSOUND)
463 ])
464
465 dnl Direct3D
466 translit(dnm, m, l) AM_CONDITIONAL(USE_DIRECT3D, true)
467 AG_GST_CHECK_FEATURE(DIRECT3D, [Direct3D plug-in], direct3dsink, [
468   HAVE_DIRECT3D="no"
469   save_CFLAGS="$CFLAGS"
470   save_LDFLAGS="$LDFLAGS"
471   save_LIBS="$LIBS"
472   CFLAGS="$CFLAGS $DIRECTX_CFLAGS"
473   LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS"
474   LIBS="$LIBS -ld3d9 -lgdi32"
475   AC_MSG_CHECKING(for Direct3D LDFLAGS)
476   AC_LINK_IFELSE([
477 #include <windows.h>
478 #include <d3d9.h>
479
480 int main ()
481 {
482   Direct3DCreate9(D3D_SDK_VERSION);
483
484   return 0;
485 }
486 ],
487     [HAVE_DIRECT3D="yes"],
488     [HAVE_DIRECT3D="no"])
489   AC_MSG_RESULT($HAVE_DIRECT3D)
490   CFLAGS=$save_CFLAGS
491   LDFLAGS=$save_LDFLAGS
492   LIBS=$save_LIBS
493
494   if test "x$HAVE_DIRECT3D" = "xyes";  then
495     DIRECT3D_LIBS="-lgdi32"
496     AC_SUBST(DIRECT3D_LIBS)
497   fi
498   AC_SUBST(HAVE_DIRECT3D)
499 ])
500
501 dnl DirectDraw
502 translit(dnm, m, l) AM_CONDITIONAL(USE_DIRECTDRAW, true)
503 AG_GST_CHECK_FEATURE(DIRECTDRAW, [DirectDraw plug-in], directdrawsink, [
504   HAVE_DIRECTDRAW="no"
505   save_CFLAGS="$CFLAGS"
506   save_LDFLAGS="$LDFLAGS"
507   save_LIBS="$LIBS"
508   CFLAGS="$CFLAGS $DIRECTX_CFLAGS"
509   LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS"
510   LIBS="$LIBS -lddraw -lgdi32"
511   AC_MSG_CHECKING(for DirectDraw LDFLAGS)
512   AC_LINK_IFELSE([
513 #include <windows.h>
514 #include <ddraw.h>
515
516 int main ()
517 {
518   GetStockObject(0);
519   DirectDrawCreate(NULL, NULL, NULL);
520
521   return 0;
522 }
523 ],
524     [HAVE_DIRECTDRAW="yes"],
525     [HAVE_DIRECTDRAW="no"])
526   AC_MSG_RESULT($HAVE_DIRECTDRAW)
527   CFLAGS=$save_CFLAGS
528   LDFLAGS=$save_LDFLAGS
529   LIBS=$save_LIBS
530
531   if test "x$HAVE_DIRECTDRAW" = "xyes";  then
532     dnl this is much more than we want
533     DIRECTDRAW_LIBS="-lddraw -ldxguid -lgdi32"
534     AC_SUBST(DIRECTX_CFLAGS)
535     AC_SUBST(DIRECTX_LDFLAGS)
536     AC_SUBST(DIRECTDRAW_LIBS)
537   fi
538   AC_SUBST(HAVE_DIRECTDRAW)
539 ])
540
541 dnl *** AppleMedia (OS X and iOS) ***
542 translit(dnm, m, l) AM_CONDITIONAL(USE_APPLE_MEDIA, true)
543 HAVE_APPLE_MEDIA="no"
544 dnl SystemConfiguration.h is common to OS X and iOS, so we check for that
545 AG_GST_CHECK_FEATURE(APPLE_MEDIA, [Apple video], applemedia, [
546   AC_CHECK_HEADER(SystemConfiguration/SystemConfiguration.h, HAVE_APPLE_MEDIA="yes", HAVE_APPLE_MEDIA="no")
547 ])
548 dnl in case header SystemConfiguration/SystemConfiguration.h is found on other platforms
549 case "$host" in
550   *-*darwin*)
551     ;;
552   *)
553     HAVE_APPLE_MEDIA="no"
554     ;;
555 esac
556 HAVE_IOS="no"
557 if test "x$HAVE_APPLE_MEDIA" = "xyes"; then
558   AC_CHECK_HEADER(MobileCoreServices/MobileCoreServices.h, HAVE_IOS="yes", HAVE_IOS="no", [-])
559 fi
560
561 AM_CONDITIONAL(HAVE_IOS, test "x$HAVE_IOS" = "xyes")
562 if test "x$HAVE_IOS" = "xyes"; then
563   AC_DEFINE(HAVE_IOS, 1, [Define if building for Apple iOS])
564 fi
565
566 dnl *** OS X videosrc ***
567 translit(dnm, m, l) AM_CONDITIONAL(USE_OSX_VIDEO, true)
568 HAVE_OSX_VIDEO="no"
569 AG_GST_CHECK_FEATURE(OSX_VIDEO, [OSX video], osxvideosrc, [
570   AC_CHECK_TYPE([SeqGrabComponent], HAVE_OSX_VIDEO="yes", HAVE_OSX_VIDEO="no",
571       [#include <Quicktime/Quicktime.h>])
572 ])
573 dnl in case header Quicktime/Quicktime.h is found on other platforms
574 case "$host" in
575   *-*darwin*)
576     ;;
577   *)
578     HAVE_OSX_VIDEO="no"
579     ;;
580 esac
581
582 dnl *** OS/X AVCVideoServices ***
583 translit(dnm, m, l) AM_CONDITIONAL(USE_AVC, true)
584 HAVE_AVC="no"
585 AG_GST_CHECK_FEATURE(AVC, [AVC Video Services], avcsrc, [
586   AC_LANG_PUSH([C++])
587   save_CPPFLAGS="$CPPFLAGS"
588   CPPFLAGS="$CPPFLAGS -framework AVCVideoServices -framework CoreFoundation"
589   save_LIBS="$LIBS"
590   LIBS="$LIBS -framework AVCVideoServices -framework CoreFoundation"
591   AC_TRY_LINK([], [], [HAVE_AVC=yes], [HAVE_AVC=no])
592   LIBS=$save_LIBS
593   CPPFLAGS=$save_CPPFLAGS
594   AC_LANG_POP([C++])
595 ])
596 dnl in case header AVCVideoServices/AVCVideoServices.h is found on other platforms
597 case "$host" in
598   *-*darwin*)
599     ;;
600   *)
601     HAVE_AVC="no"
602     ;;
603 esac
604
605 dnl check for QuickTime
606 translit(dnm, m, l) AM_CONDITIONAL(USE_QUICKTIME, true)
607 AG_GST_CHECK_FEATURE(QUICKTIME, [QuickTime wrapper], qtwrapper, [
608   AC_CHECK_TYPE([SampleReferenceRecord], HAVE_QUICKTIME="yes", HAVE_QUICKTIME="no",
609       [#include <Quicktime/Quicktime.h>])
610 ])
611
612 dnl check for shm_open (for shm plugin)
613 translit(dnm, m, l) AM_CONDITIONAL(USE_SHM, true)
614 AG_GST_CHECK_FEATURE(SHM, [POSIX shared memory source and sink], shm, [
615   if test "x$HAVE_SYS_SOCKET_H" = "xyes"; then
616     AC_CHECK_LIB([rt], [shm_open],
617        AC_CHECK_DECL([MSG_NOSIGNAL], HAVE_SHM=yes, HAVE_SHM=no, [
618 #include <sys/socket.h>
619          ]),
620          HAVE_SHM=no)
621   else
622     HAVE_SHM=no
623   fi
624 ])
625
626 dnl check for Video CD
627 translit(dnm, m, l) AM_CONDITIONAL(USE_VCD, true)
628 AG_GST_CHECK_FEATURE(VCD, [Video CD], vcdsrc, [
629   AC_CHECK_HEADER(linux/cdrom.h, HAVE_VCD="yes", HAVE_VCD="no")
630 ])
631
632 dnl *** ext plug-ins ***
633 dnl keep this list sorted alphabetically !
634
635 if test "x$BUILD_EXTERNAL" = "xyes"; then
636
637 dnl *** assrender ***
638 translit(dnm, m, l) AM_CONDITIONAL(USE_ASSRENDER, true)
639 AG_GST_CHECK_FEATURE(ASSRENDER, [ASS/SSA renderer], assrender, [
640   PKG_CHECK_MODULES(ASSRENDER, libass >= 0.9.4, [
641     HAVE_ASSRENDER="yes" ], [
642     HAVE_ASSRENDER="no"
643   ])
644 ])
645 AC_SUBST(ASSRENDER_CFLAGS)
646 AC_SUBST(ASSRENDER_LIBS)
647
648 dnl *** vo-amrwbenc ***
649 translit(dnm, m, l) AM_CONDITIONAL(USE_VOAMRWBENC, true)
650 AG_GST_CHECK_FEATURE(VOAMRWBENC, [vo-amrwbenc library], vo-amrwbenc, [
651   AG_GST_PKG_CHECK_MODULES(VOAMRWBENC, vo-amrwbenc >= 0.1.0)
652 ])
653
654 dnl *** vo-aacenc ***
655 translit(dnm, m, l) AM_CONDITIONAL(USE_VOAACENC, true)
656 AG_GST_CHECK_FEATURE(VOAACENC, [vo-aacenc library], vo-aacenc, [
657   AG_GST_PKG_CHECK_MODULES(VOAACENC, vo-aacenc >= 0.1.0)
658 ])
659
660 dnl *** apexsink ***
661 translit(dnm, m, l) AM_CONDITIONAL(USE_APEXSINK, true)
662 AG_GST_CHECK_FEATURE(APEXSINK, [AirPort Express Wireless sink], apexsink, [
663   PKG_CHECK_MODULES(APEXSINK, [ openssl >= 0.9.5  libcrypto ], [
664     HAVE_APEXSINK="yes"
665     saved_LIBS="$LIBS"
666     LIBS=""
667     AC_SEARCH_LIBS(socket, [socket], [ ], [ APEXSINK="no" ])
668     AC_SEARCH_LIBS(gethostbyname, [nsl], [ ], [ APEXSINK="no" ])
669     APEXSINK_LIBS="$APEXSINK_LIBS $LIBS"
670     LIBS="$saved_LIBS"
671     AC_SUBST(APEXSINK_CFLAGS)
672     AC_SUBST(APEXSINK_LIBS)
673   ], [
674     APEXSINK="no"
675   ])
676 ])
677
678 dnl *** BZ2 ***
679 translit(dnm, m, l) AM_CONDITIONAL(USE_BZ2, true)
680 AG_GST_CHECK_FEATURE(BZ2, [bz2 library], bz2, [
681   AG_GST_CHECK_LIBHEADER(BZ2, bz2, BZ2_bzCompress, ,bzlib.h, BZ2_LIBS="-lbz2")
682   AC_SUBST(BZ2_LIBS)
683 ])
684
685 #dnl *** cairo ***
686 #translit(dnm, m, l) AM_CONDITIONAL(USE_CAIRO, true)
687 #AG_GST_CHECK_FEATURE(CAIRO, [cairo plug-in], cairo, [
688 #  PKG_CHECK_MODULES(CAIRO, cairo >= 1.0 glitz-glx, HAVE_CAIRO=yes, [
689 #    HAVE_CAIRO=no
690 #  ])
691 #  AC_SUBST(CAIRO_CFLAGS)
692 #  AC_SUBST(CAIRO_LIBS)
693 #])
694
695 dnl *** cdaudio ***
696 translit(dnm, m, l) AM_CONDITIONAL(USE_CDAUDIO, true)
697 AG_GST_CHECK_FEATURE(CDAUDIO, [cdaudio], cdaudio, [
698   PKG_CHECK_MODULES(CDAUDIO, libcdaudio, [
699           HAVE_CDAUDIO="yes"
700   ], [
701           HAVE_CDAUDIO="no"
702   ])
703   AC_SUBST(CDAUDIO_CFLAGS)
704   AC_SUBST(CDAUDIO_LIBS)
705 ])
706
707 dnl crypto for hlsdemux
708 if test "x$USE_PLUGINS_HLS" = "xyes"; then
709   PKG_CHECK_MODULES(CRYPTO, libcrypto)
710   AC_SUBST(CRYPTO_CFLAGS)
711   AC_SUBST(CRYPTO_LIBS)
712 fi
713
714 dnl *** celt ***
715 translit(dnm, m, l) AM_CONDITIONAL(USE_CELT, true)
716 AG_GST_CHECK_FEATURE(CELT, [celt], celt, [
717   PKG_CHECK_MODULES(CELT, celt >= 0.5.0, [
718           AC_DEFINE([HAVE_CELT], 1, [Define if libcelt 0.5 is installed])
719           HAVE_CELT="yes"
720   ], [
721           HAVE_CELT="no"
722   ])
723
724   PKG_CHECK_MODULES(CELT_0_7, celt >= 0.7.0, [
725           AC_DEFINE([HAVE_CELT_0_7], 1, [Define if libcelt 0.7 is installed])
726   ], [
727           dnl to prevent an error
728           true
729   ])
730
731   PKG_CHECK_MODULES(CELT_0_8, celt >= 0.8.0, [
732           AC_DEFINE([HAVE_CELT_0_8], 1, [Define if libcelt 0.8 is installed])
733   ], [
734           dnl to prevent an error
735           true
736   ])
737
738   PKG_CHECK_MODULES(CELT_0_11, celt >= 0.11.0, [
739           AC_DEFINE([HAVE_CELT_0_11], 1, [Define if libcelt 0.11 is installed])
740   ], [
741           dnl to prevent an error
742           true
743   ])
744   AC_SUBST(CELT_CFLAGS)
745   AC_SUBST(CELT_LIBS)
746 ])
747
748 dnl *** Cog ***
749 translit(dnm, m, l) AM_CONDITIONAL(USE_COG, true)
750 AG_GST_CHECK_FEATURE(COG, [Cog plugin], cog, [
751   PKG_CHECK_MODULES(COG, libpng >= 1.2, HAVE_COG="yes", [
752     HAVE_COG="no"
753   ])
754   AC_SUBST(COG_CFLAGS)
755   AC_SUBST(COG_LIBS)
756 ])
757
758 dnl *** Curl ***
759 translit(dnm, m, l) AM_CONDITIONAL(USE_CURL, true)
760 AG_GST_CHECK_FEATURE(CURL, [Curl plugin], curl, [
761   PKG_CHECK_MODULES(CURL, libcurl >= 7.21.0, [
762     HAVE_CURL="yes"
763     AC_CHECK_HEADERS([unistd.h sys/socket.h sys/types.h netinet/in.h netinet/ip.h netinet/tcp.h fcntl.h],
764         [ ], [HAVE_CURL="no"])
765     AC_MSG_CHECKING([for socket support needed by curlsink])
766     AC_MSG_RESULT($HAVE_CURL)
767   ], [
768     HAVE_CURL="no"
769   ])
770   AC_SUBST(CURL_CFLAGS)
771   AC_SUBST(CURL_LIBS)
772 ])
773
774 dnl *** dc1394  ***
775 translit(dnm, m, l) AM_CONDITIONAL(USE_DC1394, true)
776 AG_GST_CHECK_FEATURE(DC1394, [libdc1394], dc1394, [
777    PKG_CHECK_MODULES(LIBDC1394, libdc1394-2 >= 2.0.0, [
778         if test -z "`$PKG_CONFIG --modversion libdc1394-2 | grep 2.0.0-rc`"; then
779                 HAVE_DC1394="yes"
780         else
781                 HAVE_DC1394="no"
782         fi
783    ], [
784         HAVE_DC1394="no"
785         AC_MSG_RESULT(no)
786    ])
787    AC_SUBST(LIBDC1394_CFLAGS)
788    AC_SUBST(LIBDC1394_LIBS)
789 ])
790
791 dnl *** decklink  ***
792 translit(dnm, m, l) AM_CONDITIONAL(USE_DECKLINK, true)
793 AG_GST_CHECK_FEATURE(DECKLINK, [decklink], decklink, [
794    HAVE_DECKLINK=no
795    case "$host" in
796      *-*linux*)
797        if test "x$HAVE_PTHREAD_H" = "xyes"; then
798          AC_CHECK_LIB(dl, dlopen,
799            [
800             HAVE_DECKLINK=yes
801             DECKLINK_CXXFLAGS=
802             DECKLINK_LIBS="-lpthread -ldl"
803            ])
804        fi
805        ;;
806      *)
807        HAVE_DECKLINK=no
808        ;;
809    esac
810
811    AC_SUBST(DECKLINK_CXXFLAGS)
812    AC_SUBST(DECKLINK_LIBS)
813 ])
814
815 dnl **** DirectFB ****
816 translit(dnm, m, l) AM_CONDITIONAL(USE_DIRECTFB, true)
817 AG_GST_CHECK_FEATURE(DIRECTFB, [directfb], dfbvideosink , [
818   PKG_CHECK_MODULES(DIRECTFB, directfb >= 0.9.24, HAVE_DIRECTFB="yes", [
819     HAVE_DIRECTFB="no"
820   ])
821 ])
822
823 dnl **** Dirac ****
824 translit(dnm, m, l) AM_CONDITIONAL(USE_DIRAC, true)
825 AG_GST_CHECK_FEATURE(DIRAC, [dirac], dirac, [
826   PKG_CHECK_MODULES(DIRAC, dirac >= 0.10, HAVE_DIRAC="yes", [
827     HAVE_DIRAC="no"
828   ])
829 ])
830
831 dnl *** DTS ***
832 translit(dnm, m, l) AM_CONDITIONAL(USE_DTS, true)
833 AG_GST_CHECK_FEATURE(DTS, [dts library], dtsdec, [
834   HAVE_DTS="yes"
835   AG_GST_CHECK_LIBHEADER(DTS, dca, dca_init, $LIBM, dca.h,
836     DTS_LIBS="-ldca $LIBM", HAVE_DTS="no")
837   if test $HAVE_DTS = "no"; then
838     AG_GST_CHECK_LIBHEADER(DTS, dts_pic, dts_init, $LIBM, dts.h,
839       [ DTS_LIBS="-ldts_pic $LIBM"
840         AC_DEFINE(DTS_OLD, 1, [Define if an old libdts is used])
841       ])
842   fi
843   AC_SUBST(DTS_LIBS)
844 ])
845
846 dnl *** DIVX ***
847 translit(dnm, m, l) AM_CONDITIONAL(USE_DIVX, true)
848 AG_GST_CHECK_FEATURE(DIVX, [divx plugins], divx, [
849   HAVE_DIVX=yes
850   AC_CHECK_HEADER(encore2.h, , [
851     AC_MSG_WARN([Divx4linux encore headers not found])
852     HAVE_DIVX=no
853   ])
854   if [ test x$HAVE_DIVX = xyes ]; then
855     AC_MSG_CHECKING([Checking for valid divx4linux encore version])
856     AC_TRY_COMPILE([
857 #include <encore2.h>
858 #if ENCORE_VERSION != 20021024
859 #error Wrong version of divx encore libraries
860 #endif
861     ], [
862 return 0;
863     ], [
864       HAVE_DIVX=yes
865     ], [
866       HAVE_DIVX=no
867       AC_MSG_WARN([Wrong version of divx4linux installed])
868     ])
869   fi
870   if [ test x$HAVE_DIVX = xyes ]; then
871     AC_CHECK_HEADER(decore.h, , [
872       AC_MSG_WARN([Divx4linux decoder headers not found])
873       HAVE_DIVX=no
874     ])
875   fi
876   if [ test x$HAVE_DIVX = xyes ]; then
877     AC_MSG_CHECKING([Checking for valid divx4linux decore version])
878     AC_TRY_COMPILE([
879 #include <decore.h>
880 #if DECORE_VERSION != 20021112
881 #error Wrong version of divx decore libraries
882 #endif
883     ], [
884 return 0;
885     ], [
886       HAVE_DIVX=yes
887     ], [
888       HAVE_DIVX=no
889       AC_MSG_WARN([Wrong version of divx4linux installed])
890     ])
891   fi
892   LIBS="$LIBM"
893   if test x$HAVE_DIVX = xyes; then
894     AC_CHECK_LIB(divxencore, encore, , [
895       AC_MSG_WARN([Divx4linux encore libs not found])
896       HAVE_DIVX=no
897     ])
898   fi
899   if test x$HAVE_DIVX = xyes; then
900     AC_CHECK_LIB(divxdecore, decore, , [
901       AC_MSG_WARN([Divx4linux decore libs not found])
902       HAVE_DIVX=no
903   ])
904   fi
905   if test x$HAVE_DIVX = xyes; then
906     DIVXENC_LIBS="-ldivxencore $LIBM"
907     DIVXDEC_LIBS="-ldivxdecore $LIBM"
908     AC_SUBST(DIVXENC_LIBS)
909     AC_SUBST(DIVXDEC_LIBS)
910   fi
911 ])
912
913 dnl *** resindvd ***
914 translit(dnm, m, l) AM_CONDITIONAL(USE_RESINDVD, true)
915 AG_GST_CHECK_FEATURE(RESINDVD, [resindvd plugin], resindvd, [
916   PKG_CHECK_MODULES(DVDNAV, dvdnav >= 4.1.2 dvdread >= 4.1.2, HAVE_RESINDVD="yes", [
917     HAVE_RESINDVD="no"
918   ])
919 ])
920
921 dnl **** Free AAC Encoder (FAAC) ****
922 translit(dnm, m, l) AM_CONDITIONAL(USE_FAAC, true)
923 AG_GST_CHECK_FEATURE(FAAC, [AAC encoder plug-in], faac, [
924   AG_GST_CHECK_LIBHEADER(FAAC, faac, faacEncOpen, $LIBM, faac.h,
925     FAAC_LIBS="-lfaac $LIBM")
926   AS_SCRUB_INCLUDE(FAAC_CFLAGS)
927   AC_SUBST(FAAC_LIBS)
928 ])
929
930 dnl **** Free AAC Decoder (FAAD) ****
931 translit(dnm, m, l) AM_CONDITIONAL(USE_FAAD, true)
932 AG_GST_CHECK_FEATURE(FAAD, [AAC decoder plug-in], faad, [
933   HAVE_FAAD="yes"
934   faad_hdr=""
935   AG_GST_CHECK_LIBHEADER(FAAD, faad, faacDecOpen, $LIBM, faad.h,
936     FAAD_LIBS="-lfaad $LIBM", HAVE_FAAD="no")
937   if test $HAVE_FAAD = "no"; then
938     AG_GST_CHECK_LIBHEADER(FAAD, faad, NeAACDecOpen, $LIBM, neaacdec.h,
939       [ FAAD_LIBS="-lfaad $LIBM"
940         AC_DEFINE(FAAD_IS_NEAAC, 1, [Define if AAC is using new api prefix])
941         faad_hdr="neaacdec.h"
942       ], [
943         HAVE_FAAD="no"
944       ],)
945   else
946     faad_hdr="faad.h"
947   fi
948   if test $HAVE_FAAD = "yes"; then
949     AC_MSG_CHECKING([Checking for FAAD >= 2.0])
950     AC_TRY_COMPILE([#include <faad.h>], [
951         #if !defined(FAAD2_VERSION) || !defined(FAAD_FMT_DOUBLE)
952         #error Not faad2
953         #else
954         /* Release candidate of 2.0 is not good enough for us. This field
955          * was added only in 2.0 final and does not exist in 2.0-RC3 */
956         faacDecConfiguration conf; conf.dontUpSampleImplicitSBR = 1;
957         #endif
958     ], [
959       HAVE_FAAD="yes"
960
961       AC_MSG_CHECKING([Checking FAAD2 version in $faad_hdr])
962       for minor in 10 9 8 7 6 5 0; do
963         if test x$faad2_minor_version = "x"; then
964           AC_EGREP_CPP([GST_CHECK_FAAD_VERSION \"2\.$minor\"], [
965               #include <$faad_hdr>
966               GST_CHECK_FAAD_VERSION FAAD2_VERSION
967             ], [
968               faad2_minor_version=$minor
969             ])
970         fi
971       done
972       if test x$faad2_minor_version = "x"; then
973         AC_MSG_RESULT([no idea])
974       else
975         AC_MSG_RESULT([2.$faad2_minor_version])
976         AC_DEFINE_UNQUOTED([FAAD2_MINOR_VERSION], [$faad2_minor_version], [The x in 2.x])
977       fi
978     ], [
979       HAVE_FAAD="no"
980     ])
981   fi
982   AS_SCRUB_INCLUDE(FAAD_CFLAGS)
983   AC_SUBST(FAAD_LIBS)
984   AC_SUBST(FAAD_IS_NEAAC)
985 ])
986
987 dnl *** fbdev ***
988 translit(dnm, m, l) AM_CONDITIONAL(USE_FBDEV, true)
989 AG_GST_CHECK_FEATURE(FBDEV, [linux framebuffer], fbdevsink, [
990   if test "x$HAVE_FBDEV" != "xyes"; then
991     AC_CHECK_HEADER([linux/fb.h], HAVE_FBDEV=yes, HAVE_FBDEV=no)
992   fi
993 ])
994
995 dnl *** flite ***
996 translit(dnm, m, l) AM_CONDITIONAL(USE_FLITE, true)
997 AG_GST_CHECK_FEATURE(FLITE, [Flite plugin], flite, [
998   AG_GST_CHECK_LIBHEADER(FLITE, flite, flite_init, $LIBM, flite/flite.h,
999     FLITE_LIBS="-lflite -lflite_cmu_us_kal -lflite_usenglish -lflite_cmulex $LIBM")
1000
1001   AC_SUBST(FLITE_CFLAGS)
1002   AC_SUBST(FLITE_LIBS)
1003 ])
1004
1005 dnl *** gsm ***
1006 translit(dnm, m, l) AM_CONDITIONAL(USE_GSM, true)
1007 AG_GST_CHECK_FEATURE(GSM, [GSM library], gsmenc gsmdec, [
1008   AG_GST_CHECK_LIBHEADER(GSM, gsm, gsm_create, , gsm.h, GSM_LIBS="-lgsm")
1009   if test $HAVE_GSM != "yes"; then
1010     AG_GST_CHECK_LIBHEADER(GSM, gsm, gsm_create, , gsm/gsm.h, GSM_LIBS="-lgsm")
1011     if test $HAVE_GSM = "yes"; then
1012       AC_DEFINE(GSM_HEADER_IN_SUBDIR, 1, [Define if GSM header in gsm/ subdir])
1013     fi
1014   fi
1015   AC_SUBST(GSM_LIBS)
1016 ])
1017
1018 dnl *** jp2k ***
1019 translit(dnm, m, l) AM_CONDITIONAL(USE_JP2K, true)
1020 AG_GST_CHECK_FEATURE(JP2K, [jp2k], jp2kdec jp2kenc, [
1021   AG_GST_CHECK_LIBHEADER(JP2K, jasper, jas_stream_fopen, , jasper/jasper.h,
1022     JP2K_LIBS="-ljasper")
1023   AC_SUBST(JP2K_LIBS)
1024 ])
1025
1026 dnl *** kate ***
1027 translit(dnm, m, l) AM_CONDITIONAL(USE_KATE, true)
1028 AG_GST_CHECK_FEATURE(KATE, [Kate], kate, [
1029   PKG_CHECK_MODULES(KATE, kate >= 0.1.7, HAVE_KATE="yes", [
1030     HAVE_KATE="no"
1031   ])
1032   AC_SUBST(KATE_CFLAGS)
1033   AC_SUBST(KATE_LIBS)
1034   PKG_CHECK_MODULES(TIGER, tiger >= 0.3.2,
1035     [
1036       HAVE_TIGER="yes"
1037       AC_DEFINE(HAVE_TIGER, 1, [Define if libtiger is available])
1038     ],
1039     [
1040       HAVE_TIGER="no"
1041     ]
1042   )
1043   AM_CONDITIONAL(USE_TIGER, test "x$HAVE_TIGER" = "xyes")
1044   AC_SUBST(TIGER_CFLAGS)
1045   AC_SUBST(TIGER_LIBS)
1046 ],,,[AM_CONDITIONAL(USE_TIGER, false)])
1047
1048 dnl *** ladspa ***
1049 translit(dnm, m, l) AM_CONDITIONAL(USE_LADSPA, true)
1050 AG_GST_CHECK_FEATURE(LADSPA, [ladspa], ladspa, [
1051   AC_CHECK_HEADER(ladspa.h, HAVE_LADSPA="yes", HAVE_LADSPA="no")
1052
1053   PKG_CHECK_MODULES(LRDF, lrdf, HAVE_LRDF=yes, HAVE_LRDF=no)
1054   if test $HAVE_LRDF = "yes"; then
1055     AC_DEFINE(HAVE_LRDF, 1, [Define if we have liblrdf])
1056   fi
1057   AC_SUBST(LRDF_LIBS)
1058   AC_SUBST(LRDF_CFLAGS)
1059 ])
1060
1061 dnl *** LV2 ***
1062 translit(dnm, m, l) AM_CONDITIONAL(USE_LV2, true)
1063 AG_GST_CHECK_FEATURE(LV2, [lv2], lv2, [
1064   PKG_CHECK_MODULES(SLV2, slv2 >= 0.6.6, HAVE_LV2="yes", HAVE_LV2="no")
1065   AC_SUBST(SLV2_CFLAGS)
1066   AC_SUBST(SLV2_LIBS)
1067 ])
1068
1069 dnl *** libmms ***
1070 translit(dnm, m, l) AM_CONDITIONAL(USE_LIBMMS, true)
1071 AG_GST_CHECK_FEATURE(LIBMMS, [mms protocol library], libmms, [
1072   dnl check with pkg-config first
1073   PKG_CHECK_MODULES(LIBMMS, libmms >= 0.4, HAVE_LIBMMS="yes", [
1074     HAVE_LIBMMS="no"
1075   ])
1076 ])
1077 AC_SUBST(LIBMMS_LIBS)
1078
1079 dnl *** linsys ***
1080 translit(dnm, m, l) AM_CONDITIONAL(USE_LINSYS, true)
1081 AG_GST_CHECK_FEATURE(LINSYS, [Linear Systems SDI plugin], linsys, [
1082   case "$host" in
1083     *-*linux*)
1084       HAVE_LINSYS=yes
1085       ;;
1086     *)
1087       HAVE_LINSYS=no
1088       ;;
1089   esac
1090 ])
1091
1092 dnl *** modplug ***
1093 translit(dnm, m, l) AM_CONDITIONAL(USE_MODPLUG, true)
1094 AG_GST_CHECK_FEATURE(MODPLUG, modplug, modplug, [
1095   if test "x$HAVE_CXX" != "xyes"; then
1096     AC_MSG_WARN([Not compiling modplug plugin as it requires a C++ compiler])
1097     HAVE_MODPLUG="no"
1098   else
1099     PKG_CHECK_MODULES(MODPLUG, libmodplug, HAVE_MODPLUG="yes", HAVE_MODPLUG="no")
1100   fi
1101   AC_SUBST(MODPLUG_CFLAGS)
1102   AC_SUBST(MODPLUG_LIBS)
1103 ])
1104
1105 dnl *** mimic ***
1106 translit(dnm, m, l) AM_CONDITIONAL(USE_MIMIC, true)
1107 AG_GST_CHECK_FEATURE(MIMIC, [libmimic library], mimic, [
1108   MIMDEC_REQUIRED=1.0
1109   PKG_CHECK_MODULES(MIMIC, libmimic >= $MIMDEC_REQUIRED,
1110       HAVE_MIMIC=yes, HAVE_MIMIC=no)
1111   AC_SUBST(MIMIC_CFLAGS)
1112   AC_SUBST(MIMIC_LIBS)
1113 ])
1114
1115 dnl *** mjpegtools version info ***
1116 dnl some may prefer older version (given quirks above)
1117 dnl hm, no version info seems available within mjpegtools headers
1118 dnl and API really moves along
1119 echo
1120 PKG_CHECK_EXISTS(mjpegtools >= 1.6.1.93 mjpegtools < 1.8.0, [
1121   mjpegtools_api=10601
1122 ], [
1123   PKG_CHECK_EXISTS(mjpegtools >= 1.8.0 mjpegtools < 1.9.0, [
1124     mjpegtools_api=10800
1125   ], [
1126     PKG_CHECK_EXISTS(mjpegtools >= 2.0.0, [
1127       mjpegtools_api=20000
1128     ], [
1129       PKG_CHECK_MODULES(MJPEG, mjpegtools >= 1.9.0 mjpegtools < 2.0.0, [
1130         dnl logging API changed in release candidates
1131         OLD_CFLAGS="$CFLAGS"
1132         OLD_LIBS="$LIBS"
1133         CFLAGS="$MJPEG_CFLAGS"
1134         LIBS="$LIBS $MJPEG_LIBS -lmjpegutils $LIBM -lpthread"
1135         AC_CHECK_FUNC(mjpeg_loglev_t, [
1136           mjpegtools_api=10903
1137           ], [
1138           mjpegtools_api=10900
1139           ])
1140         CFLAGS="$OLD_CFLAGS"
1141         LIBS="$OLD_LIBS"
1142       ], [
1143         mjpegtools_api=0
1144       ])
1145     ])
1146   ])
1147 ])
1148 AC_DEFINE_UNQUOTED(GST_MJPEGTOOLS_API, $mjpegtools_api,
1149   [mjpegtools API evolution])
1150
1151 dnl *** mpeg2enc ***
1152 translit(dnm, m, l) AM_CONDITIONAL(USE_MPEG2ENC, true)
1153 AG_GST_CHECK_FEATURE(MPEG2ENC, [mpeg2enc], mpeg2enc, [
1154   HAVE_MPEG2ENC="no"
1155   dnl we require a c++ compiler for this one
1156   if [ test x$HAVE_CXX = xyes ]; then
1157     dnl libmpeg2enc was first included in mjpegtools-1.6.2-rc3 (1.6.1.92)
1158     dnl since many distros include mjpegtools specifically without mplex
1159     dnl and mpeg2enc, we check for mpeg2enc on its own, too.
1160     PKG_CHECK_MODULES(MPEG2ENC, mjpegtools >= 1.6.1.93, [
1161       dnl HACK because mpeg2enc 1.8.0 header files have a spurious 'include config.h'
1162       touch config.h
1163       dnl switch over to c++ to test things
1164       AC_LANG_CPLUSPLUS
1165       OLD_CPPFLAGS="$CPPFLAGS"
1166       dnl HACK as above
1167       CPPFLAGS_GOOD="$CPPFLAGS $MPEG2ENC_CFLAGS"
1168       CPPFLAGS="$CPPFLAGS_GOOD -I."
1169       dnl check headers
1170       mpeg2enc_headers_ok=no
1171       AC_CHECK_HEADER([mpeg2encoder.hh], [
1172         MPEG2ENC_LIBS="$MPEG2ENC_LIBS -lmpeg2encpp $LIBM -lpthread"
1173         OLD_LIBS="$LIBS"
1174         LIBS="$LIBS $MPEG2ENC_LIBS"
1175         AC_MSG_CHECKING([for valid mpeg2enc objects])
1176         AC_TRY_RUN([
1177           #include <mpeg2encoder.hh>
1178           #include <mpeg2encoptions.hh>
1179
1180           int
1181           main (int   argc,
1182                 char *argv[])
1183           {
1184             MPEG2EncOptions *options = new MPEG2EncOptions ();
1185             MPEG2Encoder *encoder = new MPEG2Encoder (*options);
1186             return 0;
1187           }
1188         ],[
1189           AC_MSG_RESULT(yes)
1190           dnl so far so good, let's check more things:
1191           dnl mjpegtools-1.8.0 does not install the required
1192           dnl mpeg2syntaxcodes.h header by default, and a new release
1193           dnl is not in sight, so check for this oversight in case
1194           dnl distros or folks have fixed this themselves
1195           if test "$mjpegtools_api" -ge "10800"; then
1196             AC_CHECK_HEADER([mpeg2syntaxcodes.h], [
1197                 mpeg2enc_headers_ok=yes
1198               ], [
1199                 mpeg2enc_headers_ok=no
1200               ])
1201           else
1202             mpeg2enc_headers_ok=yes
1203           fi
1204           if test "x$mpeg2enc_headers_ok" = "xyes"; then
1205             HAVE_MPEG2ENC="yes"
1206           fi
1207           CPPFLAGS="$CPPFLAGS_GOOD"
1208           AC_SUBST(MPEG2ENC_CFLAGS)
1209           AC_SUBST(MPEG2ENC_LIBS)
1210         ], [
1211           AC_MSG_RESULT(no)
1212         ])
1213         LIBS="$OLD_LIBS"
1214       ])
1215
1216       CPPFLAGS="$OLD_CPPFLAGS"
1217       AC_LANG_C
1218     ], [
1219       HAVE_MPEG2ENC="no"
1220     ])
1221   fi
1222 ])
1223
1224 dnl *** mplex ***
1225 translit(dnm, m, l) AM_CONDITIONAL(USE_MPLEX, true)
1226 AG_GST_CHECK_FEATURE(MPLEX, [mplex], mplex, [
1227   HAVE_MPLEX="no"
1228   dnl we require a c++ compiler for this one
1229   if [ test x$HAVE_CXX = xyes ]; then
1230     dnl libmplex was first included in mjpegtools-1.6.2-rc4 (1.6.1.93)
1231     dnl since many distros include mjpegtools specifically without mplex
1232     dnl and mpeg2enc, we check for mplex on its own, too.
1233     dnl libmplex < 1.9rc? has fuzzy ABI, valgrind and other problems
1234     PKG_CHECK_MODULES(MPLEX, mjpegtools >= 1.9.0, [
1235       dnl HACK because mplex 2.0.0 header files have a spurious 'include config.h'
1236       touch config.h
1237       dnl switch over to c++ to test things
1238       AC_LANG_CPLUSPLUS
1239       OLD_CPPFLAGS="$CPPFLAGS"
1240       dnl HACK as above
1241       CPPFLAGS_GOOD="$CPPFLAGS $MPLEX_CFLAGS"
1242       CPPFLAGS="$CPPFLAGS_GOOD -I."
1243       AC_CHECK_HEADER(interact.hpp, [
1244         MPLEX_LIBS="$MPLEX_LIBS -lmplex2 $LIBM"
1245         OLD_LIBS="$LIBS"
1246         LIBS="$LIBS $MPLEX_LIBS"
1247         OLD_LDFLAGS="$LDFLAGS"
1248         LDFLAGS="$LDFLAGS $MPLEX_LDFLAGS"
1249         dnl older libmplex uses off_t SegmentSize (), which leads to fuzzy ABI;
1250         dnl don't want this here
1251         AC_MSG_CHECKING([for valid mplex objects])
1252         AC_TRY_RUN([
1253
1254 #include <interact.hpp>
1255 #include <outputstrm.hpp>
1256 #include <multiplexor.hpp>
1257 int
1258 main (int   argc,
1259       char *argv[])
1260 {
1261   class TestOutputStream : public OutputStream {
1262   public:
1263     TestOutputStream () : OutputStream () { }
1264     void Write (uint8_t *a, unsigned int b) { }
1265     void NextSegment () { }
1266     uint64_t SegmentSize () { }
1267     void Close () { }
1268     int Open () { }
1269 };
1270   MultiplexJob *job = new MultiplexJob ();
1271   vector<IBitStream *> inputs;
1272   job->SetupInputStreams (inputs);
1273   TestOutputStream *out = new TestOutputStream ();
1274   Multiplexor *mux = new Multiplexor(*job, *out, NULL);
1275   return 0;
1276 }
1277         ],[
1278           HAVE_MPLEX="yes"
1279           CPPFLAGS="$CPPFLAGS_GOOD"
1280           AC_SUBST(MPLEX_CFLAGS)
1281           AC_SUBST(MPLEX_LIBS)
1282           AC_SUBST(MPLEX_LDFLAGS)
1283           AC_MSG_RESULT(yes)
1284         ], AC_MSG_RESULT(no))
1285         LIBS="$OLD_LIBS"
1286         LDFLAGS="$OLD_LDFLAGS"
1287       ])
1288       CPPFLAGS="$OLD_CPPFLAGS"
1289       AC_LANG_C
1290     ], HAVE_MPLEX="no")
1291   fi
1292 ])
1293
1294 dnl *** musepack ***
1295 translit(dnm, m, l) AM_CONDITIONAL(USE_MUSEPACK, true)
1296 AG_GST_CHECK_FEATURE(MUSEPACK, [musepackdec], musepack, [
1297   AC_CHECK_HEADER([mpc/mpcdec.h], [
1298     HAVE_MUSEPACK="yes"
1299     MUSEPACK_LIBS="-lmpcdec"
1300     AC_SUBST(MUSEPACK_LIBS)
1301     ], [AC_CHECK_HEADER([mpcdec/mpcdec.h], [
1302       HAVE_MUSEPACK="yes"
1303       MUSEPACK_LIBS="-lmpcdec"
1304       AC_DEFINE(MPC_IS_OLD_API, 1, [Define if the old MusePack API is used])
1305       AC_SUBST(MUSEPACK_LIBS)
1306     ], [HAVE_MUSEPACK="no"])])
1307 ])
1308
1309 dnl *** musicbrainz ***
1310 translit(dnm, m, l) AM_CONDITIONAL(USE_MUSICBRAINZ, true)
1311 AG_GST_CHECK_FEATURE(MUSICBRAINZ, [musicbrainz tag generation], musicbrainz, [
1312   PKG_CHECK_MODULES(MUSICBRAINZ, libmusicbrainz >= 2.1.0, HAVE_MUSICBRAINZ="yes", HAVE_MUSICBRAINZ="no")
1313   AC_SUBST(MUSICBRAINZ_CFLAGS)
1314   AC_SUBST(MUSICBRAINZ_LIBS)
1315 ])
1316
1317 dnl *** MythTV ***
1318 translit(dnm, m, l) AM_CONDITIONAL(USE_MYTHTV, true)
1319 AG_GST_CHECK_FEATURE(MYTHTV, [MythTV client plugins], mythtvsrc, [
1320   PKG_CHECK_MODULES(GMYTH, gmyth >= 0.4 gmyth <= 0.7.99, HAVE_MYTHTV="yes", [
1321     HAVE_MYTHTV="no"
1322   ])
1323   AC_SUBST(GMYTH_CFLAGS)
1324   AC_SUBST(GMYTH_LIBS)
1325 ])
1326
1327 dnl *** nas ***
1328 translit(dnm, m, l) AM_CONDITIONAL(USE_NAS, true)
1329 AG_GST_CHECK_FEATURE(NAS, [nas plug-in], nassink, [
1330   HAVE_NAS="no"
1331   AG_GST_CHECK_X
1332   if test "x$HAVE_X" = "xyes"; then
1333     save_cppflags=$CFLAGS
1334     CPPFLAGS="$CPPFLAGS $X_CFLAGS"
1335     AG_GST_CHECK_LIBHEADER(NAS, audio, AuOpenServer, $X_LIBS, audio/audiolib.h,
1336       NAS_LIBS="$X_LIBS -laudio" NAS_CFLAGS="$X_CFLAGS")
1337     CPPFLAGS="$save_cppflags"
1338   fi
1339   AC_SUBST(NAS_CFLAGS)
1340   AC_SUBST(NAS_LIBS)
1341 ])
1342
1343 dnl *** neon ***
1344 translit(dnm, m, l) AM_CONDITIONAL(USE_NEON, true)
1345 AG_GST_CHECK_FEATURE(NEON, [neon http client plugins], neonhttpsrc, [
1346   PKG_CHECK_MODULES(NEON, neon >= 0.27.0  neon <= 0.29.99, HAVE_NEON="yes", [
1347     HAVE_NEON="no"
1348   ])
1349   AC_SUBST(NEON_CFLAGS)
1350   AC_SUBST(NEON_LIBS)
1351 ])
1352
1353 dnl *** ofa ***
1354 translit(dnm, m, l) AM_CONDITIONAL(USE_OFA, true)
1355 AG_GST_CHECK_FEATURE(OFA, [ofa plugins], ofa, [
1356   PKG_CHECK_MODULES(OFA, libofa >= 0.9.3, HAVE_OFA="yes", [
1357     HAVE_OFA="no"
1358   ])
1359   AC_SUBST(OFA_CFLAGS)
1360   AC_SUBST(OFA_LIBS)
1361 ])
1362
1363 dnl *** OpenAL ***
1364 translit(dnm, m, l) AM_CONDITIONAL(USE_OPENAL, true)
1365 AG_GST_CHECK_FEATURE(OPENAL, [OpenAL plugin], openal, [
1366   PKG_CHECK_MODULES(OPENAL, openal, HAVE_OPENAL="yes", [
1367     HAVE_OPENAL="no"
1368   ])
1369   AC_SUBST(OPENAL_CFLAGS)
1370   AC_SUBST(OPENAL_LIBS)
1371 ])
1372
1373 dnl *** opencv ***
1374 translit(dnm, m, l) AM_CONDITIONAL(USE_OPENCV, true)
1375 AG_GST_CHECK_FEATURE(OPENCV, [opencv plugins], opencv, [
1376   dnl we specify a max. version too because we set CV_NO_BACKWARD_COMPATIBILITY
1377   dnl and don't want the build to break when a new opencv version comes out.
1378   dnl Need to adjust this upwards once we know that our code compiles fine with
1379   dnl a new version and the no-backward-compatibility define. (There doesn't
1380   dnl seem to be a switch to suppress the warnings the cvcompat.h header
1381   dnl causes.)
1382   PKG_CHECK_MODULES(OPENCV, opencv >= 2.0.0 opencv <= 2.3.1 , [
1383     AC_PROG_CXX
1384     AC_LANG_CPLUSPLUS
1385     OLD_CPPFLAGS=$CPPFLAGS
1386     CPPFLAGS=$OPENCV_CFLAGS
1387     AC_CHECK_HEADER(highgui.h, HAVE_HIGHGUI="yes", HAVE_HIGHGUI="no")
1388     AC_CHECK_HEADER(cvaux.h, HAVE_CVAUX="yes", HAVE_CVAUX="no")
1389     CPPFLAGS=$OLD_CPPFLAGS
1390     AC_LANG_C
1391     if test "x$HAVE_HIGHGUI" = "xno"; then
1392       AC_MSG_RESULT(highgui.h could not be found.)
1393       HAVE_OPENCV="no"
1394     elif test "x$HAVE_CVAUX" = "xno"; then
1395       AC_MSG_RESULT(cvaux.h could not be found.)
1396       HAVE_OPENCV="no"
1397     else
1398       HAVE_OPENCV="yes"
1399     fi
1400   ], [
1401     HAVE_OPENCV="no"
1402   ])
1403   AC_SUBST(OPENCV_CFLAGS)
1404   AC_SUBST(OPENCV_LIBS)
1405 ])
1406
1407 dnl *** Opus ***
1408 translit(dnm, m, l) AM_CONDITIONAL(USE_OPUS, true)
1409 AG_GST_CHECK_FEATURE(OPUS, [opus], opus, [
1410   PKG_CHECK_MODULES(OPUS, opus >= 0.9.4, [
1411           AC_DEFINE([HAVE_OPUS], 1, [Define if Opus >= 0.9.4 is installed])
1412           HAVE_OPUS="yes"
1413   ], [
1414           HAVE_OPUS="no"
1415   ])
1416   AC_SUBST(OPUS_CFLAGS)
1417   AC_SUBST(OPUS_LIBS)
1418 ])
1419
1420 dnl *** pvr ***
1421 translit(dnm, m, l) AM_CONDITIONAL(USE_PVR, true)
1422 AG_GST_CHECK_FEATURE(PVR, [pvrvideosink], pvr, [
1423   PKG_CHECK_MODULES([PVR], [libtimemmgr], HAVE_PVR=yes, HAVE_PVR=no)
1424   AC_SUBST(PVR_CFLAGS)
1425   AC_SUBST(PVR_LIBS)
1426 ])
1427
1428  AC_ARG_WITH([pvr-external-headers],
1429               AC_HELP_STRING([--with-pvr-external-headers], [Use system installed PVR2D headers]),
1430               [AS_IF([test "x$with_pvr_external_headers" = "xno"],
1431                      [PVR_CFLAGS="$PVR_CFLAGS -I\$(srcdir)/pvr_includes"])],
1432               [PVR_CFLAGS="$PVR_CFLAGS -I\$(srcdir)/pvr_includes"])
1433
1434 dnl *** rsvg ***
1435 translit(dnm, m, l) AM_CONDITIONAL(USE_RSVG, true)
1436 AG_GST_CHECK_FEATURE(RSVG, [rsvg decoder], rsvg, [
1437   PKG_CHECK_MODULES(RSVG, librsvg-2.0 >= 2.14 cairo, HAVE_RSVG="yes", [
1438     HAVE_RSVG="no"
1439   ])
1440   AC_SUBST(RSVG_CFLAGS)
1441   AC_SUBST(RSVG_LIBS)
1442 ])
1443
1444 dnl *** timidity ***
1445 translit(dnm, m, l) AM_CONDITIONAL(USE_TIMIDITY, true)
1446 AG_GST_CHECK_FEATURE(TIMIDITY, [timidity midi soft synth plugin], timidity, [
1447   PKG_CHECK_MODULES(TIMIDITY, libtimidity, [
1448     HAVE_TIMIDITY="yes",
1449         AC_MSG_CHECKING([for timidity.cfg])
1450         timidity_cfg=""
1451         if test -r /etc/timidity.cfg; then
1452           timidity_cfg=/etc/timidity.cfg
1453         elif test -r /etc/timidity/timidity.cfg; then
1454           timidity_cfg=/etc/timidity/timidity.cfg
1455         elif test -r /usr/share/timidity/timidity.cfg; then
1456           timidity_cfg=/usr/share/timidity/timidity.cfg
1457         elif test -r /usr/local/share/timidity/timidity.cfg; then
1458           timidity_cfg=/usr/local/share/timidity/timidity.cfg
1459         fi
1460         if test "x$timidity_cfg" != "x"; then
1461           AC_MSG_RESULT($timidity_cfg)
1462       AC_DEFINE_UNQUOTED(TIMIDITY_CFG, "$timidity_cfg", [Define location of timidity.cfg])
1463         else
1464           AC_MSG_RESULT([not found])
1465         fi
1466   ], [
1467     HAVE_TIMIDITY="no"
1468   ])
1469   AC_SUBST(TIMIDITY_CFLAGS)
1470   AC_SUBST(TIMIDITY_LIBS)
1471 ])
1472
1473 dnl *** teletextdec ***
1474 translit(dnm, m, l) AM_CONDITIONAL(USE_TELETEXTDEC, true)
1475 AG_GST_CHECK_FEATURE(TELETEXTDEC, [Teletext decoder], teletextdec, [
1476   AG_GST_PKG_CHECK_MODULES(TELETEXTDEC, zvbi-0.2)
1477  ])
1478
1479 dnl *** wildmidi ***
1480 translit(dnm, m, l) AM_CONDITIONAL(USE_WILDMIDI, true)
1481 AG_GST_CHECK_FEATURE(WILDMIDI, [wildmidi midi soft synth plugin], wildmidi, [
1482   AG_GST_CHECK_LIBHEADER(WILDMIDI, WildMidi,
1483                          WildMidi_Init, ,
1484                          wildmidi_lib.h,
1485                          WILDMIDI_LIBS="-lWildMidi")
1486   AC_CHECK_LIB(WildMidi, WildMidi_LoadSamples, AC_DEFINE(HAVE_WILDMIDI_0_2_2, [1], [Have WildMidi 0.2.2 or earlier library]))
1487
1488   if test "x$HAVE_WILDMIDI" = "xyes"; then
1489          WILDMIDI_CFLAGS=
1490          WILDMIDI_LIBS=-lWildMidi
1491          AC_MSG_NOTICE(compiling gstWildMidi)
1492   else
1493          WILDMIDI_CFLAGS=
1494          WILDMIDI_LIBS=
1495          AC_MSG_WARN(no WildMidi library found (libWildMidi))
1496   fi
1497   AC_SUBST(WILDMIDI_CFLAGS)
1498   AC_SUBST(WILDMIDI_LIBS)
1499 ])
1500
1501 dnl *** SDL ***
1502 translit(dnm, m, l) AM_CONDITIONAL(USE_SDL, true)
1503 AG_GST_CHECK_FEATURE(SDL, [SDL plug-in], sdlvideosink sdlaudiosink, [
1504     AM_PATH_SDL(, HAVE_SDL=yes, HAVE_SDL=no)
1505 ])
1506
1507 dnl *** sndfile ***
1508 translit(dnm, m, l) AM_CONDITIONAL(USE_SNDFILE, true)
1509 AG_GST_CHECK_FEATURE(SNDFILE, [sndfile plug-in], sfsrc sfsink, [
1510   PKG_CHECK_MODULES(SNDFILE, sndfile >= 1.0.16, HAVE_SNDFILE="yes", HAVE_SNDFILE="no")
1511   AC_SUBST(SNDFILE_CFLAGS)
1512   AC_SUBST(SNDFILE_LIBS)
1513 ])
1514
1515 dnl *** soundtouch ***
1516 translit(dnm, m, l) AM_CONDITIONAL(USE_SOUNDTOUCH, true)
1517 AG_GST_CHECK_FEATURE(SOUNDTOUCH, [soundtouch plug-in], soundtouch, [
1518   dnl We only need -lBPM on soundtouch < 1.4
1519   dnl We check for libSoundTouch since Debian used it before upstream
1520   dnl added a pkgconfig file.
1521   HAVE_SOUNDTOUCH_1_4=yes
1522   PKG_CHECK_MODULES(SOUNDTOUCH, soundtouch,
1523     [HAVE_SOUNDTOUCH=yes],
1524     [PKG_CHECK_MODULES(SOUNDTOUCH, soundtouch-1.4,
1525       [HAVE_SOUNDTOUCH=yes],
1526       [PKG_CHECK_MODULES(SOUNDTOUCH, soundtouch-1.0,
1527         [HAVE_SOUNDTOUCH=yes
1528           HAVE_SOUNDTOUCH_1_4=no
1529           SOUNDTOUCH_LIBS="$SOUNDTOUCH_LIBS -lBPM"],
1530         [PKG_CHECK_MODULES(SOUNDTOUCH, libSoundTouch >= 1.4,
1531           [HAVE_SOUNDTOUCH=yes],
1532           [PKG_CHECK_MODULES(SOUNDTOUCH, libSoundTouch,
1533             [HAVE_SOUNDTOUCH=yes
1534               HAVE_SOUNDTOUCH_1_4=no
1535               SOUNDTOUCH_LIBS="$SOUNDTOUCH_LIBS -lBPM"],
1536             HAVE_SOUNDTOUCH=no)])])])])
1537   AC_SUBST(SOUNDTOUCH_CFLAGS)
1538   AC_SUBST(SOUNDTOUCH_LIBS)
1539   if test "x$HAVE_CXX" != "xyes"; then
1540     USE_SOUNDTOUCH=false
1541     AC_MSG_NOTICE([Not building soundtouch plugin: no C++ compiler found])
1542   fi
1543   if test "x$HAVE_SOUNDTOUCH" = "xyes" -a "x$HAVE_SOUNDTOUCH_1_4" = "xyes"; then
1544      AC_DEFINE([HAVE_SOUNDTOUCH_1_4], [1],
1545          [Defined if the available libSoundTouch is >= 1.4])
1546   fi
1547 ])
1548
1549 dnl *** spc ***
1550 translit(dnm, m, l) AM_CONDITIONAL(USE_SPC, true)
1551 AG_GST_CHECK_FEATURE(SPC, [spc decoder], spc, [
1552   AC_CHECK_HEADER(openspc.h, [
1553     AC_CHECK_LIB(openspc, OSPC_Init, [
1554       SPC_LIBS="-lopenspc"
1555       AC_SUBST(SPC_LIBS)
1556       HAVE_SPC=yes
1557     ], [
1558       HAVE_SPC=no
1559     ])
1560   ], [
1561     HAVE_SPC=no
1562   ])
1563 ])
1564
1565 dnl *** gme ***
1566 translit(dnm, m, l) AM_CONDITIONAL(USE_GME, true)
1567 AG_GST_CHECK_FEATURE(GME, [gme decoder], gme, [
1568   AC_CHECK_HEADER(gme/gme.h, [
1569     AC_CHECK_LIB(gme, gme_new_emu, [
1570       GME_LIBS="-lgme"
1571       AC_SUBST(GME_LIBS)
1572       HAVE_GME=yes
1573     ], [
1574       HAVE_GME=no
1575     ])
1576   ], [
1577     HAVE_GME=no
1578   ])
1579
1580   if test "x$HAVE_GME" = "xyes"; then
1581     AC_CHECK_LIB(gme, gme_enable_accuracy, [
1582       AC_DEFINE(HAVE_LIBGME_ACCURACY, 1, [Define if gme 0.5.6 or newer is available])
1583       ])
1584   fi
1585 ])
1586
1587 dnl *** swfdec ***
1588 translit(dnm, m, l) AM_CONDITIONAL(USE_SWFDEC, true)
1589 AG_GST_CHECK_FEATURE(SWFDEC, [swfdec plug-in], swfdec, [
1590   PKG_CHECK_MODULES(SWFDEC, swfdec-0.3 >= 0.3.6, HAVE_SWFDEC=yes, [
1591     HAVE_SWFDEC=no
1592   ])
1593   AC_SUBST(SWFDEC_CFLAGS)
1594   AC_SUBST(SWFDEC_LIBS)
1595 ])
1596
1597 dnl *** XVID ***
1598 translit(dnm, m, l) AM_CONDITIONAL(USE_XVID, true)
1599 AG_GST_CHECK_FEATURE(XVID, [xvid plugins], xvid, [
1600   HAVE_XVID=no
1601   AC_CHECK_HEADER(xvid.h, [
1602     OLD_LIBS="$LIBS"
1603     LIBS="-lpthread $LIBM"
1604     AC_CHECK_LIB(xvidcore, xvid_encore, [
1605       AC_CHECK_LIB(xvidcore, xvid_decore, [
1606         AC_CHECK_LIB(xvidcore, xvid_global, [
1607           AC_MSG_CHECKING([for uptodate XviD API version])
1608           AC_TRY_COMPILE([#include <xvid.h>], [
1609               #if XVID_API_MAJOR(XVID_API) != 4
1610               #error "Incompatible XviD API version"
1611               #endif
1612               #if XVID_API_MAJOR(XVID_API) == 4 && XVID_API_MINOR(XVID_API) < 3
1613               #error "Incompatible XviD API version"
1614               #endif
1615           ],[ AC_MSG_RESULT(yes)
1616             XVID_LIBS="-lxvidcore $LIBM"
1617             AC_SUBST(XVID_LIBS)
1618             HAVE_XVID=yes
1619           ], AC_MSG_RESULT(no) )
1620         ], )
1621       ], )
1622     ], )
1623     LIBS="$OLD_LIBS"
1624   ], )
1625 ])
1626
1627 dnl *** dvb ***
1628 translit(dnm, m, l) AM_CONDITIONAL(USE_DVB, true)
1629 AG_GST_CHECK_FEATURE(DVB, [DVB Source], dvb, [
1630   AC_MSG_CHECKING([Checking for up to date dvb installation])
1631   AC_CHECK_HEADER(linux/dvb/frontend.h, [HAVE_DVB="yes"], [HAVE_DVB="no"])
1632 ])
1633
1634 dnl *** wininet ***
1635 translit(dnm, m, l) AM_CONDITIONAL(USE_WININET, true)
1636 AG_GST_CHECK_FEATURE(WININET, [Windows internet library], wininet, [
1637   AC_MSG_CHECKING([Checking for windows internet support])
1638   AC_CHECK_HEADERS([windows.h wininet.h],
1639       [HAVE_WININET="yes"], [HAVE_WININET="no"],
1640       [AC_INCLUDES_DEFAULT
1641 #include <windows.h>])
1642 ])
1643
1644 dnl *** acm ***
1645 translit(dnm, m, l) AM_CONDITIONAL(USE_ACM, true)
1646 AG_GST_CHECK_FEATURE(ACM, [Windows ACM library], acm, [
1647   AC_MSG_CHECKING([Checking for ACM support])
1648   AC_CHECK_HEADERS([windows.h msacm.h],
1649       [HAVE_ACM="yes"
1650        AC_SUBST(ACMENC_CFLAGS)
1651        AC_SUBST(ACMMP3DEC_CFLAGS)
1652       ], [HAVE_ACM="no"],
1653       [AC_INCLUDES_DEFAULT
1654 #include <windows.h>])
1655 ])
1656
1657 dnl *** vdpau ***
1658 translit(dnm, m, l) AM_CONDITIONAL(USE_VDPAU, true)
1659 AG_GST_CHECK_FEATURE(VDPAU, [VDPAU], vdpau, [
1660   VDPAU_CFLAGS=
1661   VDPAU_LIBS=-lvdpau
1662   HAVE_VDPAU=no
1663
1664   PKG_CHECK_MODULES(VDPAU, vdpau, [HAVE_VDPAU="yes"],
1665   [
1666     if test "$HAVE_VDPAU" = "no"; then
1667       saved_CPPFLAGS="$CPPFLAGS"
1668       AC_CHECK_HEADER([vdpau/vdpau.h], [HAVE_VDPAU_H=yes])
1669
1670       if test -z "$HAVE_VDPAU_H"; then
1671         dnl Didn't find VDPAU header straight away.
1672         dnl Try /usr/include/nvidia. Need to clear caching vars first
1673         AC_MSG_NOTICE([VDPAU header not in standard path. Checking /usr/include/nvidia])
1674         unset ac_cv_header_vdpau_vdpau_h
1675         unset ac_cv_header_vdpau_vdpau_x11_h
1676         VDPAU_CFLAGS="-I/usr/include/nvidia"
1677         VDPAU_LIBS="-L/usr/lib/nvidia -lvdpau"
1678         CPPFLAGS="$VDPAU_CFLAGS $saved_CPPFLAGS"
1679         AC_CHECK_HEADER([vdpau/vdpau.h], [HAVE_VDPAU_H=yes])
1680       fi
1681
1682       AC_CHECK_HEADER([vdpau/vdpau_x11.h], [HAVE_VDPAU_X11_H=yes])
1683
1684       if test "x$HAVE_VDPAU_H" = "xyes" -a "x$HAVE_VDPAU_X11_H" = "xyes"; then
1685         dnl Found the headers - look for the lib
1686         AC_MSG_NOTICE([VDPAU headers found. Checking libraries])
1687         saved_LIBS="$LIBS"
1688         LIBS="$VDPAU_LIBS $saved_LIBS"
1689         AC_CHECK_LIB(vdpau,vdp_device_create_x11,[HAVE_VDPAU="yes"])
1690         LIBS="$saved_LIBS"
1691       fi
1692     fi
1693   ])
1694
1695   if test "$HAVE_VDPAU" = "yes"; then
1696     AC_MSG_NOTICE([Found up to date VDPAU installation])
1697     AC_SUBST(VDPAU_CFLAGS)
1698     AC_SUBST(VDPAU_LIBS)
1699   fi
1700 ])
1701
1702 dnl *** schroedinger ***
1703 translit(dnm, m, l) AM_CONDITIONAL(USE_SCHRO, true)
1704 AG_GST_CHECK_FEATURE(SCHRO, [Schroedinger video codec], schro, [
1705   AG_GST_PKG_CHECK_MODULES(SCHRO, schroedinger-1.0 >= 1.0.7)
1706 ])
1707
1708 dnl *** zbar ***
1709 translit(dnm, m, l) AM_CONDITIONAL(USE_ZBAR, true)
1710 AG_GST_CHECK_FEATURE(ZBAR, [ZBar barcode detector], zbar, [
1711   AG_GST_PKG_CHECK_MODULES(ZBAR, zbar >= 0.9)
1712 ])
1713
1714 dnl *** vp8 ***
1715 translit(dnm, m, l) AM_CONDITIONAL(USE_VP8, vp8)
1716 AG_GST_CHECK_FEATURE(VP8, [VP8 decoder], vp8, [
1717   VPX_LIBS=""
1718   AG_GST_CHECK_LIBHEADER(VPX, vpx,
1719                         vpx_codec_version, ,
1720                         vpx/vpx_codec.h, [
1721     HAVE_VP8_ENCODER=no
1722     HAVE_VP8_DECODER=no
1723
1724     OLD_LIBS="$LIBS"
1725     LIBS="$LIBS $LIBM -lpthread"
1726     AC_CHECK_LIB(vpx, vpx_codec_vp8_cx_algo, [
1727       HAVE_VP8=yes
1728       AC_DEFINE(HAVE_VP8_ENCODER, 1, [Defined if the VP8 encoder is available])
1729       VPX_LIBS="-lvpx"
1730
1731       AC_MSG_CHECKING([for VP8E_SET_TUNING presence])
1732       AC_TRY_COMPILE([
1733 #include <vpx/vpx_encoder.h>
1734 #include <vpx/vp8cx.h>
1735 int foo=VP8E_SET_TUNING;
1736       ], [
1737 return 0;
1738       ], [
1739         AC_DEFINE(HAVE_VP8ENC_TUNING, 1, [Defined if the VP8 encoder has tuning API])
1740         AC_MSG_RESULT(yes)
1741       ], [
1742         AC_MSG_RESULT(no)
1743       ])
1744     ])
1745     AC_CHECK_LIB(vpx, vpx_codec_vp8_dx_algo, [
1746       HAVE_VP8=yes
1747       AC_DEFINE(HAVE_VP8_DECODER, 1, [Defined if the VP8 decoder is available])
1748       VPX_LIBS="-lvpx"
1749     ])
1750     LIBS="$OLD_LIBS"
1751   ])
1752   AC_SUBST(VPX_LIBS)
1753 ])
1754
1755 dnl *** rtmp ***
1756 translit(dnm, m, l) AM_CONDITIONAL(USE_RTMP, true)
1757 AG_GST_CHECK_FEATURE(RTMP, [rtmp library], rtmp, [
1758   AG_GST_PKG_CHECK_MODULES(RTMP, librtmp)
1759 ])
1760
1761 dnl *** spandsp ***
1762 translit(dnm, m, l) AM_CONDITIONAL(USE_SPANDSP, true)
1763 AG_GST_CHECK_FEATURE(SPANDSP, [Spandsp], spandsp, [
1764   PKG_CHECK_MODULES(SPANDSP, spandsp >= 0.0.6, [
1765     HAVE_SPANDSP="yes" ], [
1766     HAVE_SPANDSP="no"
1767   ])
1768 ])
1769 AC_SUBST(SPANDSP_CFLAGS)
1770 AC_SUBST(SPANDSP_LIBS)
1771
1772 dnl *** GSettings ***
1773 translit(dnm, m, l) AM_CONDITIONAL(USE_GSETTINGS, true)
1774 AG_GST_CHECK_FEATURE(GSETTINGS, [GSettings plugin], gsettings, [
1775   AG_GST_PKG_CHECK_MODULES(GSETTINGS, gio-2.0 >= 2.25.0)
1776   if test "x$HAVE_GSETTINGS" = "xyes"; then
1777     GLIB_GSETTINGS
1778   fi
1779 ])
1780
1781 else
1782
1783 dnl not building plugins with external dependencies,
1784 dnl but we still need to set the conditionals
1785
1786 AM_CONDITIONAL(USE_ASSRENDER, false)
1787 AM_CONDITIONAL(USE_VOAMRWBENC, false)
1788 AM_CONDITIONAL(USE_VOAACENC, false)
1789 AM_CONDITIONAL(USE_APEXSINK, false)
1790 AM_CONDITIONAL(USE_BZ2, false)
1791 AM_CONDITIONAL(USE_CDAUDIO, false)
1792 AM_CONDITIONAL(USE_CELT, false)
1793 AM_CONDITIONAL(USE_COG, false)
1794 AM_CONDITIONAL(USE_CURL, false)
1795 AM_CONDITIONAL(USE_DC1394, false)
1796 AM_CONDITIONAL(USE_DECKLINK, false)
1797 AM_CONDITIONAL(USE_DIRECTFB, false)
1798 AM_CONDITIONAL(USE_DIRAC, false)
1799 AM_CONDITIONAL(USE_DTS, false)
1800 AM_CONDITIONAL(USE_DIVX, false)
1801 AM_CONDITIONAL(USE_EXIF, false)
1802 AM_CONDITIONAL(USE_RESINDVD, false)
1803 AM_CONDITIONAL(USE_FAAC, false)
1804 AM_CONDITIONAL(USE_FAAD, false)
1805 AM_CONDITIONAL(USE_FBDEV, false)
1806 AM_CONDITIONAL(USE_FLITE, false)
1807 AM_CONDITIONAL(USE_GSM, false)
1808 AM_CONDITIONAL(USE_JP2K, false)
1809 AM_CONDITIONAL(USE_KATE, false)
1810 AM_CONDITIONAL(USE_TIGER, false)
1811 AM_CONDITIONAL(USE_LADSPA, false)
1812 AM_CONDITIONAL(USE_LV2, false)
1813 AM_CONDITIONAL(USE_LIBMMS, false)
1814 AM_CONDITIONAL(USE_LINSYS, false)
1815 AM_CONDITIONAL(USE_MODPLUG, false)
1816 AM_CONDITIONAL(USE_MIMIC, false)
1817 AM_CONDITIONAL(USE_MPEG2ENC, false)
1818 AM_CONDITIONAL(USE_MPLEX, false)
1819 AM_CONDITIONAL(USE_MUSEPACK, false)
1820 AM_CONDITIONAL(USE_MUSICBRAINZ, false)
1821 AM_CONDITIONAL(USE_MYTHTV, false)
1822 AM_CONDITIONAL(USE_NAS, false)
1823 AM_CONDITIONAL(USE_NEON, false)
1824 AM_CONDITIONAL(USE_OFA, false)
1825 AM_CONDITIONAL(USE_OPENAL, false)
1826 AM_CONDITIONAL(USE_OPENCV, false)
1827 AM_CONDITIONAL(USE_OPUS, false)
1828 AM_CONDITIONAL(USE_PVR, false)
1829 AM_CONDITIONAL(USE_RSVG, false)
1830 AM_CONDITIONAL(USE_TIMIDITY, false)
1831 AM_CONDITIONAL(USE_WILDMIDI, false)
1832 AM_CONDITIONAL(USE_SDL, false)
1833 AM_CONDITIONAL(USE_SNDFILE, false)
1834 AM_CONDITIONAL(USE_SOUNDTOUCH, false)
1835 AM_CONDITIONAL(USE_SPANDSP, false)
1836 AM_CONDITIONAL(USE_SPC, false)
1837 AM_CONDITIONAL(USE_GME, false)
1838 AM_CONDITIONAL(USE_GSETTINGS, false)
1839 AM_CONDITIONAL(USE_SWFDEC, false)
1840 AM_CONDITIONAL(USE_XVID, false)
1841 AM_CONDITIONAL(USE_DVB, false)
1842 AM_CONDITIONAL(USE_WININET, false)
1843 AM_CONDITIONAL(USE_ACM, false)
1844 AM_CONDITIONAL(USE_VDPAU, false)
1845 AM_CONDITIONAL(USE_SCHRO, false)
1846 AM_CONDITIONAL(USE_ZBAR, false)
1847 AM_CONDITIONAL(USE_VP8, false)
1848 AM_CONDITIONAL(USE_RTMP, false)
1849 AM_CONDITIONAL(USE_TELETEXTDEC, false)
1850
1851 fi dnl of EXT plugins
1852
1853 dnl *** finalize CFLAGS, LDFLAGS, LIBS
1854
1855 dnl Overview:
1856 dnl GST_OPTION_CFLAGS:  common flags for profiling, debugging, errors, ...
1857 dnl GST_*:              flags shared by built objects to link against GStreamer
1858 dnl GST_ALL_LDFLAGS:    linker flags shared by all
1859 dnl GST_LIB_LDFLAGS:    additional linker flags for all libaries
1860 dnl GST_LT_LDFLAGS:     library versioning of our libraries
1861 dnl GST_PLUGIN_LDFLAGS: flags to be used for all plugins
1862
1863 dnl GST_OPTION_CFLAGS
1864 if test "x$USE_DEBUG" = xyes; then
1865    PROFILE_CFLAGS="-g"
1866 fi
1867 AC_SUBST(PROFILE_CFLAGS)
1868
1869 if test "x$PACKAGE_VERSION_NANO" = "x1"; then
1870   dnl Define _only_ during CVS (not pre-releases or releases)
1871   DEPRECATED_CFLAGS="-DGST_DISABLE_DEPRECATED"
1872 else
1873   DEPRECATED_CFLAGS=""
1874 fi
1875 AC_SUBST(DEPRECATED_CFLAGS)
1876
1877 dnl every flag in GST_OPTION_CFLAGS and GST_OPTION_CXXFLAGS can be overridden
1878 dnl at make time with e.g. make ERROR_CFLAGS=""
1879 GST_OPTION_CFLAGS="\$(WARNING_CFLAGS) \$(ERROR_CFLAGS) \$(DEBUG_CFLAGS) \$(PROFILE_CFLAGS) \$(GCOV_CFLAGS) \$(OPT_CFLAGS) \$(DEPRECATED_CFLAGS)"
1880 GST_OPTION_CXXFLAGS="\$(WARNING_CXXFLAGS) \$(ERROR_CXXFLAGS) \$(DEBUG_CFLAGS) \$(PROFILE_CFLAGS) \$(GCOV_CFLAGS) \$(OPT_CFLAGS) \$(DEPRECATED_CFLAGS)"
1881 AC_SUBST(GST_OPTION_CFLAGS)
1882 AC_SUBST(GST_OPTION_CXXFLAGS)
1883
1884 dnl FIXME: do we want to rename to GST_ALL_* ?
1885 dnl prefer internal headers to already installed ones
1886 dnl also add builddir include for enumtypes and marshal
1887 dnl add GST_OPTION_CFLAGS, but overridable
1888 GST_CXXFLAGS="$GST_CFLAGS $GLIB_EXTRA_CFLAGS \$(GST_OPTION_CXXFLAGS)"
1889 GST_CFLAGS="$GST_CFLAGS $GLIB_EXTRA_CFLAGS \$(GST_OPTION_CFLAGS)"
1890 AC_SUBST(GST_CFLAGS)
1891 AC_SUBST(GST_CXXFLAGS)
1892 AC_SUBST(GST_LIBS)
1893 GST_PLUGINS_BAD_CXXFLAGS="-I\$(top_srcdir)/gst-libs -I\$(top_builddir)/gst-libs"
1894 GST_PLUGINS_BAD_CFLAGS="-I\$(top_srcdir)/gst-libs -I\$(top_builddir)/gst-libs"
1895 AC_SUBST(GST_PLUGINS_BAD_CFLAGS)
1896 AC_SUBST(GST_PLUGINS_BAD_CXXFLAGS)
1897
1898 dnl LDFLAGS really should only contain flags, not libs - they get added before
1899 dnl whatevertarget_LIBS and -L flags here affect the rest of the linking
1900 GST_ALL_LDFLAGS="-no-undefined"
1901 AC_SUBST(GST_ALL_LDFLAGS)
1902
1903 dnl GST_LIB_LDFLAGS
1904 dnl linker flags shared by all libraries
1905 dnl LDFLAGS modifier defining exported symbols from built libraries
1906 dnl (export _gst_foo but not __gst_foo)
1907 GST_LIB_LDFLAGS="-export-symbols-regex ^_?\(gst_\|Gst\|GST_\).*"
1908 AC_SUBST(GST_LIB_LDFLAGS)
1909
1910 dnl this really should only contain flags, not libs - they get added before
1911 dnl whatevertarget_LIBS and -L flags here affect the rest of the linking
1912 GST_PLUGIN_LDFLAGS="-module -avoid-version -export-symbols-regex '^[_]*gst_plugin_desc.*' $GST_ALL_LDFLAGS"
1913 AC_SUBST(GST_PLUGIN_LDFLAGS)
1914
1915 dnl *** output files ***
1916
1917 dnl po/Makefile.in
1918
1919 AC_CONFIG_FILES(
1920 Makefile
1921 common/Makefile
1922 common/m4/Makefile
1923 gst-plugins-bad.spec
1924 gst/Makefile
1925 gst/adpcmdec/Makefile
1926 gst/adpcmenc/Makefile
1927 gst/aiff/Makefile
1928 gst/asfmux/Makefile
1929 gst/audiovisualizers/Makefile
1930 gst/autoconvert/Makefile
1931 gst/bayer/Makefile
1932 gst/camerabin/Makefile
1933 gst/camerabin2/Makefile
1934 gst/cdxaparse/Makefile
1935 gst/colorspace/Makefile
1936 gst/coloreffects/Makefile
1937 gst/dataurisrc/Makefile
1938 gst/dccp/Makefile
1939 gst/debugutils/Makefile
1940 gst/dtmf/Makefile
1941 gst/dvbsuboverlay/Makefile
1942 gst/dvdspu/Makefile
1943 gst/faceoverlay/Makefile
1944 gst/festival/Makefile
1945 gst/fieldanalysis/Makefile
1946 gst/freeze/Makefile
1947 gst/freeverb/Makefile
1948 gst/frei0r/Makefile
1949 gst/gaudieffects/Makefile
1950 gst/geometrictransform/Makefile
1951 gst/h264parse/Makefile
1952 gst/hdvparse/Makefile
1953 gst/hls/Makefile
1954 gst/id3tag/Makefile
1955 gst/inter/Makefile
1956 gst/interlace/Makefile
1957 gst/ivfparse/Makefile
1958 gst/jp2kdecimator/Makefile
1959 gst/jpegformat/Makefile
1960 gst/legacyresample/Makefile
1961 gst/librfb/Makefile
1962 gst/liveadder/Makefile
1963 gst/mpegdemux/Makefile
1964 gst/mpegtsdemux/Makefile
1965 gst/mpegtsmux/Makefile
1966 gst/mpegtsmux/tsmux/Makefile
1967 gst/mpegpsmux/Makefile
1968 gst/mpegvideoparse/Makefile
1969 gst/mve/Makefile
1970 gst/mxf/Makefile
1971 gst/nsf/Makefile
1972 gst/nuvdemux/Makefile
1973 gst/patchdetect/Makefile
1974 gst/pcapparse/Makefile
1975 gst/pnm/Makefile
1976 gst/rawparse/Makefile
1977 gst/real/Makefile
1978 gst/removesilence/Makefile
1979 gst/rtpmux/Makefile
1980 gst/rtpvp8/Makefile
1981 gst/scaletempo/Makefile
1982 gst/sdi/Makefile
1983 gst/sdp/Makefile
1984 gst/segmentclip/Makefile
1985 gst/siren/Makefile
1986 gst/smooth/Makefile
1987 gst/speed/Makefile
1988 gst/subenc/Makefile
1989 gst/stereo/Makefile
1990 gst/tta/Makefile
1991 gst/videofilters/Makefile
1992 gst/videomaxrate/Makefile
1993 gst/videomeasure/Makefile
1994 gst/videoparsers/Makefile
1995 gst/videosignal/Makefile
1996 gst/vmnc/Makefile
1997 gst/y4m/Makefile
1998 gst-libs/Makefile
1999 gst-libs/gst/Makefile
2000 gst-libs/gst/basecamerabinsrc/Makefile
2001 gst-libs/gst/interfaces/Makefile
2002 gst-libs/gst/signalprocessor/Makefile
2003 gst-libs/gst/codecparsers/Makefile
2004 gst-libs/gst/video/Makefile
2005 sys/Makefile
2006 sys/dshowdecwrapper/Makefile
2007 sys/acmenc/Makefile
2008 sys/acmmp3dec/Makefile
2009 sys/applemedia/Makefile
2010 sys/avc/Makefile
2011 sys/d3dvideosink/Makefile
2012 sys/decklink/Makefile
2013 sys/directdraw/Makefile
2014 sys/directsound/Makefile
2015 sys/dshowsrcwrapper/Makefile
2016 sys/dshowvideosink/Makefile
2017 sys/dvb/Makefile
2018 sys/fbdev/Makefile
2019 sys/linsys/Makefile
2020 sys/osxvideo/Makefile
2021 sys/qtwrapper/Makefile
2022 sys/shm/Makefile
2023 sys/vcd/Makefile
2024 sys/vdpau/Makefile
2025 sys/vdpau/gstvdp/Makefile
2026 sys/vdpau/basevideodecoder/Makefile
2027 sys/pvr2d/Makefile
2028 sys/wasapi/Makefile
2029 sys/wininet/Makefile
2030 sys/winks/Makefile
2031 sys/winscreencap/Makefile
2032 tests/Makefile
2033 tests/check/Makefile
2034 tests/files/Makefile
2035 tests/examples/Makefile
2036 tests/examples/camerabin/Makefile
2037 tests/examples/camerabin2/Makefile
2038 tests/examples/directfb/Makefile
2039 tests/examples/mxf/Makefile
2040 tests/examples/scaletempo/Makefile
2041 tests/examples/opencv/Makefile
2042 tests/icles/Makefile
2043 ext/voamrwbenc/Makefile
2044 ext/voaacenc/Makefile
2045 ext/assrender/Makefile
2046 ext/apexsink/Makefile
2047 ext/bz2/Makefile
2048 ext/cdaudio/Makefile
2049 ext/celt/Makefile
2050 ext/cog/Makefile
2051 ext/curl/Makefile
2052 ext/dc1394/Makefile
2053 ext/dirac/Makefile
2054 ext/directfb/Makefile
2055 ext/divx/Makefile
2056 ext/dts/Makefile
2057 ext/faac/Makefile
2058 ext/faad/Makefile
2059 ext/flite/Makefile
2060 ext/gsm/Makefile
2061 ext/jp2k/Makefile
2062 ext/kate/Makefile
2063 ext/ladspa/Makefile
2064 ext/lv2/Makefile
2065 ext/libmms/Makefile
2066 ext/Makefile
2067 ext/modplug/Makefile
2068 ext/mpeg2enc/Makefile
2069 ext/mimic/Makefile
2070 ext/mplex/Makefile
2071 ext/musepack/Makefile
2072 ext/musicbrainz/Makefile
2073 ext/mythtv/Makefile
2074 ext/nas/Makefile
2075 ext/neon/Makefile
2076 ext/ofa/Makefile
2077 ext/openal/Makefile
2078 ext/opencv/Makefile
2079 ext/opus/Makefile
2080 ext/rsvg/Makefile
2081 ext/resindvd/Makefile
2082 ext/rtmp/Makefile
2083 ext/schroedinger/Makefile
2084 ext/sdl/Makefile
2085 ext/sndfile/Makefile
2086 ext/soundtouch/Makefile
2087 ext/spandsp/Makefile
2088 ext/teletextdec/Makefile
2089 ext/gme/Makefile
2090 ext/gsettings/Makefile
2091 ext/gsettings/org.freedesktop.gstreamer.default-elements.gschema.xml
2092 ext/spc/Makefile
2093 ext/swfdec/Makefile
2094 ext/timidity/Makefile
2095 ext/vp8/Makefile
2096 ext/xvid/Makefile
2097 ext/zbar/Makefile
2098 po/Makefile.in
2099 docs/Makefile
2100 docs/plugins/Makefile
2101 docs/libs/Makefile
2102 docs/version.entities
2103 pkgconfig/Makefile
2104 pkgconfig/gstreamer-plugins-bad.pc
2105 pkgconfig/gstreamer-plugins-bad-uninstalled.pc
2106 pkgconfig/gstreamer-codecparsers.pc
2107 pkgconfig/gstreamer-codecparsers-uninstalled.pc
2108 pkgconfig/gstreamer-basevideo.pc
2109 pkgconfig/gstreamer-basevideo-uninstalled.pc
2110 tools/Makefile
2111 m4/Makefile
2112 win32/common/config.h
2113 )
2114 AC_OUTPUT
2115
2116 AG_GST_OUTPUT_PLUGINS
2117 ORC_OUTPUT
2118