2 AC_INIT(extension, 1.0)
4 dnl versions of gstreamer and plugins-base
10 dnl fill in your package name and version here
11 dnl the fourth (nano) number should be 0 for a release, 1 for CVS,
12 dnl and 2... for a prerelease
14 dnl when going to/from release please set the nano correctly !
15 dnl releases only do Wall, cvs and prerelease does Werror too
16 AS_VERSION(gst-plugin, GST_PLUGIN_VERSION, 0, 10, 0, 1,
17 GST_PLUGIN_CVS="no", GST_PLUGIN_CVS="yes")
19 dnl AM_MAINTAINER_MODE provides the option to enable maintainer mode
22 #AM_INIT_AUTOMAKE($PACKAGE, $VERSION)
25 #AC_CONFIG_MACRO_DIR([m4])
27 dnl make aclocal work in maintainer mode
28 dnl AC_SUBST(ACLOCAL_AMFLAGS, "-I m4")
30 dnl Add parameters for aclocal
31 AC_SUBST(ACLOCAL_AMFLAGS, "-I m4 -I common/m4")
33 AM_CONFIG_HEADER(config.h)
40 dnl decide on error flags
41 AS_COMPILER_FLAG(-Wall, GST_WALL="yes", GST_WALL="no")
43 if test "x$GST_WALL" = "xyes"; then
44 GST_ERROR="$GST_ERROR -Wall"
46 # if test "x$GST_PLUGIN_CVS" = "xyes"; then
47 # AS_COMPILER_FLAG(-Werror,GST_ERROR="$GST_ERROR -Werror",GST_ERROR="$GST_ERROR")
51 dnl Check for pkgconfig first
52 AC_CHECK_PROG(HAVE_PKGCONFIG, pkg-config, yes, no)
54 dnl Give error and exit if we don't have pkgconfig
55 if test "x$HAVE_PKGCONFIG" = "xno"; then
56 AC_MSG_ERROR(you need to have pkgconfig installed !)
59 dnl Now we're ready to ask for gstreamer libs and cflags
60 dnl And we can also ask for the right version of gstreamer
61 AM_CONDITIONAL([IS_VODA_SDK], [test "x$DISTRO" = "xvodafone-sdk"])
62 AM_CONDITIONAL([ISPROTECTOR_VODA_SDK], [test "x$DISTRO" = "xvodafone-sdk" && test "x$MACHINE" = "xprotector"])
63 AM_CONDITIONAL([ISVOLANS_VODA_SDK], [test "x$DISTRO" = "xvodafone-sdk" && test "x$MACHINE" = "xvolans"])
64 AM_CONDITIONAL([ISPROTECTOR_TARGET], [test "x$ARCH" = "xarm" && test "x$MACHINE" = "xprotector"])
65 AM_CONDITIONAL([ISVOLANS_TARGET], [test "x$ARCH" = "xarm" && test "x$MACHINE" = "xvolans"])
67 PKG_CHECK_MODULES(GST, \
68 gstreamer-$GST_MAJORMINOR >= $GST_REQUIRED,
69 HAVE_GST=yes,HAVE_GST=no)
71 dnl Give error and exit if we don't have gstreamer
72 if test "x$HAVE_GST" = "xno"; then
73 AC_MSG_ERROR(you need gstreamer development packages installed !)
76 dnl append GST_ERROR cflags to GST_CFLAGS
77 GST_CFLAGS="$GST_CFLAGS $GST_ERROR"
79 dnl make GST_CFLAGS and GST_LIBS available
80 PKG_CHECK_MODULES(GST, gstreamer-0.10 >= 0.10)
84 dnl make GST_MAJORMINOR available in Makefile.am
85 AC_SUBST(GST_MAJORMINOR)
87 dnl If we need them, we can also use the base class libraries
88 PKG_CHECK_MODULES(GST_BASE, gstreamer-base-$GST_MAJORMINOR >= $GST_REQUIRED,
89 HAVE_GST_BASE=yes, HAVE_GST_BASE=no)
91 dnl Give a warning if we don't have gstreamer libs
92 dnl you can turn this into an error if you need them
93 if test "x$HAVE_GST_BASE" = "xno"; then
94 AC_MSG_NOTICE(no GStreamer base class libraries found (gstreamer-base-$GST_MAJORMINOR))
97 dnl make _CFLAGS and _LIBS available
98 AC_SUBST(GST_BASE_CFLAGS)
99 AC_SUBST(GST_BASE_LIBS)
101 dnl If we need them, we can also use the gstreamer-plugins-base libraries
102 PKG_CHECK_MODULES(GSTPB_BASE,
103 gstreamer-plugins-base-$GST_MAJORMINOR >= $GSTPB_REQUIRED,
104 HAVE_GSTPB_BASE=yes, HAVE_GSTPB_BASE=no)
106 dnl Give a warning if we don't have gstreamer libs
107 dnl you can turn this into an error if you need them
108 if test "x$HAVE_GSTPB_BASE" = "xno"; then
109 AC_MSG_NOTICE(no GStreamer Plugins Base libraries found (gstreamer-plugins-base-$GST_MAJORMINOR))
112 dnl make _CFLAGS and _LIBS available
113 AC_SUBST(GSTPB_BASE_CFLAGS)
114 AC_SUBST(GSTPB_BASE_LIBS)
116 dnl If we need them, we can also use the gstreamer-controller libraries
117 PKG_CHECK_MODULES(GSTCTRL,
118 gstreamer-controller-$GST_MAJORMINOR >= $GSTPB_REQUIRED,
119 HAVE_GSTCTRL=yes, HAVE_GSTCTRL=no)
121 dnl Give a warning if we don't have gstreamer-controller
122 dnl you can turn this into an error if you need them
123 if test "x$HAVE_GSTCTRL" = "xno"; then
124 AC_MSG_NOTICE(no GStreamer Controller libraries found (gstreamer-controller-$GST_MAJORMINOR))
127 dnl make _CFLAGS and _LIBS available
128 AC_SUBST(GSTCTRL_CFLAGS)
129 AC_SUBST(GSTCTRL_LIBS)
131 dnl set the plugindir where plugins should be installed
132 if test "x${prefix}" = "x$HOME"; then
133 plugindir="$HOME/.gstreamer-$GST_MAJORMINOR/plugins"
135 plugindir="\$(libdir)/gstreamer-$GST_MAJORMINOR"
139 dnl set proper LDFLAGS for plugins
140 #GST_PLUGIN_LDFLAGS='-module -avoid-version -export-symbols-regex [_]*\(gst_\|Gst\|GST_\).*'
141 GST_PLUGIN_LDFLAGS='-module -avoid-version -export-symbols-regex [_]*\(gst_\|Gst\|GST_\|FIR_\|arkamys_malloc\|arkamys_free\).*'
142 #GST_PLUGIN_LDFLAGS='-module -avoid-version'
143 AC_SUBST(GST_PLUGIN_LDFLAGS)
146 PKG_CHECK_MODULES(GST_AUDIO, gstreamer-audio-$GST_MAJORMINOR >= $GST_REQUIRED )
149 dnl make _CFLAGS and _LIBS available
150 AC_SUBST(GST_AUDIO_CFLAGS)
151 AC_SUBST(GST_AUDIO_LIBS)
153 PKG_CHECK_MODULES(GST_VIDEO, gstreamer-video-$GST_MAJORMINOR >= $GST_REQUIRED)
155 dnl make _CFLAGS and _LIBS available
156 AC_SUBST(GST_VIDEO_CFLAGS)
157 AC_SUBST(GST_VIDEO_LIBS)
159 PKG_CHECK_MODULES(GST_INTERFACES, gstreamer-interfaces-$GST_MAJORMINOR >= $GST_REQUIRED)
160 AC_SUBST(GST_INTERFACES_CFLAGS)
161 AC_SUBST(GST_INTERFACES_LIBS)
163 dnl xvimagesrc _CFLAGS and _LIB available
165 PKG_CHECK_MODULES(DRI2, libdri2)
166 AC_SUBST(DRI2_CFLAGS)
169 PKG_CHECK_MODULES(X11, x11)
173 PKG_CHECK_MODULES(XEXT, xext)
174 AC_SUBST(XEXT_CFLAGS)
177 PKG_CHECK_MODULES(XV, xv)
181 PKG_CHECK_MODULES(XDAMAGE, xdamage)
182 AC_SUBST(XDAMAGE_CFLAGS)
183 AC_SUBST(XDAMAGE_LIBS)
185 PKG_CHECK_MODULES(DRM, libdrm)
189 PKG_CHECK_MODULES(DRM, libdrm-devel)
190 AC_SUBST(DRM_DEVEL_CFLAGS)
191 AC_SUBST(DRM_DEVEL_LIBS)
193 PKG_CHECK_MODULES(TBM, libtbm)
197 dnl use time analysis module
198 PKG_CHECK_MODULES(MMTA, mm-ta)
199 AC_SUBST(MMTA_CFLAGS)
202 dnl required package for evasimagesink/evaspixmapsink
203 PKG_CHECK_MODULES(EFL, [
204 evas >= $EFL_REQUIRED
205 ecore >= $EFL_REQUIRED
206 ecore-x >= $EFL_REQUIRED
212 You need to install or upgrade the EFL development
213 packages on your system. On debian-based systems these are
214 libevas-dev and libecore-dev.
215 The minimum version required is $EFL_REQUIRED.
219 dnl *** belows are related to evaspixmapsink plug-ins ***
220 AG_GST_ARG_WITH_PACKAGE_NAME
221 AG_GST_ARG_WITH_PACKAGE_ORIGIN
223 dnl set license and copyright notice
225 AC_DEFINE_UNQUOTED(GST_LICENSE, "$GST_LICENSE", [GStreamer license])
226 AC_SUBST(GST_LICENSE)
229 AC_MSG_NOTICE([Checking libraries for evaspixmapsink plugin])
232 translit(dnm, m, l) AM_CONDITIONAL(USE_X, true)
233 AG_GST_CHECK_FEATURE(X, [X libraries and plugins],
236 ac_cflags_save="$CFLAGS"
237 ac_cppflags_save="$CPPFLAGS"
238 CFLAGS="$CFLAGS $X_CFLAGS"
239 CPPFLAGS="$CPPFLAGS $X_CFLAGS"
241 dnl now try to find the HEADER
242 AC_CHECK_HEADER(X11/Xlib.h, HAVE_X="yes", HAVE_X="no")
244 if test "x$HAVE_X" = "xno"
246 AC_MSG_NOTICE([cannot find X11 development files])
248 dnl this is much more than we want
249 X_LIBS="$X_LIBS $X_PRE_LIBS $X_EXTRA_LIBS"
250 dnl AC_PATH_XTRA only defines the path needed to find the X libs,
251 dnl it does not add the libs; therefore we add them here
252 X_LIBS="$X_LIBS -lX11"
257 CFLAGS="$ac_cflags_save"
258 CPPFLAGS="$ac_cppflags_save"
261 dnl Check for Xv extension
262 translit(dnm, m, l) AM_CONDITIONAL(USE_XVIDEO, true)
263 AG_GST_CHECK_FEATURE(XVIDEO, [X11 XVideo extensions],
269 translit(dnm, m, l) AM_CONDITIONAL(USE_XSHM, true)
270 AG_GST_CHECK_FEATURE(XSHM, [X Shared Memory extension], , [
271 if test x$HAVE_X = xyes; then
272 AC_CHECK_LIB(Xext, XShmAttach,
273 HAVE_XSHM="yes", HAVE_XSHM="no",
275 if test "x$HAVE_XSHM" = "xyes"; then
278 dnl On AIX, it is in XextSam instead, but we still need -lXext
279 AC_CHECK_LIB(XextSam, XShmAttach,
280 HAVE_XSHM="yes", HAVE_XSHM="no",
282 if test "x$HAVE_XSHM" = "xyes"; then
283 XSHM_LIBS="-lXext -lXextSam"
293 PKG_CHECK_MODULES(TBM, libtbm)
297 dnl PKG_CHECK_MODULES(UDEVMGR, unified-dev-mgr)
298 dnl AC_SUBST(UDEVMGR_CFLAGS)
299 dnl AC_SUBST(UDEVMGR_LIBS)
301 dnl use ext-encodebin --------------------------------------------------------------------------
302 AC_ARG_ENABLE(ext-encodebin, AC_HELP_STRING([--enable-ext-encodebin], [using encodebin]),
304 case "${enableval}" in
305 yes) GST_EXT_USE_EXT_ENCODEBIN=yes ;;
306 no) GST_EXT_USE_EXT_ENCODEBIN=no ;;
307 *) AC_MSG_ERROR(bad value ${enableval} for --enable-ext-encodebin) ;;
310 [GST_EXT_USE_EXT_ENCODEBIN=yes])
311 AM_CONDITIONAL(GST_EXT_USE_EXT_ENCODEBIN, test "x$GST_EXT_USE_EXT_ENCODEBIN" = "xyes")
313 dnl use ext-avsystem --------------------------------------------------------------------------
314 AC_ARG_ENABLE(ext-avsystem, AC_HELP_STRING([--enable-ext-avsystem], [using avsystem]),
316 case "${enableval}" in
317 yes) GST_EXT_USE_EXT_AVSYSTEM=yes ;;
318 no) GST_EXT_USE_EXT_AVSYSTEM=no ;;
319 *) AC_MSG_ERROR(bad value ${enableval} for --enable-ext-avsystem) ;;
322 [GST_EXT_USE_EXT_AVSYSTEM=yes])
323 AM_CONDITIONAL(GST_EXT_USE_EXT_AVSYSTEM, test "x$GST_EXT_USE_EXT_AVSYSTEM" = "xyes")
325 dnl use ext-evasimagesink --------------------------------------------------------------------------
326 AC_ARG_ENABLE(ext-evasimagesink, AC_HELP_STRING([--enable-ext-evasimagesink], [using evasimagesink]),
328 case "${enableval}" in
329 yes) GST_EXT_USE_EXT_EVASIMAGESINK=yes ;;
330 no) GST_EXT_USE_EXT_EVASIMAGESINK=no ;;
331 *) AC_MSG_ERROR(bad value ${enableval} for --enable-ext-evasimagesink) ;;
334 [GST_EXT_USE_EXT_EVASIMAGESINK=yes])
335 AM_CONDITIONAL(GST_EXT_USE_EXT_EVASIMAGESINK, test "x$GST_EXT_USE_EXT_EVASIMAGESINK" = "xyes")
337 dnl use evaspixmapsink ---------------------------------------------------------------------------
338 AC_ARG_ENABLE(ext-evaspixmapsink, AC_HELP_STRING([--enable-ext-evaspixmapsink], [using evaspixmapsink]),
340 case "${enableval}" in
341 yes) GST_EXT_USE_EXT_EVASPIXMAPSINK=yes ;;
342 no) GST_EXT_USE_EXT_EVASPIXMAPSINK=no ;;
343 *) AC_MSG_ERROR(bad value ${enableval} for --enable-ext-evaspixmapsink) ;;
346 [GST_EXT_USE_EXT_EVASPIXMAPSINK=yes])
347 AM_CONDITIONAL(GST_EXT_USE_EXT_EVASPIXMAPSINK, test "x$GST_EXT_USE_EXT_EVASPIXMAPSINK" = "xyes")
349 dnl use ext-xvimagesrc--------------------------------------------------------------------------
350 AC_ARG_ENABLE(ext-xvimagesrc, AC_HELP_STRING([--enable-ext-xvimagesrc], [using xvimagesrc]),
352 case "${enableval}" in
353 yes) GST_EXT_USE_EXT_XVIMAGESRC=yes ;;
354 no) GST_EXT_USE_EXT_XVIMAGESRC=no ;;
355 *) AC_MSG_ERROR(bad value ${enableval} for --enable-ext-xvimagesrc) ;;
358 [GST_EXT_USE_EXT_XVIMAGESRC=yes])
359 AM_CONDITIONAL(GST_EXT_USE_EXT_XVIMAGESRC, test "x$GST_EXT_USE_EXT_XVIMAGESRC" = "xyes")
361 dnl use ext-gstreamer-audio -------------------------------------------------------------------
362 AC_ARG_ENABLE(ext-gstreamer-audio, AC_HELP_STRING([--enable-ext-gstreamer-audio], [using gstreamer-audio]),
364 case "${enableval}" in
365 yes) GST_EXT_USE_EXT_AVSYSAUDIO=yes ;;
366 no) GST_EXT_USE_EXT_AVSYSAUDIO=no ;;
367 *) AC_MSG_ERROR(bad value ${enableval} for --enable-ext-gstreamer-audio) ;;
370 [GST_EXT_USE_EXT_AVSYSAUDIO=yes])
371 AM_CONDITIONAL(GST_EXT_USE_EXT_AVSYSAUDIO, test "x$GST_EXT_USE_EXT_AVSYSAUDIO" = "xyes")
373 if test "x$GST_EXT_USE_EXT_AVSYSAUDIO" = "xyes"; then
375 PKG_CHECK_MODULES(AVSYSAUDIO, avsysaudio, HAVE_AVSYSAUDIO="yes", [
379 if test "x$HAVE_AVSYSAUDIO" = "xno"; then
380 AC_MSG_ERROR(no avsysaudio package found)
382 AC_SUBST(AVSYSAUDIO_CFLAGS)
383 AC_SUBST(AVSYSAUDIO_LIBS)
386 dnl use ext-drmsrc --------------------------------------------------------------------------
387 AC_ARG_ENABLE(ext-drmsrc, AC_HELP_STRING([--enable-ext-drmsrc], [using drmsrc]),
389 case "${enableval}" in
390 yes) GST_EXT_USE_EXT_DRMSRC=yes ;;
391 no) GST_EXT_USE_EXT_DRMSRC=no ;;
392 *) AC_MSG_ERROR(bad value ${enableval} for --enable-ext-drmsrc) ;;
395 [GST_EXT_USE_EXT_DRMSRC=yes])
396 AM_CONDITIONAL(GST_EXT_USE_EXT_DRMSRC, test "x$GST_EXT_USE_EXT_DRMSRC" = "xyes")
397 dnl use ext-toggle --------------------------------------------------------------------------
398 AC_ARG_ENABLE(ext-toggle, AC_HELP_STRING([--enable-ext-toggle], [using toggle]),
400 case "${enableval}" in
401 yes) GST_EXT_USE_EXT_TOGGLE=yes ;;
402 no) GST_EXT_USE_EXT_TOGGLE=no ;;
403 *) AC_MSG_ERROR(bad value ${enableval} for --enable-ext-toggle) ;;
406 [GST_EXT_USE_EXT_TOGGLE=yes])
407 AM_CONDITIONAL(GST_EXT_USE_EXT_TOGGLE, test "x$GST_EXT_USE_EXT_TOGGLE" = "xyes")
409 dnl for i386 --------------------------------------------------------------------------
410 AC_ARG_ENABLE(i386, AC_HELP_STRING([--enable-i386], [i386 build]),
412 case "${enableval}" in
415 *) AC_MSG_ERROR(bad value ${enableval} for --enable-i386) ;;
419 AM_CONDITIONAL([IS_I386], [test "x$IS_I386" = "xyes"])
421 dnl use ext-pdpushsrc --------------------------------------------------------------------------
422 AC_ARG_ENABLE(ext-pdpushsrc, AC_HELP_STRING([--enable-ext-pdpushsrc], [using pdpushsrc]),
424 case "${enableval}" in
425 yes) GST_EXT_USE_EXT_PD_PUSHSRC=yes ;;
426 no) GST_EXT_USE_EXT_PD_PUSHSRC=no ;;
427 *) AC_MSG_ERROR(bad value ${enableval} for --enable-ext-pdpushsrc) ;;
430 [GST_EXT_USE_EXT_PD_PUSHSRC=yes])
431 AM_CONDITIONAL(GST_EXT_USE_EXT_PD_PUSHSRC, test "x$GST_EXT_USE_EXT_PD_PUSHSRC" = "xyes")
432 dnl use ext-audiotp --------------------------------------------------------------------------
433 AC_ARG_ENABLE(ext-audiotp, AC_HELP_STRING([--enable-ext-audiotp], [using audiotp]),
435 case "${enableval}" in
436 yes) GST_EXT_USE_EXT_AUDIOTP=yes ;;
437 no) GST_EXT_USE_EXT_AUDIOTP=no ;;
438 *) AC_MSG_ERROR(bad value ${enableval} for --enable-ext-audiotp) ;;
441 [GST_EXT_USE_EXT_AUDIOTP=yes])
442 AM_CONDITIONAL(GST_EXT_USE_EXT_AUDIOTP, test "x$GST_EXT_USE_EXT_AUDIOTP" = "xyes")
444 dnl use ext-audioeq --------------------------------------------------------------------------
445 AC_ARG_ENABLE(ext-audioeq, AC_HELP_STRING([--enable-ext-audioeq], [using audioeq]),
447 case "${enableval}" in
448 yes) GST_EXT_USE_EXT_AUDIOEQ=yes ;;
449 no) GST_EXT_USE_EXT_AUDIOEQ=no ;;
450 *) AC_MSG_ERROR(bad value ${enableval} for --enable-ext-audioeq) ;;
453 [GST_EXT_USE_EXT_AUDIOEQ=yes])
454 AM_CONDITIONAL(GST_EXT_USE_EXT_AUDIOEQ, test "x$GST_EXT_USE_EXT_AUDIOEQ" = "xyes")
462 pdpushsrc/src/Makefile
463 avsystem/src/Makefile
465 encodebin/src/Makefile
466 evasimagesink/Makefile
467 evasimagesink/src/Makefile
468 evaspixmapsink/Makefile
470 xvimagesrc/src/Makefile