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