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, 9, 6, 1,
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 - 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, 8, 0, 0)
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_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 *
fi
AC_SUBST(GST_HAVE_UNALIGNED_ACCESS_DEFINE)
-
dnl * software *
dnl check for large file support
AC_CHECK_HEADERS([ucontext.h])
AC_CHECK_HEADERS([sys/socket.h], HAVE_SYS_SOCKET_H=yes)
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 ***
[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
-AM_GNU_GETTEXT_VERSION(0.11.5)
-AM_GNU_GETTEXT([external])
-
-GETTEXT_PACKAGE=gstreamer-$GST_MAJORMINOR
-AC_SUBST(GETTEXT_PACKAGE)
-AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE], "$GETTEXT_PACKAGE",
- [gettext package name])
-
-dnl define LOCALEDIR in config.h
-AS_AC_EXPAND(LOCALEDIR, $datadir/locale)
-AC_DEFINE_UNQUOTED([LOCALEDIR], "$LOCALEDIR",
- [gettext locale dir])
-
-dnl define LIBDIR so we can inform people where we live
-AS_AC_EXPAND(LIBDIR, $libdir)
-AC_DEFINE_UNQUOTED([LIBDIR], "$LIBDIR",
- [library dir])
-
-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
- AC_DEFINE(GST_LEVEL_DEFAULT, GST_LEVEL_ERROR, [Default errorlevel to use])
-fi
-
-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
-AC_DEFINE(GST_LICENSE, "LGPL", [GStreamer license])
+GST_LICENSE="LGPL"
+AC_DEFINE_UNQUOTED(GST_LICENSE, "$GST_LICENSE", [GStreamer license])
+AC_SUBST(GST_LICENSE)
-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 define LIBDIR so we can inform people where we live
+AS_AC_EXPAND(LIBDIR, $libdir)
+AC_DEFINE_UNQUOTED(LIBDIR, "$LIBDIR", [library dir])
-dnl plugin directory configure-time variable for use in Makefile.am
-plugindir="\$(libdir)/gstreamer-$GST_MAJORMINOR"
-AC_SUBST(plugindir)
+dnl set location of plugin directory
+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/refcounting/Makefile
testsuite/states/Makefile
testsuite/threads/Makefile
-testsuite/trigger/Makefile
examples/Makefile
examples/controller/Makefile
examples/cutter/Makefile
docs/pwg/Makefile
docs/xsl/Makefile
docs/version.entities
+win32/common/config.h
pkgconfig/Makefile
stamp.h
pkgconfig/gstreamer.pc
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