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_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.c exists (FIXME) AC_MSG_CHECKING(DVD CSS code) if test -f plugins/dvdsrc/css.c then AC_MSG_RESULT(yes) HAVE_CSSAUTH="yes" 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 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 AC_DEFINE(DEBUG_ENABLED) fi if test "x$USE_PROFILING" = xyes; then CFLAGS="$CFLAGS -pg" fi 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) 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 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/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 gstplay/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/manual/images/Makefile stamp.h gstreamer-config gstreamer.spec]) AC_OUTPUT_COMMANDS([chmod +x gstreamer-config])