| AC_INIT(gst/gstobject.h) |
| |
| AC_CANONICAL_SYSTEM |
| |
| AM_CONFIG_HEADER(config.h) |
| |
| STREAMER_MAJOR_VERSION=0 |
| STREAMER_MINOR_VERSION=9 |
| STREAMER_MICRO_VERSION=2 |
| STREAMER_VERSION=$STREAMER_MAJOR_VERSION.$STREAMER_MINOR_VERSION.$STREAMER_MICRO_VERSION |
| |
| dnl libtool |
| STREAMER_CURRENT=0 |
| STREAMER_REVISION=0 |
| STREAMER_AGE=0 |
| |
| AM_INIT_AUTOMAKE(gstreamer, $STREAMER_VERSION) |
| dnl Add parameters for aclocal |
| dnl (This must come after AM_INIT_AUTOMAKE, since it modifies ACLOCAL) |
| ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS" |
| |
| AC_SUBST(STREAMER_MAJOR_VERSION) |
| AC_SUBST(STREAMER_MINOR_VERSION) |
| AC_SUBST(STREAMER_MICRO_VERSION) |
| AC_SUBST(STREAMER_VERSION) |
| |
| AC_SUBST(STREAMER_CURRENT) |
| AC_SUBST(STREAMER_REVISION) |
| AC_SUBST(STREAMER_AGE) |
| |
| |
| AM_MAINTAINER_MODE |
| |
| AC_ISC_POSIX |
| AC_PROG_CC |
| AC_STDC_HEADERS |
| AC_ARG_PROGRAM |
| |
| AM_DISABLE_STATIC |
| AC_LIBTOOL_DLOPEN |
| AM_PROG_LIBTOOL |
| |
| dnl ############################## |
| dnl # Do automated configuration # |
| dnl ############################## |
| |
| dnl Set up conditionals for (target) architecture: |
| dnl ============================================== |
| |
| dnl Determine CPU |
| case "x${target_cpu}" in |
| xi?86) HAVE_CPU_I386=yes ; |
| AC_DEFINE(HAVE_CPU_I386) ;; |
| xpowerpc) HAVE_CPU_PPC=yes ; |
| AC_DEFINE(HAVE_CPU_PPC) ;; |
| esac |
| |
| dnl Determine endianness |
| AC_C_BIGENDIAN |
| |
| dnl Check for tools: |
| dnl ================ |
| |
| dnl Check for nasm |
| AC_PATH_PROG(NASM_PATH, nasm, no) |
| AC_SUBST(NASM_PATH) |
| if test x$NASM_PATH = xno; then |
| AC_MSG_WARN(Couldn't find nasm) |
| HAVE_NASM="no" |
| else |
| AC_DEFINE(HAVE_NASM) |
| HAVE_NASM="yes" |
| fi |
| |
| dnl Check for essential libraries first: |
| dnl ==================================== |
| |
| dnl Check for glib |
| AM_PATH_GLIB(1.2.0,, |
| AC_MSG_ERROR(Cannot find glib: Is glib-config in path?), |
| glib gmodule gthread) |
| dnl Put the glib flags into $LIBS and $CFLAGS since we always use them |
| LIBS="$LIBS $GLIB_LIBS" |
| CFLAGS="$FLAGS $GLIB_CFLAGS" |
| |
| dnl Check for libxml |
| AC_PATH_PROG(XML_CONFIG, xml-config, no) |
| if test x$XML_CONFIG = xno; then |
| AC_MSG_ERROR(Couldn't find xml-config) |
| fi |
| XML_LIBS=`xml-config --libs` |
| XML_CFLAGS=`xml-config --cflags` |
| AC_SUBST(XML_LIBS) |
| AC_SUBST(XML_CFLAGS) |
| |
| |
| dnl Next, check for the optional libraries: |
| dnl ======================================= |
| |
| dnl Check for libgdk-pixbuf |
| AC_PATH_PROG(GDK_PIXBUF_CONFIG, gdk-pixbuf-config, no) |
| if test x$GDK_PIXBUF_CONFIG = xno; then |
| AC_MSG_WARN(Couldn't find gdk-pixbuf-config) |
| GDK_PIXBUF_LIBS= |
| GDK_PIXBUF_CFLAGS= |
| HAVE_GDK_PIXBUF=no |
| else |
| GDK_PIXBUF_LIBS=`gdk-pixbuf-config --libs` |
| GDK_PIXBUF_CFLAGS=`gdk-pixbuf-config --cflags` |
| HAVE_GDK_PIXBUF=yes |
| fi |
| AC_SUBST(GDK_PIXBUF_LIBS) |
| AC_SUBST(GDK_PIXBUF_CFLAGS) |
| |
| |
| dnl Check for gtk |
| AM_PATH_GTK(1.2.0) |
| |
| dnl Check for libghttp |
| dnl FIXME: need to check for header |
| AC_CHECK_LIB(ghttp, ghttp_request_new, |
| [GHTTP_LIBS="-lghttp" |
| GST_HTTPSRC_GET_TYPE="gst_httpsrc_get_type" |
| HAVE_LIBGHTTP=yes |
| ], |
| [AC_MSG_WARN(Cannot find libghttp: can't build gsthttpsrc) |
| GHTTP_LIBS= |
| GST_HTTPSRC_GET_TYPE= |
| HAVE_LIBGHTTP=no |
| ], |
| $LIBS) |
| AC_SUBST(GHTTP_LIBS) |
| AC_SUBST(GST_HTTPSRC_GET_TYPE) |
| |
| dnl Check for libglade |
| HAVE_LIBGLADE_GNOME="no" |
| AC_PATH_PROG(LIBGLADE_CONFIG_PATH, libglade-config, no) |
| if test x$LIBGLADE_CONFIG_PATH = xno; then |
| AC_MSG_WARN(Couldn't find libglade-config - Can't build gstplay) |
| else |
| libglade_save_CFLAGS=${CFLAGS} |
| CFLAGS="$CFLAGS `$LIBGLADE_CONFIG_PATH --libs gnome` `$LIBGLADE_CONFIG_PATH --cflags gnome`" |
| AC_TRY_LINK([#include <glade/glade.h>],[glade_gnome_init();], |
| HAVE_LIBGLADE_GNOME="yes", |
| AC_MSG_WARN( |
| [Couldn't find gnome libraries for libglade - Can't build gstplay]) |
| ) |
| CFLAGS=${libglade_save_CFLAGS} |
| fi |
| |
| dnl Check for atomic.h |
| dnl Note: use AC_CHECK_HEADER not AC_CHECK_HEADERS, because the latter |
| dnl defines the wrong default symbol as well (HAVE_ASM_ATOMIC_H) |
| AC_CHECK_HEADER(asm/atomic.h, HAVE_ATOMIC_H=yes, HAVE_ATOMIC_H=no) |
| dnl Do a compile to check that it has atomic_set (eg, linux 2.0 didn't) |
| if test x$HAVE_ATOMIC_H = xyes; then |
| AC_TRY_RUN([ |
| #include "asm/atomic.h" |
| main() { atomic_t t; atomic_set(&t,0); return 0;} |
| ],, [ |
| # Not successful |
| if test x$HAVE_ATOMIC_H = xyes; then |
| AC_MSG_WARN(Atomic reference counting is out of date: doing without.) |
| fi |
| HAVE_ATOMIC_H=no |
| ], [ |
| # Cross compiling |
| AC_MSG_RESULT(yes) |
| AC_MSG_WARN(Can't check properly for atomic reference counting. Assuming OK.) |
| ]) |
| fi |
| |
| dnl Check for MMX capable compiler |
| AC_MSG_CHECKING(Checking MMX compilation) |
| AC_TRY_RUN([ |
| #include "include/mmx.h" |
| |
| main() |
| { movq_r2r(mm0, mm1); return 0; } |
| ], |
| [ |
| HAVE_LIBMMX="yes" |
| AC_MSG_RESULT(yes) |
| ], |
| HAVE_LIBMMX="no" |
| AC_MSG_RESULT(no) |
| , |
| HAVE_LIBMMX="no" |
| AC_MSG_RESULT(no) |
| ) |
| |
| dnl Check for X11 extensions |
| AC_PATH_XTRA |
| if test "-DX_DISPLAY_MISSING" = "$X_CFLAGS"; then |
| AC_MSG_ERROR(can not find X11) |
| fi |
| AC_SUBST(X_CFLAGS) |
| AC_SUBST(X_PRE_LIBS) |
| AC_SUBST(X_EXTRA_LIBS) |
| AC_SUBST(X_LIBS) |
| |
| xvsave_LIBS=${LIBS} |
| AC_CHECK_LIB(Xv, XvQueryExtension, |
| HAVE_LIBXV=yes |
| AC_DEFINE(HAVE_LIBXV), |
| HAVE_LIBXV=no, $X_LIBS $X_PRE_LIBS -lXext -lX11 $X_EXTRA_LIBS) |
| LIBS=${xvsave_LIBS} |
| |
| dnl Check for xaudio |
| AC_CHECK_HEADER(xaudio/decoder.h,[ |
| AC_DEFINE(HAVE_XAUDIO) |
| HAVE_XAUDIO="yes", [] |
| ]) |
| |
| dnl Set location of plugin directory |
| if test "x${prefix}" = "xNONE"; then |
| PLUGINS_DIR=${ac_default_prefix}/lib/gst |
| else |
| PLUGINS_DIR=${prefix}/lib/gst |
| fi |
| AC_DEFINE_UNQUOTED(PLUGINS_DIR,"$PLUGINS_DIR") |
| AC_SUBST(PLUGINS_DIR) |
| |
| dnl Set location of uninstalled plugin directory |
| PLUGINS_SRCDIR=`pwd`/$srcdir |
| AC_DEFINE_UNQUOTED(PLUGINS_SRCDIR,"$PLUGINS_SRCDIR") |
| AC_SUBST(PLUGINS_SRCDIR) |
| |
| dnl check if css-auth.c exists (FIXME) |
| AC_MSG_CHECKING(DVD CSS code) |
| if test -f plugins/dvdsrc/css-auth.c |
| then |
| AC_MSG_RESULT(yes) |
| HAVE_CSSAUTH="yes" |
| AC_DEFINE(HAVE_CSSAUTH) |
| else |
| AC_MSG_RESULT(no) |
| HAVE_CSSAUTH="no" |
| fi |
| |
| dnl check for libvorbis |
| AC_MSG_CHECKING(Vorbis library) |
| AC_CHECK_LIB(vorbis, ogg_sync_init, |
| HAVE_VORBIS=yes |
| AC_DEFINE(HAVE_VORBIS), |
| HAVE_VORBIS=no, ) |
| |
| dnl check for cdparanoia |
| AC_MSG_CHECKING(CDparanoia library) |
| HAVE_CDPARANOIA=yes |
| AC_CHECK_LIB(cdda_paranoia, paranoia_init, : , HAVE_CDPARANOIA=no, ) |
| AC_CHECK_HEADER(cdda_paranoia.h, :, HAVE_CDPARANOIA=no) |
| AC_CHECK_LIB(cdda_interface, cdda_open, : , HAVE_CDPARANOIA=no, ) |
| AC_CHECK_HEADER(cdda_interface.h, :, HAVE_CDPARANOIA=no) |
| |
| dnl check for liblame |
| AC_MSG_CHECKING(LAME library) |
| AC_CHECK_LIB(mp3lame, lame_init, HAVE_LIBLAME=yes, HAVE_LIBLAME=no, ) |
| AC_CHECK_HEADER(lame.h, :, HAVE_LIBLAME=no) |
| |
| dnl check for gtkdoc |
| AC_CHECK_PROG(HAVE_GTK_DOC, gtkdoc-mkdb, true, false) |
| |
| dnl check for db2html |
| AC_CHECK_PROG(HAVE_DB2HTML, db2html, true, false) |
| AC_CHECK_PROG(HAVE_DB2PS, db2ps, true, false) |
| AC_CHECK_PROG(HAVE_DB2PDF, db2pdf, true, false) |
| |
| |
| dnl ###################################################################### |
| dnl # Check command line parameters, and set shell variables accordingly # |
| dnl ###################################################################### |
| |
| AC_ARG_ENABLE(gdk-pixbuf, |
| [ --enable-gdk-pixbuf use gdk pixbuf, if available], |
| [case "${enableval}" in |
| yes) USE_GDK_PIXBUF=$HAVE_GDK_PIXBUF ;; |
| no) USE_GDK_PIXBUF=no ;; |
| *) AC_MSG_ERROR(bad value ${enableval} for --enable-gdk-pixbuf) ;; |
| esac], |
| [USE_GDK_PIXBUF=$HAVE_GDK_PIXBUF]) dnl Default value |
| |
| AC_ARG_ENABLE(libghttp, |
| [ --enable-libghttp use the ghttp library, if available], |
| [case "${enableval}" in |
| yes) USE_LIBGHTTP=$HAVE_LIBGHTTP ;; |
| no) USE_LIBGHTTP=no ;; |
| *) AC_MSG_ERROR(bad value ${enableval} for --enable-libghttp) ;; |
| esac], |
| [USE_LIBGHTTP=$HAVE_LIBGHTTP]) dnl Default value |
| |
| AC_ARG_ENABLE(libmmx, |
| [ --enable-libmmx use libmmx, if available], |
| [case "${enableval}" in |
| yes) USE_LIBMMX=$HAVE_LIBMMX ;; |
| no) USE_LIBMMX=no ;; |
| *) AC_MSG_ERROR(bad value ${enableval} for --enable-libmmx) ;; |
| esac], |
| [USE_LIBMMX=$HAVE_LIBMMX]) dnl Default value |
| |
| AC_ARG_ENABLE(atomic, |
| [ --enable-atomic use atomic reference counting header], |
| [case "${enableval}" in |
| yes) USE_ATOMIC_H=$HAVE_ATOMIC_H;; |
| noset) USE_ATOMIC_H=$HAVE_ATOMIC_H;; |
| no) USE_ATOMIC_H=no;; |
| *) AC_MSG_ERROR(bad value ${enableval} for --enable-atomic) ;; |
| esac], |
| [USE_ATOMIC_H=$HAVE_ATOMIC_H]) dnl Default value |
| |
| AC_ARG_ENABLE(plugin-srcdir, |
| [ --enable-plugin-srcdir allow tests/demos to use non-installed plugins ], |
| [case "${enableval}" in |
| yes) PLUGINS_USE_SRCDIR=yes ;; |
| no) PLUGINS_USE_SRCDIR=no ;; |
| *) AC_MSG_ERROR(bad value ${enableval} for --enable-plugin-srcdir) ;; |
| esac], |
| [PLUGINS_USE_SRCDIR=yes]) dnl Default value |
| |
| AC_ARG_ENABLE(debug, |
| [ --enable-debug spews lots of useless info at runtime], |
| [case "${enableval}" in |
| yes) USE_DEBUG=yes ;; |
| no) USE_DEBUG=no ;; |
| *) AC_MSG_ERROR(bad value ${enableval} for --enable-debug) ;; |
| esac], |
| [USE_DEBUG=no]) dnl Default value |
| |
| AC_ARG_ENABLE(profiling, |
| [ --enable-profiling adds -pg to compiler commandline, for profiling], |
| [case "${enableval}" in |
| yes) USE_PROFILING=yes ;; |
| no) UES_PROFILING=no ;; |
| *) AC_MSG_ERROR(bad value ${enableval} for --enable-profiling) ;; |
| esac], |
| [USE_PROFILING=no]) dnl Default value |
| |
| |
| dnl ################################################ |
| dnl # Set defines according to variables set above # |
| dnl ################################################ |
| |
| dnl These should be "USE_*" instead of "HAVE_*", but some packages expect |
| dnl HAVE_ and it is likely to be easier to stick with the old name |
| if test "x$USE_GDK_PIXBUF" = xyes; then |
| AC_DEFINE(HAVE_GDK_PIXBUF) |
| fi |
| |
| if test "x$USE_LIBGHTTP" = xyes; then |
| AC_DEFINE(HAVE_LIBGHTTP) |
| fi |
| |
| if test "x$USE_LIBMMX" = xyes; then |
| AC_DEFINE(HAVE_LIBMMX) |
| fi |
| |
| if test "x$USE_ATOMIC_H" = xyes; then |
| AC_DEFINE(HAVE_ATOMIC_H) |
| fi |
| |
| if test "x$PLUGINS_USE_SRCDIR" = xyes; then |
| AC_DEFINE(PLUGINS_USE_SRCDIR) |
| fi |
| |
| if test "x$USE_DEBUG" = xyes; then |
| CFLAGS="$CFLAGS -g" |
| AC_DEFINE(GST_DEBUG_ENABLED) |
| fi |
| |
| if test "x$USE_PROFILING" = xyes; then |
| CFLAGS="$CFLAGS -pg" |
| fi |
| |
| CFLAGS="$CFLAGS -O6" |
| |
| dnl ############################# |
| dnl # Set automake conditionals # |
| dnl ############################# |
| |
| dnl These should be "USE_*" instead of "HAVE_*", but some packages expect |
| dnl HAVE_ and it is likely to be easier to stick with the old name |
| AM_CONDITIONAL(HAVE_CPU_I386, test "x$HAVE_CPU_I386" = "xyes") |
| AM_CONDITIONAL(HAVE_CPU_PPC, test "x$HAVE_CPU_PPC" = "xyes") |
| AM_CONDITIONAL(HAVE_GDK_PIXBUF, test "x$USE_GDK_PIXBUF" = "xyes") |
| AM_CONDITIONAL(HAVE_LIBGHTTP, test "x$USE_LIBGHTTP" = "xyes") |
| AM_CONDITIONAL(HAVE_LIBMMX, test "x$USE_LIBMMX" = "xyes") |
| AM_CONDITIONAL(HAVE_ATOMIC_H, test "x$USE_ATOMIC_H" = "xyes") |
| AM_CONDITIONAL(HAVE_XAUDIO, test "x$HAVE_XAUDIO" = "xyes") |
| AM_CONDITIONAL(HAVE_CSSAUTH, test "x$HAVE_CSSAUTH" = "xyes") |
| AM_CONDITIONAL(HAVE_VORBIS, test "x$HAVE_VORBIS" = "xyes") |
| AM_CONDITIONAL(HAVE_NASM, test "x$HAVE_NASM" = "xyes") |
| AM_CONDITIONAL(HAVE_LIBGLADE_GNOME, test "x$HAVE_LIBGLADE_GNOME" = "xyes") |
| AM_CONDITIONAL(HAVE_LIBXV, test "x$HAVE_LIBXV" = "xyes") |
| AM_CONDITIONAL(HAVE_GTK_DOC, $HAVE_GTK_DOC) |
| AM_CONDITIONAL(HAVE_DB2HTML, $HAVE_DB2HTML) |
| AM_CONDITIONAL(HAVE_DB2PDF, $HAVE_DB2PDF) |
| AM_CONDITIONAL(HAVE_DB2PS, $HAVE_DB2PS) |
| AM_CONDITIONAL(HAVE_CDPARANOIA, test "x$HAVE_CDPARANOIA" = "xyes") |
| AM_CONDITIONAL(HAVE_LIBLAME, test "x$HAVE_LIBLAME" = "xyes") |
| |
| |
| dnl FIXME: having to AC_SUBST these is messy. Not sure if CPPFLAGS and LDFLAGS |
| dnl need it, either. |
| AC_SUBST(CFLAGS) |
| AC_SUBST(CPPFLAGS) |
| AC_SUBST(LDFLAGS) |
| |
| |
| dnl ############################# |
| dnl # Configure the subpackages # |
| dnl ############################# |
| |
| AC_CONFIG_SUBDIRS(gist) |
| AC_CONFIG_SUBDIRS(plugins/mp3decode/xing/libxing) |
| |
| |
| dnl ######################### |
| dnl # Make the output files # |
| dnl ######################### |
| |
| AC_OUTPUT([Makefile |
| include/Makefile |
| include/wine/Makefile |
| gst/Makefile |
| gst/types/Makefile |
| gst/meta/Makefile |
| gst/elements/Makefile |
| gst/xml/Makefile |
| libs/Makefile |
| libs/riff/Makefile |
| libs/colorspace/Makefile |
| libs/videoscale/Makefile |
| libs/getbits/Makefile |
| libs/putbits/Makefile |
| libs/winloader/Makefile |
| libs/idct/Makefile |
| plugins/Makefile |
| plugins/au/Makefile |
| plugins/wav/Makefile |
| plugins/avi/Makefile |
| plugins/avi/wincodec/Makefile |
| plugins/jpeg/Makefile |
| plugins/mp3decode/Makefile |
| plugins/mp3decode/types/Makefile |
| plugins/mp3decode/xa/Makefile |
| plugins/mp3decode/xing/Makefile |
| plugins/mp3decode/mpg123/Makefile |
| plugins/mp3decode/parse/Makefile |
| plugins/mp3encode/Makefile |
| plugins/mp3encode/lame/Makefile |
| plugins/mpeg2/Makefile |
| plugins/mpeg2/parse/Makefile |
| plugins/mpeg2/ac3parse/Makefile |
| plugins/mpeg2/ac3dec/Makefile |
| plugins/mpeg2/video/Makefile |
| plugins/mpeg2/mpeg2enc/Makefile |
| plugins/mpeg2/mpeg2dec/Makefile |
| plugins/mpeg2/subtitles/Makefile |
| plugins/mpeg2/videoparse/Makefile |
| plugins/mpeg2/mpegtypes/Makefile |
| plugins/mpeg1/Makefile |
| plugins/mpeg1/mpegtypes/Makefile |
| plugins/mpeg1/mpeg_play/Makefile |
| plugins/mpeg1/mpegaudio/Makefile |
| plugins/mpeg1/parse/Makefile |
| plugins/mpeg1/system_encode/Makefile |
| plugins/mpeg1/mpeg1encoder/Makefile |
| plugins/mpeg1video/Makefile |
| plugins/mpeg1video/parse/Makefile |
| plugins/filters/Makefile |
| plugins/filters/smooth/Makefile |
| plugins/filters/median/Makefile |
| plugins/effects/Makefile |
| plugins/effects/stereo/Makefile |
| plugins/effects/volume/Makefile |
| plugins/visualization/Makefile |
| plugins/visualization/spectrum/Makefile |
| plugins/visualization/vumeter/Makefile |
| plugins/visualization/synaesthesia/Makefile |
| plugins/visualization/smoothwave/Makefile |
| plugins/videosink/Makefile |
| plugins/videoscale/Makefile |
| plugins/audioscale/Makefile |
| plugins/dvdsrc/Makefile |
| plugins/vcdsrc/Makefile |
| plugins/cobin/Makefile |
| plugins/rtjpeg/Makefile |
| plugins/vorbis/Makefile |
| plugins/capture/Makefile |
| plugins/capture/v4l/Makefile |
| plugins/cdparanoia/Makefile |
| gstplay/Makefile |
| components/bonobo-gstmediaplay/Makefile |
| test/Makefile |
| test/xml/Makefile |
| test/bindings/Makefile |
| test/cothreads/Makefile |
| tests/Makefile |
| editor/Makefile |
| tools/Makefile |
| docs/Makefile |
| docs/gst/Makefile |
| docs/gst/gstreamer.types |
| docs/libs/Makefile |
| docs/plugins/Makefile |
| docs/plugins/gstreamer-plugins.types |
| docs/manual/Makefile |
| docs/fwg/Makefile |
| stamp.h |
| gstreamer-config |
| gstreamer.spec]) |
| AC_OUTPUT_COMMANDS([chmod +x gstreamer-config]) |