Version bump (0.1.2009.47-1+0m5-2)
[mafwsubrenderer] / configure.ac
1 #
2 # configure.ac for MAFW gstreamer renderer library
3
4 # Author: Visa Smolander <visa.smolander@nokia.com>
5 #
6 # Copyright (C) 2007, 2008, 2009 Nokia. All rights reserved.
7
8 AC_PREREQ([2.53])
9 AC_INIT([mafw-gst-subtitles-renderer], [0.1.2009.47-1])
10
11 AC_CONFIG_SRCDIR([libmafw-gst-renderer/mafw-gst-renderer.h])
12 AC_CONFIG_HEADERS([config.h])
13 AC_CONFIG_AUX_DIR([build-aux])
14
15 AM_INIT_AUTOMAKE([foreign tar-ustar])
16 AM_MAINTAINER_MODE
17
18 AC_DISABLE_STATIC
19
20 IT_PROG_INTLTOOL([0.35])
21 AC_SUBST([GETTEXT_PACKAGE], [mafw-gst-subtitles-renderer])
22 AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE], ["$GETTEXT_PACKAGE"], [The domain to use with gettext.])
23 AM_GLIB_GNU_GETTEXT()
24
25 dnl Prevent AC_PROG_CC adding '-g -O2' to CFLAGS.
26 SAVEDCFLAGS="$CFLAGS"
27 AC_PROG_CC
28 if test "x$GCC" = xyes; then
29         CFLAGS="$SAVEDCFLAGS"
30 fi
31
32 AC_PROG_LIBTOOL
33 AC_PROG_INSTALL
34
35 # DISABLED_BY_DEFAULT(NAME, DESCRIPTION)
36 # ---------------------------------
37 # Creates a new --enable-* option, with default value `no'.
38 AC_DEFUN([DISABLED_BY_DEFAULT], [dnl
39          AC_ARG_ENABLE([$1], AS_HELP_STRING([--enable-$1], [$2]), [],[dnl
40          m4_bpatsubst([enable_$1], [[^0-9a-z]], [_])=no])dnl
41 ])# DISABLED_BY_DEFAULT
42
43 # ENABLED_BY_DEFAULT(NAME, DESCRIPTION)
44 # ---------------------------------
45 # Creates a new --disable-* option, with default value `yes'.
46 AC_DEFUN([ENABLED_BY_DEFAULT], [dnl
47          AC_ARG_ENABLE([$1], AS_HELP_STRING([--disable-$1], [$2]), [],[dnl
48          m4_bpatsubst([enable_$1], [[^0-9a-z]], [_])=yes])dnl
49 ])# ENABLED_BY_DEFAULT
50
51 dnl Prerequisites.
52
53 GSTREAMER_VERSION=0.10.20
54
55 AM_PATH_GLIB_2_0(2.15.0, [], [], [glib])
56 PKG_CHECK_MODULES(DEPS,
57                   gobject-2.0 >= 2.0
58                   gstreamer-0.10 >= $GSTREAMER_VERSION
59                   gstreamer-plugins-base-0.10 >= $GSTREAMER_VERSION
60                   mafw >= 0.1
61                   libosso >= 2.0
62                   x11
63                   hal
64                   totem-plparser
65                   gconf-2.0 >= 2.0
66                   gnome-vfs-2.0
67 )
68
69 dnl Check for GdkPixbuf, needed for dumping current frame
70 GDKPIXBUF_REQUIRED=2.12.0
71 AC_ARG_ENABLE(gdkpixbuf,
72               AS_HELP_STRING([--disable-gdkpixbuf],
73                              [Disable GdkPixbuf support, required for current frame dumping]),,
74               [enable_gdkpixbuf=auto])
75
76 if test "x$enable_gdkpixbuf" != "xno"; then
77    PKG_CHECK_MODULES(GDKPIXBUF,
78                      [gdk-pixbuf-2.0 >= $GDKPIXBUF_REQUIRED],
79                      [have_gdkpixbuf=yes],
80                      [have_gdkpixbuf=no])
81    AC_SUBST(GDKPIXBUF_LIBS)
82    AC_SUBST(GDKPIXBUF_CFLAGS)
83
84    if test "x$have_gdkpixbuf" = "xyes"; then
85       AC_DEFINE(HAVE_GDKPIXBUF, [], [Define if we have GdkPixbuf])
86    fi
87 else
88    have_gdkpixbuf="no (disabled)"
89 fi
90
91 if test "x$enable_gdkpixbuf" = "xyes"; then
92    if test "x$have_gdkpixbuf" != "xyes"; then
93       AC_MSG_ERROR([Couldn't find GdkPixbuf >= $GDKPIXBUF_REQUIRED.])
94    fi
95 fi
96
97 AM_CONDITIONAL(HAVE_GDKPIXBUF, test "x$have_gdkpixbuf" = "xyes")
98
99
100 dnl Check for Conic, needed connection error handling
101 CONIC_REQUIRED=0.16
102 AC_ARG_ENABLE(conic,
103               AS_HELP_STRING([--disable-conic],
104                              [Disable Conic support, required to handle network errors]),,
105               [enable_conic=auto])
106
107 if test "x$enable_conic" != "xno"; then
108    PKG_CHECK_MODULES(CONIC,
109                      [conic >= $CONIC_REQUIRED],
110                      [have_conic=yes],
111                      [have_conic=no])
112    AC_SUBST(CONIC_LIBS)
113    AC_SUBST(CONIC_CFLAGS)
114
115    if test "x$have_conic" = "xyes"; then
116       AC_DEFINE(HAVE_CONIC, [], [Define if we have Conic])
117    fi
118 else
119    have_conic="no (disabled)"
120 fi
121
122 if test "x$enable_conic" = "xyes"; then
123    if test "x$have_conic" != "xyes"; then
124       AC_MSG_ERROR([Couldn't find Conic >= $CONIC_REQUIRED.])
125    fi
126 fi
127
128 AM_CONDITIONAL(HAVE_CONIC, test "x$have_conic" = "xyes")
129
130
131
132 plugindir=`$PKG_CONFIG --variable=plugindir mafw`
133 AC_SUBST(plugindir)
134
135 dnl Default compile flags.  (NOTE: CFLAGS is reserved for the user!)
136
137 AC_SUBST([_CFLAGS])
138 AC_SUBST([_LDFLAGS])
139 _CFLAGS="-Wall -Wmissing-prototypes -Wstrict-prototypes -Wmissing-declarations"
140 _CFLAGS="$_CFLAGS -ggdb3"
141
142 dnl Configure-time options.
143
144 dnl Debugging.
145 DISABLED_BY_DEFAULT([debug], [compile with debug flags and extra output])
146 if test "x$enable_debug" = xyes; then
147         AC_DEFINE([MAFW_DEBUG], [1], [Enable debugging related parts.])
148         _CFLAGS="$_CFLAGS -O0 -Werror -DGTK_DISABLE_DEPRECATED"
149 else
150         AC_DEFINE([G_DEBUG_DISABLE], [1], [Disable g_debug() calls.])
151         _CFLAGS="$_CFLAGS -O2"
152 fi
153 AS_IF([test "x$enable_debug" = xyes],
154         [AC_DEFINE([MAFW_DEBUG], [1], [Enable extra debug messages])
155          CFLAGS="$CFLAGS -Werror -O0 -ggdb3 -DGTK_DISABLE_DEPRECATED"],
156         [AC_DEFINE([G_DEBUG_DISABLE], [1], [Disable g_debug calls])
157          CFLAGS="$CFLAGS -O2"])
158
159
160 dnl Tests.
161 DISABLED_BY_DEFAULT([tests], [disable unit tests])
162 if test "x${SBOX_DPKG_INST_ARCH}" = "xarmel"; then
163    AC_MSG_WARN([Tests are disabled for compilation in armel])
164    enable_tests="no"
165 fi
166 if test "x$enable_tests" = xyes; then
167         PKG_CHECK_MODULES(CHECKMORE, [checkmore, check >= 0.9.4])
168         if test -z "$CHECKMORE_LIBS"; then
169                 AC_MSG_WARN([checkmore is needed for unit tests!])
170         fi
171 fi
172 AM_CONDITIONAL(ENABLE_TESTS,
173                [test "x$enable_tests" = xyes && test -n "$CHECKMORE_LIBS"])
174
175 dnl Volume handling
176 if test "x${SBOX_DPKG_INST_ARCH}" = "xi386"; then
177    DISABLED_BY_DEFAULT([pulse-volume], [enable volume handling with pulse])
178 else
179    ENABLED_BY_DEFAULT([pulse-volume], [enable volume handling with pulse])
180 fi
181 if test "x$enable_pulse_volume" = xno; then
182         AC_DEFINE([MAFW_GST_RENDERER_DISABLE_PULSE_VOLUME], [1], [Disables volume handling with pulse.])
183 else
184         PKG_CHECK_MODULES(VOLUME, libpulse-mainloop-glib >= 0.9.15)
185 fi
186
187
188 dnl Mute
189 DISABLED_BY_DEFAULT([mute], [enable mute handling])
190 if test "x$enable_mute" = xyes; then
191         AC_DEFINE([MAFW_GST_RENDERER_ENABLE_MUTE], [1], [Enable mute.])
192 fi
193
194 dnl Tracing.
195 DISABLED_BY_DEFAULT([tracing], [enable function instrumentation (tracing)])
196 if test "x$enable_tracing" = xyes; then
197         _CFLAGS="$_CFLAGS -finstrument-functions -rdynamic"
198 fi
199
200 dnl Coverage.
201 DISABLED_BY_DEFAULT([coverage], [enable coverage data generation (gcov)])
202 if test "x$enable_coverage" = xyes; then
203         AC_PATH_PROG(LCOV, [lcov], [lcov])
204         if test "x$LCOV" = x; then
205                 echo You need to install lcov to get actual reports!
206                 echo See http://ltp.sf.net/coverage/lcov.php
207         fi
208         if test "x$SBOX_USE_CCACHE" == xyes; then
209                 AC_MSG_ERROR([Please set SBOX_USE_CCACHE=no to use coverage.])
210         fi
211         _CFLAGS="$_CFLAGS -fprofile-arcs -ftest-coverage"
212         _LDFLAGS="$_LDFLAGS -g -lgcov"
213 fi
214 AM_CONDITIONAL(ENABLE_COVERAGE,
215                [test "x$enable_coverage" != xno && test -n "$LCOV"])
216
217 dnl Control Panel
218 PKG_CHECK_MODULES([MAFW_SUBTITLES_CPA], [libosso >= 2.0
219                                         hildon-1 >= 2.1
220                                         hildon-control-panel
221                                         gtk+-2.0
222                                         gconf-2.0])
223
224 CPA_PLUGINDIR=`pkg-config hildon-control-panel --variable=pluginlibdir`
225 CPA_DESKTOPDIR=`pkg-config hildon-control-panel --variable=plugindesktopentrydir`
226
227 AC_SUBST(MAFW_SUBTITLES_CPA_CFLAGS)
228 AC_SUBST(MAFW_SUBTITLES_CPA_LIBS)
229 AC_SUBST(CPA_DESKTOPDIR)
230 AC_SUBST(CPA_PLUGINDIR)
231
232 dnl Output files.
233
234 AC_CONFIG_FILES([
235   Makefile
236   mafw-gst-renderer-uninstalled.pc
237   libmafw-gst-renderer/Makefile
238   applet/Makefile
239   tests/Makefile
240   debian/mafw-gst-subtitles-renderer.install
241   po/Makefile.in
242 ])
243
244 AC_OUTPUT