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