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