AC_PREREQ(2.52) AC_INIT AC_CANONICAL_TARGET 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, 2, 1, GST_CVS="no", GST_CVS="yes") dnl AM_MAINTAINER_MODE only provides the option to configure to enable it AM_MAINTAINER_MODE AM_INIT_AUTOMAKE($PACKAGE,$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 AC_SUBST(GST_MAJORMINOR) AC_PROG_CC dnl For interactive UNIX (a Sun thing) AC_ISC_POSIX dnl CURRENT, REVISION, AGE dnl - library source changed -> increment REVISION dnl - interfaces added/removed/changed -> increment CURRENT, REVISION = 0 dnl - interfaces added -> increment AGE dnl - interfaces removed -> AGE = 0 AS_LIBTOOL(GST, 6, 0, 0) AS_LIBTOOL_TAGS([]) AM_PROG_LIBTOOL AC_CONFIG_SRCDIR([gst/gst.c]) AM_CONFIG_HEADER(config.h) dnl Add parameters for aclocal AC_SUBST(ACLOCAL_AMFLAGS, "-I common/m4 -I .") AM_PROG_CC_STDC AM_PROG_AS AS="${CC}" dnl the gettext stuff needed 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]) GST_SET_ERROR_CFLAGS($GST_CVS) dnl We disable static building for development, for time savings dnl *NOTE*: dnl this line before release, so release does static too dnl AM_DISABLE_STATIC AC_HEADER_STDC([]) AC_C_INLINE 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 subsystems - can influence other decisions so needs to be high up dnl we need to do AM_CONDITIONAL them here for automake 1.6.x compatibility GST_CHECK_SUBSYSTEM_DISABLE(GST_DEBUG,[debugging subsystem]) AM_CONDITIONAL(GST_DISABLE_GST_DEBUG, test "x$GST_DISABLE_GST_DEBUG" = "xyes") GST_CHECK_SUBSYSTEM_DISABLE(LOADSAVE,[pipeline XML load/save]) AM_CONDITIONAL(GST_DISABLE_LOADSAVE, test "x$GST_DISABLE_LOADSAVE" = "xyes") 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_TRACE, test "x$GST_DISABLE_TRACE" = "xyes") GST_CHECK_SUBSYSTEM_DISABLE(ALLOC_TRACE,[allocation tracing]) 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") 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(PLUGIN,[plugin]) AM_CONDITIONAL(GST_DISABLE_PLUGIN, test "x$GST_DISABLE_PLUGIN" = "xyes") GST_CHECK_SUBSYSTEM_DISABLE(URI,[uri handlers]) AM_CONDITIONAL(GST_DISABLE_URI, test "x$GST_DISABLE_URI" = "xyes") dnl ############################## dnl # Do automated configuration # dnl ############################## dnl Check for tools: dnl ================ dnl allow for different autotools AS_AUTOTOOLS_ALTERNATE() dnl modify pkg-config path AC_ARG_WITH(pkg-config-path, AC_HELP_STRING([--with-pkg-config-path], [colon-separated list of pkg-config(1) dirs]), [export PKG_CONFIG_PATH=${withval}]) GST_ARCH() dnl ### Documentation checks dnl Perl is used in building documentation AC_PATH_PROG(PERL_PATH, perl, no) if test x$PERL_PATH = xno; then AC_MSG_ERROR(Could not find perl) fi GST_DOCBOOK_CHECK GTK_DOC_CHECK([1.3]) AC_PROG_AWK dnl we require bison for building the parser dnl FIXME: check if AC_PROG_YACC is suitable here AC_PATH_PROG(BISON_PATH, bison, no) if test x$BISON_PATH = xno; then AC_MSG_ERROR(Could not find bison) fi dnl check bison version AC_MSG_CHECKING([bison version]) if $BISON_PATH --version | head -n 1 | $AWK '{ if ($4 < 1.35) exit 1; else exit 0;}'; then AC_MSG_RESULT([ok]) else AC_MSG_RESULT([too old.]) AC_MSG_ERROR([Your bison version is too old, v1.35 or later is required.]) fi dnl we require flex for building the parser dnl FIXME: check if AC_PROG_LEX is suitable here AC_PATH_PROG(FLEX_PATH, flex, no) if test x$FLEX_PATH = xno; then AC_MSG_ERROR(Could not find flex) fi dnl check for large file support (affected dnl plugins must include config.h for this) AC_SYS_LARGEFILE dnl check for mmap AC_FUNC_MMAP() 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, $HAVE_MAKECONTEXT, [defined if we have makecontext ()]) fi dnl Check for a way to display the function name in debug output GST_CHECK_FUNCTION() 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"], [GST_INT_CFLAGS="$GST_INT_CFLAGS -Wa,-mregnames"], true) fi AC_ARG_ENABLE(gcov, AC_HELP_STRING([--enable-gcov],[compile with coverage profiling instrumentation (gcc only)]), enable_gcov=$enableval,enable_gcov=no) if test x$enable_gcov = xyes ; then AS_COMPILER_FLAG(["-fprofile-arcs"], [GST_INT_CFLAGS="$GST_INT_CFLAGS -fprofile-arcs"], true) AS_COMPILER_FLAG(["-ftest-coverage"], [GST_INT_CFLAGS="$GST_INT_CFLAGS -ftest-coverage"], true) GST_INT_CFLAGS=`echo "$GST_INT_CFLAGS" | sed -e 's/-O[0-9]*//g'` AC_DEFINE_UNQUOTED(GST_GCOV_ENABLED, 1, [Defined if gcov is enabled to force a rebuild due to config.h changing]) fi AM_CONDITIONAL(GST_GCOV_ENABLED, test x$enable_gcov = xyes) dnl Check for some compiler flags that optimize our code. if test "x$GCC" = xyes; then AS_COMPILER_FLAG(-fno-common,GST_INT_CFLAGS="$GST_INT_CFLAGS -fno-common",) fi dnl HAVE_WIN32 currently means "disable POSIXisms". case "$host" in *-*-mingw*) AC_DEFINE_UNQUOTED(HAVE_WIN32, 1, [Defined if compiling for Windows]) ;; *) ;; esac GST_UNALIGNED_ACCESS() if test x${as_cv_unaligned_access} = xyes ; then GST_HAVE_UNALIGNED_ACCESS_DEFINE="#define GST_HAVE_UNALIGNED_ACCESS 1" else GST_HAVE_UNALIGNED_ACCESS_DEFINE="#define GST_HAVE_UNALIGNED_ACCESS 0" fi AC_SUBST(GST_HAVE_UNALIGNED_ACCESS_DEFINE) dnl Check for essential libraries first: dnl ==================================== dnl === GLib 2 === dnl Minimum required version of GLib2 dnl required for compilation without warnings GLIB2_REQ="2.4" AC_SUBST(GLIB2_REQ) dnl Check for glib2 with sugar on top PKG_CHECK_MODULES(GLIB2, glib-2.0 >= $GLIB2_REQ gobject-2.0 gthread-2.0 gmodule-2.0,HAVE_GLIB2=yes,HAVE_GLIB2=no) dnl for the poor souls who for example have glib in /usr/local AS_SCRUB_INCLUDE(GLIB2_CFLAGS) GLIB_LIBS=$GLIB2_LIBS GLIB_CFLAGS=$GLIB2_CFLAGS AC_SUBST(GLIB_LIBS) AC_SUBST(GLIB_CFLAGS) AC_MSG_CHECKING([glib version >= 2.8]) if pkg-config --atleast-version=2.8 glib-2.0; then AC_MSG_RESULT(yes) GST_HAVE_GLIB_2_8_DEFINE="#define GST_HAVE_GLIB_2_8 1" else AC_MSG_RESULT(no) GST_HAVE_GLIB_2_8_DEFINE="/* #undef GST_HAVE_GLIB_2_8 */" fi AC_SUBST(GST_HAVE_GLIB_2_8_DEFINE) if test "x$HAVE_GLIB2" = "xno"; then AC_MSG_ERROR([GStreamer requires GLib $GLIB2_REQ to compile.]) fi dnl Check for glib2 without extra fat, useful for the unversioned tool frontends PKG_CHECK_MODULES(GLIB_ONLY, glib-2.0 >= $GLIB2_REQ) AC_SUBST(GLIB_ONLY_CFLAGS) AC_SUBST(GLIB_ONLY_LIBS) dnl === libxml 2 === if test "x$GST_DISABLE_LOADSAVE" = "xyes" && test "x$GST_DISABLE_REGISTRY" = "xyes" then AC_MSG_NOTICE([Registry and load/save are disabled, not checking for libxml2]) else dnl check for libxml2 with minimum req version GST_LIBXML2_CHECK(2.4.9) fi dnl popt checks dnl FIXME: This test passes on popt 1.6.2, maybe earlier, but popt 1.6.2 dnl causes segfaults on gst_init. Write a working test if possible. GST_CHECK_LIBHEADER(POPT, popt, poptStrippedArgv,, popt.h, POPT_LIBS="-lpopt", AC_MSG_ERROR([popt 1.6.3 or newer is required to build gstreamer. You can download the latest version from ftp://ftp.rpm.org/pub/rpm/dist/]) ) AC_MSG_NOTICE(Checking for POPT_TABLEEND) AC_COMPILE_IFELSE([ #include int main () { #ifndef POPT_TABLEEND #error #else return 0; #endif } ],, [ dnl it failed AC_MSG_ERROR([popt 1.6.3 or newer is required to build gstreamer. You can download the latest version from ftp://ftp.rpm.org/pub/rpm/dist/]) ]) AC_SUBST(POPT_CFLAGS) AC_SUBST(POPT_LIBS) dnl Check for ucontext.h AC_CHECK_HEADER(ucontext.h, AC_DEFINE(HAVE_UCONTEXT_H, 1, [defined if we have ucontext.h])) dnl check for "check", unit testing library/header AM_PATH_CHECK(0.9.2, [ HAVE_CHECK=yes AC_MSG_NOTICE(CHECK_CFLAGS: $CHECK_CFLAGS) AC_MSG_NOTICE(CHECK_LIBS: $CHECK_LIBS) ], HAVE_CHECK=no) AM_CONDITIONAL(HAVE_CHECK, test "x$HAVE_CHECK" = "xyes") dnl ###################################################################### dnl # Check command line parameters, and set shell variables accordingly # dnl ###################################################################### dnl FIXME: simplify all this down using a few m4 macros AC_ARG_ENABLE(fast-stack-trash, AC_HELP_STRING([--enable-fast-stack-trash],[use fast memory allocator (i586 or above)]), [case "${enableval}" in yes) USE_FAST_STACK_TRASH=yes;; noset) USE_FAST_STACK_TRASH=no;; no) USE_FAST_STACK_TRASH=no;; *) AC_MSG_ERROR(bad value ${enableval} for --enable-atomic) ;; esac], [USE_FAST_STACK_TRASH=yes]) dnl Default value AC_ARG_ENABLE(plugin-builddir, AC_HELP_STRING([--enable-plugin-builddir],[allow tests/demos to use non-installed plugins]), [case "${enableval}" in yes) PLUGINS_USE_BUILDDIR=yes ;; no) PLUGINS_USE_BUILDDIR=no ;; *) AC_MSG_ERROR(bad value ${enableval} for --enable-plugin-builddir) ;; esac], [PLUGINS_USE_BUILDDIR=no]) dnl Default value AC_ARG_ENABLE(profiling, AC_HELP_STRING([--enable-profiling],[adds -pg to compiler commandline, for profiling]), [case "${enableval}" in yes) USE_PROFILING=yes ;; no) USE_PROFILING=no ;; *) AC_MSG_ERROR(bad value ${enableval} for --enable-profiling) ;; esac], [USE_PROFILING=no]) dnl Default value dnl use a cache dir for storing element registry info. dnl default to building registry in the source tree if we are enabling plugin build dir if test "x$PLUGINS_USE_BUILDDIR" = "xyes"; then GST_CACHE_DIR=`pwd` else dnl ${localstatedir} points to PREFIX/var GST_CACHE_DIR=${localstatedir}/cache/gstreamer-$GST_MAJORMINOR fi AC_ARG_WITH(cachedir, AC_HELP_STRING([--with-cachedir],[specify path to use for plugin and command completion registries]), [case "${withval}" in yes) AC_MSG_ERROR(bad value ${withval} for --with-cachedir) ;; no) AC_MSG_ERROR(bad value ${withval} for --with-cachedir) ;; *) GST_CACHE_DIR="${withval}" ;; esac], [:]) dnl Default value AS_AC_EXPAND(GST_CACHE_DIR, $GST_CACHE_DIR) AC_DEFINE_UNQUOTED(GST_CACHE_DIR, "$GST_CACHE_DIR", [Location of registry]) AC_MSG_NOTICE(Using $GST_CACHE_DIR as registry cache dir) dnl building of tests AC_ARG_ENABLE(tests, AC_HELP_STRING([--disable-tests],[disable building test apps]), [case "${enableval}" in yes) BUILD_TESTS=yes ;; no) BUILD_TESTS=no ;; *) AC_MSG_ERROR(bad value ${enableval} for --disable-tests) ;; esac], [BUILD_TESTS=yes]) dnl Default value AM_CONDITIONAL(BUILD_TESTS, test "x$BUILD_TESTS" = "xyes") dnl tests known to fail AC_ARG_ENABLE(failing-tests, AC_HELP_STRING([--disable-failing-tests],[disable building tests known to fail]), [case "${enableval}" in yes) BUILD_FAILING_TESTS=yes ;; no) BUILD_FAILING_TESTS=no ;; *) AC_MSG_ERROR(bad value ${enableval} for --disable-failing-tests) ;; esac], [BUILD_FAILING_TESTS=no]) dnl Default value AM_CONDITIONAL(BUILD_FAILING_TESTS, test "x$BUILD_FAILING_TESTS" = "xyes") if test x$BUILD_FAILING_TESTS = xyes; then AC_MSG_WARN([building tests known to fail, use --disable-failing-tests to disable]) else 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],[enable poisoning of deallocated objects]), [case "${enableval}" in yes) USE_POISONING=yes ;; no) USE_POISONING=no ;; *) AC_MSG_ERROR(bad value ${enableval} for --enable-poisoning) ;; esac], [USE_POISONING=no]) dnl Default value dnl Next, check for the optional components: dnl ======================================== dnl debugging stuff AC_ARG_ENABLE(debug, AC_HELP_STRING([--disable-debug],[disable addition of -g debugging info]), [case "${enableval}" in yes) USE_DEBUG=yes ;; no) USE_DEBUG=no ;; *) AC_MSG_ERROR(bad value ${enableval} for --enable-debug) ;; esac], [USE_DEBUG=yes]) dnl Default value dnl valgrind inclusion AC_ARG_ENABLE(valgrind, AC_HELP_STRING([--disable-valgrind],[disable run-time valgrind detection]), [case "${enableval}" in yes) USE_VALGRIND="$USE_DEBUG" ;; no) USE_VALGRIND=no ;; *) AC_MSG_ERROR(bad value ${enableval} for --enable-valgrind) ;; esac], [USE_VALGRIND="$USE_DEBUG"]) dnl Default value VALGRIND_REQ="2.1" if test "x$USE_VALGRIND" = xyes; then PKG_CHECK_MODULES(VALGRIND, valgrind > $VALGRIND_REQ, USE_VALGRIND="yes", USE_VALGRIND="no") fi if test "x$USE_VALGRIND" = xyes; then AC_DEFINE(HAVE_VALGRIND, 1, [Define if valgrind should be used]) AC_MSG_NOTICE(Using extra code paths for valgrind) fi AC_SUBST(VALGRIND_CFLAGS) AC_SUBST(VALGRIND_LIBS) AC_PATH_PROG(VALGRIND_PATH, valgrind, no) AM_CONDITIONAL(HAVE_VALGRIND, test ! "x$VALGRIND_PATH" = "xno") 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_FAST_STACK_TRASH" = xyes; then AC_DEFINE(USE_FAST_STACK_TRASH, 1, [Define if we should use i586 optimized stack functions]) fi if test "x$USE_POISONING" = xyes; then AC_DEFINE(USE_POISONING, 1, [Define if we should poison deallocated memory]) fi dnl test for sigaction() AC_CHECK_FUNC(sigaction, AC_DEFINE(HAVE_SIGACTION, 1, [Defined if we have sigaction ()])) dnl test for register_printf_function AC_CHECK_FUNC(register_printf_function, [ GST_PRINTF_EXTENSION_FORMAT_DEFINE="#define GST_PTR_FORMAT \"P\"" AC_DEFINE(HAVE_PRINTF_EXTENSION, 1, [Defined if we have register_printf_function ()]) ], GST_PRINTF_EXTENSION_FORMAT_DEFINE="#define GST_PTR_FORMAT \"p\"" ) AC_SUBST(GST_PRINTF_EXTENSION_FORMAT_DEFINE) dnl test if we have dladdr(); we use it for debugging save_cflags="$CFLAGS" CFLAGS="$CFLAGS -D_GNU_SOURCE" AC_CHECK_LIB(dl, dladdr, AC_DEFINE(HAVE_DLADDR, 1, [Defined if we have dladdr ()])) CFLAGS="$save_cflags" if test "x$PLUGINS_USE_BUILDDIR" = xyes; then AC_DEFINE(PLUGINS_USE_BUILDDIR, 1, [Define if plugins should be loaded from the build tree - only developers should use this]) fi if test "x$USE_DEBUG" = xyes; then GST_INT_CFLAGS="$GST_INT_CFLAGS -g" 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(EXPERIMENTAL, test "x$EXPERIMENTAL" = "yes") AM_CONDITIONAL(BROKEN, test "x$BROKEN" = "yes") AM_CONDITIONAL(PLUGINS_USE_BUILDDIR, test "x$PLUGINS_USE_BUILDDIR" = "xyes") dnl ############################ dnl # Set up some more defines # dnl ############################ dnl set license and copyright notice AC_DEFINE(GST_LICENSE, "LGPL", [GStreamer license]) dnl package name in plugins AC_ARG_WITH(package-name, AC_HELP_STRING([--with-package-name],[specify package name to use in plugins]), [case "${withval}" in yes) AC_MSG_ERROR(bad value ${withval} for --with-package-name) ;; no) AC_MSG_ERROR(bad value ${withval} for --with-package-name) ;; *) GST_PACKAGE="${withval}" ;; esac], [ dnl default value if test "x$GST_CVS" = "xyes" then dnl nano >= 1 GST_PACKAGE="GStreamer CVS/prerelease" else GST_PACKAGE="GStreamer source release" fi ] ) AC_MSG_NOTICE(Using $GST_PACKAGE as package name) AC_DEFINE_UNQUOTED(GST_PACKAGE, "$GST_PACKAGE", [package name in plugins]) dnl package origin URL AC_ARG_WITH(package-origin, AC_HELP_STRING([--with-package-origin],[specify package origin URL to use in plugins]), [case "${withval}" in yes) AC_MSG_ERROR(bad value ${withval} for --with-package-origin) ;; no) AC_MSG_ERROR(bad value ${withval} for --with-package-origin) ;; *) GST_ORIGIN="${withval}" ;; esac], [GST_ORIGIN="http://gstreamer.freedesktop.org/"]) dnl Default value AC_MSG_NOTICE(Using $GST_ORIGIN as package origin) AC_DEFINE_UNQUOTED(GST_ORIGIN, "$GST_ORIGIN", [package origin]) 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 Set location of uninstalled plugin directory PLUGINS_BUILDDIR=`pwd` AC_DEFINE_UNQUOTED(PLUGINS_BUILDDIR, "$PLUGINS_BUILDDIR", [Define the uninstalled plugin directory]) AC_SUBST(PLUGINS_BUILDDIR) dnl LDFLAGS modifier defining exported symbols from built objects EXPORT_LDFLAGS="-export-symbols-regex [_]*\(gst_\|Gst\|GST_\).*" dnl GST_PKG_*: the flags we use that are also used dnl for external applications/.pc file dnl GST_LIB_*: used for the main library dnl GST_OBJ_*: the flags we use for all the objects internal to the core dnl GST_PLUGIN_*: additional flags we use for all plugins dnl finalize _CFLAGS and _LIBS dnl flags exported for external applications and use in our pkg-config .pc files dnl since glib and xml are package deps, there's no need to include their cflags dnl in the pkg-config file GST_PKG_DEPS="glib-2.0, gobject-2.0, gmodule-2.0, gthread-2.0" AC_SUBST(GST_PKG_CFLAGS) AC_SUBST(GST_PKG_LIBS) AC_SUBST(GST_PKG_DEPS) dnl flags shared for all internal objects (core libs, elements, applications) dnl we disable deprecated internally dnl XML, GLib, popt, GST_INT, VALGRIND, and the right include for CFLAGS dnl no need to add XML, GLib, popt explicitly since libgstreamer pulls them in GST_INT_CFLAGS="$GLIB_CFLAGS $XML_CFLAGS $GST_PKG_CFLAGS \ $GST_INT_CFLAGS \$(ERROR_CFLAGS) -DGST_DISABLE_DEPRECATED" dnl Private vars for libgst only GST_LIB_CFLAGS="$GST_PKG_CFLAGS $GST_INT_CFLAGS \ $VALGRIND_CFLAGS -I\$(top_srcdir)" GST_LIB_LIBS="$XML_LIBS $GLIB_LIBS -lpopt $GST_PKG_LIBS $LTLIBINTL $VALGRIND_LIBS" GST_LIB_LDFLAGS="$GST_LT_LDFLAGS -version-info $GST_LIBVERSION -no-undefined $EXPORT_LDFLAGS" AC_SUBST(GST_LIB_CFLAGS) AC_SUBST(GST_LIB_LIBS) AC_SUBST(GST_LIB_LDFLAGS) dnl Vars for all internal objects built on libgstreamer GST_OBJ_CFLAGS="$GST_INT_CFLAGS -I\$(top_srcdir)/libs -I\$(top_srcdir)" GST_OBJ_LIBS="\$(top_builddir)/gst/libgstreamer-$GST_MAJORMINOR.la" AC_SUBST(GST_OBJ_CFLAGS, "$GST_OBJ_CFLAGS") AC_SUBST(GST_OBJ_LIBS, "$GST_OBJ_LIBS") dnl specific additional LDFLAGS for plugins GST_PLUGIN_LDFLAGS="-module -avoid-version -no-undefined $EXPORT_LDFLAGS" AC_SUBST(GST_PLUGIN_LDFLAGS, "$GST_PLUGIN_LDFLAGS") plugindir="\$(libdir)/gstreamer-$GST_MAJORMINOR" AC_SUBST(plugindir) dnl ################################################## dnl # deps for examples from manual # dnl ################################################## PKG_CHECK_MODULES(LIBGNOMEUI, libgnomeui-2.0, HAVE_LIBGNOMEUI="yes", HAVE_LIBGNOMEUI="no") AC_SUBST(LIBGNOMEUI_CFLAGS) AC_SUBST(LIBGNOMEUI_LIBS) AM_CONDITIONAL(HAVE_LIBGNOMEUI, test "x$HAVE_LIBGNOMEUI" = "xyes") dnl ################################################## dnl # Prepare informative messages to display at end # dnl ################################################## infomessages= if test "x$PLUGINS_USE_BUILDDIR" = xyes; then infomessages="$infomessages *** Warning: You have configured using the --enable-plugin-builddir option. This option is for development purposes only: binaries built with it should be used with code in the build tree only. To build an installable version, use ./configure without the --enable-plugin-builddir option. Note that the autogen.sh script supplies the plugin builddir option automatically -- run ./autogen.sh -- --disable-plugin-builddir to make an installable build. " fi dnl ######################### dnl # Make the output files # dnl ######################### dnl libs/ext/Makefile dnl nothing there yet ! AC_OUTPUT( Makefile include/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/controller/Makefile libs/gst/dataprotocol/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/bytestream/Makefile testsuite/caps/Makefile testsuite/cleanup/Makefile testsuite/controller/Makefile testsuite/debug/Makefile testsuite/dlopen/Makefile testsuite/elements/Makefile testsuite/indexers/Makefile testsuite/negotiation/Makefile testsuite/pad/Makefile testsuite/parse/Makefile testsuite/plugin/Makefile testsuite/refcounting/Makefile testsuite/schedulers/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 tools/Makefile common/Makefile common/m4/Makefile docs/Makefile docs/faq/Makefile docs/gst/Makefile docs/libs/Makefile docs/manual/Makefile docs/pwg/Makefile docs/xsl/Makefile docs/version.entities pkgconfig/Makefile stamp.h pkgconfig/gstreamer.pc pkgconfig/gstreamer-uninstalled.pc pkgconfig/gstreamer-base.pc pkgconfig/gstreamer-base-uninstalled.pc pkgconfig/gstreamer-check.pc pkgconfig/gstreamer-check-uninstalled.pc pkgconfig/gstreamer-controller.pc pkgconfig/gstreamer-controller-uninstalled.pc pkgconfig/gstreamer-dataprotocol.pc pkgconfig/gstreamer-dataprotocol-uninstalled.pc gstreamer.spec, echo "$infomessages", infomessages="$infomessages" )