1 dnl autoconf configuration file for gst-plugins
5 dnl We disable static building for development, for time savings
6 dnl this goes before AS_LIBTOOL to appease autoconf
7 dnl *NOTE*: dnl this line before release, so release does static too
10 dnl AM_MAINTAINER_MODE only provides the option to configure to enable it
13 dnl when going to/from release please set the nano (fourth number) right !
14 dnl releases only do Wall, cvs and prerelease does Werror too
15 AS_VERSION(gst-plugins-base, GST_PLUGINS_VERSION, 0, 9, 0, 1, GST_CVS="no", GST_CVS="yes")
17 AM_INIT_AUTOMAKE($PACKAGE,$VERSION)
19 dnl our libraries and install dirs use major.minor as a version
20 GST_MAJORMINOR=$GST_PLUGINS_VERSION_MAJOR.$GST_PLUGINS_VERSION_MINOR
21 dnl we override it here if we need to for the release candidate of new series
23 AC_SUBST(GST_MAJORMINOR)
25 dnl CURRENT, REVISION, AGE
26 dnl - library source changed -> increment REVISION
27 dnl - interfaces added/removed/changed -> increment CURRENT, REVISION = 0
28 dnl - interfaces added -> increment AGE
29 dnl - interfaces removed -> AGE = 0
30 dnl for 0.8.3 release, gst_play_get_all_by_interface was added, so update
31 AS_LIBTOOL(GST_PLUGINS, 1, 0, 1)
34 dnl FIXME take something else ?
35 AC_CONFIG_SRCDIR([gst/sine/gstsinesrc.c])
36 AM_CONFIG_HEADER(config.h)
38 dnl Add parameters for aclocal
39 dnl (This must come after AM_INIT_AUTOMAKE, since it modifies ACLOCAL)
40 ACLOCAL_FLAGS="-I m4 -I common/m4"
41 AC_SUBST(ACLOCAL_AMFLAGS, $ACLOCAL_FLAGS)
49 dnl the gettext stuff needed
50 AM_GNU_GETTEXT_VERSION(0.11.5)
51 AM_GNU_GETTEXT([external])
53 GETTEXT_PACKAGE=gst-plugins-base-$GST_MAJORMINOR
54 AC_SUBST(GETTEXT_PACKAGE)
55 AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE], "$GETTEXT_PACKAGE",
56 [gettext package name])
58 dnl define LOCALEDIR in config.h
59 AS_AC_EXPAND(LOCALEDIR, $datadir/locale)
60 AC_DEFINE_UNQUOTED([LOCALEDIR], "$LOCALEDIR",
63 dnl decide on error flags
64 AS_COMPILER_FLAG(-Wall, GST_WALL="yes", GST_WALL="no")
66 if test "x$GST_WALL" = "xyes"; then
67 GST_ERROR="$GST_ERROR -Wall"
69 dnl if test "x$GST_CVS" = "xyes"; then
70 dnl AS_COMPILER_FLAG(-Werror,GST_ERROR="$GST_ERROR -Werror",GST_ERROR="$GST_ERROR")
74 dnl determine c++ compiler
76 dnl determine if c++ is available on this system
77 AC_CHECK_PROG(HAVE_CXX, $CXX, yes, no)
78 dnl determine c++ preprocessor
86 dnl Check for malloc.h
87 AC_CHECK_HEADER(malloc.h,[
88 AC_DEFINE(HAVE_MALLOC_H, 1, [whether malloc.h available])
91 dnl Check for a way to display the function name in debug output
94 dnl define correct errorlevel for debugging messages. We want to have GST_ERROR
95 dnl messages printed when running cvs builds
96 if test "x$GST_CVS" = "xyes"; then
97 AC_DEFINE(GST_LEVEL_DEFAULT, GST_LEVEL_ERROR, [Default errorlevel to use])
100 dnl Check for FIONREAD ioctl declaration :
103 DEFAULT_AUDIOSINK="osssink"
104 DEFAULT_VIDEOSINK="xvimagesink"
105 DEFAULT_AUDIOSRC="osssrc"
106 DEFAULT_VIDEOSRC="v4lsrc"
107 DEFAULT_VISUALIZER="goom"
109 *-sun-* | *pc-solaris* )
110 DEFAULT_AUDIOSINK="sunaudiosink"
111 DEFAULT_VIDEOSINK="ximagesink"
112 DEFAULT_AUDIOSRC="sunaudiosrc"
115 DEFAULT_AUDIOSINK="osxaudiosink"
116 DEFAULT_AUDIOSRC="osxaudiosrc"
117 DEFAULT_VIDEOSINK="osxvideosink"
121 AC_SUBST(DEFAULT_AUDIOSINK)
122 AC_DEFINE_UNQUOTED(DEFAULT_AUDIOSINK,"$DEFAULT_AUDIOSINK",[Default audio sink])
123 AC_SUBST(DEFAULT_AUDIOSRC)
124 AC_DEFINE_UNQUOTED(DEFAULT_AUDIOSRC,"$DEFAULT_AUDIOSRC",[Default audio source])
125 AC_SUBST(DEFAULT_VIDEOSINK)
126 AC_DEFINE_UNQUOTED(DEFAULT_VIDEOSINK,"$DEFAULT_VIDEOSINK",[Default video sink])
127 AC_SUBST(DEFAULT_VIDEOSRC)
128 AC_DEFINE_UNQUOTED(DEFAULT_VIDEOSRC,"$DEFAULT_VIDEOSRC",[Default video source])
129 AC_SUBST(DEFAULT_VISUALIZER)
130 AC_DEFINE_UNQUOTED(DEFAULT_VISUALIZER,"$DEFAULT_VISUALIZER",[Default visualizer])
132 dnl ############################################
133 dnl # Super Duper options for plug-in building #
134 dnl ############################################
136 dnl ext plug-ins; plug-ins that have external dependencies
137 GST_CHECK_FEATURE(EXTERNAL, [enable building of plug-ins with external deps],,
138 [HAVE_EXTERNAL=yes],enabled,
140 AC_MSG_WARN(building external plug-ins)
143 AC_MSG_WARN(all plug-ins with external dependencies will not be built)
146 # make BUILD_EXTERNAL available to Makefile.am
147 AM_CONDITIONAL(BUILD_EXTERNAL, test "x$BUILD_EXTERNAL" = "xyes")
149 dnl experimental plug-ins; stuff that hasn't had the dust settle yet
150 dnl read 'builds, but might not work'UTO
151 GST_CHECK_FEATURE(EXPERIMENTAL, [enable building of experimental plug-ins],,
152 [HAVE_EXPERIMENTAL=yes],disabled,
154 AC_MSG_WARN(building experimental plug-ins)
157 AC_MSG_NOTICE(not building experimental plug-ins)
161 dnl broken plug-ins; stuff that doesn't seem to build at the moment
162 GST_CHECK_FEATURE(BROKEN, [enable building of broken plug-ins],,
163 HAVE_BROKEN=yes,disabled,
165 AC_MSG_WARN([building broken plug-ins -- no bug reports on these, only patches :)])
167 AC_MSG_NOTICE([not building broken plug-ins])
170 dnl ##############################
171 dnl # Do automated configuration #
172 dnl ##############################
177 dnl allow for different autotools
178 AS_AUTOTOOLS_ALTERNATE()
180 dnl modify pkg-config path
181 AC_ARG_WITH(pkg-config-path,
182 AC_HELP_STRING([--with-pkg-config-path],[colon-separated list of pkg-config(1) dirs]),
183 [export PKG_CONFIG_PATH=${withval}])
186 dnl check architecture
189 dnl check for gconftool-2
191 dnl this macro defines an am conditional, so it needs to be run always
194 translit(dnm, m, l) AM_CONDITIONAL(USE_GCONFTOOL, true)
195 GST_CHECK_FEATURE(GCONFTOOL, [GConf schemas], , [
196 AC_PATH_PROG(GCONFTOOL, gconftool-2, no)
197 if test x$GCONFTOOL = xno; then
198 AC_MSG_WARN(Not installing GConf schemas)
203 AC_SUBST(HAVE_GCONFTOOL)
206 dnl check for GConf libraries
207 translit(dnm, m, l) AM_CONDITIONAL(USE_GCONF, true)
208 GST_CHECK_FEATURE(GCONF, [GConf libraries], , [
209 PKG_CHECK_MODULES(GCONF, gconf-2.0, HAVE_GCONF="yes", HAVE_GCONF="no")
210 AC_SUBST(GCONF_CFLAGS)
214 dnl check for gstreamer
215 dnl uninstalled is selected preferentially -- see pkg-config(1)
217 PKG_CHECK_MODULES(GST, gstreamer-$GST_MAJORMINOR >= $GST_REQ,
218 HAVE_GST="yes", HAVE_GST="no")
220 if test "x$HAVE_GST" = "xno"; then
221 AC_MSG_ERROR(no GStreamer found)
224 GST_TOOLS_DIR=`pkg-config --variable=toolsdir gstreamer-$GST_MAJORMINOR`
225 if test -z $GST_TOOLS_DIR; then
226 AC_MSG_ERROR([no tools dir defined in GStreamer pkg-config file; core upgrade needed.])
228 AC_SUBST(GST_TOOLS_DIR)
230 dnl check for gstreamer-control; uninstalled is selected preferentially
231 PKG_CHECK_MODULES(GST_CONTROL, gstreamer-control-$GST_MAJORMINOR >= $GST_REQ,
232 HAVE_GST_CONTROL="yes", HAVE_GST_CONTROL="no")
234 if test "x$HAVE_GST_CONTROL" = "xno"; then
235 AC_MSG_ERROR(no GStreamer Control Libs found)
238 AC_SUBST(GST_CONTROL_LIBS)
240 PKG_CHECK_MODULES(GST_BASE, gstreamer-base-$GST_MAJORMINOR >= $GST_REQ,
241 HAVE_GST_BASE="yes", HAVE_GST_BASE="no")
243 if test "x$HAVE_GST_BASE" = "xno"; then
244 AC_MSG_ERROR(no libgstbase found)
247 AC_SUBST(GST_BASE_LIBS)
249 dnl Determine endianness
252 dnl Check for fast float to int casting as defined in C99
256 dnl Check for essential libraries first:
257 dnl ====================================
261 dnl Check for additional libraries that we might use:
262 dnl =================================================
265 PKG_CHECK_MODULES(GTK2, gtk+-2.0 >= 2.2.0, HAVE_GTK_22=yes, HAVE_GTK_22=no)
266 if test "x$HAVE_GTK_22" = "xyes"; then
268 GTK_VERSION=`$PKG_CONFIG --variable=gtk_binary_version gtk+-2.0`
269 AC_SUBST(GTK_VERSION)
270 GTK_PREFIX=`$PKG_CONFIG --variable=prefix gdk-pixbuf-2.0`
271 GDK_PIXBUF_LIBDIR=`$PKG_CONFIG --variable=libdir gdk-pixbuf-2.0`
272 GDK_PIXBUF_PREFIXDIR=`$PKG_CONFIG --variable=prefix gdk-pixbuf-2.0`
273 AC_SUBST(GTK_BASE_DIR)
275 PKG_CHECK_MODULES(GTK2, gtk+-2.0, HAVE_GTK_20=yes, HAVE_GTK_20=no)
277 if test "x$HAVE_GTK_20" = "xyes"; then
280 GTK_CFLAGS=$GTK2_CFLAGS
286 # gdk_pixbuf gstreamer loader is considered experimental, so disable
288 if test "x$HAVE_GTK_22" = "xyes"; then
294 # we set the defaults always to make sure we have non-empty variables
297 # by default, stick to prefix
298 GDK_PIXBUF_LOADER_DIR=${libdir}/gtk-2.0/\${GTK_VERSION}/loaders
299 GDK_PIXBUF_CONF_DIR=${sysconfdir}/gtk-2.0
302 AC_ARG_ENABLE(gdk-pixbuf-loader,
303 AC_HELP_STRING([--enable-gdk-pixbuf-loader],
304 [whether to enable building of gdk_pixbuf loader]),
305 :, HAVE_GDK_LOADERS="no")
307 if test "x$HAVE_GDK_LOADERS" = "xyes"; then
308 AC_PATH_PROG(QUERYLOADERS, gdk-pixbuf-query-loaders, no)
309 # allow customization of pixbuf loader install location
310 # when nothing specified, adhere to prefix settings
311 # when called without any option with this argument, autodetect
312 # when called with a path, set to the given path
314 AC_ARG_WITH(gdk-pixbuf-loader-dir,
315 AC_HELP_STRING([--with-gdk-pixbuf-loader-dir],
316 [directory to install the gdk_pixbuf loader (none for pkg-config default)]),
318 if test "x${withval}" != xyes ; then
319 GDK_PIXBUF_LOADER_DIR="${withval}"
321 GDK_PIXBUF_LOADER_DIR="$GDK_PIXBUF_LIBDIR/gtk-2.0/\$GTK_VERSION/loaders"
325 AS_AC_EXPAND(GDK_PIXBUF_LOADER_DIR, $GDK_PIXBUF_LOADER_DIR)
326 AC_SUBST(GDK_PIXBUF_LOADER_DIR)
327 AC_MSG_NOTICE([Putting GTK+-2 pixbuf loaders in $GDK_PIXBUF_LOADER_DIR])
329 # allow customization of pixbuf loader configuration file
330 # when nothing specified, adhere to prefix settings
331 # when called without any option with this argument, autodetect
332 # when called with a path, set to the given path
334 AC_ARG_WITH(gdk-pixbuf-conf-dir,
335 AC_HELP_STRING([--with-gdk-pixbuf-conf-dir],
336 [directory to install the gdk_pixbuf config (none for pkg-config default)]),
338 if test "x${withval}" != xyes ; then
339 GDK_PIXBUF_CONF_DIR="${withval}"
341 GDK_PIXBUF_CONF_DIR="$GDK_PIXBUF_PREFIXDIR/etc/gtk-2.0/"
345 AS_AC_EXPAND(GDK_PIXBUF_CONF_DIR, $GDK_PIXBUF_CONF_DIR)
346 AC_SUBST(GDK_PIXBUF_CONF_DIR)
347 AC_MSG_NOTICE([Putting GTK+-2 pixbuf loader config in $GDK_PIXBUF_CONF_DIR])
349 AM_CONDITIONAL(HAVE_GDK_LOADERS, test "x$HAVE_GDK_LOADERS" = "xyes")
351 PKG_CHECK_MODULES(LIBOIL, liboil-0.2, HAVE_LIBOIL=yes, HAVE_LIBOIL=no)
352 #PKG_CHECK_MODULES(LIBOIL, liboil-0.3 >= 0.3.0, HAVE_LIBOIL=yes, HAVE_LIBOIL=no)
353 AC_SUBST(LIBOIL_CFLAGS)
354 AC_SUBST(LIBOIL_LIBS)
355 if test "x${HAVE_LIBOIL}" = xyes ; then
356 #AC_DEFINE_UNQUOTED(HAVE_LIBOIL, 1, [Define if liboil is being used])
360 dnl ===========================================================================
361 dnl ============================= gst plug-ins ================================
362 dnl ===========================================================================
364 plugindir="\$(libdir)/gstreamer-$GST_MAJORMINOR"
367 GST_PLUGIN_LDFLAGS="-module -avoid-version -export-symbols-regex '[_]*(gst_|Gst|GST_).*' $GST_LIBS"
368 AC_SUBST(GST_PLUGIN_LDFLAGS)
370 dnl these are all the gst plug-ins, compilable without additional libs
384 dnl see if we can build C++ plug-ins
385 if test "x$HAVE_CXX" = "xyes"; then
386 GST_PLUGINS_ALL="$GST_PLUGINS_ALL"
388 AC_MSG_WARN([Not compiling plug-ins requiring C++ compiler])
391 AC_SUBST(GST_PLUGINS_ALL)
393 GST_PLUGINS_SELECTED=""
396 AC_HELP_STRING([--with-plugins],[comma-separated list of plug-ins to compile]),
397 [for i in `echo $withval | tr , ' '`; do
398 if echo $GST_PLUGINS_ALL | grep $i > /dev/null
400 GST_PLUGINS_SELECTED="$GST_PLUGINS_SELECTED $i"
402 echo "plug-in $i not recognized, ignoring..."
405 [GST_PLUGINS_SELECTED=$GST_PLUGINS_ALL])
407 AC_SUBST(GST_PLUGINS_SELECTED)
409 dnl ==========================================================================
410 dnl ============================= sys plug-ins ================================
411 dnl ==========================================================================
414 translit(dnm, m, l) AM_CONDITIONAL(USE_X, true)
415 GST_CHECK_FEATURE(X, [X libraries and plugins],
418 dnl now try to find the HEADER
419 AC_CHECK_HEADER(X11/Xlib.h, HAVE_X="yes", HAVE_X="no")
421 if test "x$HAVE_X" = "xno"
423 AC_MSG_NOTICE([cannot find X11 development files])
425 dnl this is much more than we want
426 X_LIBS="$X_LIBS $X_PRE_LIBS $X_EXTRA_LIBS"
427 dnl AC_PATH_XTRA only defines the path needed to find the X libs,
428 dnl it does not add the libs; therefore we add them here
429 X_LIBS="$X_LIBS -lX11"
437 dnl Look for the PIC library first, Debian requires it.
438 dnl Check debian-devel archives for gory details.
440 dnl At the moment XFree86 doesn't distribute shared libXv due
441 dnl to unstable API. On many platforms you CAN NOT link a shared
442 dnl lib to a static non-PIC lib. This is what the xvideo GStreamer
443 dnl plug-in wants to do. So Debian distributes a PIC compiled
444 dnl version of the static lib for plug-ins to link to when it is
445 dnl inappropriate to link the main application to libXv directly.
446 dnl FIXME: add check if this platform can support linking to a
447 dnl non-PIC libXv, if not then don not use Xv.
448 dnl FIXME: perhaps warn user if they have a shared libXv since
449 dnl this is an error until XFree86 starts shipping one
451 dnl Check for Xv extension
452 translit(dnm, m, l) AM_CONDITIONAL(USE_XVIDEO, true)
453 GST_CHECK_FEATURE(XVIDEO, [X11 XVideo extensions],
455 if test x$HAVE_X = xyes; then
456 AC_CHECK_LIB(Xv_pic, XvQueryExtension,
457 HAVE_XVIDEO="yes", HAVE_XVIDEO="no",
460 if test x$HAVE_XVIDEO = xyes; then
461 XVIDEO_LIBS="-lXv_pic -lXext"
462 AC_SUBST(XVIDEO_LIBS)
464 dnl try again using something else if we didn't find it first
465 if test x$HAVE_XVIDEO = xno; then
466 AC_CHECK_LIB(Xv, XvQueryExtension,
467 HAVE_XVIDEO="yes", HAVE_XVIDEO="no",
470 if test x$HAVE_XVIDEO = xyes; then
471 XVIDEO_LIBS="-lXv -lXext"
472 AC_SUBST(XVIDEO_LIBS)
480 translit(dnm, m, l) AM_CONDITIONAL(USE_XSHM, true)
481 GST_CHECK_FEATURE(XSHM, [X Shared Memory extension], xshm, [
482 if test x$HAVE_X = xyes; then
483 AC_CHECK_LIB(Xext, XShmAttach,
484 HAVE_XSHM="yes", HAVE_XSHM="no",
486 if test "x$HAVE_XSHM" = "xyes"; then
489 dnl On AIX, it is in XextSam instead, but we still need -lXext
490 AC_CHECK_LIB(XextSam, XShmAttach,
491 HAVE_XSHM="yes", HAVE_XSHM="no",
493 if test "x$HAVE_XSHM" = "xyes"; then
494 XSHM_LIBS="-lXext -lXextSam"
503 dnl v4l/v4l2 checks have been moved down because they require X
505 dnl *** Video 4 Linux ***
506 dnl for information about the header/define, see sys/v4l/gstv4lelement.h
507 dnl renamed to GST_V4L in accordance with V4L2 below
508 translit(dnm, m, l) AM_CONDITIONAL(USE_GST_V4L, true)
509 GST_CHECK_FEATURE(GST_V4L, [Video 4 Linux], v4lsrc v4lmjpegsrc v4lmjpegsink, [
512 if test "$HAVE_X" = "yes"
514 AC_CHECK_DECL(VID_TYPE_MPEG_ENCODER, HAVE_GST_V4L="yes", HAVE_GST_V4L="no", [
515 #include <sys/types.h>
516 #define _LINUX_TIME_H
518 #include <linux/videodev.h>
523 dnl *** Video 4 Linux 2 ***
524 dnl for information about the header/define, see sys/v4l2/gstv4l2element.h
525 dnl renamed to GST_V4L2 because of some conflict with kernel headers
526 translit(dnm, m, l) AM_CONDITIONAL(USE_GST_V4L2, true)
527 GST_CHECK_FEATURE(GST_V4L2, [Video 4 Linux 2], v4l2src, [
529 if test "$HAVE_X" = "yes"
531 AC_MSG_CHECKING([Checking for uptodate v4l2 installation])
533 #include <sys/types.h>
534 #include <linux/types.h>
535 #define _LINUX_TIME_H
537 #include <linux/videodev2.h>
538 #if defined(V4L2_MAJOR_VERSION) || defined(V4L2_MINOR_VERSION)
539 #error too early v4l2 version or no v4l2 at all
543 ], [ HAVE_GST_V4L2="yes" && AC_MSG_RESULT(yes)],
544 [ HAVE_GST_V4L2="no" && AC_MSG_RESULT(no) &&
545 AC_CHECK_HEADER(linux/videodev2.h,
546 [ AC_MSG_WARN([video4linux2 headers were found, but they're old. Please update v4l2 to compile the v4l2 plugins])],
547 [ AC_MSG_WARN([video4linux2 was not found])])
550 dnl check for missing v4l2_buffer declaration (see #135919)
551 if [ test x$HAVE_GST_V4L2 = xyes ]; then
553 AC_MSG_CHECKING(struct v4l2_buffer declaration)
555 #include <sys/types.h>
556 #include <linux/types.h>
557 #define _LINUX_TIME_H
559 #include <linux/videodev2.h>
561 struct v4l2_buffer buf;
564 ], [ AC_MSG_RESULT(yes) ], [ MISSING_DECL=1 && AC_MSG_RESULT(no) ])
565 if [ test x$MISSING_DECL = x1 ]; then
566 AC_DEFINE(GST_V4L2_MISSING_BUFDECL, 1, [struct v4l2_buffer missing])
571 dnl Next, check for the optional libraries:
572 dnl These are all libraries used in building plug-ins
573 dnl ================================================
574 dnl let's try and sort them alphabetically, shall we ?
576 if test "x$BUILD_EXTERNAL" = "xyes"; then
578 AC_MSG_NOTICE(Checking for plug-in dependency libraries)
581 translit(dnm, m, l) AM_CONDITIONAL(USE_ALSA, true)
582 GST_CHECK_FEATURE(ALSA, [alsa plug-ins], gstalsa, [
583 PKG_CHECK_MODULES(ALSA, alsa >= 0.9.1, [
585 AC_SUBST(ALSA_CFLAGS)
588 AM_PATH_ALSA(0.9.1, HAVE_ALSA="yes", HAVE_ALSA="no")
592 dnl *** CDParanoia ***
593 translit(dnm, m, l) AM_CONDITIONAL(USE_CDPARANOIA, true)
594 GST_CHECK_FEATURE(CDPARANOIA, [CDParanoia], cdparanoia, [
595 GST_CHECK_LIBHEADER(CDPARANOIA, cdda_interface,
598 CDPARANOIA_LIBS="-lcdda_interface -lcdda_paranoia"
600 FOUND_CDPARANOIA="yes")
601 if test "x$FOUND_CDPARANOIA" != "xyes";
603 GST_CHECK_LIBHEADER(CDPARANOIA, cdda_interface,
605 cdda/cdda_interface.h,
606 CDPARANOIA_LIBS="-lcdda_interface -lcdda_paranoia"
608 FOUND_CDPARANOIA="yes")
610 if test "x$HEADER_DIR" = "xyes";
612 AC_DEFINE_UNQUOTED(CDPARANOIA_HEADERS_IN_DIR, ,
613 defined if cdda headers are in a cdda/ directory)
615 AC_SUBST(CDPARANOIA_LIBS)
617 dnl FIXME : add second check somehow if that is necessary
618 dnl AC_CHECK_LIB(cdda_paranoia, paranoia_init, : , HAVE_CDPARANOIA=no, -lcdda_interface )
619 dnl AC_CHECK_HEADER(cdda_paranoia.h, :, HAVE_CDPARANOIA=no)
621 dnl *** Gnome VFS ***
622 translit(dnm, m, l) AM_CONDITIONAL(USE_GNOME_VFS, true)
623 GST_CHECK_FEATURE(GNOME_VFS, [Gnome VFS], gnomevfssrc, [
624 PKG_CHECK_MODULES(GNOME_VFS, gnome-vfs-2.0, HAVE_GNOME_VFS="yes", HAVE_GNOME_VFS="no")
625 AC_SUBST(GNOME_VFS_CFLAGS)
626 AC_SUBST(GNOME_VFS_LIBS)
629 dnl *** libvisual ***
630 translit(dnm, m, l) AM_CONDITIONAL(USE_LIBVISUAL, true)
631 GST_CHECK_FEATURE(LIBVISUAL, [libvisual visualization plugins], libvisual, [
632 PKG_CHECK_MODULES(LIBVISUAL, libvisual = 0.2.0, HAVE_LIBVISUAL="yes", HAVE_LIBVISUAL="no")
633 AC_SUBST(LIBVISUAL_CFLAGS)
634 AC_SUBST(LIBVISUAL_LIBS)
638 translit(dnm, m, l) AM_CONDITIONAL(USE_OGG, true)
639 GST_CHECK_FEATURE(OGG, [ogg de/encoder], oggdemux oggmux, [
640 PKG_CHECK_MODULES(OGG, ogg >= 1.0, [
645 XIPH_PATH_OGG(HAVE_OGG="yes", HAVE_OGG="no")
646 AS_SCRUB_INCLUDE(OGG_CFLAGS)
651 translit(dnm, m, l) AM_CONDITIONAL(USE_THEORA, true)
652 GST_CHECK_FEATURE(THEORA, [ogg theora codec], theoradec theoraenc, [
653 PKG_CHECK_MODULES(THEORA, theora, [
655 AC_SUBST(THEORA_LIBS)
656 AC_SUBST(THEORA_CFLAGS)
658 GST_CHECK_LIBHEADER(THEORA, theora, theora_version_string, "-logg", theora/theora.h, THEORA_LIBS="-ltheora -logg")
659 AC_SUBST(THEORA_LIBS)
664 dnl AM_PATH_VORBIS only takes two options
665 translit(dnm, m, l) AM_CONDITIONAL(USE_VORBIS, true)
666 GST_CHECK_FEATURE(VORBIS, [vorbis plug-in], vorbisenc vorbisdec, [
667 PKG_CHECK_MODULES(VORBIS, vorbis >= 1.0 vorbisenc >= 1.0, [
670 XIPH_PATH_VORBIS(HAVE_VORBIS="yes", HAVE_VORBIS="no")
671 AS_SCRUB_INCLUDE(VORBIS_CFLAGS)
674 if test "x$HAVE_VORBIS" = "xyes"; then
675 ac_cflags_save="$CFLAGS"
676 dnl FIXME: does this work on non-gcc? -- Company
677 CFLAGS="-Wall -Werror"
680 #include <vorbis/codec.h>
684 vorbis_synthesis_restart (v);
685 ]), HAVE_VSR=yes, HAVE_VSR=no)
686 if test "x$HAVE_VSR" = "xyes"; then
687 AC_DEFINE_UNQUOTED(HAVE_VORBIS_SYNTHESIS_RESTART, 1,
688 [defined if vorbis_synthesis_restart is present])
690 CFLAGS="$ac_cflags_save"
693 fi dnl of EXT plugins
695 dnl Check for atomic.h
696 dnl Note: use AC_CHECK_HEADER not AC_CHECK_HEADERS, because the latter
697 dnl defines the wrong default symbol as well (HAVE_ASM_ATOMIC_H)
698 AC_CHECK_HEADER(asm/atomic.h, HAVE_ATOMIC_H=yes, HAVE_ATOMIC_H=no)
699 dnl Do a compile to check that it has atomic_set (eg, linux 2.0 didn't)
700 if test x$HAVE_ATOMIC_H = xyes; then
702 #include "asm/atomic.h"
703 main() { atomic_t t; atomic_set(&t,0); atomic_inc(&t); atomic_add(1,&t);return 0;}
706 if test x$HAVE_ATOMIC_H = xyes; then
707 AC_MSG_WARN(Atomic reference counting is out of date: doing without.)
713 AC_MSG_WARN(Can't check properly for atomic reference counting. Assuming OK.)
718 dnl ######################################################################
719 dnl # Check command line parameters, and set shell variables accordingly #
720 dnl ######################################################################
722 AC_ARG_ENABLE(atomic,
723 AC_HELP_STRING([--enable-atomic],[use atomic reference counting header]),
724 [case "${enableval}" in
725 yes) USE_ATOMIC_H=$HAVE_ATOMIC_H;;
726 noset) USE_ATOMIC_H=$HAVE_ATOMIC_H;;
727 no) USE_ATOMIC_H=no;;
728 *) AC_MSG_ERROR(bad value ${enableval} for --enable-atomic) ;;
730 [USE_ATOMIC_H=$HAVE_ATOMIC_H]) dnl Default value
732 AC_ARG_ENABLE(profiling,
733 AC_HELP_STRING([--enable-profiling],
734 [-pg to compiler commandline, for profiling]),
735 [case "${enableval}" in
736 yes) USE_PROFILING=yes ;;
737 no) UES_PROFILING=no ;;
738 *) AC_MSG_ERROR(bad value ${enableval} for --enable-profiling) ;;
740 [USE_PROFILING=no]) dnl Default value
743 AC_HELP_STRING([--disable-tests],[disable building test apps]),
744 [case "${enableval}" in
745 yes) BUILD_TESTS=yes ;;
746 no) BUILD_TESTS=no ;;
747 *) AC_MSG_ERROR(bad value ${enableval} for --disable-tests) ;;
749 [BUILD_TESTS=yes]) dnl Default value
751 AC_ARG_ENABLE(examples,
752 AC_HELP_STRING([--disable-examples],[disable building examples]),
753 [case "${enableval}" in
754 yes) BUILD_EXAMPLES=yes ;;
755 no) BUILD_EXAMPLES=no ;;
756 *) AC_MSG_ERROR(bad value ${enableval} for --disable-examples) ;;
758 [BUILD_EXAMPLES=yes]) dnl Default value
760 dnl seeking needs freetype, so check for it here
761 PKG_CHECK_MODULES(FT2, freetype2 >= 2.0.9, HAVE_FT2="yes", [
762 AC_CHECK_FT2(2.0.9, HAVE_FT2="yes", HAVE_FT2="no")
764 dnl make the HAVE_FT2 variable available to automake and Makefile.am
765 AM_CONDITIONAL(HAVE_FT2, test "x$HAVE_FT2" = "xyes")
769 dnl ################################################
770 dnl # Set defines according to variables set above #
771 dnl ################################################
774 if test "x$USE_ATOMIC_H" = xyes; then
775 AC_DEFINE(HAVE_ATOMIC_H, 1, [Define if atomic.h header file is available])
778 # do not use deprecated stuff
779 GST_CFLAGS="$GST_CFLAGS -DGST_DISABLE_DEPRECATED"
781 if test "x$USE_DEBUG" = xyes; then
782 GST_CFLAGS="$GST_CFLAGS -g"
785 dnl #############################
786 dnl # Set automake conditionals #
787 dnl #############################
789 dnl These should be "USE_*" instead of "HAVE_*", but some packages expect
790 dnl HAVE_ and it is likely to be easier to stick with the old name
791 AM_CONDITIONAL(HAVE_ATOMIC_H, test "x$USE_ATOMIC_H" = "xyes")
793 AM_CONDITIONAL(EXPERIMENTAL, test "$EXPERIMENTAL" = "$xyes")
794 AM_CONDITIONAL(BROKEN, test "$BROKEN" = "$xyes")
796 AM_CONDITIONAL(HAVE_NASM, test "x$HAVE_NASM" = "xyes")
797 AM_CONDITIONAL(HAVE_GTK, test "x$HAVE_GTK" = "xyes")
798 AM_CONDITIONAL(HAVE_GTK_DOC, $HAVE_GTK_DOC)
799 AM_CONDITIONAL(BUILD_DOCS, test "x$BUILD_DOCS" = "xyes")
800 AM_CONDITIONAL(BUILD_TESTS, test "x$BUILD_TESTS" = "xyes")
801 AM_CONDITIONAL(BUILD_EXAMPLES, test "x$BUILD_EXAMPLES" = "xyes")
802 AM_CONDITIONAL(BUILD_PLUGIN_DOCS, test "x$BUILD_PLUGIN_DOCS" = "xyes")
803 AM_CONDITIONAL(HAVE_FIG2DEV_PNG, $HAVE_FIG2DEV_PNG)
804 AM_CONDITIONAL(HAVE_FIG2DEV_PDF, $HAVE_FIG2DEV_PDF)
805 AM_CONDITIONAL(HAVE_RAW1394, test "x$HAVE_RAW1394" = "xyes")
807 dnl prefer internal headers to already installed ones
808 dnl also add builddir include for enumtypes and marshal
809 GST_CFLAGS="-I\$(top_srcdir)/gst-libs -I\$(top_builddir)/gst-libs $GST_CFLAGS $GST_ERROR"
814 dnl ###########################
815 dnl # Configure external libs #
816 dnl ###########################
818 dnl ############################
819 dnl # Set up some more defines #
820 dnl ############################
822 dnl set license and copyright notice
823 AC_DEFINE(GST_LICENSE, "LGPL", [GStreamer license])
825 dnl package name in plugins
826 AC_ARG_WITH(package-name,
827 AC_HELP_STRING([--with-package-name],[specify package name to use in plugins]),
828 [case "${withval}" in
829 yes) AC_MSG_ERROR(bad value ${withval} for --with-package-name) ;;
830 no) AC_MSG_ERROR(bad value ${withval} for --with-package-name) ;;
831 *) GST_PACKAGE="${withval}" ;;
835 if test "x$GST_CVS" = "xyes"
838 GST_PACKAGE="GStreamer CVS/prerelease"
840 GST_PACKAGE="GStreamer source release"
844 AC_MSG_NOTICE(Using $GST_PACKAGE as package name)
845 AC_DEFINE_UNQUOTED(GST_PACKAGE, "$GST_PACKAGE", [package name in plugins])
847 dnl package origin URL
848 AC_ARG_WITH(package-origin,
849 AC_HELP_STRING([--with-package-origin],[specify package origin URL to use in plugins]),
850 [case "${withval}" in
851 yes) AC_MSG_ERROR(bad value ${withval} for --with-package-origin) ;;
852 no) AC_MSG_ERROR(bad value ${withval} for --with-package-origin) ;;
853 *) GST_ORIGIN="${withval}" ;;
855 [GST_ORIGIN="http://gstreamer.freedesktop.org/"]) dnl Default value
856 AC_MSG_NOTICE(Using $GST_ORIGIN as package origin)
857 AC_DEFINE_UNQUOTED(GST_ORIGIN, "$GST_ORIGIN", [package origin])
859 dnl #########################
860 dnl # Make the output files #
861 dnl #########################
865 gst-plugins-base.spec
868 gst/audioconvert/Makefile
869 gst/audioscale/Makefile
870 gst/ffmpegcolorspace/Makefile
871 gst/playback/Makefile
875 gst/typefind/Makefile
876 gst/videotestsrc/Makefile
882 ext/cdparanoia/Makefile
883 ext/gnomevfs/Makefile
884 ext/libvisual/Makefile
889 gst-libs/gst/Makefile
890 gst-libs/gst/audio/Makefile
891 gst-libs/gst/colorbalance/Makefile
892 gst-libs/gst/floatcast/Makefile
893 gst-libs/gst/gconf/Makefile
894 gst-libs/gst/mixer/Makefile
895 gst-libs/gst/navigation/Makefile
896 gst-libs/gst/propertyprobe/Makefile
897 gst-libs/gst/riff/Makefile
898 gst-libs/gst/tag/Makefile
899 gst-libs/gst/tuner/Makefile
900 gst-libs/gst/video/Makefile
901 gst-libs/gst/xoverlay/Makefile
902 gst-libs/ext/Makefile
903 examples/seeking/Makefile
907 gconf/gstreamer.schemas
909 pkgconfig/gstreamer-gconf.pc
910 pkgconfig/gstreamer-gconf-uninstalled.pc
911 pkgconfig/gstreamer-interfaces.pc
912 pkgconfig/gstreamer-interfaces-uninstalled.pc
913 pkgconfig/gstreamer-libs.pc
914 pkgconfig/gstreamer-libs-uninstalled.pc
915 pkgconfig/gstreamer-plugins.pc
916 pkgconfig/gstreamer-plugins-uninstalled.pc
922 dnl disabled until it actually passes make distcheck
924 dnl docs/libs/Makefile
925 dnl docs/version.entities
928 echo -n "configure: *** Plug-ins that will be built :"
929 echo -e "$GST_PLUGINS_YES" | sort
931 echo -n "configure: *** Plug-ins that will not be built :"
932 echo -e "$GST_PLUGINS_NO" | sort
934 if test "x$BUILD_EXTERNAL" = "xno"; then
935 echo "configure: *** No external plug-ins will be built"