dnl when going to/from release please set the nano (fourth number) right !
dnl releases only do Wall, cvs and prerelease does Werror too
-AS_VERSION(gstreamer, GST_VERSION, 0, 9, 3, 1,
+AS_VERSION(gstreamer, GST_VERSION, 0, 10, 2, 0,
GST_CVS="no", GST_CVS="yes")
dnl can autoconf find the source ?
dnl AM_MAINTAINER_MODE only provides the option to configure to enable it
AM_MAINTAINER_MODE
+dnl sets host_* variables
+AC_CANONICAL_HOST
+
dnl initialize automake
dnl FIXME: this is deprecated use, we should move PACKAGE and VERSION to
dnl AC_INIT, but then we need to parse the version to pass to AS_VERSION
dnl our libraries and install dirs use major.minor as a version
GST_MAJORMINOR=$GST_VERSION_MAJOR.$GST_VERSION_MINOR
dnl we override it here for release candidates for a new series
-# GST_MAJORMINOR=0.9
+GST_MAJORMINOR=0.10
AC_SUBST(GST_MAJORMINOR)
dnl CURRENT, REVISION, AGE
dnl - interfaces added/removed/changed -> increment CURRENT, REVISION = 0
dnl - interfaces added -> increment AGE
dnl - interfaces removed -> AGE = 0
-AS_LIBTOOL(GST, 7, 0, 0)
+dnl sets GST_LT_LDFLAGS
+AS_LIBTOOL(GST, 2, 0, 2)
AS_LIBTOOL_TAGS
AM_PROG_LIBTOOL
dnl Add parameters for aclocal
AC_SUBST(ACLOCAL_AMFLAGS, "-I common/m4")
+dnl set up gettext
+dnl the version check needs to stay here because autopoint greps for it
+AM_GNU_GETTEXT_VERSION([0.11.5])
+AM_GNU_GETTEXT([external])
+GST_GETTEXT([gstreamer-$GST_MAJORMINOR])
+
dnl *** check for arguments to configure ***
dnl subsystems - can influence other decisions so needs to be high up
AM_CONDITIONAL(GST_DISABLE_GST_DEBUG, test "x$GST_GST_DISABLE_DEBUG" = "xyes")
GST_CHECK_SUBSYSTEM_DISABLE(LOADSAVE,[pipeline XML load/save])
AM_CONDITIONAL(GST_DISABLE_LOADSAVE, test "x$GST_DISABLE_LOADSAVE" = "xyes")
+dnl define a substitution to use in docs/gst/gstreamer.types
+if test "x$GST_DISABLE_LOADSAVE" = "xyes"
+then
+ GST_LOADSAVE_DOC_TYPES="%"
+else
+ GST_LOADSAVE_DOC_TYPES=
+fi
+AC_SUBST(GST_LOADSAVE_DOC_TYPES)
GST_CHECK_SUBSYSTEM_DISABLE(PARSE,[command-line parser])
AM_CONDITIONAL(GST_DISABLE_PARSE, test "x$GST_DISABLE_PARSE" = "xyes")
GST_CHECK_SUBSYSTEM_DISABLE(TRACE,[tracing subsystem])
AM_CONDITIONAL(GST_DISABLE_ALLOC_TRACE, test "x$GST_DISABLE_ALLOC_TRACE" = "xyes")
GST_CHECK_SUBSYSTEM_DISABLE(REGISTRY,[plugin registry])
AM_CONDITIONAL(GST_DISABLE_REGISTRY, test "x$GST_DISABLE_REGISTRY" = "xyes")
+dnl define a substitution to use in docs/gst/gstreamer.types
+if test "x$GST_DISABLE_REGISTRY" = "xyes"
+then
+ GST_REGISTRY_DOC_TYPES="%"
+else
+ GST_REGISTRY_DOC_TYPES=
+fi
+AC_SUBST(GST_REGISTRY_DOC_TYPES)
GST_CHECK_SUBSYSTEM_DISABLE(ENUMTYPES,[enum types])
AM_CONDITIONAL(GST_DISABLE_ENUMTYPES, test "x$GST_DISABLE_ENUMTYPES" = "xyes")
GST_CHECK_SUBSYSTEM_DISABLE(INDEX,[index])
AM_CONDITIONAL(GST_DISABLE_INDEX, test "x$GST_DISABLE_INDEX" = "xyes")
+GST_CHECK_SUBSYSTEM_DISABLE(NET,[network distribution])
+AM_CONDITIONAL(GST_DISABLE_NET, test "x$GST_DISABLE_NET" = "xyes")
GST_CHECK_SUBSYSTEM_DISABLE(PLUGIN,[plugin])
AM_CONDITIONAL(GST_DISABLE_PLUGIN, test "x$GST_DISABLE_PLUGIN" = "xyes")
GST_CHECK_SUBSYSTEM_DISABLE(URI,[uri handlers])
GST_ARG_VALGRIND
GST_ARG_GCOV
+GST_ARG_EXAMPLES
+
GST_ARG_WITH_PKG_CONFIG_PATH
GST_ARG_WITH_PACKAGE_NAME([GStreamer])
GST_ARG_WITH_PACKAGE_ORIGIN
AC_MSG_WARN([Sissy ! By asking to not build the tests known to fail, you hereby waive your right to customer support. If you do not agree with this EULA, please press Ctrl-C before the next line is printed. By allowing the next line to be printed, you expressly acknowledge your acceptance of this EULA.])
fi
-AC_ARG_ENABLE(examples,
- AC_HELP_STRING([--disable-examples], [disable building examples]),
- [
- case "${enableval}" in
- yes) BUILD_EXAMPLES=yes ;;
- no) BUILD_EXAMPLES=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for --disable-examples) ;;
- esac
- ],
- [BUILD_EXAMPLES=yes]) dnl Default value
-AM_CONDITIONAL(BUILD_EXAMPLES, test "x$BUILD_EXAMPLES" = "xyes")
-
dnl poison destroyed objects
AC_ARG_ENABLE(poisoning,
AC_HELP_STRING([--enable-poisoning],
[Define if we should poison deallocated memory])
fi
-dnl *** platform checks ***
+dnl *** checks for platform ***
dnl * hardware/architecture *
dnl common/m4/gst-arch.m4
dnl check CPU type
GST_ARCH
+dnl substitution for win32/common/config.h
+HOST_CPU=$host_cpu
+AC_SUBST(HOST_CPU)
dnl common/m4/gst-arch.m4
dnl check for unaligned access
fi
AC_SUBST(GST_HAVE_UNALIGNED_ACCESS_DEFINE)
-
dnl * software *
dnl check for large file support
dnl check for documentation tools
GST_DOCBOOK_CHECK
GTK_DOC_CHECK([1.3])
+AS_PATH_PYTHON([2.1])
dnl *** checks for libraries ***
AM_CONDITIONAL(HAVE_SYS_SOCKET_H, test "x$HAVE_SYS_SOCKET_H" = "xyes")
AC_CHECK_HEADERS([process.h])
+dnl *** checks for types/defines ***
+
+dnl *** checks for structures ***
+
+dnl *** checks for compiler characteristics ***
+
+dnl make sure we can use "inline" from C code
+AC_C_INLINE
+
+OPT_CFLAGS=
+dnl Check for some compiler flags that optimize our code.
+if test "x$GCC" = xyes; then
+ AS_COMPILER_FLAG(-fno-common, OPT_CFLAGS="$OPT_CFLAGS -fno-common")
+fi
+
+dnl FIXME: decide what kind of flag this is, maybe it's not an optimization
+dnl flag
+dnl check if we should use -Wa,-mregnames on PowerPC, so we can use
+dnl symbolic register names in inline asm
+if test x$HAVE_CPU_PPC = xyes ; then
+ AS_COMPILER_FLAG(["-Wa,-mregnames"],
+ [OPT_CFLAGS="$OPT_CFLAGS -Wa,-mregnames"])
+fi
+
dnl *** checks for library functions ***
AC_CHECK_FUNCS([sigaction])
AC_FUNC_MMAP
AM_CONDITIONAL(HAVE_MMAP, test "x$ac_cv_func_mmap_fixed_mapped" = "xyes")
-dnl common/m4/gst-mcsc.m4
-dnl check for makecontext and define HAVE_MAKECONTEXT if we have it
-AC_CHECK_MCSC
-if test "$ac_cv_check_mcsc" = "yes"; then
- AC_DEFINE_UNQUOTED(HAVE_MAKECONTEXT, 1,
- [defined if we have makecontext ()])
-fi
-
dnl Check for a way to display the function name in debug output
GST_CHECK_FUNCTION
[Defined if we have dladdr ()]))
CFLAGS="$save_cflags"
-dnl *** checks for compiler characteristics ***
-
-dnl make sure we can use "inline" from C code
-AC_C_INLINE
-
-dnl *** TODO: decide where to put ***
-
-dnl set up gettext
-GST_GETTEXT([gstreamer-$GST_MAJORMINOR])
-
-dnl define an ERROR_CFLAGS Makefile variable
-GST_SET_ERROR_CFLAGS($GST_CVS)
-
-dnl define correct errorlevel for debugging messages. We want to have GST_ERROR
-dnl messages printed when running cvs builds
-if test "x$GST_CVS" = "xyes"; then
- GST_LEVEL_DEFAULT=GST_LEVEL_ERROR
-else
- GST_LEVEL_DEFAULT=GST_LEVEL_NONE
-fi
-AC_DEFINE_UNQUOTED(GST_LEVEL_DEFAULT, $GST_LEVEL_DEFAULT,
- [Default errorlevel to use])
-AC_SUBST(GST_LEVEL_DEFAULT)
-
-dnl *** checks for dependency libraries ***
+dnl *** checks for dependancy libraries ***
dnl GLib
-dnl Minimum required version of GLib
-GLIB_REQ="2.6"
-AC_SUBST(GLIB_REQ)
-
-dnl Check for glib2 with sugar on top
-PKG_CHECK_MODULES(GLIB,
- glib-2.0 >= $GLIB_REQ gobject-2.0 gthread-2.0 gmodule-2.0,
- HAVE_GLIB=yes,
- HAVE_GLIB=no)
-
-if test "x$HAVE_GLIB" = "xno"; then
- AC_MSG_ERROR([GStreamer requires GLib >= $GLIB_REQ to compile.])
-fi
-
-dnl for the poor souls who for example have glib in /usr/local
-AS_SCRUB_INCLUDE(GLIB_CFLAGS)
+GST_GLIB_CHECK([2.6])
dnl GLib 2.8 has some bug fixes that we like, so make sure our code knows
AC_MSG_CHECKING([glib version >= 2.8])
HAVE_CHECK=no)
AM_CONDITIONAL(HAVE_CHECK, test "x$HAVE_CHECK" = "xyes")
-OPT_CFLAGS=
-dnl Check for some compiler flags that optimize our code.
-if test "x$GCC" = xyes; then
- AS_COMPILER_FLAG(-fno-common, OPT_CFLAGS="$OPT_CFLAGS -fno-common")
-fi
-
-dnl FIXME: decide what kind of flag this is, maybe it's not an optimization
-dnl flag
-dnl check if we should use -Wa,-mregnames on PowerPC, so we can use
-dnl symbolic register names in inline asm
-if test x$HAVE_CPU_PPC = xyes ; then
- AS_COMPILER_FLAG(["-Wa,-mregnames"],
- [OPT_CFLAGS="$OPT_CFLAGS -Wa,-mregnames"])
-fi
-
-dnl *** FIXME: name this part
+dnl *** set variables based on configure arguments
dnl set license and copyright notice
GST_LICENSE="LGPL"
AC_DEFINE_UNQUOTED(LIBDIR, "$LIBDIR", [library dir])
dnl set location of plugin directory
-AS_AC_EXPAND(PLUGINS_DIR, ${libdir}/gstreamer-$GST_MAJORMINOR)
-AC_DEFINE_UNQUOTED(PLUGINS_DIR, "$PLUGINS_DIR", [Define the plugin directory])
-AC_SUBST(PLUGINS_DIR)
-AC_MSG_NOTICE([Using $PLUGINS_DIR as the plugin install location])
-
-dnl plugin directory configure-time variable for use in Makefile.am
-plugindir="\$(libdir)/gstreamer-$GST_MAJORMINOR"
-AC_SUBST(plugindir)
+GST_SET_PLUGINDIR
dnl FIXME: add LIBXML_PKG here
GST_PKG_DEPS="glib-2.0, gobject-2.0, gmodule-2.0, gthread-2.0"
AC_SUBST(GST_PKG_DEPS)
+dnl define an ERROR_CFLAGS Makefile variable
+GST_SET_ERROR_CFLAGS($GST_CVS)
+
+dnl define correct level for debugging messages
+GST_SET_LEVEL_DEFAULT($GST_CVS)
+
dnl *** finalize CFLAGS, LDFLAGS, LIBS
dnl Overview:
-dnl GST_OPTION_CFLAGS: common flags for profiling, debugging, errors, ...
-dnl GST_ALL_*: flags shared by all built objects
-dnl GST_OBJ_*: additional flags to link to the core library
+dnl GST_OPTION_CFLAGS: common cflags for profiling, debugging, errors, ...
+dnl GST_ALL_*: vars shared by all built objects
+dnl GST_LIB_LDFLAGS: additional linker flags for all libaries
+dnl GST_OBJ_*: additional vars to link to the core library
dnl include GST_ALL_*
dnl GST_LT_LDFLAGS: library versioning of our libraries
dnl GST_PLUGIN_LDFLAGS: flags to be used for all plugins
dnl - src and build dirs need to be added because every piece that gets built
dnl will need the GStreamer source and generated headers
dnl LIBS: XML doesn't need to be added because we don't explicitly use symbols
-dnl from LibXML
+dnl from LibXML except for in the core library
GST_ALL_CFLAGS="-I\$(top_srcdir)/libs -I\$(top_srcdir) -I\$(top_builddir) $GLIB_CFLAGS $XML_CFLAGS \$(GST_OPTION_CFLAGS)"
dnl FIXME: check if LTLIBINTL is needed everywhere
dnl I presume it is given that it contains the symbols that _() stuff maps to
GST_ALL_LIBS="$GLIB_LIBS $LTLIBINTL"
-dnl LDFLAGS modifier defining exported symbols from built shared objects
-EXPORT_LDFLAGS="-export-symbols-regex [_]*\(gst_\|Gst\|GST_\).*"
-GST_ALL_LDFLAGS="$EXPORT_LDFLAGS -no-undefined"
+dnl LDFLAGS really should only contain flags, not libs - they get added before
+dnl whatevertarget_LIBS and -L flags here affect the rest of the linking
+GST_ALL_LDFLAGS="-no-undefined"
+
AC_SUBST(GST_ALL_CFLAGS)
AC_SUBST(GST_ALL_LIBS)
AC_SUBST(GST_ALL_LDFLAGS)
+dnl GST_LIB_LDFLAGS
+dnl linker flags shared by all libraries
+dnl LDFLAGS modifier defining exported symbols from built libraries
+GST_LIB_LDFLAGS="-export-symbols-regex [_]*\(gst_\|Gst\|GST_\).*"
+AC_SUBST(GST_LIB_LDFLAGS)
+
dnl GST_OBJ_*
dnl default vars for all internal objects built on libgstreamer
+dnl includes GST_ALL_*
GST_OBJ_CFLAGS="\$(GST_ALL_CFLAGS)"
GST_OBJ_LIBS="\$(top_builddir)/gst/libgstreamer-$GST_MAJORMINOR.la \$(GST_ALL_LIBS)"
-GST_OBJ_LDFLAGS="$GST_LT_LDFLAGS $GST_ALL_LDFLAGS"
AC_SUBST(GST_OBJ_CFLAGS)
AC_SUBST(GST_OBJ_LIBS)
-AC_SUBST(GST_OBJ_LDFLAGS)
dnl GST_PLUGIN_LDFLAGS
-dnl LDFLAGS for plugins; include GST_ALL_LDFLAGS
-GST_PLUGIN_LDFLAGS="-module -avoid-version $GST_ALL_LDFLAGS"
+dnl LDFLAGS for plugins; includes GST_ALL_LDFLAGS
+GST_PLUGIN_LDFLAGS="-module -avoid-version -export-symbols-regex '^[_]*gst_plugin_desc\$\$' $GST_ALL_LDFLAGS"
AC_SUBST(GST_PLUGIN_LDFLAGS, "$GST_PLUGIN_LDFLAGS")
dnl ##################################################
HAVE_LIBGNOMEUI="yes", HAVE_LIBGNOMEUI="no")
AM_CONDITIONAL(HAVE_LIBGNOMEUI, test "x$HAVE_LIBGNOMEUI" = "xyes")
-dnl ##################################################
-dnl # Prepare informative messages to display at end #
-dnl ##################################################
-
-infomessages=
-
-dnl *** output files ***
-
-dnl libs/ext/Makefile
-dnl nothing there yet !
AC_CONFIG_FILES(
Makefile
gst/Makefile
gst/gstconfig.h
gst/gstversion.h
-gst/base/Makefile
-gst/check/Makefile
-gst/indexers/Makefile
-gst/elements/Makefile
gst/parse/Makefile
libs/Makefile
libs/gst/Makefile
+libs/gst/base/Makefile
+libs/gst/check/Makefile
libs/gst/controller/Makefile
libs/gst/dataprotocol/Makefile
+libs/gst/net/Makefile
+plugins/Makefile
+plugins/indexers/Makefile
+plugins/elements/Makefile
po/Makefile.in
-check/Makefile
tests/Makefile
-tests/instantiate/Makefile
-tests/muxing/Makefile
-tests/seeking/Makefile
-tests/sched/Makefile
-tests/threadstate/Makefile
-testsuite/Makefile
-testsuite/caps/Makefile
-testsuite/debug/Makefile
-testsuite/dlopen/Makefile
-testsuite/elements/Makefile
-testsuite/indexers/Makefile
-testsuite/parse/Makefile
-testsuite/plugin/Makefile
-testsuite/refcounting/Makefile
-testsuite/states/Makefile
-testsuite/threads/Makefile
-testsuite/trigger/Makefile
-examples/Makefile
-examples/controller/Makefile
-examples/cutter/Makefile
-examples/helloworld/Makefile
-examples/launch/Makefile
-examples/manual/Makefile
-examples/mixer/Makefile
-examples/metadata/Makefile
-examples/pingpong/Makefile
-examples/plugins/Makefile
-examples/pwg/Makefile
-examples/queue/Makefile
-examples/retag/Makefile
-examples/thread/Makefile
-examples/typefind/Makefile
-examples/xml/Makefile
+tests/benchmarks/Makefile
+tests/check/Makefile
+tests/misc/Makefile
+tests/examples/Makefile
+tests/examples/controller/Makefile
+tests/examples/helloworld/Makefile
+tests/examples/launch/Makefile
+tests/examples/metadata/Makefile
+tests/examples/queue/Makefile
+tests/examples/typefind/Makefile
+tests/examples/xml/Makefile
tools/Makefile
common/Makefile
common/m4/Makefile
docs/Makefile
docs/faq/Makefile
docs/gst/Makefile
+docs/gst/gstreamer.types
docs/libs/Makefile
+docs/plugins/Makefile
docs/manual/Makefile
docs/pwg/Makefile
docs/xsl/Makefile
pkgconfig/gstreamer-controller-uninstalled.pc
pkgconfig/gstreamer-dataprotocol.pc
pkgconfig/gstreamer-dataprotocol-uninstalled.pc
+pkgconfig/gstreamer-net.pc
+pkgconfig/gstreamer-net-uninstalled.pc
gstreamer.spec
)
-AC_CONFIG_COMMANDS(echo "$infomessages", infomessages="$infomessages")
+
AC_OUTPUT