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