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