Now GetUnreadMessages dbus method tells also the number of unread messages
[modest] / configure.ac
1 # Copyright (c) 2006,2007 Nokia Corporation
2 # All rights reserved.
3
4 # Redistribution and use in source and binary forms, with or without
5 # modification, are permitted provided that the following conditions are
6 # met:
7
8 # * Redistributions of source code must retain the above copyright
9 #   notice, this list of conditions and the following disclaimer.
10 # * Redistributions in binary form must reproduce the above copyright
11 #   notice, this list of conditions and the following disclaimer in the
12 #   documentation and/or other materials provided with the distribution.
13 # * Neither the name of the Nokia Corporation nor the names of its
14 #   contributors may be used to endorse or promote products derived from
15 #   this software without specific prior written permission.
16
17 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
18 # IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
19 # TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
20 # PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
21 # OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
22 # EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
23 # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
24 # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
25 # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
26 # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
27 # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
29 AC_INIT([modest],[3.2],[http://maemo.org])
30 AC_CONFIG_HEADERS([config.h])
31
32 m4_define([modest_api_major_version], [1])
33 m4_define([modest_api_minor_version], [99])
34 m4_define([modest_api_micro_version], [0])
35 m4_define([modest_api_version], [modest_api_major_version.modest_api_minor_version.modest_api_micro_version])
36
37
38 AC_CONFIG_SRCDIR(src/modest-main.c)
39 AM_INIT_AUTOMAKE([dist-bzip2])
40
41 MODEST_API_MAJOR_VERSION=modest_api_major_version
42 MODEST_API_MINOR_VERSION=modest_api_minor_version
43 MODEST_API_MICRO_VERSION=modest_api_micro_version
44 MODEST_API_VERSION=modest_api_version
45 AC_SUBST(MODEST_API_MAJOR_VERSION)
46 AC_SUBST(MODEST_API_MINOR_VERSION)
47 AC_SUBST(MODEST_API_MICRO_VERSION)
48 AC_SUBST(MODEST_API_VERSION)
49
50 ALL_LINGUAS="en_GB"
51
52 MODEST_LOCALE_DIR='$prefix/${DATADIRNAME}/locale'
53 AM_GLIB_DEFINE_LOCALEDIR([MODEST_LOCALE_DIR])
54 AM_GLIB_GNU_GETTEXT
55
56 if test x$prefix = xNONE; then
57    prefix=/usr/local
58 fi
59 AC_SUBST(prefix)
60
61 AC_PROG_CC
62 AC_PROG_CXX
63 AM_PROG_CC_STDC
64 AM_PROG_CC_C_O
65 AC_HEADER_STDC
66 AC_PROG_LIBTOOL
67
68
69 # Option to enable debugging
70 AC_ARG_ENABLE(debug,
71               [AC_HELP_STRING([--enable-debug],[Debugging (default=no)])],
72               [with_debug=yes], [with_debug=no])
73
74 if test "x$with_debug" == "xyes" ; then
75         CFLAGS="$CFLAGS -ggdb -O0 -DDEBUG -Wall"
76 else
77         CFLAGS="$CFLAGS -O2 -Wall"
78 fi
79
80 # Option to enable debugging
81 AC_ARG_ENABLE(gcov,
82               [AC_HELP_STRING([--enable-gcov],[Coverage reporting (default=no)])],
83               [with_gcov=yes], [with_gcov=no])
84
85 if test "x$with_gcov" == "xyes" ; then
86         CFLAGS="$CFLAGS -fprofile-arcs -ftest-coverage"
87         LDFLAGS="$LDFLAGS -lgcov"
88 fi
89
90
91
92 dnl -------
93 dnl GtkHTML
94 dnl -------
95
96 AC_MSG_CHECKING(for installed version of libgtkhtml3)
97 pkg-config --exists libgtkhtml-3.14
98 retval=$?
99 gtk_html_found=false
100 if test $retval -eq 0 ; then
101     gtk_html_found=true
102     gtk_html_version=3.14
103 else
104     pkg-config --exists libgtkhtml-3.8
105     retval=$?
106     if test $retval -eq 0 ; then
107       gtk_html_found=true
108       gtk_html_version=3.8
109     else
110           if [ $gui = "true" ]; then
111             AC_MSG_RESULT(libgtkhtml 3.4 or higher is not found!)
112           fi
113     fi
114 fi
115
116 if [ $gtk_html_found = "true" ]; then
117    version=`pkg-config --modversion libgtkhtml-${gtk_html_version}`
118    AC_MSG_RESULT(found version $version)
119 else
120    AC_MSG_ERROR([install gtkhtml 3.8 or newer])
121 fi
122
123
124 PKG_CHECK_MODULES(LIBMODEST_DBUS_CLIENT,libmodest-dbus-client-1.0 >= 3.2.0)
125
126
127 dnl # GLib/Gobject/Gtk/Gconf => mandatory
128
129 PKG_CHECK_MODULES(MODEST_GSTUFF,glib-2.0 >= 2.6 gobject-2.0 gtk+-2.0 >= 2.6 gconf-2.0 gnome-vfs-2.0 libgtkhtml-${gtk_html_version} libtinymail-1.0 >= 1.1.90 libtinymail-camel-1.0 >= 1.1.90 libtinymail-gnomevfs-1.0 >= 1.1.90 libtinymailui-1.0 >= 1.1.90 libtinymailui-gtk-1.0 >= 1.1.90)
130 AC_SUBST(MODEST_GSTUFF_CFLAGS)
131 AC_SUBST(MODEST_GSTUFF_LIBS)
132
133 modest_save_cflags="$CFLAGS"
134 modest_save_libs="$LIBS"
135 PKG_CHECK_MODULES(MODEST_GTKHTML,libgtkhtml-${gtk_html_version})
136 AC_SUBST(MODEST_GTKHTML_CFLAGS)
137 AC_SUBST(MODEST_GTKHTML_LIBS)
138 CFLAGS="$MODEST_GTKHTML_CFLAGS"
139 LIBS="$MODEST_GTKHTML_LIBS"
140 AC_CHECK_DECLS([gtk_widget_tap_and_hold_setup],[],[], [#include <gtk/gtk.h>])
141 AC_CHECK_FUNCS(gtk_html_set_max_image_size)
142 AC_SUBST(HAVE_GTK_HTML_SET_MAX_IMAGE_SIZE)
143 AC_CHECK_FUNCS(gtk_html_get_selection_area)
144 AC_SUBST(HAVE_GTK_HTML_GET_SELECTION_AREA)
145 AC_CHECK_FUNCS(gtk_html_set_allow_dnd)
146 AC_SUBST(HAVE_GTK_HTML_SET_ALLOW_DND)
147 AC_CHECK_FUNCS(gtk_html_set_default_engine)
148 AC_SUBST(HAVE_GTK_HTML_SET_DEFAULT_ENGINE)
149 AC_CHECK_FUNCS(gtk_html_set_word_char_wrapping)
150 AC_SUBST(HAVE_GTK_HTML_SET_WORD_CHAR_WRAPPING)
151 AC_CHECK_FUNCS(gtk_tree_view_column_get_cell_data_hint)
152 AC_SUBST(HAVE_GTK_TREE_VIEW_COLUMN_GET_CELL_DATA_HINT)
153 CFLAGS="$modest_save_cflags"
154 LIBS="$modest_save_libs"
155
156
157 dnl dnl now, determine what to build
158 dnl AC_MSG_NOTICE([Determining what platform to build])
159 PKG_CHECK_MODULES(MODEST_MAEMO_LIBS,conic,[detected_platform=maemo],[detected_platform=gnome])
160
161 AC_ARG_WITH(platform, [
162 Target platform:
163   --with-platform=detect  detect target platform (default)
164   --with-platform=gnome   build for Gnome
165   --with-platform=maemo   build for Maemo
166 ],
167 [case "${with_platform}" in
168        gnome|maemo|detect)    MODEST_PLATFORM=${with_platform};;
169        *)        AC_MSG_ERROR([Unknown platform selected]);;
170 esac], [MODEST_PLATFORM=detect])
171
172 if test "$MODEST_PLATFORM" = "detect"; then
173         MODEST_PLATFORM="$detected_platform"
174         with_platform=$detected_platform
175 fi
176
177 if test "$with_platform" = "maemo"; then
178         MODEST_PLUGIN_DEFINES=" -DMODEST_PLATFORM_MAEMO -DMODEST_API_VERSION=${MODEST_API_VERSION}"
179 elif test "$with_platform" = "gnome"; then
180         MODEST_PLUGIN_DEFINES=" -DMODEST_PLATFORM_GNOME -DMODEST_API_VERSION=${MODEST_API_VERSION}"
181 fi
182 AC_SUBST(MODEST_PLUGIN_DEFINES)
183
184 #
185 # check the widgets library
186 #
187 have_hildon2=false
188 have_hildon1=false
189 have_hildon0=false
190 have_gtk=false
191 PKG_CHECK_EXISTS(hildon-1, have_hildon1=true,have_hildon1=false)
192 if test "$have_hildon1" = "true"; then
193    PKG_CHECK_EXISTS(hildon-1 >= 2.1.0 hildon-fm-2, have_hildon2=true, have_hildon2=false)
194    PKG_CHECK_MODULES(MODEST_HILDON_WIDGETS,hildon-1 hildon-fm-2)
195    hildonpkgs="hildon-1 hildon-fm-2"
196    detected_toolkit=hildon1
197    echo "DETECTED HILDON 1 $have_hildon2."
198 else
199    hildonpkgs="hildon-libs hildon-fm"
200    detected_toolkit=hildon1
201    PKG_CHECK_EXISTS(hildon-libs >= 0.12.0, have_hildon1=true, have_hildon1=false)
202    if test "$have_hildon1" = "false"; then
203       PKG_CHECK_EXISTS(hildon-libs, have_hildon0=true, have_hildon0=false)
204       if test "$have_hildon0" = "false"; then
205          have_gtk=true
206          detected_toolkit=gtk
207          hildonpkgs=
208       fi
209    fi
210    if test "$have_gtk" = "false"; then
211       PKG_CHECK_MODULES(MODEST_HILDON_WIDGETS,hildon-libs hildon-fm)
212    fi
213 fi
214
215 dnl --------------- HILDON & PLUGIN PKGS -----------
216 pluginpkgs=$hildonpkgs
217 echo "Plugin Packages $pluginpkgs"
218 AC_SUBST(pluginpkgs)
219
220 use_profile_data=false
221 # Plugin packages must not include libcanberra and libprofile
222 if test "$have_hildon2" = "true"; then
223    echo "DETECTED HILDON 2 $have_hildon2."
224    detected_toolkit=hildon2
225    hildonpkgs="$hildonpkgs libcanberra"
226    AC_CHECK_HEADER([profiled/keys_nokia.h], use_profile_data=true, use_profile_data=false)
227    if test "$use_profile_data" = "true"; then
228       hildonpkgs="$hildonpkgs profile"
229       AC_DEFINE_UNQUOTED(MODEST_USE_PROFILE, 1, ["Use the Profile data include"])
230    fi
231    echo "HILDON 2 PACKAGES $hildonpkgs"
232 fi
233 AC_SUBST(hildonpkgs)
234
235 dnl --------------- HILDON API ------------
236 hildon_api=
237 if test "$have_hildon0" = "true"; then
238    hildon_api=0
239 elif test "$have_hildon1" = "true"; then
240    hildon_api=1
241 elif test "$have_gtk" = "false"; then
242    hildon_api=`$PKG_CONFIG --modversion hildon-1 | cut -d. -f1`
243 fi
244
245 AC_DEFINE_UNQUOTED(MODEST_HILDON_API, $hildon_api, ["the API version of hildon"])
246 MODEST_PLUGIN_DEFINES="$MODEST_PLUGIN_DEFINES -DMODEST_HILDON_API=$hildon_api"
247
248 AC_ARG_WITH(toolkit, [
249 Target toolkit:
250   --with-toolkit=detect  detect target toolkit (default)
251   --with-toolkit=gtk   build for Gnome
252   --with-toolkit=hildon1   build for Hildon 1.x
253   --with-toolkit=hildon2   build for Hildon 2.x
254 ],
255 [case "${with_toolkit}" in
256        gtk|hildon1|hildon2|detect)    MODEST_TOOLKIT=${with_toolkit};;
257        *)        AC_MSG_ERROR([Unknown platform selected]);;
258 esac], [MODEST_TOOLKIT=detect])
259
260 if test "$MODEST_TOOLKIT" = "detect"; then
261         MODEST_TOOLKIT="$detected_toolkit"
262         with_toolkit=$detected_toolkit
263 fi
264
265 if test "$with_toolkit" = "hildon1"; then
266         MODEST_PLUGIN_DEFINES="$MODEST_PLUGIN_DEFINES -DMODEST_TOOLKIT_HILDON1"
267 elif test "$with_toolkit" = "hildon2"; then
268         MODEST_PLUGIN_DEFINES="$MODEST_PLUGIN_DEFINES -DMODEST_TOOLKIT_HILDON2"
269 elif test "$with_toolkit" = "gtk"; then
270         MODEST_PLUGIN_DEFINES="$MODEST_PLUGIN_DEFINES -DMODEST_TOOLKIT_GNOME"
271 fi
272
273 dnl Whether to use maemo-launcher or not
274 AC_ARG_ENABLE([maemo-launcher],
275               [AS_HELP_STRING([--enable-maemo-launcher],
276                               [build with maemo-launcher support])],
277                               [case "${enableval}" in
278                                yes) maemo_launcher=true ;;
279                                no)  maemo_launcher=false ;;
280                                *) AC_MSG_ERROR([bad value ${enableval} for --enable-maemo-launcher]) ;;
281                                esac], [maemo_launcher=false])
282 if test x$maemo_launcher = xtrue
283 then
284         PKG_CHECK_MODULES(MAEMO_LAUNCHER, [maemo-launcher-app])
285         AC_SUBST(MAEMO_LAUNCHER_CFLAGS)
286         AC_SUBST(MAEMO_LAUNCHER_LIBS)
287         MAEMO_LAUNCHER_MODEST_LDFLAGS="-shared "
288 else
289         MAEMO_LAUNCHER_MODEST_LDFLAGS="-export-dynamic "
290 fi
291 AC_SUBST(MAEMO_LAUNCHER_MODEST_LDFLAGS)
292
293 have_easysetup=false
294 if test "x$with_toolkit" == "xgtk"; then
295    PKG_CHECK_MODULES(MODEST_TOOLKIT,glib-2.0 >= 2.8 gtk+-2.0 >= 2.10 libnotify gtksourceview-2.0)
296    AC_DEFINE_UNQUOTED(MODEST_TOOLKIT_GTK, 1, ["Whether modest is being build for the gtk toolkit."])
297    MODEST_TOOLKIT_DIR=gnome
298 else
299    have_easysetup=true
300    PKG_CHECK_MODULES(MODEST_TOOLKIT,$hildonpkgs)
301    if test "$with_toolkit" = "hildon2"; then
302       AC_DEFINE_UNQUOTED(MODEST_TOOLKIT_HILDON2, 1, ["Whether modest is being build for the hildon2 toolkit."])
303       MODEST_TOOLKIT_DIR=hildon2
304    else
305       AC_DEFINE_UNQUOTED(MODEST_TOOLKIT_HILDON1, 1, ["Whether modest is being build for the hildon2 toolkit."])
306       MODEST_TOOLKIT_DIR=maemo
307    fi
308     AC_DEFINE_UNQUOTED(MODEST_HAVE_EASYSETUP, 1, ["Whether we have the easysetup feature"])
309 fi
310 AM_CONDITIONAL(MODEST_HAVE_EASYSETUP,test "x$have_easysetup" == "xtrue")
311 AC_SUBST(MODEST_TOOLKIT)
312 AC_SUBST(MODEST_TOOLKIT_DIR)
313
314 if test "x$with_platform" == "xgnome"; then
315       PKG_CHECK_MODULES(MODEST_PLATFORM,libtinymail-gnome-desktop-1.0 >= 1.1.90 glib-2.0 >= 2.8 libnotify)
316     AC_DEFINE_UNQUOTED(MODEST_PLATFORM_GNOME, 1, ["Whether modest is being built for the GNOME platform."])
317 dnl     AC_MSG_ERROR([The GNOME Build is currently broken; please try the Maemo build instead])
318 else
319     have_dbusapi=true
320     PKG_CHECK_MODULES(MODEST_PLATFORM,libosso dbus-1 libtinymail-maemo-1.0 >= 1.1.90 libebook-1.2 )
321     AC_DEFINE_UNQUOTED(MODEST_PLATFORM_MAEMO, 1, ["Whether modest is being built for the MAEMO platform."])
322 fi
323 AM_CONDITIONAL(MODEST_HAVE_DBUS_API,test "x$have_dbusapi" == "xtrue")
324 AC_SUBST(MODEST_PLATFORM)
325
326
327
328 #
329 # check for wpeditor or libwpeditor-plus (on maemo)
330 #
331 if test "x$with_toolkit" != "xgtk"; then  
332 PKG_CHECK_MODULES(MODEST_WPEDITOR,wpeditor,have_wpeditor=true,have_wpeditor=false)
333 if test "x$have_wpeditor" == "xfalse"; then
334    PKG_CHECK_MODULES(MODEST_WPEDITOR,libwpeditor-plus,have_libwpeditorplus=true,have_libwpeditorplus=false)     
335    if test "x$have_libwpeditorplus" == "xtrue"; then
336         wpeditor="libwpeditor-plus"
337         AC_DEFINE_UNQUOTED(MODEST_HAVE_LIBWPEDITOR_PLUS, 1, ["Whether libwpeditor-plus is used."])              
338    else
339         AC_MSG_ERROR([you need to have either wpeditor or libwpeditor-plus installed])
340    fi
341 else
342    wpeditor="wpeditor"  
343    AC_DEFINE_UNQUOTED(MODEST_HAVE_WPEDITOR, 1, ["Whether wpeditor is used."])           
344 fi
345 fi
346
347
348 #
349 # check libalarm
350 #
351 if test "x$with_platform" == "xmaemo"; then  
352    PKG_CHECK_MODULES(MODEST_LIBALARM,libalarm,have_libalarm=true,have_libalarm=false)
353    if test "x$have_libalarm" == "xfalse"; then
354       PKG_CHECK_MODULES(MODEST_LIBALARM, alarm, have_libalarm=true,have_libalarm=false)
355    fi
356    if test "x$have_libalarm" == "xtrue"; then
357       AC_DEFINE_UNQUOTED(MODEST_HAVE_LIBALARM, 1, ["Whether libalarm is used."])                
358       AC_SUBST(MODEST_LIBALARM_CFLAGS)
359       AC_SUBST(MODEST_LIBALARM_LIBS)
360    fi
361 fi
362
363 #
364 # check for MCE
365 #
366 if test "x$with_platform" == "xmaemo"; then  
367 PKG_CHECK_MODULES(MODEST_MCE,mce,have_mce=true,have_mce=false)
368 if test "x$have_mce" == "xtrue"; then
369    mce="mce"    
370    AC_DEFINE_UNQUOTED(MODEST_HAVE_MCE, 1, ["Whether mce is used."])
371    AC_SUBST(MODEST_MCE_CFLAGS)
372    AC_SUBST(MODEST_MCE_LIBS)
373 else
374    mce=""
375 fi
376 fi
377
378 #
379 # check for libconic; this is a trick to check whether we run
380 # on a 'real' maemo platform, or on, say, ubuntu embedded
381 # this determines whether we build with the non-hildon GTK+
382 #
383 if test "x$with_platform" == "xmaemo"; then  
384 PKG_CHECK_MODULES(MODEST_LIBCONIC,conic,have_libconic=true,have_libconic=false)
385 if test "x$have_libconic" == "xtrue"; then
386    AC_DEFINE_UNQUOTED(MODEST_HAVE_HILDON_GTK,1,["Whether modest is being built with Hildon/Gtk"])
387    AC_DEFINE_UNQUOTED(MODEST_HAVE_CONIC,1,["Whether modest has conic available"])
388    AC_SUBST(MODEST_LIBCONIC_CLAGS)
389    AC_SUBST(MODEST_LIBCONIC_LIBS)
390 else
391 # if we define this, tinymail will not try to #include conic headers
392    CFLAGS="$CFLAGS -DLIBTINYMAIL_MAEMO_WITHOUT_CONIC"
393 fi
394 fi
395
396 #
397 # check hildon-help (only for maemo AND NOT fremantle)
398 #
399 if test "x$with_toolkit" == "xhildon1"; then
400    PKG_CHECK_MODULES(MODEST_HILDON_HELP,hildon-help,have_hildon_help=true,have_hildon_help=false)
401    if test "x$have_hildon_help" == "xfalse"; then
402       PKG_CHECK_MODULES(MODEST_HILDON_HELP,libossohelp,have_osso_help=true,have_osso_help=false)        
403       if test "x$have_osso_help" == "xtrue"; then
404         helplib="osso-help"
405         AC_DEFINE_UNQUOTED(MODEST_HAVE_OSSO_HELP, 1, ["Whether osso-help is used."])            
406       else
407         AC_MSG_ERROR([you need to have either osso-help or hildon-help installed])
408       fi
409    else
410      helplib="hildon-help"
411      AC_DEFINE_UNQUOTED(MODEST_HAVE_HILDON_HELP, 1, ["Whether hildon-help is used."])           
412    fi
413 fi
414
415
416
417 #
418 # check for the notification stuff (only maemo)
419 #
420 if test "x$with_toolkit" != "xgtk"; then  
421    PKG_CHECK_MODULES(MODEST_HILDON_NOTIFY,hildon-notify libnotify,have_hildon_notify=true,have_hildon_notify=false)
422    if test "x$have_hildon_notify" == "xtrue"; then
423       AC_DEFINE_UNQUOTED(MODEST_HAVE_HILDON_NOTIFY, 1, ["Whether hildon-notify is available"])      
424    fi
425 fi
426
427
428 #
429 # check for the uri/mime stuff
430 #
431 if test "x$with_toolkit" != "xgtk"; then  
432    PKG_CHECK_MODULES(MODEST_HILDON_MIME,libhildonmime,have_hildonmime=true,have_hildonmime=false)
433    if test "x$have_hildonmime" == "xfalse"; then
434       PKG_CHECK_MODULES(MODEST_HILDON_MIME,libossomime,have_ossomime=true,have_ossomime=false)  
435       if test "x$have_ossomime" == "xtrue"; then
436         mimelib="osso-mime"
437         AC_DEFINE_UNQUOTED(MODEST_HAVE_OSSO_MIME, 1, ["Whether osso-mime is used."])            
438       else
439         AC_MSG_ERROR([you need to have either osso-mime or hildon-mime installed])
440       fi
441    else
442      mimelib="hildon-mime"      
443      AC_DEFINE_UNQUOTED(MODEST_HAVE_HILDON_MIME, 1, ["Whether hildon-mime is used."])           
444    fi
445 fi
446
447 PKG_CHECK_MODULES(MODEST_MOZEMBED, libtinymailui-mozembed-1.0 >= 1.1.90, have_mozembed=true, have_mozembed=false)
448 AC_ARG_ENABLE(mozembed,
449 AC_HELP_STRING([--enable-mozembed],
450         [Build with GtkMozEmbed (yes, no)]),
451 [case "${enableval}" in
452       yes)
453         if test x$have_mozembed = xfalse; then
454            AC_MSG_ERROR([building of GtkMozEmbed support requested and gtkmozembed not found])
455         fi
456         use_mozembed=true
457         ;;
458       *)
459         use_mozembed=false
460         ;;
461 esac],[use_mozembed=false])
462
463 AM_CONDITIONAL(BUILD_MOZEMBED, test x$use_mozembed = xtrue)
464
465 if test x$use_mozembed = xtrue; then
466         AC_DEFINE_UNQUOTED(MODEST_USE_MOZEMBED, 1, ["Whether we use GtkMozEmbed."])
467 fi
468
469 #dnl wether we can and should build the 
470 #dnl search plugin (on maemo)
471 if test "x$with_platform" == "xmaemo"; then  
472 PKG_CHECK_MODULES(MODEST_OGS, libosso >= 0.8.5 libogs-1.2, have_ogs=true, have_ogs=false)
473 have_ogs_support=false
474 AC_ARG_ENABLE(ogs_support,
475 AC_HELP_STRING([--enable-ogs-support],
476         [Build with osso global search support (yes, no)]),
477 [case "${enableval}" in
478       yes)
479         if test x$have_ogs = xfalse; then
480            AC_MSG_ERROR([building of ogs support requested and libogs-1.2 not found])
481         fi
482         ;;
483       *) 
484         have_ogs_support=false
485         ;;
486 esac],[have_ogs_support=$have_ogs])
487
488 if test x$have_ogs_support = xtrue; then
489         AC_DEFINE_UNQUOTED(MODEST_HAVE_OGS, 1, ["Whether ogs is available."])
490 fi
491 fi
492
493
494
495
496 #
497 # check the version of the addressbook on maemo
498 #
499 if test "x$with_platform" == "xmaemo"; then
500    PKG_CHECK_MODULES(MODEST_ABOOK,osso-addressbook-1.0,have_abook=true,have_abook=false)
501    abook_api=`$PKG_CONFIG --modversion osso-addressbook-1.0 | cut -d. -f1`
502    AC_SUBST(MODEST_ABOOK_CFLAGS)
503    AC_SUBST(MODEST_ABOOK_LIBS)
504
505    if test "x$have_abook" == "xfalse"; then
506      PKG_CHECK_MODULES(MODEST_ABOOK, libosso-abook-1.0,have_abook=true,have_abook=false)
507      abook_api=`$PKG_CONFIG --modversion libosso-abook-1.0 | cut -d. -f1`
508      AC_SUBST(MODEST_ABOOK_CFLAGS)
509      AC_SUBST(MODEST_ABOOK_LIBS)
510
511      modest_save_cflags="$CFLAGS"
512      modest_save_libs="$LIBS"
513      CFLAGS="$MODEST_ABOOK_CFLAGS"
514      LIBS="$MODEST_ABOOK_LIBS"
515      AC_CHECK_FUNCS(osso_abook_contact_chooser_set_visible_func)
516      AC_SUBST(HAVE_OSSO_ABOOK_CONTACT_CHOOSER_SET_VISIBLE_FUNC)
517      CFLAGS="$modest_save_cflags"
518      LIBS="$modest_save_libs"
519    fi
520
521    if test "x$have_abook" == "xtrue"; then
522       AC_DEFINE_UNQUOTED(OSSO_ABOOK_ENABLE_DEPRECATED, 1, ["use deprecated addressbook API"])
523       AC_DEFINE_UNQUOTED(MODEST_ABOOK_API, $abook_api, ["the API version of osso-addressbook"])
524       AC_DEFINE_UNQUOTED(MODEST_HAVE_ABOOK, 1, ["whether we have osso-addressbook"])
525       addressbook="osso-addressbook"
526    fi
527
528    # Check the presence of the calendar widgets
529    PKG_CHECK_MODULES(MODEST_CALENDAR_WIDGETS,calendar-ui-widgets,have_calendar_widgets=true,have_calendar_widgets=false)
530    AC_SUBST(MODEST_CALENDAR_WIDGETS_CFLAGS)
531    AC_SUBST(MODEST_CALENDAR_WIDGETS_LIBS)
532    if test "x$have_calendar_widgets" == "xtrue"; then
533       AC_DEFINE_UNQUOTED(MODEST_USE_CALENDAR_WIDGETS, 1, ["Use the Calendar color widgets"])
534    fi
535 fi
536
537 AC_CHECK_HEADERS([clockd/libtime.h], have_libtime=true, have_libtime=false)
538
539 if test "x$have_libtime" == "xtrue"; then
540    AC_DEFINE_UNQUOTED(MODEST_USE_LIBTIME, 1, ["use libtime API"])
541    MODEST_LIBTIME_LIBS=-ltime
542 else
543    MODEST_LIBTIME_LIBS=
544 fi
545 AC_SUBST(MODEST_LIBTIME_LIBS)
546
547 AC_CHECK_HEADERS([iphbd/libiphb.h], have_libiphb=true, have_libiphb=false)
548
549 if test "x$have_libiphb" == "xtrue"; then
550    AC_DEFINE_UNQUOTED(MODEST_USE_IPHB, 1, ["use IP Heartbeat API"])
551    MODEST_LIBIPHB_LIBS=-liphb
552 else
553    MODEST_LIBIPHB_LIBS=
554 fi
555 AC_SUBST(MODEST_LIBIPHB_LIBS)
556
557 #
558 # if we don't have an addressbook, use the dummy one
559 #
560 AM_CONDITIONAL(MODEST_USE_DUMMY_ADDRESS_BOOK,test "x$have_abook" != "xtrue")
561
562
563 AM_GLIB_GNU_GETTEXT
564 IT_PROG_INTLTOOL([0.35.0])
565
566 # gettext support
567 GETTEXT_PACKAGE=modest  
568 AC_SUBST(GETTEXT_PACKAGE)
569 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE", ["gettext package"])
570
571
572 #
573 # settings for maemo platform
574 #
575 if test "x$with_platform" == "xmaemo"; then  
576
577   # warnings are errors, but don't check format errors, because
578   # it breaks with logical ids
579   CFLAGS="$CFLAGS -Wno-format-extra-args -Werror"
580
581    desktopentrydir=`$PKG_CONFIG osso-af-settings --variable=desktopentrydir`
582    serviceentrydir=`$PKG_CONFIG dbus-glib-1 --variable=prefix`/share/dbus-1/services
583    localedir=`$PKG_CONFIG osso-af-settings --variable=localedir`
584    backupsettingsdir=/etc/osso-backup/applications
585    prebackupdir=/etc/osso-backup/pre-backup.d/
586    restoredir=/etc/osso-backup/restore.d/always/
587    ossocudscriptsdir=/etc/osso-cud-scripts
588    pixmapdir=`$PKG_CONFIG osso-af-settings --variable=hildonpixmapdir`
589    icon_26x26dir=$datadir/icons/hicolor/26x26/hildon
590    icon_34x34dir=$datadir/icons/hicolor/34x34/hildon
591    icon_40x40dir=$datadir/icons/hicolor/40x40/hildon
592    icon_50x50dir=$datadir/icons/hicolor/50x50/hildon
593    icon_scalabledir=$datadir/icons/hicolor/scalable/hildon
594    pluginlibdir=`$PKG_CONFIG hildon-control-panel --variable=plugindir`
595    plugindesktopentrydir=`$PKG_CONFIG hildon-control-panel --variable=plugindesktopentrydir`
596
597    dbus_api="dbus_api"
598    AC_SUBST(dbus_api)
599
600    # Define as variables in Makefiles
601    AC_SUBST(desktopentrydir)
602    AC_SUBST(serviceentrydir)
603    AC_SUBST(backupsettingsdir)
604    AC_SUBST(prebackupdir)
605    AC_SUBST(restoredir)
606    AC_SUBST(ossocudscriptsdir)
607    AC_SUBST(localedir)
608    AC_SUBST(pixmapdir)
609    AC_SUBST(icon_26x26dir)
610    AC_SUBST(icon_34x34dir)
611    AC_SUBST(icon_40x40dir)
612    AC_SUBST(icon_50x50dir)
613    AC_SUBST(icon_scalabledir)
614    AC_SUBST(pluginlibdir)
615    AC_SUBST(plugindesktopentrydir)
616
617 fi
618
619 dnl ## setup the testing framework (ie., make check)
620 build_tests=false
621 AC_ARG_ENABLE(tests,
622 AC_HELP_STRING([--enable-tests],
623         [Build tests (no, yes)]),
624 [case "${enableval}" in
625       yes)
626         build_tests=true ;;
627       *) build_tests=false ;;
628 esac],[build_tests=false])
629 AM_CONDITIONAL(BUILD_TESTS, test x$build_tests = xtrue)
630
631
632
633 dnl ## is the check package installed?
634 if test x$build_tests = xtrue; then
635    PKG_CHECK_MODULES(CHECK, check >= 0.9.4 glib-2.0)
636 fi
637
638
639
640 dnl ## do we want documentation (gtk-doc)
641 build_docs=false
642 AC_ARG_ENABLE(docs,
643 AC_HELP_STRING([--enable-docs],
644         [Build documentation (yes, no)]),
645 [case "${enableval}" in
646       yes)
647         build_docs=true ;;
648       *) build_docs=false ;;
649 esac],[build_docs=false])
650 AM_CONDITIONAL(BUILD_DOCS, test x$build_docs = xtrue)
651
652 dnl ## gtk-doc
653 GTK_DOC_CHECK([1.0])
654
655 AC_OUTPUT([
656 po/Makefile.in
657 Makefile
658 man/Makefile
659 src/Makefile
660 src/modest-plugin-1.0.pc
661 src/dbus_api/Makefile
662 src/gnome/Makefile
663 src/maemo/Makefile
664 src/maemo/easysetup/Makefile
665 src/hildon2/Makefile
666 src/widgets/Makefile
667 docs/Makefile
668 docs/reference/Makefile
669 tests/Makefile
670 tests/dbus_api/Makefile
671 src/maemo/modest.desktop
672 src/maemo/com.nokia.modest.service
673 src/hildon2/modest.desktop
674 src/hildon2/com.nokia.modest.service
675 ])
676
677
678 echo
679 echo "modest configure results"
680 echo "-----------------------------------"
681 echo "Platform         : $with_platform"
682 echo "Toolkit          : $with_toolkit"
683 echo "Prefix           : ${prefix}"
684 echo "Build tests      : $build_tests"
685 echo "Build docs       : $build_docs"
686 echo "Gettext Package  : $GETTEXT_PACKAGE"
687
688 if test "x$with_platform" == "xmaemo"; then
689    echo "Maemo Launcher   : $maemo_launcher"
690    echo "Editor lib       : $wpeditor"
691    echo "Addressbook      : $have_abook"
692    if test "x$with_toolkit" == "xhildon1"; then
693       echo "Help lib         : $helplib"
694    fi
695    echo "libconic support : $have_libconic"
696    echo "Alarm            : $have_libalarm"
697    echo "MCE              : $have_mce"
698    echo "Hildon-Notify    : $have_hildon_notify"
699    echo "LibOGS support   : $have_ogs_support"
700    echo "Calendar widgets : $have_calendar_widgets"
701 fi
702
703 echo "MozEmbed support : $use_mozembed"
704 if [ $gtk_html_found = "true" ]; then
705    echo "GtkHTML version  : $gtk_html_version"
706 fi
707 echo "Libtime          : $have_libtime"
708
709 echo "CFLAGS           : $CFLAGS"
710 echo "Debug version    : $with_debug"
711 echo ""
712 echo "NOTE: you should do a 'make clean' after changing architecture or platform (--with-platform=)"
713 echo ""