mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-25 11:11:08 +00:00
2521a319c3
Original commit message from CVS: MPEG2 types added for better autoplugging. MPEG2 works more or less. fix in autoplugging. avi now works.
484 lines
13 KiB
Text
484 lines
13 KiB
Text
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.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/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/manual/Makefile
|
|
docs/manual/images/Makefile
|
|
stamp.h
|
|
gstreamer-config
|
|
gstreamer.spec])
|
|
AC_OUTPUT_COMMANDS([chmod +x gstreamer-config])
|