1 AC_INIT(gst/gstobject.h)
5 AM_CONFIG_HEADER(config.h)
7 STREAMER_MAJOR_VERSION=0
8 STREAMER_MINOR_VERSION=1
9 STREAMER_MICRO_VERSION=0
10 STREAMER_VERSION=$STREAMER_MAJOR_VERSION.$STREAMER_MINOR_VERSION.$STREAMER_MICRO_VERSION
17 AM_INIT_AUTOMAKE(gstreamer, $STREAMER_VERSION)
18 dnl Add parameters for aclocal
19 dnl (This must come after AM_INIT_AUTOMAKE, since it modifies ACLOCAL)
20 ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
22 AC_SUBST(STREAMER_MAJOR_VERSION)
23 AC_SUBST(STREAMER_MINOR_VERSION)
24 AC_SUBST(STREAMER_MICRO_VERSION)
25 AC_SUBST(STREAMER_VERSION)
27 AC_SUBST(STREAMER_CURRENT)
28 AC_SUBST(STREAMER_REVISION)
29 AC_SUBST(STREAMER_AGE)
43 dnl ##############################
44 dnl # Do automated configuration #
45 dnl ##############################
47 dnl Set up conditionals for (target) architecture:
48 dnl ==============================================
51 case "x${target_cpu}" in
52 xi?86) HAVE_CPU_I386=yes ;
53 AC_DEFINE(HAVE_CPU_I386) ;;
54 xpowerpc) HAVE_CPU_PPC=yes ;
55 AC_DEFINE(HAVE_CPU_PPC) ;;
58 dnl Determine endianness
65 AC_PATH_PROG(NASM_PATH, nasm, no)
67 if test x$NASM_PATH = xno; then
68 AC_MSG_WARN(Couldn't find nasm)
75 dnl Check for essential libraries first:
76 dnl ====================================
80 AC_MSG_ERROR(Cannot find glib: Is glib-config in path?),
82 dnl Put the glib flags into $LIBS and $CFLAGS since we always use them
83 LIBS="$LIBS $GLIB_LIBS"
84 CFLAGS="$FLAGS $GLIB_CFLAGS"
87 AC_PATH_PROG(XML_CONFIG, xml-config, no)
88 if test x$XML_CONFIG = xno; then
89 AC_MSG_ERROR(Couldn't find xml-config)
91 XML_LIBS=`xml-config --libs`
92 XML_CFLAGS=`xml-config --cflags`
97 dnl Next, check for the optional libraries:
98 dnl =======================================
100 dnl Check for libgdk-pixbuf
101 AC_PATH_PROG(GDK_PIXBUF_CONFIG, gdk-pixbuf-config, no)
102 if test x$GDK_PIXBUF_CONFIG = xno; then
103 AC_MSG_WARN(Couldn't find gdk-pixbuf-config)
108 GDK_PIXBUF_LIBS=`gdk-pixbuf-config --libs`
109 GDK_PIXBUF_CFLAGS=`gdk-pixbuf-config --cflags`
112 AC_SUBST(GDK_PIXBUF_LIBS)
113 AC_SUBST(GDK_PIXBUF_CFLAGS)
119 dnl Check for libghttp
120 dnl FIXME: need to check for header
121 AC_CHECK_LIB(ghttp, ghttp_request_new,
122 [GHTTP_LIBS="-lghttp"
123 GST_HTTPSRC_GET_TYPE="gst_httpsrc_get_type"
126 [AC_MSG_WARN(Cannot find libghttp: can't build gsthttpsrc)
128 GST_HTTPSRC_GET_TYPE=
133 AC_SUBST(GST_HTTPSRC_GET_TYPE)
135 dnl Check for libglade
136 HAVE_LIBGLADE_GNOME="no"
137 AC_PATH_PROG(LIBGLADE_CONFIG_PATH, libglade-config, no)
138 if test x$LIBGLADE_CONFIG_PATH = xno; then
139 AC_MSG_WARN(Couldn't find libglade-config - Can't build gstplay)
141 libglade_save_CFLAGS=${CFLAGS}
142 CFLAGS="$CFLAGS `$LIBGLADE_CONFIG_PATH --libs gnome` `$LIBGLADE_CONFIG_PATH --cflags gnome`"
143 AC_TRY_LINK([#include <glade/glade.h>],[glade_gnome_init();],
144 HAVE_LIBGLADE_GNOME="yes",
146 [Couldn't find gnome libraries for libglade - Can't build gstplay])
148 CFLAGS=${libglade_save_CFLAGS}
151 dnl Check for atomic.h
152 dnl Note: use AC_CHECK_HEADER not AC_CHECK_HEADERS, because the latter
153 dnl defines the wrong default symbol as well (HAVE_ASM_ATOMIC_H)
154 AC_CHECK_HEADER(asm/atomic.h, HAVE_ATOMIC_H=yes, HAVE_ATOMIC_H=no)
155 dnl Do a compile to check that it has atomic_set (eg, linux 2.0 didn't)
156 if test x$HAVE_ATOMIC_H = xyes; then
158 #include "asm/atomic.h"
159 main() { atomic_t t; atomic_set(&t,0); return 0;}
162 if test x$HAVE_ATOMIC_H = xyes; then
163 AC_MSG_WARN(Atomic reference counting is out of date: doing without.)
169 AC_MSG_WARN(Can't check properly for atomic reference counting. Assuming OK.)
173 dnl Check for MMX capable compiler
174 AC_MSG_CHECKING(Checking MMX compilation)
176 #include "include/mmx.h"
179 { movq_r2r(mm0, mm1); return 0; }
192 dnl Check for X11 extensions
194 if test "-DX_DISPLAY_MISSING" = "$X_CFLAGS"; then
195 AC_MSG_ERROR(can not find X11)
199 AC_SUBST(X_EXTRA_LIBS)
203 AC_CHECK_LIB(Xv, XvQueryExtension,
205 AC_DEFINE(HAVE_LIBXV),
206 HAVE_LIBXV=no, $X_LIBS $X_PRE_LIBS -lXext -lX11 $X_EXTRA_LIBS)
210 AC_CHECK_HEADER(xaudio/decoder.h,[
211 AC_DEFINE(HAVE_XAUDIO)
212 HAVE_XAUDIO="yes", []
215 dnl Set location of plugin directory
216 if test "x${prefix}" = "xNONE"; then
217 PLUGINS_DIR=${ac_default_prefix}/lib/gst
219 PLUGINS_DIR=${prefix}/lib/gst
221 AC_DEFINE_UNQUOTED(PLUGINS_DIR,"$PLUGINS_DIR")
222 AC_SUBST(PLUGINS_DIR)
224 dnl Set location of uninstalled plugin directory
225 PLUGINS_SRCDIR=`pwd`/$srcdir
226 AC_DEFINE_UNQUOTED(PLUGINS_SRCDIR,"$PLUGINS_SRCDIR")
227 AC_SUBST(PLUGINS_SRCDIR)
229 dnl check if css-auth.c exists (FIXME)
230 AC_MSG_CHECKING(DVD CSS code)
231 if test -f plugins/dvdsrc/css-auth.c
235 AC_DEFINE(HAVE_CSSAUTH)
241 dnl check for libvorbis
242 AC_MSG_CHECKING(Vorbis library)
243 AC_CHECK_LIB(vorbis, ogg_sync_init,
245 AC_DEFINE(HAVE_VORBIS),
248 dnl check for cdparanoia
249 AC_MSG_CHECKING(CDparanoia library)
251 AC_CHECK_LIB(cdda_paranoia, paranoia_init, : , HAVE_CDPARANOIA=no, )
252 AC_CHECK_HEADER(cdda_paranoia.h, :, HAVE_CDPARANOIA=no)
253 AC_CHECK_LIB(cdda_interface, cdda_open, : , HAVE_CDPARANOIA=no, )
254 AC_CHECK_HEADER(cdda_interface.h, :, HAVE_CDPARANOIA=no)
256 dnl check for liblame
257 AC_MSG_CHECKING(LAME library)
258 AC_CHECK_LIB(mp3lame, lame_init, HAVE_LIBLAME=yes, HAVE_LIBLAME=no, )
259 AC_CHECK_HEADER(lame.h, :, HAVE_LIBLAME=no)
262 AC_CHECK_PROG(HAVE_GTK_DOC, gtkdoc-mkdb, true, false)
263 AC_CHECK_PROG(HAVE_GTK_DOC, gtkdoc-scanobj, :, false)
264 AC_CHECK_PROG(HAVE_GTK_DOC, gtkdoc-scan, :, false)
265 AC_CHECK_PROG(HAVE_GTK_DOC, gtkdoc-mktmpl, :, false)
266 AC_CHECK_PROG(HAVE_GTK_DOC, gtkdoc-mkdb, :, false)
267 AC_CHECK_PROG(HAVE_GTK_DOC, gtkdoc-mkhtml, :, false)
268 AC_CHECK_PROG(HAVE_GTK_DOC, gtkdoc-fixxref, :, false)
270 dnl check for docbook tools
271 AC_CHECK_PROG(HAVE_DB2HTML, db2html, true, false)
272 AC_CHECK_PROG(HAVE_DB2PS, db2ps, true, false)
273 AC_CHECK_PROG(HAVE_PS2PDF, ps2pdf, true, false)
275 dnl check for image conversion tool
276 AC_CHECK_PROG(HAVE_FIG2DEV, fig2dev, true, false)
279 dnl ######################################################################
280 dnl # Check command line parameters, and set shell variables accordingly #
281 dnl ######################################################################
283 AC_ARG_ENABLE(gdk-pixbuf,
284 [ --enable-gdk-pixbuf use gdk pixbuf, if available],
285 [case "${enableval}" in
286 yes) USE_GDK_PIXBUF=$HAVE_GDK_PIXBUF ;;
287 no) USE_GDK_PIXBUF=no ;;
288 *) AC_MSG_ERROR(bad value ${enableval} for --enable-gdk-pixbuf) ;;
290 [USE_GDK_PIXBUF=$HAVE_GDK_PIXBUF]) dnl Default value
292 AC_ARG_ENABLE(libghttp,
293 [ --enable-libghttp use the ghttp library, if available],
294 [case "${enableval}" in
295 yes) USE_LIBGHTTP=$HAVE_LIBGHTTP ;;
296 no) USE_LIBGHTTP=no ;;
297 *) AC_MSG_ERROR(bad value ${enableval} for --enable-libghttp) ;;
299 [USE_LIBGHTTP=$HAVE_LIBGHTTP]) dnl Default value
301 AC_ARG_ENABLE(libmmx,
302 [ --enable-libmmx use libmmx, if available],
303 [case "${enableval}" in
304 yes) USE_LIBMMX=$HAVE_LIBMMX ;;
306 *) AC_MSG_ERROR(bad value ${enableval} for --enable-libmmx) ;;
308 [USE_LIBMMX=$HAVE_LIBMMX]) dnl Default value
310 AC_ARG_ENABLE(atomic,
311 [ --enable-atomic use atomic reference counting header],
312 [case "${enableval}" in
313 yes) USE_ATOMIC_H=$HAVE_ATOMIC_H;;
314 noset) USE_ATOMIC_H=$HAVE_ATOMIC_H;;
315 no) USE_ATOMIC_H=no;;
316 *) AC_MSG_ERROR(bad value ${enableval} for --enable-atomic) ;;
318 [USE_ATOMIC_H=$HAVE_ATOMIC_H]) dnl Default value
320 AC_ARG_ENABLE(plugin-srcdir,
321 [ --enable-plugin-srcdir allow tests/demos to use non-installed plugins ],
322 [case "${enableval}" in
323 yes) PLUGINS_USE_SRCDIR=yes ;;
324 no) PLUGINS_USE_SRCDIR=no ;;
325 *) AC_MSG_ERROR(bad value ${enableval} for --enable-plugin-srcdir) ;;
327 [PLUGINS_USE_SRCDIR=no]) dnl Default value
330 [ --enable-debug compile with -g debugging info],
331 [case "${enableval}" in
332 yes) USE_DEBUG=yes ;;
334 *) AC_MSG_ERROR(bad value ${enableval} for --enable-debug) ;;
336 [USE_DEBUG=no]) dnl Default value
338 AC_ARG_ENABLE(debug-verbose,
339 [ --enable-debug-verbose spews lots of useless debugging info at runtime],
340 [case "${enableval}" in
341 yes) USE_DEBUG_VERBOSE=yes ;;
342 no) USE_DEBUG_VERBOSE=no ;;
343 *) AC_MSG_ERROR(bad value ${enableval} for --enable-debug-verbose) ;;
345 [USE_DEBUG_VERBOSE=no]) dnl Default value
348 [ --enable-info spews lots of info at runtime for plugin writers],
349 [case "${enableval}" in
350 yes) USE_DEBUG_INFO_VERBOSE=yes ;;
351 no) USE_DEBUG_INFO_VERBOSE=no ;;
352 *) AC_MSG_ERROR(bad value ${enableval} for --enable-info) ;;
354 [USE_DEBUG_INFO_VERBOSE=no]) dnl Default value
356 AC_ARG_ENABLE(info-system,
357 [ --disable-info-system disables the info debugging system],
358 [case "${enableval}" in
359 yes) DISABLE_DEBUG_INFO=no ;;
360 no) DISABLE_DEBUG_INFO=yes ;;
361 *) AC_MSG_ERROR(bad value ${enableval} for --disable-info) ;;
363 [DISABLE_DEBUG_INFO=no]) dnl Default value
365 AC_ARG_ENABLE(profiling,
366 [ --enable-profiling adds -pg to compiler commandline, for profiling],
367 [case "${enableval}" in
368 yes) USE_PROFILING=yes ;;
369 no) UES_PROFILING=no ;;
370 *) AC_MSG_ERROR(bad value ${enableval} for --enable-profiling) ;;
372 [USE_PROFILING=no]) dnl Default value
375 dnl ################################################
376 dnl # Set defines according to variables set above #
377 dnl ################################################
379 dnl These should be "USE_*" instead of "HAVE_*", but some packages expect
380 dnl HAVE_ and it is likely to be easier to stick with the old name
381 if test "x$USE_GDK_PIXBUF" = xyes; then
382 AC_DEFINE(HAVE_GDK_PIXBUF)
385 if test "x$USE_LIBGHTTP" = xyes; then
386 AC_DEFINE(HAVE_LIBGHTTP)
389 if test "x$USE_LIBMMX" = xyes; then
390 AC_DEFINE(HAVE_LIBMMX)
393 if test "x$USE_ATOMIC_H" = xyes; then
394 AC_DEFINE(HAVE_ATOMIC_H)
397 if test "x$PLUGINS_USE_SRCDIR" = xyes; then
398 AC_DEFINE(PLUGINS_USE_SRCDIR)
401 if test "x$USE_DEBUG" = xyes; then
405 if test "x$USE_DEBUG_VERBOSE" = xyes; then
406 AC_DEFINE(GST_DEBUG_ENABLED)
409 if test "x$USE_DEBUG_INFO_VERBOSE" = xyes; then
410 AC_DEFINE(GST_INFO_ENABLED_VERBOSE)
411 AC_DEFINE(GST_INFO_ENABLED)
413 AC_DEFINE(GST_INFO_ENABLED)
416 if test "x$DISABLE_DEBUG_INFO" = xyes; then
417 AC_DEFINE(GST_INFO_FORCE_DISABLE)
420 if test "x$USE_PROFILING" = xyes; then
424 dnl #############################
425 dnl # Set automake conditionals #
426 dnl #############################
428 dnl These should be "USE_*" instead of "HAVE_*", but some packages expect
429 dnl HAVE_ and it is likely to be easier to stick with the old name
430 AM_CONDITIONAL(HAVE_CPU_I386, test "x$HAVE_CPU_I386" = "xyes")
431 AM_CONDITIONAL(HAVE_CPU_PPC, test "x$HAVE_CPU_PPC" = "xyes")
432 AM_CONDITIONAL(HAVE_GDK_PIXBUF, test "x$USE_GDK_PIXBUF" = "xyes")
433 AM_CONDITIONAL(HAVE_LIBGHTTP, test "x$USE_LIBGHTTP" = "xyes")
434 AM_CONDITIONAL(HAVE_LIBMMX, test "x$USE_LIBMMX" = "xyes")
435 AM_CONDITIONAL(HAVE_ATOMIC_H, test "x$USE_ATOMIC_H" = "xyes")
436 AM_CONDITIONAL(HAVE_XAUDIO, test "x$HAVE_XAUDIO" = "xyes")
437 AM_CONDITIONAL(HAVE_CSSAUTH, test "x$HAVE_CSSAUTH" = "xyes")
438 AM_CONDITIONAL(HAVE_VORBIS, test "x$HAVE_VORBIS" = "xyes")
439 AM_CONDITIONAL(HAVE_NASM, test "x$HAVE_NASM" = "xyes")
440 AM_CONDITIONAL(HAVE_LIBGLADE_GNOME, test "x$HAVE_LIBGLADE_GNOME" = "xyes")
441 AM_CONDITIONAL(HAVE_LIBXV, test "x$HAVE_LIBXV" = "xyes")
442 AM_CONDITIONAL(HAVE_GTK_DOC, $HAVE_GTK_DOC)
443 AM_CONDITIONAL(HAVE_DB2HTML, $HAVE_DB2HTML)
444 AM_CONDITIONAL(HAVE_DB2PS, $HAVE_DB2PS)
445 AM_CONDITIONAL(HAVE_PS2PDF, $HAVE_PS2PDF)
446 AM_CONDITIONAL(HAVE_FIG2DEV, $HAVE_FIG2DEV)
447 AM_CONDITIONAL(HAVE_CDPARANOIA, test "x$HAVE_CDPARANOIA" = "xyes")
448 AM_CONDITIONAL(HAVE_LIBLAME, test "x$HAVE_LIBLAME" = "xyes")
451 CFLAGS="$CFLAGS -O6 -Wall"
453 dnl FIXME: having to AC_SUBST these is messy. Not sure if CPPFLAGS and LDFLAGS
459 dnl #############################
460 dnl # Configure the subpackages #
461 dnl #############################
463 AC_CONFIG_SUBDIRS(gist)
464 AC_CONFIG_SUBDIRS(plugins/mp3decode/xing/libxing)
467 dnl #########################
468 dnl # Make the output files #
469 dnl #########################
473 include/wine/Makefile
477 gst/elements/Makefile
480 libs/colorspace/Makefile
481 libs/videoscale/Makefile
482 libs/getbits/Makefile
483 libs/putbits/Makefile
484 libs/winloader/Makefile
490 plugins/avi/wincodec/Makefile
491 plugins/jpeg/Makefile
492 plugins/mp3decode/Makefile
493 plugins/mp3decode/types/Makefile
494 plugins/mp3decode/xa/Makefile
495 plugins/mp3decode/xing/Makefile
496 plugins/mp3decode/mpg123/Makefile
497 plugins/mp3decode/parse/Makefile
498 plugins/mp3encode/Makefile
499 plugins/mp3encode/lame/Makefile
500 plugins/mpeg2/Makefile
501 plugins/mpeg2/parse/Makefile
502 plugins/mpeg2/ac3parse/Makefile
503 plugins/mpeg2/ac3dec/Makefile
504 plugins/mpeg2/video/Makefile
505 plugins/mpeg2/mpeg2enc/Makefile
506 plugins/mpeg2/mpeg2dec/Makefile
507 plugins/mpeg2/subtitles/Makefile
508 plugins/mpeg2/videoparse/Makefile
509 plugins/mpeg2/mpegtypes/Makefile
510 plugins/mpeg1/Makefile
511 plugins/mpeg1/mpegtypes/Makefile
512 plugins/mpeg1/mpeg_play/Makefile
513 plugins/mpeg1/mpegaudio/Makefile
514 plugins/mpeg1/parse/Makefile
515 plugins/mpeg1/system_encode/Makefile
516 plugins/mpeg1/mpeg1encoder/Makefile
517 plugins/mpeg1video/Makefile
518 plugins/mpeg1video/parse/Makefile
519 plugins/filters/Makefile
520 plugins/filters/smooth/Makefile
521 plugins/filters/median/Makefile
522 plugins/filters/ladspa/Makefile
523 plugins/effects/Makefile
524 plugins/effects/stereo/Makefile
525 plugins/effects/volume/Makefile
526 plugins/visualization/Makefile
527 plugins/visualization/spectrum/Makefile
528 plugins/visualization/vumeter/Makefile
529 plugins/visualization/synaesthesia/Makefile
530 plugins/visualization/smoothwave/Makefile
531 plugins/videosink/Makefile
532 plugins/videoscale/Makefile
533 plugins/audioscale/Makefile
534 plugins/dvdsrc/Makefile
535 plugins/vcdsrc/Makefile
536 plugins/cobin/Makefile
537 plugins/rtjpeg/Makefile
538 plugins/vorbis/Makefile
539 plugins/capture/Makefile
540 plugins/capture/v4l/Makefile
541 plugins/cdparanoia/Makefile
543 components/bonobo-gstmediaplay/Makefile
546 test/bindings/Makefile
550 examples/autoplug/Makefile
551 examples/helloworld/Makefile
552 examples/helloworld2/Makefile
553 examples/launch/Makefile
554 examples/queue/Makefile
555 examples/queue2/Makefile
556 examples/queue3/Makefile
557 examples/queue4/Makefile
558 examples/thread/Makefile
559 examples/xml/Makefile
564 docs/gst/gstreamer.types
566 docs/plugins/Makefile
567 docs/plugins/gstreamer-plugins.types
573 AC_OUTPUT_COMMANDS([chmod +x gstreamer-config])