jpegmmx addition and some small changes
[platform/upstream/gstreamer.git] / configure.ac
1 dnl autoconf configuration file for plugins 
2 AC_INIT
3 dnl FIXME take something else ?
4 AC_CONFIG_SRCDIR([COPYING])
5
6 AC_CANONICAL_TARGET([])
7
8 AM_CONFIG_HEADER(config.h)
9
10 GST_VERSION_MAJOR=0
11 GST_VERSION_MINOR=3
12 GST_VERSION_MICRO=11
13
14 dnl we use a datestamped release tag during CVS development
15 GST_VERSION_RELEASE=`date +%Y%m%d`
16 dnl we use a normal release tag increased manually when releasing
17 dnl GST_VERSION_RELEASE=1
18
19 GST_VERSION=$GST_VERSION_MAJOR.$GST_VERSION_MINOR.$GST_VERSION_MICRO
20
21 PACKAGE=gst-plugins
22 VERSION=$GST_VERSION
23
24 AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE")
25 AC_DEFINE_UNQUOTED(VERSION, "$VERSION")
26 AC_SUBST(PACKAGE)
27 AC_SUBST(VERSION)
28 AC_DEFINE_UNQUOTED(GST_VERSION_RELEASE, "$GST_VERSION_RELEASE")
29 AC_SUBST(GST_VERSION_RELEASE)
30
31 dnl libtool
32 GST_CURRENT=2
33 GST_REVISION=0
34 GST_AGE=0
35 GST_LIBVERSION=$GST_CURRENT:$GST_REVISION:$GST_AGE
36
37 AM_INIT_AUTOMAKE($PACKAGE, $VERSION)
38 dnl Add parameters for aclocal
39 dnl (This must come after AM_INIT_AUTOMAKE, since it modifies ACLOCAL)
40 ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
41
42 AC_SUBST(GST_VERSION_MAJOR)
43 AC_SUBST(GST_VERSION_MINOR)
44 AC_SUBST(GST_VERSION_MICRO)
45 AC_SUBST(GST_VERSION)
46
47 AC_SUBST(GST_CURRENT)
48 AC_SUBST(GST_REVISION)
49 AC_SUBST(GST_AGE)
50 AC_SUBST(GST_LIBVERSION)
51
52 AM_MAINTAINER_MODE
53
54 AC_PROG_CC
55 AM_PROG_CC_STDC
56 AM_PROG_AS
57 AS="${CC}"
58 AC_PROG_CXX
59 AC_PROG_CXXCPP
60 AC_ISC_POSIX
61
62 dnl We disable static building for development, for time savings
63 dnl *NOTE*: dnl this line before release, so release does static too
64 AM_DISABLE_STATIC
65 AC_LIBTOOL_DLOPEN
66 AM_PROG_LIBTOOL
67
68 AC_HEADER_STDC([])
69
70 dnl ###########################################
71 dnl # Super Duper options for plugin building #
72 dnl ###########################################
73
74 dnl experimental plugins; stuff that hasn't had the dust settle yet
75 dnl read 'builds, but might not work'
76 GST_CHECK_FEATURE(EXPERIMENTAL, [enable building of experimental plugins],,
77 [HAVE_EXPERIMENTAL=yes],disabled,
78 [
79   AC_MSG_WARN(building experimental plugins)
80   USE_SMOOTHWAVE="yes"
81 ],[
82   AC_MSG_NOTICE(not building experimental plugins)
83   USE_SMOOTHWAVE="no"
84 ])
85
86 dnl broken plugins; stuff that doesn't seem to build at the moment
87 GST_CHECK_FEATURE(BROKEN, [enable building of broken plugins],,
88 HAVE_BROKEN=yes,disabled,
89 [  
90   AC_MSG_WARN(building broken plugins)
91   USE_VGA="yes"
92   USE_XMMS="yes"
93   dnl AC_MSG_NOTICE(actually there are no broken plugins at the moment)
94 ],[
95   USE_VGA="no"
96   USE_XMMS="no"
97   AC_MSG_NOTICE(not building broken plugins)
98 ])
99
100 dnl ##############################
101 dnl # Do automated configuration #
102 dnl ##############################
103
104 dnl Check for tools:
105 dnl ================
106
107 dnl modify pkg-config path
108 AC_ARG_WITH(pkg-config-path, 
109    AC_HELP_STRING([--with-pkg-config-path],[colon-separated list of pkg-config(1) dirs]),
110    [export PKG_CONFIG_PATH=${withval}])
111
112 dnl Check for nasm
113 AC_PATH_PROG(NASM_PATH, nasm, no)
114 AC_SUBST(NASM_PATH)
115 if test x$NASM_PATH = xno; then
116   AC_MSG_WARN(Couldn't find nasm)
117   HAVE_NASM="no"
118 else
119   AC_DEFINE(HAVE_NASM, 1, [Define if NASM, the netwide assembler, is available])
120   HAVE_NASM="yes"
121 fi
122
123 dnl check for gstreamer; uninstalled is selected preferentially -- see pkg-config(1)
124 PKG_CHECK_MODULES(GST, gstreamer >= 0.3.1, HAVE_GST="yes", HAVE_GST="no")
125
126 if test "x$HAVE_GST" = "xno"; then
127   AC_MSG_ERROR(no GStreamer found)
128 fi
129
130 dnl Set up conditionals for (target) architecture:
131 dnl ==============================================
132
133 dnl Determine CPU
134 case "x${target_cpu}" in
135   xi?86 | k?) HAVE_CPU_I386=yes
136               AC_DEFINE(HAVE_CPU_I386, 1, [Define if the target CPU is an x86])
137               dnl FIXME could use some better detection
138               dnl       (ie CPUID)
139               case "x${target_cpu}" in
140                 xi386 | xi486) ;;
141                 *)             AC_DEFINE(HAVE_RDTSC) ;;
142               esac ;;
143   xpowerpc)   HAVE_CPU_PPC=yes
144               AC_DEFINE(HAVE_CPU_PPC, 1, [Define if the target CPU is a PPC]) ;;
145   xalpha)     HAVE_CPU_ALPHA=yes
146               AC_DEFINE(HAVE_CPU_ALPHA, 1, [Define if the target CPU is an Alpha]) ;;
147   xarm*)      HAVE_CPU_ARM=yes
148               AC_DEFINE(HAVE_CPU_ARM, 1, [Define if the target CPU is an ARM]) ;;
149   xsparc*)    HAVE_CPU_SPARC=yes
150               AC_DEFINE(HAVE_CPU_SPARC, 1, [Define if the target CPU is a PPC]) ;;
151   xmips*)     HAVE_CPU_MIPS=yes
152               AC_DEFINE(HAVE_CPU_MIPS, 1, [Define if the target CPU is a MIPS]) ;;
153   xhppa*)     HAVE_CPU_HPPA=yes
154               AC_DEFINE(HAVE_CPU_HPPA, 1, [Define if the target CPU is a HPPA]) ;;
155 esac
156
157 dnl Determine endianness
158 AC_C_BIGENDIAN
159
160 dnl Check for MMX-capable compiler
161 AC_MSG_CHECKING(for MMX-capable compiler)
162 AC_TRY_RUN([
163 #include "include/mmx.h"
164
165 main()
166 { movq_r2r(mm0, mm1); return 0; }
167 ],
168 [
169 HAVE_LIBMMX="yes"
170 AC_MSG_RESULT(yes)
171 ],
172 HAVE_LIBMMX="no"
173 AC_MSG_RESULT(no)
174 ,
175 HAVE_LIBMMX="no"
176 AC_MSG_RESULT(no)
177 )
178
179 dnl
180 dnl We should really use AC_SYS_LARGEFILE, but the problem is
181 dnl many of the plugins don't include "config.h".  To assure
182 dnl binary compatibility, it is necessary that all gstreamer
183 dnl code be compiled with the same sizeof(off_t), so we use
184 dnl the following crude hack.
185 dnl
186
187 AC_MSG_CHECKING(for large file support)
188 AC_TRY_RUN([
189 #define _LARGEFILE_SOURCE
190 #define _FILE_OFFSET_BITS 64
191 #include <sys/types.h>
192 int main () { return !(sizeof(off_t) == 8); }
193 ],
194 [
195 AC_MSG_RESULT(yes)
196 GST_CFLAGS="$GST_CFLAGS -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
197 ],
198 [
199 AC_MSG_RESULT(no)
200 ],
201 [
202 AC_MSG_RESULT(no)
203 ])
204
205 dnl Check for essential libraries first:
206 dnl ====================================
207
208 if test -n "`echo $GST_CFLAGS | grep USE_GLIB2`"; then
209   USE_GLIB2=yes
210 else
211   USE_GLIB2=no
212 fi
213
214 dnl needed for some plugins and demos, now's a nice time to check for gtk
215 if test x$USE_GLIB2 = xno; then
216   AM_PATH_GTK(1.2.0,,
217               AC_MSG_ERROR(Cannot find gtk: Is gtk-config in path?))
218   HAVE_GTK=yes
219   # we have to have it
220 else
221   PKG_CHECK_MODULES(GTK2, gtk+-2.0, HAVE_GTK=yes, HAVE_GTK=no)
222
223   GTK_CFLAGS=$GTK2_CFLAGS
224   GTK_LIBS=$GTK2_LIBS
225 fi
226 AC_SUBST(GTK_LIBS)
227 AC_SUBST(GTK_CFLAGS)
228
229 dnl Check for X11 extensions
230 AC_PATH_XTRA
231 if test "-DX_DISPLAY_MISSING" = "$X_CFLAGS"; then
232   AC_MSG_ERROR(can not find X11)
233 fi
234 AC_SUBST(X_CFLAGS)
235 AC_SUBST(X_PRE_LIBS)
236 AC_SUBST(X_EXTRA_LIBS)
237 AC_SUBST(X_LIBS)
238
239 dnl ==========================================================================
240 dnl ============================= gst plugins ================================
241 dnl ==========================================================================
242
243 GST_PLUGINS_ALL="\
244         ac3parse adder audioscale auparse avi chart\
245         cutter deinterlace flx intfloat law level\
246         median mpeg1enc mpeg1sys mpeg1videoparse mpeg2enc mpeg2sub\
247         mpegaudio mpegaudioparse mpegstream mpegtypes\
248         passthrough playondemand rtjpeg silence sine\
249         smooth spectrum speed stereo stereomono\
250         synaesthesia udp videoscale volenv volume vumeter wavparse y4m"
251
252 AC_SUBST(GST_PLUGINS_ALL)
253
254 GST_PLUGINS_SELECTED=""
255
256 AC_ARG_WITH(plugins,
257     AC_HELP_STRING([--with-plugins],[comma-separated list of plugins to compile]),
258     [for i in `echo $withval | tr , ' '`; do
259         if test -n `echo $i | grep $GST_PLUGINS_ALL`; then
260             GST_PLUGINS_SELECTED="$GST_PLUGINS_SELECTED $i"
261         else
262             echo "plugin $i not recognized, ignoring..."
263         fi
264     done],
265     [GST_PLUGINS_SELECTED=$GST_PLUGINS_ALL])
266
267 AC_SUBST(GST_PLUGINS_SELECTED)
268
269 dnl ==========================================================================
270 dnl ============================= sys plugins ================================
271 dnl ==========================================================================
272
273
274 dnl *** OSS audio ***
275 translit(dnm, m, l) AM_CONDITIONAL(USE_OSS, true)
276 GST_CHECK_FEATURE(OSS, [OSS audio], osssrc osssink, [
277   AC_CHECK_HEADER(sys/soundcard.h, HAVE_OSS="yes", HAVE_OSS="no")
278 ])
279
280 dnl *** QuickCam ***
281 translit(dnm, m, l) AM_CONDITIONAL(USE_QCAM, true)
282 GST_CHECK_FEATURE(QCAM, [QuickCam], qcamsrc, HAVE_QCAM="yes")
283
284 dnl *** Video 4 Linux ***
285 translit(dnm, m, l) AM_CONDITIONAL(USE_V4L, true)
286 GST_CHECK_FEATURE(V4L, [Video 4 Linux], v4lsrc, [
287   AC_CHECK_DECL(VID_TYPE_MPEG_ENCODER, HAVE_V4L="yes", HAVE_V4L="no", [#include <linux/videodev.h>])
288 ])
289
290 dnl *** Video CD ***
291 translit(dnm, m, l) AM_CONDITIONAL(USE_VCD, true)
292 GST_CHECK_FEATURE(VCD, [Video CD], vcdsrc, [
293   AC_CHECK_HEADER(linux/cdrom.h, HAVE_VCD="yes", HAVE_VCD="no")
294 ])
295
296 dnl *** VGA ***
297 translit(dnm, m, l) AM_CONDITIONAL(USE_VGA, true)
298 GST_CHECK_FEATURE(VGA, [VGA], vgavideosink, [
299   AC_CHECK_HEADER(asm/vga.h, HAVE_VGA="yes", HAVE_VGA="no")
300 ])
301
302 dnl *** XVideo ***
303 dnl Look for the PIC library first, Debian requires it.
304 dnl Check debian-devel archives for gory details.
305 dnl 20020110:
306 dnl At the moment XFree86 doesn't distribute shared libXv due
307 dnl to unstable API.  On many platforms you CAN NOT link a shared
308 dnl lib to a static non-PIC lib.  This is what the xvideo GStreamer
309 dnl plugin wants to do.  So Debian distributes a PIC compiled
310 dnl version of the static lib for plugins to link to when it is
311 dnl inappropriate to link the main application to libXv directly.
312 dnl FIXME: add check if this platform can support linking to a
313 dnl        non-PIC libXv, if not then don not use Xv.
314 dnl FIXME: perhaps warn user if they have a shared libXv since
315 dnl        this is an error until XFree86 starts shipping one
316 translit(dnm, m, l) AM_CONDITIONAL(USE_XVIDEO, true)
317 GST_CHECK_FEATURE(XVIDEO, [X11 XVideo extensions], xvideosink, [
318   dnl check for PIC static lib
319   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")
320   if test x$HAVE_XVIDEO = xno; then
321     dnl PIC lib not found, check for regular lib
322     GST_CHECK_LIBHEADER(XVIDEO, Xv, XvQueryExtension, $X_LIBS $X_PRE_LIBS -lXext -lX11 $X_EXTRA_LIBS, X11/extensions/Xvlib.h, XVIDEO_LIBS="-lXv -lXext")
323   fi
324   AC_SUBST(XVIDEO_LIBS)
325 ])
326
327 dnl Next, check for the optional libraries:
328 dnl These are all libraries used in building plugins
329 dnl ================================================
330 dnl let's try and sort them alphabetically, shall we ?
331
332 echo
333 echo
334 AC_MSG_NOTICE(Checking for plugin libraries)
335
336 dnl *** a52dec ***
337 translit(dnm, m, l) AM_CONDITIONAL(USE_A52DEC, true)
338 GST_CHECK_FEATURE(A52DEC, [a52dec], a52dec, [
339   GST_CHECK_LIBHEADER(A52DEC, a52, a52_init, -lm, a52dec/a52.h, A52DEC_LIBS="-la52")
340 ])
341
342 dnl *** aalib ***
343 translit(dnm, m, l) AM_CONDITIONAL(USE_AALIB, true)
344 GST_CHECK_FEATURE(AALIB, [aasink plugin], aasink, [
345   AM_PATH_AALIB(, HAVE_AALIB=yes, HAVE_AALIB=no)
346 ])
347
348 dnl *** alsa ***
349 translit(dnm, m, l) AM_CONDITIONAL(USE_ALSA, true)
350 GST_CHECK_FEATURE(ALSA, [alsa plugins], gstalsa, [
351   AM_PATH_ALSA(0.9.0, HAVE_ALSA=yes, HAVE_ALSA=no)
352 ])
353
354 dnl *** arts ***
355
356 dnl if mcopidl can't be found there's no use in compiling it
357 AC_CHECK_PROG(MCOPIDL, mcopidl, yes, no)
358 if test "xHAVE_MCOPIDL" = "xno";
359 then
360   USE_ARTS=no
361 fi
362
363 translit(dnm, m, l) AM_CONDITIONAL(USE_ARTS, true)
364 GST_CHECK_FEATURE(ARTS, [arts plugins], arts, [
365   AM_PATH_ARTS(, HAVE_ARTS=yes, HAVE_ARTS=no)
366 ])
367 dnl if mcopidl can't be found there's no use in compiling it
368 AC_PATH_PROG(MCOPIDL, mcopidl, yes, no)
369 if test "xHAVE_MCOPIDL" = "xno";
370 then
371   USE_ARTS=NO
372 fi
373
374 dnl *** artsc ***
375 translit(dnm, m, l) AM_CONDITIONAL(USE_ARTSC, true)
376 GST_CHECK_FEATURE(ARTSC, [artsd plugins], artsdsink, [
377   GST_CHECK_ARTSC()
378 ])
379
380 dnl *** audiofile ***
381 dnl this check uses the GST_CHECK_CONFIGPROG macro
382 translit(dnm, m, l) AM_CONDITIONAL(USE_AUDIOFILE, true)
383 GST_CHECK_FEATURE(AUDIOFILE, [audiofile], afsink afsrc, [
384   translit(dnm, m, l) AC_SUBST(AUDIOFILE_LIBS)
385   translit(dnm, m, l) AC_SUBST(AUDIOFILE_CFLAGS)
386   GST_CHECK_CONFIGPROG(AUDIOFILE, audiofile-config)
387 ])
388
389 dnl *** avifile ***
390 dnl this check uses the GST_CHECK_CONFIGPROG macro
391 dnl this check needs more fixing
392 dnl translit(dnm, m, l) AC_SUBST(AVIFILE_LIBS)
393 translit(dnm, m, l) AM_CONDITIONAL(USE_AVIFILE, true)
394 GST_CHECK_FEATURE(AVIFILE, [avifile], windec winenc, [
395   translit(dnm, m, l) AC_SUBST(AVIFILE_CFLAGS)
396   GST_CHECK_CONFIGPROG(AVIFILE, avifile-config)
397   AVIFILE_LIBS="$AVIFILE_LIBS -lstdc++"
398   AC_SUBST(AVIFILE_LIBS)
399 ])
400
401 dnl *** CDParanoia ***
402 translit(dnm, m, l) AM_CONDITIONAL(USE_CDPARANOIA, true)
403 GST_CHECK_FEATURE(CDPARANOIA, [CDParanoia], cdparanoia, [
404   GST_CHECK_LIBHEADER(CDPARANOIA, cdda_interface, cdda_open, -lm, cdda_interface.h, CDPARANOIA_LIBS="-lcdda_interface -lcdda_paranoia")
405   AC_SUBST(CDPARANOIA_LIBS)
406 ])
407 dnl FIXME : add second check somehow if that is necessary
408 dnl AC_CHECK_LIB(cdda_paranoia, paranoia_init, : , HAVE_CDPARANOIA=no, -lcdda_interface )
409 dnl AC_CHECK_HEADER(cdda_paranoia.h, :, HAVE_CDPARANOIA=no)
410
411 dnl *** dv ***
412 translit(dnm, m, l) AM_CONDITIONAL(USE_DV, true)
413 GST_CHECK_FEATURE(DV, [dv library], dv, [
414   GST_CHECK_LIBHEADER(DV, dv, dv_init, -lm $GST_CFLAGS $GST_LIBS, libdv/dv.h, DV_LIBS="-ldv")
415   AC_SUBST(DV_LIBS)
416 ])
417
418 dnl *** dvdread ***
419 translit(dnm, m, l) AM_CONDITIONAL(USE_DVDREAD, true)
420 GST_CHECK_FEATURE(DVDREAD, [dvdread library], dvdsrc, [
421   GST_CHECK_LIBHEADER(DVDREAD, dvdread, DVDOpen, , dvdread/dvd_reader.h, DVDREAD_LIBS="-ldvdread")
422   AC_SUBST(DVDREAD_LIBS)
423 ])
424
425 dnl **** ESound ****
426 translit(dnm, m, l) AM_CONDITIONAL(USE_ESD, true)
427 GST_CHECK_FEATURE(ESD, [esound plugins], esdsrc esdsink, [
428   AM_PATH_ESD(0.2.12, HAVE_ESD=yes, HAVE_ESD=no)
429 ])
430
431 dnl **** festival ****
432 translit(dnm, m, l) AM_CONDITIONAL(USE_FESTIVAL, true)
433 GST_CHECK_FEATURE(FESTIVAL, [festival plugins], festivalsrc, [
434   dnl NOTE: just using local net connection now, add this lib check
435   dnl       in the future if needed
436   dnl AC_LANG_PUSH(C++)
437   dnl dnl FIXME: took out func to check for
438   dnl dnl This check puts festival_tidy_up in extern "C".
439   dnl dnl But, at least on Debian as of 20020110, it is compiled with name
440   dnl dnl mangling C++ nonsense and symbols can't resolve
441   dnl dnl GST_CHECK_LIBHEADER(FESTIVAL, Festival, festival_tidy_up, , festival/festival.h, FESTIVAL_LIBS="-lFestival")
442   dnl GST_CHECK_LIBHEADER(FESTIVAL, Festival, , , festival/festival.h, FESTIVAL_LIBS="-lFestival")
443   dnl AC_LANG_POP(C++)
444   dnl AC_SUBST(FESTIVAL_LIBS)
445   HAVE_FESTIVAL=yes
446 ])
447
448 dnl *** FLAC ***
449 translit(dnm, m, l) AM_CONDITIONAL(USE_FLAC, true)
450 GST_CHECK_FEATURE(FLAC, [FLAC lossless audio], flacenc flacdec, [
451   GST_CHECK_LIBHEADER(FLAC, FLAC, FLAC__stream_decoder_new, -lm, FLAC/all.h, FLAC_LIBS="-lFLAC")
452   AC_SUBST(FLAC_LIBS)
453 ])
454
455 dnl *** Gnome VFS ***
456 dnl this check uses the GST_CHECK_CONFIGPROG macro with gnome-config vfs
457 translit(dnm, m, l) AM_CONDITIONAL(USE_GNOME_VFS, true)
458 GST_CHECK_FEATURE(GNOME_VFS, [Gnome VFS], gnomevfssrc, [
459 translit(dnm, m, l) AC_SUBST(GNOME_VFS_LIBS)
460 translit(dnm, m, l) AC_SUBST(GNOME_VFS_CFLAGS)
461 GST_CHECK_CONFIGPROG(GNOME_VFS, gnome-config vfs)
462 ])
463
464 dnl *** gsm ***
465 translit(dnm, m, l) AM_CONDITIONAL(USE_GSM, true)
466 GST_CHECK_FEATURE(GSM, [GSM library], gsmenc gsmdec, [
467   GST_CHECK_LIBHEADER(GSM, gsm, gsm_create, , gsm.h, GSM_LIBS="-lgsm")
468   if test $HAVE_GSM != "yes"; then
469     GST_CHECK_LIBHEADER(GSM, gsm, gsm_create, , gsm/gsm.h, GSM_LIBS="-lgsm")
470     if test $HAVE_GSM = "yes"; then 
471       AC_DEFINE(GSM_HEADER_IN_SUBDIR)
472     fi
473   fi
474   AC_SUBST(GSM_LIBS)
475 ])
476
477 dnl *** Hermes ***
478 translit(dnm, m, l) AM_CONDITIONAL(USE_HERMES, true)
479 GST_CHECK_FEATURE(HERMES, [Hermes library], colorspace, [
480   GST_CHECK_LIBHEADER(HERMES, Hermes, Hermes_ConverterInstance, , Hermes/Hermes.h, HERMES_LIBS="-lHermes")
481 ], AC_SUBST(HERMES_LIBS))
482
483 dnl *** http ***
484 translit(dnm, m, l) AM_CONDITIONAL(USE_HTTP, true)
485 GST_CHECK_FEATURE(HTTP, [http plugins], gsthttpsrc, [
486   dnl FIXME: need to check for header
487   GHTTP_LIBS=
488   GST_HTTPSRC_GET_TYPE=
489   if test x$USE_GLIB2 = xyes; then
490     AC_MSG_WARN(ghttp disabled for glib2.0)
491   else
492     AC_CHECK_LIB(ghttp, ghttp_request_new,
493       [HTTP_LIBS="-lghttp"
494        GST_HTTPSRC_GET_TYPE="gst_httpsrc_get_type"
495        HAVE_HTTP=yes
496       ], :, $LIBS)
497   fi
498   AC_SUBST(HTTP_LIBS)
499   AC_SUBST(GST_HTTPSRC_GET_TYPE)
500 ])
501
502 dnl *** lame ***
503 translit(dnm, m, l) AM_CONDITIONAL(USE_LAME, true)
504 GST_CHECK_FEATURE(LAME, [lame mp3 encoder library], lame, [
505 GST_CHECK_LIBHEADER(LAME, mp3lame, lame_init, -lm, lame/lame.h, LAME_LIBS="-lmp3lame")
506 ])
507 AC_SUBST(LAME_LIBS)
508
509
510 dnl FIXME : check if these CPP flags can be dealt with otherwise
511 dnl libdvcheck_save_CPPFLAGS="$CPPFLAGS"
512 dnl CPPFLAGS="$CPPFLAGS $GST_CFLAGS"
513 dnl AC_CHECK_HEADER(libdv/dv.h, :, HAVE_LIBDV=no)
514 dnl CPPFLAGS="$libdvcheck_save_CPPFLAGS"
515
516 dnl *** jpeg ***
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")
521   JPEG_LIBS="-ljpeg"
522   AC_SUBST(JPEG_LIBS)
523 ])
524
525 dnl *** mjpegtools ***
526 translit(dnm, m, l) AM_CONDITIONAL(USE_MJPEGTOOLS, true)
527 GST_CHECK_FEATURE(MJPEGTOOLS, [mjpegtools], jpegmmxenc jpegmmxdec, [
528   PKG_CHECK_MODULES(MJPEGTOOLS, mjpegtools, HAVE_MJPEGTOOLS="yes", HAVE_MJPEGTOOLS="no")
529   AC_SUBST(MJPEGTOOLS_LIBS)
530   AC_SUBST(MJPEGTOOLS_CFLAGS)
531 ])
532
533 dnl *** mad ***
534 dnl FIXME: we could use header checks here as well IMO
535 translit(dnm, m, l) AM_CONDITIONAL(USE_MAD, true)
536 GST_CHECK_FEATURE(MAD, [mad mp3 decoder], mad, [
537   AC_CHECK_LIB(mad, mad_decoder_finish, HAVE_MAD="yes" MAD_LIBS="-lmad")
538 ])
539 AC_SUBST(MAD_LIBS)
540
541 dnl *** mikmod ***
542 translit(dnm, m, l) AM_CONDITIONAL(USE_MIKMOD, true)
543 GST_CHECK_FEATURE(MIKMOD, [mikmod plugin], mikmod, [
544   AM_PATH_LIBMIKMOD(, HAVE_MIKMOD=yes, HAVE_MIKMOD=no)
545   AC_SUBST(MIKMOD_LIBS, "$LIBMIKMOD_LIBS")
546   AC_SUBST(MIKMOD_CFLAGS, "$LIBMIKMODCFLAGS")
547 ])
548
549 dnl *** mpeg2dec ***
550 translit(dnm, m, l) AM_CONDITIONAL(USE_MPEG2DEC, true)
551 GST_CHECK_FEATURE(MPEG2DEC, [mpeg2dec], mpeg2dec, [
552   GST_CHECK_LIBHEADER(MPEG2DEC, mpeg2, mpeg2_init,, mpeg2dec/mpeg2.h, MPEG2DEC_LIBS="-lmpeg2 -lmpeg2dec")
553   AC_SUBST(MPEG2DEC_LIBS)
554 ])
555
556 dnl *** openquicktime ***
557 translit(dnm, m, l) AM_CONDITIONAL(USE_OPENQUICKTIME, true)
558 GST_CHECK_FEATURE(OPENQUICKTIME, [Open Quicktime], quicktime_parser quicktime_decoder quicktime_demux,[
559   GST_CHECK_LIBHEADER(OPENQUICKTIME, openquicktime, quicktime_init,, openquicktime/openquicktime.h, OPENQUICKTIME_LIBS="-lopenquicktime")
560   AC_SUBST(OPENQUICKTIME_LIBS)
561 ])
562
563 dnl *** raw1394 ***
564 translit(dnm, m, l) AM_CONDITIONAL(USE_RAW1394, true)
565 GST_CHECK_FEATURE(RAW1394, [raw1394 library], dv1394src, [
566   GST_CHECK_LIBHEADER(RAW1394, raw1394, raw1394_get_handle,, libraw1394/raw1394.h, RAW1394_LIBS="-raw1394")
567   AC_SUBST(RAW1394_LIBS)
568 ])
569
570 dnl *** rtp ***
571 dnl FIXME : adapt and make it work
572 translit(dnm, m, l) AM_CONDITIONAL(USE_RTP, true)
573 GST_CHECK_FEATURE(RTP, [RTP library], rtpenc rtpdec,[
574   AC_CHECK_LIB(rtp, rtp_packet_new_take_data, HAVE_RTP=yes, HAVE_RTP=no, $GST_CFLAGS $GST_LIBS)
575   RTP_LIBS="-lrtp"
576   AC_SUBST(RTP_LIBS)
577 ])
578
579
580 dnl FIXME header check needs to use GLIB_CFLAGS in order to succeed for rtp
581 dnl can use GST_* which should have GLIB_* info
582 dnl AC_CHECK_HEADERS(rtp/rtp.h, HAVE_LIBRTP=yes, HAVE_LIBRTP=no)
583 dnl AC_CHECK_HEADERS(rtp/rtp-packet.h, :, HAVE_LIBRTP=no)
584 dnl AC_CHECK_HEADERS(rtp/rtcp-packet.h, :, HAVE_LIBRTP=no)
585 dnl AC_CHECK_HEADERS(rtp/rtp-audio.h, :, HAVE_LIBRTP=no)
586
587 dnl *** SDL ***
588 translit(dnm, m, l) AM_CONDITIONAL(USE_SDL, true)
589 GST_CHECK_FEATURE(SDL, [SDL plugin], sdlvideosink, [
590  AM_PATH_SDL(, HAVE_SDL=yes, HAVE_SDL=no)
591 ])
592
593 dnl *** shout ***
594 translit(dnm, m, l) AM_CONDITIONAL(USE_SHOUT, true)
595 GST_CHECK_FEATURE(SHOUT, [shout plugin], icecastsend, [
596   GST_CHECK_LIBHEADER(SHOUT, shout, shout_init_connection,, shout/shout.h, SHOUT_LIBS="-lshout")
597   AC_SUBST(SHOUT_LIBS)
598 ])
599
600 dnl *** sidplay ***
601 translit(dnm, m, l) AM_CONDITIONAL(USE_SIDPLAY, true)
602 GST_CHECK_FEATURE(SIDPLAY, [sidplay plugin], sidplay, [
603   GST_PATH_SIDPLAY()
604 ])
605
606 dnl *** smoothwave ***
607 translit(dnm, m, l) AM_CONDITIONAL(USE_SMOOTHWAVE, true)
608 GST_CHECK_FEATURE(SMOOTHWAVE, [smoothwave plugin], smoothwave, [
609   if test $HAVE_GTK = "yes"; then HAVE_SMOOTHWAVE=yes; fi;
610 ])
611
612 dnl *** vorbis ***
613 dnl AM_PATH_VORBIS only takes two options
614 translit(dnm, m, l) AM_CONDITIONAL(USE_VORBIS, true)
615 GST_CHECK_FEATURE(VORBIS, [vorbis plugin], vorbisenc vorbisdec, [
616   AM_PATH_VORBIS(HAVE_VORBIS=yes, HAVE_VORBIS=no)
617 ])
618
619 dnl *** XMMS ***
620 translit(dnm, m, l) AM_CONDITIONAL(USE_XMMS, true)
621 GST_CHECK_FEATURE(XMMS, [xmms plugin], xmms, [
622   AM_PATH_XMMS(0.1.0, HAVE_XMMS=yes, HAVE_XMMS=no)
623 ])
624
625 dnl Check for atomic.h
626 dnl Note: use AC_CHECK_HEADER not AC_CHECK_HEADERS, because the latter
627 dnl defines the wrong default symbol as well (HAVE_ASM_ATOMIC_H)
628 AC_CHECK_HEADER(asm/atomic.h, HAVE_ATOMIC_H=yes, HAVE_ATOMIC_H=no)
629 dnl Do a compile to check that it has atomic_set (eg, linux 2.0 didn't)
630 if test x$HAVE_ATOMIC_H = xyes; then
631   AC_TRY_RUN([
632 #include "asm/atomic.h"
633 main() { atomic_t t; atomic_set(&t,0); atomic_inc(&t); atomic_add(1,&t);return 0;}
634   ],, [
635     # Not successful
636     if test x$HAVE_ATOMIC_H = xyes; then
637       AC_MSG_WARN(Atomic reference counting is out of date: doing without.)
638     fi
639     HAVE_ATOMIC_H=no
640   ], [
641     # Cross compiling
642     AC_MSG_RESULT(yes)
643     AC_MSG_WARN(Can't check properly for atomic reference counting.  Assuming OK.)
644   ])
645 fi
646
647 dnl ######################################################################
648 dnl # Check command line parameters, and set shell variables accordingly #
649 dnl ######################################################################
650
651 AC_ARG_ENABLE(libmmx,
652 [  --enable-libmmx              use libmmx, if available],
653 [case "${enableval}" in
654   yes) USE_LIBMMX=$HAVE_LIBMMX ;;
655   no)  USE_LIBMMX=no ;;
656   *) AC_MSG_ERROR(bad value ${enableval} for --enable-libmmx) ;;
657 esac], 
658 [USE_LIBMMX=$HAVE_LIBMMX]) dnl Default value
659
660 AC_ARG_ENABLE(atomic,
661 [  --enable-atomic              use atomic reference counting header],
662 [case "${enableval}" in
663   yes) USE_ATOMIC_H=$HAVE_ATOMIC_H;;
664   noset) USE_ATOMIC_H=$HAVE_ATOMIC_H;;
665   no)  USE_ATOMIC_H=no;;
666   *) AC_MSG_ERROR(bad value ${enableval} for --enable-atomic) ;;
667 esac], 
668 [USE_ATOMIC_H=$HAVE_ATOMIC_H]) dnl Default value
669
670 AC_ARG_ENABLE(plugin-builddir,
671 [  --enable-plugin-builddir     allow tests/demos to use non-installed plugins ],
672 [case "${enableval}" in
673   yes) PLUGINS_USE_BUILDDIR=yes ;;
674   no)  PLUGINS_USE_BUILDDIR=no ;;
675   *) AC_MSG_ERROR(bad value ${enableval} for --enable-plugin-builddir) ;;
676 esac], 
677 [PLUGINS_USE_BUILDDIR=no]) dnl Default value
678
679 AC_ARG_ENABLE(debug,
680 [  --enable-debug               compile with -g debugging info],
681 [case "${enableval}" in
682   yes) USE_DEBUG=yes ;;
683   no)  USE_DEBUG=no ;;
684   *) AC_MSG_ERROR(bad value ${enableval} for --enable-debug) ;;
685 esac], 
686 [USE_DEBUG=yes]) dnl Default value
687
688 AC_ARG_ENABLE(DEBUG,
689 [  --enable-DEBUG               compiles in a large number of debugging messages],
690 [case "${enableval}" in
691   yes) ENABLE_DEBUG=yes ;;
692   no)  ENABLE_DEBUG=no ;;
693   *) AC_MSG_ERROR(bad value ${enableval} for --enable-DEBUG) ;;
694 esac], 
695 [ENABLE_DEBUG=yes]) dnl Default value
696 if test x$ENABLE_DEBUG = xyes; then
697   AC_DEFINE(GST_DEBUG_ENABLED, 1, [Define if DEBUG statements should be compiled in])
698 fi
699
700 AC_ARG_ENABLE(INFO,
701 [  --disable-INFO               disables compilation of informational messages],
702 [case "${enableval}" in
703   yes) ENABLE_INFO=yes ;;
704   no)  ENABLE_INFO=no ;;
705   *) AC_MSG_ERROR(bad value ${enableval} for --enable-INFO) ;;
706 esac], 
707 [ENABLE_INFO=yes]) dnl Default value
708 if test x$ENABLE_INFO = xyes; then
709   AC_DEFINE(GST_INFO_ENABLED, 1, [Define if INFO statements should be compiled in])
710 fi
711
712 AC_ARG_ENABLE(debug-color,
713 [  --disable-debug-color        disables color output of DEBUG and INFO output],
714 [case "${enableval}" in
715   yes) ENABLE_DEBUG_COLOR=yes ;;
716   no)  ENABLE_DEBUG_COLOR=no ;;
717   *) AC_MSG_ERROR(bad value ${enableval} for --enable-debug-color) ;;
718 esac], 
719 [ENABLE_DEBUG_COLOR=yes]) dnl Default value
720 if test "x$ENABLE_DEBUG_COLOR" = xyes; then
721   AC_DEFINE(GST_DEBUG_COLOR, 1, [Define if debugging messages should be colorized])
722 fi
723
724 AC_ARG_ENABLE(profiling,
725 [  --enable-profiling           adds -pg to compiler commandline, for profiling],
726 [case "${enableval}" in
727   yes) USE_PROFILING=yes ;;
728   no)  UES_PROFILING=no ;;
729   *) AC_MSG_ERROR(bad value ${enableval} for --enable-profiling) ;;
730 esac], 
731 [USE_PROFILING=no]) dnl Default value
732
733 dnl default to building registry in the source tree if we are enabling plugin build dir
734 if test "x$PLUGINS_USE_BUILDDIR"="xyes"; then
735   GST_CONFIG_DIR=`pwd`
736 else
737   GST_CONFIG_DIR=/etc/gstreamer
738 fi
739 AC_ARG_WITH(configdir,
740 [  --with-configdir             specify path to use for configdir],
741 [case "${withval}" in
742   yes) AC_MSG_ERROR(bad value ${withval} for --with-configdir) ;;
743   no) AC_MSG_ERROR(bad value ${withval} for --with-configdir) ;;
744   *) GST_CONFIG_DIR="${withval}" ;;
745 esac], 
746 [:]) dnl Default value
747
748 AC_ARG_ENABLE(docs-build,
749 [  --enable-docs-build          enable building of documentation],
750 [case "${enableval}" in
751   yes) if $HAVE_GTK_DOC; then BUILD_DOCS=yes; else AC_MSG_ERROR([you don't have gtk-doc, so don't use --docs-build]); fi; ;;
752   no)  BUILD_DOCS=no ;;
753   *) AC_MSG_ERROR(bad value ${enableval} for --enable-docs-build) ;;
754 esac], 
755 [BUILD_DOCS=no]) dnl Default value
756
757 AC_ARG_ENABLE(plugin-docs,
758 [  --enable-plugin-docs         enable the building of plugin documentation
759                                (this is currently broken, so off by default)],
760 [case "${enableval}" in
761   yes) BUILD_PLUGIN_DOCS=yes ;;
762   no)  BUILD_PLUGIN_DOCS=no ;;
763   *) AC_MSG_ERROR(bad value ${enableval} for --enable-plugin-docs) ;;
764 esac], 
765 [BUILD_PLUGIN_DOCS=no]) dnl Default value
766
767 AC_ARG_ENABLE(tests,
768 [  --disable-tests              disable building test apps],
769 [case "${enableval}" in
770   yes) BUILD_TESTS=yes ;;
771   no)  BUILD_TESTS=no ;;
772   *) AC_MSG_ERROR(bad value ${enableval} for --disable-tests) ;;
773 esac], 
774 [BUILD_TESTS=yes]) dnl Default value
775
776 AC_ARG_ENABLE(examples,
777 [  --disable-examples           disable building examples],
778 [case "${enableval}" in
779   yes) BUILD_EXAMPLES=yes ;;
780   no)  BUILD_EXAMPLES=no ;;
781   *) AC_MSG_ERROR(bad value ${enableval} for --disable-examples) ;;
782 esac], 
783 [BUILD_EXAMPLES=yes]) dnl Default value
784
785 dnl Next, check for the optional components:
786 dnl ========================================
787
788
789 AC_DEFUN(GST_SUBSYSTEM_DISABLE,
790 [dnl
791 dnl Add a subsystem --disable flag and all the necessary symbols and substitions
792 dnl
793 AC_ARG_ENABLE(translit([$1], A-Z, a-z), 
794 [  ]builtin(format, --disable-%-17s  disable %s, translit([$1], A-Z, a-z), $2),
795 [ case "${enableval}" in
796     yes) GST_DISABLE_[$1]=no ;;
797     no) GST_DISABLE_[$1]=yes ;;
798     *) AC_MSG_ERROR(bad value ${enableval} for --enable-translit([$1], A-Z, a-z)) ;;
799   esac],
800 [GST_DISABLE_[$1]=no]) dnl Default value
801 if test x$GST_DISABLE_[$1] = xyes; then
802   AC_DEFINE(GST_DISABLE_[$1], 1, [Disable $2])
803   GST_DISABLE_[$1]_DEFINE=-DGST_DISABLE_[$1]
804 fi
805 AM_CONDITIONAL(GST_DISABLE_[$1], test x$GST_DISABLE_[$1] = xyes)
806 AC_SUBST(GST_DISABLE_[$1]_DEFINE)
807 GST_SUBSYSTEM_DISABLE_DEFINES="$GST_SUBSYTEM_DISABLE_DEFINES $GST_DISABLE_[$1]_DEFINE"
808 ])
809
810 translit(dnm, m, l) AM_CONDITIONAL(GST_DISABLE_LOADSAVE, true)
811 GST_SUBSYSTEM_DISABLE(LOADSAVE,[pipeline XML load/save])
812 translit(dnm, m, l) AM_CONDITIONAL(GST_DISABLE_TYPEFIND, true)
813 GST_SUBSYSTEM_DISABLE(TYPEFIND,[typefind plugin],)
814 translit(dnm, m, l) AM_CONDITIONAL(GST_DISABLE_AUTOPLUG, true)
815 GST_SUBSYSTEM_DISABLE(AUTOPLUG,[autoplugger subsystem])
816 translit(dnm, m, l) AM_CONDITIONAL(GST_DISABLE_PARSE, true)
817 GST_SUBSYSTEM_DISABLE(PARSE,[command-line parser])
818 translit(dnm, m, l) AM_CONDITIONAL(GST_DISABLE_TRACE, true)
819 GST_SUBSYSTEM_DISABLE(TRACE,[tracing subsystem])
820 translit(dnm, m, l) AM_CONDITIONAL(GST_DISABLE_REGISTRY, true)
821 GST_SUBSYSTEM_DISABLE(REGISTRY,[plugin registry])
822
823 GST_CFLAGS="$GST_CFLAGS $GST_SUBSYSTEM_DISABLE_DEFINES"
824
825
826 dnl ################################################
827 dnl # Set defines according to variables set above #
828 dnl ################################################
829
830
831 if test "x$USE_LIBMMX" = xyes; then
832   AC_DEFINE(HAVE_LIBMMX, 1, [Define if libmmx is available])
833 fi
834
835 if test "x$USE_ATOMIC_H" = xyes; then
836   AC_DEFINE(HAVE_ATOMIC_H, 1, [Define if atomic.h header file is available])
837 fi
838
839 if test "x$PLUGINS_USE_BUILDDIR" = xyes; then
840   AC_DEFINE(PLUGINS_USE_BUILDDIR, 1, [Define if plugins should be loaded from the build tree - only developers should use this])
841 fi
842
843 dnl if test "x$USE_DEBUG" = xyes; then
844 dnl   CFLAGS="$CFLAGS -g"
845 dnl fi
846
847 if test "x$USE_PROFILING" = xyes; then
848 dnl  CFLAGS="$CFLAGS -pg -fprofile-arcs"
849   FOMIT_FRAME_POINTER=""
850 else
851   FOMIT_FRAME_POINTER="-fomit-frame-pointer"
852 fi
853
854 dnl
855 dnl AC_SUBST(FOMIT_FRAME_POINTER)
856 dnl
857
858 if test "x$HAVE_LIBMIKMOD" = xyes; then
859   AC_DEFINE(HAVE_LIBMIKMOD)
860 fi
861
862 if test "x$HAVE_LIBGSM" = xyes; then
863   AC_DEFINE(HAVE_LIBGSM)
864 fi
865
866 dnl #############################
867 dnl # Set automake conditionals #
868 dnl #############################
869
870 dnl These should be "USE_*" instead of "HAVE_*", but some packages expect
871 dnl HAVE_ and it is likely to be easier to stick with the old name
872 AM_CONDITIONAL(HAVE_CPU_I386,       test "x$HAVE_CPU_I386" = "xyes")
873 AM_CONDITIONAL(HAVE_CPU_PPC,        test "x$HAVE_CPU_PPC" = "xyes")
874 AM_CONDITIONAL(HAVE_CPU_ALPHA,      test "x$HAVE_CPU_ALPHA" = "xyes")
875 AM_CONDITIONAL(HAVE_CPU_ARM,        test "x$HAVE_CPU_ARM" = "xyes")
876 AM_CONDITIONAL(HAVE_CPU_SPARC,      test "x$HAVE_CPU_SPARC" = "xyes")
877 AM_CONDITIONAL(HAVE_LIBMMX,         test "x$USE_LIBMMX" = "xyes")
878
879 AM_CONDITIONAL(HAVE_ATOMIC_H,       test "x$USE_ATOMIC_H" = "xyes")
880
881 AM_CONDITIONAL(EXPERIMENTAL,        test "$EXPERIMENTAL" = "$xyes")
882 AM_CONDITIONAL(BROKEN,              test "$BROKEN" = "$xyes")
883
884 AM_CONDITIONAL(HAVE_LIBMIKMOD,      test "x$HAVE_LIBMIKMOD" = "xyes")
885 AM_CONDITIONAL(HAVE_LIBSDL,         test "x$HAVE_LIBSDL" = "xyes")
886 AM_CONDITIONAL(HAVE_NASM,           test "x$HAVE_NASM" = "xyes")
887 AM_CONDITIONAL(HAVE_LIBGLADE_GNOME, test "x$HAVE_LIBGLADE_GNOME" = "xyes")
888 AM_CONDITIONAL(HAVE_GNOME,          test "x$HAVE_GNOME" = "xyes")
889 AM_CONDITIONAL(HAVE_GTK,            test "x$HAVE_GTK" = "xyes")
890 AM_CONDITIONAL(HAVE_GTK_DOC,        $HAVE_GTK_DOC)
891 AM_CONDITIONAL(BUILD_DOCS,          test "x$BUILD_DOCS" = "xyes")
892 AM_CONDITIONAL(BUILD_TESTS,         test "x$BUILD_TESTS" = "xyes")
893 AM_CONDITIONAL(BUILD_EXAMPLES,      test "x$BUILD_EXAMPLES" = "xyes")
894 AM_CONDITIONAL(BUILD_PLUGIN_DOCS,   test "x$BUILD_PLUGIN_DOCS" = "xyes")
895 AM_CONDITIONAL(HAVE_PDFXMLTEX,      $HAVE_PDFXMLTEX)
896 AM_CONDITIONAL(HAVE_PDFTOPS,        $HAVE_PDFTOPS)
897 AM_CONDITIONAL(HAVE_XSLTPROC,       $HAVE_XSLTPROC)
898 AM_CONDITIONAL(HAVE_FIG2DEV_PNG,    $HAVE_FIG2DEV_PNG)
899 AM_CONDITIONAL(HAVE_FIG2DEV_PDF,    $HAVE_FIG2DEV_PDF)
900 AM_CONDITIONAL(HAVE_LIBRTP,         test "x$HAVE_LIBRTP" = "xyes")
901 AM_CONDITIONAL(HAVE_ARTS,           test "x$HAVE_ARTS" = "xyes")
902 AM_CONDITIONAL(HAVE_RAW1394,        test "x$HAVE_RAW1394" = "xyes")
903 AM_CONDITIONAL(HAVE_LIBDV,          test "x$HAVE_LIBDV" = "xyes")
904 AM_CONDITIONAL(HAVE_GNOME_VFS,      test "x$HAVE_GNOME_VFS" = "xyes")
905 AM_CONDITIONAL(HAVE_LIBGSM,         test "x$HAVE_LIBGSM" = "xyes")
906 AM_CONDITIONAL(PLUGINS_USE_BUILDDIR,  test "x$PLUGINS_USE_BUILDDIR" = "xyes")
907
908
909 dnl ############################
910 dnl # Set up some more defines #
911 dnl ############################
912
913 dnl Set location of configuration dir.
914 AC_DEFINE_UNQUOTED(GST_CONFIG_DIR,"$GST_CONFIG_DIR")
915 AC_SUBST(GST_CONFIG_DIR)
916
917 dnl Set location of plugin directory
918 if test "x${prefix}" = "xNONE"; then
919   PLUGINS_DIR=${ac_default_prefix}/lib/gst
920 else
921   PLUGINS_DIR=${prefix}/lib/gst
922 fi
923 AC_DEFINE_UNQUOTED(PLUGINS_DIR,"$PLUGINS_DIR")
924 AC_SUBST(PLUGINS_DIR)
925
926 dnl Set location of uninstalled plugin directory
927 PLUGINS_BUILDDIR=`pwd`
928 AC_DEFINE_UNQUOTED(PLUGINS_BUILDDIR,"$PLUGINS_BUILDDIR")
929 AC_SUBST(PLUGINS_BUILDDIR)
930
931 GST_CFLAGS="$GST_CFLAGS -I\$(top_srcdir)/gst-libs"
932 AC_SUBST(GST_LIBS)
933 AC_SUBST(GST_CFLAGS)
934
935 dnl #############################
936 dnl # Configure the subpackages #
937 dnl #############################
938
939 dnl AC_CONFIG_SUBDIRS(gist)
940 dnl AC_CONFIG_SUBDIRS(plugins/mp3decode/xing/libxing)
941
942 dnl ##################################################
943 dnl # Prepare informative messages to display at end #
944 dnl ##################################################
945
946 infomessages=
947
948 if test "x$PLUGINS_USE_BUILDDIR" = xyes; then
949   infomessages="$infomessages
950 *** Warning: You have configured using the --enable-plugin-builddir option.
951
952 This option is for development purposes only: binaries built with
953 it should be used with code in the build tree only.  To build an
954 installable version, use ./configure without the --enable-plugin-builddir
955 option.  Note that the autogen.sh script supplies the plugin builddir
956 option automatically - it cannot be used to configure installable builds.
957
958 "
959 fi
960
961 dnl #########################
962 dnl # Make the output files #
963 dnl #########################
964
965 AC_OUTPUT(
966 Makefile
967 gstreamer-libs.pc
968 gstreamer-libs-uninstalled.pc
969 gst-plugins.spec
970 gst/Makefile
971 gst/ac3parse/Makefile
972 gst/adder/Makefile
973 gst/audioscale/Makefile
974 gst/auparse/Makefile
975 gst/avi/Makefile
976 gst/chart/Makefile
977 gst/cutter/Makefile
978 gst/deinterlace/Makefile
979 gst/flx/Makefile
980 gst/intfloat/Makefile
981 gst/law/Makefile
982 gst/level/Makefile
983 gst/median/Makefile
984 gst/mpeg1enc/Makefile
985 gst/mpeg1sys/Makefile
986 gst/mpeg1videoparse/Makefile
987 gst/mpeg2enc/Makefile
988 gst/mpeg2sub/Makefile
989 gst/mpegaudio/Makefile
990 gst/mpegaudioparse/Makefile
991 gst/mpegstream/Makefile
992 gst/mpegtypes/Makefile
993 gst/passthrough/Makefile
994 gst/playondemand/Makefile
995 gst/rtjpeg/Makefile
996 gst/silence/Makefile
997 gst/sine/Makefile
998 gst/smooth/Makefile
999 gst/spectrum/Makefile
1000 gst/speed/Makefile
1001 gst/stereo/Makefile
1002 gst/stereomono/Makefile
1003 gst/synaesthesia/Makefile
1004 gst/udp/Makefile
1005 gst/videoscale/Makefile
1006 gst/volenv/Makefile
1007 gst/volume/Makefile
1008 gst/vumeter/Makefile
1009 gst/wavparse/Makefile
1010 gst/y4m/Makefile
1011 sys/Makefile
1012 sys/oss/Makefile
1013 sys/qcam/Makefile
1014 sys/v4l/Makefile
1015 sys/vcd/Makefile
1016 sys/vga/Makefile
1017 sys/xvideo/Makefile
1018 ext/Makefile
1019 ext/a52dec/Makefile
1020 ext/aalib/Makefile
1021 ext/alsa/Makefile
1022 ext/arts/Makefile
1023 ext/artsd/Makefile
1024 ext/audiofile/Makefile
1025 ext/avifile/Makefile
1026 ext/cdparanoia/Makefile
1027 ext/dv/Makefile
1028 ext/dvdread/Makefile
1029 ext/esd/Makefile
1030 ext/festival/Makefile
1031 ext/flac/Makefile
1032 ext/gnomevfs/Makefile
1033 ext/gsm/Makefile
1034 ext/hermes/Makefile
1035 ext/http/Makefile
1036 ext/jpeg/Makefile
1037 ext/jpeg-mmx/Makefile
1038 ext/ladspa/Makefile
1039 ext/lame/Makefile
1040 ext/mad/Makefile
1041 ext/mikmod/Makefile
1042 ext/mpeg2dec/Makefile
1043 ext/openquicktime/Makefile
1044 ext/raw1394/Makefile
1045 ext/rtp/Makefile
1046 ext/sdl/Makefile
1047 ext/shout/Makefile
1048 ext/sidplay/Makefile
1049 ext/smoothwave/Makefile
1050 ext/vorbis/Makefile
1051 ext/xmms/Makefile
1052 gst-libs/Makefile
1053 gst-libs/gst/Makefile
1054 gst-libs/gst/audio/Makefile
1055 gst-libs/gst/idct/Makefile
1056 gst-libs/gst/resample/Makefile
1057 gst-libs/gst/riff/Makefile
1058 examples/capsfilter/Makefile
1059 examples/Makefile
1060 )
1061
1062 echo -e "configure: *** Plugins that will be built : $GST_PLUGINS_YES"
1063 echo
1064 echo -e "configure: *** Plugins that will not be built : $GST_PLUGINS_NO"
1065 echo