2000-01-30 09:03:00 +00:00
|
|
|
AC_INIT(gst/gstobject.h)
|
|
|
|
|
2000-09-15 22:44:10 +00:00
|
|
|
AC_CANONICAL_SYSTEM
|
|
|
|
|
2000-01-30 09:03:00 +00:00
|
|
|
AM_CONFIG_HEADER(config.h)
|
|
|
|
|
|
|
|
STREAMER_MAJOR_VERSION=0
|
2000-08-14 10:59:32 +00:00
|
|
|
STREAMER_MINOR_VERSION=9
|
|
|
|
STREAMER_MICRO_VERSION=2
|
2000-01-30 09:03:00 +00:00
|
|
|
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)
|
2000-02-01 04:10:58 +00:00
|
|
|
dnl Add parameters for aclocal
|
|
|
|
dnl (This must come after AM_INIT_AUTOMAKE, since it modifies ACLOCAL)
|
|
|
|
ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
|
2000-01-30 09:03:00 +00:00
|
|
|
|
|
|
|
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
|
|
|
|
|
2000-02-01 04:10:58 +00:00
|
|
|
dnl ##############################
|
|
|
|
dnl # Do automated configuration #
|
|
|
|
dnl ##############################
|
2000-01-30 09:03:00 +00:00
|
|
|
|
2000-09-16 23:11:05 +00:00
|
|
|
dnl Set up conditionals for (target) architecture:
|
|
|
|
dnl ==============================================
|
2000-09-15 22:44:10 +00:00
|
|
|
|
2000-09-16 23:11:05 +00:00
|
|
|
dnl Determine CPU
|
2000-09-15 22:44:10 +00:00
|
|
|
case "x${target_cpu}" in
|
2000-09-15 23:04:31 +00:00
|
|
|
xi?86) HAVE_CPU_I386=yes ;
|
2000-09-15 22:44:10 +00:00
|
|
|
AC_DEFINE(HAVE_CPU_I386) ;;
|
|
|
|
xpowerpc) HAVE_CPU_PPC=yes ;
|
|
|
|
AC_DEFINE(HAVE_CPU_PPC) ;;
|
|
|
|
esac
|
|
|
|
|
2000-09-16 23:11:05 +00:00
|
|
|
dnl Determine endianness
|
|
|
|
AC_C_BIGENDIAN
|
2000-09-15 22:44:10 +00:00
|
|
|
|
2000-08-18 21:30:30 +00:00
|
|
|
dnl Check for tools:
|
|
|
|
dnl ================
|
|
|
|
|
|
|
|
dnl Check for nasm
|
|
|
|
AC_PATH_PROG(NASM_PATH, nasm, no)
|
2000-08-18 22:07:34 +00:00
|
|
|
AC_SUBST(NASM_PATH)
|
2000-08-18 21:30:30 +00:00
|
|
|
if test x$NASM_PATH = xno; then
|
|
|
|
AC_MSG_WARN(Couldn't find nasm)
|
2000-08-18 22:07:34 +00:00
|
|
|
HAVE_NASM="no"
|
2000-08-18 21:30:30 +00:00
|
|
|
else
|
|
|
|
AC_DEFINE(HAVE_NASM)
|
2000-08-18 22:07:34 +00:00
|
|
|
HAVE_NASM="yes"
|
2000-08-18 21:30:30 +00:00
|
|
|
fi
|
|
|
|
|
2000-02-01 04:10:58 +00:00
|
|
|
dnl Check for essential libraries first:
|
|
|
|
dnl ====================================
|
2000-01-30 09:03:00 +00:00
|
|
|
|
2000-02-01 04:10:58 +00:00
|
|
|
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"
|
2000-08-14 10:59:32 +00:00
|
|
|
CFLAGS="$FLAGS $GLIB_CFLAGS"
|
2000-01-30 09:03:00 +00:00
|
|
|
|
2000-02-01 04:10:58 +00:00
|
|
|
dnl Check for libxml
|
|
|
|
AC_PATH_PROG(XML_CONFIG, xml-config, no)
|
|
|
|
if test x$XML_CONFIG = xno; then
|
2000-01-30 09:03:00 +00:00
|
|
|
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)
|
|
|
|
|
2000-05-12 07:15:03 +00:00
|
|
|
|
|
|
|
dnl Next, check for the optional libraries:
|
|
|
|
dnl =======================================
|
|
|
|
|
|
|
|
dnl Check for libgdk-pixbuf
|
2000-02-20 16:19:50 +00:00
|
|
|
AC_PATH_PROG(GDK_PIXBUF_CONFIG, gdk-pixbuf-config, no)
|
|
|
|
if test x$GDK_PIXBUF_CONFIG = xno; then
|
2000-05-12 07:15:03 +00:00
|
|
|
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
|
2000-02-20 16:19:50 +00:00
|
|
|
fi
|
|
|
|
AC_SUBST(GDK_PIXBUF_LIBS)
|
|
|
|
AC_SUBST(GDK_PIXBUF_CFLAGS)
|
|
|
|
|
2000-01-30 09:03:00 +00:00
|
|
|
|
2000-02-01 04:10:58 +00:00
|
|
|
dnl Check for gtk
|
|
|
|
AM_PATH_GTK(1.2.0)
|
|
|
|
|
|
|
|
dnl Check for libghttp
|
2000-09-15 22:44:10 +00:00
|
|
|
dnl FIXME: need to check for header
|
2000-02-01 04:10:58 +00:00
|
|
|
AC_CHECK_LIB(ghttp, ghttp_request_new,
|
|
|
|
[GHTTP_LIBS="-lghttp"
|
2000-05-12 07:15:03 +00:00
|
|
|
GST_HTTPSRC_GET_TYPE="gst_httpsrc_get_type"
|
2000-02-01 04:10:58 +00:00
|
|
|
HAVE_LIBGHTTP=yes
|
|
|
|
],
|
|
|
|
[AC_MSG_WARN(Cannot find libghttp: can't build gsthttpsrc)
|
|
|
|
GHTTP_LIBS=
|
2000-05-12 07:15:03 +00:00
|
|
|
GST_HTTPSRC_GET_TYPE=
|
2000-02-01 04:10:58 +00:00
|
|
|
HAVE_LIBGHTTP=no
|
|
|
|
],
|
|
|
|
$LIBS)
|
|
|
|
AC_SUBST(GHTTP_LIBS)
|
2000-05-12 07:15:03 +00:00
|
|
|
AC_SUBST(GST_HTTPSRC_GET_TYPE)
|
2000-02-01 04:10:58 +00:00
|
|
|
|
2000-08-18 23:31:30 +00:00
|
|
|
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
|
|
|
|
|
2000-02-01 04:10:58 +00:00
|
|
|
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)
|
2000-02-04 02:25:34 +00:00
|
|
|
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
|
2000-01-30 22:50:27 +00:00
|
|
|
|
2000-02-01 19:40:10 +00:00
|
|
|
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)
|
|
|
|
)
|
2000-02-01 04:10:58 +00:00
|
|
|
|
2000-07-12 22:52:42 +00:00
|
|
|
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)
|
|
|
|
|
2000-08-19 00:29:57 +00:00
|
|
|
xvsave_LIBS=${LIBS}
|
2000-09-17 14:06:18 +00:00
|
|
|
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)
|
2000-08-19 00:29:57 +00:00
|
|
|
LIBS=${xvsave_LIBS}
|
2000-07-12 22:52:42 +00:00
|
|
|
|
2000-02-01 04:10:58 +00:00
|
|
|
dnl Check for xaudio
|
2000-01-30 22:50:27 +00:00
|
|
|
AC_CHECK_HEADER(xaudio/decoder.h,[
|
|
|
|
AC_DEFINE(HAVE_XAUDIO)
|
|
|
|
HAVE_XAUDIO="yes", []
|
|
|
|
])
|
2000-01-30 09:03:00 +00:00
|
|
|
|
2000-02-01 04:10:58 +00:00
|
|
|
dnl Set location of plugin directory
|
2000-03-20 20:25:03 +00:00
|
|
|
if test "x${prefix}" = "xNONE"; then
|
|
|
|
PLUGINS_DIR=${ac_default_prefix}/lib/gst
|
|
|
|
else
|
|
|
|
PLUGINS_DIR=${prefix}/lib/gst
|
|
|
|
fi
|
2000-01-30 09:03:00 +00:00
|
|
|
AC_DEFINE_UNQUOTED(PLUGINS_DIR,"$PLUGINS_DIR")
|
|
|
|
AC_SUBST(PLUGINS_DIR)
|
|
|
|
|
2000-02-01 04:10:58 +00:00
|
|
|
dnl Set location of uninstalled plugin directory
|
2000-01-30 09:03:00 +00:00
|
|
|
PLUGINS_SRCDIR=`pwd`/$srcdir
|
|
|
|
AC_DEFINE_UNQUOTED(PLUGINS_SRCDIR,"$PLUGINS_SRCDIR")
|
|
|
|
AC_SUBST(PLUGINS_SRCDIR)
|
|
|
|
|
2000-11-20 19:04:32 +00:00
|
|
|
dnl check if css-auth.c exists (FIXME)
|
2000-02-01 04:10:58 +00:00
|
|
|
AC_MSG_CHECKING(DVD CSS code)
|
2000-11-20 19:04:32 +00:00
|
|
|
if test -f plugins/dvdsrc/css-auth.c
|
2000-01-30 22:50:27 +00:00
|
|
|
then
|
|
|
|
AC_MSG_RESULT(yes)
|
2000-01-31 05:55:22 +00:00
|
|
|
HAVE_CSSAUTH="yes"
|
2000-11-20 19:04:32 +00:00
|
|
|
AC_DEFINE(HAVE_CSSAUTH)
|
2000-01-30 22:50:27 +00:00
|
|
|
else
|
|
|
|
AC_MSG_RESULT(no)
|
2000-01-31 05:55:22 +00:00
|
|
|
HAVE_CSSAUTH="no"
|
2000-01-30 22:50:27 +00:00
|
|
|
fi
|
|
|
|
|
2000-09-16 23:11:05 +00:00
|
|
|
dnl check for libvorbis
|
|
|
|
AC_MSG_CHECKING(Vorbis library)
|
2000-09-17 14:06:18 +00:00
|
|
|
AC_CHECK_LIB(vorbis, ogg_sync_init,
|
|
|
|
HAVE_VORBIS=yes
|
|
|
|
AC_DEFINE(HAVE_VORBIS),
|
|
|
|
HAVE_VORBIS=no, )
|
2000-09-16 23:11:05 +00:00
|
|
|
|
2000-02-01 04:10:58 +00:00
|
|
|
dnl check for gtkdoc
|
|
|
|
AC_CHECK_PROG(HAVE_GTK_DOC, gtkdoc-mkdb, true, false)
|
|
|
|
|
2000-10-09 00:34:21 +00:00
|
|
|
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)
|
|
|
|
|
2000-02-01 04:10:58 +00:00
|
|
|
|
|
|
|
dnl ######################################################################
|
|
|
|
dnl # Check command line parameters, and set shell variables accordingly #
|
|
|
|
dnl ######################################################################
|
|
|
|
|
2000-05-12 07:15:03 +00:00
|
|
|
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
|
|
|
|
|
2000-02-01 04:10:58 +00:00
|
|
|
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
|
2000-01-30 09:03:00 +00:00
|
|
|
|
2000-02-01 04:10:58 +00:00
|
|
|
AC_ARG_ENABLE(plugin-srcdir,
|
|
|
|
[ --enable-plugin-srcdir allow tests/demos to use non-installed plugins ],
|
|
|
|
[case "${enableval}" in
|
2000-02-01 20:35:14 +00:00
|
|
|
yes) PLUGINS_USE_SRCDIR=yes ;;
|
|
|
|
no) PLUGINS_USE_SRCDIR=no ;;
|
2000-02-01 04:10:58 +00:00
|
|
|
*) AC_MSG_ERROR(bad value ${enableval} for --enable-plugin-srcdir) ;;
|
|
|
|
esac],
|
2000-02-01 20:35:14 +00:00
|
|
|
[PLUGINS_USE_SRCDIR=yes]) dnl Default value
|
2000-02-01 04:10:58 +00:00
|
|
|
|
|
|
|
AC_ARG_ENABLE(debug,
|
|
|
|
[ --enable-debug spews lots of useless info at runtime],
|
|
|
|
[case "${enableval}" in
|
2000-02-02 06:26:44 +00:00
|
|
|
yes) USE_DEBUG=yes ;;
|
|
|
|
no) USE_DEBUG=no ;;
|
2000-02-01 04:10:58 +00:00
|
|
|
*) AC_MSG_ERROR(bad value ${enableval} for --enable-debug) ;;
|
|
|
|
esac],
|
2000-02-02 06:26:44 +00:00
|
|
|
[USE_DEBUG=no]) dnl Default value
|
2000-02-01 04:10:58 +00:00
|
|
|
|
|
|
|
AC_ARG_ENABLE(profiling,
|
|
|
|
[ --enable-profiling adds -pg to compiler commandline, for profiling],
|
|
|
|
[case "${enableval}" in
|
2000-02-02 06:26:44 +00:00
|
|
|
yes) USE_PROFILING=yes ;;
|
|
|
|
no) UES_PROFILING=no ;;
|
2000-02-01 04:10:58 +00:00
|
|
|
*) AC_MSG_ERROR(bad value ${enableval} for --enable-profiling) ;;
|
|
|
|
esac],
|
2000-02-02 06:26:44 +00:00
|
|
|
[USE_PROFILING=no]) dnl Default value
|
2000-02-01 04:10:58 +00:00
|
|
|
|
|
|
|
|
|
|
|
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
|
2000-05-12 07:15:03 +00:00
|
|
|
if test "x$USE_GDK_PIXBUF" = xyes; then
|
|
|
|
AC_DEFINE(HAVE_GDK_PIXBUF)
|
|
|
|
fi
|
|
|
|
|
2000-02-01 04:10:58 +00:00
|
|
|
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
|
Changes made to the DEBUG system. New header file gstdebug.h holds the stuff to keep it out of gst.h's hair. DEBUG ...
Original commit message from CVS:
Changes made to the DEBUG system. New header file gstdebug.h holds the
stuff to keep it out of gst.h's hair. DEBUG prints out the process id,
cothread id, source filename and line number. Two new macros DEBUG_ENTER
and DEBUG_LEAVE are used to show the entry and exit of a given function.
This eventually might be used to construct call trace graphs, even taking
cothreads into account. This would be quite useful in visualizing the
scheduling mechanism.
Minor changes to various debug messages.
Also sitting in gstdebug.h is a prototypical DEBUG_ENTER that's capable of
performing DEBUG_LEAVE automatically. It does this by utilizing a
little-known GCC extension that allows one to call a function with the
same parameters as the current function. The macro uses this to basically
call itself. A boolean is used to ensure that when it calls itself it
actually runs the body of the function. In the meantime it prints stuff
out before and after the real function, as well as constructing a
debugging string. This can be used eventually to provide call-wide data
on the DEBUG lines, instead of having to replicate data on each call to
DEBUG. More research is needed into how this would most cleanly be fit
into some other chunk of code, like GStreamer (I think of this DEBUG trick
as a separate project, sorta).
Unfortunately, the aforementioned DEBUG trick interacts quite poorly with
cothreads. Almost any time it's used in a function that has anything
remotely to do with a cothread context (as in, it runs in one), a segfault
results from the __builtin_apply call, which is the heart of the whole
thing. If someone who really knows assembly could analyze the resulting
code to see what's really going on, we might find a way to fix either the
macro or the cothreads (I'm thinking that there's something we missed in
constructing the cothreads themselves) so this works in all cases.
In the meantime, please insert both DEBUG_ENTER and DEBUG_LEAVE in your
functions. Be sure to put DEBUG_ENTER after your variable declarations
and before any functional code, not to put the function name in any DEBUG
strings (it's already there, trust me), and put a DEBUG_LEAVE if you care
enough.
Changes are going to happen in the way DEBUGs and other printouts occur,
so stay tuned.
2000-12-04 09:35:08 +00:00
|
|
|
CFLAGS="$CFLAGS -g"
|
|
|
|
AC_DEFINE(GST_DEBUG_ENABLED)
|
2000-02-01 04:10:58 +00:00
|
|
|
fi
|
|
|
|
|
|
|
|
if test "x$USE_PROFILING" = xyes; then
|
|
|
|
CFLAGS="$CFLAGS -pg"
|
|
|
|
fi
|
|
|
|
|
Changes made to the DEBUG system. New header file gstdebug.h holds the stuff to keep it out of gst.h's hair. DEBUG ...
Original commit message from CVS:
Changes made to the DEBUG system. New header file gstdebug.h holds the
stuff to keep it out of gst.h's hair. DEBUG prints out the process id,
cothread id, source filename and line number. Two new macros DEBUG_ENTER
and DEBUG_LEAVE are used to show the entry and exit of a given function.
This eventually might be used to construct call trace graphs, even taking
cothreads into account. This would be quite useful in visualizing the
scheduling mechanism.
Minor changes to various debug messages.
Also sitting in gstdebug.h is a prototypical DEBUG_ENTER that's capable of
performing DEBUG_LEAVE automatically. It does this by utilizing a
little-known GCC extension that allows one to call a function with the
same parameters as the current function. The macro uses this to basically
call itself. A boolean is used to ensure that when it calls itself it
actually runs the body of the function. In the meantime it prints stuff
out before and after the real function, as well as constructing a
debugging string. This can be used eventually to provide call-wide data
on the DEBUG lines, instead of having to replicate data on each call to
DEBUG. More research is needed into how this would most cleanly be fit
into some other chunk of code, like GStreamer (I think of this DEBUG trick
as a separate project, sorta).
Unfortunately, the aforementioned DEBUG trick interacts quite poorly with
cothreads. Almost any time it's used in a function that has anything
remotely to do with a cothread context (as in, it runs in one), a segfault
results from the __builtin_apply call, which is the heart of the whole
thing. If someone who really knows assembly could analyze the resulting
code to see what's really going on, we might find a way to fix either the
macro or the cothreads (I'm thinking that there's something we missed in
constructing the cothreads themselves) so this works in all cases.
In the meantime, please insert both DEBUG_ENTER and DEBUG_LEAVE in your
functions. Be sure to put DEBUG_ENTER after your variable declarations
and before any functional code, not to put the function name in any DEBUG
strings (it's already there, trust me), and put a DEBUG_LEAVE if you care
enough.
Changes are going to happen in the way DEBUGs and other printouts occur,
so stay tuned.
2000-12-04 09:35:08 +00:00
|
|
|
CFLAGS="$CFLAGS -O6"
|
2000-02-01 04:10:58 +00:00
|
|
|
|
|
|
|
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
|
2000-09-15 22:44:10 +00:00
|
|
|
AM_CONDITIONAL(HAVE_CPU_I386, test "x$HAVE_CPU_I386" = "xyes")
|
|
|
|
AM_CONDITIONAL(HAVE_CPU_PPC, test "x$HAVE_CPU_PPC" = "xyes")
|
2000-08-18 23:31:30 +00:00
|
|
|
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")
|
2000-09-16 23:11:05 +00:00
|
|
|
AM_CONDITIONAL(HAVE_VORBIS, test "x$HAVE_VORBIS" = "xyes")
|
2000-08-18 23:31:30 +00:00
|
|
|
AM_CONDITIONAL(HAVE_NASM, test "x$HAVE_NASM" = "xyes")
|
|
|
|
AM_CONDITIONAL(HAVE_LIBGLADE_GNOME, test "x$HAVE_LIBGLADE_GNOME" = "xyes")
|
2000-08-19 00:29:57 +00:00
|
|
|
AM_CONDITIONAL(HAVE_LIBXV, test "x$HAVE_LIBXV" = "xyes")
|
2000-08-18 23:31:30 +00:00
|
|
|
AM_CONDITIONAL(HAVE_GTK_DOC, $HAVE_GTK_DOC)
|
2000-10-09 00:34:21 +00:00
|
|
|
AM_CONDITIONAL(HAVE_DB2HTML, $HAVE_DB2HTML)
|
|
|
|
AM_CONDITIONAL(HAVE_DB2PDF, $HAVE_DB2PDF)
|
|
|
|
AM_CONDITIONAL(HAVE_DB2PS, $HAVE_DB2PS)
|
2000-02-01 04:10:58 +00:00
|
|
|
|
|
|
|
|
|
|
|
dnl FIXME: having to AC_SUBST these is messy. Not sure if CPPFLAGS and LDFLAGS
|
|
|
|
dnl need it, either.
|
2000-01-30 09:03:00 +00:00
|
|
|
AC_SUBST(CFLAGS)
|
|
|
|
AC_SUBST(CPPFLAGS)
|
|
|
|
AC_SUBST(LDFLAGS)
|
|
|
|
|
|
|
|
|
2000-02-01 04:10:58 +00:00
|
|
|
dnl #############################
|
|
|
|
dnl # Configure the subpackages #
|
|
|
|
dnl #############################
|
2000-01-30 09:03:00 +00:00
|
|
|
|
|
|
|
AC_CONFIG_SUBDIRS(gist)
|
|
|
|
AC_CONFIG_SUBDIRS(plugins/mp3decode/xing/libxing)
|
|
|
|
|
2000-02-01 04:10:58 +00:00
|
|
|
|
|
|
|
dnl #########################
|
|
|
|
dnl # Make the output files #
|
|
|
|
dnl #########################
|
|
|
|
|
2000-01-30 09:03:00 +00:00
|
|
|
AC_OUTPUT([Makefile
|
|
|
|
gst/Makefile
|
|
|
|
gst/types/Makefile
|
|
|
|
gst/meta/Makefile
|
|
|
|
gst/elements/Makefile
|
|
|
|
gst/xml/Makefile
|
2000-03-19 00:59:05 +00:00
|
|
|
libs/Makefile
|
|
|
|
libs/riff/Makefile
|
2000-04-02 21:36:54 +00:00
|
|
|
libs/colorspace/Makefile
|
2000-05-12 17:33:35 +00:00
|
|
|
libs/videoscale/Makefile
|
2000-04-16 18:47:45 +00:00
|
|
|
libs/getbits/Makefile
|
2000-06-16 22:58:38 +00:00
|
|
|
libs/putbits/Makefile
|
2000-07-15 12:06:18 +00:00
|
|
|
libs/winloader/Makefile
|
2000-08-14 15:17:24 +00:00
|
|
|
libs/idct/Makefile
|
2000-01-30 09:03:00 +00:00
|
|
|
plugins/Makefile
|
|
|
|
plugins/au/Makefile
|
|
|
|
plugins/wav/Makefile
|
2000-03-19 00:59:05 +00:00
|
|
|
plugins/avi/Makefile
|
2000-08-14 10:59:32 +00:00
|
|
|
plugins/avi/wincodec/Makefile
|
2000-03-22 21:18:15 +00:00
|
|
|
plugins/jpeg/Makefile
|
2000-01-30 09:03:00 +00:00
|
|
|
plugins/mp3decode/Makefile
|
2000-10-08 22:17:11 +00:00
|
|
|
plugins/mp3decode/types/Makefile
|
2000-01-30 09:03:00 +00:00
|
|
|
plugins/mp3decode/xa/Makefile
|
|
|
|
plugins/mp3decode/xing/Makefile
|
|
|
|
plugins/mp3decode/mpg123/Makefile
|
|
|
|
plugins/mp3decode/parse/Makefile
|
2000-12-12 09:40:25 +00:00
|
|
|
plugins/mp3encode/Makefile
|
|
|
|
plugins/mp3encode/lame/Makefile
|
2000-01-30 09:03:00 +00:00
|
|
|
plugins/mpeg2/Makefile
|
|
|
|
plugins/mpeg2/parse/Makefile
|
|
|
|
plugins/mpeg2/ac3parse/Makefile
|
|
|
|
plugins/mpeg2/ac3dec/Makefile
|
2000-04-24 20:51:30 +00:00
|
|
|
plugins/mpeg2/video/Makefile
|
2000-05-01 23:09:46 +00:00
|
|
|
plugins/mpeg2/mpeg2enc/Makefile
|
2000-11-04 18:54:07 +00:00
|
|
|
plugins/mpeg2/mpeg2dec/Makefile
|
2000-08-14 10:59:32 +00:00
|
|
|
plugins/mpeg2/subtitles/Makefile
|
2000-10-21 12:04:40 +00:00
|
|
|
plugins/mpeg2/videoparse/Makefile
|
|
|
|
plugins/mpeg2/mpegtypes/Makefile
|
2000-01-30 09:03:00 +00:00
|
|
|
plugins/mpeg1/Makefile
|
2000-10-08 22:17:11 +00:00
|
|
|
plugins/mpeg1/mpegtypes/Makefile
|
2000-02-07 19:04:33 +00:00
|
|
|
plugins/mpeg1/mpeg_play/Makefile
|
2000-06-16 22:30:24 +00:00
|
|
|
plugins/mpeg1/mpegaudio/Makefile
|
2000-01-30 09:03:00 +00:00
|
|
|
plugins/mpeg1/parse/Makefile
|
2000-06-11 12:11:41 +00:00
|
|
|
plugins/mpeg1/system_encode/Makefile
|
2000-05-21 21:58:20 +00:00
|
|
|
plugins/mpeg1/mpeg1encoder/Makefile
|
2000-04-13 21:59:38 +00:00
|
|
|
plugins/mpeg1video/Makefile
|
2000-02-08 22:36:20 +00:00
|
|
|
plugins/mpeg1video/parse/Makefile
|
2000-05-21 21:58:20 +00:00
|
|
|
plugins/filters/Makefile
|
|
|
|
plugins/filters/smooth/Makefile
|
|
|
|
plugins/filters/median/Makefile
|
2000-01-30 09:03:00 +00:00
|
|
|
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
|
2000-02-17 22:50:28 +00:00
|
|
|
plugins/videosink/Makefile
|
2000-05-12 17:33:35 +00:00
|
|
|
plugins/videoscale/Makefile
|
2000-05-28 19:59:46 +00:00
|
|
|
plugins/audioscale/Makefile
|
2000-01-30 09:03:00 +00:00
|
|
|
plugins/dvdsrc/Makefile
|
|
|
|
plugins/vcdsrc/Makefile
|
|
|
|
plugins/cobin/Makefile
|
RTjpeg plugin with several elements. It's currently a skeleton, doing no work at all. Need to have a video display ...
Original commit message from CVS:
RTjpeg plugin with several elements. It's currently a skeleton, doing no
work at all. Need to have a video display element, some kind of
simulation source (read from .ppm, a la what I do at work to solve the
exact same problem), raw video types, metadata structs, etc.
The RTjpeg.[ch] code is taken from a just-downloaded copy from Justin's
site, with some fixes (#include <asm/types.h> to get __u64,etc). Once the
aforementioned infrastructure is in place, the elements can actually be
set up to do the encode/decode, and we'll have our first functioning video
codec in place. ;-)
2000-01-31 03:02:52 +00:00
|
|
|
plugins/rtjpeg/Makefile
|
2000-09-14 20:31:03 +00:00
|
|
|
plugins/vorbis/Makefile
|
2000-02-25 23:18:51 +00:00
|
|
|
plugins/capture/Makefile
|
|
|
|
plugins/capture/v4l/Makefile
|
2000-12-12 06:49:26 +00:00
|
|
|
plugins/cdparanoia/Makefile
|
2000-06-25 21:38:00 +00:00
|
|
|
gstplay/Makefile
|
2000-11-11 15:13:50 +00:00
|
|
|
components/bonobo-gstmediaplay/Makefile
|
2000-01-30 09:03:00 +00:00
|
|
|
test/Makefile
|
|
|
|
test/xml/Makefile
|
|
|
|
test/bindings/Makefile
|
|
|
|
test/cothreads/Makefile
|
2000-08-19 00:29:57 +00:00
|
|
|
tests/Makefile
|
2000-01-30 09:03:00 +00:00
|
|
|
editor/Makefile
|
|
|
|
tools/Makefile
|
|
|
|
docs/Makefile
|
Re- set up the gtk-doc system. I'd managed to mutilate it a while back, but now it's fixed. I'll put a copy of the ...
Original commit message from CVS:
Re- set up the gtk-doc system. I'd managed to mutilate it a while back,
but now it's fixed. I'll put a copy of the HTML output somewhere on the
website tonight.
In order to actually generate the docs, you'll have to install all the
DocBook tools, as well as gtk-doc from GNOME cvs. (see
http://developer.gnome.org/arch/doc/tools.html)
Notes (I'll codify these some day):
- Don't believe the Gnome page, always edit the SOURCES when documenting a
given function, never the tmpl file.
- I'll be re-arranging things a lot, but gtk-doc is smart enough to merge
any changes to the tmpl file. However, gtk-doc's merge and CVS's diff are
two entirely separate animals. We should probably have a virtual mutex on
the entire docs/gst/ directory, over and above what CVS does.
- I'm going to try to end up with a book set (docbook terms), where
docs/gst/ is only one book. There'd be another called docs/manual/, and
another docs/plugins/, etc. If you have any comments as to how these
should be done, gstreamer-devel is the place.
2000-02-01 09:16:43 +00:00
|
|
|
docs/gst/Makefile
|
2000-05-12 07:15:03 +00:00
|
|
|
docs/gst/gstreamer.types
|
2000-10-25 19:09:53 +00:00
|
|
|
docs/libs/Makefile
|
|
|
|
docs/plugins/Makefile
|
|
|
|
docs/plugins/gstreamer-plugins.types
|
2000-10-09 00:34:21 +00:00
|
|
|
docs/manual/Makefile
|
|
|
|
docs/manual/images/Makefile
|
2000-01-31 09:43:08 +00:00
|
|
|
stamp.h
|
|
|
|
gstreamer-config
|
|
|
|
gstreamer.spec])
|
|
|
|
AC_OUTPUT_COMMANDS([chmod +x gstreamer-config])
|