Tizen 2.1 base
[framework/multimedia/gst-plugins-ext0.10.git] / configure.ac
1
2 AC_INIT(extension, 1.0)
3  
4 dnl versions of gstreamer and plugins-base
5 GST_MAJORMINOR=0.10
6 GST_REQUIRED=0.10.0
7 GSTPB_REQUIRED=0.10.0
8 EFL_REQUIRED=1.0.0
9
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
13
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")
18
19 dnl AM_MAINTAINER_MODE provides the option to enable maintainer mode
20 AM_MAINTAINER_MODE
21
22 #AM_INIT_AUTOMAKE($PACKAGE, $VERSION)
23 AM_INIT_AUTOMAKE
24
25 #AC_CONFIG_MACRO_DIR([m4])
26
27 dnl make aclocal work in maintainer mode
28 dnl AC_SUBST(ACLOCAL_AMFLAGS, "-I m4")
29
30 dnl Add parameters for aclocal
31 AC_SUBST(ACLOCAL_AMFLAGS, "-I m4 -I common/m4")
32
33 AM_CONFIG_HEADER(config.h)
34
35 dnl check for tools
36 AC_PROG_CC
37 AC_PROG_CXX
38 AC_PROG_LIBTOOL
39
40 dnl decide on error flags
41 AS_COMPILER_FLAG(-Wall, GST_WALL="yes", GST_WALL="no")
42                                                                                 
43 if test "x$GST_WALL" = "xyes"; then
44    GST_ERROR="$GST_ERROR -Wall"
45                                                                                 
46 #   if test "x$GST_PLUGIN_CVS" = "xyes"; then
47 #     AS_COMPILER_FLAG(-Werror,GST_ERROR="$GST_ERROR -Werror",GST_ERROR="$GST_ERROR")
48 #   fi
49 fi
50
51 dnl Check for pkgconfig first
52 AC_CHECK_PROG(HAVE_PKGCONFIG, pkg-config, yes, no)
53
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 !)
57 fi
58
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"])
66
67 PKG_CHECK_MODULES(GST, \
68   gstreamer-$GST_MAJORMINOR >= $GST_REQUIRED,
69   HAVE_GST=yes,HAVE_GST=no)
70
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 !)
74 fi
75
76 dnl append GST_ERROR cflags to GST_CFLAGS
77 GST_CFLAGS="$GST_CFLAGS $GST_ERROR"
78
79 dnl make GST_CFLAGS and GST_LIBS available
80 PKG_CHECK_MODULES(GST, gstreamer-0.10 >= 0.10)
81 AC_SUBST(GST_CFLAGS)
82 AC_SUBST(GST_LIBS)
83
84 dnl make GST_MAJORMINOR available in Makefile.am
85 AC_SUBST(GST_MAJORMINOR)
86
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)
90
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))
95 fi
96
97 dnl make _CFLAGS and _LIBS available
98 AC_SUBST(GST_BASE_CFLAGS)
99 AC_SUBST(GST_BASE_LIBS)
100
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)
105
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))
110 fi
111
112 dnl make _CFLAGS and _LIBS available
113 AC_SUBST(GSTPB_BASE_CFLAGS)
114 AC_SUBST(GSTPB_BASE_LIBS)
115
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)
120
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))
125 fi
126
127 dnl make _CFLAGS and _LIBS available
128 AC_SUBST(GSTCTRL_CFLAGS)
129 AC_SUBST(GSTCTRL_LIBS)
130
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"
134 else
135   plugindir="\$(libdir)/gstreamer-$GST_MAJORMINOR"
136 fi
137 AC_SUBST(plugindir)
138
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)
144
145
146 PKG_CHECK_MODULES(GST_AUDIO, gstreamer-audio-$GST_MAJORMINOR >= $GST_REQUIRED )
147
148
149 dnl make _CFLAGS and _LIBS available
150 AC_SUBST(GST_AUDIO_CFLAGS)
151 AC_SUBST(GST_AUDIO_LIBS)
152
153 PKG_CHECK_MODULES(GST_VIDEO, gstreamer-video-$GST_MAJORMINOR >= $GST_REQUIRED)
154
155 dnl make _CFLAGS and _LIBS available
156 AC_SUBST(GST_VIDEO_CFLAGS)
157 AC_SUBST(GST_VIDEO_LIBS)
158
159 PKG_CHECK_MODULES(GST_INTERFACES, gstreamer-interfaces-$GST_MAJORMINOR >= $GST_REQUIRED)
160 AC_SUBST(GST_INTERFACES_CFLAGS)
161 AC_SUBST(GST_INTERFACES_LIBS)
162
163 dnl xvimagesrc _CFLAGS and _LIB available
164
165 PKG_CHECK_MODULES(DRI2, libdri2)
166 AC_SUBST(DRI2_CFLAGS)
167 AC_SUBST(DRI2_LIBS)
168
169 PKG_CHECK_MODULES(X11, x11)
170 AC_SUBST(X11_CFLAGS)
171 AC_SUBST(X11_LIBS)
172
173 PKG_CHECK_MODULES(XEXT, xext)
174 AC_SUBST(XEXT_CFLAGS)
175 AC_SUBST(XEXT_LIBS)
176
177 PKG_CHECK_MODULES(XV, xv)
178 AC_SUBST(XV_CFLAGS)
179 AC_SUBST(XV_LIBS)
180
181 PKG_CHECK_MODULES(XDAMAGE, xdamage)
182 AC_SUBST(XDAMAGE_CFLAGS)
183 AC_SUBST(XDAMAGE_LIBS)
184
185 PKG_CHECK_MODULES(DRM, libdrm)
186 AC_SUBST(DRM_CFLAGS)
187 AC_SUBST(DRM_LIBS)
188
189 PKG_CHECK_MODULES(DRM, libdrm-devel)
190 AC_SUBST(DRM_DEVEL_CFLAGS)
191 AC_SUBST(DRM_DEVEL_LIBS)
192
193 PKG_CHECK_MODULES(DRM_SLP, libdrm_slp)
194 AC_SUBST(DRM_SLP_CFLAGS)
195 AC_SUBST(DRM_SLP_LIBS)
196
197 dnl use time analysis module
198 PKG_CHECK_MODULES(MMTA, mm-ta)
199 AC_SUBST(MMTA_CFLAGS)
200 AC_SUBST(MMTA_LIBS)
201
202 dnl required package for evasimagesink
203 PKG_CHECK_MODULES(EFL, [
204   evas >= $EFL_REQUIRED
205   ecore >= $EFL_REQUIRED
206   ecore-x >= $EFL_REQUIRED
207 ], [
208   AC_SUBST(EFL_CFLAGS)
209   AC_SUBST(EFL_LIBS)
210 ], [
211   AC_MSG_ERROR([
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.
216   ])
217 ])
218
219 dnl PKG_CHECK_MODULES(UDEVMGR, unified-dev-mgr)
220 dnl AC_SUBST(UDEVMGR_CFLAGS)
221 dnl AC_SUBST(UDEVMGR_LIBS)
222
223 dnl use ext-encodebin --------------------------------------------------------------------------
224 AC_ARG_ENABLE(ext-encodebin, AC_HELP_STRING([--enable-ext-encodebin], [using encodebin]),
225   [
226     case "${enableval}" in
227       yes) GST_EXT_USE_EXT_ENCODEBIN=yes ;;
228       no)  GST_EXT_USE_EXT_ENCODEBIN=no ;;
229       *)   AC_MSG_ERROR(bad value ${enableval} for --enable-ext-encodebin) ;;
230     esac
231   ],
232   [GST_EXT_USE_EXT_ENCODEBIN=yes])
233 AM_CONDITIONAL(GST_EXT_USE_EXT_ENCODEBIN, test "x$GST_EXT_USE_EXT_ENCODEBIN" = "xyes")
234
235 dnl use ext-avsystem --------------------------------------------------------------------------
236 AC_ARG_ENABLE(ext-avsystem, AC_HELP_STRING([--enable-ext-avsystem], [using avsystem]),
237   [
238     case "${enableval}" in
239       yes) GST_EXT_USE_EXT_AVSYSTEM=yes ;;
240       no)  GST_EXT_USE_EXT_AVSYSTEM=no ;;
241       *)   AC_MSG_ERROR(bad value ${enableval} for --enable-ext-avsystem) ;;
242     esac
243   ],
244   [GST_EXT_USE_EXT_AVSYSTEM=yes])
245 AM_CONDITIONAL(GST_EXT_USE_EXT_AVSYSTEM, test "x$GST_EXT_USE_EXT_AVSYSTEM" = "xyes")
246
247 dnl use ext-evasimagesink --------------------------------------------------------------------------
248 AC_ARG_ENABLE(ext-evasimagesink, AC_HELP_STRING([--enable-ext-evasimagesink], [using evasimagesink]),
249   [
250     case "${enableval}" in
251       yes) GST_EXT_USE_EXT_EVASIMAGESINK=yes ;;
252       no)  GST_EXT_USE_EXT_EVASIMAGESINK=no ;;
253       *)   AC_MSG_ERROR(bad value ${enableval} for --enable-ext-evasimagesink) ;;
254     esac
255   ],
256   [GST_EXT_USE_EXT_EVASIMAGESINK=yes])
257 AM_CONDITIONAL(GST_EXT_USE_EXT_EVASIMAGESINK, test "x$GST_EXT_USE_EXT_EVASIMAGESINK" = "xyes")
258
259 dnl use ext-xvimagesrc--------------------------------------------------------------------------
260 AC_ARG_ENABLE(ext-xvimagesrc, AC_HELP_STRING([--enable-ext-xvimagesrc], [using xvimagesrc]),
261   [
262     case "${enableval}" in
263       yes) GST_EXT_USE_EXT_XVIMAGESRC=yes ;;
264       no)  GST_EXT_USE_EXT_XVIMAGESRC=no ;;
265       *)   AC_MSG_ERROR(bad value ${enableval} for --enable-ext-xvimagesrc) ;;
266     esac
267   ],
268   [GST_EXT_USE_EXT_XVIMAGESRC=yes])
269 AM_CONDITIONAL(GST_EXT_USE_EXT_XVIMAGESRC, test "x$GST_EXT_USE_EXT_XVIMAGESRC" = "xyes")
270
271 dnl use ext-gstreamer-audio -------------------------------------------------------------------
272 AC_ARG_ENABLE(ext-gstreamer-audio, AC_HELP_STRING([--enable-ext-gstreamer-audio], [using gstreamer-audio]),
273   [
274     case "${enableval}" in
275       yes) GST_EXT_USE_EXT_AVSYSAUDIO=yes ;;
276       no)  GST_EXT_USE_EXT_AVSYSAUDIO=no ;;
277       *)   AC_MSG_ERROR(bad value ${enableval} for --enable-ext-gstreamer-audio) ;;
278     esac
279   ],
280   [GST_EXT_USE_EXT_AVSYSAUDIO=yes])
281 AM_CONDITIONAL(GST_EXT_USE_EXT_AVSYSAUDIO, test "x$GST_EXT_USE_EXT_AVSYSAUDIO" = "xyes")
282
283 if test "x$GST_EXT_USE_EXT_AVSYSAUDIO" = "xyes"; then
284         HAVE_AVSYSAUDIO=NO
285         PKG_CHECK_MODULES(AVSYSAUDIO, avsysaudio, HAVE_AVSYSAUDIO="yes", [
286             HAVE_AVSYSAUDIO="no"
287             AC_MSG_RESULT(no)
288           ])
289         if test "x$HAVE_AVSYSAUDIO" = "xno"; then
290           AC_MSG_ERROR(no avsysaudio package found)
291         fi
292         AC_SUBST(AVSYSAUDIO_CFLAGS)
293         AC_SUBST(AVSYSAUDIO_LIBS)
294 fi      
295
296 dnl use ext-drmsrc --------------------------------------------------------------------------
297 AC_ARG_ENABLE(ext-drmsrc, AC_HELP_STRING([--enable-ext-drmsrc], [using drmsrc]),
298   [
299     case "${enableval}" in
300       yes) GST_EXT_USE_EXT_DRMSRC=yes ;;
301       no)  GST_EXT_USE_EXT_DRMSRC=no ;;
302       *)   AC_MSG_ERROR(bad value ${enableval} for --enable-ext-drmsrc) ;;
303     esac
304   ],
305   [GST_EXT_USE_EXT_DRMSRC=yes])
306 AM_CONDITIONAL(GST_EXT_USE_EXT_DRMSRC, test "x$GST_EXT_USE_EXT_DRMSRC" = "xyes")
307 dnl use ext-toggle --------------------------------------------------------------------------
308 AC_ARG_ENABLE(ext-toggle, AC_HELP_STRING([--enable-ext-toggle], [using toggle]),
309   [
310     case "${enableval}" in
311       yes) GST_EXT_USE_EXT_TOGGLE=yes ;;
312       no)  GST_EXT_USE_EXT_TOGGLE=no ;;
313       *)   AC_MSG_ERROR(bad value ${enableval} for --enable-ext-toggle) ;;
314     esac
315   ],
316   [GST_EXT_USE_EXT_TOGGLE=yes])
317 AM_CONDITIONAL(GST_EXT_USE_EXT_TOGGLE, test "x$GST_EXT_USE_EXT_TOGGLE" = "xyes")
318
319 dnl for i386 --------------------------------------------------------------------------
320 AC_ARG_ENABLE(i386, AC_HELP_STRING([--enable-i386], [i386 build]),
321         [
322          case "${enableval}" in
323           yes) IS_I386=yes ;;
324           no)  IS_I386=no ;;
325           *)   AC_MSG_ERROR(bad value ${enableval} for --enable-i386) ;;
326          esac
327         ],
328         [IS_I386=no])
329 AM_CONDITIONAL([IS_I386], [test "x$IS_I386" = "xyes"])
330
331 dnl use ext-pdpushsrc --------------------------------------------------------------------------
332 AC_ARG_ENABLE(ext-pdpushsrc, AC_HELP_STRING([--enable-ext-pdpushsrc], [using pdpushsrc]),
333 [
334  case "${enableval}" in
335          yes) GST_EXT_USE_EXT_PD_PUSHSRC=yes ;;
336          no)  GST_EXT_USE_EXT_PD_PUSHSRC=no ;;
337          *)   AC_MSG_ERROR(bad value ${enableval} for --enable-ext-pdpushsrc) ;;
338  esac
339  ],
340  [GST_EXT_USE_EXT_PD_PUSHSRC=yes])
341 AM_CONDITIONAL(GST_EXT_USE_EXT_PD_PUSHSRC, test "x$GST_EXT_USE_EXT_PD_PUSHSRC" = "xyes")
342 dnl use ext-audiotp --------------------------------------------------------------------------
343 AC_ARG_ENABLE(ext-audiotp, AC_HELP_STRING([--enable-ext-audiotp], [using audiotp]),
344 [
345  case "${enableval}" in
346          yes) GST_EXT_USE_EXT_AUDIOTP=yes ;;
347          no)  GST_EXT_USE_EXT_AUDIOTP=no ;;
348          *)   AC_MSG_ERROR(bad value ${enableval} for --enable-ext-audiotp) ;;
349  esac
350  ],
351  [GST_EXT_USE_EXT_AUDIOTP=yes])
352 AM_CONDITIONAL(GST_EXT_USE_EXT_AUDIOTP, test "x$GST_EXT_USE_EXT_AUDIOTP" = "xyes")
353
354 dnl use ext-audioeq --------------------------------------------------------------------------
355 AC_ARG_ENABLE(ext-audioeq, AC_HELP_STRING([--enable-ext-audioeq], [using audioeq]),
356 [
357  case "${enableval}" in
358          yes) GST_EXT_USE_EXT_AUDIOEQ=yes ;;
359          no)  GST_EXT_USE_EXT_AUDIOEQ=no ;;
360          *)   AC_MSG_ERROR(bad value ${enableval} for --enable-ext-audioeq) ;;
361  esac    
362  ],
363  [GST_EXT_USE_EXT_AUDIOEQ=yes])
364 AM_CONDITIONAL(GST_EXT_USE_EXT_AUDIOEQ, test "x$GST_EXT_USE_EXT_AUDIOEQ" = "xyes")
365
366 AC_OUTPUT(
367 Makefile
368 common/Makefile
369 common/m4/Makefile
370 avsystem/Makefile
371 pdpushsrc/Makefile
372 pdpushsrc/src/Makefile
373 avsystem/src/Makefile
374 encodebin/Makefile
375 encodebin/src/Makefile
376 evasimagesink/Makefile
377 evasimagesink/src/Makefile
378 xvimagesrc/Makefile
379 xvimagesrc/src/Makefile
380 toggle/Makefile
381 toggle/src/Makefile
382 drmsrc/Makefile
383 drmsrc/src/Makefile
384 audiotp/Makefile
385 audiotp/src/Makefile
386 audioeq/Makefile
387 audioeq/src/Makefile
388 )