AC_INIT(gst/gstobject.h) AM_CONFIG_HEADER(config.h) STREAMER_MAJOR_VERSION=0 STREAMER_MINOR_VERSION=0 STREAMER_MICRO_VERSION=9.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 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 gtk AM_PATH_GTK(1.2.0) dnl Check for libghttp AC_CHECK_LIB(ghttp, ghttp_request_new, [GHTTP_LIBS="-lghttp" HAVE_LIBGHTTP=yes ], [AC_MSG_WARN(Cannot find libghttp: can't build gsthttpsrc) GHTTP_LIBS= HAVE_LIBGHTTP=no ], $LIBS) AC_SUBST(GHTTP_LIBS) 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 xaudio AC_CHECK_HEADER(xaudio/decoder.h,[ AC_DEFINE(HAVE_XAUDIO) HAVE_XAUDIO="yes", [] ]) dnl Set location of plugin directory PLUGINS_DIR=${prefix}/lib/gst 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 gtkdoc AC_CHECK_PROG(HAVE_GTK_DOC, gtkdoc-mkdb, true, false) dnl ###################################################################### dnl # Check command line parameters, and set shell variables accordingly # dnl ###################################################################### 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_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_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_GTK_DOC, $HAVE_GTK_DOC) 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 plugins/Makefile plugins/au/Makefile plugins/wav/Makefile plugins/mp3decode/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/mpeg1/Makefile plugins/mpeg1/parse/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/dvdsrc/Makefile plugins/vcdsrc/Makefile plugins/cobin/Makefile plugins/rtjpeg/Makefile test/Makefile test/xml/Makefile test/bindings/Makefile test/cothreads/Makefile editor/Makefile tools/Makefile docs/Makefile docs/gst/Makefile stamp.h gstreamer-config gstreamer.spec]) AC_OUTPUT_COMMANDS([chmod +x gstreamer-config])