3 dnl please read gstreamer/docs/random/autotools before changing this file
5 dnl initialize autoconf
6 dnl releases only do -Wall, cvs and prerelease does -Werror too
7 dnl use a three digit version number for releases, and four for cvs/pre
8 AC_INIT(GStreamer Good Plug-ins, 0.10.5.1,
9 http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer,
12 dnl initialize automake
15 dnl define PACKAGE_VERSION_* variables
18 dnl check if this is a release version
19 AS_NANO(GST_CVS="no", GST_CVS="yes")
21 dnl can autoconf find the source ?
22 AC_CONFIG_SRCDIR([gst/law/alaw.c])
24 dnl define the output header for config
25 AM_CONFIG_HEADER([config.h])
27 dnl AM_MAINTAINER_MODE only provides the option to configure to enable it
30 dnl sets host_* variables
33 dnl our libraries and install dirs use major.minor as a version
34 GST_MAJORMINOR=$PACKAGE_VERSION_MAJOR.$PACKAGE_VERSION_MINOR
35 dnl we override it here if we need to for the release candidate of new series
37 AC_SUBST(GST_MAJORMINOR)
39 dnl FIXME: this macro doesn't actually work;
40 dnl the generated libtool script has no support for the listed tags.
41 dnl So this needs to be fixed first if we want to use this
46 dnl *** required versions of GStreamer stuff ***
50 dnl *** autotools stuff ****
52 dnl allow for different autotools
53 AS_AUTOTOOLS_ALTERNATE
55 dnl Add parameters for aclocal
56 AC_SUBST(ACLOCAL_AMFLAGS, "-I m4 -I common/m4")
59 dnl the version check needs to stay here because autopoint greps for it
60 AM_GNU_GETTEXT_VERSION([0.11.5])
61 AM_GNU_GETTEXT([external])
62 GST_GETTEXT([gst-plugins-good-$GST_MAJORMINOR])
64 dnl *** check for arguments to configure ***
73 GST_ARG_WITH_PKG_CONFIG_PATH
74 GST_ARG_WITH_PACKAGE_NAME
75 GST_ARG_WITH_PACKAGE_ORIGIN
77 dnl these are all the gst plug-ins, compilable without additional libs
78 dnl videofilter is at the top because others depend on it
108 AC_SUBST(GST_PLUGINS_ALL)
110 GST_PLUGINS_SELECTED=""
113 AC_HELP_STRING([--with-plugins],
114 [comma-separated list of plug-ins to compile]),
115 [for i in `echo $withval | tr , ' '`; do
116 if echo $GST_PLUGINS_ALL | grep $i > /dev/null
118 GST_PLUGINS_SELECTED="$GST_PLUGINS_SELECTED $i"
120 echo "plug-in $i not recognized, ignoring..."
123 [GST_PLUGINS_SELECTED=$GST_PLUGINS_ALL])
125 dnl disable gst plugins we might not be able to build on this
126 dnl platform: udp and rtsp (ugly but minimally invasive)
127 dnl FIXME: maybe move to sys
128 AC_CHECK_HEADERS([sys/socket.h], HAVE_SYS_SOCKET_H=yes)
129 AC_CHECK_HEADERS([winsock2.h], HAVE_WINSOCK2_H=yes)
131 if test "x$HAVE_SYS_SOCKET_H" != "xyes" -a "x$HAVE_WINSOCK2_H" != "xyes"; then
132 GST_PLUGINS_SELECTED=`echo $GST_PLUGINS_SELECTED | $SED -e s/udp//`
133 GST_PLUGINS_SELECTED=`echo $GST_PLUGINS_SELECTED | $SED -e s/rtsp//`
136 if test "x$HAVE_WINSOCK2_H" = "xyes"; then
137 WIN32_LIBS="-lws2_32"
141 dnl ext plug-ins; plug-ins that have external dependencies
142 GST_CHECK_FEATURE(EXTERNAL, [building of plug-ins with external deps],,
143 [HAVE_EXTERNAL=yes], enabled,
145 AC_MSG_NOTICE(building external plug-ins)
148 AC_MSG_NOTICE(all plug-ins with external dependencies will not be built)
151 AM_CONDITIONAL(BUILD_EXTERNAL, test "x$BUILD_EXTERNAL" = "xyes")
153 dnl experimental plug-ins; stuff that hasn't had the dust settle yet
154 GST_CHECK_FEATURE(EXPERIMENTAL, [enable building of experimental plug-ins],,
155 [HAVE_EXPERIMENTAL=yes],disabled,
157 AC_MSG_WARN(building experimental plug-ins)
160 AC_MSG_NOTICE(not building experimental plug-ins)
162 GST_PLUGINS_SELECTED=`echo $GST_PLUGINS_SELECTED | $SED -e s/monoscope//`
165 AC_SUBST(GST_PLUGINS_SELECTED)
167 dnl *** checks for platform ***
169 dnl * hardware/architecture *
171 dnl common/m4/gst-arch.m4
175 dnl Determine endianness
178 dnl *** checks for programs ***
183 dnl determine c++ compiler
185 dnl determine if c++ is available on this system
186 AC_CHECK_PROG(HAVE_CXX, $CXX, yes, no)
188 dnl determine c++ preprocessor
189 dnl FIXME: do we need this ?
194 AC_PATH_PROG(VALGRIND_PATH, valgrind, no)
195 AM_CONDITIONAL(HAVE_VALGRIND, test ! "x$VALGRIND_PATH" = "xno")
197 dnl check for gconftool-2
198 dnl this macro defines an am conditional, so it needs to be run always
201 dnl check for documentation tools
203 AS_PATH_PYTHON([2.1])
204 GST_PLUGIN_DOCS([1.3],[2.1])
206 dnl *** checks for libraries ***
208 dnl *** checks for header files ***
210 dnl check if we have ANSI C header files
213 dnl used in gst/rtp/gstasteriskh263.c
214 AC_CHECK_HEADERS([netinet/in.h])
215 AC_CHECK_HEADERS([winsock2.h])
216 AM_CONDITIONAL(HAVE_WINSOCK2_H, test "x$HAVE_WINSOCK2_H" = "xyes")
218 dnl *** checks for types/defines ***
220 dnl Check for FIONREAD ioctl declaration. This check is needed
221 dnl for the UDP plugin to build on Solaris
224 dnl *** checks for structures ***
226 dnl *** checks for compiler characteristics ***
228 dnl FIXME: check if this is used; was used for floatcast.h in base
229 dnl Check for fast float to int casting as defined in C99
233 dnl *** checks for library functions ***
235 dnl Check for mmap (needed by electricfence plugin)
237 AM_CONDITIONAL(GST_HAVE_MMAP, test "x$ac_cv_func_mmap_fixed_mapped" == "xyes")
239 dnl *** checks for dependancy libraries ***
242 GST_GLIB_CHECK([2.6])
244 dnl liboil is required
245 PKG_CHECK_MODULES(LIBOIL, liboil-0.3 >= 0.3.2, HAVE_LIBOIL=yes, HAVE_LIBOIL=no)
246 if test "x${HAVE_LIBOIL}" != xyes ; then
247 AC_ERROR([liboil-0.3 is required])
250 dnl checks for gstreamer
251 dnl uninstalled is selected preferentially -- see pkg-config(1)
252 GST_CHECK_GST($GST_MAJORMINOR, [$GST_REQ])
253 GST_CHECK_GST_BASE($GST_MAJORMINOR, [$GST_REQ])
254 GST_CHECK_GST_GDP($GST_MAJORMINOR, [$GST_REQ])
255 GST_CHECK_GST_CONTROLLER($GST_MAJORMINOR, [$GST_REQ])
256 GST_CHECK_GST_CHECK($GST_MAJORMINOR, [$GST_REQ], no)
257 GST_CHECK_GST_PLUGINS_BASE($GST_MAJORMINOR, [$GSTPB_REQ])
259 GST_TOOLS_DIR=`pkg-config --variable=toolsdir gstreamer-$GST_MAJORMINOR`
260 if test -z $GST_TOOLS_DIR; then
261 AC_MSG_ERROR([no tools dir defined in GStreamer pkg-config file; core upgrade needed.])
263 AC_SUBST(GST_TOOLS_DIR)
265 AC_MSG_NOTICE(Using GStreamer Core Plugins in $GST_PLUGINS_DIR)
266 AC_MSG_NOTICE(Using GStreamer Base Plugins in $GSTPB_PLUGINS_DIR)
268 dnl FIXME: get rid of this by making sure gstreamer-check brings it in
269 dnl check for "check", unit testing library/header
270 AM_PATH_CHECK(0.9.2, HAVE_CHECK=yes, HAVE_CHECK=no)
271 AM_CONDITIONAL(HAVE_CHECK, test "x$HAVE_CHECK" = "xyes")
273 dnl GTK is optional and used in examples
275 PKG_CHECK_MODULES(GTK2, gtk+-2.0 >= 2.2.0, HAVE_GTK_22=yes, HAVE_GTK_22=no)
276 if test "x$HAVE_GTK_22" = "xyes"; then
278 GTK_VERSION=`$PKG_CONFIG --variable=gtk_binary_version gtk+-2.0`
279 AC_SUBST(GTK_VERSION)
280 GTK_PREFIX=`$PKG_CONFIG --variable=prefix gdk-pixbuf-2.0`
281 AC_SUBST(GTK_BASE_DIR)
282 GDK_PIXBUF_LIBDIR=`$PKG_CONFIG --variable=libdir gdk-pixbuf-2.0`
283 GDK_PIXBUF_PREFIXDIR=`$PKG_CONFIG --variable=prefix gdk-pixbuf-2.0`
284 AC_SUBST(GTK_BASE_DIR)
286 PKG_CHECK_MODULES(GTK2, gtk+-2.0, HAVE_GTK_20=yes, HAVE_GTK_20=no)
288 if test "x$HAVE_GTK_20" = "xyes"; then
291 GTK_CFLAGS=$GTK2_CFLAGS
296 AM_CONDITIONAL(HAVE_GTK, test "x$HAVE_GTK" = "xyes")
298 dnl should we install schemas ?
299 translit(dnm, m, l) AM_CONDITIONAL(USE_GCONFTOOL, true)
300 GST_CHECK_FEATURE(GCONFTOOL, [GConf schemas], , [
301 AC_PATH_PROG(GCONFTOOL, gconftool-2, no)
302 if test x$GCONFTOOL = xno; then
303 AC_MSG_WARN(Not installing GConf schemas)
308 AC_SUBST(HAVE_GCONFTOOL)
311 dnl *** set variables based on configure arguments ***
313 dnl set license and copyright notice
315 AC_DEFINE_UNQUOTED(GST_LICENSE, "$GST_LICENSE", [GStreamer license])
316 AC_SUBST(GST_LICENSE)
318 dnl set location of plugin directory
321 dnl define an ERROR_CFLAGS Makefile variable
322 GST_SET_ERROR_CFLAGS($GST_CVS)
324 dnl define correct level for debugging messages
325 GST_SET_LEVEL_DEFAULT($GST_CVS)
330 dnl *** sys plug-ins ***
333 AC_MSG_NOTICE([Checking libraries for plugins in sys/])
336 dnl *** OSS audio *** (Linux, *BSD)
337 translit(dnm, m, l) AM_CONDITIONAL(USE_OSS, true)
338 GST_CHECK_FEATURE(OSS, [OSS audio], ossaudio, [
340 dnl Linux and newer BSD versions :
341 AC_CHECK_HEADER(sys/soundcard.h, [
342 AC_DEFINE(HAVE_OSS_INCLUDE_IN_SYS,, [Define if OSS includes are in /sys/])
344 dnl Some old BSD versions and also newer OpenBSD versions :
345 AC_CHECK_HEADER(soundcard.h, [
346 AC_DEFINE(HAVE_OSS_INCLUDE_IN_ROOT,, [Define if OSS includes are in /])
348 dnl Some old BSD versions :
349 AC_CHECK_HEADER(machine/soundcard.h, [
350 AC_DEFINE(HAVE_OSS_INCLUDE_IN_MACHINE,,
351 [Define if OSS includes are in /machine/])
359 dnl *** Sun Audio ***
360 translit(dnm, m, l) AM_CONDITIONAL(USE_SUNAUDIO, true)
361 GST_CHECK_FEATURE(SUNAUDIO, [Sun Audio], sunaudio, [
362 AC_CHECK_HEADER(sys/audioio.h, HAVE_SUNAUDIO="yes", HAVE_SUNAUDIO="no")
365 dnl *** Video 4 Linux 2 ***
366 dnl for information about the header/define, see sys/v4l2/gstv4l2element.h
367 dnl renamed to GST_V4L2 because of some conflict with kernel headers
368 translit(dnm, m, l) AM_CONDITIONAL(USE_GST_V4L2, true)
369 GST_CHECK_FEATURE(GST_V4L2, [Video 4 Linux 2], v4l2src, [
370 AC_MSG_CHECKING([Checking for uptodate v4l2 installation])
372 #include <sys/types.h>
373 #include <linux/types.h>
374 #define _LINUX_TIME_H
376 #include <linux/videodev2.h>
377 #if defined(V4L2_MAJOR_VERSION) || defined(V4L2_MINOR_VERSION)
378 #error too early v4l2 version or no v4l2 at all
388 AC_CHECK_HEADER(linux/videodev2.h,
390 AC_MSG_WARN([video4linux2 headers were found, but they're old.])
391 AC_MSG_WARN([Please update v4l2 to compile the v4l2 plugins])
393 AC_MSG_WARN([video4linux2 was not found])
397 if [ test x$HAVE_GST_V4L2 = xyes ]; then
398 dnl check for missing v4l2_buffer declaration (see #135919)
400 AC_MSG_CHECKING(struct v4l2_buffer declaration)
402 #include <sys/types.h>
403 #include <linux/types.h>
404 #define _LINUX_TIME_H
406 #include <linux/videodev2.h>
408 struct v4l2_buffer buf;
411 ], [ AC_MSG_RESULT(yes) ], [ MISSING_DECL=1 && AC_MSG_RESULT(no) ])
412 if [ test x$MISSING_DECL = x1 ]; then
413 AC_DEFINE(GST_V4L2_MISSING_BUFDECL, 1, [struct v4l2_buffer missing])
416 dnl check for XOverlay libraries
422 translit(dnm, m, l) AM_CONDITIONAL(USE_X, true)
423 GST_CHECK_FEATURE(X, [X libraries and plugins],
427 dnl now try to find the HEADER
428 ac_cflags_save="$CFLAGS"
429 ac_cppflags_save="$CPPFLAGS"
430 CFLAGS="$CFLAGS $X_CFLAGS"
431 CPPFLAGS="$CPPFLAGS $X_CFLAGS"
432 AC_CHECK_HEADER(X11/Xlib.h, HAVE_X="yes", HAVE_X="no")
434 if test "x$HAVE_X" = "xno"
436 AC_MSG_NOTICE([cannot find X11 development files])
438 dnl this is much more than we want
439 X_LIBS="$X_LIBS $X_PRE_LIBS $X_EXTRA_LIBS"
440 dnl AC_PATH_XTRA only defines the path needed to find the X libs,
441 dnl it does not add the libs; therefore we add them here
442 X_LIBS="$X_LIBS -lX11"
447 PKG_CHECK_MODULES(XFIXES, xfixes, HAVE_XFIXES="yes", HAVE_XFIXES="no")
448 if test "x$HAVE_XFIXES" = "xyes"
450 XFIXES_CFLAGS="-DHAVE_XFIXES $XFIXES_CFLAGS"
452 AC_SUBST(XFIXES_LIBS)
453 AC_SUBST(XFIXES_CFLAGS)
455 dnl check for Xdamage
456 PKG_CHECK_MODULES(XDAMAGE, xdamage, HAVE_XDAMAGE="yes", HAVE_XDAMAGE="no")
457 if test "x$HAVE_XDAMAGE" = "xyes"
459 XDAMAGE_CFLAGS="-DHAVE_XDAMAGE $XDAMAGE_CFLAGS"
461 AC_SUBST(XDAMAGE_LIBS)
462 AC_SUBST(XDAMAGE_CFLAGS)
465 CFLAGS="$ac_cflags_save"
466 CPPFLAGS="$ac_cppflags_save"
469 dnl FIXME: this should be rolled into the test above, it's just an additional
470 dnl feature of the ximagesrc plug-in
471 dnl This is the same as in gst-plugins-base
473 translit(dnm, m, l) AM_CONDITIONAL(USE_XSHM, true)
474 GST_CHECK_FEATURE(XSHM, [X Shared Memory extension], , [
475 if test x$HAVE_X = xyes; then
476 AC_CHECK_LIB(Xext, XShmAttach,
477 HAVE_XSHM="yes", HAVE_XSHM="no",
479 if test "x$HAVE_XSHM" = "xyes"; then
482 dnl On AIX, it is in XextSam instead, but we still need -lXext
483 AC_CHECK_LIB(XextSam, XShmAttach,
484 HAVE_XSHM="yes", HAVE_XSHM="no",
486 if test "x$HAVE_XSHM" = "xyes"; then
487 XSHM_LIBS="-lXext -lXextSam"
496 dnl for V4L2, we also need to know if we have XVIDEO
497 translit(dnm, m, l) AM_CONDITIONAL(USE_XVIDEO, true)
498 GST_CHECK_FEATURE(XVIDEO, [X11 XVideo extensions],
503 dnl *** ext plug-ins ***
504 dnl keep this list sorted alphabetically !
506 if test "x$BUILD_EXTERNAL" = "xyes"; then
509 AC_MSG_NOTICE([Checking libraries for plugins in ext/])
513 translit(dnm, m, l) AM_CONDITIONAL(USE_AALIB, true)
514 GST_CHECK_FEATURE(AALIB, [aalib ASCII Art library], aasink, [
515 AM_PATH_AALIB(, HAVE_AALIB=yes, HAVE_AALIB=no)
516 AS_SCRUB_INCLUDE(AALIB_CFLAGS)
520 translit(dnm, m, l) AM_CONDITIONAL(USE_ANNODEX, true)
521 GST_CHECK_FEATURE(ANNODEX, [XML library], annodex, [
522 GST_PKG_CHECK_MODULES(ANNODEX, libxml-2.0 >= 2.4.9)
526 translit(dnm, m, l) AM_CONDITIONAL(USE_CAIRO, true)
527 GST_CHECK_FEATURE(CAIRO, [Cairo graphics rendering], cairo, [
528 GST_PKG_CHECK_MODULES(CAIRO, cairo >= 1.0.0)
532 translit(dnm, m, l) AM_CONDITIONAL(USE_CDIO, true)
533 GST_CHECK_FEATURE(CDIO, [cdio library], cdio, [
534 GST_PKG_CHECK_MODULES(CDIO, libcdio >= 0.71)
538 translit(dnm, m, l) AM_CONDITIONAL(USE_ESD, true)
539 GST_CHECK_FEATURE(ESD, [ESounD sound daemon], esdsink, [
540 GST_PKG_CHECK_MODULES(ESD, esound >= 0.2.12)
541 if test $HAVE_ESD = no
543 AM_PATH_ESD(0.2.12, HAVE_ESD="yes")
544 AS_SCRUB_INCLUDE(ESD_CFLAGS)
549 translit(dnm, m, l) AM_CONDITIONAL(USE_FLAC, true)
550 GST_CHECK_FEATURE(FLAC, [FLAC lossless audio], flac, [
551 GST_CHECK_LIBHEADER(FLAC, FLAC, FLAC__seekable_stream_encoder_new, -lm, FLAC/all.h, FLAC_LIBS="-lFLAC -lm")
552 dnl API change in FLAC 1.1.1, so require that...
553 dnl (this check will also fail with FLAC 1.1.3 which changed API again
554 dnl and with which our plugin does not compile or work yet)
555 if test x$HAVE_FLAC = xyes; then
556 AC_CHECK_DECL(FLAC__SEEKABLE_STREAM_ENCODER_TELL_ERROR,
557 HAVE_FLAC="yes", HAVE_FLAC="no", [
558 #include <FLAC/seekable_stream_encoder.h>
565 translit(dnm, m, l) AM_CONDITIONAL(USE_GCONF, true)
566 GST_CHECK_FEATURE(GCONF, [GConf libraries], gconfelements, [
567 GST_PKG_CHECK_MODULES(GCONF, gconf-2.0)
570 dnl *** GDK pixbuf ***
571 translit(dnm, m, l) AM_CONDITIONAL(USE_GDK_PIXBUF, true)
572 GST_CHECK_FEATURE(GDK_PIXBUF, [GDK pixbuf], gdkpixbuf, [
573 if test $HAVE_GTK_22 = "yes"; then HAVE_GDK_PIXBUF=yes; fi;
577 translit(dnm, m, l) AM_CONDITIONAL(USE_HAL, true)
578 GST_CHECK_FEATURE(HAL, [HAL libraries], halelements, [
579 GST_PKG_CHECK_MODULES(HAL, [hal >= 0.5.6, dbus-1 >= 0.32])
583 dnl FIXME: we could use header checks here as well IMO
584 translit(dnm, m, l) AM_CONDITIONAL(USE_JPEG, true)
585 GST_CHECK_FEATURE(JPEG, [jpeg library], jpeg, [
586 AC_ARG_WITH(jpeg-mmx,
587 [ --with-jpeg-mmx, path to MMX'ified JPEG library])
589 if test x$with_jpeg_mmx != x; then
590 LIBS="$LIBS -L$with_jpeg_mmx"
592 AC_CHECK_LIB(jpeg-mmx, jpeg_set_defaults, HAVE_JPEG="yes", HAVE_JPEG="no")
593 JPEG_LIBS="$LIBS -ljpeg-mmx"
595 if test x$HAVE_JPEG != xyes; then
596 AC_CHECK_LIB(jpeg, jpeg_set_defaults, HAVE_JPEG="yes", HAVE_JPEG="no")
603 translit(dnm, m, l) AM_CONDITIONAL(USE_LADSPA, true)
604 GST_CHECK_FEATURE(LADSPA, [ladspa], ladspa, [
605 AC_CHECK_HEADER(ladspa.h, HAVE_LADSPA="yes", HAVE_LADSPA="no")
609 translit(dnm, m, l) AM_CONDITIONAL(USE_LIBCACA, true)
610 GST_CHECK_FEATURE(LIBCACA, [libcaca coloured ASCII art], cacasink, [
611 GST_PKG_CHECK_MODULES(LIBCACA, caca)
612 dnl only newer versions of libcaca ship caca.pc, so try caca-config as well
613 if test "x$HAVE_LIBCACA" != "xyes"; then
614 GST_CHECK_CONFIGPROG(LIBCACA, caca-config)
615 dnl see if it compilation works too, might not if we are cross-compiling
616 if test "x$HAVE_LIBCACA" = "xyes"; then
617 AC_CHECK_LIB([caca], [caca_init], [HAVE_LIBCACA=yes],
618 [HAVE_LIBCACA=no], [$LIBCACA_LIBS])
624 translit(dnm, m, l) AM_CONDITIONAL(USE_LIBDV, true)
625 GST_CHECK_FEATURE(LIBDV, [libdv DV demuxer/decoder], dv, [
626 GST_PKG_CHECK_MODULES(LIBDV, libdv >= 0.100)
630 translit(dnm, m, l) AM_CONDITIONAL(USE_LIBPNG, true)
631 GST_CHECK_FEATURE(LIBPNG, [Portable Network Graphics library], png, [
632 GST_PKG_CHECK_MODULES(LIBPNG, libpng12)
636 translit(dnm, m, l) AM_CONDITIONAL(USE_DV1394, true)
637 GST_CHECK_FEATURE(DV1394, [raw1394 and avc1394 library], 1394, [
638 dnl first test for libraw1394 >= 1.2.1
639 GST_PKG_CHECK_MODULES(RAW1394, libraw1394 >= 1.2.1)
640 GST_PKG_CHECK_MODULES(LIBIEC61883, libiec61883 >= 1.0.0)
641 dnl now see how far we got
642 if test x$HAVE_RAW1394 = xyes && \
643 test x$HAVE_LIBIEC61883 = xyes; then
644 GST_CHECK_LIBHEADER(AVC1394,
645 avc1394, avc1394_send_command, $RAW1394_LIBS,
646 libavc1394/avc1394.h, AVC1394_LIBS="-lavc1394")
647 GST_CHECK_LIBHEADER(ROM1394,
648 rom1394, rom1394_free_directory, $RAW1394_LIBS,
649 libavc1394/rom1394.h, ROM1394_LIBS="-lrom1394")
650 if test x$HAVE_AVC1394 = xyes && \
651 test x$HAVE_AVC1394 = xyes && \
652 test x$HAVE_ROM1394 = xyes; then
654 DV1394_LIBS="$RAW1394_LIBS $AVC1394_LIBS $ROM1394_LIBS $LIBIEC61883_LIBS"
655 DV1394_CFLAGS="$RAW1394_CFLAGS $LIBIEC61883_CFLAGS -DHAVE_LIBIEC61883"
656 AC_SUBST(DV1394_CFLAGS)
657 AC_SUBST(DV1394_LIBS)
660 if test x$HAVE_RAW1394 = xno; then
661 GST_PKG_CHECK_MODULES(RAW1394, libraw1394 >= 1.1.0)
662 GST_CHECK_LIBHEADER(AVC1394,
663 avc1394, avc1394_send_command, $RAW1394_LIBS,
664 libavc1394/avc1394.h, AVC1394_LIBS="-lavc1394")
665 GST_CHECK_LIBHEADER(ROM1394,
666 rom1394, rom1394_free_directory, $RAW1394_LIBS,
667 libavc1394/rom1394.h, ROM1394_LIBS="-lrom1394")
668 if test x$HAVE_RAW1394 = xyes && \
669 test x$HAVE_AVC1394 = xyes && \
670 test x$HAVE_ROM1394 = xyes; then
672 DV1394_LIBS="$RAW1394_LIBS $AVC1394_LIBS $ROM1394_LIBS"
673 DV1394_CFLAGS="$RAW1394_CFLAGS"
674 if test x$HAVE_LIBIEC61883 = xyes; then
675 DV1394_CFLAGS="$RAW1394_CFLAGS $LIBIEC61883_CFLAGS -DHAVE_LIBIEC61883"
676 DV1394_LIBS="$DV1394_LIBS $LIBIEC61883_LIBS"
678 AC_SUBST(DV1394_CFLAGS)
679 AC_SUBST(DV1394_LIBS)
686 translit(dnm, m, l) AM_CONDITIONAL(USE_SHOUT2, true)
687 GST_CHECK_FEATURE(SHOUT2, [Shoutcast/Icecast client library], shout2, [
688 GST_PKG_CHECK_MODULES(SHOUT2, shout >= 2.0)
689 if test $HAVE_SHOUT2 = no
691 AM_PATH_SHOUT2(HAVE_SHOUT2="yes")
692 AC_SUBST(SHOUT2_CFLAGS)
693 AC_SUBST(SHOUT2_LIBS)
697 dnl *** speex >= 1.0.4 or >= 1.1.5 ***
698 dnl 1.1.4 and earlier were not API/ABI compatible with 1.0
699 dnl 1.1.6 is the first to use a .pc/pkg-config file ***
700 dnl speex_jitter.h is 1.1.x only
701 translit(dnm, m, l) AM_CONDITIONAL(USE_SPEEX, true)
702 GST_CHECK_FEATURE(SPEEX, [speex speech codec], speex, [
703 GST_PKG_CHECK_MODULES(SPEEX, speex >= 1.1.6)
704 if test $HAVE_SPEEX = no
706 GST_CHECK_LIBHEADER(SPEEX, speex, speex_bits_init, , speex/speex.h, [
707 AC_CHECK_HEADER(speex/speex_jitter.h, [
709 GST_CHECK_LIBHEADER(SPEEX, speex, speex_encode_int, , speex/speex.h, [
710 dnl speex 1.1.5 or + :
713 AC_SUBST(SPEEX_CFLAGS)
720 AC_CHECK_DECL(SPEEX_GET_LOOKAHEAD, [
724 AC_SUBST(SPEEX_CFLAGS)
727 AC_DEFINE_UNQUOTED(SPEEX_1_0, 1,
728 [defined if speex 1.0.x API detected])
731 AC_MSG_NOTICE(You need at least 1.0.4 to compile the speex plugin)
733 #include <speex/speex.h>
741 translit(dnm, m, l) AM_CONDITIONAL(USE_TAGLIB, true)
742 GST_CHECK_FEATURE(TAGLIB, [taglib tagging library], taglib, [
743 GST_PKG_CHECK_MODULES(TAGLIB, taglib >= 1.4)
744 if test "x$HAVE_CXX" != "xyes"; then
746 AC_MSG_NOTICE([Not building taglib plugin: no C++ compiler found])
750 dnl *** id3demux prefers to have zlib ***
751 translit(dnm, m, l) AM_CONDITIONAL(USE_ZLIB, true)
752 GST_CHECK_FEATURE(ZLIB, [zlib support for id3demux],, [
753 GST_CHECK_LIBHEADER(ZLIB,
754 z, uncompress,, zlib.h, [
763 dnl not building plugins with external dependencies,
764 dnl but we still need to set the conditionals
765 AM_CONDITIONAL(USE_GCONFTOOL, false)
766 AM_CONDITIONAL(USE_OSS, false)
767 AM_CONDITIONAL(USE_SUNAUDIO, false)
768 AM_CONDITIONAL(USE_X, false)
769 AM_CONDITIONAL(USE_XSHM, false)
770 AM_CONDITIONAL(USE_AALIB, false)
771 AM_CONDITIONAL(USE_ANNODEX, false)
772 AM_CONDITIONAL(USE_CAIRO, false)
773 AM_CONDITIONAL(USE_CDIO, false)
774 AM_CONDITIONAL(USE_ESD, false)
775 AM_CONDITIONAL(USE_FLAC, false)
776 AM_CONDITIONAL(USE_GCONF, false)
777 AM_CONDITIONAL(USE_GDK_PIXBUF, false)
778 AM_CONDITIONAL(USE_HAL, false)
779 AM_CONDITIONAL(USE_JPEG, false)
780 AM_CONDITIONAL(USE_LADSPA, false)
781 AM_CONDITIONAL(USE_LIBCACA, false)
782 AM_CONDITIONAL(USE_LIBDV, false)
783 AM_CONDITIONAL(USE_LIBPNG, false)
784 AM_CONDITIONAL(USE_DV1394, false)
785 AM_CONDITIONAL(USE_SHOUT2, false)
786 AM_CONDITIONAL(USE_SPEEX, false)
787 AM_CONDITIONAL(USE_TAGLIB, false)
788 AM_CONDITIONAL(USE_ZLIB, false)
790 fi dnl of EXT plugins
792 dnl *** finalize CFLAGS, LDFLAGS, LIBS
795 dnl GST_OPTION_CFLAGS: common flags for profiling, debugging, errors, ...
796 dnl GST_*: flags shared by all built objects
797 dnl GST_ALL_LDFLAGS: linker flags shared by all
798 dnl GST_LIB_LDFLAGS: not needed, we don't install libraries
799 dnl GST_LT_LDFLAGS: library versioning of our libraries
800 dnl GST_PLUGIN_LDFLAGS: flags to be used for all plugins
802 dnl GST_OPTION_CFLAGS
803 if test "x$USE_DEBUG" = xyes; then
806 AC_SUBST(PROFILE_CFLAGS)
808 DEPRECATED_CFLAGS="-DGST_DISABLE_DEPRECATED"
809 AC_SUBST(DEPRECATED_CFLAGS)
811 dnl every flag in GST_OPTION_CFLAGS can be overridden at make time
812 GST_OPTION_CFLAGS="\$(ERROR_CFLAGS) \$(DEBUG_CFLAGS) \$(PROFILE_CFLAGS) \$(GCOV_CFLAGS) \$(OPT_CFLAGS) \$(DEPRECATED_CFLAGS)"
813 AC_SUBST(GST_OPTION_CFLAGS)
815 dnl our libraries need to be versioned correctly
816 AC_SUBST(GST_LT_LDFLAGS)
818 dnl FIXME: do we want to rename to GST_ALL_* ?
819 dnl prefer internal headers to already installed ones
820 dnl also add builddir include for enumtypes and marshal
821 dnl add ERROR_CFLAGS, but overridable
822 GST_CFLAGS="-I\$(top_srcdir)/gst-libs -I\$(top_builddir)/gst-libs $GST_CFLAGS \$(GST_OPTION_CFLAGS)"
826 dnl LDFLAGS really should only contain flags, not libs - they get added before
827 dnl whatevertarget_LIBS and -L flags here affect the rest of the linking
828 GST_ALL_LDFLAGS="-no-undefined"
829 AC_SUBST(GST_ALL_LDFLAGS)
831 dnl this really should only contain flags, not libs - they get added before
832 dnl whatevertarget_LIBS and -L flags here affect the rest of the linking
833 GST_PLUGIN_LDFLAGS="-module -avoid-version -export-symbols-regex '^[_]*gst_plugin_desc\$\$' $GST_ALL_LDFLAGS"
834 AC_SUBST(GST_PLUGIN_LDFLAGS)
836 dnl *** output files ***
838 dnl keep this alphabetic per directory, please
846 gst/autodetect/Makefile
851 gst/id3demux/Makefile
852 gst/icydemux/Makefile
856 gst/matroska/Makefile
857 gst/monoscope/Makefile
858 gst/multipart/Makefile
863 gst/videobox/Makefile
864 gst/videofilter/Makefile
865 gst/videomixer/Makefile
867 gst/wavparse/Makefile
879 ext/gdk_pixbuf/Makefile
890 sys/sunaudio/Makefile
897 tests/examples/Makefile
898 tests/examples/level/Makefile
900 gconf/gstreamer.schemas
905 docs/plugins/Makefile
906 docs/version.entities
907 win32/common/config.h
909 pkgconfig/gstreamer-plugins-good-uninstalled.pc
910 gst-plugins-good.spec