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