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.3.0.1],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-bad])
10 dnl initialize automake
11 AM_INIT_AUTOMAKE([-Wno-portability 1.11 no-dist-gzip dist-xz tar-ustar subdir-objects])
13 dnl define PACKAGE_VERSION_* variables
16 dnl check if this is a release version
17 AS_NANO(GST_GIT="no", GST_GIT="yes")
19 dnl can autoconf find the source ?
20 AC_CONFIG_SRCDIR([docs/plugins/gst-plugins-bad-plugins-docs.sgml])
22 dnl define the output header for config
23 AC_CONFIG_HEADERS([config.h])
25 dnl AM_MAINTAINER_MODE only provides the option to configure to enable it
26 AM_MAINTAINER_MODE([enable])
28 dnl sets host_* variables
31 dnl use pretty build output with automake >= 1.11
32 m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])],
33 [AM_DEFAULT_VERBOSITY=1
34 AC_SUBST(AM_DEFAULT_VERBOSITY)])
36 dnl our libraries and install dirs use GST_API_VERSION in the filename
37 dnl to allow side-by-side installation of different API versions
39 AC_SUBST(GST_API_VERSION)
40 AC_DEFINE_UNQUOTED(GST_API_VERSION, "$GST_API_VERSION",
41 [GStreamer API Version])
43 AG_GST_LIBTOOL_PREPARE
45 dnl CURRENT, REVISION, AGE
46 dnl - library source changed -> increment REVISION
47 dnl - interfaces added/removed/changed -> increment CURRENT, REVISION = 0
48 dnl - interfaces added -> increment AGE
49 dnl - interfaces removed -> AGE = 0
50 dnl sets GST_LT_LDFLAGS
51 AS_LIBTOOL(GST, 300, 0, 300)
53 dnl *** required versions of GStreamer stuff ***
57 dnl *** autotools stuff ****
59 dnl allow for different autotools
60 AS_AUTOTOOLS_ALTERNATE
62 dnl Add parameters for aclocal
63 AC_SUBST(ACLOCAL_AMFLAGS, "-I m4 -I common/m4")
66 dnl the version check needs to stay here because autopoint greps for it
67 AM_GNU_GETTEXT_VERSION([0.17])
68 AM_GNU_GETTEXT([external])
69 AG_GST_GETTEXT([gst-plugins-bad-$GST_API_VERSION])
71 dnl *** check for arguments to configure ***
73 AG_GST_ARG_DISABLE_FATAL_WARNINGS
82 AG_GST_ARG_WITH_PKG_CONFIG_PATH
83 AG_GST_ARG_WITH_PACKAGE_NAME
84 AG_GST_ARG_WITH_PACKAGE_ORIGIN
86 AG_GST_ARG_WITH_PLUGINS
88 AG_GST_ARG_ENABLE_EXTERNAL
90 AG_GST_ARG_ENABLE_EXPERIMENTAL
92 AG_GST_PKG_CONFIG_PATH
94 dnl *** checks for platform ***
97 dnl * hardware/architecture *
99 dnl common/m4/gst-arch.m4
103 dnl Determine endianness
106 dnl *** checks for programs ***
112 dnl determine c++ compiler
114 dnl determine if c++ is available on this system
115 AC_CHECK_PROG(HAVE_CXX, $CXX, yes, no)
119 dnl check if the compiler supports '-c' and '-o' options
122 dnl check if the compiler supports do while(0) macros
123 AG_GST_CHECK_DOWHILE_MACROS
125 AC_PATH_PROG(VALGRIND_PATH, valgrind, no)
126 AM_CONDITIONAL(HAVE_VALGRIND, test ! "x$VALGRIND_PATH" = "xno")
128 dnl check for gobject-introspection
129 GOBJECT_INTROSPECTION_CHECK([1.31.1])
131 dnl check for documentation tools
132 GTK_DOC_CHECK([1.12])
133 AG_GST_PLUGIN_DOCS([1.12])
135 dnl *** checks for libraries ***
137 dnl check for libm, for sin() etc.
143 dnl *** checks for header files ***
145 AC_CHECK_HEADERS([unistd.h], HAVE_UNISTD_H=yes)
146 AM_CONDITIONAL(HAVE_UNISTD_H, test "x$HAVE_UNISTD_H" = "xyes")
148 if test "x$HAVE_UNISTD_H" != "xyes"; then
149 GST_PLUGINS_SELECTED=`echo $GST_PLUGINS_SELECTED | $SED -e s/festival//`
152 AC_CHECK_HEADERS([sys/time.h])
157 AC_CHECK_HEADERS([pthread.h], HAVE_PTHREAD_H=yes)
158 AM_CONDITIONAL(HAVE_PTHREAD_H, test "x$HAVE_PTHREAD_H" = "xyes")
160 if test "x$HAVE_PTHREAD_H" != "xyes"; then
161 GST_PLUGINS_SELECTED=`echo $GST_PLUGINS_SELECTED | $SED -e s/dccp//`
164 dnl *** checks for types/defines ***
166 dnl Check for FIONREAD ioctl declaration
170 dnl *** checks for structures ***
172 dnl *** checks for compiler characteristics ***
174 dnl *** checks for library functions ***
175 AC_CHECK_FUNCS([gmtime_r])
177 dnl *** checks for headers ***
178 AC_CHECK_HEADERS([sys/utsname.h])
180 dnl *** checks for dependency libraries ***
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)])
188 AG_GST_GLIB_CHECK([$GLIB_REQ])
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")
198 AG_GST_CHECK_GST_PLUGINS_BASE($GST_API_VERSION, [$GSTPB_REQ], yes)
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])
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)
213 AC_SUBST(GSTPB_PREFIX)
215 dnl GTK is optional and used in examples
219 if test "x$BUILD_EXAMPLES" = "xyes"; then
220 AC_MSG_CHECKING([which gtk+ version to compile examples against (optional)])
222 AS_HELP_STRING([--with-gtk=3.0|2.0],[which gtk+ version to compile against (default: 2.0)]),
224 2.0) GTK_REQ=$GTK2_REQ ;;
225 3.0) GTK_REQ=$GTK3_REQ ;;
226 *) AC_MSG_ERROR([invalid gtk+ version specified]);;
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)
235 AM_CONDITIONAL(HAVE_GTK, test "x$HAVE_GTK" = "xyes")
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)
242 dnl Needed by plugins that use g_module_*() API
243 PKG_CHECK_MODULES(GMODULE_NO_EXPORT, gmodule-no-export-2.0)
245 dnl x11 is optional for librfb and eglglessink
247 PKG_CHECK_MODULES(X11, x11, HAVE_X11=yes, HAVE_X11=no)
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])
256 dnl exif (used on jifmux tests) ****
257 PKG_CHECK_MODULES(EXIF, libexif >= 0.6.16, HAVE_EXIF="yes", HAVE_EXIF="no")
259 AC_SUBST(EXIF_CFLAGS)
260 AM_CONDITIONAL(USE_EXIF, test "x$HAVE_EXIF" = "xyes")
265 dnl set license and copyright notice
267 AC_DEFINE_UNQUOTED(GST_LICENSE, "$GST_LICENSE", [GStreamer license])
268 AC_SUBST(GST_LICENSE)
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])
274 dnl set location of plugin directory
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])
282 dnl build static plugins or not
283 AC_MSG_CHECKING([whether to build static plugins or not])
287 [--enable-static-plugins],
288 [build static plugins @<:@default=no@:>@]),
290 [$enableval], [no], [], [yes], [],
291 [AC_MSG_ERROR([bad value "$enableval" for --enable-static-plugins])])],
292 [enable_static_plugins=no])
293 AC_MSG_RESULT([$enable_static_plugins])
294 if test "x$enable_static_plugins" = xyes; then
295 AC_DEFINE(GST_PLUGIN_BUILD_STATIC, 1,
296 [Define if static plugins should be built])
297 GST_PLUGIN_LIBTOOLFLAGS=""
299 GST_PLUGIN_LIBTOOLFLAGS="--tag=disable-static"
301 AC_SUBST(GST_PLUGIN_LIBTOOLFLAGS)
302 AM_CONDITIONAL(GST_PLUGIN_BUILD_STATIC, test "x$enable_static_plugins" = "xyes")
304 # set by AG_GST_PARSE_SUBSYSTEM_DISABLES above
305 dnl make sure it doesn't complain about unused variables if debugging is disabled
307 AG_GST_CHECK_GST_DEBUG_DISABLED([NO_WARNINGS="-Wno-unused"], [NO_WARNINGS=""])
309 dnl define an ERROR_CFLAGS Makefile variable
310 dnl -Waggregate-return - libexif returns aggregates
311 dnl -Wundef - Windows headers check _MSC_VER unconditionally
312 AG_GST_SET_ERROR_CFLAGS($FATAL_WARNINGS, [
313 -Wmissing-declarations -Wmissing-prototypes -Wredundant-decls
314 -Wwrite-strings -Wformat-security -Wold-style-definition
315 -Winit-self -Wmissing-include-dirs -Waddress -Wno-multichar
316 -Wnested-externs $NO_WARNINGS])
318 dnl define an ERROR_CXXFLAGS Makefile variable
319 AG_GST_SET_ERROR_CXXFLAGS($FATAL_WARNINGS, [
320 -Wmissing-declarations -Wredundant-decls
321 -Wwrite-strings -Wformat-nonliteral -Wformat-security
322 -Winit-self -Wmissing-include-dirs -Waddress -Wno-multichar $NO_WARNINGS])
324 dnl define an ERROR_OBJCFLAGS Makefile variable
325 AG_GST_SET_ERROR_OBJCFLAGS($FATAL_WARNINGS, [
326 -Wmissing-declarations -Wredundant-decls
327 -Wwrite-strings -Wformat-nonliteral -Wformat-security
328 -Winit-self -Wmissing-include-dirs -Wno-multichar $NO_WARNINGS])
330 dnl define correct level for debugging messages
331 AG_GST_SET_LEVEL_DEFAULT($GST_GIT)
334 AG_GST_DEFAULT_ELEMENTS
336 dnl *** plug-ins to include ***
337 dnl Non ported plugins (non-dependant, then dependant)
338 dnl Make sure you have a space before and after all plugins
339 GST_PLUGINS_NONPORTED=" cdxaparse \
342 mve mythtv nuvdemux \
349 musepack nas sdl timidity \
350 directdraw acm wininet \
351 xvid lv2 teletextdec sndio osx_video quicktime"
352 AC_SUBST(GST_PLUGINS_NONPORTED)
354 dnl these are all the gst plug-ins, compilable without additional libs
355 AG_GST_CHECK_PLUGIN(accurip)
356 AG_GST_CHECK_PLUGIN(adpcmdec)
357 AG_GST_CHECK_PLUGIN(adpcmenc)
358 AG_GST_CHECK_PLUGIN(aiff)
359 AG_GST_CHECK_PLUGIN(asfmux)
360 AG_GST_CHECK_PLUGIN(audiofxbad)
361 AG_GST_CHECK_PLUGIN(audiomixer)
362 AG_GST_CHECK_PLUGIN(audiovisualizers)
363 AG_GST_CHECK_PLUGIN(autoconvert)
364 AG_GST_CHECK_PLUGIN(bayer)
365 AG_GST_CHECK_PLUGIN(camerabin2)
366 AG_GST_CHECK_PLUGIN(cdxaparse)
367 AG_GST_CHECK_PLUGIN(coloreffects)
368 AG_GST_CHECK_PLUGIN(dataurisrc)
369 AG_GST_CHECK_PLUGIN(dccp)
370 AG_GST_CHECK_PLUGIN(debugutils)
371 AG_GST_CHECK_PLUGIN(dvbsuboverlay)
372 AG_GST_CHECK_PLUGIN(dvdspu)
373 AG_GST_CHECK_PLUGIN(faceoverlay)
374 AG_GST_CHECK_PLUGIN(festival)
375 AG_GST_CHECK_PLUGIN(fieldanalysis)
376 AG_GST_CHECK_PLUGIN(freeverb)
377 AG_GST_CHECK_PLUGIN(frei0r)
378 AG_GST_CHECK_PLUGIN(gaudieffects)
379 AG_GST_CHECK_PLUGIN(geometrictransform)
380 AG_GST_CHECK_PLUGIN(gdp)
381 AG_GST_CHECK_PLUGIN(hdvparse)
382 AG_GST_CHECK_PLUGIN(id3tag)
383 AG_GST_CHECK_PLUGIN(inter)
384 AG_GST_CHECK_PLUGIN(interlace)
385 AG_GST_CHECK_PLUGIN(ivfparse)
386 AG_GST_CHECK_PLUGIN(ivtc)
387 AG_GST_CHECK_PLUGIN(jp2kdecimator)
388 AG_GST_CHECK_PLUGIN(jpegformat)
389 AG_GST_CHECK_PLUGIN(librfb)
390 AG_GST_CHECK_PLUGIN(liveadder)
391 AG_GST_CHECK_PLUGIN(midi)
392 AG_GST_CHECK_PLUGIN(mpegdemux)
393 AG_GST_CHECK_PLUGIN(mpegtsdemux)
394 AG_GST_CHECK_PLUGIN(mpegtsmux)
395 AG_GST_CHECK_PLUGIN(mpegpsmux)
396 AG_GST_CHECK_PLUGIN(mve)
397 AG_GST_CHECK_PLUGIN(mxf)
398 AG_GST_CHECK_PLUGIN(nuvdemux)
399 AG_GST_CHECK_PLUGIN(patchdetect)
400 AG_GST_CHECK_PLUGIN(pcapparse)
401 AG_GST_CHECK_PLUGIN(pnm)
402 AG_GST_CHECK_PLUGIN(rawparse)
403 AG_GST_CHECK_PLUGIN(real)
404 AG_GST_CHECK_PLUGIN(removesilence)
405 AG_GST_CHECK_PLUGIN(sdi)
406 AG_GST_CHECK_PLUGIN(sdp)
407 AG_GST_CHECK_PLUGIN(segmentclip)
408 AG_GST_CHECK_PLUGIN(siren)
409 AG_GST_CHECK_PLUGIN(smooth)
410 AG_GST_CHECK_PLUGIN(speed)
411 AG_GST_CHECK_PLUGIN(subenc)
412 AG_GST_CHECK_PLUGIN(stereo)
413 AG_GST_CHECK_PLUGIN(tta)
414 AG_GST_CHECK_PLUGIN(videofilters)
415 AG_GST_CHECK_PLUGIN(videomeasure)
416 AG_GST_CHECK_PLUGIN(videoparsers)
417 AG_GST_CHECK_PLUGIN(videosignal)
418 AG_GST_CHECK_PLUGIN(vmnc)
419 AG_GST_CHECK_PLUGIN(y4m)
420 AG_GST_CHECK_PLUGIN(yadif)
422 dnl *** plug-ins to exclude ***
424 dnl real plugin only works on i386 and x86_64 for the time being.
425 if test "x$HAVE_CPU_I386" != "xyes" && test "x$HAVE_CPU_X86_64" != "xyes"; then
426 AC_MSG_WARN([Not building real plugin, only works on 32bit and 64bit x86 platforms])
427 AG_GST_DISABLE_PLUGIN(real)
430 AC_CHECK_HEADER(AVFoundation/AVFoundation.h, HAVE_AVFOUNDATION="yes", HAVE_AVFOUNDATION="no", [-])
431 AC_CHECK_HEADER(MobileCoreServices/MobileCoreServices.h, HAVE_IOS="yes", HAVE_IOS="no", [-])
433 AM_CONDITIONAL(HAVE_AVFOUNDATION, test "x$HAVE_AVFOUNDATION" = "xyes")
434 if test "x$HAVE_AVFOUNDATION" = "xyes"; then
435 AC_DEFINE(HAVE_AVFOUNDATION, 1, [Define if building with AVFoundation])
438 AM_CONDITIONAL(HAVE_IOS, test "x$HAVE_IOS" = "xyes")
439 if test "x$HAVE_IOS" = "xyes"; then
440 AC_DEFINE(HAVE_IOS, 1, [Define if building for Apple iOS])
443 dnl disable gst plugins we might not be able to build on this
444 dnl platform: (ugly but minimally invasive)
445 dnl FIXME: maybe move to sys, or make work with winsock2
446 AC_CHECK_HEADERS([sys/socket.h], HAVE_SYS_SOCKET_H=yes)
447 AC_CHECK_HEADERS([winsock2.h], HAVE_WINSOCK2_H=yes)
449 if test "x$HAVE_WINSOCK2_H" = "xyes"; then
450 WINSOCK2_LIBS="-lws2_32"
451 AC_SUBST(WINSOCK2_LIBS)
454 if test "x$HAVE_PTHREAD_H" = "xyes"; then
455 DCCP_LIBS="$DCCP_LIBS -lpthread"
458 AG_GST_DISABLE_PLUGIN(dccp)
461 dnl *** gst-libs/gst/egl ***
462 AC_ARG_WITH([egl-window-system],
463 AS_HELP_STRING([--with-egl-window-system],[EGL window system to use (x11, mali-fb, rpi, none)]),
464 [EGL_WINDOW_SYSTEM="$withval"],
465 [EGL_WINDOW_SYSTEM="auto"])
467 if test x"$EGL_WINDOW_SYSTEM" = x"auto"; then
471 LIBS="$LIBS -lUMP $EGL_LIBS"
472 CFLAGS="$CFLAGS $EGL_CFLAGS"
473 AC_CHECK_LIB([Mali], [mali_image_create], [EGL_WINDOW_SYSTEM="mali-fb"], [EGL_WINDOW_SYSTEM="auto"])
478 if test x"$EGL_WINDOW_SYSTEM" = x"auto"; then
481 LIBS="$LIBS -lvcos -lvchiq_arm"
483 AC_CHECK_LIB([bcm_host], [bcm_host_init],
485 LIBS="$LIBS -lbcm_host"
486 AC_CHECK_HEADER([bcm_host.h], [EGL_WINDOW_SYSTEM="rpi"], [EGL_WINDOW_SYSTEM="auto"])
492 if test x"$EGL_WINDOW_SYSTEM" = x"auto"; then
493 if test x"$HAVE_X11" = x"yes"; then
494 EGL_WINDOW_SYSTEM="x11"
498 if test x"$EGL_WINDOW_SYSTEM" = x"auto"; then
499 EGL_WINDOW_SYSTEM="auto"
503 case "$EGL_WINDOW_SYSTEM" in
505 PKG_CHECK_MODULES(EGL, egl, HAVE_EGL="yes", [
510 AC_CHECK_LIB([EGL], [eglGetProcAddress],
512 AC_CHECK_HEADER([EGL/egl.h],
526 dnl X11 specific part, above is auto and X11
527 if test x"$HAVE_EGL" = x"yes" -a x"$EGL_WINDOW_SYSTEM" = x"x11"; then
528 if test x"$HAVE_X11" != x"yes"; then
529 AC_MSG_ERROR([libX11 not found and is required for EGL X11 window system])
531 AC_DEFINE(USE_EGL_X11, [1], [Use X11 EGL window system])
532 EGL_CFLAGS="$EGL_CFLAGS $X11_CFLAGS"
533 EGL_LIBS="$EGL_LIBS $X11_LIBS"
538 dnl FIXME: Mali EGL depends on GLESv1 or GLESv2
542 AC_CHECK_HEADER([EGL/fbdev_window.h],
545 AC_CHECK_LIB([Mali], [mali_image_create],
548 AC_CHECK_LIB([GLESv2], [glEnable],
550 AC_CHECK_HEADER([GLES2/gl2.h],
552 AC_CHECK_LIB([EGL], [eglGetProcAddress],
554 AC_CHECK_HEADER([EGL/egl.h],
557 EGL_LIBS="-lGLESv2 -lEGL -lMali -lUMP"
559 AC_DEFINE(USE_EGL_MALI_FB, [1], [Use Mali FB EGL window system])
573 dnl FIXME: EGL of RPi depends on GLESv1 or GLESv2
574 dnl FIXME: GLESv2 of RPi depends on EGL... WTF!
575 LIBS="$LIBS -lvcos -lvchiq_arm"
576 AC_CHECK_LIB([bcm_host], [bcm_host_init],
578 LIBS="$LIBS -lbcm_host"
579 AC_CHECK_HEADER(bcm_host.h,
581 LIBS="$LIBS -lGLESv2"
582 AC_CHECK_LIB([EGL], [eglGetProcAddress],
585 AC_CHECK_HEADER([EGL/egl.h],
587 AC_CHECK_LIB([GLESv2], [glEnable],
589 AC_CHECK_HEADER([GLES2/gl2.h],
592 EGL_LIBS="-lGLESv2 -lEGL -lbcm_host -lvcos -lvchiq_arm"
594 AC_DEFINE(USE_EGL_RPI, [1], [Use RPi EGL window system])
607 AC_MSG_WARN([No EGL window system specified, will not build gstreamer-egl])
610 AC_MSG_ERROR([invalid EGL window system specified])
616 AM_CONDITIONAL(HAVE_EGL, test x"$HAVE_EGL" = x"yes")
618 dnl *** sys plug-ins ***
621 translit(dnm, m, l) AM_CONDITIONAL(USE_DIRECTSOUND, true)
622 AG_GST_CHECK_FEATURE(DIRECTSOUND, [DirectSound], directsoundsrc, [
623 HAVE_DIRECTSOUND="no"
624 save_CFLAGS="$CFLAGS"
625 save_LDFLAGS="$LDFLAGS"
627 CFLAGS="$CFLAGS $DIRECTX_CFLAGS"
628 LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS"
629 LIBS="$LIBS -ldsound -ldxerr9 -luser32"
630 AC_MSG_CHECKING(for DirectSound LDFLAGS)
631 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
636 DXGetErrorString9 (0);
637 DirectSoundCreate(NULL, NULL, NULL);
639 [HAVE_DIRECTSOUND="yes"],
640 [HAVE_DIRECTSOUND="no"])
641 AC_MSG_RESULT($HAVE_DIRECTSOUND)
643 LDFLAGS=$save_LDFLAGS
646 if test "x$HAVE_DIRECTSOUND" = "xyes"; then
647 dnl this is much more than we want
648 DIRECTSOUND_LIBS="-ldsound -ldxerr9 -luser32"
649 AC_SUBST(DIRECTX_CFLAGS)
650 AC_SUBST(DIRECTX_LDFLAGS)
651 AC_SUBST(DIRECTSOUND_LIBS)
653 AC_SUBST(HAVE_DIRECTSOUND)
657 translit(dnm, m, l) AM_CONDITIONAL(USE_WASAPI, true)
658 AG_GST_CHECK_FEATURE(WASAPI, [WASAPI plug-in], wasapi, [
660 save_CFLAGS="$CFLAGS"
661 save_LDFLAGS="$LDFLAGS"
663 CFLAGS="$CFLAGS $DIRECTX_CFLAGS"
664 LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS"
665 LIBS="$LIBS -lole32 -lwinmm -lksuser"
666 AC_MSG_CHECKING(for WASAPI LDFLAGS)
667 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
670 #include <mmsystem.h>
671 #include <mmdeviceapi.h>
677 hr = CoInitialize(NULL);
679 printf("CoInitialize failed: hr = 0x%08x", hr);
684 // result = do_everything(argc, argv);
692 AC_MSG_RESULT($HAVE_WASAPI)
694 LDFLAGS=$save_LDFLAGS
697 if test "x$HAVE_WASAPI" = "xyes"; then
698 WASAPI_LIBS="-lole32 -lwinmm -lksuser"
699 AC_SUBST(WASAPI_LIBS)
701 AC_SUBST(HAVE_WASAPI)
705 translit(dnm, m, l) AM_CONDITIONAL(USE_DIRECT3D, true)
706 AG_GST_CHECK_FEATURE(DIRECT3D, [Direct3D plug-in], direct3dsink, [
708 save_CFLAGS="$CFLAGS"
709 save_LDFLAGS="$LDFLAGS"
711 CFLAGS="$CFLAGS $DIRECTX_CFLAGS"
712 LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS"
713 LIBS="$LIBS -ld3d9 -lgdi32"
714 AC_MSG_CHECKING(for Direct3D LDFLAGS)
715 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
719 Direct3DCreate9(D3D_SDK_VERSION);
721 [HAVE_DIRECT3D="yes"],
722 [HAVE_DIRECT3D="no"])
723 AC_MSG_RESULT($HAVE_DIRECT3D)
725 LDFLAGS=$save_LDFLAGS
728 if test "x$HAVE_DIRECT3D" = "xyes"; then
729 DIRECT3D_LIBS="-ld3d9 -lgdi32"
730 AC_SUBST(DIRECT3D_LIBS)
732 AC_SUBST(HAVE_DIRECT3D)
736 translit(dnm, m, l) AM_CONDITIONAL(USE_DIRECTDRAW, true)
737 AG_GST_CHECK_FEATURE(DIRECTDRAW, [DirectDraw plug-in], directdrawsink, [
739 save_CFLAGS="$CFLAGS"
740 save_LDFLAGS="$LDFLAGS"
742 CFLAGS="$CFLAGS $DIRECTX_CFLAGS"
743 LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS"
744 LIBS="$LIBS -lddraw -lgdi32"
745 AC_MSG_CHECKING(for DirectDraw LDFLAGS)
746 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
751 DirectDrawCreate(NULL, NULL, NULL);
753 [HAVE_DIRECTDRAW="yes"],
754 [HAVE_DIRECTDRAW="no"])
755 AC_MSG_RESULT($HAVE_DIRECTDRAW)
757 LDFLAGS=$save_LDFLAGS
760 if test "x$HAVE_DIRECTDRAW" = "xyes"; then
761 dnl this is much more than we want
762 DIRECTDRAW_LIBS="-lddraw -ldxguid -lgdi32"
763 AC_SUBST(DIRECTX_CFLAGS)
764 AC_SUBST(DIRECTX_LDFLAGS)
765 AC_SUBST(DIRECTDRAW_LIBS)
767 AC_SUBST(HAVE_DIRECTDRAW)
771 translit(dnm, m, l) AM_CONDITIONAL(USE_WINSCREENCAP, true)
772 AG_GST_CHECK_FEATURE(WINSCREENCAP, [winscreencap plug-in], winscreencap, [
773 HAVE_WINSCREENCAP="no"
774 save_CFLAGS="$CFLAGS"
775 save_LDFLAGS="$LDFLAGS"
777 CFLAGS="$CFLAGS $DIRECTX_CFLAGS"
778 LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS"
779 LIBS="$LIBS -ld3d9 -lgdi32"
780 AC_MSG_CHECKING(for Direct3D LDFLAGS)
781 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
785 Direct3DCreate9(D3D_SDK_VERSION);
787 [HAVE_WINSCREENCAP="yes"],
788 [HAVE_WINSCREENCAP="no"])
789 AC_MSG_RESULT($HAVE_WINSCREENCAP)
791 LDFLAGS=$save_LDFLAGS
794 if test "x$HAVE_WINSCREENCAP" = "xyes"; then
795 WINSCREENCAP_LIBS="-ld3d9 -lgdi32"
796 AC_SUBST(WINSCREENCAP_LIBS)
798 AC_SUBST(HAVE_WINSCREENCAP)
802 translit(dnm, m, l) AM_CONDITIONAL(USE_WINKS, true)
803 AG_GST_CHECK_FEATURE(WINKS, [Winks plug-in], winks, [
805 save_CFLAGS="$CFLAGS"
806 save_LDFLAGS="$LDFLAGS"
808 CFLAGS="$CFLAGS $DIRECTX_CFLAGS"
809 LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS"
810 LIBS="$LIBS -lole32 -luuid -lstrmiids"
811 AC_MSG_CHECKING(for Winks LDFLAGS)
812 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
818 IGraphBuilder *pGraph = NULL;
819 HRESULT hr = CoInitialize(NULL);
820 hr = CoCreateInstance(&CLSID_FilterGraph, NULL, CLSCTX_INPROC_SERVER,
821 &IID_IGraphBuilder, (void **)&pGraph);
828 AC_MSG_RESULT($HAVE_WINKS)
830 LDFLAGS=$save_LDFLAGS
833 if test "x$HAVE_WINKS" = "xyes"; then
834 dnl this is much more than we want
835 WINKS_LIBS="-ldxguid -lole32 -luuid -lstrmiids -lksuser -lsetupapi"
836 AC_SUBST(DIRECTX_CFLAGS)
837 AC_SUBST(DIRECTX_LDFLAGS)
843 dnl *** Android Media ***
844 translit(dnm, m, l) AM_CONDITIONAL(USE_ANDROID_MEDIA, true)
845 HAVE_ANDROID_MEDIA="no"
846 AG_GST_CHECK_FEATURE(ANDROID_MEDIA, [Android Media], androidmedia, [
849 AC_CHECK_HEADER(jni.h, HAVE_ANDROID_MEDIA="yes", HAVE_ANDROID_MEDIA="no")
852 HAVE_ANDROID_MEDIA="no"
857 dnl *** AppleMedia (OS X and iOS) ***
858 translit(dnm, m, l) AM_CONDITIONAL(USE_APPLE_MEDIA, true)
859 HAVE_APPLE_MEDIA="no"
860 dnl SystemConfiguration.h is common to OS X and iOS, so we check for that
861 AG_GST_CHECK_FEATURE(APPLE_MEDIA, [Apple video], applemedia, [
862 AC_CHECK_HEADER(SystemConfiguration/SystemConfiguration.h, HAVE_APPLE_MEDIA="yes", HAVE_APPLE_MEDIA="no")
863 dnl OSX 10.7 and earlier lack VideoToolbox/VideoToolbox.h
864 if test "x$HAVE_IOS" = "xno"; then
865 AC_CHECK_HEADER(VideoToolbox/VideoToolbox.h,, HAVE_APPLE_MEDIA="no")
869 dnl in case header SystemConfiguration/SystemConfiguration.h is found on other platforms
874 HAVE_APPLE_MEDIA="no"
879 translit(dnm, m, l) AM_CONDITIONAL(USE_BLUEZ, true)
880 AG_GST_CHECK_FEATURE(BLUEZ, [Bluez], bluez, [
881 PKG_CHECK_MODULES([BLUEZ], [bluez < 5.0], [
882 dnl FIXME: we should be able to replace this with the GLib DBus stuff
883 PKG_CHECK_MODULES([DBUS], [dbus-1], [HAVE_BLUEZ=yes], [HAVE_BLUEZ=no])
889 dnl *** OS X videosrc ***
890 translit(dnm, m, l) AM_CONDITIONAL(USE_OSX_VIDEO, true)
892 AG_GST_CHECK_FEATURE(OSX_VIDEO, [OSX video], osxvideosrc, [
893 AC_CHECK_TYPE([SeqGrabComponent], HAVE_OSX_VIDEO="yes", HAVE_OSX_VIDEO="no",
894 [#include <Quicktime/Quicktime.h>])
896 dnl in case header Quicktime/Quicktime.h is found on other platforms
905 dnl *** OS/X AVCVideoServices ***
906 translit(dnm, m, l) AM_CONDITIONAL(USE_AVC, true)
908 AG_GST_CHECK_FEATURE(AVC, [AVC Video Services], avcsrc, [
910 save_CPPFLAGS="$CPPFLAGS"
911 CPPFLAGS="$CPPFLAGS -framework AVCVideoServices -framework CoreFoundation"
913 LIBS="$LIBS -framework AVCVideoServices -framework CoreFoundation"
914 AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[]])],[HAVE_AVC=yes],[HAVE_AVC=no])
916 CPPFLAGS=$save_CPPFLAGS
919 dnl in case header AVCVideoServices/AVCVideoServices.h is found on other platforms
928 dnl check for QuickTime
929 translit(dnm, m, l) AM_CONDITIONAL(USE_QUICKTIME, true)
930 AG_GST_CHECK_FEATURE(QUICKTIME, [QuickTime wrapper], qtwrapper, [
931 AC_CHECK_TYPE([SampleReferenceRecord], HAVE_QUICKTIME="yes", HAVE_QUICKTIME="no",
932 [#include <Quicktime/Quicktime.h>])
935 dnl check for shm_open (for shm plugin)
936 translit(dnm, m, l) AM_CONDITIONAL(USE_SHM, true)
937 AG_GST_CHECK_FEATURE(SHM, [POSIX shared memory source and sink], shm, [
938 if test "x$HAVE_SYS_SOCKET_H" = "xyes"; then
940 *-darwin* | *-macos10*)
941 AC_DEFINE(HAVE_OSX,[1],[Apple Mac OS X operating system detected])
945 AC_CHECK_LIB([rt], [shm_open],
946 AC_CHECK_DECL([MSG_NOSIGNAL], HAVE_SHM=yes, HAVE_SHM=no, [
947 #include <sys/socket.h>
950 AC_SUBST(SHM_LIBS, "-lrt")
958 dnl *** Video 4 Linux 2 ***
959 dnl for information about the header/define, see sys/v4l2/gstv4l2element.h
960 dnl renamed to GST_V4L2 because of some conflict with kernel headers
961 translit(dnm, m, l) AM_CONDITIONAL(USE_MFC, true)
962 AG_GST_CHECK_FEATURE(MFC, [Multi Format Codec], mfc, [
963 AC_MSG_CHECKING([Checking for up to date v4l2 installation])
964 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
965 #include <sys/types.h>
966 #ifdef __sun /* Solaris */
967 #include <sys/types.h>
968 #include <sys/videodev2.h>
970 #include <linux/videodev2.h>
972 #include <linux/types.h>
973 #define _LINUX_TIME_H
975 #include <linux/videodev2.h>
977 #if defined(V4L2_MAJOR_VERSION) || defined(V4L2_MINOR_VERSION)
978 #error too early v4l2 version or no v4l2 at all
980 #if !defined(V4L2_PIX_FMT_H264)
981 #error v4l2 version too old
993 AC_CHECK_HEADER(linux/videodev2.h, [ HAVE_VIDEODEV=yes ],
995 AC_CHECK_HEADER(sys/videodev2.h, [ HAVE_VIDEODEV=yes ])
998 if test "x$HAVE_VIDEODEV" = "xyes"; then
999 AC_MSG_WARN([video4linux2 headers were found, but they're old.])
1000 AC_MSG_WARN([Please update v4l2 to compile the MFC plugins])
1002 AC_MSG_WARN([v4l2 was not found])
1007 dnl check for Video CD
1008 translit(dnm, m, l) AM_CONDITIONAL(USE_VCD, true)
1009 AG_GST_CHECK_FEATURE(VCD, [Video CD], vcdsrc, [
1010 AC_CHECK_HEADER(linux/cdrom.h, HAVE_VCD="yes", HAVE_VCD="no")
1013 dnl check for OpenSL ES
1014 translit(dnm, m, l) AM_CONDITIONAL(USE_OPENSLES, true)
1015 AG_GST_CHECK_FEATURE(OPENSLES, [OpenSL ES], opensl, [
1016 AC_CHECK_HEADER(SLES/OpenSLES.h, HAVE_OPENSLES="yes", HAVE_OPENSLES="no")
1019 dnl *** UVC H264 ***
1020 translit(dnm, m, l) AM_CONDITIONAL(USE_UVCH264, true)
1021 AG_GST_CHECK_FEATURE(UVCH264, [UVC H264], uvch264, [
1022 AC_CHECK_HEADER(linux/uvcvideo.h, HAVE_UVCVIDEO_H=yes, HAVE_UVCVIDEO_H=no)
1023 AG_GST_PKG_CHECK_MODULES(GST_VIDEO, gstreamer-video-1.0)
1024 PKG_CHECK_MODULES(G_UDEV, gudev-1.0 , [
1025 AC_DEFINE([HAVE_GUDEV], 1, [Define if gudev is installed])
1028 PKG_CHECK_MODULES(LIBUSB, libusb-1.0 , [
1029 AC_DEFINE([HAVE_LIBUSB], 1, [Define if libusb 1.x is installed])
1030 HAVE_LIBUSB="yes" ],
1032 if test "x$HAVE_UVCVIDEO_H" == "xyes" && \
1033 test "x$HAVE_GUDEV" == "xyes" && \
1034 test "x$HAVE_LIBUSB" == "xyes"; then
1040 AC_SUBST(LIBUDEV_CFLAGS)
1041 AC_SUBST(LIBUDEV_LIBS)
1042 AC_SUBST(LIBUSB_CFLAGS)
1043 AC_SUBST(LIBUSB_LIBS)
1046 dnl *** ext plug-ins ***
1047 dnl keep this list sorted alphabetically !
1049 if test "x$BUILD_EXTERNAL" = "xyes"; then
1051 dnl *** assrender ***
1052 translit(dnm, m, l) AM_CONDITIONAL(USE_ASSRENDER, true)
1053 AG_GST_CHECK_FEATURE(ASSRENDER, [ASS/SSA renderer], assrender, [
1054 PKG_CHECK_MODULES(ASSRENDER, libass >= 0.9.4, [
1055 HAVE_ASSRENDER="yes" ], [
1059 AC_SUBST(ASSRENDER_CFLAGS)
1060 AC_SUBST(ASSRENDER_LIBS)
1062 dnl *** vo-amrwbenc ***
1063 translit(dnm, m, l) AM_CONDITIONAL(USE_VOAMRWBENC, true)
1064 AG_GST_CHECK_FEATURE(VOAMRWBENC, [vo-amrwbenc library], vo-amrwbenc, [
1065 AG_GST_PKG_CHECK_MODULES(VOAMRWBENC, vo-amrwbenc >= 0.1.0)
1068 dnl *** vo-aacenc ***
1069 translit(dnm, m, l) AM_CONDITIONAL(USE_VOAACENC, true)
1070 AG_GST_CHECK_FEATURE(VOAACENC, [vo-aacenc library], vo-aacenc, [
1071 AG_GST_PKG_CHECK_MODULES(VOAACENC, vo-aacenc >= 0.1.0)
1074 dnl *** apexsink ***
1075 translit(dnm, m, l) AM_CONDITIONAL(USE_APEXSINK, true)
1076 AG_GST_CHECK_FEATURE(APEXSINK, [AirPort Express Wireless sink], apexsink, [
1077 PKG_CHECK_MODULES(APEXSINK, [ openssl >= 0.9.5 libcrypto ], [
1081 AC_SEARCH_LIBS(socket, [socket], [ ], [ APEXSINK="no" ])
1082 AC_SEARCH_LIBS(gethostbyname, [nsl], [ ], [ APEXSINK="no" ])
1083 APEXSINK_LIBS="$APEXSINK_LIBS $LIBS"
1085 AC_SUBST(APEXSINK_CFLAGS)
1086 AC_SUBST(APEXSINK_LIBS)
1093 translit(dnm, m, l) AM_CONDITIONAL(USE_BZ2, true)
1094 AG_GST_CHECK_FEATURE(BZ2, [bz2 library], bz2, [
1097 AC_MSG_CHECKING([for BZ2_bzlibVersion in -lbz2])
1098 AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <bzlib.h>]], [[const char *version = BZ2_bzlibVersion ();]])],[HAVE_BZ2=yes],[HAVE_BZ2=no])
1099 AC_MSG_RESULT($HAVE_BZ2)
1101 if test "x$HAVE_BZ2" = "xyes"; then
1109 #translit(dnm, m, l) AM_CONDITIONAL(USE_CAIRO, true)
1110 #AG_GST_CHECK_FEATURE(CAIRO, [cairo plug-in], cairo, [
1111 # PKG_CHECK_MODULES(CAIRO, cairo >= 1.0 glitz-glx, HAVE_CAIRO=yes, [
1114 # AC_SUBST(CAIRO_CFLAGS)
1115 # AC_SUBST(CAIRO_LIBS)
1118 dnl *** chromaprint ***
1119 translit(dnm, m, l) AM_CONDITIONAL(USE_CHROMAPRINT, true)
1120 AG_GST_CHECK_FEATURE(CHROMAPRINT, [chromaprint], chromaprint, [
1121 PKG_CHECK_MODULES(CHROMAPRINT, libchromaprint, HAVE_CHROMAPRINT="yes", [
1122 HAVE_CHROMAPRINT="no"
1124 AC_SUBST(CHROMAPRINT_CFLAGS)
1125 AC_SUBST(CHROMAPRINT_LIBS)
1129 translit(dnm, m, l) AM_CONDITIONAL(USE_CURL, true)
1130 AG_GST_CHECK_FEATURE(CURL, [Curl plugin], curl, [
1131 PKG_CHECK_MODULES(CURL, libcurl >= 7.21.0, [
1133 AC_CHECK_HEADERS([unistd.h sys/socket.h sys/types.h netinet/in.h netinet/ip.h netinet/tcp.h fcntl.h], [ ], [
1134 AC_CHECK_HEADERS([unistd.h sys/types.h winsock2.h ws2tcpip.h fcntl.h], [ ], [HAVE_CURL="no"])
1136 AC_MSG_CHECKING([for socket support needed by curlsink])
1137 AC_MSG_RESULT($HAVE_CURL)
1141 AC_SUBST(CURL_CFLAGS)
1143 PKG_CHECK_MODULES(SSH2, libssh2 >= 1.4.3, [
1145 AC_DEFINE(HAVE_SSH2, 1, [Define if libssh2 is available])
1149 AM_CONDITIONAL(USE_SSH2, test "x$HAVE_SSH2" = "xyes")
1150 AC_SUBST(SSH2_CFLAGS)
1152 ],,,[AM_CONDITIONAL(USE_SSH2, false)])
1155 translit(dnm, m, l) AM_CONDITIONAL(USE_DASH, true)
1156 AG_GST_CHECK_FEATURE(DASH, [DASH plug-in], dash, [
1157 PKG_CHECK_MODULES(LIBXML2, libxml-2.0 >= 2.4, [HAVE_LIBXML2="yes"
1158 HAVE_DASH="yes"], [HAVE_LIBXML2="no"
1160 AC_SUBST(LIBXML2_CFLAGS)
1161 AC_SUBST(LIBXML2_LIBS)
1165 translit(dnm, m, l) AM_CONDITIONAL(USE_DC1394, true)
1166 AG_GST_CHECK_FEATURE(DC1394, [libdc1394], dc1394, [
1167 PKG_CHECK_MODULES(LIBDC1394, libdc1394-2 >= 2.0.0, [
1168 if test -z "`$PKG_CONFIG --modversion libdc1394-2 | grep 2.0.0-rc`"; then
1177 AC_SUBST(LIBDC1394_CFLAGS)
1178 AC_SUBST(LIBDC1394_LIBS)
1181 dnl *** decklink ***
1182 translit(dnm, m, l) AM_CONDITIONAL(USE_DECKLINK, true)
1183 AG_GST_CHECK_FEATURE(DECKLINK, [decklink], decklink, [
1187 if test "x$HAVE_PTHREAD_H" = "xyes"; then
1188 AC_CHECK_LIB(dl, dlopen,
1192 DECKLINK_LIBS="-lpthread -ldl"
1197 if test "x$HAVE_PTHREAD_H" = "xyes"; then
1198 AC_CHECK_LIB(dl, dlopen,
1202 DECKLINK_LIBS="-lpthread -ldl"
1203 HAVE_DECKLINK_OSX=yes
1212 AC_SUBST(DECKLINK_CXXFLAGS)
1213 AC_SUBST(DECKLINK_LIBS)
1215 AM_CONDITIONAL(DECKLINK_OSX, test "x$HAVE_DECKLINK_OSX" = xyes)
1217 dnl **** DirectFB ****
1218 translit(dnm, m, l) AM_CONDITIONAL(USE_DIRECTFB, true)
1219 AG_GST_CHECK_FEATURE(DIRECTFB, [directfb], dfbvideosink , [
1220 PKG_CHECK_MODULES(DIRECTFB, directfb >= 0.9.24, HAVE_DIRECTFB="yes", [
1225 dnl **** Wayland ****
1226 translit(dnm, m, l) AM_CONDITIONAL(USE_WAYLAND, true)
1227 AG_GST_CHECK_FEATURE(WAYLAND, [wayland sink], wayland , [
1228 PKG_CHECK_MODULES(WAYLAND, wayland-client >= 1.0.0, [
1229 HAVE_WAYLAND="yes" ], [ HAVE_WAYLAND="no"
1234 translit(dnm, m, l) AM_CONDITIONAL(USE_WEBP, true)
1235 AG_GST_CHECK_FEATURE(WEBP, [WebP], webp , [
1236 PKG_CHECK_MODULES(WEBP, libwebp >= 0.2.1, [
1237 HAVE_WEBP="yes" ], [ HAVE_WEBP="no"
1239 AC_SUBST(WEBP_CFLAGS)
1244 translit(dnm, m, l) AM_CONDITIONAL(USE_DAALA, true)
1245 AG_GST_CHECK_FEATURE(DAALA, [daala], daala, [
1246 if test "x$BUILD_EXPERIMENTAL" = "xyes"; then
1247 PKG_CHECK_MODULES(DAALA, daalaenc daaladec, [
1252 AC_SUBST(DAALA_CFLAGS)
1253 AC_SUBST(DAALA_LIBS)
1258 translit(dnm, m, l) AM_CONDITIONAL(USE_DTS, true)
1259 AG_GST_CHECK_FEATURE(DTS, [dts library], dtsdec, [
1261 AG_GST_CHECK_LIBHEADER(DTS, dca, dca_init, $LIBM, dca.h,
1262 DTS_LIBS="-ldca $LIBM", HAVE_DTS="no")
1263 if test $HAVE_DTS = "no"; then
1264 AG_GST_CHECK_LIBHEADER(DTS, dts_pic, dts_init, $LIBM, dts.h,
1265 [ DTS_LIBS="-ldts_pic $LIBM"
1266 AC_DEFINE(DTS_OLD, 1, [Define if an old libdts is used])
1272 dnl *** resindvd ***
1273 translit(dnm, m, l) AM_CONDITIONAL(USE_RESINDVD, true)
1274 AG_GST_CHECK_FEATURE(RESINDVD, [resindvd plugin], resindvd, [
1275 PKG_CHECK_MODULES(DVDNAV, dvdnav >= 4.1.2 dvdread >= 4.1.2, HAVE_RESINDVD="yes", [
1280 dnl **** Free AAC Encoder (FAAC) ****
1281 translit(dnm, m, l) AM_CONDITIONAL(USE_FAAC, true)
1282 AG_GST_CHECK_FEATURE(FAAC, [AAC encoder plug-in], faac, [
1283 AG_GST_CHECK_LIBHEADER(FAAC, faac, faacEncOpen, $LIBM, faac.h,
1284 FAAC_LIBS="-lfaac $LIBM")
1288 dnl **** Free AAC Decoder (FAAD) ****
1289 translit(dnm, m, l) AM_CONDITIONAL(USE_FAAD, true)
1290 AG_GST_CHECK_FEATURE(FAAD, [AAC decoder plug-in], faad, [
1293 AG_GST_CHECK_LIBHEADER(FAAD, faad, faacDecOpen, $LIBM, faad.h,
1294 FAAD_LIBS="-lfaad $LIBM", HAVE_FAAD="no")
1295 if test $HAVE_FAAD = "no"; then
1296 AG_GST_CHECK_LIBHEADER(FAAD, faad, NeAACDecOpen, $LIBM, neaacdec.h,
1297 [ FAAD_LIBS="-lfaad $LIBM"
1298 AC_DEFINE(FAAD_IS_NEAAC, 1, [Define if AAC is using new api prefix])
1299 faad_hdr="neaacdec.h"
1306 if test $HAVE_FAAD = "yes"; then
1307 AC_MSG_CHECKING([Checking for FAAD >= 2.0])
1308 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <faad.h>]], [[
1309 #if !defined(FAAD2_VERSION) || !defined(FAAD_FMT_DOUBLE)
1312 /* Release candidate of 2.0 is not good enough for us. This field
1313 * was added only in 2.0 final and does not exist in 2.0-RC3 */
1314 faacDecConfiguration conf; conf.dontUpSampleImplicitSBR = 1;
1319 AC_MSG_CHECKING([Checking FAAD2 version in $faad_hdr])
1320 for minor in 10 9 8 7 6 5 0; do
1321 if test x$faad2_minor_version = "x"; then
1322 AC_EGREP_CPP([GST_CHECK_FAAD_VERSION \"2\.$minor\"], [
1323 #include <$faad_hdr>
1324 GST_CHECK_FAAD_VERSION FAAD2_VERSION
1326 faad2_minor_version=$minor
1330 if test x$faad2_minor_version = "x"; then
1331 AC_MSG_RESULT([no idea])
1333 AC_MSG_RESULT([2.$faad2_minor_version])
1334 AC_DEFINE_UNQUOTED([FAAD2_MINOR_VERSION], [$faad2_minor_version], [The x in 2.x])
1341 AC_SUBST(FAAD_IS_NEAAC)
1345 translit(dnm, m, l) AM_CONDITIONAL(USE_FBDEV, true)
1346 AG_GST_CHECK_FEATURE(FBDEV, [linux framebuffer], fbdevsink, [
1347 if test "x$HAVE_FBDEV" != "xyes"; then
1348 AC_CHECK_HEADER([linux/fb.h], HAVE_FBDEV=yes, HAVE_FBDEV=no)
1353 translit(dnm, m, l) AM_CONDITIONAL(USE_FLITE, true)
1354 AG_GST_CHECK_FEATURE(FLITE, [Flite plugin], flite, [
1355 AG_GST_CHECK_LIBHEADER(FLITE, flite, flite_init, $LIBM, flite/flite.h,
1356 FLITE_LIBS="-lflite -lflite_cmu_us_kal -lflite_usenglish -lflite_cmulex $LIBM")
1358 AC_SUBST(FLITE_CFLAGS)
1359 AC_SUBST(FLITE_LIBS)
1363 translit(dnm, m, l) AM_CONDITIONAL(USE_GSM, true)
1364 AG_GST_CHECK_FEATURE(GSM, [GSM library], gsmenc gsmdec, [
1365 AG_GST_CHECK_LIBHEADER(GSM, gsm, gsm_create, , gsm.h, GSM_LIBS="-lgsm")
1366 if test $HAVE_GSM != "yes"; then
1367 AG_GST_CHECK_LIBHEADER(GSM, gsm, gsm_create, , gsm/gsm.h, GSM_LIBS="-lgsm")
1368 if test $HAVE_GSM = "yes"; then
1369 AC_DEFINE(GSM_HEADER_IN_SUBDIR, 1, [Define if GSM header in gsm/ subdir])
1375 dnl *** fluidSynth ***
1376 translit(dnm, m, l) AM_CONDITIONAL(USE_FLUIDSYNTH, true)
1377 AG_GST_CHECK_FEATURE(FLUIDSYNTH, [fluidsynth], fluidsynth, [
1378 PKG_CHECK_MODULES(FLUIDSYNTH, fluidsynth >= 1.0, HAVE_FLUIDSYNTH="yes", [
1379 HAVE_FLUIDSYNTH="no"
1384 translit(dnm, m, l) AM_CONDITIONAL(USE_KATE, true)
1385 AG_GST_CHECK_FEATURE(KATE, [Kate], kate, [
1386 PKG_CHECK_MODULES(KATE, kate >= 0.1.7, HAVE_KATE="yes", [
1389 AC_SUBST(KATE_CFLAGS)
1391 PKG_CHECK_MODULES(TIGER, tiger >= 0.3.2,
1394 AC_DEFINE(HAVE_TIGER, 1, [Define if libtiger is available])
1400 AM_CONDITIONAL(USE_TIGER, test "x$HAVE_TIGER" = "xyes")
1401 AC_SUBST(TIGER_CFLAGS)
1402 AC_SUBST(TIGER_LIBS)
1403 ],,,[AM_CONDITIONAL(USE_TIGER, false)])
1406 translit(dnm, m, l) AM_CONDITIONAL(USE_LADSPA, true)
1407 AG_GST_CHECK_FEATURE(LADSPA, [ladspa], ladspa, [
1408 AC_CHECK_HEADER(ladspa.h, HAVE_LADSPA="yes", HAVE_LADSPA="no")
1410 PKG_CHECK_MODULES(LRDF, lrdf, HAVE_LRDF=yes, HAVE_LRDF=no)
1411 if test $HAVE_LRDF = "yes"; then
1412 AC_DEFINE(HAVE_LRDF, 1, [Define if we have liblrdf])
1415 AC_SUBST(LRDF_CFLAGS)
1419 translit(dnm, m, l) AM_CONDITIONAL(USE_LV2, true)
1420 AG_GST_CHECK_FEATURE(LV2, [lv2], lv2, [
1421 PKG_CHECK_MODULES(SLV2, slv2 >= 0.6.6, HAVE_LV2="yes", HAVE_LV2="no")
1422 AC_SUBST(SLV2_CFLAGS)
1427 translit(dnm, m, l) AM_CONDITIONAL(USE_LIBMMS, true)
1428 AG_GST_CHECK_FEATURE(LIBMMS, [mms protocol library], libmms, [
1429 dnl check with pkg-config first
1430 PKG_CHECK_MODULES(LIBMMS, libmms >= 0.4, HAVE_LIBMMS="yes", [
1434 AC_SUBST(LIBMMS_LIBS)
1438 translit(dnm, m, l) AM_CONDITIONAL(USE_SRTP, true)
1439 AG_GST_CHECK_FEATURE(SRTP, [srtp library], srtp, [
1441 AG_GST_CHECK_LIBHEADER(SRTP, srtp, srtp_init, , srtp/srtp.h,
1442 SRTP_LIBS="-lsrtp", HAVE_SRTP="no")
1447 translit(dnm, m, l) AM_CONDITIONAL(USE_LINSYS, true)
1448 AG_GST_CHECK_FEATURE(LINSYS, [Linear Systems SDI plugin], linsys, [
1460 translit(dnm, m, l) AM_CONDITIONAL(USE_MODPLUG, true)
1461 AG_GST_CHECK_FEATURE(MODPLUG, modplug, modplug, [
1462 if test "x$HAVE_CXX" != "xyes"; then
1463 AC_MSG_WARN([Not compiling modplug plugin as it requires a C++ compiler])
1466 PKG_CHECK_MODULES(MODPLUG, libmodplug, HAVE_MODPLUG="yes", HAVE_MODPLUG="no")
1468 AC_SUBST(MODPLUG_CFLAGS)
1469 AC_SUBST(MODPLUG_LIBS)
1473 translit(dnm, m, l) AM_CONDITIONAL(USE_MIMIC, true)
1474 AG_GST_CHECK_FEATURE(MIMIC, [libmimic library], mimic, [
1476 PKG_CHECK_MODULES(MIMIC, libmimic >= $MIMIC_REQUIRED,
1477 HAVE_MIMIC=yes, HAVE_MIMIC=no)
1478 AC_SUBST(MIMIC_CFLAGS)
1479 AC_SUBST(MIMIC_LIBS)
1482 dnl *** mjpegtools version info ***
1483 dnl some may prefer older version (given quirks above)
1484 dnl hm, no version info seems available within mjpegtools headers
1485 dnl and API really moves along
1487 PKG_CHECK_EXISTS(mjpegtools >= 1.6.1.93 mjpegtools < 1.8.0, [
1488 mjpegtools_api=10601
1490 PKG_CHECK_EXISTS(mjpegtools >= 1.8.0 mjpegtools < 1.9.0, [
1491 mjpegtools_api=10800
1493 PKG_CHECK_EXISTS(mjpegtools >= 2.0.0, [
1494 mjpegtools_api=20000
1496 PKG_CHECK_MODULES(MJPEG, mjpegtools >= 1.9.0 mjpegtools < 2.0.0, [
1497 dnl logging API changed in release candidates
1498 OLD_CFLAGS="$CFLAGS"
1500 CFLAGS="$MJPEG_CFLAGS"
1501 LIBS="$LIBS $MJPEG_LIBS -lmjpegutils $LIBM -lpthread"
1502 AC_CHECK_FUNC(mjpeg_loglev_t, [
1503 mjpegtools_api=10903
1505 mjpegtools_api=10900
1507 CFLAGS="$OLD_CFLAGS"
1515 AC_DEFINE_UNQUOTED(GST_MJPEGTOOLS_API, $mjpegtools_api,
1516 [mjpegtools API evolution])
1518 dnl *** mpeg2enc ***
1519 translit(dnm, m, l) AM_CONDITIONAL(USE_MPEG2ENC, true)
1520 AG_GST_CHECK_FEATURE(MPEG2ENC, [mpeg2enc], mpeg2enc, [
1522 dnl we require a c++ compiler for this one
1523 if [ test x$HAVE_CXX = xyes ]; then
1524 dnl libmpeg2enc was first included in mjpegtools-1.6.2-rc3 (1.6.1.92)
1525 dnl since many distros include mjpegtools specifically without mplex
1526 dnl and mpeg2enc, we check for mpeg2enc on its own, too.
1527 PKG_CHECK_MODULES(MPEG2ENC, mjpegtools >= 1.6.1.93, [
1528 dnl HACK because mpeg2enc 1.8.0 header files have a spurious 'include config.h'
1530 dnl switch over to c++ to test things
1532 OLD_CPPFLAGS="$CPPFLAGS"
1534 CPPFLAGS_GOOD="$CPPFLAGS $MPEG2ENC_CFLAGS"
1535 CPPFLAGS="$CPPFLAGS_GOOD -I."
1537 mpeg2enc_headers_ok=no
1538 AC_CHECK_HEADER([mpeg2encoder.hh], [
1539 MPEG2ENC_LIBS="$MPEG2ENC_LIBS -lmpeg2encpp $LIBM -lpthread"
1541 LIBS="$LIBS $MPEG2ENC_LIBS"
1542 AC_MSG_CHECKING([for valid mpeg2enc objects])
1543 AC_RUN_IFELSE([AC_LANG_SOURCE([[
1544 #include <mpeg2encoder.hh>
1545 #include <mpeg2encoptions.hh>
1551 MPEG2EncOptions *options = new MPEG2EncOptions ();
1552 MPEG2Encoder *encoder = new MPEG2Encoder (*options);
1557 dnl so far so good, let's check more things:
1558 dnl mjpegtools-1.8.0 does not install the required
1559 dnl mpeg2syntaxcodes.h header by default, and a new release
1560 dnl is not in sight, so check for this oversight in case
1561 dnl distros or folks have fixed this themselves
1562 if test "$mjpegtools_api" -ge "10800"; then
1563 AC_CHECK_HEADER([mpeg2syntaxcodes.h], [
1564 mpeg2enc_headers_ok=yes
1566 mpeg2enc_headers_ok=no
1569 mpeg2enc_headers_ok=yes
1571 if test "x$mpeg2enc_headers_ok" = "xyes"; then
1574 CPPFLAGS="$CPPFLAGS_GOOD"
1575 AC_SUBST(MPEG2ENC_CFLAGS)
1576 AC_SUBST(MPEG2ENC_LIBS)
1583 CPPFLAGS="$OLD_CPPFLAGS"
1592 translit(dnm, m, l) AM_CONDITIONAL(USE_MPG123, true)
1593 AG_GST_CHECK_FEATURE(MPG123, [mpg123 audio decoder], mpg123, [
1594 PKG_CHECK_MODULES(MPG123, libmpg123 >= 1.13, HAVE_MPG123="yes", HAVE_MPG123="no")
1595 AC_SUBST(MPG123_CFLAGS)
1596 AC_SUBST(MPG123_LIBS)
1600 translit(dnm, m, l) AM_CONDITIONAL(USE_MPLEX, true)
1601 AG_GST_CHECK_FEATURE(MPLEX, [mplex], mplex, [
1603 dnl we require a c++ compiler for this one
1604 if [ test x$HAVE_CXX = xyes ]; then
1605 dnl libmplex was first included in mjpegtools-1.6.2-rc4 (1.6.1.93)
1606 dnl since many distros include mjpegtools specifically without mplex
1607 dnl and mpeg2enc, we check for mplex on its own, too.
1608 dnl libmplex < 1.9rc? has fuzzy ABI, valgrind and other problems
1609 PKG_CHECK_MODULES(MPLEX, mjpegtools >= 1.9.0, [
1610 dnl HACK because mplex 2.0.0 header files have a spurious 'include config.h'
1612 dnl switch over to c++ to test things
1614 OLD_CPPFLAGS="$CPPFLAGS"
1616 CPPFLAGS_GOOD="$CPPFLAGS $MPLEX_CFLAGS"
1617 CPPFLAGS="$CPPFLAGS_GOOD -I."
1618 AC_CHECK_HEADER(interact.hpp, [
1619 MPLEX_LIBS="$MPLEX_LIBS -lmplex2 $LIBM"
1621 LIBS="$LIBS $MPLEX_LIBS"
1622 OLD_LDFLAGS="$LDFLAGS"
1623 LDFLAGS="$LDFLAGS $MPLEX_LDFLAGS"
1624 dnl older libmplex uses off_t SegmentSize (), which leads to fuzzy ABI;
1625 dnl don't want this here
1626 AC_MSG_CHECKING([for valid mplex objects])
1627 AC_RUN_IFELSE([AC_LANG_SOURCE([[
1629 #include <interact.hpp>
1630 #include <outputstrm.hpp>
1631 #include <multiplexor.hpp>
1636 class TestOutputStream : public OutputStream {
1638 TestOutputStream () : OutputStream () { }
1639 void Write (uint8_t *a, unsigned int b) { }
1640 void NextSegment () { }
1641 uint64_t SegmentSize () { }
1645 MultiplexJob *job = new MultiplexJob ();
1646 vector<IBitStream *> inputs;
1647 job->SetupInputStreams (inputs);
1648 TestOutputStream *out = new TestOutputStream ();
1649 Multiplexor *mux = new Multiplexor(*job, *out, NULL);
1654 CPPFLAGS="$CPPFLAGS_GOOD"
1655 AC_SUBST(MPLEX_CFLAGS)
1656 AC_SUBST(MPLEX_LIBS)
1657 AC_SUBST(MPLEX_LDFLAGS)
1659 ],[AC_MSG_RESULT(no)],[])
1661 LDFLAGS="$OLD_LDFLAGS"
1663 CPPFLAGS="$OLD_CPPFLAGS"
1669 dnl *** musepack ***
1670 translit(dnm, m, l) AM_CONDITIONAL(USE_MUSEPACK, true)
1671 AG_GST_CHECK_FEATURE(MUSEPACK, [musepackdec], musepack, [
1672 AC_CHECK_HEADER([mpc/mpcdec.h], [
1674 MUSEPACK_LIBS="-lmpcdec"
1675 AC_SUBST(MUSEPACK_LIBS)
1676 ], [AC_CHECK_HEADER([mpcdec/mpcdec.h], [
1678 MUSEPACK_LIBS="-lmpcdec"
1679 AC_DEFINE(MPC_IS_OLD_API, 1, [Define if the old MusePack API is used])
1680 AC_SUBST(MUSEPACK_LIBS)
1681 ], [HAVE_MUSEPACK="no"])])
1685 translit(dnm, m, l) AM_CONDITIONAL(USE_MYTHTV, true)
1686 AG_GST_CHECK_FEATURE(MYTHTV, [MythTV client plugins], mythtvsrc, [
1687 PKG_CHECK_MODULES(GMYTH, gmyth >= 0.4 gmyth <= 0.7.99, HAVE_MYTHTV="yes", [
1690 AC_SUBST(GMYTH_CFLAGS)
1691 AC_SUBST(GMYTH_LIBS)
1695 translit(dnm, m, l) AM_CONDITIONAL(USE_NAS, true)
1696 AG_GST_CHECK_FEATURE(NAS, [nas plug-in], nassink, [
1699 if test "x$HAVE_X" = "xyes"; then
1700 save_cppflags=$CFLAGS
1701 CPPFLAGS="$CPPFLAGS $X_CFLAGS"
1702 AG_GST_CHECK_LIBHEADER(NAS, audio, AuOpenServer, $X_LIBS, audio/audiolib.h,
1703 NAS_LIBS="$X_LIBS -laudio" NAS_CFLAGS="$X_CFLAGS")
1704 CPPFLAGS="$save_cppflags"
1706 AC_SUBST(NAS_CFLAGS)
1711 translit(dnm, m, l) AM_CONDITIONAL(USE_NEON, true)
1712 AG_GST_CHECK_FEATURE(NEON, [neon http client plugins], neonhttpsrc, [
1713 PKG_CHECK_MODULES(NEON, neon >= 0.27.0 neon <= 0.30.99, HAVE_NEON="yes", [
1716 AC_SUBST(NEON_CFLAGS)
1721 translit(dnm, m, l) AM_CONDITIONAL(USE_OFA, true)
1722 AG_GST_CHECK_FEATURE(OFA, [ofa plugins], ofa, [
1723 PKG_CHECK_MODULES(OFA, libofa >= 0.9.3, HAVE_OFA="yes", [
1726 AC_SUBST(OFA_CFLAGS)
1731 translit(dnm, m, l) AM_CONDITIONAL(USE_OPENAL, true)
1732 AG_GST_CHECK_FEATURE(OPENAL, [OpenAL plugin], openal, [
1733 PKG_CHECK_MODULES(OPENAL, openal >= 1.14, HAVE_OPENAL="yes", [
1736 AC_SUBST(OPENAL_CFLAGS)
1737 AC_SUBST(OPENAL_LIBS)
1741 translit(dnm, m, l) AM_CONDITIONAL(USE_OPENCV, true)
1742 AG_GST_CHECK_FEATURE(OPENCV, [opencv plugins], opencv, [
1743 dnl we specify a max. version too because we set CV_NO_BACKWARD_COMPATIBILITY
1744 dnl and don't want the build to break when a new opencv version comes out.
1745 dnl Need to adjust this upwards once we know that our code compiles fine with
1746 dnl a new version and the no-backward-compatibility define. (There doesn't
1747 dnl seem to be a switch to suppress the warnings the cvcompat.h header
1749 PKG_CHECK_MODULES(OPENCV, opencv >= 2.0.0 opencv <= 2.4.8 , [
1752 OLD_CPPFLAGS=$CPPFLAGS
1753 CPPFLAGS=$OPENCV_CFLAGS
1754 AC_CHECK_HEADERS([highgui.h opencv2/highgui/highgui_c.h])
1755 CPPFLAGS=$OLD_CPPFLAGS
1758 if test $ac_cv_header_highgui_h = "yes" -o $ac_cv_header_opencv2_highgui_highgui_c_h = "yes" ; then
1761 AC_MSG_RESULT([neither highgui.h nor opencv2/highgui/highgui_c.h could not be found])
1767 OPENCV_PREFIX="`$PKG_CONFIG --variable=prefix opencv`"
1768 AC_DEFINE_UNQUOTED(OPENCV_PREFIX, "$OPENCV_PREFIX", [opencv install prefix])
1769 AC_SUBST(OPENCV_PREFIX)
1770 AC_SUBST(OPENCV_CFLAGS)
1771 AC_SUBST(OPENCV_LIBS)
1775 translit(dnm, m, l) AM_CONDITIONAL(USE_OPENEXR, true)
1776 AG_GST_CHECK_FEATURE(OPENEXR, [openexr library], openexr, [
1777 AG_GST_PKG_CHECK_MODULES(OPENEXR, OpenEXR)
1780 dnl *** OpenJPEG ***
1781 translit(dnm, m, l) AM_CONDITIONAL(USE_OPENJPEG, true)
1782 AG_GST_CHECK_FEATURE(OPENJPEG, [openjpeg library], openjpeg, [
1785 AG_GST_CHECK_LIBHEADER(OPENJPEG, openjp2, opj_version, ,openjpeg-2.0/openjpeg.h, OPENJPEG_LIBS="-lopenjp2")
1786 if test x"$HAVE_OPENJPEG" = x"no"; then
1787 PKG_CHECK_MODULES(OPENJPEG, libopenjpeg1,
1788 HAVE_OPENJPEG="yes",
1789 AG_GST_CHECK_LIBHEADER(OPENJPEG, openjpeg, opj_version, , openjpeg.h, OPENJPEG_LIBS="-lopenjpeg")
1791 if test x"$HAVE_OPENJPEG" = x"yes"; then
1792 AC_DEFINE([HAVE_OPENJPEG_1], 1, [Define if OpenJPEG 1 is used])
1795 AC_SUBST(OPENJPEG_CFLAGS)
1796 AC_SUBST(OPENJPEG_LIBS)
1800 translit(dnm, m, l) AM_CONDITIONAL(USE_OPENNI2, true)
1801 AG_GST_CHECK_FEATURE(OPENNI2, [openni2 library], openni2, [
1802 PKG_CHECK_MODULES(OPENNI2, libopenni2 >= 0.26, HAVE_OPENNI2="yes", [ HAVE_OPENNI2="no" ] )
1803 AC_SUBST(OPENNI2_CFLAGS)
1804 AC_SUBST(OPENNI2_LIBS)
1808 translit(dnm, m, l) AM_CONDITIONAL(USE_OPUS, true)
1809 AG_GST_CHECK_FEATURE(OPUS, [opus], opus, [
1810 PKG_CHECK_MODULES(OPUS, opus >= 0.9.4, [
1811 AC_DEFINE([HAVE_OPUS], 1, [Define if Opus >= 0.9.4 is installed])
1816 AC_SUBST(OPUS_CFLAGS)
1821 translit(dnm, m, l) AM_CONDITIONAL(USE_PVR, true)
1822 AG_GST_CHECK_FEATURE(PVR, [pvrvideosink], pvr, [
1823 PKG_CHECK_MODULES([PVR], [libtimemmgr], HAVE_PVR=yes, HAVE_PVR=no)
1824 AC_SUBST(PVR_CFLAGS)
1828 AC_ARG_WITH([pvr-external-headers],
1829 AS_HELP_STRING([--with-pvr-external-headers],[Use system installed PVR2D headers]),
1830 [AS_IF([test "x$with_pvr_external_headers" = "xno"],
1831 [PVR_CFLAGS="$PVR_CFLAGS -I\$(srcdir)/pvr_includes"])],
1832 [PVR_CFLAGS="$PVR_CFLAGS -I\$(srcdir)/pvr_includes"])
1835 translit(dnm, m, l) AM_CONDITIONAL(USE_RSVG, true)
1836 AG_GST_CHECK_FEATURE(RSVG, [rsvg decoder], rsvg, [
1837 PKG_CHECK_MODULES(RSVG, librsvg-2.0 >= 2.36 cairo, [
1839 PKG_CHECK_MODULES(RSVG_2_36_2, librsvg-2.0 >= 2.36.2, HAVE_RSVG_2_36_2="yes", HAVE_RSVG_2_36_2="no")
1840 if test "x$HAVE_RSVG_2_36_2" = "xyes"; then
1841 AC_DEFINE(HAVE_RSVG_2_36_2, [1], [Have RSVG 2.36.2 or newer])
1846 AC_SUBST(RSVG_CFLAGS)
1851 translit(dnm, m, l) AM_CONDITIONAL(USE_EGLGLES, true)
1852 AG_GST_CHECK_FEATURE(EGLGLES, [eglgles sink], eglgles, [
1855 if test x"$HAVE_EGL" = x"yes"; then
1856 PKG_CHECK_MODULES(EGLGLES, egl glesv2, HAVE_EGLGLES="yes", [
1861 LIBS="$LIBS $EGL_LIBS"
1862 CFLAGS="$CFLAGS $EGL_CFLAGS"
1863 AC_CHECK_LIB([GLESv2], [glEnable],
1865 AC_CHECK_HEADER([GLES2/gl2.h],
1868 EGLGLES_LIBS="-lGLESv2"
1875 elif test x"$HAVE_IOS" = x"yes"; then
1879 AC_SUBST(EGLGLES_CFLAGS)
1880 AC_SUBST(EGLGLES_LIBS)
1883 dnl *** timidity ***
1884 translit(dnm, m, l) AM_CONDITIONAL(USE_TIMIDITY, true)
1885 AG_GST_CHECK_FEATURE(TIMIDITY, [timidity midi soft synth plugin], timidity, [
1886 PKG_CHECK_MODULES(TIMIDITY, libtimidity, [
1887 HAVE_TIMIDITY="yes",
1888 AC_MSG_CHECKING([for timidity.cfg])
1890 if test -r /etc/timidity.cfg; then
1891 timidity_cfg=/etc/timidity.cfg
1892 elif test -r /etc/timidity/timidity.cfg; then
1893 timidity_cfg=/etc/timidity/timidity.cfg
1894 elif test -r /usr/share/timidity/timidity.cfg; then
1895 timidity_cfg=/usr/share/timidity/timidity.cfg
1896 elif test -r /usr/local/share/timidity/timidity.cfg; then
1897 timidity_cfg=/usr/local/share/timidity/timidity.cfg
1899 if test "x$timidity_cfg" != "x"; then
1900 AC_MSG_RESULT($timidity_cfg)
1901 AC_DEFINE_UNQUOTED(TIMIDITY_CFG, "$timidity_cfg", [Define location of timidity.cfg])
1903 AC_MSG_RESULT([not found])
1908 AC_SUBST(TIMIDITY_CFLAGS)
1909 AC_SUBST(TIMIDITY_LIBS)
1912 dnl *** teletextdec ***
1913 translit(dnm, m, l) AM_CONDITIONAL(USE_TELETEXTDEC, true)
1914 AG_GST_CHECK_FEATURE(TELETEXTDEC, [Teletext decoder], teletextdec, [
1915 AG_GST_PKG_CHECK_MODULES(TELETEXTDEC, zvbi-0.2)
1918 dnl *** wildmidi ***
1919 translit(dnm, m, l) AM_CONDITIONAL(USE_WILDMIDI, true)
1920 AG_GST_CHECK_FEATURE(WILDMIDI, [wildmidi midi soft synth plugin], wildmidi, [
1921 AG_GST_CHECK_LIBHEADER(WILDMIDI, WildMidi,
1924 WILDMIDI_LIBS="-lWildMidi")
1925 AC_CHECK_LIB(WildMidi, WildMidi_LoadSamples, AC_DEFINE(HAVE_WILDMIDI_0_2_2, [1], [Have WildMidi 0.2.2 or earlier library]))
1927 if test "x$HAVE_WILDMIDI" = "xyes"; then
1929 WILDMIDI_LIBS=-lWildMidi
1930 AC_MSG_NOTICE(compiling gstWildMidi)
1934 AC_MSG_WARN(no WildMidi library found (libWildMidi))
1936 AC_SUBST(WILDMIDI_CFLAGS)
1937 AC_SUBST(WILDMIDI_LIBS)
1941 translit(dnm, m, l) AM_CONDITIONAL(USE_SDL, true)
1942 AG_GST_CHECK_FEATURE(SDL, [SDL plug-in], sdlvideosink sdlaudiosink, [
1943 AM_PATH_SDL(, HAVE_SDL=yes, HAVE_SDL=no)
1946 dnl **** Smooth Streaming ****
1947 translit(dnm, m, l) AM_CONDITIONAL(USE_SMOOTHSTREAMING, true)
1948 AG_GST_CHECK_FEATURE(SMOOTHSTREAMING, [Smooth Streaming plug-in], smoothstreaming, [
1949 PKG_CHECK_MODULES(LIBXML2, libxml-2.0 >= 2.4,
1951 HAVE_SMOOTHSTREAMING="yes"],
1953 HAVE_SMOOTHSTREAMING="no"])
1954 AC_SUBST(LIBXML2_CFLAGS)
1955 AC_SUBST(LIBXML2_LIBS)
1959 translit(dnm, m, l) AM_CONDITIONAL(USE_SNDFILE, true)
1960 AG_GST_CHECK_FEATURE(SNDFILE, [sndfile plug-in], sfdec sfenc, [
1961 PKG_CHECK_MODULES(SNDFILE, sndfile >= 1.0.16, HAVE_SNDFILE="yes", HAVE_SNDFILE="no")
1962 AC_SUBST(SNDFILE_CFLAGS)
1963 AC_SUBST(SNDFILE_LIBS)
1966 dnl *** soundtouch ***
1967 translit(dnm, m, l) AM_CONDITIONAL(USE_SOUNDTOUCH, true)
1968 AG_GST_CHECK_FEATURE(SOUNDTOUCH, [soundtouch plug-in], soundtouch, [
1969 dnl We only need -lBPM on soundtouch < 1.4
1970 dnl We check for libSoundTouch since Debian used it before upstream
1971 dnl added a pkgconfig file.
1972 HAVE_SOUNDTOUCH_1_4=yes
1973 PKG_CHECK_MODULES(SOUNDTOUCH, soundtouch,
1974 [HAVE_SOUNDTOUCH=yes],
1975 [PKG_CHECK_MODULES(SOUNDTOUCH, soundtouch-1.4,
1976 [HAVE_SOUNDTOUCH=yes],
1977 [PKG_CHECK_MODULES(SOUNDTOUCH, soundtouch-1.0,
1978 [HAVE_SOUNDTOUCH=yes
1979 HAVE_SOUNDTOUCH_1_4=no
1980 SOUNDTOUCH_LIBS="$SOUNDTOUCH_LIBS -lBPM"],
1981 [PKG_CHECK_MODULES(SOUNDTOUCH, libSoundTouch >= 1.4,
1982 [HAVE_SOUNDTOUCH=yes],
1983 [PKG_CHECK_MODULES(SOUNDTOUCH, libSoundTouch,
1984 [HAVE_SOUNDTOUCH=yes
1985 HAVE_SOUNDTOUCH_1_4=no
1986 SOUNDTOUCH_LIBS="$SOUNDTOUCH_LIBS -lBPM"],
1987 HAVE_SOUNDTOUCH=no)])])])])
1988 AC_SUBST(SOUNDTOUCH_CFLAGS)
1989 AC_SUBST(SOUNDTOUCH_LIBS)
1990 if test "x$HAVE_CXX" != "xyes"; then
1991 USE_SOUNDTOUCH=false
1992 AC_MSG_NOTICE([Not building soundtouch plugin: no C++ compiler found])
1994 if test "x$HAVE_SOUNDTOUCH" = "xyes" -a "x$HAVE_SOUNDTOUCH_1_4" = "xyes"; then
1995 AC_DEFINE([HAVE_SOUNDTOUCH_1_4], [1],
1996 [Defined if the available libSoundTouch is >= 1.4])
2001 translit(dnm, m, l) AM_CONDITIONAL(USE_SPC, true)
2002 AG_GST_CHECK_FEATURE(SPC, [spc decoder], spc, [
2003 AC_CHECK_HEADER(openspc.h, [
2004 AC_CHECK_LIB(openspc, OSPC_Init, [
2005 SPC_LIBS="-lopenspc"
2017 translit(dnm, m, l) AM_CONDITIONAL(USE_GME, true)
2018 AG_GST_CHECK_FEATURE(GME, [gme decoder], gme, [
2019 AC_CHECK_HEADER(gme/gme.h, [
2020 AC_CHECK_LIB(gme, gme_new_emu, [
2031 if test "x$HAVE_GME" = "xyes"; then
2032 AC_CHECK_LIB(gme, gme_enable_accuracy, [
2033 AC_DEFINE(HAVE_LIBGME_ACCURACY, 1, [Define if gme 0.5.6 or newer is available])
2039 translit(dnm, m, l) AM_CONDITIONAL(USE_XVID, true)
2040 AG_GST_CHECK_FEATURE(XVID, [xvid plugins], xvid, [
2042 AC_CHECK_HEADER(xvid.h, [
2044 LIBS="-lpthread $LIBM"
2045 AC_CHECK_LIB(xvidcore, xvid_encore, [
2046 AC_CHECK_LIB(xvidcore, xvid_decore, [
2047 AC_CHECK_LIB(xvidcore, xvid_global, [
2048 AC_MSG_CHECKING([for up-to-date XviD API version])
2049 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <xvid.h>]], [[
2050 #if XVID_API_MAJOR(XVID_API) != 4
2051 #error "Incompatible XviD API version"
2053 #if XVID_API_MAJOR(XVID_API) == 4 && XVID_API_MINOR(XVID_API) < 3
2054 #error "Incompatible XviD API version"
2056 ]])],[ AC_MSG_RESULT(yes)
2057 XVID_LIBS="-lxvidcore $LIBM"
2060 ],[AC_MSG_RESULT(no) ])
2069 translit(dnm, m, l) AM_CONDITIONAL(USE_DVB, true)
2070 AG_GST_CHECK_FEATURE(DVB, [DVB Source], dvb, [
2071 AC_MSG_CHECKING([Checking for up to date dvb installation])
2072 AC_CHECK_HEADER(linux/dvb/version.h, [
2073 AC_MSG_CHECKING([for up-to-date dvb API])
2074 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <linux/dvb/version.h>]], [[
2075 #if DVB_API_VERSION < 5 || (DVB_API_VERSION == 5 && DVB_API_VERSION_MINOR <= 4)
2076 #error "Incompatible dvb API"
2078 ]])], [ AC_MSG_RESULT(yes)
2080 ], [ AC_MSG_RESULT(no)
2087 translit(dnm, m, l) AM_CONDITIONAL(USE_WININET, true)
2088 AG_GST_CHECK_FEATURE(WININET, [Windows internet library], wininet, [
2089 AC_MSG_CHECKING([Checking for windows internet support])
2090 AC_CHECK_HEADERS([windows.h wininet.h],
2091 [HAVE_WININET="yes"], [HAVE_WININET="no"],
2092 [AC_INCLUDES_DEFAULT
2093 #include <windows.h>])
2097 translit(dnm, m, l) AM_CONDITIONAL(USE_ACM, true)
2098 AG_GST_CHECK_FEATURE(ACM, [Windows ACM library], acm, [
2099 AC_MSG_CHECKING([Checking for ACM support])
2100 AC_CHECK_HEADERS([windows.h msacm.h],
2102 AC_SUBST(ACMENC_CFLAGS)
2103 AC_SUBST(ACMMP3DEC_CFLAGS)
2105 [AC_INCLUDES_DEFAULT
2106 #include <windows.h>])
2110 translit(dnm, m, l) AM_CONDITIONAL(USE_VDPAU, true)
2111 AG_GST_CHECK_FEATURE(VDPAU, [VDPAU], vdpau, [
2116 PKG_CHECK_MODULES(VDPAU, vdpau, [HAVE_VDPAU="yes"],
2118 if test "$HAVE_VDPAU" = "no"; then
2119 saved_CPPFLAGS="$CPPFLAGS"
2120 AC_CHECK_HEADER([vdpau/vdpau.h], [HAVE_VDPAU_H=yes])
2122 if test -z "$HAVE_VDPAU_H"; then
2123 dnl Didn't find VDPAU header straight away.
2124 dnl Try /usr/include/nvidia. Need to clear caching vars first
2125 AC_MSG_NOTICE([VDPAU header not in standard path. Checking /usr/include/nvidia])
2126 unset ac_cv_header_vdpau_vdpau_h
2127 unset ac_cv_header_vdpau_vdpau_x11_h
2128 VDPAU_CFLAGS="-I/usr/include/nvidia"
2129 VDPAU_LIBS="-L/usr/lib/nvidia -lvdpau"
2130 CPPFLAGS="$VDPAU_CFLAGS $saved_CPPFLAGS"
2131 AC_CHECK_HEADER([vdpau/vdpau.h], [HAVE_VDPAU_H=yes])
2134 AC_CHECK_HEADER([vdpau/vdpau_x11.h], [HAVE_VDPAU_X11_H=yes])
2136 if test "x$HAVE_VDPAU_H" = "xyes" -a "x$HAVE_VDPAU_X11_H" = "xyes"; then
2137 dnl Found the headers - look for the lib
2138 AC_MSG_NOTICE([VDPAU headers found. Checking libraries])
2140 LIBS="$VDPAU_LIBS $saved_LIBS"
2141 AC_CHECK_LIB(vdpau,vdp_device_create_x11,[HAVE_VDPAU="yes"])
2147 if test "$HAVE_VDPAU" = "yes"; then
2148 AC_MSG_NOTICE([Found up to date VDPAU installation])
2149 AC_SUBST(VDPAU_CFLAGS)
2150 AC_SUBST(VDPAU_LIBS)
2155 translit(dnm, m, l) AM_CONDITIONAL(USE_SBC, true)
2156 AG_GST_CHECK_FEATURE(SBC, [SBC bluetooth audio codec], sbc, [
2157 AG_GST_PKG_CHECK_MODULES(SBC, [sbc >= 1.0])
2160 dnl *** schroedinger ***
2161 translit(dnm, m, l) AM_CONDITIONAL(USE_SCHRO, true)
2162 AG_GST_CHECK_FEATURE(SCHRO, [Schroedinger video codec], schro, [
2163 AG_GST_PKG_CHECK_MODULES(SCHRO, schroedinger-1.0 >= 1.0.10)
2167 translit(dnm, m, l) AM_CONDITIONAL(USE_ZBAR, true)
2168 AG_GST_CHECK_FEATURE(ZBAR, [ZBar barcode detector], zbar, [
2169 AG_GST_PKG_CHECK_MODULES(ZBAR, zbar >= 0.9)
2173 translit(dnm, m, l) AM_CONDITIONAL(USE_RTMP, true)
2174 AG_GST_CHECK_FEATURE(RTMP, [rtmp library], rtmp, [
2175 AG_GST_PKG_CHECK_MODULES(RTMP, librtmp)
2179 translit(dnm, m, l) AM_CONDITIONAL(USE_SPANDSP, true)
2180 AG_GST_CHECK_FEATURE(SPANDSP, [Spandsp], spandsp, [
2181 PKG_CHECK_MODULES(SPANDSP, spandsp >= 0.0.6, [
2182 HAVE_SPANDSP="yes" ], [
2186 AC_SUBST(SPANDSP_CFLAGS)
2187 AC_SUBST(SPANDSP_LIBS)
2189 dnl *** GSettings ***
2190 translit(dnm, m, l) AM_CONDITIONAL(USE_GSETTINGS, true)
2191 AG_GST_CHECK_FEATURE(GSETTINGS, [GSettings plugin], gsettings, [
2192 AG_GST_PKG_CHECK_MODULES(GSETTINGS, gio-2.0 >= 2.25.0)
2193 if test "x$HAVE_GSETTINGS" = "xyes"; then
2199 translit(dnm, m, l) AM_CONDITIONAL(USE_SNDIO, true)
2200 AG_GST_CHECK_FEATURE(SNDIO, [sndio audio], sndio, [
2201 AC_CHECK_HEADER(sndio.h, HAVE_SNDIO="yes", HAVE_SNDIO="no")
2202 if test "x$HAVE_SNDIO" = "xyes"; then
2203 AC_CHECK_LIB(sndio, sio_open, HAVE_SNDIO="yes", HAVE_SNDIO="no")
2204 if test "x$HAVE_SNDIO" = "xyes"; then
2206 AC_SUBST(SNDIO_LIBS)
2212 translit(dnm, m, l) AM_CONDITIONAL(USE_HLS, true)
2213 AG_GST_CHECK_FEATURE(HLS, [http live streaming plugin], hls, [
2214 PKG_CHECK_MODULES(NETTLE, nettle,
2216 AC_DEFINE(HAVE_NETTLE, 1, [Define if nettle is available])
2219 AM_PATH_LIBGCRYPT([1.2.0],
2221 AC_DEFINE(HAVE_LIBGCRYPT, 1, [Define if libgcrypt is available])
2231 dnl not building plugins with external dependencies,
2232 dnl but we still need to set the conditionals
2234 AM_CONDITIONAL(USE_ASSRENDER, false)
2235 AM_CONDITIONAL(USE_VOAMRWBENC, false)
2236 AM_CONDITIONAL(USE_VOAACENC, false)
2237 AM_CONDITIONAL(USE_APEXSINK, false)
2238 AM_CONDITIONAL(USE_BZ2, false)
2239 AM_CONDITIONAL(USE_CHROMAPRINT, false)
2240 AM_CONDITIONAL(USE_CURL, false)
2241 AM_CONDITIONAL(USE_SSH2, false)
2242 AM_CONDITIONAL(USE_DASH, false)
2243 AM_CONDITIONAL(USE_DC1394, false)
2244 AM_CONDITIONAL(USE_DECKLINK, false)
2245 AM_CONDITIONAL(DECKLINK_OSX, false)
2246 AM_CONDITIONAL(USE_DIRECTFB, false)
2247 AM_CONDITIONAL(USE_WAYLAND, false)
2248 AM_CONDITIONAL(USE_DAALA, false)
2249 AM_CONDITIONAL(USE_DTS, false)
2250 AM_CONDITIONAL(USE_EXIF, false)
2251 AM_CONDITIONAL(USE_RESINDVD, false)
2252 AM_CONDITIONAL(USE_FAAC, false)
2253 AM_CONDITIONAL(USE_FAAD, false)
2254 AM_CONDITIONAL(USE_FBDEV, false)
2255 AM_CONDITIONAL(USE_FLITE, false)
2256 AM_CONDITIONAL(USE_FLUIDSYNTH, false)
2257 AM_CONDITIONAL(USE_GSM, false)
2258 AM_CONDITIONAL(USE_HLS, false)
2259 AM_CONDITIONAL(USE_KATE, false)
2260 AM_CONDITIONAL(USE_TIGER, false)
2261 AM_CONDITIONAL(USE_LADSPA, false)
2262 AM_CONDITIONAL(USE_LV2, false)
2263 AM_CONDITIONAL(USE_LIBMMS, false)
2264 AM_CONDITIONAL(USE_LINSYS, false)
2265 AM_CONDITIONAL(USE_MODPLUG, false)
2266 AM_CONDITIONAL(USE_MIMIC, false)
2267 AM_CONDITIONAL(USE_MPEG2ENC, false)
2268 AM_CONDITIONAL(USE_MPG123, false)
2269 AM_CONDITIONAL(USE_MPLEX, false)
2270 AM_CONDITIONAL(USE_MUSEPACK, false)
2271 AM_CONDITIONAL(USE_MYTHTV, false)
2272 AM_CONDITIONAL(USE_NAS, false)
2273 AM_CONDITIONAL(USE_NEON, false)
2274 AM_CONDITIONAL(USE_OFA, false)
2275 AM_CONDITIONAL(USE_OPENAL, false)
2276 AM_CONDITIONAL(USE_OPENCV, false)
2277 AM_CONDITIONAL(USE_OPENEXR, false)
2278 AM_CONDITIONAL(USE_OPENJPEG, false)
2279 AM_CONDITIONAL(USE_OPENNI2, false)
2280 AM_CONDITIONAL(USE_OPUS, false)
2281 AM_CONDITIONAL(USE_PVR, false)
2282 AM_CONDITIONAL(USE_RSVG, false)
2283 AM_CONDITIONAL(USE_EGLGLES, false)
2284 AM_CONDITIONAL(USE_TIMIDITY, false)
2285 AM_CONDITIONAL(USE_WILDMIDI, false)
2286 AM_CONDITIONAL(USE_SDL, false)
2287 AM_CONDITIONAL(USE_SMOOTHSTREAMING, false)
2288 AM_CONDITIONAL(USE_SNDFILE, false)
2289 AM_CONDITIONAL(USE_SOUNDTOUCH, false)
2290 AM_CONDITIONAL(USE_SPANDSP, false)
2291 AM_CONDITIONAL(USE_SPC, false)
2292 AM_CONDITIONAL(USE_SRTP, false)
2293 AM_CONDITIONAL(USE_GME, false)
2294 AM_CONDITIONAL(USE_GSETTINGS, false)
2295 AM_CONDITIONAL(USE_XVID, false)
2296 AM_CONDITIONAL(USE_DVB, false)
2297 AM_CONDITIONAL(USE_WININET, false)
2298 AM_CONDITIONAL(USE_ACM, false)
2299 AM_CONDITIONAL(USE_VDPAU, false)
2300 AM_CONDITIONAL(USE_SBC, false)
2301 AM_CONDITIONAL(USE_SCHRO, false)
2302 AM_CONDITIONAL(USE_ZBAR, false)
2303 AM_CONDITIONAL(USE_RTMP, false)
2304 AM_CONDITIONAL(USE_TELETEXTDEC, false)
2305 AM_CONDITIONAL(USE_SNDIO, false)
2306 AM_CONDITIONAL(USE_UVCH264, false)
2307 AM_CONDITIONAL(USE_WEBP, false)
2309 fi dnl of EXT plugins
2311 dnl *** finalize CFLAGS, LDFLAGS, LIBS
2314 dnl GST_OPTION_CFLAGS: common flags for profiling, debugging, errors, ...
2315 dnl GST_*: flags shared by built objects to link against GStreamer
2316 dnl GST_ALL_LDFLAGS: linker flags shared by all
2317 dnl GST_LIB_LDFLAGS: additional linker flags for all libaries
2318 dnl GST_LT_LDFLAGS: library versioning of our libraries
2319 dnl GST_PLUGIN_LDFLAGS: flags to be used for all plugins
2321 dnl GST_OPTION_CFLAGS
2322 if test "x$USE_DEBUG" = xyes; then
2325 AC_SUBST(PROFILE_CFLAGS)
2327 if test "x$PACKAGE_VERSION_NANO" = "x1"; then
2328 dnl Define _only_ during CVS (not pre-releases or releases)
2329 DEPRECATED_CFLAGS="-DGST_DISABLE_DEPRECATED"
2331 DEPRECATED_CFLAGS=""
2333 AC_SUBST(DEPRECATED_CFLAGS)
2335 dnl every flag in GST_OPTION_CFLAGS and GST_OPTION_CXXFLAGS can be overridden
2336 dnl at make time with e.g. make ERROR_CFLAGS=""
2337 GST_OPTION_CFLAGS="\$(WARNING_CFLAGS) \$(ERROR_CFLAGS) \$(DEBUG_CFLAGS) \$(PROFILE_CFLAGS) \$(GCOV_CFLAGS) \$(OPT_CFLAGS) \$(DEPRECATED_CFLAGS)"
2338 GST_OPTION_CXXFLAGS="\$(WARNING_CXXFLAGS) \$(ERROR_CXXFLAGS) \$(DEBUG_CFLAGS) \$(PROFILE_CFLAGS) \$(GCOV_CFLAGS) \$(OPT_CFLAGS) \$(DEPRECATED_CFLAGS)"
2339 GST_OPTION_OBJCFLAGS="\$(WARNING_OBJCFLAGS) \$(ERROR_OBJCFLAGS) \$(DEBUG_CFLAGS) \$(PROFILE_CFLAGS) \$(GCOV_CFLAGS) \$(OPT_CFLAGS) \$(DEPRECATED_CFLAGS)"
2340 AC_SUBST(GST_OPTION_CFLAGS)
2341 AC_SUBST(GST_OPTION_CXXFLAGS)
2342 AC_SUBST(GST_OPTION_OBJCFLAGS)
2344 dnl FIXME: do we want to rename to GST_ALL_* ?
2345 dnl prefer internal headers to already installed ones
2346 dnl also add builddir include for enumtypes and marshal
2347 dnl add GST_OPTION_CFLAGS, but overridable
2348 GST_CFLAGS="$GST_CFLAGS -DGST_USE_UNSTABLE_API"
2349 GST_CXXFLAGS="$GST_CFLAGS $GLIB_EXTRA_CFLAGS \$(GST_OPTION_CXXFLAGS)"
2350 GST_OBJCFLAGS="$GST_CFLAGS $GLIB_EXTRA_CFLAGS \$(GST_OPTION_OBJCFLAGS)"
2351 GST_CFLAGS="$GST_CFLAGS $GLIB_EXTRA_CFLAGS \$(GST_OPTION_CFLAGS)"
2352 AC_SUBST(GST_CFLAGS)
2353 AC_SUBST(GST_CXXFLAGS)
2354 AC_SUBST(GST_OBJCFLAGS)
2356 GST_PLUGINS_BAD_CXXFLAGS="-I\$(top_srcdir)/gst-libs -I\$(top_builddir)/gst-libs"
2357 GST_PLUGINS_BAD_OBJCFLAGS="-I\$(top_srcdir)/gst-libs -I\$(top_builddir)/gst-libs"
2358 GST_PLUGINS_BAD_CFLAGS="-I\$(top_srcdir)/gst-libs -I\$(top_builddir)/gst-libs"
2359 AC_SUBST(GST_PLUGINS_BAD_CFLAGS)
2360 AC_SUBST(GST_PLUGINS_BAD_CXXFLAGS)
2361 AC_SUBST(GST_PLUGINS_BAD_OBJCFLAGS)
2363 dnl LDFLAGS really should only contain flags, not libs - they get added before
2364 dnl whatevertarget_LIBS and -L flags here affect the rest of the linking
2365 GST_ALL_LDFLAGS="-no-undefined"
2366 AC_SUBST(GST_ALL_LDFLAGS)
2369 dnl linker flags shared by all libraries
2370 dnl LDFLAGS modifier defining exported symbols from built libraries
2371 dnl (export _gst_foo but not __gst_foo)
2372 GST_LIB_LDFLAGS="-export-symbols-regex ^_?\(gst_\|Gst\|GST_\).*"
2373 AC_SUBST(GST_LIB_LDFLAGS)
2375 dnl this really should only contain flags, not libs - they get added before
2376 dnl whatevertarget_LIBS and -L flags here affect the rest of the linking
2377 GST_PLUGIN_LDFLAGS="-module -avoid-version -export-symbols-regex '^[_]*gst_plugin_.*' $GST_ALL_LDFLAGS"
2378 AC_SUBST(GST_PLUGIN_LDFLAGS)
2380 dnl *** output files ***
2382 $MKDIR_P tests/check/orc
2390 gst-plugins-bad.spec
2392 gst/accurip/Makefile
2393 gst/adpcmdec/Makefile
2394 gst/adpcmenc/Makefile
2397 gst/audiofxbad/Makefile
2398 gst/audiomixer/Makefile
2399 gst/audiovisualizers/Makefile
2400 gst/autoconvert/Makefile
2402 gst/camerabin2/Makefile
2403 gst/cdxaparse/Makefile
2404 gst/coloreffects/Makefile
2405 gst/dataurisrc/Makefile
2407 gst/debugutils/Makefile
2408 gst/dvbsuboverlay/Makefile
2410 gst/faceoverlay/Makefile
2411 gst/festival/Makefile
2412 gst/fieldanalysis/Makefile
2413 gst/freeverb/Makefile
2415 gst/gaudieffects/Makefile
2416 gst/geometrictransform/Makefile
2418 gst/hdvparse/Makefile
2421 gst/interlace/Makefile
2422 gst/ivfparse/Makefile
2424 gst/jp2kdecimator/Makefile
2425 gst/jpegformat/Makefile
2427 gst/liveadder/Makefile
2429 gst/mpegdemux/Makefile
2430 gst/mpegtsdemux/Makefile
2431 gst/mpegtsmux/Makefile
2432 gst/mpegtsmux/tsmux/Makefile
2433 gst/mpegpsmux/Makefile
2436 gst/nuvdemux/Makefile
2437 gst/patchdetect/Makefile
2438 gst/pcapparse/Makefile
2440 gst/rawparse/Makefile
2442 gst/removesilence/Makefile
2445 gst/segmentclip/Makefile
2452 gst/videofilters/Makefile
2453 gst/videomeasure/Makefile
2454 gst/videoparsers/Makefile
2455 gst/videosignal/Makefile
2460 gst-libs/gst/Makefile
2461 gst-libs/gst/basecamerabinsrc/Makefile
2462 gst-libs/gst/egl/Makefile
2463 gst-libs/gst/insertbin/Makefile
2464 gst-libs/gst/interfaces/Makefile
2465 gst-libs/gst/codecparsers/Makefile
2466 gst-libs/gst/mpegts/Makefile
2467 gst-libs/gst/uridownloader/Makefile
2469 sys/dshowdecwrapper/Makefile
2471 sys/acmmp3dec/Makefile
2472 sys/androidmedia/Makefile
2473 sys/applemedia/Makefile
2474 sys/applemedia-nonpublic/Makefile
2477 sys/d3dvideosink/Makefile
2478 sys/decklink/Makefile
2479 sys/directdraw/Makefile
2480 sys/directsound/Makefile
2481 sys/dshowsrcwrapper/Makefile
2482 sys/dshowvideosink/Makefile
2486 sys/opensles/Makefile
2487 sys/osxvideo/Makefile
2488 sys/qtwrapper/Makefile
2491 sys/uvch264/Makefile
2496 sys/wininet/Makefile
2498 sys/winscreencap/Makefile
2500 tests/check/Makefile
2501 tests/files/Makefile
2502 tests/examples/Makefile
2503 tests/examples/camerabin2/Makefile
2504 tests/examples/directfb/Makefile
2505 tests/examples/mpegts/Makefile
2506 tests/examples/mxf/Makefile
2507 tests/examples/opencv/Makefile
2508 tests/examples/uvch264/Makefile
2509 tests/icles/Makefile
2510 ext/voamrwbenc/Makefile
2511 ext/voaacenc/Makefile
2512 ext/assrender/Makefile
2513 ext/apexsink/Makefile
2515 ext/chromaprint/Makefile
2519 ext/directfb/Makefile
2520 ext/wayland/Makefile
2523 ext/eglgles/Makefile
2527 ext/fluidsynth/Makefile
2535 ext/modplug/Makefile
2536 ext/mpeg2enc/Makefile
2540 ext/musepack/Makefile
2547 ext/openexr/Makefile
2548 ext/openjpeg/Makefile
2549 ext/openni2/Makefile
2552 ext/resindvd/Makefile
2555 ext/schroedinger/Makefile
2557 ext/smoothstreaming/Makefile
2558 ext/sndfile/Makefile
2559 ext/soundtouch/Makefile
2560 ext/spandsp/Makefile
2563 ext/teletextdec/Makefile
2565 ext/gsettings/Makefile
2566 ext/gsettings/org.freedesktop.gstreamer.default-elements.gschema.xml
2568 ext/timidity/Makefile
2574 docs/plugins/Makefile
2576 docs/version.entities
2578 pkgconfig/gstreamer-plugins-bad.pc
2579 pkgconfig/gstreamer-plugins-bad-uninstalled.pc
2580 pkgconfig/gstreamer-codecparsers.pc
2581 pkgconfig/gstreamer-codecparsers-uninstalled.pc
2582 pkgconfig/gstreamer-insertbin.pc
2583 pkgconfig/gstreamer-insertbin-uninstalled.pc
2584 pkgconfig/gstreamer-egl.pc
2585 pkgconfig/gstreamer-egl-uninstalled.pc
2586 pkgconfig/gstreamer-mpegts.pc
2587 pkgconfig/gstreamer-mpegts-uninstalled.pc
2592 dnl Create the config.h file for Visual Studio builds
2593 dnl Beware of spaces and /'s in some of the shell variable contents.
2595 -e 's/.*config.h.in.*autoheader.*/\/* Autogenerated config.h created for win32 Visual Studio builds *\/\n\n\/* PREFIX -- specifically added for Windows for easier moving *\/\n#define PREFIX "C:\\\\gstreamer"/' \
2596 -e 's/.* GETTEXT_PACKAGE$/#define GETTEXT_PACKAGE "'$GETTEXT_PACKAGE'"/' \
2597 -e 's/.* GST_DATADIR$/#define GST_DATADIR PREFIX "\\\\share"/' \
2598 -e 's/.* GST_LEVEL_DEFAULT$/#define GST_LEVEL_DEFAULT GST_LEVEL_ERROR/' \
2599 -e 's/.* GST_LICENSE$/#define GST_LICENSE "'$GST_LICENSE'"/' \
2600 -e 's/.* GST_API_VERSION$/#define GST_API_VERSION "'$GST_API_VERSION'"/' \
2601 -e "s,.* GST_PACKAGE_NAME$,#define GST_PACKAGE_NAME \"${GST_PACKAGE_NAME}\"," \
2602 -e 's/.* GST_PACKAGE_ORIGIN$/#define GST_PACKAGE_ORIGIN "Unknown package origin"/' \
2603 -e "s,.* GST_PACKAGE_RELEASE_DATETIME$,#define GST_PACKAGE_RELEASE_DATETIME \"${GST_PACKAGE_RELEASE_DATETIME}\"," \
2604 -e 's/.* HAVE_CPU_I386$/#define HAVE_CPU_I386 1/' \
2605 -e 's/.* HAVE_STDLIB_H$/#define HAVE_STDLIB_H 1/' \
2606 -e 's/.* HAVE_STRING_H$/#define HAVE_STRING_H 1/' \
2607 -e 's/.* HAVE_SYS_STAT_H$/#define HAVE_SYS_STAT_H 1/' \
2608 -e 's/.* HAVE_SYS_TYPES_H$/#define HAVE_SYS_TYPES_H 1/' \
2609 -e 's/.* HAVE_WIN32$/#define HAVE_WIN32 1/' \
2610 -e 's/.* HOST_CPU$/#define HOST_CPU "i686"/' \
2611 -e 's/.* LIBDIR$/#ifdef _DEBUG\n# define LIBDIR PREFIX "\\\\debug\\\\lib"\n#else\n# define LIBDIR PREFIX "\\\\lib"\n#endif/' \
2612 -e 's/.* LOCALEDIR$/#define LOCALEDIR PREFIX "\\\\share\\\\locale"/' \
2613 -e "s/.* PACKAGE$/#define PACKAGE \"$PACKAGE\"/" \
2614 -e 's/.* PACKAGE_BUGREPORT$/#define PACKAGE_BUGREPORT "http:\/\/bugzilla.gnome.org\/enter_bug.cgi?product=GStreamer"/' \
2615 -e "s/.* PACKAGE_NAME$/#define PACKAGE_NAME \"$PACKAGE_NAME\"/" \
2616 -e "s/.* PACKAGE_STRING$/#define PACKAGE_STRING \"$PACKAGE_STRING\"/" \
2617 -e 's/.* PACKAGE_TARNAME$/#define PACKAGE_TARNAME "'$PACKAGE_TARNAME'"/' \
2618 -e 's/.* PACKAGE_VERSION$/#define PACKAGE_VERSION "'$PACKAGE_VERSION'"/' \
2619 -e 's/.* PLUGINDIR$/#ifdef _DEBUG\n# define PLUGINDIR PREFIX "\\\\debug\\\\lib\\\\gstreamer-0.11"\n#else\n# define PLUGINDIR PREFIX "\\\\lib\\\\gstreamer-0.11"\n#endif/' \
2620 -e 's/.* VERSION$/#define VERSION "'$VERSION'"/' \
2621 -e "s/.* DEFAULT_AUDIOSINK$/#define DEFAULT_AUDIOSINK \"directsoundsink\"/" \
2622 -e "s/.* DEFAULT_AUDIOSRC$/#define DEFAULT_AUDIOSRC \"audiotestsrc\"/" \
2623 -e "s/.* DEFAULT_VIDEOSRC$/#define DEFAULT_VIDEOSRC \"videotestsrc\"/" \
2624 -e "s/.* DEFAULT_VISUALIZER$/#define DEFAULT_VISUALIZER \"goom\"/" \
2625 -e 's/.* HAVE_WINDOWS_H$/#define HAVE_WINDOWS_H 1/' \
2626 -e 's/.* HAVE_WININET_H$/#define HAVE_WININET_H 1/' \
2627 -e 's/.* HAVE_WINSOCK2_H$/#define HAVE_WINSOCK2_H 1/' \
2628 -e 's/.* HAVE_WS2TCPIP_H$/#define HAVE_WS2TCPIP_H 1/' \
2629 config.h.in >win32/common/config.h-new
2633 AG_GST_OUTPUT_PLUGINS