configure.ac 42.3 KB
Newer Older
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1
dnl autoconf configuration file for gst-plugins 
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
2 3 4
AC_INIT
AC_CANONICAL_TARGET([])

5 6 7 8 9
dnl We disable static building for development, for time savings
dnl this goes before AS_LIBTOOL to appease autoconf
dnl *NOTE*: dnl this line before release, so release does static too
AM_DISABLE_STATIC

10 11 12
dnl AM_MAINTAINER_MODE only provides the option to configure to enable it
AM_MAINTAINER_MODE

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
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, GST_PLUGINS_VERSION, 0, 7, 0, 1, GST_CVS="no", GST_CVS="yes")
16
AM_INIT_AUTOMAKE($PACKAGE,$VERSION)
17 18 19 20 21 22 23 24 25 26 27

dnl our libraries and install dirs use major.minor as a version
GST_MAJORMINOR=$GST_PLUGINS_VERSION_MAJOR.$GST_PLUGINS_VERSION_MINOR
AC_SUBST(GST_MAJORMINOR)

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_PLUGINS, 1, 0, 0)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
28

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
29 30 31
dnl FIXME take something else ?
AC_CONFIG_SRCDIR([gst/law/alaw.c])
AM_CONFIG_HEADER(config.h)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
32

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
33 34
dnl Add parameters for aclocal
dnl (This must come after AM_INIT_AUTOMAKE, since it modifies ACLOCAL)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
35 36
ACLOCAL_FLAGS="-I m4 -I common/m4"
AC_SUBST(ACLOCAL_AMFLAGS, $ACLOCAL_FLAGS)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
37

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
38 39 40 41
AC_PROG_CC
AM_PROG_CC_STDC
AM_PROG_AS
AS="${CC}"
42 43

dnl decide on error flags
44
AS_COMPILER_FLAG(-Wall, GST_WALL="yes", GST_WALL="no")
45

46 47 48 49 50 51 52 53 54 55 56 57 58
if test "x$GST_WALL" = "xyes"; then
   GST_ERROR="$GST_ERROR -Wall"

   if test "x$GST_CVS" = "xyes"; then
     AS_COMPILER_FLAG(-Werror,GST_ERROR="$GST_ERROR -Werror",GST_ERROR="$GST_ERROR")
   fi

   dnl set gcc-style optimization flags if using the gnu compiler.
   GST_FUNROLL_CFLAGS="$GST_FUNROLL_CFLAGS -funroll-all-loops"
   GST_FINLINE_CFLAGS="$GST_FINLINE_CFLAGS -finline-functions"
   GST_FFASTMATH_CFLAGS="$GST_FFASTMATH_CFLAGS -ffast-math"
   GST_FSCHEDULE_CFLAGS="$GST_FSCHEDULE_CFLAGS -fschedule-insns2"
   GST_FNOEXCEPTIONS_CFLAGS="$GST_FNOEXCEPTIONS_CFLAGS -fno-exceptions"
59 60
fi

61
dnl determine c++ compiler
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
62
AC_PROG_CXX
63 64 65
dnl determine if c++ is available on this system
AC_CHECK_PROG(HAVE_CXX, $CXX, yes, no)
dnl determine c++ preprocessor
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
66 67 68 69 70
AC_PROG_CXXCPP
AC_ISC_POSIX

AC_HEADER_STDC([])

71 72 73 74 75 76 77 78
dnl ############################################
dnl # Super Duper options for plug-in building #
dnl ############################################

dnl ext plug-ins; plug-ins that have external dependencies
GST_CHECK_FEATURE(EXTERNAL, [enable building of plug-ins with external deps],,
[HAVE_EXTERNAL=yes],enabled,
[
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
79
  AC_MSG_WARN(building external plug-ins)
80 81 82 83 84
  BUILD_EXTERNAL="yes"
],[
  AC_MSG_WARN(all plug-ins with external dependencies will not be built)
  BUILD_EXTERNAL="no"
])
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
85 86
# make BUILD_EXTERNAL available to Makefile.am
AM_CONDITIONAL(BUILD_EXTERNAL, test "x$BUILD_EXTERNAL" = "xyes")
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
87

88
dnl experimental plug-ins; stuff that hasn't had the dust settle yet
89
dnl read 'builds, but might not work'UTO
90
GST_CHECK_FEATURE(EXPERIMENTAL, [enable building of experimental plug-ins],,
91 92
[HAVE_EXPERIMENTAL=yes],disabled,
[
93
  AC_MSG_WARN(building experimental plug-ins)
94
  USE_TARKIN="yes"
95
  USE_SHOUT2="yes"
96
],[
97
  AC_MSG_NOTICE(not building experimental plug-ins)
98
  USE_TARKIN="no"
99
  USE_SHOUT2="no"
100
])
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
101

102 103
dnl broken plug-ins; stuff that doesn't seem to build at the moment
GST_CHECK_FEATURE(BROKEN, [enable building of broken plug-ins],,
104 105
HAVE_BROKEN=yes,disabled,
[  
106
  AC_MSG_WARN([building broken plug-ins -- no bug reports on these, only patches :)])
107
  USE_SMOOTHWAVE="yes"
108
  USE_VGA="yes"
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
109
  USE_XMMS="yes"
110
],[
111
  USE_SMOOTHWAVE="no"
112
  USE_VGA="no"
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
113
  USE_XMMS="no"
Andy Wingo Wingo's avatar
Andy Wingo Wingo committed
114
  AC_MSG_NOTICE([not building broken plug-ins])
115
])
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
116 117 118 119 120 121 122 123

dnl ##############################
dnl # Do automated configuration #
dnl ##############################

dnl Check for tools:
dnl ================

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
124 125 126
dnl allow for different autotools
AS_AUTOTOOLS_ALTERNATE()

127 128 129 130 131
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}])

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
132 133 134 135 136 137 138 139 140 141 142
dnl Check for nasm
AC_PATH_PROG(NASM_PATH, nasm, no)
AC_SUBST(NASM_PATH)
if test x$NASM_PATH = xno; then
  AC_MSG_WARN(Couldn't find nasm)
  HAVE_NASM="no"
else
  AC_DEFINE(HAVE_NASM, 1, [Define if NASM, the netwide assembler, is available])
  HAVE_NASM="yes"
fi

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
143 144 145
dnl check for gconftool-2
translit(dnm, m, l) AM_CONDITIONAL(USE_GCONFTOOL, true)
GST_CHECK_FEATURE(GCONFTOOL, [GConf schemas], , [
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
146 147 148
  AC_PATH_PROG(GCONFTOOL, gconftool-2, no)
  if test x$GCONFTOOL = xno; then
    AC_MSG_WARN(Not installing GConf schemas)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
149
    HAVE_GCONFTOOL="no"
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
150 151
  else
    AM_GCONF_SOURCE_2
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
152
    HAVE_GCONFTOOL="yes"
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
153
  fi
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
154 155 156 157 158 159 160 161 162
  AC_SUBST(HAVE_GCONFTOOL)
])

dnl check for GConf libraries
translit(dnm, m, l) AM_CONDITIONAL(USE_GCONF, true)
GST_CHECK_FEATURE(GCONF, [GConf libraries], , [
  PKG_CHECK_MODULES(GCONF, gconf-2.0, HAVE_GCONF="yes", HAVE_GCONF="no")
  AC_SUBST(GCONF_CFLAGS)
  AC_SUBST(GCONF_LIBS)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
163
])
164

165
dnl check for gstreamer; uninstalled is selected preferentially -- see pkg-config(1)
166
PKG_CHECK_MODULES(GST, gstreamer-$GST_MAJORMINOR >= $GST_PLUGINS_VERSION_MAJOR.$GST_PLUGINS_VERSION_MINOR.$GST_PLUGINS_VERSION_MICRO,
167
  HAVE_GST="yes", HAVE_GST="no")
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
168

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
169 170 171
if test "x$HAVE_GST" = "xno"; then
  AC_MSG_ERROR(no GStreamer found)
fi
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
172

173
GST_TOOLS_DIR=`pkg-config --variable=toolsdir gstreamer-$GST_MAJORMINOR`
174 175 176 177 178
if test -z $GST_TOOLS_DIR; then
  AC_MSG_ERROR([no tools dir defined in GStreamer pkg-config file; core upgrade needed.])
fi
AC_SUBST(GST_TOOLS_DIR)

179 180 181 182 183 184 185 186
dnl check for gstreamer-control; uninstalled is selected preferentially
PKG_CHECK_MODULES(GST_CONTROL, gstreamer-control-$GST_MAJORMINOR >= $GST_PLUGINS_VERSION_MAJOR.$GST_PLUGINS_VERSION_MINOR.$GST_PLUGINS_VERSION_MICRO,
  HAVE_GST_CONTROL="yes", HAVE_GST_CONTROL="no")

if test "x$HAVE_GST_CONTROL" = "xno"; then
  AC_MSG_ERROR(no GStreamer Control Libs found)
fi

187 188
AC_SUBST(GST_CONTROL_LIBS)

189

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
190 191 192 193 194 195 196 197 198 199 200
dnl Set up conditionals for (target) architecture:
dnl ==============================================

dnl Determine CPU
case "x${target_cpu}" in
  xi?86 | k?) HAVE_CPU_I386=yes
              AC_DEFINE(HAVE_CPU_I386, 1, [Define if the target CPU is an x86])
              dnl FIXME could use some better detection
              dnl       (ie CPUID)
              case "x${target_cpu}" in
                xi386 | xi486) ;;
David I. Lehn's avatar
David I. Lehn committed
201
                *)             AC_DEFINE(HAVE_RDTSC, 1, [Define if RDTSC is available]) ;;
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219
              esac ;;
  xpowerpc)   HAVE_CPU_PPC=yes
              AC_DEFINE(HAVE_CPU_PPC, 1, [Define if the target CPU is a PPC]) ;;
  xalpha)     HAVE_CPU_ALPHA=yes
              AC_DEFINE(HAVE_CPU_ALPHA, 1, [Define if the target CPU is an Alpha]) ;;
  xarm*)      HAVE_CPU_ARM=yes
              AC_DEFINE(HAVE_CPU_ARM, 1, [Define if the target CPU is an ARM]) ;;
  xsparc*)    HAVE_CPU_SPARC=yes
              AC_DEFINE(HAVE_CPU_SPARC, 1, [Define if the target CPU is a PPC]) ;;
  xmips*)     HAVE_CPU_MIPS=yes
              AC_DEFINE(HAVE_CPU_MIPS, 1, [Define if the target CPU is a MIPS]) ;;
  xhppa*)     HAVE_CPU_HPPA=yes
              AC_DEFINE(HAVE_CPU_HPPA, 1, [Define if the target CPU is a HPPA]) ;;
esac

dnl Determine endianness
AC_C_BIGENDIAN

220 221 222 223
dnl Check for fast float to int casting as defined in C99
AC_C99_FUNC_LRINT()
AC_C99_FUNC_LRINTF()

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
224 225 226
dnl Check for essential libraries first:
dnl ====================================

227
GST_GLIB2_CHECK()
Andy Wingo Wingo's avatar
Andy Wingo Wingo committed
228 229 230
PKG_CHECK_MODULES(GTK2, gtk+-2.0, HAVE_GTK=yes, HAVE_GTK=no)
GTK_CFLAGS=$GTK2_CFLAGS
GTK_LIBS=$GTK2_LIBS
231 232
AC_SUBST(GTK_LIBS)
AC_SUBST(GTK_CFLAGS)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
233

234

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
235 236 237
dnl Check for X11 extensions
AC_PATH_XTRA
if test "-DX_DISPLAY_MISSING" = "$X_CFLAGS"; then
Andy Wingo Wingo's avatar
Andy Wingo Wingo committed
238
  AC_MSG_NOTICE([cannot find X11, the build system needs fixage])
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
239 240 241 242 243 244
fi
AC_SUBST(X_CFLAGS)
AC_SUBST(X_PRE_LIBS)
AC_SUBST(X_EXTRA_LIBS)
AC_SUBST(X_LIBS)

245 246 247
dnl ===========================================================================
dnl ============================= gst plug-ins ================================
dnl ===========================================================================
248

249 250
GST_PLUGIN_LDFLAGS='-module -avoid-version'
AC_SUBST(GST_PLUGIN_LDFLAGS)
251

252
dnl these are all the gst plug-ins, compilable without additional libs
253
GST_PLUGINS_ALL="\
254
        ac3parse adder audioscale auparse avi asfdemux audioconvert cdxaparse chart\
255
        cutter deinterlace effectv festival filter flx goom\
256
        intfloat law level\
Wim Taymans's avatar
Wim Taymans committed
257
        median mixmatrix mpeg1enc mpeg1sys mpeg1videoparse mpeg2enc mpeg2sub\
258
        mpegaudio mpegaudioparse mpegstream mpegtypes\
Christian Schaller's avatar
Christian Schaller committed
259
        monoscope oneton passthrough playondemand qtdemux rtp rtjpeg silence sine\
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
260
        smooth smpte spectrum speed stereo stereomono synaesthesia\
David Schleef's avatar
David Schleef committed
261
        udp vbidec videocrop videoflip videoscale videotestsrc volenv volume\ 
Iain Holmes's avatar
Iain Holmes committed
262
        vumeter wavenc wavparse y4m"
263 264 265 266

dnl see if we can build C++ plug-ins
if test "x$HAVE_CXX" = "xyes"; then
  GST_PLUGINS_ALL="$GST_PLUGINS_ALL \
Jeremy Simon's avatar
Jeremy Simon committed
267
                  modplug monkeyaudio"
268
else
269
  AC_MSG_WARN([Not compiling plug-ins requiring C++ compiler])
270
fi
271 272 273 274 275 276

AC_SUBST(GST_PLUGINS_ALL)

GST_PLUGINS_SELECTED=""

AC_ARG_WITH(plugins,
277
    AC_HELP_STRING([--with-plugins],[comma-separated list of plug-ins to compile]),
278 279 280 281
    [for i in `echo $withval | tr , ' '`; do
        if test -n `echo $i | grep $GST_PLUGINS_ALL`; then
            GST_PLUGINS_SELECTED="$GST_PLUGINS_SELECTED $i"
        else
282
            echo "plug-in $i not recognized, ignoring..."
283 284 285 286 287
        fi
    done],
    [GST_PLUGINS_SELECTED=$GST_PLUGINS_ALL])

AC_SUBST(GST_PLUGINS_SELECTED)
288

289
dnl ==========================================================================
290
dnl ============================= sys plug-ins ================================
291 292
dnl ==========================================================================

293 294
dnl *** DXR3 card ***
translit(dnm, m, l) AM_CONDITIONAL(USE_DXR3, true)
295 296 297 298 299 300 301 302 303
GST_CHECK_FEATURE(DXR3, [DXR3 hardware MPEG DVD decoder],
  dxr3videosink dxr3audiosink dxr3spusink, [
  HAVE_DXR3=yes
  AC_CHECK_HEADER(linux/em8300.h, ,
                  [ AC_MSG_WARN([DXR3/em8300 header file not found]) &&
                    HAVE_DXR3=no ] )
  AC_CHECK_HEADER(linux/soundcard.h, ,
                  [ AC_MSG_WARN([Generic sound header file not found]) &&
                    HAVE_DXR3=no ] )
304 305
])

306 307 308 309 310 311
dnl *** OSS audio ***
translit(dnm, m, l) AM_CONDITIONAL(USE_OSS, true)
GST_CHECK_FEATURE(OSS, [OSS audio], osssrc osssink, [
  AC_CHECK_HEADER(sys/soundcard.h, HAVE_OSS="yes", HAVE_OSS="no")
])

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
312 313
dnl *** QuickCam ***
translit(dnm, m, l) AM_CONDITIONAL(USE_QCAM, true)
314
GST_CHECK_FEATURE(QCAM, [QuickCam], qcamsrc, [
315
  if test "x$HAVE_CPU_I386" != "xyes";
316 317 318
  then
    HAVE_QCAM="no"
  else
319 320 321 322 323
    AC_CHECK_HEADER(sys/io.h, HAVE_QCAM="yes", HAVE_QCAM="no")
  fi
  if test "x$HAVE_QCAM" != "xyes";
  then
    AC_MSG_WARN([QuickCam only works on i386-linux])
324 325
  fi
])
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
326

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
327
dnl *** Video 4 Linux ***
328
dnl for information about the header/define, see sys/v4l/gstv4lelement.h
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
329
translit(dnm, m, l) AM_CONDITIONAL(USE_V4L, true)
330
GST_CHECK_FEATURE(V4L, [Video 4 Linux], v4lsrc v4lmjpegsrc v4lmjpegsink, [
331 332 333 334 335
  AC_CHECK_DECL(VID_TYPE_MPEG_ENCODER, HAVE_V4L="yes", HAVE_V4L="no", [
#include <sys/types.h>
#define _LINUX_TIME_H
#include <linux/videodev.h>
  ])
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
336 337
])

338
dnl *** Video 4 Linux 2***
339
dnl for information about the header/define, see sys/v4l2/gstv4l2element.h
340 341
translit(dnm, m, l) AM_CONDITIONAL(USE_V4L2, true)
GST_CHECK_FEATURE(V4L2, [Video 4 Linux 2], v4l2src, [
342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357
  AC_MSG_CHECKING([Checking for uptodate v4l2 installation])
  AC_TRY_COMPILE([
#include <sys/types.h>
#include <linux/types.h>
#define _LINUX_TIME_H
#include <linux/videodev2.h>
#if defined(V4L2_MAJOR_VERSION) || defined(V4L2_MINOR_VERSION)
#error too early v4l2 version or no v4l2 at all
#endif
  ], [
return 0;
  ], [ HAVE_V4L2="yes" && AC_MSG_RESULT(yes)],
     [ HAVE_V4L2="no"  && AC_MSG_RESULT(no) &&
       AC_CHECK_HEADER(linux/videodev2.h,
                       [ AC_MSG_WARN([video4linux2 headers were found, but they're old. Please update v4l2 to compile the v4l2 plugins])],
                       [ AC_MSG_WARN([video4linux2 was not found])])])
358 359
])

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
360 361 362 363 364 365
dnl *** Video CD ***
translit(dnm, m, l) AM_CONDITIONAL(USE_VCD, true)
GST_CHECK_FEATURE(VCD, [Video CD], vcdsrc, [
  AC_CHECK_HEADER(linux/cdrom.h, HAVE_VCD="yes", HAVE_VCD="no")
])

366
dnl *** VGA ***
367 368 369
translit(dnm, m, l) AM_CONDITIONAL(USE_VGA, true)
GST_CHECK_FEATURE(VGA, [VGA], vgavideosink, [
  AC_CHECK_HEADER(asm/vga.h, HAVE_VGA="yes", HAVE_VGA="no")
370 371
])

372 373 374
dnl *** CDROM Audio ***
translit(dnm, m, l) AM_CONDITIONAL(USE_CDROM, true)
GST_CHECK_FEATURE(CDROM, [CDROM Audio], cdrom, [
375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403
  AC_CHECK_HEADERS(linux/cdrom.h) dnl linux
  AC_CHECK_HEADERS(sys/cdio.h) dnl almost everything else
dnl  AC_CHECK_HEADERS(dmedia/cdaudio.h) dnl irix

  if test "${ac_cv_header_linux_cdrom_h}" = "yes" || test "${ac_cv_header_sys_cdio_h}" = "yes" || test "${ac_cv_header_dmedia_cdaudio_h}" = "yes"; then
	case "$host" in 
		*-sun-* | *-*-linux*)
			AC_DEFINE(HAVE_CDROM_SOLARIS,, [Define if cdrom access is in Solaris style])
		;;
		*-*-freebsd*)
			AC_DEFINE(HAVE_CDROM_BSD,, [Define if cdrom access is in BSD style])
		;;
		*-*-netbsd* | *-*-openbsd*)
			AC_DEFINE(HAVE_CDROM_BSD,, [Define if cdrom access is in BSD style])
			AC_DEFINE(HAVE_CDROM_BSD_NETBSD,, [Define if cdrom access uses NetBSD variant])
		;;
		*-*darwin*)
			AC_DEFINE(HAVE_CDROM_BSD,, [Define if cdrom access is in BSD style])
			AC_DEFINE(HAVE_CDROM_BSD_DARWIN,, [Define if cdrom access uses Darwin variant])
		;;
dnl		*-irix-*)
dnl			AC_DEFINE(HAVE_CDROM_IRIX,, [Define if cdrom access is in Irix DMedia style])
dnl		;;
    esac

	HAVE_CDROM="yes"
  else
	HAVE_CDROM="no"
  fi
404 405
])

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
406
dnl *** XVideo ***
407 408 409 410 411 412
dnl Look for the PIC library first, Debian requires it.
dnl Check debian-devel archives for gory details.
dnl 20020110:
dnl At the moment XFree86 doesn't distribute shared libXv due
dnl to unstable API.  On many platforms you CAN NOT link a shared
dnl lib to a static non-PIC lib.  This is what the xvideo GStreamer
413 414
dnl plug-in wants to do.  So Debian distributes a PIC compiled
dnl version of the static lib for plug-ins to link to when it is
415 416 417 418 419
dnl inappropriate to link the main application to libXv directly.
dnl FIXME: add check if this platform can support linking to a
dnl        non-PIC libXv, if not then don not use Xv.
dnl FIXME: perhaps warn user if they have a shared libXv since
dnl        this is an error until XFree86 starts shipping one
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
420
translit(dnm, m, l) AM_CONDITIONAL(USE_XVIDEO, true)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
421

422
GST_CHECK_FEATURE(XVIDEO, [X11 XVideo extensions], xvideosink, [
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
423 424 425 426
  dnl use X_CFLAGS for check
  save_FLAGS=$CFLAGS
  CFLAGS=$X_CFLAGS

427
  dnl check for PIC static lib
428
  GST_CHECK_LIBHEADER(XVIDEO, Xv_pic, XvQueryExtension, $X_LIBS $X_PRE_LIBS -lXext -lX11 $X_EXTRA_LIBS, X11/extensions/Xv.h, XVIDEO_LIBS="-lXv_pic -lXext")
429 430
  if test x$HAVE_XVIDEO = xno; then
    dnl PIC lib not found, check for regular lib
431
    GST_CHECK_LIBHEADER(XVIDEO, Xv, XvQueryExtension, $X_LIBS $X_PRE_LIBS -lXext -lX11 $X_EXTRA_LIBS, X11/extensions/Xv.h, XVIDEO_LIBS="-lXv -lXext")
432
  fi
433
  AC_SUBST(XVIDEO_LIBS)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
434 435 436

  dnl restore CFLAGS
  CFLAGS=$save_CFLAGS
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
437
])
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
438 439

dnl Next, check for the optional libraries:
440
dnl These are all libraries used in building plug-ins
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
441 442 443
dnl ================================================
dnl let's try and sort them alphabetically, shall we ?

444 445 446
if test "x$BUILD_EXTERNAL" = "xyes"; then

AC_MSG_NOTICE(Checking for plug-in dependency libraries)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
447

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
448 449 450
dnl *** a52dec ***
translit(dnm, m, l) AM_CONDITIONAL(USE_A52DEC, true)
GST_CHECK_FEATURE(A52DEC, [a52dec], a52dec, [
451
  AC_CHECK_A52DEC(HAVE_A52DEC=yes, HAVE_A52DEC=no)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
452 453 454 455
])

dnl *** aalib ***
translit(dnm, m, l) AM_CONDITIONAL(USE_AALIB, true)
456
GST_CHECK_FEATURE(AALIB, [aasink plug-in], aasink, [
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
457
  AM_PATH_AALIB(, HAVE_AALIB=yes, HAVE_AALIB=no)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
458
  AS_SCRUB_INCLUDE(AALIB_CFLAGS)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
459 460 461 462
])

dnl *** alsa ***
translit(dnm, m, l) AM_CONDITIONAL(USE_ALSA, true)
463
GST_CHECK_FEATURE(ALSA, [alsa plug-ins], gstalsa, [
464
   AM_PATH_ALSA(0.9.0, HAVE_ALSA=yes, HAVE_ALSA=no)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
465 466 467
])

dnl *** arts ***
468 469
dnl if mcopidl can't be found there's no use in compiling it
AC_CHECK_PROG(MCOPIDL, mcopidl, yes, no)
470
if test "x$HAVE_MCOPIDL" = "xno";
471 472 473 474
then
  USE_ARTS=no
fi

475
translit(dnm, m, l) AM_CONDITIONAL(USE_ARTS, true)
476
GST_CHECK_FEATURE(ARTS, [arts plug-ins], arts, [
477 478
  AM_PATH_ARTS(, HAVE_ARTS=yes, HAVE_ARTS=no)
])
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
479 480

dnl *** artsc ***
481
translit(dnm, m, l) AM_CONDITIONAL(USE_ARTSC, true)
482
GST_CHECK_FEATURE(ARTSC, [artsd plug-ins], artsdsink, [
483 484
  GST_CHECK_ARTSC()
])
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
485 486 487

dnl *** audiofile ***
dnl this check uses the GST_CHECK_CONFIGPROG macro
488 489 490 491
translit(dnm, m, l) AM_CONDITIONAL(USE_AUDIOFILE, true)
GST_CHECK_FEATURE(AUDIOFILE, [audiofile], afsink afsrc, [
  translit(dnm, m, l) AC_SUBST(AUDIOFILE_LIBS)
  translit(dnm, m, l) AC_SUBST(AUDIOFILE_CFLAGS)
492 493 494 495 496 497
  dnl check with pkg-config first
  PKG_CHECK_MODULES(AUDIOFILE, audiofile, HAVE_AUDIOFILE="yes", HAVE_AUDIOFILE="no")
  if test "x$HAVE_AUDIOFILE" = "xno"; then
    GST_CHECK_CONFIGPROG(AUDIOFILE, audiofile-config)
    dnl we need this function
    AC_CHECK_LIB(audiofile, afOpenVirtualFile, , HAVE_AUDIOFILE="no")
498
  fi])
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
499 500 501 502

dnl *** CDParanoia ***
translit(dnm, m, l) AM_CONDITIONAL(USE_CDPARANOIA, true)
GST_CHECK_FEATURE(CDPARANOIA, [CDParanoia], cdparanoia, [
503 504 505 506
  GST_CHECK_LIBHEADER(CDPARANOIA, cdda_interface, 
                      cdda_open, -lm, 
                      cdda_interface.h, 
                      CDPARANOIA_LIBS="-lcdda_interface -lcdda_paranoia"
507 508 509 510 511 512 513 514 515 516 517
                      HEADER_DIR="no"
                      FOUND_CDPARANOIA="yes")
  if test "x$FOUND_CDPARANOIA" != "xyes";
  then
    GST_CHECK_LIBHEADER(CDPARANOIA, cdda_interface, 
                        cdda_open, -lm, 
                        cdda/cdda_interface.h, 
                        CDPARANOIA_LIBS="-lcdda_interface -lcdda_paranoia"
                        HEADER_DIR="yes"
                        FOUND_CDPARANOIA="yes")
  fi
518 519 520 521 522
  if test "x$HEADER_DIR" = "xyes";
  then
    AC_DEFINE_UNQUOTED(CDPARANOIA_HEADERS_IN_DIR, ,
                       defined if cdda headers are in a cdda/ directory)
  fi
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
523
  AC_SUBST(CDPARANOIA_LIBS)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
524 525 526 527 528
])
dnl FIXME : add second check somehow if that is necessary
dnl AC_CHECK_LIB(cdda_paranoia, paranoia_init, : , HAVE_CDPARANOIA=no, -lcdda_interface )
dnl AC_CHECK_HEADER(cdda_paranoia.h, :, HAVE_CDPARANOIA=no)

529 530 531 532 533
dnl *** DIVX ***
translit(dnm, m, l) AM_CONDITIONAL(USE_DIVX, true)
GST_CHECK_FEATURE(DIVX, [divx plugins], divx, [
  HAVE_DIVX=yes
  AC_CHECK_HEADER(encore2.h, ,
534 535
                  [ AC_MSG_WARN([Divx4linux encore headers not found]) &&
                    HAVE_DIVX=no ] )
536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566
  if [ test x$HAVE_DIVX = xyes ]; then
    AC_MSG_CHECKING([Checking for valid divx4linux encore version])
    AC_TRY_COMPILE([
#include <encore2.h>
#if ENCORE_VERSION != 20021024
#error Wrong version of divx encore libraries
#endif
    ], [
return 0;
    ], [ HAVE_DIVX=yes && AC_MSG_RESULT(yes)],
       [ HAVE_DIVX=no  && AC_MSG_RESULT(no) &&
         AC_MSG_WARN([Wrong version of divx4linux installed]) ])
  fi
  if [ test x$HAVE_DIVX = xyes ]; then
    AC_CHECK_HEADER(decore.h, ,
                    [ AC_MSG_WARN([Divx4linux decoder headers not found]) &&
                      HAVE_DIVX=no ] )
  fi
  if [ test x$HAVE_DIVX = xyes ]; then
    AC_MSG_CHECKING([Checking for valid divx4linux decore version])
    AC_TRY_COMPILE([
#include <decore.h>
#if DECORE_VERSION != 20021112
#error Wrong version of divx decore libraries
#endif
    ], [
return 0;
    ], [ HAVE_DIVX=yes && AC_MSG_RESULT(yes)],
       [ HAVE_DIVX=no  && AC_MSG_RESULT(no) &&
         AC_MSG_WARN([Wrong version of divx4linux installed]) ])
  fi
567
  LIBS="-lm"
568 569 570 571 572 573 574 575 576 577
  if test x$HAVE_DIVX = xyes; then
    AC_CHECK_LIB(divxencore, encore, ,
                 [ AC_MSG_WARN([Divx4linux encore libs not found]) &&
                   HAVE_DIVX=no ] )
  fi
  if test x$HAVE_DIVX = xyes; then
    AC_CHECK_LIB(divxdecore, decore, ,
                 [ AC_MSG_WARN([Divx4linux decore libs not found]) &&
                   HAVE_DIVX=no ] )
  fi
578 579 580 581 582 583
  if test x$HAVE_DIVX = xyes; then
    DIVXENC_LIBS="-ldivxencore -lm"
    DIVXDEC_LIBS="-ldivxdecore -lm"
    AC_SUBST(DIVXENC_LIBS)
    AC_SUBST(DIVXDEC_LIBS)
  fi
584 585
])

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
586
dnl *** dvdread ***
587
translit(dnm, m, l) AM_CONDITIONAL(USE_DVDREAD, true)
588
GST_CHECK_FEATURE(DVDREAD, [dvdread library], dvdreadsrc, [
589 590
  GST_CHECK_LIBHEADER(DVDREAD, dvdread, DVDOpen, , dvdread/dvd_reader.h, DVDREAD_LIBS="-ldvdread")
  AC_SUBST(DVDREAD_LIBS)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
591 592
])

593 594 595 596 597 598
dnl *** dvdnav ***
translit(dnm, m, l) AM_CONDITIONAL(USE_DVDNAV, true)
GST_CHECK_FEATURE(DVDNAV, [dvdnav library], dvdnavsrc, [
  translit(dnm, m, l) AC_SUBST(DVDNAV_LIBS)
  translit(dnm, m, l) AC_SUBST(DVDNAV_CFLAGS)
  GST_CHECK_CONFIGPROG(DVDNAV, dvdnav-config)
599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615
  if test x"$HAVE_DVDNAV" = x"yes"; then
    dnl check version
    DVDNAV_VERSION=`dvdnav-config --version|head -n 1|sed 's/^.*) //'|sed 's/ (.*)//'`
    DVDNAV_MAJOR=`echo $DVDNAV_VERSION | cut -d. -f1 | sed s/[a-zA-Z\-].*//g`
    DVDNAV_MINOR=`echo $DVDNAV_VERSION | cut -d. -f2 | sed s/[a-zA-Z\-].*//g`
    DVDNAV_MICRO=`echo $DVDNAV_VERSION | cut -d. -f3 | sed s/[a-zA-Z\-].*//g`
    if [[ "$DVDNAV_MAJOR" -eq "0" ]] && \
       [[ "$DVDNAV_MINOR" -lt "1" ]]; then
      AC_MSG_WARN([libdvdnav >= 0.1.7 is required, you have $DVDNAV_VERSION])
      HAVE_DVDNAV="no"
    elif [[ "$DVDNAV_MAJOR" -eq "0" ]] && \
         [[ "$DVDNAV_MINOR" -eq "1" ]] && \
         [[ "$DVDNAV_MICRO" -lt "7" ]]; then
      AC_MSG_WARN([libdvdnav >= 0.1.7 is required, you have $DVDNAV_VERSION])
      HAVE_DVDNAV="no"
      fi
    fi
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
616
  AS_SCRUB_INCLUDE(DVDNAV_CFLAGS)
617 618
])

619 620 621 622 623 624 625 626 627
dnl *** MAS ***
translit(dnm, m, l) AM_CONDITIONAL(USE_MAS, true)
GST_CHECK_FEATURE(MAS, [mas library], massink, [
  translit(dnm, m, l) AC_SUBST(MAS_LIBS)
  translit(dnm, m, l) AC_SUBST(MAS_CFLAGS)
  GST_CHECK_CONFIGPROG(MAS, mas-config)
  AS_SCRUB_INCLUDE(MAS_CFLAGS)
])

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
628
dnl **** ESound ****
629
translit(dnm, m, l) AM_CONDITIONAL(USE_ESD, true)
630
GST_CHECK_FEATURE(ESD, [esound plug-ins], esdsink esdmon, [
631
  AM_PATH_ESD(0.2.12, HAVE_ESD=yes, HAVE_ESD=no)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
632
  AS_SCRUB_INCLUDE(ESD_CFLAGS)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
633 634
])

635
dnl **** festival ****
636
dnl translit(dnm, m, l) AM_CONDITIONAL(USE_FESTIVAL, true)
637
dnl GST_CHECK_FEATURE(FESTIVAL, [festival plug-ins], festivalsrc, [
638 639 640 641 642 643 644 645 646 647 648
  dnl NOTE: just using local net connection now, add this lib check
  dnl       in the future if needed
  dnl AC_LANG_PUSH(C++)
  dnl dnl FIXME: took out func to check for
  dnl dnl This check puts festival_tidy_up in extern "C".
  dnl dnl But, at least on Debian as of 20020110, it is compiled with name
  dnl dnl mangling C++ nonsense and symbols can't resolve
  dnl dnl GST_CHECK_LIBHEADER(FESTIVAL, Festival, festival_tidy_up, , festival/festival.h, FESTIVAL_LIBS="-lFestival")
  dnl GST_CHECK_LIBHEADER(FESTIVAL, Festival, , , festival/festival.h, FESTIVAL_LIBS="-lFestival")
  dnl AC_LANG_POP(C++)
  dnl AC_SUBST(FESTIVAL_LIBS)
649 650
dnl  HAVE_FESTIVAL=yes
dnl])
651

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
652
dnl *** FLAC ***
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
653 654
translit(dnm, m, l) AM_CONDITIONAL(USE_FLAC, true)
GST_CHECK_FEATURE(FLAC, [FLAC lossless audio], flacenc flacdec, [
Jeremy Simon's avatar
Jeremy Simon committed
655
  GST_CHECK_LIBHEADER(FLAC, FLAC, FLAC__seekable_stream_encoder_new, -lm, FLAC/all.h, FLAC_LIBS="-lFLAC")
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
656
  AC_SUBST(FLAC_LIBS)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
657 658
])

659 660 661
dnl *** FFMPEG ***
translit(dnm, m, l) AM_CONDITIONAL(USE_FFMPEG, true)
GST_CHECK_FEATURE(FFMPEG, [ffmpeg plug-ins], ffmpeg, [
662 663 664 665
  # only slurp in the case where we are in CVS mode;
  # prerelease and release should get it disted
  if test "x$GST_PLUGINS_VERSION_NANO" = x1; then
    AC_MSG_NOTICE(slurping FFmpeg CVS source)
666
    AS_SLURP_FFMPEG(gst-libs/ext/ffmpeg, 2003-06-09 22:00 GMT,
667 668 669 670 671
                    HAVE_FFMPEG=yes, HAVE_FFMPEG=no)
  else
    AC_MSG_NOTICE(FFmpeg CVS code should be included already)
    HAVE_FFMPEG=yes
  fi
672 673 674
  # we only bother with uninstalled (included) ffmpeg for now
  AC_DEFINE_UNQUOTED(HAVE_FFMPEG_UNINSTALLED, 1,
                     [defined if we use uninstalled ffmpeg])
675 676
])

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
677 678 679
dnl *** Gnome VFS ***
translit(dnm, m, l) AM_CONDITIONAL(USE_GNOME_VFS, true)
GST_CHECK_FEATURE(GNOME_VFS, [Gnome VFS], gnomevfssrc, [
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
680 681 682
  PKG_CHECK_MODULES(GNOME_VFS, gnome-vfs-2.0, HAVE_GNOME_VFS="yes", HAVE_GNOME_VFS="no")
  AC_SUBST(GNOME_VFS_CFLAGS)
  AC_SUBST(GNOME_VFS_LIBS)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
683 684 685
])

dnl *** gsm ***
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
686 687
translit(dnm, m, l) AM_CONDITIONAL(USE_GSM, true)
GST_CHECK_FEATURE(GSM, [GSM library], gsmenc gsmdec, [
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
688
  GST_CHECK_LIBHEADER(GSM, gsm, gsm_create, , gsm.h, GSM_LIBS="-lgsm")
Andy Wingo Wingo's avatar
Andy Wingo Wingo committed
689 690 691
  if test $HAVE_GSM != "yes"; then
    GST_CHECK_LIBHEADER(GSM, gsm, gsm_create, , gsm/gsm.h, GSM_LIBS="-lgsm")
    if test $HAVE_GSM = "yes"; then 
David I. Lehn's avatar
David I. Lehn committed
692
      AC_DEFINE(GSM_HEADER_IN_SUBDIR, 1, [Define if GSM header in gsm/ subdir])
Andy Wingo Wingo's avatar
Andy Wingo Wingo committed
693 694
    fi
  fi
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
695
  AC_SUBST(GSM_LIBS)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
696 697 698
])

dnl *** Hermes ***
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
699 700 701 702
translit(dnm, m, l) AM_CONDITIONAL(USE_HERMES, true)
GST_CHECK_FEATURE(HERMES, [Hermes library], colorspace, [
  GST_CHECK_LIBHEADER(HERMES, Hermes, Hermes_ConverterInstance, , Hermes/Hermes.h, HERMES_LIBS="-lHermes")
], AC_SUBST(HERMES_LIBS))
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
703

704
dnl *** http ***
Christian Schaller's avatar
Christian Schaller committed
705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721
dnl translit(dnm, m, l) AM_CONDITIONAL(USE_HTTP, true)
dnl GST_CHECK_FEATURE(HTTP, [http plug-ins], gsthttpsrc, [
dnl  dnl FIXME: need to check for header
dnl  GHTTP_LIBS=
dnl  GST_HTTPSRC_GET_TYPE=
dnl  if test x$USE_GLIB2 = xyes; then
dnl    AC_MSG_WARN(ghttp disabled for glib2.0)
dnl  else
dnl    AC_CHECK_LIB(ghttp, ghttp_request_new,
dnl      [HTTP_LIBS="-lghttp"
dnl       GST_HTTPSRC_GET_TYPE="gst_httpsrc_get_type"
dnl       HAVE_HTTP=yes
dnl      ], :, $LIBS)
dnl  fi
dnl  AC_SUBST(HTTP_LIBS)
dnl  AC_SUBST(GST_HTTPSRC_GET_TYPE)
dnl ])
722

723 724 725 726 727 728 729 730
dnl *** ivorbis ***
dnl AM_PATH_IVORBIS only takes two options
translit(dnm, m, l) AM_CONDITIONAL(USE_IVORBIS, true)
GST_CHECK_FEATURE(IVORBIS, [integer vorbis plug-in], ivorbisdec, [
  XIPH_PATH_IVORBIS(HAVE_IVORBIS=yes, HAVE_IVORBIS=no)
  AS_SCRUB_INCLUDE(IVORBIS_CFLAGS)
])

731 732
dnl *** Jack ***
translit(dnm, m, l) AM_CONDITIONAL(USE_JACK, true)
Andy Wingo Wingo's avatar
Andy Wingo Wingo committed
733 734
GST_CHECK_FEATURE(JACK, Jack, jack, [
  PKG_CHECK_MODULES(JACK, jack >= 0.29.0, HAVE_JACK="yes", HAVE_JACK="no")
735 736 737 738 739 740 741 742 743 744 745 746 747
  AC_SUBST(JACK_CFLAGS)
  AC_SUBST(JACK_LIBS)
])

dnl *** jpeg ***
dnl FIXME: we could use header checks here as well IMO
translit(dnm, m, l) AM_CONDITIONAL(USE_JPEG, true)
GST_CHECK_FEATURE(JPEG, [jpeg], jpegenc jpegdec, [
  AC_CHECK_LIB(jpeg, jpeg_set_defaults, HAVE_JPEG="yes", HAVE_JPEG="no")
  JPEG_LIBS="-ljpeg"
  AC_SUBST(JPEG_LIBS)
])

748 749 750 751 752 753
dnl *** ladspa ***
translit(dnm, m, l) AM_CONDITIONAL(USE_LADSPA, true)
GST_CHECK_FEATURE(LADSPA, [ladspa], ladspa, [
  AC_CHECK_HEADER(ladspa.h, HAVE_LADSPA="yes", HAVE_LADSPA="no")
])

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
754
dnl *** lame ***
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
755 756
translit(dnm, m, l) AM_CONDITIONAL(USE_LAME, true)
GST_CHECK_FEATURE(LAME, [lame mp3 encoder library], lame, [
757
  GST_CHECK_LIBHEADER(LAME, mp3lame, lame_init, -lm, lame/lame.h, HAVE_LAME="yes" LAME_LIBS="-lmp3lame")
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
758
])
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
759
AC_SUBST(LAME_LIBS)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
760

761 762 763 764 765 766 767 768
dnl *** libcolorspace ***
translit(dnm, m, l) AM_CONDITIONAL(USE_LCS, true)
GST_CHECK_FEATURE(LCS, Lcs, lcs, [
  PKG_CHECK_MODULES(LCS, lcs, HAVE_LCS="yes", HAVE_LCS="no")
  AC_SUBST(LCS_CFLAGS)
  AC_SUBST(LCS_LIBS)
])

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
769 770 771 772 773 774 775 776
dnl *** libdv ***
translit(dnm, m, l) AM_CONDITIONAL(USE_LIBDV, true)
GST_CHECK_FEATURE(LIBDV, [libdv DV/video decoder], dvdec, [
  PKG_CHECK_MODULES(LIBDV, libdv >= 0.98, HAVE_LIBDV="yes", HAVE_LIBDV="no")
  AC_SUBST(LIBDV_CFLAGS)
  AC_SUBST(LIBDV_LIBS)
])

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
777 778 779 780 781 782 783 784
dnl *** libfame ***
translit(dnm, m, l) AM_CONDITIONAL(USE_LIBFAME, true)
GST_CHECK_FEATURE(LIBFAME, [libfame MPEG1/4 encoder], libfame, [
  AM_PATH_LIBFAME(0.9.0, HAVE_LIBFAME="yes", HAVE_LIBFAME="no")
  AC_SUBST(LIBFAME_CFLAGS)
  AC_SUBST(LIBFAME_LIBS)
])

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
785 786 787 788 789 790 791 792 793
dnl *** libpng ***
translit(dnm, m, l) AM_CONDITIONAL(USE_LIBPNG, true)
GST_CHECK_FEATURE(LIBPNG, [libpng PNG encoder], pngenc, [
  PKG_CHECK_MODULES(LIBPNG, libpng12, HAVE_LIBPNG="yes", HAVE_LIBPNG="no")
  AC_SUBST(LIBPNG_CFLAGS)
  AC_SUBST(LIBPNG_LIBS)
])


Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
794 795
dnl *** mad ***
dnl FIXME: we could use header checks here as well IMO
796 797
translit(dnm, m, l) AM_CONDITIONAL(USE_MAD, true)
GST_CHECK_FEATURE(MAD, [mad mp3 decoder], mad, [
798 799 800 801 802 803 804 805 806 807 808 809 810
  dnl check with pkg-config first
  PKG_CHECK_MODULES(MAD, mad id3tag, HAVE_MAD="yes", HAVE_MAD="no")
  if test "x$HAVE_MAD" = "xno"; then
    dnl fall back to oldskool detection
    AC_CHECK_LIB(mad, mad_decoder_finish, HAVE_MAD="yes" MAD_LIBS="-lmad")
    if test "x$HAVE_MAD" = "xyes"; then
      # installed with mad >= 0.14
      HAVE_MAD="no"
      save_libs=$LIBS
      LIBS="-lz"
      AC_CHECK_LIB(id3tag, id3_tag_query, HAVE_MAD="yes" MAD_LIBS="$MAD_LIBS -lid3tag")
      LIBS=$save_LIBS
    fi
Andy Wingo Wingo's avatar
Andy Wingo Wingo committed
811
  fi    
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
812
])
813
AC_SUBST(MAD_LIBS)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
814 815

dnl *** mikmod ***
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
816
translit(dnm, m, l) AM_CONDITIONAL(USE_MIKMOD, true)
817
GST_CHECK_FEATURE(MIKMOD, [mikmod plug-in], mikmod, [
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
818 819 820
  AM_PATH_LIBMIKMOD(, HAVE_MIKMOD=yes, HAVE_MIKMOD=no)
  AC_SUBST(MIKMOD_LIBS, "$LIBMIKMOD_LIBS")
  AC_SUBST(MIKMOD_CFLAGS, "$LIBMIKMODCFLAGS")
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
821 822
])

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
823 824 825 826
dnl *** mjpegtools ***
translit(dnm, m, l) AM_CONDITIONAL(USE_MJPEGTOOLS, true)
GST_CHECK_FEATURE(MJPEGTOOLS, [mjpegtools], jpegmmxenc jpegmmxdec, [
  PKG_CHECK_MODULES(MJPEGTOOLS, mjpegtools, HAVE_MJPEGTOOLS="yes", HAVE_MJPEGTOOLS="no")
827 828 829 830 831 832

  if [ test x$HAVE_MJPEGTOOLS = x"yes" ]; then
    dnl some headers we might want to need
    AC_CHECK_HEADERS(stdint.h, HAVE_STDINT_H="yes", HAVE_STDINT_H="no")
    if [ test x$HAVE_STDINT_H = x"no" ]; then
      AC_CHECK_HEADERS(inttypes.h sys/types.h, HAVE_INTTYPES_H="yes", [
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
833
        AC_MSG_WARN(No valid header files found, mjpegtools plugins disabled)
834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863
        HAVE_INTTYPES_H="no" HAVE_MJPEGTOOLS="no"
      ])
    fi
    AC_CHECK_HEADERS(stdbool.h, HAVE_STDBOOL_H="yes", HAVE_STDBOOL_H="no")

    dnl sizeof PRId64 etc...
    AC_CHECK_SIZEOF(int)
    AC_CHECK_SIZEOF(long)
    AC_CHECK_SIZEOF(long long)
    case 8 in
    $ac_cv_sizeof_int)
      PRID64_STRING_FORMAT="d"
      ;;
    $ac_cv_sizeof_long)
      PRID64_STRING_FORMAT="ld"
      ;;
    $ac_cv_sizeof_long_long)
      PRID64_STRING_FORMAT="lld"
      ;;
    *)
      AC_MSG_WARN(No suitable variant for 64bits integers found, mjpegtools plugins disabled)
      HAVE_MJPEGTOOLS="no"
      ;;
    esac

    AC_DEFINE_UNQUOTED(PRID64_STRING_FORMAT, "$PRID64_STRING_FORMAT",
      [ A printf type definition for 64 bit integers ])
    AC_SUBST(MJPEGTOOLS_LIBS)
    AC_SUBST(MJPEGTOOLS_CFLAGS)
  fi
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
864 865
])

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
866 867
dnl *** mpeg2dec ***
translit(dnm, m, l) AM_CONDITIONAL(USE_MPEG2DEC, true)
868
GST_CHECK_FEATURE(MPEG2DEC, [mpeg2dec], mpeg2dec, [
869
  PKG_CHECK_MODULES(MPEG2DEC, libmpeg2 >= 0.3.1,
870 871 872
      HAVE_MPEG2DEC="yes", HAVE_MPEG2DEC="no")
  AC_SUBST(MPEG2DEC_CFLAGS)
  AC_SUBST(MPEG2DEC_LIBS)
873
])
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
874

875 876 877 878 879
dnl *** openquicktime ***
translit(dnm, m, l) AM_CONDITIONAL(USE_OPENQUICKTIME, true)
GST_CHECK_FEATURE(OPENQUICKTIME, [Open Quicktime], quicktime_parser quicktime_decoder quicktime_demux,[
  GST_CHECK_LIBHEADER(OPENQUICKTIME, openquicktime, quicktime_init,, openquicktime/openquicktime.h, OPENQUICKTIME_LIBS="-lopenquicktime")
  AC_SUBST(OPENQUICKTIME_LIBS)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
880 881 882 883 884
])

dnl *** raw1394 ***
translit(dnm, m, l) AM_CONDITIONAL(USE_RAW1394, true)
GST_CHECK_FEATURE(RAW1394, [raw1394 library], dv1394src, [
885
  GST_CHECK_LIBHEADER(RAW1394, raw1394, raw1394_new_handle,, libraw1394/raw1394.h, RAW1394_LIBS="-lraw1394")
886
  AC_SUBST(RAW1394_LIBS)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
887 888 889
])

dnl *** SDL ***
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
890
translit(dnm, m, l) AM_CONDITIONAL(USE_SDL, true)
891
GST_CHECK_FEATURE(SDL, [SDL plug-in], sdlvideosink, [
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
892
 AM_PATH_SDL(, HAVE_SDL=yes, HAVE_SDL=no)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
893 894 895
])

dnl *** shout ***
896
translit(dnm, m, l) AM_CONDITIONAL(USE_SHOUT, true)
897
GST_CHECK_FEATURE(SHOUT, [shout plug-in], icecastsend, [
898 899
  GST_CHECK_LIBHEADER(SHOUT, shout, shout_init_connection,, shout/shout.h, SHOUT_LIBS="-lshout")
  AC_SUBST(SHOUT_LIBS)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
900 901
])

902 903
dnl *** shout2 *** 
translit(dnm, m, l) AM_CONDITIONAL(USE_SHOUT2, true)
904
GST_CHECK_FEATURE(SHOUT2, [shout2 plug-in], shout2send, [
David I. Lehn's avatar
David I. Lehn committed
905
  AM_PATH_SHOUT2(HAVE_SHOUT2=yes, HAVE_SHOUT2=no)
906 907
  AC_SUBST(SHOUT2_CFLAGS)
  AC_SUBST(SHOUT2_LIBS)
908 909
])

910 911
dnl *** sidplay ***
translit(dnm, m, l) AM_CONDITIONAL(USE_SIDPLAY, true)
912
GST_CHECK_FEATURE(SIDPLAY, [sidplay plug-in], sidplay, [
913
  GST_PATH_SIDPLAY()
914 915
])

916 917
dnl *** smoothwave ***
translit(dnm, m, l) AM_CONDITIONAL(USE_SMOOTHWAVE, true)
918
GST_CHECK_FEATURE(SMOOTHWAVE, [smoothwave plug-in], smoothwave, [
919 920 921
  if test $HAVE_GTK = "yes"; then HAVE_SMOOTHWAVE=yes; fi;
])

922 923 924

dnl *** snapshot ***
translit(dnm, m, l) AM_CONDITIONAL(USE_LIBPNG, true)
925
GST_CHECK_FEATURE(LIBPNG, [snapshot plug-in], snapshot, [
David I. Lehn's avatar
David I. Lehn committed
926
  GST_CHECK_LIBHEADER(LIBPNG, png, png_read_info, -lz -lm, png.h, LIBPNG_LIBS="-lpng -lz -lm")
927 928 929
  AC_SUBST(LIBPNG_LIBS)
])

930 931 932 933 934 935 936 937
dnl *** sndfile ***
translit(dnm, m, l) AM_CONDITIONAL(USE_SNDFILE, true)
GST_CHECK_FEATURE(SNDFILE, [sndfile plug-in], sfsrc sfsink, [
  PKG_CHECK_MODULES(SNDFILE, sndfile >= 1.0.0, HAVE_SNDFILE="yes", HAVE_SNDFILE="no")
  AC_SUBST(SNDFILE_CFLAGS)
  AC_SUBST(SNDFILE_LIBS)
])

David Schleef's avatar
David Schleef committed
938 939 940
dnl *** swfdec ***
translit(dnm, m, l) AM_CONDITIONAL(USE_SWFDEC, true)
GST_CHECK_FEATURE(SWFDEC, [swfdec plug-in], swfdec, [
941
  PKG_CHECK_MODULES(SWFDEC, swfdec >= 0.1.3.1, HAVE_SWFDEC=yes, HAVE_SWFDEC=no)
David Schleef's avatar
David Schleef committed
942 943 944 945
  AC_SUBST(SWFDEC_CFLAGS)
  AC_SUBST(SWFDEC_LIBS)
])

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
946
dnl *** tarkin ***
947
dnl for now the sources are included in the plug-in
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
948 949 950 951 952 953
dnl and should be moved to ext-libs/ perhaps
translit(dnm, m, l) AM_CONDITIONAL(USE_TARKIN, true)
GST_CHECK_FEATURE(TARKIN, [tarkinenc tarkindec], tarkin, [
  HAVE_TARKIN="yes"
])

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
954 955 956
dnl *** vorbis ***
dnl AM_PATH_VORBIS only takes two options
translit(dnm, m, l) AM_CONDITIONAL(USE_VORBIS, true)
957
GST_CHECK_FEATURE(VORBIS, [vorbis plug-in], vorbisenc vorbisdec, [
958
  XIPH_PATH_VORBIS(HAVE_VORBIS=yes, HAVE_VORBIS=no)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
959
  AS_SCRUB_INCLUDE(VORBIS_CFLAGS)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
960 961
])

Thomas Vander Stichele's avatar
xmms  
Thomas Vander Stichele committed
962 963
dnl *** XMMS ***
translit(dnm, m, l) AM_CONDITIONAL(USE_XMMS, true)
964
GST_CHECK_FEATURE(XMMS, [xmms plug-in], xmms, [
Thomas Vander Stichele's avatar
xmms  
Thomas Vander Stichele committed
965
  AM_PATH_XMMS(0.1.0, HAVE_XMMS=yes, HAVE_XMMS=no)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
966 967
])

968 969 970 971 972 973 974 975 976
dnl *** XVID ***
translit(dnm, m, l) AM_CONDITIONAL(USE_XVID, true)
GST_CHECK_FEATURE(XVID, [xvid plugins], xvid, [
  HAVE_XVID=yes
  AC_CHECK_HEADER(xvid.h, ,
                  [ AC_MSG_WARN([Xvid headers not found]) &&
                    HAVE_XVID=no ] )
  LIBS="-lm"
  AC_CHECK_LIB(xvidcore, xvid_encore, ,
977
               [ AC_MSG_WARN([Xvid encore libs not found]) &&
978
                 HAVE_XVID=no ] )
979 980 981 982 983 984 985
  AC_CHECK_LIB(xvidcore, xvid_decore, ,
               [ AC_MSG_WARN([Xvid decore libs not found]) &&
                 HAVE_XVID=no ] )
  if test x$HAVE_XVID = xyes; then
    XVID_LIBS="-lxvidcore -lm"
    AC_SUBST(XVID_LIBS)
  fi
986 987 988
])


989 990
fi dnl of EXT plugins

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012
dnl Check for atomic.h
dnl Note: use AC_CHECK_HEADER not AC_CHECK_HEADERS, because the latter
dnl defines the wrong default symbol as well (HAVE_ASM_ATOMIC_H)
AC_CHECK_HEADER(asm/atomic.h, HAVE_ATOMIC_H=yes, HAVE_ATOMIC_H=no)
dnl Do a compile to check that it has atomic_set (eg, linux 2.0 didn't)
if test x$HAVE_ATOMIC_H = xyes; then
  AC_TRY_RUN([
#include "asm/atomic.h"
main() { atomic_t t; atomic_set(&t,0); atomic_inc(&t); atomic_add(1,&t);return 0;}
  ],, [
    # Not successful
    if test x$HAVE_ATOMIC_H = xyes; then
      AC_MSG_WARN(Atomic reference counting is out of date: doing without.)
    fi
    HAVE_ATOMIC_H=no
  ], [
    # Cross compiling
    AC_MSG_RESULT(yes)
    AC_MSG_WARN(Can't check properly for atomic reference counting.  Assuming OK.)
  ])
fi

1013

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1014 1015 1016 1017
dnl ######################################################################
dnl # Check command line parameters, and set shell variables accordingly #
dnl ######################################################################

1018 1019
GST_DEBUGINFO

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1020
AC_ARG_ENABLE(libmmx,
1021
  AC_HELP_STRING([--enable-libmmx],[use libmmx, if available]),
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1022 1023 1024 1025 1026 1027 1028 1029
[case "${enableval}" in
  yes) USE_LIBMMX=$HAVE_LIBMMX ;;
  no)  USE_LIBMMX=no ;;
  *) AC_MSG_ERROR(bad value ${enableval} for --enable-libmmx) ;;
esac], 
[USE_LIBMMX=$HAVE_LIBMMX]) dnl Default value

AC_ARG_ENABLE(atomic,
1030
  AC_HELP_STRING([--enable-atomic],[use atomic reference counting header]),
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1031 1032 1033 1034 1035 1036 1037 1038 1039
[case "${enableval}" in
  yes) USE_ATOMIC_H=$HAVE_ATOMIC_H;;
  noset) USE_ATOMIC_H=$HAVE_ATOMIC_H;;
  no)  USE_ATOMIC_H=no;;
  *) AC_MSG_ERROR(bad value ${enableval} for --enable-atomic) ;;
esac], 
[USE_ATOMIC_H=$HAVE_ATOMIC_H]) dnl Default value

AC_ARG_ENABLE(profiling,
1040 1041
  AC_HELP_STRING([--enable-profiling],
                 [-pg to compiler commandline, for profiling]),
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1042 1043 1044 1045 1046 1047 1048 1049
[case "${enableval}" in
  yes) USE_PROFILING=yes ;;
  no)  UES_PROFILING=no ;;
  *) AC_MSG_ERROR(bad value ${enableval} for --enable-profiling) ;;
esac], 
[USE_PROFILING=no]) dnl Default value

AC_ARG_ENABLE(tests,
1050
  AC_HELP_STRING([--disable-tests],[disable building test apps]),
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1051 1052 1053 1054 1055 1056 1057 1058
[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

AC_ARG_ENABLE(examples,
1059
  AC_HELP_STRING([--disable-examples],[disable building examples]),
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1060 1061 1062 1063 1064 1065 1066
[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

1067 1068 1069 1070 1071 1072 1073
dnl seeking needs freetype, so check for it here
AC_CHECK_FT2(2.0.9,HAVE_FT2=yes,HAVE_FT2=no)
dnl make the HAVE_FT2 variable available to automake and Makefile.am
AM_CONDITIONAL(HAVE_FT2, test "x$HAVE_FT2" = "xyes")
AC_SUBST(FT2_CFLAGS)
AC_SUBST(FT2_LIBS)

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086
dnl ################################################
dnl # Set defines according to variables set above #
dnl ################################################


if test "x$USE_LIBMMX" = xyes; then
  AC_DEFINE(HAVE_LIBMMX, 1, [Define if libmmx is available])
fi

if test "x$USE_ATOMIC_H" = xyes; then
  AC_DEFINE(HAVE_ATOMIC_H, 1, [Define if atomic.h header file is available])
fi

1087 1088 1089
# do not use deprecated stuff
GST_CFLAGS="$GST_CFLAGS -DGST_DISABLE_DEPRECATED"

1090 1091 1092
if test "x$USE_DEBUG" = xyes; then
  GST_CFLAGS="$GST_CFLAGS -g"
fi
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133

if test "x$USE_PROFILING" = xyes; then
dnl  CFLAGS="$CFLAGS -pg -fprofile-arcs"
  FOMIT_FRAME_POINTER=""
else
  FOMIT_FRAME_POINTER="-fomit-frame-pointer"
fi

dnl
dnl AC_SUBST(FOMIT_FRAME_POINTER)
dnl

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(HAVE_CPU_I386,       test "x$HAVE_CPU_I386" = "xyes")
AM_CONDITIONAL(HAVE_CPU_PPC,        test "x$HAVE_CPU_PPC" = "xyes")
AM_CONDITIONAL(HAVE_CPU_ALPHA,      test "x$HAVE_CPU_ALPHA" = "xyes")
AM_CONDITIONAL(HAVE_CPU_ARM,        test "x$HAVE_CPU_ARM" = "xyes")
AM_CONDITIONAL(HAVE_CPU_SPARC,      test "x$HAVE_CPU_SPARC" = "xyes")
AM_CONDITIONAL(HAVE_LIBMMX,         test "x$USE_LIBMMX" = "xyes")

AM_CONDITIONAL(HAVE_ATOMIC_H,       test "x$USE_ATOMIC_H" = "xyes")

AM_CONDITIONAL(EXPERIMENTAL,        test "$EXPERIMENTAL" = "$xyes")
AM_CONDITIONAL(BROKEN,              test "$BROKEN" = "$xyes")

AM_CONDITIONAL(HAVE_NASM,           test "x$HAVE_NASM" = "xyes")
AM_CONDITIONAL(HAVE_GTK,            test "x$HAVE_GTK" = "xyes")
AM_CONDITIONAL(HAVE_GTK_DOC,        $HAVE_GTK_DOC)
AM_CONDITIONAL(BUILD_DOCS,          test "x$BUILD_DOCS" = "xyes")
AM_CONDITIONAL(BUILD_TESTS,         test "x$BUILD_TESTS" = "xyes")
AM_CONDITIONAL(BUILD_EXAMPLES,      test "x$BUILD_EXAMPLES" = "xyes")
AM_CONDITIONAL(BUILD_PLUGIN_DOCS,   test "x$BUILD_PLUGIN_DOCS" = "xyes")
AM_CONDITIONAL(HAVE_FIG2DEV_PNG,    $HAVE_FIG2DEV_PNG)
AM_CONDITIONAL(HAVE_FIG2DEV_PDF,    $HAVE_FIG2DEV_PDF)
AM_CONDITIONAL(HAVE_RAW1394,        test "x$HAVE_RAW1394" = "xyes")

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1134 1135
dnl prefer internal headers to already installed ones
GST_CFLAGS="-I\$(top_srcdir)/gst-libs $GST_CFLAGS $GST_ERROR"
1136
GST_OPT_CFLAGS="$GST_FINLINE_CFLAGS $GST_FFASTMATH_CFLAGS"
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1137

1138 1139
AC_SUBST(GST_LIBS)
AC_SUBST(GST_CFLAGS)
1140 1141 1142 1143 1144 1145
AC_SUBST(GST_FUNROLL_CFLAGS)
AC_SUBST(GST_FINLINE_CFLAGS)
AC_SUBST(GST_FFASTMATH_CFLAGS)
AC_SUBST(GST_FSCHEDULE_CFLAGS)
AC_SUBST(GST_FNOEXCEPTIONS_CFLAGS)
AC_SUBST(GST_OPT_CFLAGS)
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1146

1147 1148 1149 1150 1151 1152 1153
dnl ###########################
dnl # Configure external libs #
dnl ###########################
if test "x$HAVE_FFMPEG" = xyes; then
  AC_CONFIG_SUBDIRS(gst-libs/ext/ffmpeg/ffmpeg)
fi 

Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1154 1155 1156 1157
dnl #########################
dnl # Make the output files #
dnl #########################

Andy Wingo Wingo's avatar
Andy Wingo Wingo committed
1158
AC_CONFIG_FILES(
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1159
Makefile
1160 1161 1162 1163 1164 1165
pkgconfig/gstreamer-libs.pc
pkgconfig/gstreamer-libs-uninstalled.pc
pkgconfig/gstreamer-play.pc
pkgconfig/gstreamer-play-uninstalled.pc
gst-libs/gst/gconf/gstreamer-gconf.pc
gst-libs/gst/gconf/gstreamer-gconf-uninstalled.pc
Andy Wingo Wingo's avatar
Andy Wingo Wingo committed
1166
gst-plugins.spec
1167
gst/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1168 1169
gst/ac3parse/Makefile
gst/adder/Makefile
1170
gst/audioconvert/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1171 1172 1173
gst/audioscale/Makefile
gst/auparse/Makefile
gst/avi/Makefile
Christian Schaller's avatar
Christian Schaller committed
1174
gst/asfdemux/Makefile
1175
gst/cdxaparse/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1176 1177 1178
gst/chart/Makefile
gst/cutter/Makefile
gst/deinterlace/Makefile
Wim Taymans's avatar
Wim Taymans committed
1179
gst/effectv/Makefile
1180
gst/festival/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1181
gst/filter/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1182
gst/flx/Makefile
Wim Taymans's avatar
Wim Taymans committed
1183
gst/goom/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1184 1185 1186 1187
gst/intfloat/Makefile
gst/law/Makefile
gst/level/Makefile
gst/median/Makefile
Wim Taymans's avatar
Wim Taymans committed
1188
gst/mixmatrix/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1189 1190
gst/mpeg1enc/Makefile
gst/mpeg1sys/Makefile
1191
gst/mpeg1videoparse/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1192 1193 1194 1195 1196 1197
gst/mpeg2enc/Makefile
gst/mpeg2sub/Makefile
gst/mpegaudio/Makefile
gst/mpegaudioparse/Makefile
gst/mpegstream/Makefile
gst/mpegtypes/Makefile
Jeremy Simon's avatar
Jeremy Simon committed
1198 1199
gst/modplug/Makefile
gst/modplug/libmodplug/Makefile
Richard Boulton's avatar
Richard Boulton committed
1200
gst/monoscope/Makefile
Jeremy Simon's avatar
Jeremy Simon committed
1201 1202
gst/monkeyaudio/Makefile
gst/monkeyaudio/libmonkeyaudio/Makefile
Iain Holmes's avatar
Iain Holmes committed
1203
gst/oneton/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1204 1205
gst/passthrough/Makefile
gst/playondemand/Makefile
Artyom Baginski's avatar
Artyom Baginski committed
1206
gst/qtdemux/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1207
gst/rtjpeg/Makefile
1208
gst/rtp/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1209 1210 1211
gst/silence/Makefile
gst/sine/Makefile
gst/smooth/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1212
gst/smpte/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1213 1214 1215 1216 1217 1218
gst/spectrum/Makefile
gst/speed/Makefile
gst/stereo/Makefile
gst/stereomono/Makefile
gst/synaesthesia/Makefile
gst/udp/Makefile
1219
gst/vbidec/Makefile
David Schleef's avatar
David Schleef committed
1220 1221
gst/videocrop/Makefile
gst/videoflip/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1222
gst/videoscale/Makefile
David Schleef's avatar
David Schleef committed
1223
gst/videotestsrc/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1224 1225 1226
gst/volenv/Makefile
gst/volume/Makefile
gst/vumeter/Makefile
Iain Holmes's avatar
Iain Holmes committed
1227
gst/wavenc/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1228 1229
gst/wavparse/Makefile
gst/y4m/Makefile
1230
sys/Makefile
Wim Taymans's avatar
Wim Taymans committed
1231
sys/cdrom/Makefile
1232
sys/dxr3/Makefile
1233 1234 1235
sys/oss/Makefile
sys/qcam/Makefile
sys/v4l/Makefile
1236
sys/v4l2/Makefile
1237 1238 1239
sys/vcd/Makefile
sys/vga/Makefile
sys/xvideo/Makefile
1240
ext/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1241
ext/a52dec/Makefile
1242
ext/aalib/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1243
ext/alsa/Makefile
1244 1245
ext/arts/Makefile
ext/artsd/Makefile
1246
ext/audiofile/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1247
ext/cdparanoia/Makefile
1248
ext/divx/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1249
ext/dv/Makefile
1250
ext/dvdread/Makefile
1251
ext/dvdnav/Makefile
1252
ext/esd/Makefile
1253
ext/ffmpeg/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1254
ext/flac/Makefile
1255
ext/gnomevfs/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1256 1257
ext/gsm/Makefile
ext/hermes/Makefile
Christian Schaller's avatar
Christian Schaller committed
1258
dnl ext/http/Makefile
1259
ext/jack/Makefile
1260
ext/jpeg/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1261
ext/ladspa/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1262
ext/lame/Makefile
1263
ext/ivorbis/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1264 1265
ext/lcs/Makefile
ext/libfame/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1266
ext/libpng/Makefile
1267
ext/mad/Makefile
1268
ext/mas/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1269
ext/mikmod/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1270
ext/mjpegtools/Makefile
1271
ext/mpeg2dec/Makefile
1272
ext/openquicktime/Makefile
1273
ext/raw1394/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1274
ext/sdl/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1275
ext/shout/Makefile
1276
ext/shout2/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1277
ext/sidplay/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1278
ext/smoothwave/Makefile
1279
ext/snapshot/Makefile
1280
ext/sndfile/Makefile
David Schleef's avatar
David Schleef committed
1281
ext/swfdec/Makefile
1282
ext/vorbis/Makefile
Wim Taymans's avatar
Wim Taymans committed
1283
ext/tarkin/Makefile
Thomas Vander Stichele's avatar
xmms  
Thomas Vander Stichele committed
1284
ext/xmms/Makefile
1285
ext/xvid/Makefile
1286
gst-libs/Makefile
1287 1288
gst-libs/gst/Makefile
gst-libs/gst/audio/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1289 1290
gst-libs/gst/floatcast/Makefile
gst-libs/gst/gconf/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1291
gst-libs/gst/idct/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1292
gst-libs/gst/media-info/Makefile
1293
gst-libs/gst/play/Makefile
1294
gst-libs/gst/resample/Makefile
1295
gst-libs/gst/riff/Makefile
1296
gst-libs/gst/video/Makefile
1297 1298
gst-libs/ext/Makefile
gst-libs/ext/ffmpeg/Makefile
1299
examples/dynparams/Makefile
Andy Wingo Wingo's avatar
Andy Wingo Wingo committed
1300
examples/capsfilter/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1301
examples/seeking/Makefile
1302
examples/indexing/Makefile
Andy Wingo Wingo's avatar
Andy Wingo Wingo committed
1303
examples/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1304 1305
testsuite/autoplug/Makefile
testsuite/spider/Makefile
1306
testsuite/alsa/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1307
testsuite/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1308
tools/Makefile
1309
gconf/Makefile
1310
pkgconfig/Makefile
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1311
)
Andy Wingo Wingo's avatar
Andy Wingo Wingo committed
1312 1313
AC_OUTPUT

1314
echo -e "configure: *** Plug-ins that will be built : $GST_PLUGINS_YES"
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1315
echo
1316
echo -e "configure: *** Plug-ins that will not be built : $GST_PLUGINS_NO"
Thomas Vander Stichele's avatar
Thomas Vander Stichele committed
1317
echo
1318 1319 1320
if test "x$BUILD_EXTERNAL" = "xno"; then
  echo "configure: *** No external plug-ins will be built"
fi