1 dnl autoconf configuration file for plugins
3 dnl FIXME take something else ?
4 AC_CONFIG_SRCDIR([COPYING])
6 AC_CANONICAL_TARGET([])
8 AM_CONFIG_HEADER(config.h)
14 dnl we use a datestamped release tag and a fourth version ".1" number
15 dnl during CVS development
16 GST_VERSION_RELEASE=`date +%Y%m%d`
17 GST_VERSION=$GST_VERSION_MAJOR.$GST_VERSION_MINOR.$GST_VERSION_MICRO.1
18 dnl we use a normal release tag increased manually when releasing
19 dnl GST_VERSION_RELEASE=1
20 dnl GST_VERSION=$GST_VERSION_MAJOR.$GST_VERSION_MINOR.$GST_VERSION_MICRO
25 AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE")
26 AC_DEFINE_UNQUOTED(VERSION, "$VERSION")
29 AC_DEFINE_UNQUOTED(GST_VERSION_RELEASE, "$GST_VERSION_RELEASE")
30 AC_SUBST(GST_VERSION_RELEASE)
36 GST_LIBVERSION=$GST_CURRENT:$GST_REVISION:$GST_AGE
38 AM_INIT_AUTOMAKE($PACKAGE, $VERSION)
39 dnl Add parameters for aclocal
40 dnl (This must come after AM_INIT_AUTOMAKE, since it modifies ACLOCAL)
41 ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
43 AC_SUBST(GST_VERSION_MAJOR)
44 AC_SUBST(GST_VERSION_MINOR)
45 AC_SUBST(GST_VERSION_MICRO)
49 AC_SUBST(GST_REVISION)
51 AC_SUBST(GST_LIBVERSION)
63 dnl We disable static building for development, for time savings
64 dnl *NOTE*: dnl this line before release, so release does static too
71 dnl ###########################################
72 dnl # Super Duper options for plugin building #
73 dnl ###########################################
75 dnl experimental plugins; stuff that hasn't had the dust settle yet
76 dnl read 'builds, but might not work'
77 GST_CHECK_FEATURE(EXPERIMENTAL, [enable building of experimental plugins],,
78 [HAVE_EXPERIMENTAL=yes],disabled,
80 AC_MSG_WARN(building experimental plugins)
84 AC_MSG_NOTICE(not building experimental plugins)
89 dnl broken plugins; stuff that doesn't seem to build at the moment
90 GST_CHECK_FEATURE(BROKEN, [enable building of broken plugins],,
91 HAVE_BROKEN=yes,disabled,
93 AC_MSG_WARN(building broken plugins)
96 dnl AC_MSG_NOTICE(actually there are no broken plugins at the moment)
100 AC_MSG_NOTICE(not building broken plugins)
103 dnl ##############################
104 dnl # Do automated configuration #
105 dnl ##############################
110 dnl modify pkg-config path
111 AC_ARG_WITH(pkg-config-path,
112 AC_HELP_STRING([--with-pkg-config-path],[colon-separated list of pkg-config(1) dirs]),
113 [export PKG_CONFIG_PATH=${withval}])
116 AC_PATH_PROG(NASM_PATH, nasm, no)
118 if test x$NASM_PATH = xno; then
119 AC_MSG_WARN(Couldn't find nasm)
122 AC_DEFINE(HAVE_NASM, 1, [Define if NASM, the netwide assembler, is available])
126 dnl check for gstreamer; uninstalled is selected preferentially -- see pkg-config(1)
127 PKG_CHECK_MODULES(GST, gstreamer >= 0.3.1, HAVE_GST="yes", HAVE_GST="no")
129 if test "x$HAVE_GST" = "xno"; then
130 AC_MSG_ERROR(no GStreamer found)
133 dnl Set up conditionals for (target) architecture:
134 dnl ==============================================
137 case "x${target_cpu}" in
138 xi?86 | k?) HAVE_CPU_I386=yes
139 AC_DEFINE(HAVE_CPU_I386, 1, [Define if the target CPU is an x86])
140 dnl FIXME could use some better detection
142 case "x${target_cpu}" in
144 *) AC_DEFINE(HAVE_RDTSC) ;;
146 xpowerpc) HAVE_CPU_PPC=yes
147 AC_DEFINE(HAVE_CPU_PPC, 1, [Define if the target CPU is a PPC]) ;;
148 xalpha) HAVE_CPU_ALPHA=yes
149 AC_DEFINE(HAVE_CPU_ALPHA, 1, [Define if the target CPU is an Alpha]) ;;
150 xarm*) HAVE_CPU_ARM=yes
151 AC_DEFINE(HAVE_CPU_ARM, 1, [Define if the target CPU is an ARM]) ;;
152 xsparc*) HAVE_CPU_SPARC=yes
153 AC_DEFINE(HAVE_CPU_SPARC, 1, [Define if the target CPU is a PPC]) ;;
154 xmips*) HAVE_CPU_MIPS=yes
155 AC_DEFINE(HAVE_CPU_MIPS, 1, [Define if the target CPU is a MIPS]) ;;
156 xhppa*) HAVE_CPU_HPPA=yes
157 AC_DEFINE(HAVE_CPU_HPPA, 1, [Define if the target CPU is a HPPA]) ;;
160 dnl Determine endianness
163 dnl Check for essential libraries first:
164 dnl ====================================
166 if test -n "`echo $GST_CFLAGS | grep USE_GLIB2`"; then
172 dnl needed for some plugins and demos, now's a nice time to check for gtk
173 if test x$USE_GLIB2 = xno; then
175 AC_MSG_ERROR(Cannot find gtk: Is gtk-config in path?))
179 PKG_CHECK_MODULES(GTK2, gtk+-2.0, HAVE_GTK=yes, HAVE_GTK=no)
181 GTK_CFLAGS=$GTK2_CFLAGS
187 dnl Check for X11 extensions
189 if test "-DX_DISPLAY_MISSING" = "$X_CFLAGS"; then
190 AC_MSG_NOTICE([cannot find X11, the build system needs fixage])
194 AC_SUBST(X_EXTRA_LIBS)
197 dnl ==========================================================================
198 dnl ============================= gst plugins ================================
199 dnl ==========================================================================
200 GST_PLUGIN_LDFLAGS='-module -avoid-version'
201 AC_SUBST(GST_PLUGIN_LDFLAGS)
204 ac3parse adder audioscale auparse avi chart\
205 cutter deinterlace flx goom intfloat law level\
206 median mpeg1enc mpeg1sys mpeg1videoparse mpeg2enc mpeg2sub\
207 mpegaudio mpegaudioparse mpegstream mpegtypes\
208 passthrough playondemand rtjpeg silence sine\
209 smooth spectrum speed stereo stereomono\
210 synaesthesia udp videoscale volenv volume vumeter wavparse y4m"
212 AC_SUBST(GST_PLUGINS_ALL)
214 GST_PLUGINS_SELECTED=""
217 AC_HELP_STRING([--with-plugins],[comma-separated list of plugins to compile]),
218 [for i in `echo $withval | tr , ' '`; do
219 if test -n `echo $i | grep $GST_PLUGINS_ALL`; then
220 GST_PLUGINS_SELECTED="$GST_PLUGINS_SELECTED $i"
222 echo "plugin $i not recognized, ignoring..."
225 [GST_PLUGINS_SELECTED=$GST_PLUGINS_ALL])
227 AC_SUBST(GST_PLUGINS_SELECTED)
229 dnl ==========================================================================
230 dnl ============================= sys plugins ================================
231 dnl ==========================================================================
234 dnl *** OSS audio ***
235 translit(dnm, m, l) AM_CONDITIONAL(USE_OSS, true)
236 GST_CHECK_FEATURE(OSS, [OSS audio], osssrc osssink, [
237 AC_CHECK_HEADER(sys/soundcard.h, HAVE_OSS="yes", HAVE_OSS="no")
241 translit(dnm, m, l) AM_CONDITIONAL(USE_QCAM, true)
242 GST_CHECK_FEATURE(QCAM, [QuickCam], qcamsrc, [
243 dnl this one is for hadess, no qcam when no nasm found
244 if test "x$HAVE_NASM" = "xno";
247 AC_MSG_WARN([QuickCam needs nasm])
253 dnl *** Video 4 Linux ***
254 translit(dnm, m, l) AM_CONDITIONAL(USE_V4L, true)
255 GST_CHECK_FEATURE(V4L, [Video 4 Linux], v4lsrc v4lmjpegsrc v4lmjpegsink, [
256 AC_CHECK_DECL(VID_TYPE_MPEG_ENCODER, HAVE_V4L="yes", HAVE_V4L="no", [#include <linux/videodev.h>])
260 translit(dnm, m, l) AM_CONDITIONAL(USE_VCD, true)
261 GST_CHECK_FEATURE(VCD, [Video CD], vcdsrc, [
262 AC_CHECK_HEADER(linux/cdrom.h, HAVE_VCD="yes", HAVE_VCD="no")
266 translit(dnm, m, l) AM_CONDITIONAL(USE_VGA, true)
267 GST_CHECK_FEATURE(VGA, [VGA], vgavideosink, [
268 AC_CHECK_HEADER(asm/vga.h, HAVE_VGA="yes", HAVE_VGA="no")
272 dnl Look for the PIC library first, Debian requires it.
273 dnl Check debian-devel archives for gory details.
275 dnl At the moment XFree86 doesn't distribute shared libXv due
276 dnl to unstable API. On many platforms you CAN NOT link a shared
277 dnl lib to a static non-PIC lib. This is what the xvideo GStreamer
278 dnl plugin wants to do. So Debian distributes a PIC compiled
279 dnl version of the static lib for plugins to link to when it is
280 dnl inappropriate to link the main application to libXv directly.
281 dnl FIXME: add check if this platform can support linking to a
282 dnl non-PIC libXv, if not then don not use Xv.
283 dnl FIXME: perhaps warn user if they have a shared libXv since
284 dnl this is an error until XFree86 starts shipping one
285 translit(dnm, m, l) AM_CONDITIONAL(USE_XVIDEO, true)
286 GST_CHECK_FEATURE(XVIDEO, [X11 XVideo extensions], xvideosink, [
287 dnl check for PIC static lib
288 GST_CHECK_LIBHEADER(XVIDEO, Xv_pic, XvQueryExtension, $X_LIBS $X_PRE_LIBS -lXext -lX11 $X_EXTRA_LIBS, X11/extensions/Xvlib.h, XVIDEO_LIBS="-lXv_pic -lXext")
289 if test x$HAVE_XVIDEO = xno; then
290 dnl PIC lib not found, check for regular lib
291 GST_CHECK_LIBHEADER(XVIDEO, Xv, XvQueryExtension, $X_LIBS $X_PRE_LIBS -lXext -lX11 $X_EXTRA_LIBS, X11/extensions/Xvlib.h, XVIDEO_LIBS="-lXv -lXext")
293 AC_SUBST(XVIDEO_LIBS)
296 dnl Next, check for the optional libraries:
297 dnl These are all libraries used in building plugins
298 dnl ================================================
299 dnl let's try and sort them alphabetically, shall we ?
303 AC_MSG_NOTICE(Checking for plugin libraries)
306 translit(dnm, m, l) AM_CONDITIONAL(USE_A52DEC, true)
307 GST_CHECK_FEATURE(A52DEC, [a52dec], a52dec, [
308 GST_CHECK_LIBHEADER(A52DEC, a52, a52_init, -lm, a52dec/a52.h, A52DEC_LIBS="-la52")
312 translit(dnm, m, l) AM_CONDITIONAL(USE_AALIB, true)
313 GST_CHECK_FEATURE(AALIB, [aasink plugin], aasink, [
314 AM_PATH_AALIB(, HAVE_AALIB=yes, HAVE_AALIB=no)
318 translit(dnm, m, l) AM_CONDITIONAL(USE_ALSA, true)
319 GST_CHECK_FEATURE(ALSA, [alsa plugins], gstalsa, [
320 AM_PATH_ALSA(0.9.0, HAVE_ALSA=yes, HAVE_ALSA=no)
325 dnl if mcopidl can't be found there's no use in compiling it
326 AC_CHECK_PROG(MCOPIDL, mcopidl, yes, no)
327 if test "xHAVE_MCOPIDL" = "xno";
332 translit(dnm, m, l) AM_CONDITIONAL(USE_ARTS, true)
333 GST_CHECK_FEATURE(ARTS, [arts plugins], arts, [
334 AM_PATH_ARTS(, HAVE_ARTS=yes, HAVE_ARTS=no)
336 dnl if mcopidl can't be found there's no use in compiling it
337 AC_PATH_PROG(MCOPIDL, mcopidl, yes, no)
338 if test "xHAVE_MCOPIDL" = "xno";
344 translit(dnm, m, l) AM_CONDITIONAL(USE_ARTSC, true)
345 GST_CHECK_FEATURE(ARTSC, [artsd plugins], artsdsink, [
349 dnl *** audiofile ***
350 dnl this check uses the GST_CHECK_CONFIGPROG macro
351 translit(dnm, m, l) AM_CONDITIONAL(USE_AUDIOFILE, true)
352 GST_CHECK_FEATURE(AUDIOFILE, [audiofile], afsink afsrc, [
353 translit(dnm, m, l) AC_SUBST(AUDIOFILE_LIBS)
354 translit(dnm, m, l) AC_SUBST(AUDIOFILE_CFLAGS)
355 GST_CHECK_CONFIGPROG(AUDIOFILE, audiofile-config)
359 dnl this check uses the GST_CHECK_CONFIGPROG macro
360 dnl this check needs more fixing
361 dnl translit(dnm, m, l) AC_SUBST(AVIFILE_LIBS)
362 translit(dnm, m, l) AM_CONDITIONAL(USE_AVIFILE, true)
363 GST_CHECK_FEATURE(AVIFILE, [avifile], windec winenc, [
364 translit(dnm, m, l) AC_SUBST(AVIFILE_CFLAGS)
365 GST_CHECK_CONFIGPROG(AVIFILE, avifile-config)
366 AVIFILE_LIBS="$AVIFILE_LIBS -lstdc++"
367 AC_SUBST(AVIFILE_LIBS)
370 dnl *** CDParanoia ***
371 translit(dnm, m, l) AM_CONDITIONAL(USE_CDPARANOIA, true)
372 GST_CHECK_FEATURE(CDPARANOIA, [CDParanoia], cdparanoia, [
373 GST_CHECK_LIBHEADER(CDPARANOIA, cdda_interface, cdda_open, -lm, cdda_interface.h, CDPARANOIA_LIBS="-lcdda_interface -lcdda_paranoia")
374 AC_SUBST(CDPARANOIA_LIBS)
376 dnl FIXME : add second check somehow if that is necessary
377 dnl AC_CHECK_LIB(cdda_paranoia, paranoia_init, : , HAVE_CDPARANOIA=no, -lcdda_interface )
378 dnl AC_CHECK_HEADER(cdda_paranoia.h, :, HAVE_CDPARANOIA=no)
381 translit(dnm, m, l) AM_CONDITIONAL(USE_DV, true)
382 GST_CHECK_FEATURE(DV, [dv library], dv, [
383 GST_CHECK_LIBHEADER(DV, dv, dv_init, -lm $GST_CFLAGS $GST_LIBS, libdv/dv.h, DV_LIBS="-ldv")
388 translit(dnm, m, l) AM_CONDITIONAL(USE_DVDREAD, true)
389 GST_CHECK_FEATURE(DVDREAD, [dvdread library], dvdsrc, [
390 GST_CHECK_LIBHEADER(DVDREAD, dvdread, DVDOpen, , dvdread/dvd_reader.h, DVDREAD_LIBS="-ldvdread")
391 AC_SUBST(DVDREAD_LIBS)
395 translit(dnm, m, l) AM_CONDITIONAL(USE_ESD, true)
396 GST_CHECK_FEATURE(ESD, [esound plugins], esdsrc esdsink, [
397 AM_PATH_ESD(0.2.12, HAVE_ESD=yes, HAVE_ESD=no)
400 dnl **** festival ****
401 translit(dnm, m, l) AM_CONDITIONAL(USE_FESTIVAL, true)
402 GST_CHECK_FEATURE(FESTIVAL, [festival plugins], festivalsrc, [
403 dnl NOTE: just using local net connection now, add this lib check
404 dnl in the future if needed
405 dnl AC_LANG_PUSH(C++)
406 dnl dnl FIXME: took out func to check for
407 dnl dnl This check puts festival_tidy_up in extern "C".
408 dnl dnl But, at least on Debian as of 20020110, it is compiled with name
409 dnl dnl mangling C++ nonsense and symbols can't resolve
410 dnl dnl GST_CHECK_LIBHEADER(FESTIVAL, Festival, festival_tidy_up, , festival/festival.h, FESTIVAL_LIBS="-lFestival")
411 dnl GST_CHECK_LIBHEADER(FESTIVAL, Festival, , , festival/festival.h, FESTIVAL_LIBS="-lFestival")
413 dnl AC_SUBST(FESTIVAL_LIBS)
418 translit(dnm, m, l) AM_CONDITIONAL(USE_FLAC, true)
419 GST_CHECK_FEATURE(FLAC, [FLAC lossless audio], flacenc flacdec, [
420 GST_CHECK_LIBHEADER(FLAC, FLAC, FLAC__stream_decoder_new, -lm, FLAC/all.h, FLAC_LIBS="-lFLAC")
424 dnl *** Gnome VFS ***
425 dnl this check uses the GST_CHECK_CONFIGPROG macro with gnome-config vfs
426 translit(dnm, m, l) AM_CONDITIONAL(USE_GNOME_VFS, true)
427 GST_CHECK_FEATURE(GNOME_VFS, [Gnome VFS], gnomevfssrc, [
428 PKG_CHECK_MODULES(GNOME_VFS, gnome-vfs-2.0, HAVE_GNOME_VFS="yes", HAVE_GNOME_VFS="no")
429 AC_SUBST(GNOME_VFS_CFLAGS)
430 AC_SUBST(GNOME_VFS_LIBS)
434 translit(dnm, m, l) AM_CONDITIONAL(USE_GSM, true)
435 GST_CHECK_FEATURE(GSM, [GSM library], gsmenc gsmdec, [
436 GST_CHECK_LIBHEADER(GSM, gsm, gsm_create, , gsm.h, GSM_LIBS="-lgsm")
437 if test $HAVE_GSM != "yes"; then
438 GST_CHECK_LIBHEADER(GSM, gsm, gsm_create, , gsm/gsm.h, GSM_LIBS="-lgsm")
439 if test $HAVE_GSM = "yes"; then
440 AC_DEFINE(GSM_HEADER_IN_SUBDIR)
447 translit(dnm, m, l) AM_CONDITIONAL(USE_HERMES, true)
448 GST_CHECK_FEATURE(HERMES, [Hermes library], colorspace, [
449 GST_CHECK_LIBHEADER(HERMES, Hermes, Hermes_ConverterInstance, , Hermes/Hermes.h, HERMES_LIBS="-lHermes")
450 ], AC_SUBST(HERMES_LIBS))
453 translit(dnm, m, l) AM_CONDITIONAL(USE_HTTP, true)
454 GST_CHECK_FEATURE(HTTP, [http plugins], gsthttpsrc, [
455 dnl FIXME: need to check for header
457 GST_HTTPSRC_GET_TYPE=
458 if test x$USE_GLIB2 = xyes; then
459 AC_MSG_WARN(ghttp disabled for glib2.0)
461 AC_CHECK_LIB(ghttp, ghttp_request_new,
463 GST_HTTPSRC_GET_TYPE="gst_httpsrc_get_type"
468 AC_SUBST(GST_HTTPSRC_GET_TYPE)
472 translit(dnm, m, l) AM_CONDITIONAL(USE_LAME, true)
473 GST_CHECK_FEATURE(LAME, [lame mp3 encoder library], lame, [
474 GST_CHECK_LIBHEADER(LAME, mp3lame, lame_init, -lm, lame/lame.h, HAVE_LAME="yes" LAME_LIBS="-lmp3lame")
479 dnl FIXME : check if these CPP flags can be dealt with otherwise
480 dnl libdvcheck_save_CPPFLAGS="$CPPFLAGS"
481 dnl CPPFLAGS="$CPPFLAGS $GST_CFLAGS"
482 dnl AC_CHECK_HEADER(libdv/dv.h, :, HAVE_LIBDV=no)
483 dnl CPPFLAGS="$libdvcheck_save_CPPFLAGS"
486 dnl FIXME: we could use header checks here as well IMO
487 translit(dnm, m, l) AM_CONDITIONAL(USE_JPEG, true)
488 GST_CHECK_FEATURE(JPEG, [jpeg], jpegenc jpegdec, [
489 AC_CHECK_LIB(jpeg, jpeg_set_defaults, HAVE_JPEG="yes", HAVE_JPEG="no")
495 dnl FIXME: we could use header checks here as well IMO
496 translit(dnm, m, l) AM_CONDITIONAL(USE_MAD, true)
497 GST_CHECK_FEATURE(MAD, [mad mp3 decoder], mad, [
498 AC_CHECK_LIB(mad, mad_decoder_finish, HAVE_MAD="yes" MAD_LIBS="-lmad")
503 translit(dnm, m, l) AM_CONDITIONAL(USE_MIKMOD, true)
504 GST_CHECK_FEATURE(MIKMOD, [mikmod plugin], mikmod, [
505 AM_PATH_LIBMIKMOD(, HAVE_MIKMOD=yes, HAVE_MIKMOD=no)
506 AC_SUBST(MIKMOD_LIBS, "$LIBMIKMOD_LIBS")
507 AC_SUBST(MIKMOD_CFLAGS, "$LIBMIKMODCFLAGS")
510 dnl *** mjpegtools ***
511 translit(dnm, m, l) AM_CONDITIONAL(USE_MJPEGTOOLS, true)
512 GST_CHECK_FEATURE(MJPEGTOOLS, [mjpegtools], jpegmmxenc jpegmmxdec, [
513 PKG_CHECK_MODULES(MJPEGTOOLS, mjpegtools, HAVE_MJPEGTOOLS="yes", HAVE_MJPEGTOOLS="no")
514 AC_SUBST(MJPEGTOOLS_LIBS)
515 AC_SUBST(MJPEGTOOLS_CFLAGS)
519 translit(dnm, m, l) AM_CONDITIONAL(USE_MPEG2DEC, true)
520 GST_CHECK_FEATURE(MPEG2DEC, [mpeg2dec], mpeg2dec, [ GST_CHECK_MPEG2DEC() ])
522 dnl *** openquicktime ***
523 translit(dnm, m, l) AM_CONDITIONAL(USE_OPENQUICKTIME, true)
524 GST_CHECK_FEATURE(OPENQUICKTIME, [Open Quicktime], quicktime_parser quicktime_decoder quicktime_demux,[
525 GST_CHECK_LIBHEADER(OPENQUICKTIME, openquicktime, quicktime_init,, openquicktime/openquicktime.h, OPENQUICKTIME_LIBS="-lopenquicktime")
526 AC_SUBST(OPENQUICKTIME_LIBS)
530 translit(dnm, m, l) AM_CONDITIONAL(USE_RAW1394, true)
531 GST_CHECK_FEATURE(RAW1394, [raw1394 library], dv1394src, [
532 GST_CHECK_LIBHEADER(RAW1394, raw1394, raw1394_get_handle,, libraw1394/raw1394.h, RAW1394_LIBS="-raw1394")
533 AC_SUBST(RAW1394_LIBS)
537 dnl FIXME : adapt and make it work
538 translit(dnm, m, l) AM_CONDITIONAL(USE_RTP, true)
539 GST_CHECK_FEATURE(RTP, [RTP library], rtpenc rtpdec,[
540 AC_CHECK_LIB(rtp, rtp_packet_new_take_data, HAVE_RTP=yes, HAVE_RTP=no, $GST_CFLAGS $GST_LIBS)
546 dnl FIXME header check needs to use GLIB_CFLAGS in order to succeed for rtp
547 dnl can use GST_* which should have GLIB_* info
548 dnl AC_CHECK_HEADERS(rtp/rtp.h, HAVE_LIBRTP=yes, HAVE_LIBRTP=no)
549 dnl AC_CHECK_HEADERS(rtp/rtp-packet.h, :, HAVE_LIBRTP=no)
550 dnl AC_CHECK_HEADERS(rtp/rtcp-packet.h, :, HAVE_LIBRTP=no)
551 dnl AC_CHECK_HEADERS(rtp/rtp-audio.h, :, HAVE_LIBRTP=no)
554 translit(dnm, m, l) AM_CONDITIONAL(USE_SDL, true)
555 GST_CHECK_FEATURE(SDL, [SDL plugin], sdlvideosink, [
556 AM_PATH_SDL(, HAVE_SDL=yes, HAVE_SDL=no)
560 translit(dnm, m, l) AM_CONDITIONAL(USE_SHOUT, true)
561 GST_CHECK_FEATURE(SHOUT, [shout plugin], icecastsend, [
562 GST_CHECK_LIBHEADER(SHOUT, shout, shout_init_connection,, shout/shout.h, SHOUT_LIBS="-lshout")
567 translit(dnm, m, l) AM_CONDITIONAL(USE_SIDPLAY, true)
568 GST_CHECK_FEATURE(SIDPLAY, [sidplay plugin], sidplay, [
572 dnl *** smoothwave ***
573 translit(dnm, m, l) AM_CONDITIONAL(USE_SMOOTHWAVE, true)
574 GST_CHECK_FEATURE(SMOOTHWAVE, [smoothwave plugin], smoothwave, [
575 if test $HAVE_GTK = "yes"; then HAVE_SMOOTHWAVE=yes; fi;
579 dnl for now the sources are included in the plugin
580 dnl and should be moved to ext-libs/ perhaps
581 translit(dnm, m, l) AM_CONDITIONAL(USE_TARKIN, true)
582 GST_CHECK_FEATURE(TARKIN, [tarkinenc tarkindec], tarkin, [
587 dnl AM_PATH_VORBIS only takes two options
588 translit(dnm, m, l) AM_CONDITIONAL(USE_VORBIS, true)
589 GST_CHECK_FEATURE(VORBIS, [vorbis plugin], vorbisenc vorbisdec, [
590 AM_PATH_VORBIS(HAVE_VORBIS=yes, HAVE_VORBIS=no)
594 translit(dnm, m, l) AM_CONDITIONAL(USE_XMMS, true)
595 GST_CHECK_FEATURE(XMMS, [xmms plugin], xmms, [
596 AM_PATH_XMMS(0.1.0, HAVE_XMMS=yes, HAVE_XMMS=no)
599 dnl Check for atomic.h
600 dnl Note: use AC_CHECK_HEADER not AC_CHECK_HEADERS, because the latter
601 dnl defines the wrong default symbol as well (HAVE_ASM_ATOMIC_H)
602 AC_CHECK_HEADER(asm/atomic.h, HAVE_ATOMIC_H=yes, HAVE_ATOMIC_H=no)
603 dnl Do a compile to check that it has atomic_set (eg, linux 2.0 didn't)
604 if test x$HAVE_ATOMIC_H = xyes; then
606 #include "asm/atomic.h"
607 main() { atomic_t t; atomic_set(&t,0); atomic_inc(&t); atomic_add(1,&t);return 0;}
610 if test x$HAVE_ATOMIC_H = xyes; then
611 AC_MSG_WARN(Atomic reference counting is out of date: doing without.)
617 AC_MSG_WARN(Can't check properly for atomic reference counting. Assuming OK.)
621 dnl ######################################################################
622 dnl # Check command line parameters, and set shell variables accordingly #
623 dnl ######################################################################
625 AC_ARG_ENABLE(libmmx,
626 [ --enable-libmmx use libmmx, if available],
627 [case "${enableval}" in
628 yes) USE_LIBMMX=$HAVE_LIBMMX ;;
630 *) AC_MSG_ERROR(bad value ${enableval} for --enable-libmmx) ;;
632 [USE_LIBMMX=$HAVE_LIBMMX]) dnl Default value
634 AC_ARG_ENABLE(atomic,
635 [ --enable-atomic use atomic reference counting header],
636 [case "${enableval}" in
637 yes) USE_ATOMIC_H=$HAVE_ATOMIC_H;;
638 noset) USE_ATOMIC_H=$HAVE_ATOMIC_H;;
639 no) USE_ATOMIC_H=no;;
640 *) AC_MSG_ERROR(bad value ${enableval} for --enable-atomic) ;;
642 [USE_ATOMIC_H=$HAVE_ATOMIC_H]) dnl Default value
644 AC_ARG_ENABLE(profiling,
645 [ --enable-profiling adds -pg to compiler commandline, for profiling],
646 [case "${enableval}" in
647 yes) USE_PROFILING=yes ;;
648 no) UES_PROFILING=no ;;
649 *) AC_MSG_ERROR(bad value ${enableval} for --enable-profiling) ;;
651 [USE_PROFILING=no]) dnl Default value
654 [ --disable-tests disable building test apps],
655 [case "${enableval}" in
656 yes) BUILD_TESTS=yes ;;
657 no) BUILD_TESTS=no ;;
658 *) AC_MSG_ERROR(bad value ${enableval} for --disable-tests) ;;
660 [BUILD_TESTS=yes]) dnl Default value
662 AC_ARG_ENABLE(examples,
663 [ --disable-examples disable building examples],
664 [case "${enableval}" in
665 yes) BUILD_EXAMPLES=yes ;;
666 no) BUILD_EXAMPLES=no ;;
667 *) AC_MSG_ERROR(bad value ${enableval} for --disable-examples) ;;
669 [BUILD_EXAMPLES=yes]) dnl Default value
671 dnl ################################################
672 dnl # Set defines according to variables set above #
673 dnl ################################################
676 if test "x$USE_LIBMMX" = xyes; then
677 AC_DEFINE(HAVE_LIBMMX, 1, [Define if libmmx is available])
680 if test "x$USE_ATOMIC_H" = xyes; then
681 AC_DEFINE(HAVE_ATOMIC_H, 1, [Define if atomic.h header file is available])
684 dnl if test "x$USE_DEBUG" = xyes; then
685 dnl CFLAGS="$CFLAGS -g"
688 if test "x$USE_PROFILING" = xyes; then
689 dnl CFLAGS="$CFLAGS -pg -fprofile-arcs"
690 FOMIT_FRAME_POINTER=""
692 FOMIT_FRAME_POINTER="-fomit-frame-pointer"
696 dnl AC_SUBST(FOMIT_FRAME_POINTER)
699 dnl #############################
700 dnl # Set automake conditionals #
701 dnl #############################
703 dnl These should be "USE_*" instead of "HAVE_*", but some packages expect
704 dnl HAVE_ and it is likely to be easier to stick with the old name
705 AM_CONDITIONAL(HAVE_CPU_I386, test "x$HAVE_CPU_I386" = "xyes")
706 AM_CONDITIONAL(HAVE_CPU_PPC, test "x$HAVE_CPU_PPC" = "xyes")
707 AM_CONDITIONAL(HAVE_CPU_ALPHA, test "x$HAVE_CPU_ALPHA" = "xyes")
708 AM_CONDITIONAL(HAVE_CPU_ARM, test "x$HAVE_CPU_ARM" = "xyes")
709 AM_CONDITIONAL(HAVE_CPU_SPARC, test "x$HAVE_CPU_SPARC" = "xyes")
710 AM_CONDITIONAL(HAVE_LIBMMX, test "x$USE_LIBMMX" = "xyes")
712 AM_CONDITIONAL(HAVE_ATOMIC_H, test "x$USE_ATOMIC_H" = "xyes")
714 AM_CONDITIONAL(EXPERIMENTAL, test "$EXPERIMENTAL" = "$xyes")
715 AM_CONDITIONAL(BROKEN, test "$BROKEN" = "$xyes")
717 AM_CONDITIONAL(HAVE_LIBMIKMOD, test "x$HAVE_LIBMIKMOD" = "xyes")
718 AM_CONDITIONAL(HAVE_LIBSDL, test "x$HAVE_LIBSDL" = "xyes")
719 AM_CONDITIONAL(HAVE_NASM, test "x$HAVE_NASM" = "xyes")
720 AM_CONDITIONAL(HAVE_LIBGLADE_GNOME, test "x$HAVE_LIBGLADE_GNOME" = "xyes")
721 AM_CONDITIONAL(HAVE_GNOME, test "x$HAVE_GNOME" = "xyes")
722 AM_CONDITIONAL(HAVE_GTK, test "x$HAVE_GTK" = "xyes")
723 AM_CONDITIONAL(HAVE_GTK_DOC, $HAVE_GTK_DOC)
724 AM_CONDITIONAL(BUILD_DOCS, test "x$BUILD_DOCS" = "xyes")
725 AM_CONDITIONAL(BUILD_TESTS, test "x$BUILD_TESTS" = "xyes")
726 AM_CONDITIONAL(BUILD_EXAMPLES, test "x$BUILD_EXAMPLES" = "xyes")
727 AM_CONDITIONAL(BUILD_PLUGIN_DOCS, test "x$BUILD_PLUGIN_DOCS" = "xyes")
728 AM_CONDITIONAL(HAVE_PDFXMLTEX, $HAVE_PDFXMLTEX)
729 AM_CONDITIONAL(HAVE_PDFTOPS, $HAVE_PDFTOPS)
730 AM_CONDITIONAL(HAVE_XSLTPROC, $HAVE_XSLTPROC)
731 AM_CONDITIONAL(HAVE_FIG2DEV_PNG, $HAVE_FIG2DEV_PNG)
732 AM_CONDITIONAL(HAVE_FIG2DEV_PDF, $HAVE_FIG2DEV_PDF)
733 AM_CONDITIONAL(HAVE_LIBRTP, test "x$HAVE_LIBRTP" = "xyes")
734 AM_CONDITIONAL(HAVE_ARTS, test "x$HAVE_ARTS" = "xyes")
735 AM_CONDITIONAL(HAVE_RAW1394, test "x$HAVE_RAW1394" = "xyes")
736 AM_CONDITIONAL(HAVE_LIBDV, test "x$HAVE_LIBDV" = "xyes")
737 AM_CONDITIONAL(HAVE_GNOME_VFS, test "x$HAVE_GNOME_VFS" = "xyes")
738 AM_CONDITIONAL(HAVE_LIBGSM, test "x$HAVE_LIBGSM" = "xyes")
739 AM_CONDITIONAL(PLUGINS_USE_BUILDDIR, test "x$PLUGINS_USE_BUILDDIR" = "xyes")
742 GST_CFLAGS="$GST_CFLAGS -I\$(top_srcdir)/gst-libs -Wall"
746 dnl #########################
747 dnl # Make the output files #
748 dnl #########################
753 gstreamer-libs-uninstalled.pc
756 gst/ac3parse/Makefile
758 gst/audioscale/Makefile
763 gst/deinterlace/Makefile
766 gst/intfloat/Makefile
770 gst/mpeg1enc/Makefile
771 gst/mpeg1sys/Makefile
772 gst/mpeg1videoparse/Makefile
773 gst/mpeg2enc/Makefile
774 gst/mpeg2sub/Makefile
775 gst/mpegaudio/Makefile
776 gst/mpegaudioparse/Makefile
777 gst/mpegstream/Makefile
778 gst/mpegtypes/Makefile
779 gst/passthrough/Makefile
780 gst/playondemand/Makefile
785 gst/spectrum/Makefile
788 gst/stereomono/Makefile
789 gst/synaesthesia/Makefile
791 gst/videoscale/Makefile
795 gst/wavparse/Makefile
810 ext/audiofile/Makefile
812 ext/cdparanoia/Makefile
816 ext/festival/Makefile
818 ext/gnomevfs/Makefile
827 ext/mjpegtools/Makefile
828 ext/mpeg2dec/Makefile
829 ext/openquicktime/Makefile
835 ext/smoothwave/Makefile
840 gst-libs/gst/Makefile
841 gst-libs/gst/audio/Makefile
842 gst-libs/gst/idct/Makefile
843 gst-libs/gst/resample/Makefile
844 gst-libs/gst/riff/Makefile
845 examples/capsfilter/Makefile
849 echo -e "configure: *** Plugins that will be built : $GST_PLUGINS_YES"
851 echo -e "configure: *** Plugins that will not be built : $GST_PLUGINS_NO"