2 AC_CANONICAL_TARGET([])
4 dnl when going to/from release please set the nano (fourth number) right !
5 dnl releases only do Wall, cvs and prerelease does Werror too
6 AS_VERSION(gstreamer, GST_VERSION, 0, 8, 3, 1, GST_CVS="no", GST_CVS="yes")
8 dnl AM_MAINTAINER_MODE only provides the option to configure to enable it
10 AM_INIT_AUTOMAKE($PACKAGE,$VERSION)
12 dnl our libraries and install dirs use major.minor as a version
13 GST_MAJORMINOR=$GST_VERSION_MAJOR.$GST_VERSION_MINOR
14 dnl we override it here for release candidates
16 AC_SUBST(GST_MAJORMINOR)
19 dnl For interactive UNIX (a Sun thing)
22 dnl CURRENT, REVISION, AGE
23 dnl - library source changed -> increment REVISION
24 dnl - interfaces added/removed/changed -> increment CURRENT, REVISION = 0
25 dnl - interfaces added -> increment AGE
26 dnl - interfaces removed -> AGE = 0
27 AS_LIBTOOL(GST, 3, 0, 2)
30 AC_CONFIG_SRCDIR([gst/gst.c])
31 AM_CONFIG_HEADER(config.h)
33 dnl Add parameters for aclocal
34 AC_SUBST(ACLOCAL_AMFLAGS, "-I common/m4 -I .")
40 dnl the gettext stuff needed
41 AM_GNU_GETTEXT_VERSION(0.11.5)
42 AM_GNU_GETTEXT([external])
44 GETTEXT_PACKAGE=gstreamer-$GST_MAJORMINOR
45 AC_SUBST(GETTEXT_PACKAGE)
46 AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE], "$GETTEXT_PACKAGE",
47 [gettext package name])
49 dnl define LOCALEDIR in config.h
50 AS_AC_EXPAND(LOCALEDIR, $datadir/locale)
51 AC_DEFINE_UNQUOTED([LOCALEDIR], "$LOCALEDIR",
55 dnl decide on error flags
56 dnl if we support -Wall, set it unconditionally
57 AS_COMPILER_FLAG(-Wall,
58 GST_ERROR_CFLAGS="-Wall",
60 dnl if we're in nano >= 1, add -Werror if supported
61 if test "x$GST_CVS" = "xyes"
63 AS_COMPILER_FLAG(-Werror, GST_ERROR_CFLAGS="$GST_ERROR_CFLAGS -Werror")
66 dnl We disable static building for development, for time savings
67 dnl *NOTE*: dnl this line before release, so release does static too
73 dnl define correct errorlevel for debugging messages. We want to have GST_ERROR
74 dnl messages printed when running cvs builds
75 if test "x$GST_CVS" = "xyes"; then
76 AC_DEFINE(GST_LEVEL_DEFAULT, GST_LEVEL_ERROR, [Default errorlevel to use])
79 dnl subsystems - can influence other decisions so needs to be high up
80 dnl we need to do AM_CONDITIONAL them here for automake 1.6.x compatibility
81 GST_CHECK_SUBSYSTEM_DISABLE(GST_DEBUG,[debugging subsystem])
82 AM_CONDITIONAL(GST_DISABLE_GST_DEBUG, test "x$GST_DISABLE_GST_DEBUG" = "xyes")
83 GST_CHECK_SUBSYSTEM_DISABLE(LOADSAVE,[pipeline XML load/save])
84 AM_CONDITIONAL(GST_DISABLE_LOADSAVE, test "x$GST_DISABLE_LOADSAVE" = "xyes")
85 GST_CHECK_SUBSYSTEM_DISABLE(PARSE,[command-line parser])
86 AM_CONDITIONAL(GST_DISABLE_PARSE, test "x$GST_DISABLE_PARSE" = "xyes")
87 GST_CHECK_SUBSYSTEM_DISABLE(TRACE,[tracing subsystem])
88 AM_CONDITIONAL(GST_DISABLE_TRACE, test "x$GST_DISABLE_TRACE" = "xyes")
89 GST_CHECK_SUBSYSTEM_DISABLE(ALLOC_TRACE,[allocation tracing])
90 AM_CONDITIONAL(GST_DISABLE_ALLOC_TRACE, test "x$GST_DISABLE_ALLOC_TRACE" = "xyes")
91 GST_CHECK_SUBSYSTEM_DISABLE(REGISTRY,[plugin registry])
92 AM_CONDITIONAL(GST_DISABLE_REGISTRY, test "x$GST_DISABLE_REGISTRY" = "xyes")
93 GST_CHECK_SUBSYSTEM_DISABLE(ENUMTYPES,[enum types])
94 AM_CONDITIONAL(GST_DISABLE_ENUMTYPES, test "x$GST_DISABLE_ENUMTYPES" = "xyes")
95 GST_CHECK_SUBSYSTEM_DISABLE(INDEX,[index])
96 AM_CONDITIONAL(GST_DISABLE_INDEX, test "x$GST_DISABLE_INDEX" = "xyes")
97 GST_CHECK_SUBSYSTEM_DISABLE(PLUGIN,[plugin])
98 AM_CONDITIONAL(GST_DISABLE_PLUGIN, test "x$GST_DISABLE_PLUGIN" = "xyes")
99 GST_CHECK_SUBSYSTEM_DISABLE(URI,[uri handlers])
100 AM_CONDITIONAL(GST_DISABLE_URI, test "x$GST_DISABLE_URI" = "xyes")
102 dnl ##############################
103 dnl # Do automated configuration #
104 dnl ##############################
109 dnl allow for different autotools
110 AS_AUTOTOOLS_ALTERNATE()
112 dnl modify pkg-config path
113 AC_ARG_WITH(pkg-config-path,
114 AC_HELP_STRING([--with-pkg-config-path],
115 [colon-separated list of pkg-config(1) dirs]),
116 [export PKG_CONFIG_PATH=${withval}])
121 dnl Perl is used in building documentation
122 AC_PATH_PROG(PERL_PATH, perl, no)
123 if test x$PERL_PATH = xno; then
124 AC_MSG_ERROR(Could not find perl)
129 dnl we require bison for building the parser
130 dnl FIXME: check if AC_PROG_YACC is suitable here
131 AC_PATH_PROG(BISON_PATH, bison, no)
132 if test x$BISON_PATH = xno; then
133 AC_MSG_ERROR(Could not find bison)
136 dnl check bison version
137 AC_MSG_CHECKING([bison version])
139 if $BISON_PATH --version | head -n 1 | $AWK '{ if ($4 < 1.35) exit 1; else exit 0;}';
143 AC_MSG_RESULT([too old.])
144 AC_MSG_ERROR([Your bison version is too old, v1.35 or later is required.])
147 dnl we require flex for building the parser
148 dnl FIXME: check if AC_PROG_LEX is suitable here
149 AC_PATH_PROG(FLEX_PATH, flex, no)
150 if test x$FLEX_PATH = xno; then
151 AC_MSG_ERROR(Could not find flex)
155 dnl We should really use AC_SYS_LARGEFILE, but the problem is
156 dnl many of the plugins don't include "config.h". To assure
157 dnl binary compatibility, it is necessary that all gstreamer
158 dnl code be compiled with the same sizeof(off_t), so we use
159 dnl the following crude hack.
162 AC_MSG_CHECKING(for large file support)
164 #define _LARGEFILE_SOURCE
165 #define _FILE_OFFSET_BITS 64
166 #include <sys/types.h>
167 int main () { return !(sizeof(off_t) == 8); }
171 GST_PKG_CFLAGS="-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
182 if test "$ac_cv_func_mmap_fixed_mapped" = "yes" ; then
183 GST_DISABLE_OMEGA_COTHREADS=no
185 GST_DISABLE_OMEGA_COTHREADS=yes
187 dnl for future --disabling, maybe. Right now, it depends on HAVE_MMAP
188 AM_CONDITIONAL(GST_DISABLE_OMEGA_COTHREADS, test "x$GST_DISABLE_OMEGA_COTHREADS" = "xyes")
190 dnl check for makecontext and define HAVE_MAKECONTEXT if we have it
192 if test "$ac_cv_check_mcsc" = "yes"; then
193 AC_DEFINE_UNQUOTED(HAVE_MAKECONTEXT, $HAVE_MAKECONTEXT,
194 [defined if we have makecontext ()])
197 dnl Check for a way to display the function name in debug output
200 dnl check if we should use -Wa,-mregnames on PowerPC, so we can use
201 dnl symbolic register names in inline asm
202 if test x$HAVE_CPU_PPC = xyes ; then
203 AS_COMPILER_FLAG(["-Wa,-mregnames"],
204 [GST_INT_CFLAGS="$GST_INT_CFLAGS -Wa,-mregnames"],
209 AC_HELP_STRING([--enable-gcov],[compile with coverage profiling instrumentation (gcc only)]),
210 enable_gcov=$enableval,enable_gcov=no)
211 if test x$enable_gcov = xyes ; then
212 AS_COMPILER_FLAG(["-fprofile-arcs"],
213 [GST_INT_CFLAGS="$GST_INT_CFLAGS -fprofile-arcs"],
215 AS_COMPILER_FLAG(["-ftest-coverage"],
216 [GST_INT_CFLAGS="$GST_INT_CFLAGS -ftest-coverage"],
218 GST_INT_CFLAGS=`echo "$GST_INT_CFLAGS" | sed -e 's/-O[0-9]*//g'`
220 AC_DEFINE_UNQUOTED(GST_GCOV_ENABLED, 1, [Defined if gcov is enabled to force a rebuild due to config.h changing])
222 AM_CONDITIONAL(GST_GCOV_ENABLED, test x$enable_gcov = xyes)
224 dnl Check for some compiler flags that optimize our code.
225 dnl Only enable this for CVS builds for now
226 if test "x$GST_CVS" = "xyes"; then
227 AS_COMPILER_FLAG(-fno-common,GST_INT_CFLAGS="$GST_INT_CFLAGS -fno-common",)
230 dnl HAVE_WIN32 currently means "disable POSIXisms".
233 AC_DEFINE_UNQUOTED(HAVE_WIN32, 1, [Defined if compiling for Windows])
239 GST_UNALIGNED_ACCESS()
240 if test x${as_cv_unaligned_access} = xyes ; then
241 GST_HAVE_UNALIGNED_ACCESS_DEFINE="#define GST_HAVE_UNALIGNED_ACCESS 1"
243 GST_HAVE_UNALIGNED_ACCESS_DEFINE="#define GST_HAVE_UNALIGNED_ACCESS 0"
245 AC_SUBST(GST_HAVE_UNALIGNED_ACCESS_DEFINE)
247 dnl Check for essential libraries first:
248 dnl ====================================
251 dnl Minimum required version of GLib2
252 dnl required for compilation without warnings
256 dnl Check for glib2 with sugar on top
257 PKG_CHECK_MODULES(GLIB2, glib-2.0 >= $GLIB2_REQ gobject-2.0 gthread-2.0 gmodule-2.0,HAVE_GLIB2=yes,HAVE_GLIB2=no)
258 dnl for the poor souls who for example have glib in /usr/local
259 AS_SCRUB_INCLUDE(GLIB2_CFLAGS)
260 GLIB_LIBS=$GLIB2_LIBS
261 GLIB_CFLAGS=$GLIB2_CFLAGS
263 AC_SUBST(GLIB_CFLAGS)
265 if test "x$HAVE_GLIB2" = "xno"; then
266 AC_MSG_ERROR([GStreamer requires GLib $GLIB2_REQ to compile.])
269 dnl Check for glib2 without extra fat, useful for the unversioned tool frontends
270 PKG_CHECK_MODULES(GLIB_ONLY, glib-2.0 >= $GLIB2_REQ)
271 AC_SUBST(GLIB_ONLY_CFLAGS)
272 AC_SUBST(GLIB_ONLY_LIBS)
275 if test "x$GST_DISABLE_LOADSAVE" = "xyes" && test "x$GST_DISABLE_REGISTRY" = "xyes"
277 AC_MSG_NOTICE([Registry and load/save are disabled, not checking for libxml2])
279 dnl check for libxml2 with minimum req version
280 GST_LIBXML2_CHECK(2.4.9)
284 dnl FIXME: This test passes on popt 1.6.2, maybe earlier, but popt 1.6.2
285 dnl causes segfaults on gst_init. Write a working test if possible.
286 GST_CHECK_LIBHEADER(POPT, popt, poptStrippedArgv,, popt.h, POPT_LIBS="-lpopt",
287 AC_MSG_ERROR([popt 1.6.3 or newer is required to build gstreamer. You can
288 download the latest version from
289 ftp://ftp.rpm.org/pub/rpm/dist/])
291 AC_MSG_NOTICE(Checking for POPT_TABLEEND)
296 #ifndef POPT_TABLEEND
304 AC_MSG_ERROR([popt 1.6.3 or newer is required to build gstreamer. You can
305 download the latest version from
306 ftp://ftp.rpm.org/pub/rpm/dist/])
310 dnl Check for ucontext.h
311 AC_CHECK_HEADER(ucontext.h, AC_DEFINE(HAVE_UCONTEXT_H, 1, [defined if we have ucontext.h]))
313 dnl ######################################################################
314 dnl # Check command line parameters, and set shell variables accordingly #
315 dnl ######################################################################
317 dnl FIXME: simplify all this down using a few m4 macros
319 AC_ARG_ENABLE(libmmx,
320 AC_HELP_STRING([--enable-libmmx],[use libmmx, if available]),
321 [case "${enableval}" in
322 yes) USE_LIBMMX=$HAVE_LIBMMX ;;
324 *) AC_MSG_ERROR(bad value ${enableval} for --enable-libmmx) ;;
326 [USE_LIBMMX=$HAVE_LIBMMX]) dnl Default value
328 AC_ARG_ENABLE(fast-stack-trash,
329 AC_HELP_STRING([--enable-fast-stack-trash],[use fast memory allocator (i586 or above)]),
330 [case "${enableval}" in
331 yes) USE_FAST_STACK_TRASH=yes;;
332 noset) USE_FAST_STACK_TRASH=no;;
333 no) USE_FAST_STACK_TRASH=no;;
334 *) AC_MSG_ERROR(bad value ${enableval} for --enable-atomic) ;;
336 [USE_FAST_STACK_TRASH=yes]) dnl Default value
338 AC_ARG_ENABLE(plugin-builddir,
339 AC_HELP_STRING([--enable-plugin-builddir],[allow tests/demos to use non-installed plugins]),
340 [case "${enableval}" in
341 yes) PLUGINS_USE_BUILDDIR=yes ;;
342 no) PLUGINS_USE_BUILDDIR=no ;;
343 *) AC_MSG_ERROR(bad value ${enableval} for --enable-plugin-builddir) ;;
345 [PLUGINS_USE_BUILDDIR=no]) dnl Default value
347 AC_ARG_ENABLE(profiling,
348 AC_HELP_STRING([--enable-profiling],[adds -pg to compiler commandline, for profiling]),
349 [case "${enableval}" in
350 yes) USE_PROFILING=yes ;;
351 no) USE_PROFILING=no ;;
352 *) AC_MSG_ERROR(bad value ${enableval} for --enable-profiling) ;;
354 [USE_PROFILING=no]) dnl Default value
356 dnl use a cache dir for storing element registry info.
357 dnl default to building registry in the source tree if we are enabling plugin build dir
358 if test "x$PLUGINS_USE_BUILDDIR" = "xyes"; then
361 dnl ${localstatedir} points to PREFIX/var
362 GST_CACHE_DIR=${localstatedir}/cache/gstreamer-$GST_MAJORMINOR
364 AC_ARG_WITH(cachedir,
365 AC_HELP_STRING([--with-cachedir],[specify path to use for plugin and command completion registries]),
366 [case "${withval}" in
367 yes) AC_MSG_ERROR(bad value ${withval} for --with-cachedir) ;;
368 no) AC_MSG_ERROR(bad value ${withval} for --with-cachedir) ;;
369 *) GST_CACHE_DIR="${withval}" ;;
371 [:]) dnl Default value
373 AS_AC_EXPAND(GST_CACHE_DIR, $GST_CACHE_DIR)
374 AC_DEFINE_UNQUOTED(GST_CACHE_DIR, "$GST_CACHE_DIR", [Location of registry])
375 AC_MSG_NOTICE(Using $GST_CACHE_DIR as registry cache dir)
377 dnl building of tests
379 AC_HELP_STRING([--disable-tests],[disable building test apps]),
380 [case "${enableval}" in
381 yes) BUILD_TESTS=yes ;;
382 no) BUILD_TESTS=no ;;
383 *) AC_MSG_ERROR(bad value ${enableval} for --disable-tests) ;;
385 [BUILD_TESTS=yes]) dnl Default value
386 AM_CONDITIONAL(BUILD_TESTS, test "x$BUILD_TESTS" = "xyes")
388 dnl tests known to fail
389 AC_ARG_ENABLE(failing-tests,
390 AC_HELP_STRING([--disable-failing-tests],[disable building tests known to fail]),
391 [case "${enableval}" in
392 yes) BUILD_FAILING_TESTS=yes ;;
393 no) BUILD_FAILING_TESTS=no ;;
394 *) AC_MSG_ERROR(bad value ${enableval} for --disable-failing-tests) ;;
396 [BUILD_FAILING_TESTS=no]) dnl Default value
397 AM_CONDITIONAL(BUILD_FAILING_TESTS, test "x$BUILD_FAILING_TESTS" = "xyes")
398 if test x$BUILD_FAILING_TESTS = xyes; then
399 AC_MSG_WARN([building tests known to fail, use --disable-failing-tests to disable])
401 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.])
404 AC_ARG_ENABLE(examples,
405 AC_HELP_STRING([--disable-examples],[disable building examples]),
406 [case "${enableval}" in
407 yes) BUILD_EXAMPLES=yes ;;
408 no) BUILD_EXAMPLES=no ;;
409 *) AC_MSG_ERROR(bad value ${enableval} for --disable-examples) ;;
411 [BUILD_EXAMPLES=yes]) dnl Default value
412 AM_CONDITIONAL(BUILD_EXAMPLES, test "x$BUILD_EXAMPLES" = "xyes")
414 dnl poison destroyed objects
415 AC_ARG_ENABLE(poisoning,
416 AC_HELP_STRING([--enable-poisoning],[enable poisoning of deallocated objects]),
417 [case "${enableval}" in
418 yes) USE_POISONING=yes ;;
419 no) USE_POISONING=no ;;
420 *) AC_MSG_ERROR(bad value ${enableval} for --enable-poisoning) ;;
422 [USE_POISONING=no]) dnl Default value
424 dnl Next, check for the optional components:
425 dnl ========================================
429 AC_HELP_STRING([--disable-debug],[disable addition of -g debugging info]),
430 [case "${enableval}" in
431 yes) USE_DEBUG=yes ;;
433 *) AC_MSG_ERROR(bad value ${enableval} for --enable-debug) ;;
435 [USE_DEBUG=yes]) dnl Default value
437 dnl valgrind inclusion
438 USE_VALGRIND="$USE_DEBUG"
439 if test "x$USE_VALGRIND" = xyes; then
440 PKG_CHECK_MODULES(VALGRIND, valgrind, USE_VALGRIND="yes", USE_VALGRIND="no")
442 if test "x$USE_VALGRIND" = xyes; then
443 AC_DEFINE(HAVE_VALGRIND, 1, [Define if valgrind should be used])
444 AC_MSG_NOTICE(Using extra code paths for valgrind)
446 AC_SUBST(VALGRIND_CFLAGS)
447 AC_SUBST(VALGRIND_LIBS)
449 dnl ################################################
450 dnl # Set defines according to variables set above #
451 dnl ################################################
454 dnl These should be "USE_*" instead of "HAVE_*", but some packages expect
455 dnl HAVE_ and it is likely to be easier to stick with the old name
456 if test "x$USE_LIBMMX" = xyes; then
457 AC_DEFINE(HAVE_LIBMMX, 1, [Define if libmmx is available])
460 if test "x$USE_FAST_STACK_TRASH" = xyes; then
461 AC_DEFINE(USE_FAST_STACK_TRASH, 1, [Define if we should use i586 optimized stack functions])
464 if test "x$USE_POISONING" = xyes; then
465 AC_DEFINE(USE_POISONING, 1, [Define if we should poison deallocated memory])
468 dnl test for sigaction()
469 AC_CHECK_FUNC(sigaction,
470 AC_DEFINE(HAVE_SIGACTION, 1,
471 [Defined if we have sigaction ()]))
473 dnl test for register_printf_function
474 AC_CHECK_FUNC(register_printf_function,
476 GST_PRINTF_EXTENSION_FORMAT_DEFINE="#define GST_PTR_FORMAT \"P\""
477 AC_DEFINE(HAVE_PRINTF_EXTENSION, 1,
478 [Defined if we have register_printf_function ()])
480 GST_PRINTF_EXTENSION_FORMAT_DEFINE="#define GST_PTR_FORMAT \"p\""
482 AC_SUBST(GST_PRINTF_EXTENSION_FORMAT_DEFINE)
484 dnl test if we have dladdr(); we use it for debugging
485 save_cflags="$CFLAGS"
486 CFLAGS="$CFLAGS -D_GNU_SOURCE"
487 AC_CHECK_LIB(dl, dladdr,
488 AC_DEFINE(HAVE_DLADDR, 1,
489 [Defined if we have dladdr ()]))
490 CFLAGS="$save_cflags"
492 if test "x$PLUGINS_USE_BUILDDIR" = xyes; then
493 AC_DEFINE(PLUGINS_USE_BUILDDIR, 1, [Define if plugins should be loaded from the build tree - only developers should use this])
496 if test "x$USE_DEBUG" = xyes; then
497 GST_INT_CFLAGS="$GST_INT_CFLAGS -g"
500 dnl #############################
501 dnl # Set automake conditionals #
502 dnl #############################
504 dnl These should be "USE_*" instead of "HAVE_*", but some packages expect
505 dnl HAVE_ and it is likely to be easier to stick with the old name
506 AM_CONDITIONAL(EXPERIMENTAL, test "$EXPERIMENTAL" = "$xyes")
507 AM_CONDITIONAL(BROKEN, test "$BROKEN" = "$xyes")
508 AM_CONDITIONAL(PLUGINS_USE_BUILDDIR, test "x$PLUGINS_USE_BUILDDIR" = "xyes")
511 dnl ############################
512 dnl # Set up some more defines #
513 dnl ############################
515 dnl set license and copyright notice
516 AC_DEFINE(GST_LICENSE, "LGPL", [GStreamer license])
517 dnl package name in plugins
518 AC_ARG_WITH(package-name,
519 AC_HELP_STRING([--with-package-name],[specify package name to use in plugins]),
520 [case "${withval}" in
521 yes) AC_MSG_ERROR(bad value ${withval} for --with-package-name) ;;
522 no) AC_MSG_ERROR(bad value ${withval} for --with-package-name) ;;
523 *) GST_PACKAGE="${withval}" ;;
525 [GST_PACKAGE="GStreamer"]) dnl Default value
526 AC_MSG_NOTICE(Using $GST_PACKAGE as package name)
527 AC_DEFINE_UNQUOTED(GST_PACKAGE, "$GST_PACKAGE", [package name in plugins])
528 dnl package origin URL
529 AC_ARG_WITH(package-origin,
530 AC_HELP_STRING([--with-package-origin],[specify package origin URL to use in plugins]),
531 [case "${withval}" in
532 yes) AC_MSG_ERROR(bad value ${withval} for --with-package-origin) ;;
533 no) AC_MSG_ERROR(bad value ${withval} for --with-package-origin) ;;
534 *) GST_ORIGIN="${withval}" ;;
536 [GST_ORIGIN="http://gstreamer.net/"]) dnl Default value
537 AC_MSG_NOTICE(Using $GST_ORIGIN as package origin)
538 AC_DEFINE_UNQUOTED(GST_ORIGIN, "$GST_ORIGIN", [package origin])
540 dnl Set location of plugin directory
541 AS_AC_EXPAND(PLUGINS_DIR, ${libdir}/gstreamer-$GST_MAJORMINOR)
542 AC_DEFINE_UNQUOTED(PLUGINS_DIR, "$PLUGINS_DIR", [Define the plugin directory])
543 AC_SUBST(PLUGINS_DIR)
544 AC_MSG_NOTICE([Using $PLUGINS_DIR as the plugin install location])
546 dnl Set location of uninstalled plugin directory
547 PLUGINS_BUILDDIR=`pwd`
548 AC_DEFINE_UNQUOTED(PLUGINS_BUILDDIR, "$PLUGINS_BUILDDIR", [Define the uninstalled plugin directory])
549 AC_SUBST(PLUGINS_BUILDDIR)
551 dnl LDFLAGS modifier defining exported symbols from built objects
552 EXPORT_LDFLAGS="-export-symbols-regex [_]*\(gst_\|Gst\|GST_\).*"
554 dnl GST_PKG_*: the flags we use that are also used
555 dnl for external applications/.pc file
556 dnl GST_LIB_*: used for the main library
557 dnl GST_OBJ_*: the flags we use for all the objects internal to the core
558 dnl GST_PLUGIN_*: additional flags we use for all plugins
560 dnl finalize _CFLAGS and _LIBS
561 dnl flags exported for external applications and use in our pkg-config .pc files
562 dnl since glib and xml are package deps, there's no need to include their cflags
563 dnl in the pkg-config file
565 GST_PKG_DEPS="glib-2.0, gobject-2.0, gmodule-2.0, gthread-2.0"
566 AC_SUBST(GST_PKG_CFLAGS)
567 AC_SUBST(GST_PKG_LIBS)
568 AC_SUBST(GST_PKG_DEPS)
570 dnl flags shared for all internal objects (core libs, elements, applications)
571 dnl we disable deprecated internally
572 dnl XML, GLib, popt, GST_INT, VALGRIND, and the right include for CFLAGS
573 dnl no need to add XML, GLib, popt explicitly since libgstreamer pulls them in
574 GST_INT_CFLAGS="$GLIB_CFLAGS $XML_CFLAGS $GST_PKG_CFLAGS \
575 $GST_INT_CFLAGS $GST_ERROR_CFLAGS -DGST_DISABLE_DEPRECATED"
577 dnl Private vars for libgst only
578 GST_LIB_CFLAGS="$GST_PKG_CFLAGS $GST_INT_CFLAGS \
579 $VALGRIND_CFLAGS -I\$(top_srcdir)"
580 GST_LIB_LIBS="$XML_LIBS $GLIB_LIBS -lpopt $GST_PKG_LIBS $VALGRIND_LIBS"
581 GST_LIB_LDFLAGS="$GST_LT_LDFLAGS -version-info $GST_LIBVERSION $EXPORT_LDFLAGS"
582 AC_SUBST(GST_LIB_CFLAGS)
583 AC_SUBST(GST_LIB_LIBS)
584 AC_SUBST(GST_LIB_LDFLAGS)
586 dnl Vars for all internal objects built on libgstreamer
587 GST_OBJ_CFLAGS="$GST_INT_CFLAGS -I\$(top_srcdir)/libs -I\$(top_srcdir)"
588 GST_OBJ_LIBS="\$(top_builddir)/gst/libgstreamer-$GST_MAJORMINOR.la"
590 AC_SUBST(GST_OBJ_CFLAGS, "$GST_OBJ_CFLAGS")
591 AC_SUBST(GST_OBJ_LIBS, "$GST_OBJ_LIBS")
593 dnl specific additional LDFLAGS for plugins
594 GST_PLUGIN_LDFLAGS="-module -avoid-version $EXPORT_LDFLAGS"
595 AC_SUBST(GST_PLUGIN_LDFLAGS, "$GST_PLUGIN_LDFLAGS")
597 plugindir="\$(libdir)/gstreamer-$GST_MAJORMINOR"
600 dnl ##################################################
601 dnl # deps for examples from manual #
602 dnl ##################################################
604 PKG_CHECK_MODULES(LIBGNOMEUI, libgnomeui-2.0,
605 HAVE_LIBGNOMEUI="yes", HAVE_LIBGNOMEUI="no")
606 AC_SUBST(LIBGNOMEUI_CFLAGS)
607 AC_SUBST(LIBGNOMEUI_LIBS)
608 AM_CONDITIONAL(HAVE_LIBGNOMEUI, test "x$HAVE_LIBGNOMEUI" = "xyes")
610 dnl ##################################################
611 dnl # Prepare informative messages to display at end #
612 dnl ##################################################
616 if test "x$PLUGINS_USE_BUILDDIR" = xyes; then
617 infomessages="$infomessages
618 *** Warning: You have configured using the --enable-plugin-builddir option.
620 This option is for development purposes only: binaries built with
621 it should be used with code in the build tree only. To build an
622 installable version, use ./configure without the --enable-plugin-builddir
623 option. Note that the autogen.sh script supplies the plugin builddir
624 option automatically -- run ./autogen.sh -- --disable-plugin-builddir to make
625 an installable build.
630 dnl #########################
631 dnl # Make the output files #
632 dnl #########################
634 dnl libs/ext/Makefile
635 dnl nothing there yet !
642 gst/autoplug/Makefile
643 gst/indexers/Makefile
644 gst/elements/Makefile
646 gst/schedulers/Makefile
647 gst/registries/Makefile
650 libs/gst/bytestream/Makefile
651 libs/gst/control/Makefile
652 libs/gst/dataprotocol/Makefile
653 libs/gst/getbits/Makefile
656 tests/bufspeed/Makefile
657 tests/instantiate/Makefile
658 tests/memchunk/Makefile
659 tests/muxing/Makefile
660 tests/seeking/Makefile
662 tests/threadstate/Makefile
664 testsuite/bins/Makefile
665 testsuite/bytestream/Makefile
666 testsuite/caps/Makefile
667 testsuite/cleanup/Makefile
668 testsuite/clock/Makefile
669 testsuite/debug/Makefile
670 testsuite/dlopen/Makefile
671 testsuite/dynparams/Makefile
672 testsuite/elements/Makefile
673 testsuite/enumcaps/Makefile
674 testsuite/ghostpads/Makefile
675 testsuite/indexers/Makefile
676 testsuite/negotiation/Makefile
677 testsuite/parse/Makefile
678 testsuite/plugin/Makefile
679 testsuite/refcounting/Makefile
680 testsuite/schedulers/Makefile
681 testsuite/states/Makefile
682 testsuite/tags/Makefile
683 testsuite/threads/Makefile
685 examples/cutter/Makefile
686 examples/helloworld/Makefile
687 examples/launch/Makefile
688 examples/manual/Makefile
689 examples/mixer/Makefile
690 examples/pingpong/Makefile
691 examples/plugins/Makefile
692 examples/queue/Makefile
693 examples/queue2/Makefile
694 examples/queue3/Makefile
695 examples/queue4/Makefile
696 examples/retag/Makefile
697 examples/thread/Makefile
698 examples/typefind/Makefile
699 examples/xml/Makefile
708 docs/plugins/Makefile
709 docs/plugins/gstreamer-plugins.types
712 docs/version.entities
715 pkgconfig/gstreamer.pc
716 pkgconfig/gstreamer-uninstalled.pc
717 pkgconfig/gstreamer-control.pc
718 pkgconfig/gstreamer-control-uninstalled.pc
720 echo "$infomessages", infomessages="$infomessages"