1 dnl autoconf configuration file for gst-plugins
3 AC_CANONICAL_TARGET([])
5 dnl We disable static building for development, for time savings
6 dnl this goes before AS_LIBTOOL to appease autoconf
7 dnl *NOTE*: dnl this line before release, so release does static too
10 dnl when going to/from release please set the nano (fourth number) right !
11 dnl We disable static building for development, for time savings
13 AS_VERSION(gst-plugins, GST_PLUGINS, 0, 4, 0, 1)
14 AM_INIT_AUTOMAKE($PACKAGE,$VERSION)
15 AS_LIBTOOL(GST_PLUGINS, 0, 0, 0, yes)
17 dnl we'll move this to a configure option later on which will be turned on
19 dnl GST_ERROR="-Wall -Werror"
22 dnl FIXME take something else ?
23 AC_CONFIG_SRCDIR([gst/law/alaw.c])
24 AM_CONFIG_HEADER(config.h)
26 ##AUTOMAKE="$AUTOMAKE"
27 dnl Add parameters for aclocal
28 dnl (This must come after AM_INIT_AUTOMAKE, since it modifies ACLOCAL)
29 ACLOCAL="$ACLOCAL -I m4 -I common/m4 $ACLOCAL_FLAGS"
43 dnl ############################################
44 dnl # Super Duper options for plug-in building #
45 dnl ############################################
47 dnl ext plug-ins; plug-ins that have external dependencies
48 GST_CHECK_FEATURE(EXTERNAL, [enable building of plug-ins with external deps],,
49 [HAVE_EXTERNAL=yes],enabled,
51 AC_MSG_WARN(building experimental plug-ins)
54 AC_MSG_WARN(all plug-ins with external dependencies will not be built)
57 # make BUILD_EXTERNAL available to Makefile.am
58 AM_CONDITIONAL(BUILD_EXTERNAL, test "x$BUILD_EXTERNAL" = "xyes")
60 dnl experimental plug-ins; stuff that hasn't had the dust settle yet
61 dnl read 'builds, but might not work'UTO
62 GST_CHECK_FEATURE(EXPERIMENTAL, [enable building of experimental plug-ins],,
63 [HAVE_EXPERIMENTAL=yes],disabled,
65 AC_MSG_WARN(building experimental plug-ins)
69 AC_MSG_NOTICE(not building experimental plug-ins)
74 dnl broken plug-ins; stuff that doesn't seem to build at the moment
75 GST_CHECK_FEATURE(BROKEN, [enable building of broken plug-ins],,
76 HAVE_BROKEN=yes,disabled,
78 AC_MSG_WARN([building broken plug-ins -- no bug reports on these, only patches :)])
86 AC_MSG_NOTICE([not building broken plug-ins])
89 dnl ##############################
90 dnl # Do automated configuration #
91 dnl ##############################
96 dnl allow for different autotools
97 AS_AUTOTOOLS_ALTERNATE()
99 dnl modify pkg-config path
100 AC_ARG_WITH(pkg-config-path,
101 AC_HELP_STRING([--with-pkg-config-path],[colon-separated list of pkg-config(1) dirs]),
102 [export PKG_CONFIG_PATH=${withval}])
105 AC_PATH_PROG(NASM_PATH, nasm, no)
107 if test x$NASM_PATH = xno; then
108 AC_MSG_WARN(Couldn't find nasm)
111 AC_DEFINE(HAVE_NASM, 1, [Define if NASM, the netwide assembler, is available])
115 dnl check for gconftool-2
116 translit(dnm, m, l) AM_CONDITIONAL(USE_GCONFTOOL, true)
117 GST_CHECK_FEATURE(GCONFTOOL, [GConf schemas], , [
118 AC_PATH_PROG(GCONFTOOL, gconftool-2, no)
119 if test x$GCONFTOOL = xno; then
120 AC_MSG_WARN(Not installing GConf schemas)
126 AC_SUBST(HAVE_GCONFTOOL)
129 dnl check for GConf libraries
130 translit(dnm, m, l) AM_CONDITIONAL(USE_GCONF, true)
131 GST_CHECK_FEATURE(GCONF, [GConf libraries], , [
132 PKG_CHECK_MODULES(GCONF, gconf-2.0, HAVE_GCONF="yes", HAVE_GCONF="no")
133 AC_SUBST(GCONF_CFLAGS)
138 dnl check for gstreamer; uninstalled is selected preferentially -- see pkg-config(1)
139 PKG_CHECK_MODULES(GST, gstreamer >= $GST_PLUGINS_MAJOR.$GST_PLUGINS_MINOR.$GST_PLUGINS_MICRO,
140 HAVE_GST="yes", HAVE_GST="no")
142 if test "x$HAVE_GST" = "xno"; then
143 AC_MSG_ERROR(no GStreamer found)
146 GST_TOOLS_DIR=`pkg-config --variable=toolsdir gstreamer`
147 if test -z $GST_TOOLS_DIR; then
148 AC_MSG_ERROR([no tools dir defined in GStreamer pkg-config file; core upgrade needed.])
150 AC_SUBST(GST_TOOLS_DIR)
152 dnl Set up conditionals for (target) architecture:
153 dnl ==============================================
156 case "x${target_cpu}" in
157 xi?86 | k?) HAVE_CPU_I386=yes
158 AC_DEFINE(HAVE_CPU_I386, 1, [Define if the target CPU is an x86])
159 dnl FIXME could use some better detection
161 case "x${target_cpu}" in
163 *) AC_DEFINE(HAVE_RDTSC, 1, [Define if RDTSC is available]) ;;
165 xpowerpc) HAVE_CPU_PPC=yes
166 AC_DEFINE(HAVE_CPU_PPC, 1, [Define if the target CPU is a PPC]) ;;
167 xalpha) HAVE_CPU_ALPHA=yes
168 AC_DEFINE(HAVE_CPU_ALPHA, 1, [Define if the target CPU is an Alpha]) ;;
169 xarm*) HAVE_CPU_ARM=yes
170 AC_DEFINE(HAVE_CPU_ARM, 1, [Define if the target CPU is an ARM]) ;;
171 xsparc*) HAVE_CPU_SPARC=yes
172 AC_DEFINE(HAVE_CPU_SPARC, 1, [Define if the target CPU is a PPC]) ;;
173 xmips*) HAVE_CPU_MIPS=yes
174 AC_DEFINE(HAVE_CPU_MIPS, 1, [Define if the target CPU is a MIPS]) ;;
175 xhppa*) HAVE_CPU_HPPA=yes
176 AC_DEFINE(HAVE_CPU_HPPA, 1, [Define if the target CPU is a HPPA]) ;;
179 dnl Determine endianness
182 dnl Check for fast float to int casting as defined in C99
186 dnl Check for essential libraries first:
187 dnl ====================================
190 PKG_CHECK_MODULES(GTK2, gtk+-2.0, HAVE_GTK=yes, HAVE_GTK=no)
191 GTK_CFLAGS=$GTK2_CFLAGS
196 dnl Check for X11 extensions
198 if test "-DX_DISPLAY_MISSING" = "$X_CFLAGS"; then
199 AC_MSG_NOTICE([cannot find X11, the build system needs fixage])
203 AC_SUBST(X_EXTRA_LIBS)
206 dnl ===========================================================================
207 dnl ============================= gst plug-ins ================================
208 dnl ===========================================================================
209 GST_PLUGIN_LDFLAGS='-module -avoid-version'
210 AC_SUBST(GST_PLUGIN_LDFLAGS)
212 dnl these are all the gst plug-ins, compilable without additional libs
214 ac3parse adder audioscale auparse avi cdxaparse chart\
215 cutter deinterlace effectv festival filter flx goom\
217 median mpeg1enc mpeg1sys mpeg1videoparse mpeg2enc mpeg2sub\
218 mpegaudio mpegaudioparse mpegstream mpegtypes modplug\
219 monoscope passthrough playondemand qtdemux rtjpeg silence sine\
220 smooth spectrum speed stereo stereomono\
221 synaesthesia udp videoscale volenv volume vumeter wavparse y4m"
223 AC_SUBST(GST_PLUGINS_ALL)
225 GST_PLUGINS_SELECTED=""
228 AC_HELP_STRING([--with-plugins],[comma-separated list of plug-ins to compile]),
229 [for i in `echo $withval | tr , ' '`; do
230 if test -n `echo $i | grep $GST_PLUGINS_ALL`; then
231 GST_PLUGINS_SELECTED="$GST_PLUGINS_SELECTED $i"
233 echo "plug-in $i not recognized, ignoring..."
236 [GST_PLUGINS_SELECTED=$GST_PLUGINS_ALL])
238 AC_SUBST(GST_PLUGINS_SELECTED)
240 dnl ==========================================================================
241 dnl ============================= sys plug-ins ================================
242 dnl ==========================================================================
244 dnl *** DXR3 card ***
245 translit(dnm, m, l) AM_CONDITIONAL(USE_DXR3, true)
246 GST_CHECK_FEATURE(DXR3, [DXR3 hardware mpeg video decoder], dxr3videosink, [
247 AC_CHECK_HEADER(linux/em8300.h, HAVE_DXR3="yes", HAVE_DXR3="no")
250 dnl *** OSS audio ***
251 translit(dnm, m, l) AM_CONDITIONAL(USE_OSS, true)
252 GST_CHECK_FEATURE(OSS, [OSS audio], osssrc osssink, [
253 AC_CHECK_HEADER(sys/soundcard.h, HAVE_OSS="yes", HAVE_OSS="no")
257 translit(dnm, m, l) AM_CONDITIONAL(USE_QCAM, true)
258 GST_CHECK_FEATURE(QCAM, [QuickCam], qcamsrc, [
259 dnl this one is for hadess, no qcam when no nasm found
260 if test "x$HAVE_NASM" = "xno";
263 AC_MSG_WARN([QuickCam needs nasm])
269 dnl *** Video 4 Linux ***
270 translit(dnm, m, l) AM_CONDITIONAL(USE_V4L, true)
271 GST_CHECK_FEATURE(V4L, [Video 4 Linux], v4lsrc v4lmjpegsrc v4lmjpegsink, [
272 AC_CHECK_DECL(VID_TYPE_MPEG_ENCODER, HAVE_V4L="yes", HAVE_V4L="no", [#include <linux/videodev.h>])
276 translit(dnm, m, l) AM_CONDITIONAL(USE_VCD, true)
277 GST_CHECK_FEATURE(VCD, [Video CD], vcdsrc, [
278 AC_CHECK_HEADER(linux/cdrom.h, HAVE_VCD="yes", HAVE_VCD="no")
282 translit(dnm, m, l) AM_CONDITIONAL(USE_VGA, true)
283 GST_CHECK_FEATURE(VGA, [VGA], vgavideosink, [
284 AC_CHECK_HEADER(asm/vga.h, HAVE_VGA="yes", HAVE_VGA="no")
288 dnl Look for the PIC library first, Debian requires it.
289 dnl Check debian-devel archives for gory details.
291 dnl At the moment XFree86 doesn't distribute shared libXv due
292 dnl to unstable API. On many platforms you CAN NOT link a shared
293 dnl lib to a static non-PIC lib. This is what the xvideo GStreamer
294 dnl plug-in wants to do. So Debian distributes a PIC compiled
295 dnl version of the static lib for plug-ins to link to when it is
296 dnl inappropriate to link the main application to libXv directly.
297 dnl FIXME: add check if this platform can support linking to a
298 dnl non-PIC libXv, if not then don not use Xv.
299 dnl FIXME: perhaps warn user if they have a shared libXv since
300 dnl this is an error until XFree86 starts shipping one
301 translit(dnm, m, l) AM_CONDITIONAL(USE_XVIDEO, true)
302 GST_CHECK_FEATURE(XVIDEO, [X11 XVideo extensions], xvideosink videosink, [
303 dnl check for PIC static lib
304 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")
305 if test x$HAVE_XVIDEO = xno; then
306 dnl PIC lib not found, check for regular lib
307 GST_CHECK_LIBHEADER(XVIDEO, Xv, XvQueryExtension, $X_LIBS $X_PRE_LIBS -lXext -lX11 $X_EXTRA_LIBS, X11/extensions/Xvlib.h, XVIDEO_LIBS="-lXv -lXext")
309 AC_SUBST(XVIDEO_LIBS)
312 dnl Next, check for the optional libraries:
313 dnl These are all libraries used in building plug-ins
314 dnl ================================================
315 dnl let's try and sort them alphabetically, shall we ?
317 if test "x$BUILD_EXTERNAL" = "xyes"; then
319 AC_MSG_NOTICE(Checking for plug-in dependency libraries)
322 translit(dnm, m, l) AM_CONDITIONAL(USE_A52DEC, true)
323 GST_CHECK_FEATURE(A52DEC, [a52dec], a52dec, [
324 AC_CHECK_A52DEC(HAVE_A52DEC=yes, HAVE_A52DEC=no)
328 translit(dnm, m, l) AM_CONDITIONAL(USE_AALIB, true)
329 GST_CHECK_FEATURE(AALIB, [aasink plug-in], aasink, [
330 AM_PATH_AALIB(, HAVE_AALIB=yes, HAVE_AALIB=no)
334 translit(dnm, m, l) AM_CONDITIONAL(USE_ALSA, true)
335 GST_CHECK_FEATURE(ALSA, [alsa plug-ins], gstalsa, [
336 AM_PATH_ALSA(0.9.0, HAVE_ALSA=yes, HAVE_ALSA=no)
340 dnl if mcopidl can't be found there's no use in compiling it
341 AC_CHECK_PROG(MCOPIDL, mcopidl, yes, no)
342 if test "xHAVE_MCOPIDL" = "xno";
347 translit(dnm, m, l) AM_CONDITIONAL(USE_ARTS, true)
348 GST_CHECK_FEATURE(ARTS, [arts plug-ins], arts, [
349 AM_PATH_ARTS(, HAVE_ARTS=yes, HAVE_ARTS=no)
353 translit(dnm, m, l) AM_CONDITIONAL(USE_ARTSC, true)
354 GST_CHECK_FEATURE(ARTSC, [artsd plug-ins], artsdsink, [
358 dnl *** audiofile ***
359 dnl this check uses the GST_CHECK_CONFIGPROG macro
360 translit(dnm, m, l) AM_CONDITIONAL(USE_AUDIOFILE, true)
361 GST_CHECK_FEATURE(AUDIOFILE, [audiofile], afsink afsrc, [
362 translit(dnm, m, l) AC_SUBST(AUDIOFILE_LIBS)
363 translit(dnm, m, l) AC_SUBST(AUDIOFILE_CFLAGS)
364 GST_CHECK_CONFIGPROG(AUDIOFILE, audiofile-config)
368 dnl this check uses the GST_CHECK_CONFIGPROG macro
369 dnl this check needs more fixing
370 dnl translit(dnm, m, l) AC_SUBST(AVIFILE_LIBS)
371 translit(dnm, m, l) AM_CONDITIONAL(USE_AVIFILE, true)
372 GST_CHECK_FEATURE(AVIFILE, [avifile], windec winenc, [
373 translit(dnm, m, l) AC_SUBST(AVIFILE_CFLAGS)
374 GST_CHECK_CONFIGPROG(AVIFILE, avifile-config)
375 AVIFILE_LIBS="$AVIFILE_LIBS -lstdc++"
376 AC_SUBST(AVIFILE_LIBS)
379 dnl *** CDParanoia ***
380 translit(dnm, m, l) AM_CONDITIONAL(USE_CDPARANOIA, true)
381 GST_CHECK_FEATURE(CDPARANOIA, [CDParanoia], cdparanoia, [
382 GST_CHECK_LIBHEADER(CDPARANOIA, cdda_interface,
385 CDPARANOIA_LIBS="-lcdda_interface -lcdda_paranoia"
387 FOUND_CDPARANOIA="yes")
388 if test "x$FOUND_CDPARANOIA" != "xyes";
390 GST_CHECK_LIBHEADER(CDPARANOIA, cdda_interface,
392 cdda/cdda_interface.h,
393 CDPARANOIA_LIBS="-lcdda_interface -lcdda_paranoia"
395 FOUND_CDPARANOIA="yes")
397 if test "x$HEADER_DIR" = "xyes";
399 AC_DEFINE_UNQUOTED(CDPARANOIA_HEADERS_IN_DIR, ,
400 defined if cdda headers are in a cdda/ directory)
402 AC_SUBST(CDPARANOIA_LIBS)
404 dnl FIXME : add second check somehow if that is necessary
405 dnl AC_CHECK_LIB(cdda_paranoia, paranoia_init, : , HAVE_CDPARANOIA=no, -lcdda_interface )
406 dnl AC_CHECK_HEADER(cdda_paranoia.h, :, HAVE_CDPARANOIA=no)
409 translit(dnm, m, l) AM_CONDITIONAL(USE_DV, true)
410 GST_CHECK_FEATURE(DV, [libdv DV/video decoder], dvdec, [
411 dnl use pkg-config when gtk deps are removed from its pkg-config .pc
412 AM_PATH_LIBDV(HAVE_DV="yes", HAVE_DV="no")
418 translit(dnm, m, l) AM_CONDITIONAL(USE_DVDREAD, true)
419 GST_CHECK_FEATURE(DVDREAD, [dvdread library], dvdreadsrc, [
420 GST_CHECK_LIBHEADER(DVDREAD, dvdread, DVDOpen, , dvdread/dvd_reader.h, DVDREAD_LIBS="-ldvdread")
421 AC_SUBST(DVDREAD_LIBS)
425 translit(dnm, m, l) AM_CONDITIONAL(USE_DVDNAV, true)
426 GST_CHECK_FEATURE(DVDNAV, [dvdnav library], dvdnavsrc, [
427 translit(dnm, m, l) AC_SUBST(DVDNAV_LIBS)
428 translit(dnm, m, l) AC_SUBST(DVDNAV_CFLAGS)
429 GST_CHECK_CONFIGPROG(DVDNAV, dvdnav-config)
433 translit(dnm, m, l) AM_CONDITIONAL(USE_ESD, true)
434 GST_CHECK_FEATURE(ESD, [esound plug-ins], esdsink esdmon, [
435 AM_PATH_ESD(0.2.12, HAVE_ESD=yes, HAVE_ESD=no)
438 dnl **** festival ****
439 dnl translit(dnm, m, l) AM_CONDITIONAL(USE_FESTIVAL, true)
440 dnl GST_CHECK_FEATURE(FESTIVAL, [festival plug-ins], festivalsrc, [
441 dnl NOTE: just using local net connection now, add this lib check
442 dnl in the future if needed
443 dnl AC_LANG_PUSH(C++)
444 dnl dnl FIXME: took out func to check for
445 dnl dnl This check puts festival_tidy_up in extern "C".
446 dnl dnl But, at least on Debian as of 20020110, it is compiled with name
447 dnl dnl mangling C++ nonsense and symbols can't resolve
448 dnl dnl GST_CHECK_LIBHEADER(FESTIVAL, Festival, festival_tidy_up, , festival/festival.h, FESTIVAL_LIBS="-lFestival")
449 dnl GST_CHECK_LIBHEADER(FESTIVAL, Festival, , , festival/festival.h, FESTIVAL_LIBS="-lFestival")
451 dnl AC_SUBST(FESTIVAL_LIBS)
452 dnl HAVE_FESTIVAL=yes
456 translit(dnm, m, l) AM_CONDITIONAL(USE_FLAC, true)
457 GST_CHECK_FEATURE(FLAC, [FLAC lossless audio], flacenc flacdec, [
458 GST_CHECK_LIBHEADER(FLAC, FLAC, FLAC__stream_decoder_new, -lm, FLAC/all.h, FLAC_LIBS="-lFLAC")
462 dnl *** Gnome VFS ***
463 translit(dnm, m, l) AM_CONDITIONAL(USE_GNOME_VFS, true)
464 GST_CHECK_FEATURE(GNOME_VFS, [Gnome VFS], gnomevfssrc, [
465 PKG_CHECK_MODULES(GNOME_VFS, gnome-vfs-2.0, HAVE_GNOME_VFS="yes", HAVE_GNOME_VFS="no")
466 AC_SUBST(GNOME_VFS_CFLAGS)
467 AC_SUBST(GNOME_VFS_LIBS)
471 translit(dnm, m, l) AM_CONDITIONAL(USE_GSM, true)
472 GST_CHECK_FEATURE(GSM, [GSM library], gsmenc gsmdec, [
473 GST_CHECK_LIBHEADER(GSM, gsm, gsm_create, , gsm.h, GSM_LIBS="-lgsm")
474 if test $HAVE_GSM != "yes"; then
475 GST_CHECK_LIBHEADER(GSM, gsm, gsm_create, , gsm/gsm.h, GSM_LIBS="-lgsm")
476 if test $HAVE_GSM = "yes"; then
477 AC_DEFINE(GSM_HEADER_IN_SUBDIR, 1, [Define if GSM header in gsm/ subdir])
484 translit(dnm, m, l) AM_CONDITIONAL(USE_HERMES, true)
485 GST_CHECK_FEATURE(HERMES, [Hermes library], colorspace, [
486 GST_CHECK_LIBHEADER(HERMES, Hermes, Hermes_ConverterInstance, , Hermes/Hermes.h, HERMES_LIBS="-lHermes")
487 ], AC_SUBST(HERMES_LIBS))
490 translit(dnm, m, l) AM_CONDITIONAL(USE_HTTP, true)
491 GST_CHECK_FEATURE(HTTP, [http plug-ins], gsthttpsrc, [
492 dnl FIXME: need to check for header
494 GST_HTTPSRC_GET_TYPE=
495 if test x$USE_GLIB2 = xyes; then
496 AC_MSG_WARN(ghttp disabled for glib2.0)
498 AC_CHECK_LIB(ghttp, ghttp_request_new,
500 GST_HTTPSRC_GET_TYPE="gst_httpsrc_get_type"
505 AC_SUBST(GST_HTTPSRC_GET_TYPE)
509 translit(dnm, m, l) AM_CONDITIONAL(USE_JACK, true)
510 GST_CHECK_FEATURE(JACK, Jack, jack, [
511 PKG_CHECK_MODULES(JACK, jack >= 0.29.0, HAVE_JACK="yes", HAVE_JACK="no")
512 AC_SUBST(JACK_CFLAGS)
517 dnl FIXME: we could use header checks here as well IMO
518 translit(dnm, m, l) AM_CONDITIONAL(USE_JPEG, true)
519 GST_CHECK_FEATURE(JPEG, [jpeg], jpegenc jpegdec, [
520 AC_CHECK_LIB(jpeg, jpeg_set_defaults, HAVE_JPEG="yes", HAVE_JPEG="no")
526 translit(dnm, m, l) AM_CONDITIONAL(USE_LADSPA, true)
527 GST_CHECK_FEATURE(LADSPA, [ladspa], ladspa, [
528 AC_CHECK_HEADER(ladspa.h, HAVE_LADSPA="yes", HAVE_LADSPA="no")
532 translit(dnm, m, l) AM_CONDITIONAL(USE_LAME, true)
533 GST_CHECK_FEATURE(LAME, [lame mp3 encoder library], lame, [
534 GST_CHECK_LIBHEADER(LAME, mp3lame, lame_init, -lm, lame/lame.h, HAVE_LAME="yes" LAME_LIBS="-lmp3lame")
538 dnl *** libcolorspace ***
539 translit(dnm, m, l) AM_CONDITIONAL(USE_LCS, true)
540 GST_CHECK_FEATURE(LCS, Lcs, lcs, [
541 PKG_CHECK_MODULES(LCS, lcs, HAVE_LCS="yes", HAVE_LCS="no")
547 translit(dnm, m, l) AM_CONDITIONAL(USE_LIBFAME, true)
548 GST_CHECK_FEATURE(LIBFAME, [libfame MPEG1/4 encoder], libfame, [
549 AM_PATH_LIBFAME(0.9.0, HAVE_LIBFAME="yes", HAVE_LIBFAME="no")
550 AC_SUBST(LIBFAME_CFLAGS)
551 AC_SUBST(LIBFAME_LIBS)
555 dnl FIXME: we could use header checks here as well IMO
556 translit(dnm, m, l) AM_CONDITIONAL(USE_MAD, true)
557 GST_CHECK_FEATURE(MAD, [mad mp3 decoder], mad, [
558 AC_CHECK_LIB(mad, mad_decoder_finish, HAVE_MAD="yes" MAD_LIBS="-lmad")
559 if test "x$HAVE_MAD" = "xyes"; then
560 # installed with mad >= 0.14
564 AC_CHECK_LIB(id3tag, id3_tag_query, HAVE_MAD="yes" MAD_LIBS="$MAD_LIBS -lid3tag")
571 translit(dnm, m, l) AM_CONDITIONAL(USE_MIKMOD, true)
572 GST_CHECK_FEATURE(MIKMOD, [mikmod plug-in], mikmod, [
573 AM_PATH_LIBMIKMOD(, HAVE_MIKMOD=yes, HAVE_MIKMOD=no)
574 AC_SUBST(MIKMOD_LIBS, "$LIBMIKMOD_LIBS")
575 AC_SUBST(MIKMOD_CFLAGS, "$LIBMIKMODCFLAGS")
578 dnl *** mjpegtools ***
579 translit(dnm, m, l) AM_CONDITIONAL(USE_MJPEGTOOLS, true)
580 GST_CHECK_FEATURE(MJPEGTOOLS, [mjpegtools], jpegmmxenc jpegmmxdec, [
581 PKG_CHECK_MODULES(MJPEGTOOLS, mjpegtools, HAVE_MJPEGTOOLS="yes", HAVE_MJPEGTOOLS="no")
582 AC_SUBST(MJPEGTOOLS_LIBS)
583 AC_SUBST(MJPEGTOOLS_CFLAGS)
587 translit(dnm, m, l) AM_CONDITIONAL(USE_MPEG2DEC, true)
588 GST_CHECK_FEATURE(MPEG2DEC, [mpeg2dec], mpeg2dec, [
589 AC_CHECK_MPEG2DEC(HAVE_MPEG2DEC=yes, HAVE_MPEG2DEC=no)
592 dnl *** openquicktime ***
593 translit(dnm, m, l) AM_CONDITIONAL(USE_OPENQUICKTIME, true)
594 GST_CHECK_FEATURE(OPENQUICKTIME, [Open Quicktime], quicktime_parser quicktime_decoder quicktime_demux,[
595 GST_CHECK_LIBHEADER(OPENQUICKTIME, openquicktime, quicktime_init,, openquicktime/openquicktime.h, OPENQUICKTIME_LIBS="-lopenquicktime")
596 AC_SUBST(OPENQUICKTIME_LIBS)
600 translit(dnm, m, l) AM_CONDITIONAL(USE_RAW1394, true)
601 GST_CHECK_FEATURE(RAW1394, [raw1394 library], dv1394src, [
602 GST_CHECK_LIBHEADER(RAW1394, raw1394, raw1394_get_handle,, libraw1394/raw1394.h, RAW1394_LIBS="-raw1394")
603 AC_SUBST(RAW1394_LIBS)
607 dnl FIXME : adapt and make it work
608 translit(dnm, m, l) AM_CONDITIONAL(USE_RTP, true)
609 GST_CHECK_FEATURE(RTP, [RTP library], rtpenc rtpdec,[
610 AC_CHECK_LIB(ortp, ortp_init, HAVE_RTP=yes, HAVE_RTP=no, $GST_CFLAGS $GST_LIBS)
615 dnl FIXME header check needs to use GLIB_CFLAGS in order to succeed for rtp
616 dnl can use GST_* which should have GLIB_* info
617 dnl AC_CHECK_HEADERS(rtp/rtp.h, HAVE_LIBRTP=yes, HAVE_LIBRTP=no)
618 dnl AC_CHECK_HEADERS(rtp/rtp-packet.h, :, HAVE_LIBRTP=no)
619 dnl AC_CHECK_HEADERS(rtp/rtcp-packet.h, :, HAVE_LIBRTP=no)
620 dnl AC_CHECK_HEADERS(rtp/rtp-audio.h, :, HAVE_LIBRTP=no)
623 translit(dnm, m, l) AM_CONDITIONAL(USE_SDL, true)
624 GST_CHECK_FEATURE(SDL, [SDL plug-in], sdlvideosink, [
625 AM_PATH_SDL(, HAVE_SDL=yes, HAVE_SDL=no)
629 translit(dnm, m, l) AM_CONDITIONAL(USE_SHOUT, true)
630 GST_CHECK_FEATURE(SHOUT, [shout plug-in], icecastsend, [
631 GST_CHECK_LIBHEADER(SHOUT, shout, shout_init_connection,, shout/shout.h, SHOUT_LIBS="-lshout")
636 translit(dnm, m, l) AM_CONDITIONAL(USE_SIDPLAY, true)
637 GST_CHECK_FEATURE(SIDPLAY, [sidplay plug-in], sidplay, [
641 dnl *** smoothwave ***
642 translit(dnm, m, l) AM_CONDITIONAL(USE_SMOOTHWAVE, true)
643 GST_CHECK_FEATURE(SMOOTHWAVE, [smoothwave plug-in], smoothwave, [
644 if test $HAVE_GTK = "yes"; then HAVE_SMOOTHWAVE=yes; fi;
649 translit(dnm, m, l) AM_CONDITIONAL(USE_LIBPNG, true)
650 GST_CHECK_FEATURE(LIBPNG, [snapshot plug-in], snapshot, [
651 GST_CHECK_LIBHEADER(LIBPNG, png, png_read_info, -lz, png.h, LIBPNG_LIBS="-lpng -lz")
652 AC_SUBST(LIBPNG_LIBS)
656 dnl for now the sources are included in the plug-in
657 dnl and should be moved to ext-libs/ perhaps
658 translit(dnm, m, l) AM_CONDITIONAL(USE_TARKIN, true)
659 GST_CHECK_FEATURE(TARKIN, [tarkinenc tarkindec], tarkin, [
664 dnl AM_PATH_VORBIS only takes two options
665 translit(dnm, m, l) AM_CONDITIONAL(USE_VORBIS, true)
666 GST_CHECK_FEATURE(VORBIS, [vorbis plug-in], vorbisenc vorbisdec, [
667 AM_PATH_VORBIS(HAVE_VORBIS=yes, HAVE_VORBIS=no)
671 translit(dnm, m, l) AM_CONDITIONAL(USE_XMMS, true)
672 GST_CHECK_FEATURE(XMMS, [xmms plug-in], xmms, [
673 AM_PATH_XMMS(0.1.0, HAVE_XMMS=yes, HAVE_XMMS=no)
676 fi dnl of EXT plugins
678 dnl Check for atomic.h
679 dnl Note: use AC_CHECK_HEADER not AC_CHECK_HEADERS, because the latter
680 dnl defines the wrong default symbol as well (HAVE_ASM_ATOMIC_H)
681 AC_CHECK_HEADER(asm/atomic.h, HAVE_ATOMIC_H=yes, HAVE_ATOMIC_H=no)
682 dnl Do a compile to check that it has atomic_set (eg, linux 2.0 didn't)
683 if test x$HAVE_ATOMIC_H = xyes; then
685 #include "asm/atomic.h"
686 main() { atomic_t t; atomic_set(&t,0); atomic_inc(&t); atomic_add(1,&t);return 0;}
689 if test x$HAVE_ATOMIC_H = xyes; then
690 AC_MSG_WARN(Atomic reference counting is out of date: doing without.)
696 AC_MSG_WARN(Can't check properly for atomic reference counting. Assuming OK.)
701 dnl ######################################################################
702 dnl # Check command line parameters, and set shell variables accordingly #
703 dnl ######################################################################
707 AC_ARG_ENABLE(libmmx,
708 AC_HELP_STRING([--enable-libmmx],[use libmmx, if available]),
709 [case "${enableval}" in
710 yes) USE_LIBMMX=$HAVE_LIBMMX ;;
712 *) AC_MSG_ERROR(bad value ${enableval} for --enable-libmmx) ;;
714 [USE_LIBMMX=$HAVE_LIBMMX]) dnl Default value
716 AC_ARG_ENABLE(atomic,
717 AC_HELP_STRING([--enable-atomic],[use atomic reference counting header]),
718 [case "${enableval}" in
719 yes) USE_ATOMIC_H=$HAVE_ATOMIC_H;;
720 noset) USE_ATOMIC_H=$HAVE_ATOMIC_H;;
721 no) USE_ATOMIC_H=no;;
722 *) AC_MSG_ERROR(bad value ${enableval} for --enable-atomic) ;;
724 [USE_ATOMIC_H=$HAVE_ATOMIC_H]) dnl Default value
726 AC_ARG_ENABLE(profiling,
727 AC_HELP_STRING([--enable-profiling],
728 [-pg to compiler commandline, for profiling]),
729 [case "${enableval}" in
730 yes) USE_PROFILING=yes ;;
731 no) UES_PROFILING=no ;;
732 *) AC_MSG_ERROR(bad value ${enableval} for --enable-profiling) ;;
734 [USE_PROFILING=no]) dnl Default value
737 AC_HELP_STRING([--disable-tests],[disable building test apps]),
738 [case "${enableval}" in
739 yes) BUILD_TESTS=yes ;;
740 no) BUILD_TESTS=no ;;
741 *) AC_MSG_ERROR(bad value ${enableval} for --disable-tests) ;;
743 [BUILD_TESTS=yes]) dnl Default value
745 AC_ARG_ENABLE(examples,
746 AC_HELP_STRING([--disable-examples],[disable building examples]),
747 [case "${enableval}" in
748 yes) BUILD_EXAMPLES=yes ;;
749 no) BUILD_EXAMPLES=no ;;
750 *) AC_MSG_ERROR(bad value ${enableval} for --disable-examples) ;;
752 [BUILD_EXAMPLES=yes]) dnl Default value
754 dnl ################################################
755 dnl # Set defines according to variables set above #
756 dnl ################################################
759 if test "x$USE_LIBMMX" = xyes; then
760 AC_DEFINE(HAVE_LIBMMX, 1, [Define if libmmx is available])
763 if test "x$USE_ATOMIC_H" = xyes; then
764 AC_DEFINE(HAVE_ATOMIC_H, 1, [Define if atomic.h header file is available])
767 if test "x$USE_DEBUG" = xyes; then
768 GST_CFLAGS="$GST_CFLAGS -g"
771 if test "x$USE_PROFILING" = xyes; then
772 dnl CFLAGS="$CFLAGS -pg -fprofile-arcs"
773 FOMIT_FRAME_POINTER=""
775 FOMIT_FRAME_POINTER="-fomit-frame-pointer"
779 dnl AC_SUBST(FOMIT_FRAME_POINTER)
782 dnl #############################
783 dnl # Set automake conditionals #
784 dnl #############################
786 dnl These should be "USE_*" instead of "HAVE_*", but some packages expect
787 dnl HAVE_ and it is likely to be easier to stick with the old name
788 AM_CONDITIONAL(HAVE_CPU_I386, test "x$HAVE_CPU_I386" = "xyes")
789 AM_CONDITIONAL(HAVE_CPU_PPC, test "x$HAVE_CPU_PPC" = "xyes")
790 AM_CONDITIONAL(HAVE_CPU_ALPHA, test "x$HAVE_CPU_ALPHA" = "xyes")
791 AM_CONDITIONAL(HAVE_CPU_ARM, test "x$HAVE_CPU_ARM" = "xyes")
792 AM_CONDITIONAL(HAVE_CPU_SPARC, test "x$HAVE_CPU_SPARC" = "xyes")
793 AM_CONDITIONAL(HAVE_LIBMMX, test "x$USE_LIBMMX" = "xyes")
795 AM_CONDITIONAL(HAVE_ATOMIC_H, test "x$USE_ATOMIC_H" = "xyes")
797 AM_CONDITIONAL(EXPERIMENTAL, test "$EXPERIMENTAL" = "$xyes")
798 AM_CONDITIONAL(BROKEN, test "$BROKEN" = "$xyes")
800 AM_CONDITIONAL(HAVE_NASM, test "x$HAVE_NASM" = "xyes")
801 AM_CONDITIONAL(HAVE_LIBGLADE_GNOME, test "x$HAVE_LIBGLADE_GNOME" = "xyes")
802 AM_CONDITIONAL(HAVE_GNOME, test "x$HAVE_GNOME" = "xyes")
803 AM_CONDITIONAL(HAVE_GTK, test "x$HAVE_GTK" = "xyes")
804 AM_CONDITIONAL(HAVE_GTK_DOC, $HAVE_GTK_DOC)
805 AM_CONDITIONAL(BUILD_DOCS, test "x$BUILD_DOCS" = "xyes")
806 AM_CONDITIONAL(BUILD_TESTS, test "x$BUILD_TESTS" = "xyes")
807 AM_CONDITIONAL(BUILD_EXAMPLES, test "x$BUILD_EXAMPLES" = "xyes")
808 AM_CONDITIONAL(BUILD_PLUGIN_DOCS, test "x$BUILD_PLUGIN_DOCS" = "xyes")
809 AM_CONDITIONAL(HAVE_FIG2DEV_PNG, $HAVE_FIG2DEV_PNG)
810 AM_CONDITIONAL(HAVE_FIG2DEV_PDF, $HAVE_FIG2DEV_PDF)
811 AM_CONDITIONAL(HAVE_RAW1394, test "x$HAVE_RAW1394" = "xyes")
813 GST_CFLAGS="$GST_CFLAGS -I\$(top_srcdir)/gst-libs -Wall -Werror"
817 dnl #########################
818 dnl # Make the output files #
819 dnl #########################
821 dnl testsuite/autoplug/Makefile
822 dnl testsuite/Makefile
826 gstreamer-libs-uninstalled.pc
829 gst/ac3parse/Makefile
831 gst/audioscale/Makefile
834 gst/cdxaparse/Makefile
837 gst/deinterlace/Makefile
839 gst/festival/Makefile
843 gst/intfloat/Makefile
847 gst/mpeg1enc/Makefile
848 gst/mpeg1sys/Makefile
849 gst/mpeg1videoparse/Makefile
850 gst/mpeg2enc/Makefile
851 gst/mpeg2sub/Makefile
852 gst/mpegaudio/Makefile
853 gst/mpegaudioparse/Makefile
854 gst/mpegstream/Makefile
855 gst/mpegtypes/Makefile
857 gst/modplug/libmodplug/Makefile
858 gst/monoscope/Makefile
859 gst/passthrough/Makefile
860 gst/playondemand/Makefile
866 gst/spectrum/Makefile
869 gst/stereomono/Makefile
870 gst/synaesthesia/Makefile
872 gst/videoscale/Makefile
876 gst/wavparse/Makefile
886 sys/videosink/Makefile
893 ext/audiofile/Makefile
895 ext/cdparanoia/Makefile
902 ext/gnomevfs/Makefile
914 ext/mjpegtools/Makefile
915 ext/mpeg2dec/Makefile
916 ext/openquicktime/Makefile
922 ext/smoothwave/Makefile
927 gst-libs/gst/Makefile
928 gst-libs/gst/audio/Makefile
929 gst-libs/gst/floatcast/Makefile
930 gst-libs/gst/gconf/Makefile
931 gst-libs/gst/idct/Makefile
932 gst-libs/gst/resample/Makefile
933 gst-libs/gst/riff/Makefile
934 examples/dynparams/Makefile
935 examples/capsfilter/Makefile
936 examples/seeking/Makefile
944 echo -e "configure: *** Plug-ins that will be built : $GST_PLUGINS_YES"
946 echo -e "configure: *** Plug-ins that will not be built : $GST_PLUGINS_NO"
948 if test "x$BUILD_EXTERNAL" = "xno"; then
949 echo "configure: *** No external plug-ins will be built"