3 dnl initialize autoconf
4 dnl when going to/from release please set the nano (fourth number) right !
5 dnl releases only do Wall, git and prerelease does Werror too
6 AC_INIT([GStreamer Bad Plug-ins],[1.13.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.14 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 PKG_CONFIG_SYSROOT_DIR is a valid environment variable
37 m4_pattern_allow(PKG_CONFIG_SYSROOT_DIR)
39 dnl our libraries and install dirs use GST_API_VERSION in the filename
40 dnl to allow side-by-side installation of different API versions
42 AC_SUBST(GST_API_VERSION)
43 AC_DEFINE_UNQUOTED(GST_API_VERSION, "$GST_API_VERSION",
44 [GStreamer API Version])
46 AG_GST_LIBTOOL_PREPARE
48 dnl CURRENT, REVISION, AGE
49 dnl - library source changed -> increment REVISION
50 dnl - interfaces added/removed/changed -> increment CURRENT, REVISION = 0
51 dnl - interfaces added -> increment AGE
52 dnl - interfaces removed -> AGE = 0
53 dnl sets GST_LT_LDFLAGS
54 AS_LIBTOOL(GST, 1300, 0, 1300)
56 dnl *** required versions of GStreamer stuff ***
60 dnl *** autotools stuff ****
62 dnl allow for different autotools
63 AS_AUTOTOOLS_ALTERNATE
65 dnl Add parameters for aclocal
66 AC_SUBST(ACLOCAL_AMFLAGS, "-I m4 -I common/m4")
69 dnl the version check needs to stay here because autopoint greps for it
70 AM_GNU_GETTEXT_VERSION([0.17])
71 AM_GNU_GETTEXT([external])
72 AG_GST_GETTEXT([gst-plugins-bad-$GST_API_VERSION])
74 dnl *** check for arguments to configure ***
76 AG_GST_ARG_DISABLE_FATAL_WARNINGS
77 AG_GST_ARG_ENABLE_EXTRA_CHECKS
86 AG_GST_ARG_WITH_PKG_CONFIG_PATH
87 AG_GST_ARG_WITH_PACKAGE_NAME
88 AG_GST_ARG_WITH_PACKAGE_ORIGIN
90 AG_GST_ARG_WITH_PLUGINS
92 AG_GST_ARG_ENABLE_EXTERNAL
94 AG_GST_ARG_ENABLE_EXPERIMENTAL
96 AG_GST_PKG_CONFIG_PATH
98 dnl *** checks for platform ***
101 dnl * hardware/architecture *
103 dnl common/m4/gst-arch.m4
107 dnl Determine endianness
110 dnl *** checks for programs ***
116 dnl determine c++ compiler
118 dnl determine if c++ is available on this system
119 AC_CHECK_PROG(HAVE_CXX, $CXX, yes, no)
123 dnl check if the compiler supports '-c' and '-o' options
126 dnl check if the compiler supports do while(0) macros
127 AG_GST_CHECK_DOWHILE_MACROS
129 AC_PATH_PROG(VALGRIND_PATH, valgrind, no)
130 AM_CONDITIONAL(HAVE_VALGRIND, test ! "x$VALGRIND_PATH" = "xno")
132 dnl check for gobject-introspection
133 GOBJECT_INTROSPECTION_CHECK([1.31.1])
135 dnl check for documentation tools
136 GTK_DOC_CHECK([1.12])
137 AG_GST_PLUGIN_DOCS([1.12])
139 dnl *** checks for libraries ***
141 dnl check for libm, for sin() etc.
147 dnl check for pthreads
150 dnl *** checks for header files ***
152 AC_CHECK_HEADERS([unistd.h], HAVE_UNISTD_H=yes)
153 AM_CONDITIONAL(HAVE_UNISTD_H, test "x$HAVE_UNISTD_H" = "xyes")
155 if test "x$HAVE_UNISTD_H" != "xyes"; then
156 GST_PLUGINS_SELECTED=`echo $GST_PLUGINS_SELECTED | $SED -e s/festival//`
159 AC_CHECK_HEADERS([sys/time.h])
164 AC_CHECK_HEADERS([pthread.h], HAVE_PTHREAD_H=yes)
165 AM_CONDITIONAL(HAVE_PTHREAD_H, test "x$HAVE_PTHREAD_H" = "xyes")
167 dnl *** checks for types/defines ***
169 dnl *** checks for structures ***
171 dnl *** checks for compiler characteristics ***
173 dnl *** checks for library functions ***
174 AC_CHECK_FUNCS([gmtime_r pipe2])
176 dnl *** checks for headers ***
177 AC_CHECK_HEADERS([sys/utsname.h])
179 dnl *** checks for dependency libraries ***
181 dnl *** checks for socket and nsl libraries ***
182 AC_CHECK_FUNC(socket,,[AC_CHECK_LIB(socket,socket)])
183 AC_CHECK_FUNC(gethostbyname,,[AC_CHECK_LIB(nsl,gethostbyname)])
187 AG_GST_GLIB_CHECK([$GLIB_REQ])
189 dnl checks for gstreamer
190 dnl uninstalled is selected preferentially -- see pkg-config(1)
191 AG_GST_CHECK_GST($GST_API_VERSION, [$GST_REQ], yes)
192 AG_GST_CHECK_GST_BASE($GST_API_VERSION, [$GST_REQ], yes)
193 AG_GST_CHECK_GST_CHECK($GST_API_VERSION, [$GST_REQ], no)
194 AG_GST_CHECK_GST_CONTROLLER($GST_API_VERSION, [$GST_REQ], yes)
195 AG_GST_CHECK_GST_NET($GST_API_VERSION, [$GST_REQ], yes)
196 AG_GST_PKG_CHECK_MODULES(GST_VIDEO, gstreamer-video-[$GST_API_VERSION], [$GST_REQ], yes)
197 AG_GST_PKG_CHECK_MODULES(GST_AUDIO, gstreamer-audio-[$GST_API_VERSION], [$GST_REQ], yes)
198 AG_GST_PKG_CHECK_MODULES(GST_PBUTILS, gstreamer-pbutils-[$GST_API_VERSION], [$GST_REQ], yes)
199 AG_GST_PKG_CHECK_MODULES(GST_GL, gstreamer-gl-[$GST_API_VERSION], [$GST_REQ], no)
201 if test "x$HAVE_GST_GL" = "xyes"; then
203 AC_MSG_CHECKING([GStreamer OpenGL window systems ...])
204 GST_GL_WINSYS=`$PKG_CONFIG --variable=gl_winsys gstreamer-gl-1.0`
205 AC_MSG_RESULT([$GST_GL_WINSYS])
206 GST_GL_HAVE_WINDOW_X11=""
207 GST_GL_HAVE_WINDOW_WAYLAND=""
208 GST_GL_HAVE_WINDOW_ANDROID=""
209 GST_GL_HAVE_WINDOW_COCOA=""
210 GST_GL_HAVE_WINDOW_EAGL=""
211 case "$GST_GL_WINSYS" in *x11*) GST_GL_HAVE_WINDOW_X11="1" ;; esac
212 case "$GST_GL_WINSYS" in *wayland*) GST_GL_HAVE_WINDOW_WAYLAND="1" ;; esac
213 case "$GST_GL_WINSYS" in *android*) GST_GL_HAVE_WINDOW_ANDROID="1" ;; esac
214 case "$GST_GL_WINSYS" in *cocoa*) GST_GL_HAVE_WINDOW_COCOA="1" ;; esac
215 case "$GST_GL_WINSYS" in *eagl*) GST_GL_HAVE_WINDOW_EAGL="1" ;; esac
217 AC_MSG_CHECKING([GStreamer OpenGL platforms ...])
218 GST_GL_PLATFORMS=`$PKG_CONFIG --variable=gl_platforms gstreamer-gl-1.0`
219 AC_MSG_RESULT([$GST_GL_PLATFORMS])
220 GST_GL_HAVE_PLATFORM_GLX=""
221 GST_GL_HAVE_PLATFORM_EGL=""
222 GST_GL_HAVE_PLATFORM_CGL=""
223 GST_GL_HAVE_PLATFORM_EAGL=""
224 case "$GST_GL_PLATFORMS" in *glx*) GST_GL_HAVE_PLATFORM_GLX="1" ;; esac
225 case "$GST_GL_PLATFORMS" in *egl*) GST_GL_HAVE_PLATFORM_EGL="1" ;; esac
226 case "$GST_GL_PLATFORMS" in *cgl*) GST_GL_HAVE_PLATFORM_CGL="1" ;; esac
227 case "$GST_GL_PLATFORMS" in *eagl*) GST_GL_HAVE_PLATFORM_EAGL="1" ;; esac
229 AC_MSG_CHECKING([GStreamer OpenGL apis ...])
230 GST_GL_APIS=`$PKG_CONFIG --variable=gl_apis gstreamer-gl-1.0`
231 AC_MSG_RESULT([$GST_GL_APIS])
232 GST_GL_HAVE_API_GLES2=""
233 GST_GL_HAVE_API_GL=""
234 case "$GST_GL_APIS" in *gles2*) GST_GL_HAVE_API_GLES2="1" ;; esac
235 case "$GST_GL_APIS" in "gl"|"gl "*|*" gl"|*" gl "*) GST_GL_HAVE_API_GL="1" ;; esac
238 AM_CONDITIONAL(HAVE_GST_CHECK, test "x$HAVE_GST_CHECK" = "xyes")
240 AG_GST_CHECK_GST_PLUGINS_BASE($GST_API_VERSION, [$GSTPB_REQ], yes)
242 dnl check for uninstalled plugin directories for unit tests
243 AG_GST_CHECK_UNINSTALLED_SETUP([
244 AG_GST_CHECK_GST_PLUGINS_GOOD($GST_API_VERSION, [0.11.0])
245 AG_GST_CHECK_GST_PLUGINS_UGLY($GST_API_VERSION, [0.11.0])
246 AG_GST_CHECK_GST_PLUGINS_LIBAV($GST_API_VERSION, [0.11.0])
249 dnl Check for documentation xrefs
250 GLIB_PREFIX="`$PKG_CONFIG --variable=prefix glib-2.0`"
251 GST_PREFIX="`$PKG_CONFIG --variable=prefix gstreamer-$GST_API_VERSION`"
252 GSTPB_PREFIX="`$PKG_CONFIG --variable=prefix gstreamer-plugins-base-$GST_API_VERSION`"
253 AC_SUBST(GLIB_PREFIX)
255 AC_SUBST(GSTPB_PREFIX)
257 dnl GTK is optional and used in examples
261 if test "x$BUILD_EXAMPLES" = "xyes"; then
262 AC_MSG_CHECKING([which gtk+ version to compile examples against (optional)])
264 AS_HELP_STRING([--with-gtk=3.0|2.0],[which gtk+ version to compile against (default: 2.0)]),
266 2.0) GTK_REQ=$GTK2_REQ ;;
267 3.0) GTK_REQ=$GTK3_REQ ;;
268 *) AC_MSG_ERROR([invalid gtk+ version specified]);;
272 AC_MSG_RESULT([$with_gtk (>= $GTK_REQ)])
273 PKG_CHECK_MODULES(GTK, gtk+-x11-$with_gtk >= $GTK_REQ, HAVE_GTK=yes, HAVE_GTK=no)
277 AM_CONDITIONAL(HAVE_GTK, test "x$HAVE_GTK" = "xyes")
279 dnl Check for -Bsymbolic-functions linker flag used to avoid
280 dnl intra-library PLT jumps, if available.
281 AC_ARG_ENABLE(Bsymbolic,
282 [AS_HELP_STRING([--disable-Bsymbolic],[avoid linking with -Bsymbolic])],,
283 [SAVED_LDFLAGS="${LDFLAGS}" SAVED_LIBS="${LIBS}"
284 AC_MSG_CHECKING([for -Bsymbolic-functions linker flag])
285 LDFLAGS=-Wl,-Bsymbolic-functions
287 AC_TRY_LINK([], [return 0],
289 enable_Bsymbolic=yes,
292 LDFLAGS="${SAVED_LDFLAGS}" LIBS="${SAVED_LIBS}"])
294 dnl *** set variables based on configure arguments ***
296 dnl GTK is optional and used in examples
298 if test "x$BUILD_EXAMPLES" = "xyes"; then
299 PKG_CHECK_MODULES(GTK3, gtk+-3.0 >= 3.4, HAVE_GTK3=yes, HAVE_GTK3=no)
300 if test "x$HAVE_GTK3" = "xyes"; then
302 GTK_VERSION=`$PKG_CONFIG --variable=gtk_binary_version gtk+-3.0`
303 AC_SUBST(GTK_VERSION)
304 GTK_PREFIX=`$PKG_CONFIG --variable=prefix gdk-pixbuf-2.0`
305 AC_SUBST(GTK_BASE_DIR)
309 AC_SUBST(GTK3_CFLAGS)
311 AM_CONDITIONAL(HAVE_GTK3, test "x$HAVE_GTK3" = "xyes")
313 dnl x11 is optional for librfb
315 PKG_CHECK_MODULES(X11, x11, HAVE_X11=yes, HAVE_X11=no)
319 AM_CONDITIONAL(HAVE_X11, test "x$HAVE_X11" = "xyes")
320 if test "x$HAVE_X11" = "xyes"; then
321 AC_DEFINE(HAVE_X11, 1, [Define if you have X11 library])
324 dnl exif (used on jifmux tests) ****
325 PKG_CHECK_MODULES(EXIF, libexif >= 0.6.16, HAVE_EXIF="yes", HAVE_EXIF="no")
327 AC_SUBST(EXIF_CFLAGS)
328 AM_CONDITIONAL(USE_EXIF, test "x$HAVE_EXIF" = "xyes")
330 AG_GST_CHECK_FEATURE(IQA, [iqa], iqa , [
331 PKG_CHECK_MODULES(DSSIM, dssim, [
339 if test "x$HAVE_DSSIM" = "xyes"; then
340 AC_DEFINE(HAVE_DSSIM, 1, [Define if you have dssim library])
343 AC_SUBST(DSSIM_CFLAGS)
345 AM_CONDITIONAL(HAVE_DSSIM, test "x$HAVE_DSSIM" = "xyes")
350 dnl set license and copyright notice
352 AC_DEFINE_UNQUOTED(GST_LICENSE, "$GST_LICENSE", [GStreamer license])
353 AC_SUBST(GST_LICENSE)
355 dnl define LIBDIR so we can inform people where we live
356 AS_AC_EXPAND(LIBDIR, $libdir)
357 AC_DEFINE_UNQUOTED(LIBDIR, "$LIBDIR", [library dir])
359 dnl set location of plugin directory
362 dnl set release date/time
363 AG_GST_SET_PACKAGE_RELEASE_DATETIME_WITH_NANO([$PACKAGE_VERSION_NANO],
364 ["${srcdir}/gst-plugins-bad.doap"],
365 [$PACKAGE_VERSION_MAJOR.$PACKAGE_VERSION_MINOR.$PACKAGE_VERSION_MICRO])
367 dnl If only building static libraries, define GST_STATIC_COMPILATION. This is
368 dnl needed only on Windows, but it doesn't hurt to have it everywhere.
369 if test x$enable_static = xyes -a x$enable_shared = xno; then
370 GST_STATIC_CFLAGS="-DGST_STATIC_COMPILATION"
373 AC_ARG_WITH([player-tests],
374 AS_HELP_STRING([--with-player-tests],[Enable GstPlayer tests that need network access (default: no)]))
375 if test x$with_player_tests = xyes; then
376 AC_PATH_PROG([WGET], [wget], no)
377 if test x$WGET = xno; then
378 AC_MSG_WARN([wget required for GstPlayer tests but not found - disabling])
382 AM_CONDITIONAL(WITH_GST_PLAYER_TESTS, test "x$with_player_tests" = "xyes")
384 # set by AG_GST_PARSE_SUBSYSTEM_DISABLES above
385 dnl make sure it doesn't complain about unused variables if debugging is disabled
387 AG_GST_CHECK_GST_DEBUG_DISABLED([NO_WARNINGS="-Wno-unused"], [NO_WARNINGS=""])
389 dnl define an ERROR_CFLAGS Makefile variable
390 dnl -Waggregate-return - libexif returns aggregates
391 dnl -Wundef - Windows headers check _MSC_VER unconditionally
392 AG_GST_SET_ERROR_CFLAGS($FATAL_WARNINGS, [
393 -Wmissing-declarations -Wmissing-prototypes -Wredundant-decls
394 -Wwrite-strings -Wformat-security -Wold-style-definition
395 -Winit-self -Wmissing-include-dirs -Waddress -Wno-multichar
396 -Wnested-externs $NO_WARNINGS])
398 dnl define an ERROR_CXXFLAGS Makefile variable
399 AG_GST_SET_ERROR_CXXFLAGS($FATAL_WARNINGS, [
400 -Wmissing-declarations -Wredundant-decls
401 -Wwrite-strings -Wformat-nonliteral -Wformat-security
402 -Winit-self -Wmissing-include-dirs -Waddress -Wno-multichar $NO_WARNINGS])
404 dnl define an ERROR_OBJCFLAGS Makefile variable
405 AG_GST_SET_ERROR_OBJCFLAGS($FATAL_WARNINGS, [
406 -Wmissing-declarations -Wredundant-decls
407 -Wwrite-strings -Wformat-nonliteral -Wformat-security
408 -Winit-self -Wmissing-include-dirs -Wno-multichar $NO_WARNINGS])
410 dnl define correct level for debugging messages
411 AG_GST_SET_LEVEL_DEFAULT($GST_GIT)
414 AG_GST_DEFAULT_ELEMENTS
416 dnl *** plug-ins to include ***
418 dnl these are all the gst plug-ins, compilable without additional libs
419 AG_GST_CHECK_PLUGIN(accurip)
420 AG_GST_CHECK_PLUGIN(adpcmdec)
421 AG_GST_CHECK_PLUGIN(adpcmenc)
422 AG_GST_CHECK_PLUGIN(aiff)
423 AG_GST_CHECK_PLUGIN(videoframe_audiolevel)
424 AG_GST_CHECK_PLUGIN(asfmux)
425 AG_GST_CHECK_PLUGIN(audiobuffersplit)
426 AG_GST_CHECK_PLUGIN(audiofxbad)
427 AG_GST_CHECK_PLUGIN(audiomixer)
428 AG_GST_CHECK_PLUGIN(audiomixmatrix)
429 AG_GST_CHECK_PLUGIN(compositor)
430 AG_GST_CHECK_PLUGIN(audiovisualizers)
431 AG_GST_CHECK_PLUGIN(autoconvert)
432 AG_GST_CHECK_PLUGIN(bayer)
433 AG_GST_CHECK_PLUGIN(camerabin2)
434 AG_GST_CHECK_PLUGIN(coloreffects)
435 AG_GST_CHECK_PLUGIN(debugutils)
436 AG_GST_CHECK_PLUGIN(dvbsuboverlay)
437 AG_GST_CHECK_PLUGIN(dvdspu)
438 AG_GST_CHECK_PLUGIN(faceoverlay)
439 AG_GST_CHECK_PLUGIN(festival)
440 AG_GST_CHECK_PLUGIN(fieldanalysis)
441 AG_GST_CHECK_PLUGIN(freeverb)
442 AG_GST_CHECK_PLUGIN(frei0r)
443 AG_GST_CHECK_PLUGIN(gaudieffects)
444 AG_GST_CHECK_PLUGIN(geometrictransform)
445 AG_GST_CHECK_PLUGIN(gdp)
446 AG_GST_CHECK_PLUGIN(id3tag)
447 AG_GST_CHECK_PLUGIN(inter)
448 AG_GST_CHECK_PLUGIN(interlace)
449 AG_GST_CHECK_PLUGIN(ivfparse)
450 AG_GST_CHECK_PLUGIN(ivtc)
451 AG_GST_CHECK_PLUGIN(jp2kdecimator)
452 AG_GST_CHECK_PLUGIN(jpegformat)
453 AG_GST_CHECK_PLUGIN(librfb)
454 AG_GST_CHECK_PLUGIN(midi)
455 AG_GST_CHECK_PLUGIN(mpegdemux)
456 AG_GST_CHECK_PLUGIN(mpegtsdemux)
457 AG_GST_CHECK_PLUGIN(mpegtsmux)
458 AG_GST_CHECK_PLUGIN(mpegpsmux)
459 AG_GST_CHECK_PLUGIN(mxf)
460 AG_GST_CHECK_PLUGIN(netsim)
461 AG_GST_CHECK_PLUGIN(onvif)
462 AG_GST_CHECK_PLUGIN(pcapparse)
463 AG_GST_CHECK_PLUGIN(pnm)
464 AG_GST_CHECK_PLUGIN(proxy)
465 AG_GST_CHECK_PLUGIN(rawparse)
466 AG_GST_CHECK_PLUGIN(removesilence)
467 AG_GST_CHECK_PLUGIN(sdp)
468 AG_GST_CHECK_PLUGIN(segmentclip)
469 AG_GST_CHECK_PLUGIN(siren)
470 AG_GST_CHECK_PLUGIN(smooth)
471 AG_GST_CHECK_PLUGIN(speed)
472 AG_GST_CHECK_PLUGIN(subenc)
473 AG_GST_CHECK_PLUGIN(stereo)
474 AG_GST_CHECK_PLUGIN(timecode)
475 AG_GST_CHECK_PLUGIN(videofilters)
476 AG_GST_CHECK_PLUGIN(videoparsers)
477 AG_GST_CHECK_PLUGIN(videosignal)
478 AG_GST_CHECK_PLUGIN(vmnc)
479 AG_GST_CHECK_PLUGIN(y4m)
480 AG_GST_CHECK_PLUGIN(yadif)
482 dnl *** plug-ins to exclude ***
484 AC_CHECK_HEADER(AVFoundation/AVFoundation.h, HAVE_AVFOUNDATION="yes", HAVE_AVFOUNDATION="no", [-])
485 AC_CHECK_HEADER(MobileCoreServices/MobileCoreServices.h, HAVE_IOS="yes", HAVE_IOS="no", [-])
486 AC_CHECK_HEADER(VideoToolbox/VideoToolbox.h, HAVE_VIDEOTOOLBOX="yes", HAVE_VIDEOTOOLBOX="no", [-])
488 if test "x$HAVE_VIDEOTOOLBOX" = "xyes"; then
490 LIBS="$LIBS -framework VideoToolbox"
491 AC_CHECK_FUNC(VTCompressionSessionPrepareToEncodeFrames, [
492 AC_DEFINE(HAVE_VIDEOTOOLBOX_10_9_6, 1, [Define if building with VideoToolbox >= 10.9.6])
498 AM_CONDITIONAL(HAVE_AVFOUNDATION, test "x$HAVE_AVFOUNDATION" = "xyes")
499 if test "x$HAVE_AVFOUNDATION" = "xyes"; then
500 AC_DEFINE(HAVE_AVFOUNDATION, 1, [Define if building with AVFoundation])
503 AM_CONDITIONAL(HAVE_IOS, test "x$HAVE_IOS" = "xyes")
504 if test "x$HAVE_IOS" = "xyes"; then
505 AC_DEFINE(HAVE_IOS, 1, [Define if building for Apple iOS])
508 AM_CONDITIONAL(HAVE_VIDEOTOOLBOX, test "x$HAVE_VIDEOTOOLBOX" = "xyes")
509 if test "x$HAVE_VIDEOTOOLBOX" = "xyes"; then
510 AC_DEFINE(HAVE_VIDEOTOOLBOX, 1, [Define if building with VideoToolbox])
513 dnl disable gst plugins we might not be able to build on this
514 dnl platform: (ugly but minimally invasive)
515 dnl FIXME: maybe move to sys, or make work with winsock2
516 AC_CHECK_HEADERS([sys/socket.h], HAVE_SYS_SOCKET_H=yes)
517 AC_CHECK_HEADERS([winsock2.h], HAVE_WINSOCK2_H=yes)
519 if test "x$HAVE_WINSOCK2_H" = "xyes"; then
520 WINSOCK2_LIBS="-lws2_32"
521 AC_SUBST(WINSOCK2_LIBS)
525 PKG_CHECK_MODULES(XCB, xcb >= 1.10, GST_VULKAN_HAVE_WINDOW_XCB=1, GST_VULKAN_HAVE_WINDOW_XCB=0)
526 AM_CONDITIONAL(USE_XCB, test "x$GST_VULKAN_HAVE_WINDOW_XCB" = "x1")
528 PKG_CHECK_MODULES(VULKAN_WAYLAND, wayland-client >= 1.4, GST_VULKAN_HAVE_WINDOW_WAYLAND=1, GST_VULKAN_HAVE_WINDOW_WAYLAND=0)
529 AM_CONDITIONAL(USE_WAYLAND, test "x$GST_VULKAN_HAVE_WINDOW_WAYLAND" = "x1")
530 VULKAN_CONFIG_DEFINES="
531 #define GST_VULKAN_HAVE_WINDOW_XCB $GST_VULKAN_HAVE_WINDOW_XCB
532 #define GST_VULKAN_HAVE_WINDOW_WAYLAND $GST_VULKAN_HAVE_WINDOW_WAYLAND"
534 AC_CONFIG_COMMANDS([ext/vulkan/vkconfig.h], [
535 outfile=vkconfig.h-tmp
536 cat > $outfile <<\_______EOF
539 * This is a generated file. Please modify `configure.ac'
542 #ifndef __GST_VULKAN_CONFIG_H__
543 #define __GST_VULKAN_CONFIG_H__
551 cat >>$outfile <<_______EOF
552 $vulkan_config_defines
555 cat >>$outfile <<_______EOF
559 #endif /* __GST_VULKAN_CONFIG_H__ */
563 if cmp -s $outfile ext/vulkan/vkconfig.h; then
564 AC_MSG_NOTICE([ext/vulkan/vkconfig.h is unchanged])
567 mv $outfile ext/vulkan/vkconfig.h
570 vulkan_config_defines='$VULKAN_CONFIG_DEFINES'
573 dnl *** sys plug-ins ***
576 translit(dnm, m, l) AM_CONDITIONAL(USE_DIRECTSOUND, true)
577 AG_GST_CHECK_FEATURE(DIRECTSOUND, [DirectSound], directsoundsrc, [
578 HAVE_DIRECTSOUND="no"
579 save_CFLAGS="$CFLAGS"
580 save_LDFLAGS="$LDFLAGS"
582 CFLAGS="$CFLAGS $DIRECTX_CFLAGS"
583 LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS"
584 LIBS="$LIBS -lwinmm -ldsound -ldxerr9 -luser32"
585 AC_MSG_CHECKING(for DirectSound LDFLAGS)
586 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
590 #include <mmsystem.h>
592 DXGetErrorString9 (0);
593 DirectSoundCreate(NULL, NULL, NULL);
595 [HAVE_DIRECTSOUND="yes"],
596 [HAVE_DIRECTSOUND="no"])
597 AC_MSG_RESULT($HAVE_DIRECTSOUND)
599 LDFLAGS=$save_LDFLAGS
602 if test "x$HAVE_DIRECTSOUND" = "xyes"; then
603 dnl this is much more than we want
604 DIRECTSOUND_LIBS="-lwinmm -ldsound -ldxerr9 -luser32"
605 AC_SUBST(DIRECTX_CFLAGS)
606 AC_SUBST(DIRECTX_LDFLAGS)
607 AC_SUBST(DIRECTSOUND_LIBS)
609 AC_SUBST(HAVE_DIRECTSOUND)
613 translit(dnm, m, l) AM_CONDITIONAL(USE_WASAPI, true)
614 AG_GST_CHECK_FEATURE(WASAPI, [WASAPI plug-in], wasapi, [
616 save_CFLAGS="$CFLAGS"
617 save_LDFLAGS="$LDFLAGS"
619 CFLAGS="$CFLAGS $DIRECTX_CFLAGS"
620 LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS"
621 LIBS="$LIBS -lole32 -lwinmm -lksuser"
622 AC_MSG_CHECKING(for WASAPI LDFLAGS)
623 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
626 #include <mmsystem.h>
627 #include <mmdeviceapi.h>
633 hr = CoInitialize(NULL);
635 printf("CoInitialize failed: hr = 0x%08x", hr);
640 // result = do_everything(argc, argv);
648 AC_MSG_RESULT($HAVE_WASAPI)
650 LDFLAGS=$save_LDFLAGS
653 if test "x$HAVE_WASAPI" = "xyes"; then
654 WASAPI_LIBS="-lole32 -lwinmm -lksuser"
655 AC_SUBST(WASAPI_LIBS)
657 AC_SUBST(HAVE_WASAPI)
661 translit(dnm, m, l) AM_CONDITIONAL(USE_DIRECT3D, true)
662 AG_GST_CHECK_FEATURE(DIRECT3D, [Direct3D plug-in], direct3dsink, [
664 save_CFLAGS="$CFLAGS"
665 save_LDFLAGS="$LDFLAGS"
667 CFLAGS="$CFLAGS $DIRECTX_CFLAGS"
668 LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS"
669 LIBS="$LIBS -ld3d9 -lgdi32"
670 AC_MSG_CHECKING(for Direct3D LDFLAGS)
671 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
675 Direct3DCreate9(D3D_SDK_VERSION);
677 [HAVE_DIRECT3D="yes"],
678 [HAVE_DIRECT3D="no"])
679 AC_MSG_RESULT($HAVE_DIRECT3D)
681 LDFLAGS=$save_LDFLAGS
684 if test "x$HAVE_DIRECT3D" = "xyes"; then
685 DIRECT3D_LIBS="-ld3d9 -lgdi32"
686 AC_SUBST(DIRECT3D_LIBS)
688 AC_SUBST(HAVE_DIRECT3D)
692 translit(dnm, m, l) AM_CONDITIONAL(USE_WINSCREENCAP, true)
693 AG_GST_CHECK_FEATURE(WINSCREENCAP, [winscreencap plug-in], winscreencap, [
694 HAVE_WINSCREENCAP="no"
695 save_CFLAGS="$CFLAGS"
696 save_LDFLAGS="$LDFLAGS"
698 CFLAGS="$CFLAGS $DIRECTX_CFLAGS"
699 LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS"
700 LIBS="$LIBS -ld3d9 -lgdi32"
701 AC_MSG_CHECKING(for Direct3D LDFLAGS)
702 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
706 Direct3DCreate9(D3D_SDK_VERSION);
708 [HAVE_WINSCREENCAP="yes"],
709 [HAVE_WINSCREENCAP="no"])
710 AC_MSG_RESULT($HAVE_WINSCREENCAP)
712 LDFLAGS=$save_LDFLAGS
715 if test "x$HAVE_WINSCREENCAP" = "xyes"; then
716 WINSCREENCAP_LIBS="-ld3d9 -lgdi32"
717 AC_SUBST(WINSCREENCAP_LIBS)
719 AC_SUBST(HAVE_WINSCREENCAP)
723 translit(dnm, m, l) AM_CONDITIONAL(USE_WINKS, true)
724 AG_GST_CHECK_FEATURE(WINKS, [Winks plug-in], winks, [
726 save_CFLAGS="$CFLAGS"
727 save_LDFLAGS="$LDFLAGS"
729 CFLAGS="$CFLAGS $DIRECTX_CFLAGS"
730 LDFLAGS="$LDFLAGS $DIRECTX_LDFLAGS"
731 LIBS="$LIBS -lole32 -luuid -lstrmiids"
732 AC_MSG_CHECKING(for Winks LDFLAGS)
733 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
739 IGraphBuilder *pGraph = NULL;
740 HRESULT hr = CoInitialize(NULL);
741 hr = CoCreateInstance(&CLSID_FilterGraph, NULL, CLSCTX_INPROC_SERVER,
742 &IID_IGraphBuilder, (void **)&pGraph);
749 AC_MSG_RESULT($HAVE_WINKS)
751 LDFLAGS=$save_LDFLAGS
754 if test "x$HAVE_WINKS" = "xyes"; then
755 dnl this is much more than we want
756 WINKS_LIBS="-ldxguid -lole32 -luuid -lstrmiids -lksuser -lsetupapi"
757 AC_SUBST(DIRECTX_CFLAGS)
758 AC_SUBST(DIRECTX_LDFLAGS)
764 dnl *** Android Media ***
765 translit(dnm, m, l) AM_CONDITIONAL(USE_ANDROID_MEDIA, true)
766 HAVE_ANDROID_MEDIA="no"
767 AG_GST_CHECK_FEATURE(ANDROID_MEDIA, [Android Media], androidmedia, [
770 AC_CHECK_HEADER(jni.h, HAVE_ANDROID_MEDIA="yes", HAVE_ANDROID_MEDIA="no")
773 HAVE_ANDROID_MEDIA="no"
778 dnl *** AppleMedia (OS X and iOS) ***
779 translit(dnm, m, l) AM_CONDITIONAL(USE_APPLE_MEDIA, true)
780 HAVE_APPLE_MEDIA="no"
781 dnl SystemConfiguration.h is common to OS X and iOS, so we check for that
782 AG_GST_CHECK_FEATURE(APPLE_MEDIA, [Apple video], applemedia, [
783 AC_CHECK_HEADER(SystemConfiguration/SystemConfiguration.h, HAVE_APPLE_MEDIA="yes", HAVE_APPLE_MEDIA="no")
784 dnl OSX 10.7 and earlier lack VideoToolbox/VideoToolbox.h
785 if test "x$HAVE_IOS" = "xno"; then
786 AC_CHECK_HEADER(VideoToolbox/VideoToolbox.h,, HAVE_APPLE_MEDIA="no")
790 dnl in case header SystemConfiguration/SystemConfiguration.h is found on other platforms
795 HAVE_APPLE_MEDIA="no"
800 translit(dnm, m, l) AM_CONDITIONAL(USE_BLUEZ, true)
801 AG_GST_CHECK_FEATURE(BLUEZ, [Bluez], bluez, [
802 PKG_CHECK_MODULES([BLUEZ5], [bluez >= 5.0], [
803 PKG_CHECK_MODULES([GIO_UNIX], gio-unix-2.0 > 2.24, [
804 AC_CHECK_PROG([GDBUS_CODEGEN],[gdbus-codegen],[gdbus-codegen])
806 AC_DEFINE(HAVE_BLUEZ5,[1],[Bluez5 detected])
815 dnl *** OS/X AVCVideoServices ***
816 translit(dnm, m, l) AM_CONDITIONAL(USE_AVC, true)
818 AG_GST_CHECK_FEATURE(AVC, [AVC Video Services], avcsrc, [
820 save_CPPFLAGS="$CPPFLAGS"
821 CPPFLAGS="$CPPFLAGS -framework AVCVideoServices -framework CoreFoundation"
823 LIBS="$LIBS -framework AVCVideoServices -framework CoreFoundation"
824 AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[]])],[HAVE_AVC=yes],[HAVE_AVC=no])
826 CPPFLAGS=$save_CPPFLAGS
829 dnl in case header AVCVideoServices/AVCVideoServices.h is found on other platforms
838 dnl check for shm_open (for shm plugin)
839 translit(dnm, m, l) AM_CONDITIONAL(USE_SHM, true)
840 AG_GST_CHECK_FEATURE(SHM, [POSIX shared memory source and sink], shm, [
841 if test "x$HAVE_SYS_SOCKET_H" = "xyes"; then
843 *-darwin* | *-macos10*)
844 AC_DEFINE(HAVE_OSX,[1],[Apple Mac OS X operating system detected])
851 AC_CHECK_LIB([rt], [shm_open],
852 AC_CHECK_DECL([MSG_NOSIGNAL], HAVE_SHM=yes, HAVE_SHM=no, [
853 #include <sys/socket.h>
856 AC_SUBST(SHM_LIBS, "-lrt")
864 dnl check for unix sockets (ipcpipeline plugin)
865 translit(dnm, m, l) AM_CONDITIONAL(USE_IPCPIPELINE, true)
866 AG_GST_CHECK_FEATURE(IPCPIPELINE, [Unix sockets], ipcpipeline, [
867 if test "x$HAVE_SYS_SOCKET_H" = "xyes"; then
868 AC_CHECK_FUNC(pipe, [
869 AC_CHECK_FUNC(socketpair, [HAVE_IPCPIPELINE=yes], [HAVE_IPCPIPELINE=no])
878 dnl check for Video CD
879 translit(dnm, m, l) AM_CONDITIONAL(USE_VCD, true)
880 AG_GST_CHECK_FEATURE(VCD, [Video CD], vcdsrc, [
881 AC_CHECK_HEADER(linux/cdrom.h, HAVE_VCD="yes", HAVE_VCD="no")
884 dnl check for OpenSL ES
885 translit(dnm, m, l) AM_CONDITIONAL(USE_OPENSLES, true)
886 AG_GST_CHECK_FEATURE(OPENSLES, [OpenSL ES], opensl, [
887 AC_CHECK_HEADER(SLES/OpenSLES.h, HAVE_OPENSLES="yes", HAVE_OPENSLES="no")
891 translit(dnm, m, l) AM_CONDITIONAL(USE_UVCH264, true)
892 AG_GST_CHECK_FEATURE(UVCH264, [UVC H264], uvch264, [
893 AC_CHECK_HEADER(linux/uvcvideo.h, HAVE_UVCVIDEO_H=yes, HAVE_UVCVIDEO_H=no)
894 PKG_CHECK_MODULES(G_UDEV, gudev-1.0 , [
895 AC_DEFINE([HAVE_GUDEV], 1, [Define if gudev is installed])
898 PKG_CHECK_MODULES(LIBUSB, libusb-1.0 , [
899 AC_DEFINE([HAVE_LIBUSB], 1, [Define if libusb 1.x is installed])
902 if test "x$HAVE_UVCVIDEO_H" = "xyes" && \
903 test "x$HAVE_GUDEV" = "xyes" && \
904 test "x$HAVE_LIBUSB" = "xyes"; then
910 AC_SUBST(LIBUDEV_CFLAGS)
911 AC_SUBST(LIBUDEV_LIBS)
912 AC_SUBST(LIBUSB_CFLAGS)
913 AC_SUBST(LIBUSB_LIBS)
916 translit(dnm, m, l) AM_CONDITIONAL(USE_CUDA, true)
917 AG_GST_CHECK_FEATURE(CUDA, [NVIDIA CUDA API],, [
918 AC_ARG_WITH([cuda-prefix],
919 AS_HELP_STRING([--with-cuda-prefix],
920 [Use the provided prefix for detecting the cuda installation]),
921 [AS_IF([test "x$with_cuda_prefix" != "x"],
922 [CUDA_PREFIX="$with_cuda_prefix"])],
926 if test "x$CUDA_PREFIX" != "x"; then
927 dnl only override if not already set
928 if test "x$CUDA_CFLAGS" = "x" -a "x$CUDA_LIBS" = "x"; then
929 dnl this is an educated guess, user can always override these
930 CUDA_CFLAGS="-I$CUDA_PREFIX/include"
931 CUDA_LIBS="-L$CUDA_PREFIX/lib -L$CUDA_PREFIX/lib64 -L$CUDA_PREFIX/lib/stubs -L$CUDA_PREFIX/lib64/stubs -lcuda -lcudart"
934 PKG_CHECK_MODULES([CUDA], [cuda-8.0 cudart-8.0],, [
935 PKG_CHECK_MODULES([CUDA], [cuda-7.5 cudart-7.5],, [
936 PKG_CHECK_MODULES([CUDA], [cuda-7.0 cudart-7.0],, [
937 PKG_CHECK_MODULES([CUDA], [cuda-6.5 cudart-6.5],, [
938 AC_MSG_WARN([Could not find cuda headers/libraries])])])])])
943 save_CPPFLAGS="$CPPFLAGS"
944 CPPFLAGS="$CUDA_CFLAGS $save_CPPFLAGS "
945 AC_CHECK_HEADER([cuda.h], [HAVE_CUDA_H=yes],
946 AC_MSG_WARN([Could not find cuda.h]))
947 AC_CHECK_HEADER([cuda_runtime_api.h], [HAVE_CUDART_H=yes],
948 AC_MSG_WARN([Could not find cuda_runtime_api.h]))
949 CPPFLAGS=$save_CPPFLAGS
951 dnl libcuda and libcudart libraries
953 LIBS="$CUDA_LIBS $save_LIBS"
955 AC_CHECK_LIB(cudart,cudaGetErrorString,[HAVE_CUDART_LIB="yes"], [
956 AC_MSG_WARN([Could not find cudart library])])
958 AC_CHECK_LIB(cuda,cuInit,[HAVE_CUDA_LIB="yes"], [
959 AC_MSG_WARN([Could not find cuda library])])
964 translit(dnm, m, l) AM_CONDITIONAL(USE_NVDEC, true)
965 AG_GST_CHECK_FEATURE(NVDEC, [nvdec], nvdec, [
967 save_CPPFLAGS="$CPPFLAGS"
968 CPPFLAGS="$CUDA_CFLAGS $save_CPPFLAGS"
969 AC_CHECK_HEADER([nvcuvid.h], [HAVE_NVCUVID_H=yes],
970 AC_MSG_WARN([Could not find nvcuvid.h]))
971 CPPFLAGS=$save_CPPFLAGS
975 LIBS="$CUDA_LIBS $save_LIBS"
976 AC_CHECK_LIB(nvcuvid, cuvidCtxLock, [HAVE_NVCUVID=yes],
977 AC_MSG_WARN([Could not find library nvcuvid]))
980 if test "x$HAVE_NVCUVID_H" = "xyes" -a "x$HAVE_NVCUVID" = "xyes"; then
988 translit(dnm, m, l) AM_CONDITIONAL(USE_NVENC, true)
989 AG_GST_CHECK_FEATURE(NVENC, [NVIDIA Encode API], nvenc, [
990 dnl nvEncodeAPI.h header
991 HAVE_NVENCODEAPI_H=no
992 AC_ARG_VAR(NVENCODE_CFLAGS, [C compiler flags for NvEncodeAPI.h])
993 save_CPPFLAGS="$CPPFLAGS"
994 CPPFLAGS="$NVENCODE_CFLAGS $save_CPPFLAGS"
995 AC_CHECK_HEADER([nvEncodeAPI.h], [
996 AC_PREPROC_IFELSE([AC_LANG_SOURCE([[#include <nvEncodeAPI.h>
997 #if NVENCAPI_MAJOR_VERSION < 5
998 #error "Need nvEncodeAPI.h >= 5.0"
1001 HAVE_NVENCODEAPI_H=yes
1003 AC_MSG_WARN([nvEncodeAPI.h must be >= 5.0])
1006 AC_MSG_WARN([Could not find nvEncodeAPI.h]))
1007 AC_SUBST(NVENCODE_CFLAGS)
1008 CPPFLAGS="$save_CPPFLAGS"
1010 dnl libnvnidia-encode library
1011 HAVE_NVENCODE_LIB=no
1012 AC_ARG_VAR(NVENCODE_LIBS, [linker flags for nvidia-encode])
1014 LIBS="$NVENCODE_LIBS $saved_LIBS"
1015 AC_CHECK_LIB(nvidia-encode, NvEncodeAPICreateInstance, [HAVE_NVENCODE_LIB="yes"],
1016 AC_MSG_WARN([Could not find library nvidia-encode]))
1017 NVENCODE_LIBS="$NVENCODE_LIBS -lnvidia-encode"
1018 AC_SUBST(NVENCODE_LIBS)
1022 if test "x$HAVE_CUDA_H" = "xyes" \
1023 -a "x$HAVE_CUDART_H" = "xyes" \
1024 -a "x$HAVE_CUDA_LIB" = "xyes" \
1025 -a "x$HAVE_CUDART_LIB" = "xyes" \
1026 -a "x$HAVE_NVENCODEAPI_H" = "xyes" \
1027 -a "x$HAVE_NVENCODE_LIB" = "xyes"; then
1029 if test x"$USE_OPENGL" = x"yes"; then
1030 dnl cuda-gl interop header
1031 save_CPPFLAGS="$CPPFLAGS"
1032 CPPFLAGS="$save_CPPFLAGS $CUDA_CFLAGS"
1033 AC_CHECK_HEADER([cuda_gl_interop.h], [
1034 USE_NVENC_GST_GL="yes"
1035 AC_DEFINE(HAVE_NVENC_GST_GL, [1] , [NVENC GStreamer OpenGL support available])
1037 CPPFLAGS="$save_CPPFLAGS"
1043 AM_CONDITIONAL(USE_NVENC_GST_GL, test "x$USE_NVENC_GST_GL" = "xyes")
1045 dnl check for tinyalsa
1046 translit(dnm, m, l) AM_CONDITIONAL(USE_TINYALSA, true)
1047 AG_GST_CHECK_FEATURE(TINYALSA, [tinyalsa], tinyalsa, [
1048 AC_CHECK_HEADER(tinyalsa/asoundlib.h, HAVE_TINYALSA="yes", HAVE_TINYALSA="no")
1051 dnl check for intel mediasdk
1052 translit(dnm, m, l) AM_CONDITIONAL(USE_MSDK, true)
1053 AG_GST_CHECK_FEATURE(MSDK, [Intel MediaSDK], msdk, [
1054 PKG_CHECK_MODULES(LIBMFX, libmfx,
1056 AC_DEFINE(HAVE_LIBMFX, 1, [Define if mfx_dispatcher is available])
1059 AC_ARG_WITH([msdk-prefix],
1060 AS_HELP_STRING([--with-msdk-prefix],
1061 [Use the provided prefix for detecting the Intel MediaSDK]),
1062 [AS_IF([test "x$with_msdk_prefix" != "x"],
1063 [MSDK_PREFIX="$with_msdk_prefix"])],
1064 [AS_IF([test "x$MFX_HOME" != "x"],
1065 [MSDK_PREFIX="$MFX_HOME"],
1066 [MSDK_PREFIX="/opt/intel/media"])])
1067 MSDK_CFLAGS="-I$MSDK_PREFIX/include"
1068 MSDK_LIBS="-L$MSDK_PREFIX/lib/lin_x64 -lmfx -ldl"
1069 AC_SUBST(MSDK_CFLAGS)
1072 save_CPPFLAGS="$CPPFLAGS"
1073 CPPFLAGS="$MSDK_CFLAGS $save_CPPFLAGS"
1074 AC_CHECK_HEADER(mfxdefs.h, HAVE_MFXDEFS_H="yes", HAVE_MFXDEFS_H="no")
1075 CPPFLAGS="$save_CPPFLAGS"
1078 LIBS="$MSDK_LIBS $LIBS"
1080 AC_CHECK_LIB(mfx,MFXInit,HAVE_MFX_LIB="yes",HAVE_MFX_LIB="no")
1084 if test "x$HAVE_MFXDEFS_H" = "xyes" \
1085 -a "x$HAVE_MFX_LIB" = "xyes"; then
1092 PKG_CHECK_MODULES(LIBVA_DRM, libva-drm, HAVE_LIBVA_DRM="yes", HAVE_LIBVA_DRM="no")
1094 if test "x$HAVE_MSDK" = "xyes" \
1095 -a "x$HAVE_LIBVA_DRM" = "xyes"; then
1101 AM_CONDITIONAL(USE_MSDK_LIBVA,
1102 test "x$HAVE_MSDK" = "xyes" -a "x$HAVE_LIBVA_DRM" = "xyes")
1104 dnl *** ext plug-ins ***
1105 dnl keep this list sorted alphabetically !
1107 if test "x$BUILD_EXTERNAL" = "xyes"; then
1109 dnl *** assrender ***
1110 translit(dnm, m, l) AM_CONDITIONAL(USE_ASSRENDER, true)
1111 AG_GST_CHECK_FEATURE(ASSRENDER, [ASS/SSA renderer], assrender, [
1112 PKG_CHECK_MODULES(ASSRENDER, libass >= 0.10.2, [
1113 HAVE_ASSRENDER="yes" ], [
1117 AC_SUBST(ASSRENDER_CFLAGS)
1118 AC_SUBST(ASSRENDER_LIBS)
1121 translit(dnm, m, l) AM_CONDITIONAL(USE_AOM, true)
1122 AG_GST_CHECK_FEATURE(AOM, [AV1 encoder/decoder], aom, [
1123 AG_GST_PKG_CHECK_MODULES(AOM, aom)
1126 dnl *** vo-amrwbenc ***
1127 translit(dnm, m, l) AM_CONDITIONAL(USE_VOAMRWBENC, true)
1128 AG_GST_CHECK_FEATURE(VOAMRWBENC, [vo-amrwbenc library], vo-amrwbenc, [
1129 AG_GST_PKG_CHECK_MODULES(VOAMRWBENC, vo-amrwbenc >= 0.1.0)
1132 dnl *** vo-aacenc ***
1133 translit(dnm, m, l) AM_CONDITIONAL(USE_VOAACENC, true)
1134 AG_GST_CHECK_FEATURE(VOAACENC, [vo-aacenc library], vo-aacenc, [
1135 AG_GST_PKG_CHECK_MODULES(VOAACENC, vo-aacenc >= 0.1.0)
1139 translit(dnm, m, l) AM_CONDITIONAL(USE_BS2B, true)
1140 AG_GST_CHECK_FEATURE(BS2B, [bs2b], bs2b, [
1141 PKG_CHECK_MODULES(BS2B, libbs2b >= 3.1.0, HAVE_BS2B="yes", [
1144 AC_SUBST(BS2B_CFLAGS)
1149 translit(dnm, m, l) AM_CONDITIONAL(USE_BZ2, true)
1150 AG_GST_CHECK_FEATURE(BZ2, [bz2 library], bz2, [
1153 AC_MSG_CHECKING([for BZ2_bzlibVersion in -lbz2])
1154 AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <bzlib.h>]], [[const char *version = BZ2_bzlibVersion ();]])],[HAVE_BZ2=yes],[HAVE_BZ2=no])
1155 AC_MSG_RESULT($HAVE_BZ2)
1157 if test "x$HAVE_BZ2" = "xyes"; then
1165 #translit(dnm, m, l) AM_CONDITIONAL(USE_CAIRO, true)
1166 #AG_GST_CHECK_FEATURE(CAIRO, [cairo plug-in], cairo, [
1167 # PKG_CHECK_MODULES(CAIRO, cairo >= 1.0 glitz-glx, HAVE_CAIRO=yes, [
1170 # AC_SUBST(CAIRO_CFLAGS)
1171 # AC_SUBST(CAIRO_LIBS)
1174 dnl *** chromaprint ***
1175 translit(dnm, m, l) AM_CONDITIONAL(USE_CHROMAPRINT, true)
1176 AG_GST_CHECK_FEATURE(CHROMAPRINT, [chromaprint], chromaprint, [
1177 PKG_CHECK_MODULES(CHROMAPRINT, libchromaprint, HAVE_CHROMAPRINT="yes", [
1178 HAVE_CHROMAPRINT="no"
1180 AC_SUBST(CHROMAPRINT_CFLAGS)
1181 AC_SUBST(CHROMAPRINT_LIBS)
1185 translit(dnm, m, l) AM_CONDITIONAL(USE_CURL, true)
1186 AG_GST_CHECK_FEATURE(CURL, [Curl plugin], curl, [
1187 PKG_CHECK_MODULES(CURL, libcurl >= 7.35.0, [
1189 AC_CHECK_HEADERS([unistd.h sys/socket.h sys/types.h netinet/in.h netinet/tcp.h fcntl.h], [ ], [
1190 AC_CHECK_HEADERS([unistd.h sys/types.h winsock2.h ws2tcpip.h fcntl.h], [ ], [HAVE_CURL="no"])
1192 AC_CHECK_HEADERS([netinet/ip.h], [], [HAVE_CURL="no"],
1193 [[#ifdef HAVE_SYS_TYPES_H
1194 # include <sys/types.h>
1196 #ifdef HAVE_NETINET_IN_H
1197 # include <netinet/in.h>
1200 AC_MSG_CHECKING([for socket support needed by curlsink])
1201 AC_MSG_RESULT($HAVE_CURL)
1205 AC_SUBST(CURL_CFLAGS)
1207 PKG_CHECK_MODULES(SSH2, libssh2 >= 1.4.3, [
1209 AC_DEFINE(HAVE_SSH2, 1, [Define if libssh2 is available])
1213 AM_CONDITIONAL(USE_SSH2, test "x$HAVE_SSH2" = "xyes")
1214 AC_SUBST(SSH2_CFLAGS)
1216 ],,,[AM_CONDITIONAL(USE_SSH2, false)])
1219 translit(dnm, m, l) AM_CONDITIONAL(USE_DASH, true)
1220 AG_GST_CHECK_FEATURE(DASH, [DASH plug-in], dash, [
1221 PKG_CHECK_MODULES(LIBXML2, libxml-2.0 >= 2.8, [HAVE_LIBXML2="yes"
1222 HAVE_DASH="yes"], [HAVE_LIBXML2="no"
1224 AC_SUBST(LIBXML2_CFLAGS)
1225 AC_SUBST(LIBXML2_LIBS)
1229 translit(dnm, m, l) AM_CONDITIONAL(USE_DC1394, true)
1230 AG_GST_CHECK_FEATURE(DC1394, [libdc1394], dc1394, [
1231 PKG_CHECK_MODULES(LIBDC1394, libdc1394-2 >= 2.0.0, [
1232 if test -z "`$PKG_CONFIG --modversion libdc1394-2 | grep 2.0.0-rc`"; then
1241 AC_SUBST(LIBDC1394_CFLAGS)
1242 AC_SUBST(LIBDC1394_LIBS)
1245 dnl *** decklink ***
1246 translit(dnm, m, l) AM_CONDITIONAL(USE_DECKLINK, true)
1247 AG_GST_CHECK_FEATURE(DECKLINK, [decklink], decklink, [
1254 if test "x$HAVE_PTHREAD_H" = "xyes"; then
1255 AC_CHECK_LIB(dl, dlopen,
1259 DECKLINK_LIBS="-lpthread -ldl"
1264 if test "x$HAVE_PTHREAD_H" = "xyes"; then
1265 AC_CHECK_LIB(dl, dlopen,
1269 DECKLINK_LIBS="-lpthread -ldl"
1270 HAVE_DECKLINK_OSX=yes
1277 DECKLINK_LIBS="-lole32 -loleaut32"
1278 HAVE_DECKLINK_WIN=yes
1285 AC_SUBST(DECKLINK_CXXFLAGS)
1286 AC_SUBST(DECKLINK_LIBS)
1288 AM_CONDITIONAL(DECKLINK_OSX, test "x$HAVE_DECKLINK_OSX" = xyes)
1289 AM_CONDITIONAL(DECKLINK_WIN, test "x$HAVE_DECKLINK_WIN" = xyes)
1291 dnl **** DirectFB ****
1292 translit(dnm, m, l) AM_CONDITIONAL(USE_DIRECTFB, true)
1293 AG_GST_CHECK_FEATURE(DIRECTFB, [directfb], dfbvideosink , [
1294 PKG_CHECK_MODULES(DIRECTFB, directfb >= 0.9.24, HAVE_DIRECTFB="yes", [
1299 dnl **** Wayland ****
1300 translit(dnm, m, l) AM_CONDITIONAL(USE_WAYLAND, true)
1301 AC_PATH_PROG([wayland_scanner], [wayland-scanner])
1302 AG_GST_CHECK_FEATURE(WAYLAND, [wayland sink], wayland , [
1303 PKG_CHECK_MODULES(WAYLAND, wayland-client >= 1.4.0 libdrm >= 2.4.55 wayland-protocols >= 1.4, [
1304 if test "x$wayland_scanner" != "x"; then
1306 AC_SUBST(WAYLAND_PROTOCOLS_DATADIR, `$PKG_CONFIG --variable=pkgdatadir wayland-protocols`)
1308 AC_MSG_RESULT([wayland-scanner is required to build the wayland plugin])
1317 translit(dnm, m, l) AM_CONDITIONAL(USE_WEBP, true)
1318 AG_GST_CHECK_FEATURE(WEBP, [WebP], webp , [
1319 PKG_CHECK_MODULES(WEBP, libwebp >= 0.2.1, [
1320 HAVE_WEBP="yes" ], [ HAVE_WEBP="no"
1322 AC_SUBST(WEBP_CFLAGS)
1327 translit(dnm, m, l) AM_CONDITIONAL(USE_DAALA, true)
1328 AG_GST_CHECK_FEATURE(DAALA, [daala], daala, [
1329 if test "x$BUILD_EXPERIMENTAL" = "xyes"; then
1330 PKG_CHECK_MODULES(DAALA, daalaenc daaladec, [
1335 AC_SUBST(DAALA_CFLAGS)
1336 AC_SUBST(DAALA_LIBS)
1341 translit(dnm, m, l) AM_CONDITIONAL(USE_DTS, true)
1342 AG_GST_CHECK_FEATURE(DTS, [dts library], dtsdec, [
1344 AG_GST_CHECK_LIBHEADER(DTS, dca, dca_init, $LIBM, dca.h,
1345 DTS_LIBS="-ldca $LIBM", HAVE_DTS="no")
1346 if test $HAVE_DTS = "no"; then
1347 AG_GST_CHECK_LIBHEADER(DTS, dts_pic, dts_init, $LIBM, dts.h,
1348 [ DTS_LIBS="-ldts_pic $LIBM"
1349 AC_DEFINE(DTS_OLD, 1, [Define if an old libdts is used])
1355 dnl *** resindvd ***
1356 translit(dnm, m, l) AM_CONDITIONAL(USE_RESINDVD, true)
1357 AG_GST_CHECK_FEATURE(RESINDVD, [resindvd plugin], resindvd, [
1358 PKG_CHECK_MODULES(DVDNAV, dvdnav >= 4.1.2 dvdread >= 4.1.2, HAVE_RESINDVD="yes", [
1363 dnl **** Free AAC Encoder (FAAC) ****
1364 translit(dnm, m, l) AM_CONDITIONAL(USE_FAAC, true)
1365 AG_GST_CHECK_FEATURE(FAAC, [AAC encoder plug-in], faac, [
1366 AG_GST_CHECK_LIBHEADER(FAAC, faac, faacEncOpen, $LIBM, faac.h,
1367 FAAC_LIBS="-lfaac $LIBM")
1371 dnl **** Free AAC Decoder (FAAD2) ****
1372 translit(dnm, m, l) AM_CONDITIONAL(USE_FAAD, true)
1373 AG_GST_CHECK_FEATURE(FAAD, [FAAD2 AAC decoder plug-in], faad, [
1374 AG_GST_CHECK_LIBHEADER(FAAD, faad, NeAACDecOpen, $LIBM, neaacdec.h, [
1375 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <faad.h>]], [[
1376 #if !defined(FAAD2_VERSION) || !defined(FAAD_FMT_DOUBLE)
1378 #elif !defined(LATM)
1379 #error Not faad2 >= 2.7
1385 AC_MSG_WARN([Found libfaad, but version not recent enough. Need faad2 >= 2.7])
1395 translit(dnm, m, l) AM_CONDITIONAL(USE_FBDEV, true)
1396 AG_GST_CHECK_FEATURE(FBDEV, [linux framebuffer], fbdevsink, [
1397 if test "x$HAVE_FBDEV" != "xyes"; then
1398 AC_CHECK_HEADER([linux/fb.h], HAVE_FBDEV=yes, HAVE_FBDEV=no)
1403 translit(dnm, m, l) AM_CONDITIONAL(USE_FDK_AAC, true)
1404 AG_GST_CHECK_FEATURE(FDK_AAC, [fdkaac plugin], fdkaac, [
1405 PKG_CHECK_MODULES(FDK_AAC, fdk-aac >= 0.1.4, [
1407 HAVE_FDK_AAC_0_1_4="yes"
1408 AC_DEFINE(HAVE_FDK_AAC_0_1_4, 1, [Define if we have fdk-aac >= 0.1.4])
1410 PKG_CHECK_MODULES(FDK_AAC, fdk-aac, HAVE_FDK_AAC="yes", HAVE_FDK_AAC="no")
1415 translit(dnm, m, l) AM_CONDITIONAL(USE_FLITE, true)
1416 AG_GST_CHECK_FEATURE(FLITE, [Flite plugin], flite, [
1417 AG_GST_CHECK_LIBHEADER(FLITE, flite, flite_init, $LIBM, flite/flite.h,
1418 FLITE_LIBS="-lflite -lflite_cmu_us_kal -lflite_usenglish -lflite_cmulex $LIBM")
1420 AC_SUBST(FLITE_CFLAGS)
1421 AC_SUBST(FLITE_LIBS)
1425 translit(dnm, m, l) AM_CONDITIONAL(USE_GSM, true)
1426 AG_GST_CHECK_FEATURE(GSM, [GSM library], gsmenc gsmdec, [
1427 AG_GST_CHECK_LIBHEADER(GSM, gsm, gsm_create, , gsm.h, GSM_LIBS="-lgsm")
1428 if test $HAVE_GSM != "yes"; then
1429 AG_GST_CHECK_LIBHEADER(GSM, gsm, gsm_create, , gsm/gsm.h, GSM_LIBS="-lgsm")
1430 if test $HAVE_GSM = "yes"; then
1431 AC_DEFINE(GSM_HEADER_IN_SUBDIR, 1, [Define if GSM header in gsm/ subdir])
1437 dnl *** fluidSynth ***
1438 translit(dnm, m, l) AM_CONDITIONAL(USE_FLUIDSYNTH, true)
1439 AG_GST_CHECK_FEATURE(FLUIDSYNTH, [fluidsynth], fluidsynth, [
1440 PKG_CHECK_MODULES(FLUIDSYNTH, fluidsynth >= 1.0, HAVE_FLUIDSYNTH="yes", [
1441 HAVE_FLUIDSYNTH="no"
1446 translit(dnm, m, l) AM_CONDITIONAL(USE_KATE, true)
1447 AG_GST_CHECK_FEATURE(KATE, [Kate], kate, [
1448 PKG_CHECK_MODULES(KATE, kate >= 0.1.7, HAVE_KATE="yes", [
1451 AC_SUBST(KATE_CFLAGS)
1453 PKG_CHECK_MODULES(TIGER, tiger >= 0.3.2,
1456 AC_DEFINE(HAVE_TIGER, 1, [Define if libtiger is available])
1462 AM_CONDITIONAL(USE_TIGER, test "x$HAVE_TIGER" = "xyes")
1463 AC_SUBST(TIGER_CFLAGS)
1464 AC_SUBST(TIGER_LIBS)
1465 ],,,[AM_CONDITIONAL(USE_TIGER, false)])
1468 translit(dnm, m, l) AM_CONDITIONAL(USE_KMS, true)
1469 AG_GST_CHECK_FEATURE(KMS, [drm/kms libraries], kms, [
1470 AG_GST_PKG_CHECK_MODULES(GST_ALLOCATORS, gstreamer-allocators-1.0)
1471 PKG_CHECK_MODULES([KMS_DRM], [libdrm >= 2.4.55], HAVE_KMS=yes, HAVE_KMS=no)
1475 translit(dnm, m, l) AM_CONDITIONAL(USE_LADSPA, true)
1476 AG_GST_CHECK_FEATURE(LADSPA, [ladspa], ladspa, [
1477 AC_CHECK_HEADER(ladspa.h, HAVE_LADSPA="yes", HAVE_LADSPA="no")
1479 PKG_CHECK_MODULES(LRDF, lrdf, HAVE_LRDF=yes, HAVE_LRDF=no)
1480 if test $HAVE_LRDF = "yes"; then
1481 AC_DEFINE(HAVE_LRDF, 1, [Define if we have liblrdf])
1484 AC_SUBST(LRDF_CFLAGS)
1488 #translit(dnm, m, l) AM_CONDITIONAL(USE_LCMS2, true)
1489 AG_GST_CHECK_FEATURE(LCMS2, [LCMS colormanagement plugin], lcms2, [
1490 PKG_CHECK_MODULES(LCMS2, lcms2 >= 2.7, HAVE_LCMS2="yes", [
1493 AC_SUBST(LCMS2_LIBS)
1497 translit(dnm, m, l) AM_CONDITIONAL(USE_LV2, true)
1498 AG_GST_CHECK_FEATURE(LV2, [lv2], lv2, [
1499 PKG_CHECK_MODULES(LILV, lilv-0 >= 0.22, [
1501 HAVE_LILV_0_22="yes"
1502 AC_DEFINE(HAVE_LILV_0_22, 1, [Define if we have liblilv >= 0.22])
1504 PKG_CHECK_MODULES(LILV, lilv-0 >= 0.16, HAVE_LV2="yes", HAVE_LV2="no")
1506 AC_SUBST(LILV_CFLAGS)
1510 dnl *** libde265 ***
1511 translit(dnm, m, l) AM_CONDITIONAL(USE_LIBDE265, true)
1512 AG_GST_CHECK_FEATURE(LIBDE265, [libde265 HEVC/H.265 decoder], libde265, [
1513 PKG_CHECK_MODULES(LIBDE265, libde265 >= 0.9, HAVE_LIBDE265="yes", HAVE_LIBDE265="no")
1514 AC_SUBST(LIBDE265_CFLAGS)
1515 AC_SUBST(LIBDE265_LIBS)
1519 translit(dnm, m, l) AM_CONDITIONAL(USE_LIBMMS, true)
1520 AG_GST_CHECK_FEATURE(LIBMMS, [mms protocol library], libmms, [
1521 dnl check with pkg-config first
1522 PKG_CHECK_MODULES(LIBMMS, libmms >= 0.4, HAVE_LIBMMS="yes", [
1526 AC_SUBST(LIBMMS_LIBS)
1529 translit(dnm, m, l) AM_CONDITIONAL(USE_SRT, true)
1530 AG_GST_CHECK_FEATURE(SRT, [srt library], srt, [
1531 PKG_CHECK_MODULES(SRT, srt, HAVE_SRT="yes", HAVE_SRT=no)
1533 AC_SUBST(SRT_CFLAGS)
1537 translit(dnm, m, l) AM_CONDITIONAL(USE_SRTP, true)
1538 AG_GST_CHECK_FEATURE(SRTP, [srtp library], srtp, [
1540 AG_GST_PKG_CHECK_MODULES(SRTP, libsrtp2 >= 2.1.0)
1541 if test x"$HAVE_SRTP" = x"yes"; then
1542 AC_DEFINE([HAVE_SRTP2], 1, [Define if libsrtp2 is used])
1544 PKG_CHECK_MODULES(SRTP, libsrtp, HAVE_SRTP="yes",
1545 AG_GST_CHECK_LIBHEADER(SRTP, srtp, srtp_init, , srtp/srtp.h, SRTP_LIBS="-lsrtp")
1549 AC_SUBST(SRTP_CFLAGS)
1553 translit(dnm, m, l) AM_CONDITIONAL(USE_DTLS, true)
1554 AG_GST_CHECK_FEATURE(DTLS, [DTLS plugin], dtls, [
1555 PKG_CHECK_MODULES(DTLS, [ openssl >= 1.0.1 libcrypto ], [
1557 AC_SUBST(DTLS_CFLAGS)
1565 translit(dnm, m, l) AM_CONDITIONAL(USE_TTML, true)
1566 AG_GST_CHECK_FEATURE(TTML, [TTML plugin], ttml, [
1567 PKG_CHECK_MODULES(TTML, [ libxml-2.0 >= 2.9.2 pango cairo pangocairo ], [
1575 translit(dnm, m, l) AM_CONDITIONAL(USE_MODPLUG, true)
1576 AG_GST_CHECK_FEATURE(MODPLUG, modplug, modplug, [
1577 if test "x$HAVE_CXX" != "xyes"; then
1578 AC_MSG_WARN([Not compiling modplug plugin as it requires a C++ compiler])
1581 PKG_CHECK_MODULES(MODPLUG, libmodplug, HAVE_MODPLUG="yes", HAVE_MODPLUG="no")
1583 AC_SUBST(MODPLUG_CFLAGS)
1584 AC_SUBST(MODPLUG_LIBS)
1587 dnl *** mjpegtools version info ***
1588 dnl some may prefer older version (given quirks above)
1589 dnl hm, no version info seems available within mjpegtools headers
1590 dnl and API really moves along
1592 PKG_CHECK_EXISTS(mjpegtools >= 1.6.1.93 mjpegtools < 1.8.0, [
1593 mjpegtools_api=10601
1595 PKG_CHECK_EXISTS(mjpegtools >= 1.8.0 mjpegtools < 1.9.0, [
1596 mjpegtools_api=10800
1598 PKG_CHECK_EXISTS(mjpegtools >= 2.0.0, [
1599 mjpegtools_api=20000
1601 PKG_CHECK_MODULES(MJPEG, mjpegtools >= 1.9.0 mjpegtools < 2.0.0, [
1602 dnl logging API changed in release candidates
1603 OLD_CFLAGS="$CFLAGS"
1605 CFLAGS="$MJPEG_CFLAGS"
1606 LIBS="$LIBS $MJPEG_LIBS -lmjpegutils $LIBM $PTHREAD_LIBS"
1607 AC_CHECK_FUNC(mjpeg_loglev_t, [
1608 mjpegtools_api=10903
1610 mjpegtools_api=10900
1612 CFLAGS="$OLD_CFLAGS"
1620 AC_DEFINE_UNQUOTED(GST_MJPEGTOOLS_API, $mjpegtools_api,
1621 [mjpegtools API evolution])
1623 dnl *** mpeg2enc ***
1624 translit(dnm, m, l) AM_CONDITIONAL(USE_MPEG2ENC, true)
1625 AG_GST_CHECK_FEATURE(MPEG2ENC, [mpeg2enc], mpeg2enc, [
1627 dnl we require a c++ compiler for this one
1628 if [ test x$HAVE_CXX = xyes ]; then
1629 dnl libmpeg2enc was first included in mjpegtools-1.6.2-rc3 (1.6.1.92)
1630 dnl since many distros include mjpegtools specifically without mplex
1631 dnl and mpeg2enc, we check for mpeg2enc on its own, too.
1632 PKG_CHECK_MODULES(MPEG2ENC, mjpegtools >= 1.6.1.93, [
1633 dnl HACK because mpeg2enc 1.8.0 header files have a spurious 'include config.h'
1635 dnl switch over to c++ to test things
1637 OLD_CPPFLAGS="$CPPFLAGS"
1639 CPPFLAGS_GOOD="$CPPFLAGS $MPEG2ENC_CFLAGS"
1640 CPPFLAGS="$CPPFLAGS_GOOD -I."
1642 mpeg2enc_headers_ok=no
1643 AC_CHECK_HEADER([mpeg2encoder.hh], [
1644 MPEG2ENC_LIBS="$MPEG2ENC_LIBS -lmpeg2encpp $LIBM $PTHREAD_LIBS"
1646 LIBS="$LIBS $MPEG2ENC_LIBS"
1647 AC_MSG_CHECKING([for valid mpeg2enc objects])
1648 AC_RUN_IFELSE([AC_LANG_SOURCE([[
1649 #include <mpeg2encoder.hh>
1650 #include <mpeg2encoptions.hh>
1656 MPEG2EncOptions *options = new MPEG2EncOptions ();
1657 MPEG2Encoder *encoder = new MPEG2Encoder (*options);
1662 dnl so far so good, let's check more things:
1663 dnl mjpegtools-1.8.0 does not install the required
1664 dnl mpeg2syntaxcodes.h header by default, and a new release
1665 dnl is not in sight, so check for this oversight in case
1666 dnl distros or folks have fixed this themselves
1667 if test "$mjpegtools_api" -ge "10800"; then
1668 AC_CHECK_HEADER([mpeg2syntaxcodes.h], [
1669 mpeg2enc_headers_ok=yes
1671 mpeg2enc_headers_ok=no
1674 mpeg2enc_headers_ok=yes
1676 if test "x$mpeg2enc_headers_ok" = "xyes"; then
1679 CPPFLAGS="$CPPFLAGS_GOOD"
1680 AC_SUBST(MPEG2ENC_CFLAGS)
1681 AC_SUBST(MPEG2ENC_LIBS)
1688 CPPFLAGS="$OLD_CPPFLAGS"
1697 translit(dnm, m, l) AM_CONDITIONAL(USE_MPLEX, true)
1698 AG_GST_CHECK_FEATURE(MPLEX, [mplex], mplex, [
1700 dnl we require a c++ compiler for this one
1701 if [ test x$HAVE_CXX = xyes ]; then
1702 dnl libmplex was first included in mjpegtools-1.6.2-rc4 (1.6.1.93)
1703 dnl since many distros include mjpegtools specifically without mplex
1704 dnl and mpeg2enc, we check for mplex on its own, too.
1705 dnl libmplex < 1.9rc? has fuzzy ABI, valgrind and other problems
1706 PKG_CHECK_MODULES(MPLEX, mjpegtools >= 1.9.0, [
1707 dnl HACK because mplex 2.0.0 header files have a spurious 'include config.h'
1709 dnl switch over to c++ to test things
1711 OLD_CPPFLAGS="$CPPFLAGS"
1713 CPPFLAGS_GOOD="$CPPFLAGS $MPLEX_CFLAGS"
1714 CPPFLAGS="$CPPFLAGS_GOOD -I."
1715 AC_CHECK_HEADER(interact.hpp, [
1716 MPLEX_LIBS="$MPLEX_LIBS -lmplex2 $LIBM"
1718 LIBS="$LIBS $MPLEX_LIBS"
1719 OLD_LDFLAGS="$LDFLAGS"
1720 LDFLAGS="$LDFLAGS $MPLEX_LDFLAGS"
1721 dnl older libmplex uses off_t SegmentSize (), which leads to fuzzy ABI;
1722 dnl don't want this here
1723 AC_MSG_CHECKING([for valid mplex objects])
1724 AC_RUN_IFELSE([AC_LANG_SOURCE([[
1726 #include <interact.hpp>
1727 #include <outputstrm.hpp>
1728 #include <multiplexor.hpp>
1733 class TestOutputStream : public OutputStream {
1735 TestOutputStream () : OutputStream () { }
1736 void Write (uint8_t *a, unsigned int b) { }
1737 void NextSegment () { }
1738 uint64_t SegmentSize () { }
1742 MultiplexJob *job = new MultiplexJob ();
1743 vector<IBitStream *> inputs;
1744 job->SetupInputStreams (inputs);
1745 TestOutputStream *out = new TestOutputStream ();
1746 Multiplexor *mux = new Multiplexor(*job, *out, NULL);
1751 CPPFLAGS="$CPPFLAGS_GOOD"
1752 AC_SUBST(MPLEX_CFLAGS)
1753 AC_SUBST(MPLEX_LIBS)
1754 AC_SUBST(MPLEX_LDFLAGS)
1756 ],[AC_MSG_RESULT(no)],[])
1758 LDFLAGS="$OLD_LDFLAGS"
1760 CPPFLAGS="$OLD_CPPFLAGS"
1766 dnl *** musepack ***
1767 translit(dnm, m, l) AM_CONDITIONAL(USE_MUSEPACK, true)
1768 AG_GST_CHECK_FEATURE(MUSEPACK, [musepackdec], musepack, [
1769 AC_CHECK_HEADER([mpc/mpcdec.h], [
1771 MUSEPACK_LIBS="-lmpcdec"
1772 AC_SUBST(MUSEPACK_LIBS)
1773 ], [AC_CHECK_HEADER([mpcdec/mpcdec.h], [
1775 MUSEPACK_LIBS="-lmpcdec"
1776 AC_DEFINE(MPC_IS_OLD_API, 1, [Define if the old MusePack API is used])
1777 AC_SUBST(MUSEPACK_LIBS)
1778 ], [HAVE_MUSEPACK="no"])])
1782 translit(dnm, m, l) AM_CONDITIONAL(USE_NEON, true)
1783 AG_GST_CHECK_FEATURE(NEON, [neon http client plugins], neonhttpsrc, [
1784 PKG_CHECK_MODULES(NEON, neon >= 0.27.0 neon <= 0.30.99, HAVE_NEON="yes", [
1787 AC_SUBST(NEON_CFLAGS)
1792 translit(dnm, m, l) AM_CONDITIONAL(USE_OFA, true)
1793 AG_GST_CHECK_FEATURE(OFA, [ofa plugins], ofa, [
1794 PKG_CHECK_MODULES(OFA, libofa >= 0.9.3, HAVE_OFA="yes", [
1797 AC_SUBST(OFA_CFLAGS)
1802 translit(dnm, m, l) AM_CONDITIONAL(USE_OPENAL, true)
1803 AG_GST_CHECK_FEATURE(OPENAL, [OpenAL plugin], openal, [
1804 PKG_CHECK_MODULES(OPENAL, openal >= 1.14, HAVE_OPENAL="yes", [
1807 AC_SUBST(OPENAL_CFLAGS)
1808 AC_SUBST(OPENAL_LIBS)
1812 translit(dnm, m, l) AM_CONDITIONAL(USE_OPENCV, true)
1813 AG_GST_CHECK_FEATURE(OPENCV, [opencv plugins], opencv, [
1814 dnl we specify a max. version too because we set CV_NO_BACKWARD_COMPATIBILITY
1815 dnl and don't want the build to break when a new opencv version comes out.
1816 dnl Need to adjust this upwards once we know that our code compiles fine with
1817 dnl a new version and the no-backward-compatibility define. (There doesn't
1818 dnl seem to be a switch to suppress the warnings the cvcompat.h header
1820 PKG_CHECK_MODULES(OPENCV, opencv >= 2.3.0 opencv < 3.5.0 , [
1823 OLD_CPPFLAGS=$CPPFLAGS
1824 CPPFLAGS=$OPENCV_CFLAGS
1825 something_not_found=no
1826 AC_CHECK_HEADERS([opencv2/core/core_c.h \
1827 opencv2/core/version.hpp \
1828 opencv2/highgui/highgui_c.h \
1829 opencv2/imgproc/imgproc.hpp \
1830 opencv2/imgproc/imgproc_c.h \
1831 opencv2/objdetect/objdetect.hpp \
1832 opencv2/video/background_segm.hpp], [], [something_not_found=yes])
1834 dnl Only required for OpenCV >= 3, we have compat code for older versions
1835 PKG_CHECK_MODULES(OPENCV_3, opencv >= 3, [
1836 dnl check opencv_contrib headers (not always present in opencv distributions)
1837 AC_CHECK_HEADERS([opencv2/bgsegm.hpp], [], [something_not_found=yes])],
1838 [NOT_A_PROBLEM=yes])
1840 CPPFLAGS=$OLD_CPPFLAGS
1843 if test $something_not_found = "yes"; then
1844 AC_MSG_RESULT([not all opencv2 headers were found])
1852 OPENCV_PREFIX="`$PKG_CONFIG --variable=prefix opencv`"
1853 AC_DEFINE_UNQUOTED(OPENCV_PREFIX, "$OPENCV_PREFIX", [opencv install prefix])
1854 AC_SUBST(OPENCV_PREFIX)
1855 AC_SUBST(OPENCV_CFLAGS)
1856 AC_SUBST(OPENCV_LIBS)
1857 dnl the OpenCV prefix is used at runtime for some object properties, and also
1858 dnl used here to detect which directory is the correct one. For the second
1859 dnl case, make sure the right sysroot is used, ensuring correct behavior
1860 dnl during cross compilation.
1861 if test -d "$PKG_CONFIG_SYSROOT_DIR/$OPENCV_PREFIX/share/opencv/"; then
1862 AC_DEFINE_UNQUOTED(OPENCV_PATH_NAME, ["opencv"], [OpenCV path name])
1864 AC_DEFINE_UNQUOTED(OPENCV_PATH_NAME, ["OpenCV"], [OpenCV path name])
1869 translit(dnm, m, l) AM_CONDITIONAL(USE_OPENEXR, true)
1870 AG_GST_CHECK_FEATURE(OPENEXR, [openexr library], openexr, [
1871 AG_GST_PKG_CHECK_MODULES(OPENEXR, OpenEXR)
1874 dnl *** openh264 ***
1875 translit(dnm, m, l) AM_CONDITIONAL(USE_OPENH264, true)
1876 AG_GST_CHECK_FEATURE(OPENH264, [openh264 library], openh264, [
1877 AG_GST_PKG_CHECK_MODULES(OPENH264, openh264 >= 1.3.0)
1880 dnl *** OpenJPEG ***
1881 translit(dnm, m, l) AM_CONDITIONAL(USE_OPENJPEG, true)
1882 AG_GST_CHECK_FEATURE(OPENJPEG, [openjpeg library], openjpeg, [
1884 AG_GST_PKG_CHECK_MODULES(OPENJPEG, libopenjp2 >= 2.1)
1885 if test x"$HAVE_OPENJPEG" != x"yes"; then
1888 PKG_CHECK_MODULES(OPENJPEG, libopenjpeg1,
1889 HAVE_OPENJPEG="yes",
1890 AG_GST_CHECK_LIBHEADER(OPENJPEG, openjpeg, opj_version, , openjpeg.h, OPENJPEG_LIBS="-lopenjpeg")
1892 if test x"$HAVE_OPENJPEG" = x"yes"; then
1893 AC_DEFINE([HAVE_OPENJPEG_1], 1, [Define if OpenJPEG 1 is used])
1896 AC_SUBST(OPENJPEG_CFLAGS)
1897 AC_SUBST(OPENJPEG_LIBS)
1901 translit(dnm, m, l) AM_CONDITIONAL(USE_OPENMPT, true)
1902 AG_GST_CHECK_FEATURE(OPENMPT, openmpt, openmpt, [
1903 PKG_CHECK_MODULES(OPENMPT, libopenmpt, HAVE_OPENMPT="yes", HAVE_OPENMPT="no")
1904 AC_SUBST(OPENMPT_CFLAGS)
1905 AC_SUBST(OPENMPT_LIBS)
1909 translit(dnm, m, l) AM_CONDITIONAL(USE_OPENNI2, true)
1910 AG_GST_CHECK_FEATURE(OPENNI2, [openni2 library], openni2, [
1911 PKG_CHECK_MODULES(OPENNI2, libopenni2 >= 0.26, HAVE_OPENNI2="yes", [ HAVE_OPENNI2="no" ] )
1912 AC_SUBST(OPENNI2_CFLAGS)
1913 AC_SUBST(OPENNI2_LIBS)
1917 translit(dnm, m, l) AM_CONDITIONAL(USE_OPUS, true)
1918 AG_GST_CHECK_FEATURE(OPUS, [opus], opus, [
1919 PKG_CHECK_MODULES(OPUS, opus >= 0.9.4, [
1920 AC_DEFINE([HAVE_OPUS], 1, [Define if Opus >= 0.9.4 is installed])
1925 AC_SUBST(OPUS_CFLAGS)
1930 translit(dnm, m, l) AM_CONDITIONAL(USE_RSVG, true)
1931 AG_GST_CHECK_FEATURE(RSVG, [rsvg decoder], rsvg, [
1932 AG_GST_PKG_CHECK_MODULES(RSVG, librsvg-2.0 >= 2.36.2)
1937 translit(dnm, m, l) AM_CONDITIONAL(USE_GL, true)
1938 AG_GST_CHECK_FEATURE(GL, [gl elements], gl, [
1939 if test "x$HAVE_GST_GL" = "xyes"; then
1943 AM_CONDITIONAL(USE_GL, test "x$HAVE_GL" = "xyes")
1944 AM_CONDITIONAL(USE_OPENGL, test "x$GST_GL_HAVE_API_GL" = "x1")
1948 translit(dnm, m, l) AM_CONDITIONAL(USE_GTK3, true)
1949 AG_GST_CHECK_FEATURE(GTK3, [Gtk+ elements], gtk, [
1950 PKG_CHECK_MODULES(GTK3, gtk+-3.0, [
1951 AC_DEFINE([HAVE_GTK3], 1, [Define if Gtk+ 3.0 is installed])
1956 PKG_CHECK_MODULES(GTK3_GL, gtk+-3.0 >= 3.15.0, [
1958 if test "x$GST_GL_HAVE_WINDOW_X11" = "x1" -a "x$GST_GL_HAVE_PLATFORM_GLX" = "x1"; then
1959 PKG_CHECK_MODULES(GTK3_X11, gtk+-x11-3.0, [
1960 GTK3_CFLAGS="$GTK3_CFLAGS $GTK3_X11_CFLAGS"
1961 GTK3_LIBS="$GTK3_LIBS $GTK3_X11_LIBS"
1963 ], [AC_MSG_NOTICE([Could not find Gtk X11 integration])])
1965 if test "x$GST_GL_HAVE_WINDOW_WAYLAND" = "x1" -a "x$GST_GL_HAVE_PLATFORM_EGL" = "x1"; then
1966 PKG_CHECK_MODULES(GTK3_WAYLAND, gtk+-wayland-3.0, [
1967 GTK3_CFLAGS="$GTK3_CFLAGS $GTK3_WAYLAND_CFLAGS"
1968 GTK3_LIBS="$GTK3_LIBS $GTK3_WAYLAND_LIBS"
1970 ], [AC_MSG_NOTICE([Could not find Gtk Wayland integration])])
1972 if test "x$GDK_WINDOWING" = "xyes"; then
1973 AC_DEFINE([HAVE_GTK3_GL], 1, [Define if Gtk+ 3.0 GL is installed])
1980 AM_CONDITIONAL(USE_GTK3_GL, test "x$HAVE_GTK3_GL" = "xyes")
1983 translit(dnm, m, l) AM_CONDITIONAL(USE_QT, true)
1984 AG_GST_CHECK_FEATURE(QT, [Qt elements], qt, [
1985 PKG_CHECK_MODULES(QT, Qt5Core Qt5Gui Qt5Qml Qt5Quick >= 5.4.0, [
1986 QT_PATH=`$PKG_CONFIG --variable=exec_prefix Qt5Core`
1987 QT_HOST_PATH=`$PKG_CONFIG --variable=host_bins Qt5Core`
1989 AS_HELP_STRING([--with-moc], [Set location of qt moc tool]),
1991 AC_PATH_PROGS(MOC, [moc-qt5 moc], [moc], ["${QT_HOST_PATH}" "${QT_PATH}/bin"])
1993 AS_HELP_STRING([--with-rcc], [Set location of qt rcc tool]),
1995 AC_PATH_PROGS(RCC, [rcc-qt5 rcc], [rcc], ["${QT_HOST_PATH}" "${QT_PATH}/bin"])
1997 AS_HELP_STRING([--with-uic], [Set location of qt uic tool]),
1999 AC_PATH_PROGS(UIC, [uic-qt5 uic], [uic], ["${QT_HOST_PATH}" "${QT_PATH}/bin"])
2000 if test "x$MOC" = "x" || test "x$UIC" = "x" || test "x$RCC" = "x"; then
2001 AC_MSG_WARN([One of the required qt build programs was not found])
2005 HAVE_QT_WINDOWING="no"
2006 QT_VERSION="`$PKG_CONFIG --define-prefix --modversion Qt5Core`"
2007 QPA_INCLUDE_PATH=`$PKG_CONFIG --variable=includedir Qt5Core`/QtGui/${QT_VERSION}/QtGui
2008 AS_IF([test -f "$PKG_CONFIG_SYSROOT_DIR/$QPA_INCLUDE_PATH/qpa/qplatformnativeinterface.h"], [
2009 QT_CFLAGS="$QT_CFLAGS -I$PKG_CONFIG_SYSROOT_DIR/$QPA_INCLUDE_PATH"
2010 HAVE_QT_QPA_HEADER="yes"
2011 ], [AC_MSG_NOTICE([Cannot find QPA])])
2012 if test "x$GST_GL_HAVE_WINDOW_X11" = "x1" -a "x$GST_GL_HAVE_PLATFORM_GLX" = "x1" || test "x$GST_GL_HAVE_WINDOW_X11" = "x1" -a "x$GST_GL_HAVE_PLATFORM_EGL" = "x1"; then
2013 PKG_CHECK_MODULES(QT_X11, Qt5X11Extras, [
2014 AC_DEFINE([HAVE_QT_X11], [], [Define if Qt X11 integration is installed])
2015 QT_CFLAGS="$QT_CFLAGS $QT_X11_CFLAGS"
2016 QT_LIBS="$QT_LIBS $QT_X11_LIBS"
2017 HAVE_QT_WINDOWING="yes"
2018 ], [AC_MSG_NOTICE([Could not find Qt X11 integration])])
2020 if test "x$GST_GL_HAVE_WINDOW_WAYLAND" = "x1" -a "x$GST_GL_HAVE_PLATFORM_EGL" = "x1" -a "x$HAVE_QT_QPA_HEADER" = "xyes"; then
2021 PKG_CHECK_MODULES(QT_WAYLAND, Qt5WaylandClient, [
2022 AC_DEFINE([HAVE_QT_WAYLAND], [],
2023 [Define if Qt Wayland integration is installed])
2024 QT_CFLAGS="$QT_CFLAGS $QT_WAYLAND_CFLAGS"
2025 QT_LIBS="$QT_LIBS $QT_WAYLAND_LIBS"
2026 HAVE_QT_WINDOWING="yes"
2027 ], [AC_MSG_NOTICE([Could not find Qt Wayland integration])])
2029 if test "x$GST_GL_HAVE_PLATFORM_EGL" = "x1"; then
2030 if test "x$GST_GL_HAVE_WINDOW_ANDROID" = "x1"; then
2031 PKG_CHECK_MODULES(QT_ANDROID, Qt5AndroidExtras, [
2032 # c++ on android requires a standard library and there are multiple
2033 # choices. cerbero provides a pkg-config file the describes a choice
2034 # so try to use that. Outside cerbero one has to pass these flags
2035 # manually for the library one is using
2036 PKG_CHECK_MODULES(GNUSTL, gnustl, [
2037 QT_CFLAGS="$QT_CFLAGS $GNUSTL_CFLAGS"
2038 QT_LIBS="$QT_LIBS $GNUSTL_LIBS"
2040 AC_MSG_NOTICE([Could not find Standard C++ library])])
2041 AC_DEFINE([HAVE_QT_EGLFS], [],
2042 [Define if Qt eglfs integration is installed])
2043 QT_CFLAGS="$QT_CFLAGS $QT_ANDROID_CFLAGS"
2044 QT_LIBS="$QT_LIBS $QT_ANDROID_LIBS"
2045 HAVE_QT_WINDOWING="yes"
2046 ], [AC_MSG_NOTICE([Could not find Qt Android integration])])
2048 AC_DEFINE([HAVE_QT_EGLFS], [],
2049 [Define if Qt eglfs integration is installed])
2050 HAVE_QT_WINDOWING="yes"
2053 if test "x$GST_GL_HAVE_WINDOW_COCOA" = "x1" -a "x$GST_GL_HAVE_PLATFORM_CGL" = "x1"; then
2054 PKG_CHECK_MODULES(QT_MAC, Qt5MacExtras, [
2055 AC_DEFINE([HAVE_QT_MAC], [],
2056 [Define if Qt Mac integration is installed])
2057 QT_LIBDIR=`$PKG_CONFIG --variable=libdir Qt5Core`
2058 QT_CFLAGS="$QT_CFLAGS $QT_MAC_CFLAGS -F$QT_LIBDIR -framework QtCore -framework QtGui -framework QtQuick -framework QtQml -framework QtMacExtras"
2059 QT_LIBS="$QT_LIBS $QT_MAC_LIBS"
2060 HAVE_QT_WINDOWING="yes"
2061 ], [AC_MSG_NOTICE([Could not find Qt Mac integration])])
2063 if test "x$GST_GL_HAVE_WINDOW_EAGL" = "x1" -a "x$GST_GL_HAVE_PLATFORM_EAGL" = "x1"; then
2064 if test "x$HAVE_IOS" = "xyes"; then
2065 # iOS doesn't have its own extras package so if we have the core
2066 # modules we are good to go
2067 AC_DEFINE([HAVE_QT_IOS], [],
2068 [Define if Qt iOS integration is installed])
2069 HAVE_QT_WINDOWING="yes"
2072 if test "x$HAVE_QT_WINDOWING" = "xno"; then
2073 AC_MSG_WARN([Could not find any Qt Windowing integration])
2076 AC_SUBST([QT_CFLAGS])
2085 translit(dnm, m, l) AM_CONDITIONAL(USE_VULKAN, true)
2086 AG_GST_CHECK_FEATURE(VULKAN, [Vulkan elements], vulkan, [
2087 AC_CHECK_HEADER(vulkan/vulkan.h, [
2088 AC_CHECK_LIB(vulkan, vkCreateDevice, [
2089 VULKAN_LIBS="-lvulkan"
2090 AC_SUBST(VULKAN_LIBS)
2091 if test "x$GST_VULKAN_HAVE_WINDOW_XCB" = "x1"; then
2094 if test "x$GST_VULKAN_HAVE_WINDOW_WAYLAND" = "x1"; then
2101 dnl *** teletextdec ***
2102 translit(dnm, m, l) AM_CONDITIONAL(USE_TELETEXTDEC, true)
2103 AG_GST_CHECK_FEATURE(TELETEXTDEC, [Teletext decoder], teletextdec, [
2104 AG_GST_PKG_CHECK_MODULES(TELETEXTDEC, zvbi-0.2)
2107 dnl *** wildmidi ***
2108 translit(dnm, m, l) AM_CONDITIONAL(USE_WILDMIDI, true)
2109 AG_GST_CHECK_FEATURE(WILDMIDI, [wildmidi midi soft synth plugin], wildmidi, [
2110 AG_GST_CHECK_LIBHEADER(WILDMIDI, WildMidi,
2113 WILDMIDI_LIBS="-lWildMidi")
2116 if test "x$HAVE_WILDMIDI" = "xyes"; then
2117 AC_MSG_CHECKING([for wildmidi >= 4.0])
2118 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <wildmidi_lib.h>]], [[
2119 #if LIBWILDMIDI_VER_MAJOR == 0 && LIBWILDMIDI_VER_MINOR < 4
2120 #error "wildmidi too old"
2122 ]])], [ AC_MSG_RESULT(yes)
2125 WILDMIDI_LIBS=-lWildMidi
2126 ], [ AC_MSG_RESULT(no)
2130 AC_MSG_WARN([WildMidi library or development headers not found])
2132 AC_SUBST(WILDMIDI_CFLAGS)
2133 AC_SUBST(WILDMIDI_LIBS)
2136 dnl **** Smooth Streaming ****
2137 translit(dnm, m, l) AM_CONDITIONAL(USE_SMOOTHSTREAMING, true)
2138 AG_GST_CHECK_FEATURE(SMOOTHSTREAMING, [Smooth Streaming plug-in], smoothstreaming, [
2139 PKG_CHECK_MODULES(LIBXML2, libxml-2.0 >= 2.4,
2141 HAVE_SMOOTHSTREAMING="yes"],
2143 HAVE_SMOOTHSTREAMING="no"])
2144 AC_SUBST(LIBXML2_CFLAGS)
2145 AC_SUBST(LIBXML2_LIBS)
2149 translit(dnm, m, l) AM_CONDITIONAL(USE_SNDFILE, true)
2150 AG_GST_CHECK_FEATURE(SNDFILE, [sndfile plug-in], sfdec sfenc, [
2151 PKG_CHECK_MODULES(SNDFILE, sndfile >= 1.0.16, HAVE_SNDFILE="yes", HAVE_SNDFILE="no")
2152 AC_SUBST(SNDFILE_CFLAGS)
2153 AC_SUBST(SNDFILE_LIBS)
2156 dnl *** soundtouch ***
2157 translit(dnm, m, l) AM_CONDITIONAL(USE_SOUNDTOUCH, true)
2158 AG_GST_CHECK_FEATURE(SOUNDTOUCH, [soundtouch plug-in], soundtouch, [
2159 dnl We only need -lBPM on soundtouch < 1.4
2160 dnl We check for libSoundTouch since Debian used it before upstream
2161 dnl added a pkgconfig file.
2162 HAVE_SOUNDTOUCH_1_4=yes
2163 PKG_CHECK_MODULES(SOUNDTOUCH, soundtouch,
2164 [HAVE_SOUNDTOUCH=yes],
2165 [PKG_CHECK_MODULES(SOUNDTOUCH, soundtouch-1.4,
2166 [HAVE_SOUNDTOUCH=yes],
2167 [PKG_CHECK_MODULES(SOUNDTOUCH, soundtouch-1.0,
2168 [HAVE_SOUNDTOUCH=yes
2169 HAVE_SOUNDTOUCH_1_4=no
2170 SOUNDTOUCH_LIBS="$SOUNDTOUCH_LIBS -lBPM"],
2171 [PKG_CHECK_MODULES(SOUNDTOUCH, libSoundTouch >= 1.4,
2172 [HAVE_SOUNDTOUCH=yes],
2173 [PKG_CHECK_MODULES(SOUNDTOUCH, libSoundTouch,
2174 [HAVE_SOUNDTOUCH=yes
2175 HAVE_SOUNDTOUCH_1_4=no
2176 SOUNDTOUCH_LIBS="$SOUNDTOUCH_LIBS -lBPM"],
2177 HAVE_SOUNDTOUCH=no)])])])])
2178 AC_SUBST(SOUNDTOUCH_CFLAGS)
2179 AC_SUBST(SOUNDTOUCH_LIBS)
2180 if test "x$HAVE_CXX" != "xyes"; then
2181 USE_SOUNDTOUCH=false
2182 AC_MSG_NOTICE([Not building soundtouch plugin: no C++ compiler found])
2184 if test "x$HAVE_SOUNDTOUCH" = "xyes" -a "x$HAVE_SOUNDTOUCH_1_4" = "xyes"; then
2185 AC_DEFINE([HAVE_SOUNDTOUCH_1_4], [1],
2186 [Defined if the available libSoundTouch is >= 1.4])
2191 translit(dnm, m, l) AM_CONDITIONAL(USE_SPC, true)
2192 AG_GST_CHECK_FEATURE(SPC, [spc decoder], spc, [
2193 AC_CHECK_HEADER(openspc.h, [
2194 AC_CHECK_LIB(openspc, OSPC_Init, [
2195 SPC_LIBS="-lopenspc"
2207 translit(dnm, m, l) AM_CONDITIONAL(USE_GME, true)
2208 AG_GST_CHECK_FEATURE(GME, [gme decoder], gme, [
2209 AC_CHECK_HEADER(gme/gme.h, [
2210 AC_CHECK_LIB(gme, gme_new_emu, [
2221 if test "x$HAVE_GME" = "xyes"; then
2222 AC_CHECK_LIB(gme, gme_enable_accuracy, [
2223 AC_DEFINE(HAVE_LIBGME_ACCURACY, 1, [Define if gme 0.5.6 or newer is available])
2229 translit(dnm, m, l) AM_CONDITIONAL(USE_DVB, true)
2230 AG_GST_CHECK_FEATURE(DVB, [DVB Source], dvb, [
2231 AC_MSG_CHECKING([Checking for up to date dvb installation])
2232 AC_CHECK_HEADER(linux/dvb/version.h, [
2233 AC_MSG_CHECKING([for up-to-date dvb API])
2234 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <linux/dvb/version.h>]], [[
2235 #if DVB_API_VERSION < 5 || (DVB_API_VERSION == 5 && DVB_API_VERSION_MINOR <= 4)
2236 #error "Incompatible dvb API"
2238 ]])], [ AC_MSG_RESULT(yes)
2240 ], [ AC_MSG_RESULT(no)
2247 translit(dnm, m, l) AM_CONDITIONAL(USE_ACM, true)
2248 AG_GST_CHECK_FEATURE(ACM, [Windows ACM library], acm, [
2249 AC_MSG_CHECKING([Checking for ACM support])
2250 AC_CHECK_HEADERS([windows.h msacm.h],
2252 AC_SUBST(ACMENC_CFLAGS)
2253 AC_SUBST(ACMMP3DEC_CFLAGS)
2255 [AC_INCLUDES_DEFAULT
2256 #include <windows.h>])
2260 translit(dnm, m, l) AM_CONDITIONAL(USE_VDPAU, true)
2261 AG_GST_CHECK_FEATURE(VDPAU, [VDPAU], vdpau, [
2266 PKG_CHECK_MODULES(VDPAU, vdpau, [HAVE_VDPAU="yes"],
2268 if test "$HAVE_VDPAU" = "no"; then
2269 saved_CPPFLAGS="$CPPFLAGS"
2270 AC_CHECK_HEADER([vdpau/vdpau.h], [HAVE_VDPAU_H=yes])
2272 if test -z "$HAVE_VDPAU_H"; then
2273 dnl Didn't find VDPAU header straight away.
2274 dnl Try /usr/include/nvidia. Need to clear caching vars first
2275 AC_MSG_NOTICE([VDPAU header not in standard path. Checking /usr/include/nvidia])
2276 unset ac_cv_header_vdpau_vdpau_h
2277 unset ac_cv_header_vdpau_vdpau_x11_h
2278 VDPAU_CFLAGS="-I/usr/include/nvidia"
2279 VDPAU_LIBS="-L/usr/lib/nvidia -lvdpau"
2280 CPPFLAGS="$VDPAU_CFLAGS $saved_CPPFLAGS"
2281 AC_CHECK_HEADER([vdpau/vdpau.h], [HAVE_VDPAU_H=yes])
2284 AC_CHECK_HEADER([vdpau/vdpau_x11.h], [HAVE_VDPAU_X11_H=yes])
2286 if test "x$HAVE_VDPAU_H" = "xyes" -a "x$HAVE_VDPAU_X11_H" = "xyes"; then
2287 dnl Found the headers - look for the lib
2288 AC_MSG_NOTICE([VDPAU headers found. Checking libraries])
2290 LIBS="$VDPAU_LIBS $saved_LIBS"
2291 AC_CHECK_LIB(vdpau,vdp_device_create_x11,[HAVE_VDPAU="yes"])
2297 if test "$HAVE_VDPAU" = "yes"; then
2298 AC_MSG_NOTICE([Found up to date VDPAU installation])
2299 AC_SUBST(VDPAU_CFLAGS)
2300 AC_SUBST(VDPAU_LIBS)
2305 translit(dnm, m, l) AM_CONDITIONAL(USE_SBC, true)
2306 AG_GST_CHECK_FEATURE(SBC, [SBC bluetooth audio codec], sbc, [
2307 AG_GST_PKG_CHECK_MODULES(SBC, [sbc >= 1.0])
2310 dnl *** schroedinger ***
2311 translit(dnm, m, l) AM_CONDITIONAL(USE_SCHRO, true)
2312 AG_GST_CHECK_FEATURE(SCHRO, [Schroedinger video codec], schro, [
2313 AG_GST_PKG_CHECK_MODULES(SCHRO, schroedinger-1.0 >= 1.0.10)
2317 translit(dnm, m, l) AM_CONDITIONAL(USE_ZBAR, true)
2318 AG_GST_CHECK_FEATURE(ZBAR, [ZBar barcode detector], zbar, [
2319 AG_GST_PKG_CHECK_MODULES(ZBAR, zbar >= 0.9)
2323 translit(dnm, m, l) AM_CONDITIONAL(USE_RTMP, true)
2324 AG_GST_CHECK_FEATURE(RTMP, [rtmp library], rtmp, [
2325 AG_GST_PKG_CHECK_MODULES(RTMP, librtmp)
2329 translit(dnm, m, l) AM_CONDITIONAL(USE_SPANDSP, true)
2330 AG_GST_CHECK_FEATURE(SPANDSP, [Spandsp], spandsp, [
2331 PKG_CHECK_MODULES(SPANDSP, spandsp >= 0.0.6, [
2332 HAVE_SPANDSP="yes" ], [
2336 AC_SUBST(SPANDSP_CFLAGS)
2337 AC_SUBST(SPANDSP_LIBS)
2339 dnl *** hls-crypto ***
2340 AC_ARG_WITH([hls-crypto],
2341 AS_HELP_STRING([--with-hls-crypto=auto|nettle|libgcrypt|openssl], [
2342 which cryptographic library version to compile against for hls (default: auto)
2344 AS_CASE([$with_hls_crypto],
2348 [with_hls_crypto=auto]
2354 translit(dnm, m, l) AM_CONDITIONAL(USE_HLS, true)
2355 AG_GST_CHECK_FEATURE(HLS, [http live streaming plugin], hls, [
2356 AS_CASE([$with_hls_crypto],
2358 PKG_CHECK_MODULES(NETTLE, nettle, [
2359 AC_DEFINE(HAVE_NETTLE, 1, [Define if nettle is available])
2361 ],[AC_MSG_ERROR([Could not find nettle library])])
2364 AM_PATH_LIBGCRYPT([1.2.0], [
2365 AC_DEFINE(HAVE_LIBGCRYPT, 1, [Define if libgcrypt is available])
2367 ],[AC_MSG_ERROR([Could not find libgcrypt library])])
2370 PKG_CHECK_MODULES(OPENSSL, openssl, [
2371 AC_DEFINE(HAVE_OPENSSL, 1, [Define if openssl is available])
2373 ],[AC_MSG_ERROR([Could not find openssl library])])
2376 dnl Try to find a valid crypto library
2377 PKG_CHECK_MODULES(NETTLE, nettle, [
2378 AC_DEFINE(HAVE_NETTLE, 1, [Define if nettle is available])
2381 AM_PATH_LIBGCRYPT([1.2.0], [
2382 AC_DEFINE(HAVE_LIBGCRYPT, 1, [Define if libgcrypt is available])
2385 PKG_CHECK_MODULES(OPENSSL, openssl, [
2386 AC_DEFINE(HAVE_OPENSSL, 1, [Define if openssl is available])
2397 dnl *** x265 (H.265/HEVC encoder) ***
2398 translit(dnm, m, l) AM_CONDITIONAL(USE_X265, true)
2399 AG_GST_CHECK_FEATURE(X265, [x265 plug-in], x265, [
2400 AG_GST_PKG_CHECK_MODULES(X265, x265)
2403 dnl *** WebRTC Audio Processing ***
2404 dnl Note: We test for a specific version as there is no API stability
2405 translit(dnm, m, l) AM_CONDITIONAL(USE_WEBRTCDSP, true)
2406 AG_GST_CHECK_FEATURE(WEBRTCDSP, [WebRTC Audio Processing], webrtcdsp, [
2408 AG_GST_PKG_CHECK_MODULES(WEBRTCDSP, webrtc-audio-processing >= 0.2 webrtc-audio-processing < 0.4)
2410 # On Android, C++ headers comes with the STL implementation
2411 AS_CASE(["${host}"],
2414 PKG_CHECK_MODULES(GNUSTL, gnustl, [
2415 WEBRTCDSP_CFLAGS="$WEBRTCDSP_CFLAGS $GNUSTL_CFLAGS"
2416 WEBRTCDSP_LIBS="$WEBRTCDSP_LIBS $GNUSTL_LIBS"])
2418 AC_SUBST([WEBRTCDSP_CFLAGS])
2419 AC_SUBST([WEBRTCDSP_LIBS])
2422 old_CPPFLAGS=$CPPFLAGS
2423 CPPFLAGS="-std=c++11 $CPPFLAGS $GNUSTL_CFLAGS"
2424 AC_CHECK_HEADER([vector],[],[HAVE_WEBRTCDSP=no])
2425 CPPFLAGS=$old_CPPFLAGS
2430 translit(dnm, m, l) AM_CONDITIONAL(USE_WEBRTC, true)
2431 AG_GST_CHECK_FEATURE(WEBRTC, [WebRTC], webrtc, [
2432 AG_GST_PKG_CHECK_MODULES(GST_SDP, gstreamer-sdp-1.0)
2433 PKG_CHECK_MODULES(NICE, nice >= 0.1, [
2434 HAVE_WEBRTC="yes" ], [
2441 dnl not building plugins with external dependencies,
2442 dnl but we still need to set the conditionals
2444 AM_CONDITIONAL(USE_ASSRENDER, false)
2445 AM_CONDITIONAL(USE_AOM, false)
2446 AM_CONDITIONAL(USE_VOAMRWBENC, false)
2447 AM_CONDITIONAL(USE_VOAACENC, false)
2448 AM_CONDITIONAL(USE_BS2B, false)
2449 AM_CONDITIONAL(USE_BZ2, false)
2450 AM_CONDITIONAL(USE_CHROMAPRINT, false)
2451 AM_CONDITIONAL(USE_CURL, false)
2452 AM_CONDITIONAL(USE_SSH2, false)
2453 AM_CONDITIONAL(USE_DASH, false)
2454 AM_CONDITIONAL(USE_DC1394, false)
2455 AM_CONDITIONAL(USE_DECKLINK, false)
2456 AM_CONDITIONAL(DECKLINK_OSX, false)
2457 AM_CONDITIONAL(USE_DIRECTFB, false)
2458 AM_CONDITIONAL(USE_WAYLAND, false)
2459 AM_CONDITIONAL(USE_DAALA, false)
2460 AM_CONDITIONAL(USE_DTS, false)
2461 AM_CONDITIONAL(USE_EXIF, false)
2462 AM_CONDITIONAL(USE_RESINDVD, false)
2463 AM_CONDITIONAL(USE_FAAC, false)
2464 AM_CONDITIONAL(USE_FAAD, false)
2465 AM_CONDITIONAL(USE_FBDEV, false)
2466 AM_CONDITIONAL(USE_FDK_AAC, false)
2467 AM_CONDITIONAL(USE_FLITE, false)
2468 AM_CONDITIONAL(USE_FLUIDSYNTH, false)
2469 AM_CONDITIONAL(USE_GSM, false)
2470 AM_CONDITIONAL(USE_GTK3, false)
2471 AM_CONDITIONAL(USE_GTK3_GL, false)
2472 AM_CONDITIONAL(USE_HLS, false)
2473 AM_CONDITIONAL(USE_IQA, false)
2474 AM_CONDITIONAL(USE_KATE, false)
2475 AM_CONDITIONAL(USE_KMS, false)
2476 AM_CONDITIONAL(USE_TIGER, false)
2477 AM_CONDITIONAL(USE_LADSPA, false)
2478 AM_CONDITIONAL(USE_LCMS2, false)
2479 AM_CONDITIONAL(USE_LV2, false)
2480 AM_CONDITIONAL(USE_LIBDE265, false)
2481 AM_CONDITIONAL(USE_LIBMMS, false)
2482 AM_CONDITIONAL(USE_MODPLUG, false)
2483 AM_CONDITIONAL(USE_MPEG2ENC, false)
2484 AM_CONDITIONAL(USE_MPLEX, false)
2485 AM_CONDITIONAL(USE_MUSEPACK, false)
2486 AM_CONDITIONAL(USE_NEON, false)
2487 AM_CONDITIONAL(USE_OFA, false)
2488 AM_CONDITIONAL(USE_OPENAL, false)
2489 AM_CONDITIONAL(USE_OPENCV, false)
2490 AM_CONDITIONAL(USE_OPENEXR, false)
2491 AM_CONDITIONAL(USE_OPENJPEG, false)
2492 AM_CONDITIONAL(USE_OPENMPT, false)
2493 AM_CONDITIONAL(USE_OPENNI2, false)
2494 AM_CONDITIONAL(USE_OPUS, false)
2495 AM_CONDITIONAL(USE_QT, false)
2496 AM_CONDITIONAL(USE_WILDMIDI, false)
2497 AM_CONDITIONAL(USE_SMOOTHSTREAMING, false)
2498 AM_CONDITIONAL(USE_SNDFILE, false)
2499 AM_CONDITIONAL(USE_SOUNDTOUCH, false)
2500 AM_CONDITIONAL(USE_SPANDSP, false)
2501 AM_CONDITIONAL(USE_SPC, false)
2502 AM_CONDITIONAL(USE_SRTP, false)
2503 AM_CONDITIONAL(USE_GME, false)
2504 AM_CONDITIONAL(USE_DVB, false)
2505 AM_CONDITIONAL(USE_ACM, false)
2506 AM_CONDITIONAL(USE_VDPAU, false)
2507 AM_CONDITIONAL(USE_SBC, false)
2508 AM_CONDITIONAL(USE_SCHRO, false)
2509 AM_CONDITIONAL(USE_ZBAR, false)
2510 AM_CONDITIONAL(USE_RSVG, false)
2511 AM_CONDITIONAL(USE_RTMP, false)
2512 AM_CONDITIONAL(USE_TELETEXTDEC, false)
2513 AM_CONDITIONAL(USE_UVCH264, false)
2514 AM_CONDITIONAL(USE_WEBP, false)
2515 AM_CONDITIONAL(USE_WEBRTC, false)
2516 AM_CONDITIONAL(USE_WEBRTCDSP, false)
2517 AM_CONDITIONAL(USE_OPENH264, false)
2518 AM_CONDITIONAL(USE_X265, false)
2519 AM_CONDITIONAL(USE_DTLS, false)
2520 AM_CONDITIONAL(USE_VULKAN, false)
2521 AM_CONDITIONAL(USE_TTML, false)
2523 fi dnl of EXT plugins
2525 dnl *** finalize CFLAGS, LDFLAGS, LIBS
2528 dnl GST_OPTION_CFLAGS: common flags for profiling, debugging, errors, ...
2529 dnl GST_*: flags shared by built objects to link against GStreamer
2530 dnl GST_ALL_LDFLAGS: linker flags shared by all
2531 dnl GST_LIB_LDFLAGS: additional linker flags for all libaries
2532 dnl GST_LT_LDFLAGS: library versioning of our libraries
2533 dnl GST_PLUGIN_LDFLAGS: flags to be used for all plugins
2535 dnl GST_OPTION_CFLAGS
2536 if test "x$USE_DEBUG" = xyes; then
2539 AC_SUBST(PROFILE_CFLAGS)
2541 if test "x$PACKAGE_VERSION_NANO" = "x1"; then
2542 dnl Define _only_ during CVS (not pre-releases or releases)
2543 DEPRECATED_CFLAGS="-DGST_DISABLE_DEPRECATED"
2545 DEPRECATED_CFLAGS=""
2547 AC_SUBST(DEPRECATED_CFLAGS)
2549 VISIBILITY_CFLAGS=""
2550 AS_COMPILER_FLAG([-fvisibility=hidden], [VISIBILITY_CFLAGS="-fvisibility=hidden"])
2551 AC_SUBST(VISIBILITY_CFLAGS)
2553 VISIBILITY_CXXFLAGS=""
2554 if test "x$HAVE_CXX" = "xyes"; then
2555 AS_CXX_COMPILER_FLAG([-fvisibility=hidden], [VISIBILITY_CXXFLAGS="-fvisibility=hidden"])
2557 AC_SUBST(VISIBILITY_CXXFLAGS)
2559 dnl disable strict aliasing
2560 AS_COMPILER_FLAG([-fno-strict-aliasing], [EXTRA_CFLAGS="-fno-strict-aliasing"])
2561 AC_SUBST(EXTRA_CFLAGS)
2563 dnl every flag in GST_OPTION_CFLAGS and GST_OPTION_CXXFLAGS can be overridden
2564 dnl at make time with e.g. make ERROR_CFLAGS=""
2565 GST_OPTION_CFLAGS="\$(WARNING_CFLAGS) \$(ERROR_CFLAGS) \$(DEBUG_CFLAGS) \$(PROFILE_CFLAGS) \$(GCOV_CFLAGS) \$(OPT_CFLAGS) \$(DEPRECATED_CFLAGS)"
2566 GST_OPTION_CXXFLAGS="\$(WARNING_CXXFLAGS) \$(ERROR_CXXFLAGS) \$(DEBUG_CFLAGS) \$(PROFILE_CFLAGS) \$(GCOV_CFLAGS) \$(OPT_CFLAGS) \$(DEPRECATED_CFLAGS)"
2567 GST_OPTION_OBJCFLAGS="\$(WARNING_OBJCFLAGS) \$(ERROR_OBJCFLAGS) \$(DEBUG_CFLAGS) \$(PROFILE_CFLAGS) \$(GCOV_CFLAGS) \$(OPT_CFLAGS) \$(DEPRECATED_CFLAGS)"
2568 AC_SUBST(GST_OPTION_CFLAGS)
2569 AC_SUBST(GST_OPTION_CXXFLAGS)
2570 AC_SUBST(GST_OPTION_OBJCFLAGS)
2572 dnl FIXME: do we want to rename to GST_ALL_* ?
2573 dnl prefer internal headers to already installed ones
2574 dnl also add builddir include for enumtypes and marshal
2575 dnl add GST_OPTION_CFLAGS, but overridable
2576 GST_CFLAGS="$GST_CFLAGS $GST_STATIC_CFLAGS -DGST_USE_UNSTABLE_API"
2577 GST_CXXFLAGS="$GST_CFLAGS $EXTRA_CFLAGS $GLIB_EXTRA_CFLAGS \$(GST_OPTION_CXXFLAGS) \$(VISIBILITY_CXXFLAGS)"
2578 GST_OBJCFLAGS="$GST_CFLAGS $EXTRA_CFLAGS $GLIB_EXTRA_CFLAGS \$(GST_OPTION_OBJCFLAGS) \$(VISIBILITY_CFLAGS)"
2579 GST_CFLAGS="$GST_CFLAGS $EXTRA_CFLAGS $GLIB_EXTRA_CFLAGS \$(GST_OPTION_CFLAGS) \$(VISIBILITY_CFLAGS)"
2580 AC_SUBST(GST_CFLAGS)
2581 AC_SUBST(GST_CXXFLAGS)
2582 AC_SUBST(GST_OBJCFLAGS)
2584 GST_PLUGINS_BAD_CXXFLAGS="-I\$(top_srcdir)/gst-libs -I\$(top_builddir)/gst-libs"
2585 GST_PLUGINS_BAD_OBJCFLAGS="-I\$(top_srcdir)/gst-libs -I\$(top_builddir)/gst-libs"
2586 GST_PLUGINS_BAD_CFLAGS="-I\$(top_srcdir)/gst-libs -I\$(top_builddir)/gst-libs"
2587 AC_SUBST(GST_PLUGINS_BAD_CFLAGS)
2588 AC_SUBST(GST_PLUGINS_BAD_CXXFLAGS)
2589 AC_SUBST(GST_PLUGINS_BAD_OBJCFLAGS)
2591 dnl LDFLAGS really should only contain flags, not libs - they get added before
2592 dnl whatevertarget_LIBS and -L flags here affect the rest of the linking
2593 GST_ALL_LDFLAGS="-no-undefined"
2594 if test "x${enable_Bsymbolic}" = "xyes"; then
2595 GST_ALL_LDFLAGS="$GST_ALL_LDFLAGS -Wl,-Bsymbolic-functions"
2597 AC_SUBST(GST_ALL_LDFLAGS)
2600 dnl linker flags shared by all libraries
2601 dnl LDFLAGS modifier defining exported symbols from built libraries
2602 dnl (export _gst_foo but not __gst_foo)
2604 AC_SUBST(GST_LIB_LDFLAGS)
2606 dnl this really should only contain flags, not libs - they get added before
2607 dnl whatevertarget_LIBS and -L flags here affect the rest of the linking
2608 GST_PLUGIN_LDFLAGS="-module -avoid-version $GST_ALL_LDFLAGS"
2609 AC_SUBST(GST_PLUGIN_LDFLAGS)
2611 dnl *** output files ***
2613 $MKDIR_P tests/check/orc
2622 gst/accurip/Makefile
2623 gst/adpcmdec/Makefile
2624 gst/adpcmenc/Makefile
2626 gst/videoframe_audiolevel/Makefile
2628 gst/audiobuffersplit/Makefile
2629 gst/audiofxbad/Makefile
2630 gst/audiomixer/Makefile
2631 gst/audiomixmatrix/Makefile
2632 gst/audiovisualizers/Makefile
2633 gst/autoconvert/Makefile
2635 gst/camerabin2/Makefile
2636 gst/coloreffects/Makefile
2637 gst/debugutils/Makefile
2638 gst/dvbsuboverlay/Makefile
2640 gst/faceoverlay/Makefile
2641 gst/festival/Makefile
2642 gst/fieldanalysis/Makefile
2643 gst/freeverb/Makefile
2645 gst/gaudieffects/Makefile
2646 gst/geometrictransform/Makefile
2650 gst/interlace/Makefile
2651 gst/ivfparse/Makefile
2653 gst/jp2kdecimator/Makefile
2654 gst/jpegformat/Makefile
2657 gst/mpegdemux/Makefile
2658 gst/mpegtsdemux/Makefile
2659 gst/mpegtsmux/Makefile
2660 gst/mpegtsmux/tsmux/Makefile
2661 gst/mpegpsmux/Makefile
2665 gst/pcapparse/Makefile
2668 gst/rawparse/Makefile
2669 gst/removesilence/Makefile
2671 gst/segmentclip/Makefile
2677 gst/timecode/Makefile
2678 gst/videofilters/Makefile
2679 gst/videoparsers/Makefile
2680 gst/videosignal/Makefile
2684 gst/compositor/Makefile
2686 gst-libs/gst/Makefile
2687 gst-libs/gst/adaptivedemux/Makefile
2688 gst-libs/gst/basecamerabinsrc/Makefile
2689 gst-libs/gst/insertbin/Makefile
2690 gst-libs/gst/interfaces/Makefile
2691 gst-libs/gst/isoff/Makefile
2692 gst-libs/gst/codecparsers/Makefile
2693 gst-libs/gst/mpegts/Makefile
2694 gst-libs/gst/uridownloader/Makefile
2695 gst-libs/gst/wayland/Makefile
2696 gst-libs/gst/webrtc/Makefile
2697 gst-libs/gst/player/Makefile
2698 gst-libs/gst/video/Makefile
2699 gst-libs/gst/audio/Makefile
2700 gst-libs/gst/opencv/Makefile
2702 sys/dshowdecwrapper/Makefile
2704 sys/acmmp3dec/Makefile
2705 sys/androidmedia/Makefile
2706 sys/applemedia/Makefile
2708 sys/d3dvideosink/Makefile
2709 sys/decklink/Makefile
2710 sys/directsound/Makefile
2711 sys/dshowsrcwrapper/Makefile
2712 sys/dshowvideosink/Makefile
2715 sys/ipcpipeline/Makefile
2720 sys/opensles/Makefile
2722 sys/tinyalsa/Makefile
2723 sys/uvch264/Makefile
2728 sys/winscreencap/Makefile
2730 tests/check/Makefile
2731 tests/files/Makefile
2732 tests/examples/Makefile
2733 tests/examples/avsamplesink/Makefile
2734 tests/examples/camerabin2/Makefile
2735 tests/examples/codecparsers/Makefile
2736 tests/examples/directfb/Makefile
2737 tests/examples/audiomixmatrix/Makefile
2738 tests/examples/gtk/Makefile
2739 tests/examples/ipcpipeline/Makefile
2740 tests/examples/mpegts/Makefile
2741 tests/examples/mxf/Makefile
2742 tests/examples/opencv/Makefile
2743 tests/examples/uvch264/Makefile
2744 tests/examples/waylandsink/Makefile
2745 tests/examples/webrtc/Makefile
2746 tests/icles/Makefile
2747 ext/voamrwbenc/Makefile
2748 ext/voaacenc/Makefile
2749 ext/assrender/Makefile
2753 ext/chromaprint/Makefile
2754 ext/colormanagement/Makefile
2758 ext/directfb/Makefile
2759 ext/wayland/Makefile
2767 ext/fluidsynth/Makefile
2775 ext/libde265/Makefile
2778 ext/modplug/Makefile
2779 ext/mpeg2enc/Makefile
2781 ext/musepack/Makefile
2786 ext/openexr/Makefile
2787 ext/openh264/Makefile
2788 ext/openjpeg/Makefile
2789 ext/openmpt/Makefile
2790 ext/openni2/Makefile
2794 ext/resindvd/Makefile
2797 ext/schroedinger/Makefile
2798 ext/smoothstreaming/Makefile
2799 ext/sndfile/Makefile
2800 ext/soundtouch/Makefile
2801 ext/spandsp/Makefile
2804 ext/teletextdec/Makefile
2807 ext/wildmidi/Makefile
2809 ext/vulkan/xcb/Makefile
2810 ext/vulkan/wayland/Makefile
2816 ext/webrtcdsp/Makefile
2820 docs/plugins/Makefile
2822 docs/version.entities
2824 pkgconfig/gstreamer-plugins-bad.pc
2825 pkgconfig/gstreamer-plugins-bad-uninstalled.pc
2826 pkgconfig/gstreamer-codecparsers.pc
2827 pkgconfig/gstreamer-codecparsers-uninstalled.pc
2828 pkgconfig/gstreamer-insertbin.pc
2829 pkgconfig/gstreamer-insertbin-uninstalled.pc
2830 pkgconfig/gstreamer-mpegts.pc
2831 pkgconfig/gstreamer-mpegts-uninstalled.pc
2832 pkgconfig/gstreamer-player.pc
2833 pkgconfig/gstreamer-player-uninstalled.pc
2834 pkgconfig/gstreamer-wayland.pc
2835 pkgconfig/gstreamer-wayland-uninstalled.pc
2836 pkgconfig/gstreamer-webrtc.pc
2837 pkgconfig/gstreamer-webrtc-uninstalled.pc
2838 pkgconfig/gstreamer-bad-video.pc
2839 pkgconfig/gstreamer-bad-video-uninstalled.pc
2840 pkgconfig/gstreamer-bad-audio.pc
2841 pkgconfig/gstreamer-bad-audio-uninstalled.pc
2848 AG_GST_OUTPUT_PLUGINS