Contents of /trunk/configure.in

Parent Directory Parent Directory | Revision Log Revision Log


Revision 233 - (show annotations)
Mon Jul 20 16:01:00 2009 UTC (14 years, 9 months ago) by harbaum
File size: 5398 byte(s)
Version number adjusted
1 # -*- Autoconf -*-
2 # Process this file with autoconf to produce a configure script.
3
4 # OSM2Go autoconf script
5 #
6 # Copyright (C) 2008 Till Harbaum <till@harbaum.org>
7 #
8 # This file is part of OSM2Go.
9 #
10 # OSM2Go is free software: you can redistribute it and/or modify
11 # it under the terms of the GNU General Public License as published by
12 # the Free Software Foundation, either version 3 of the License, or
13 # (at your option) any later version.
14 #
15 # OSM2Go is distributed in the hope that it will be useful,
16 # but WITHOUT ANY WARRANTY; without even the implied warranty of
17 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 # GNU General Public License for more details.
19 #
20 # You should have received a copy of the GNU General Public License
21 # along with OSM2Go. If not, see <http://www.gnu.org/licenses/>.
22
23 AC_PREREQ(2.61)
24 AC_INIT([OSM2Go],[0.7.12],[osm2go-users@garage.maemo.org])
25 AC_CONFIG_SRCDIR([src/main.c])
26 # AC_CONFIG_HEADER([src/config.h])
27
28 PACKAGE="osm2go"
29 AC_SUBST(PACKAGE)
30
31 # Checks for programs.
32 AC_PROG_CC
33 AC_PROG_INSTALL
34 AC_PROG_LN_S
35 AC_PROG_MAKE_SET
36
37 # Checks for libraries.
38
39 # Checks for header files.
40 #AC_HEADER_STDC
41 #AC_CHECK_HEADERS([libintl.h locale.h stdlib.h string.h sys/time.h unistd.h])
42
43 # Checks for typedefs, structures, and compiler characteristics.
44 #AC_C_CONST
45 #AC_C_INLINE
46 #AC_TYPE_SIZE_T
47 #AC_HEADER_TIME
48 #AC_STRUCT_TM
49 #AC_HEADER_STDBOOL
50
51 # Checks for library functions.
52 #AC_FUNC_MALLOC
53 #AC_FUNC_MKTIME
54 #AC_FUNC_STRFTIME
55 #AC_FUNC_STRTOD
56 #AC_CHECK_FUNCS([gettimeofday localtime_r memset pow setlocale sqrt strcasecmp strchr strcspn strdup strerror strrchr strstr strtoul tzset])
57
58 # check for libcurl
59 PKG_CHECK_MODULES([libcurl], [libcurl], [], [AC_MSG_ERROR([libcurl missing])])
60 CFLAGS="$CFLAGS $libcurl_CFLAGS"
61 LIBS="$LIBS $libcurl_LIBS"
62
63 # check for libsoup
64 PKG_CHECK_MODULES([libsoup24], [libsoup-2.4], [
65 EXTRA_OBJS="$EXTRA_OBJS converter.o osm-gps-map.o"
66 CFLAGS="$CFLAGS $libsoup24_CFLAGS -DENABLE_OSM_GPS_MAP"
67 LIBS="$LIBS $libsoup24_LIBS"
68 ], [
69 PKG_CHECK_MODULES([libsoup22], [libsoup-2.2], [
70 EXTRA_OBJS="$EXTRA_OBJS converter.o osm-gps-map.o"
71 CFLAGS="$CFLAGS $libsoup22_CFLAGS -DLIBSOUP22 -DENABLE_OSM_GPS_MAP"
72 LIBS="$LIBS $libsoup22_LIBS"
73 ], [
74 AC_MSG_NOTICE([WARNING: libsoup-2.4/2.2 missing, disabling internal map])
75 ])
76 ])
77
78 # check for goocanvas
79 PKG_CHECK_MODULES([goocanvas], [goocanvas], [], [AC_MSG_ERROR([goocanvas missing])])
80 CFLAGS="$CFLAGS -DUSE_GOOCANVAS $goocanvas_CFLAGS"
81 LIBS="$LIBS $goocanvas_LIBS"
82
83 # check for gnome-vfs-module-2.0
84 PKG_CHECK_MODULES([gnome_vfs_module], [gnome-vfs-module-2.0], [], [AC_MSG_ERROR([gnome-vfs-module-2.0 missing])])
85 CFLAGS="$CFLAGS $gnome_vfs_module_CFLAGS"
86 LIBS="$LIBS $gnome_vfs_module_LIBS"
87
88 # check for libxml-2.0
89 PKG_CHECK_MODULES([libxml2], [libxml-2.0], [], [AC_MSG_ERROR([libxml-2.0 missing])])
90 CFLAGS="$CFLAGS $libxml2_CFLAGS"
91 LIBS="$LIBS $libxml2_LIBS"
92
93 # check for maemo
94 AC_MSG_CHECKING([for Maemo])
95 PKG_CHECK_EXISTS(maemo-version, [
96 MAEMO="yes"
97 AC_MSG_RESULT(yes)
98
99 PKG_CHECK_MODULES([hildon], [hildon-1], [], [AC_MSG_ERROR([hildon-1 missing])])
100 CFLAGS="$CFLAGS -DUSE_HILDON $hildon_CFLAGS"
101 LIBS="$LIBS $hildon_LIBS"
102
103 PKG_CHECK_MODULES([osso], [libosso], [], [AC_MSG_ERROR([libosso missing])])
104 CFLAGS="$CFLAGS $osso_CFLAGS"
105 LIBS="$LIBS $osso_LIBS"
106
107 PKG_CHECK_MODULES([hildon_fm_2], [hildon-fm-2], [], [AC_MSG_ERROR([hildon-fm-2 missing])])
108 CFLAGS="$CFLAGS $hildon_fm_2_CFLAGS"
109 LIBS="$LIBS $hildon_fm_2_LIBS"
110
111 # prefer gpsbt over liblocation as we got complaints regarding liblocation
112 # stability
113 PKG_CHECK_EXISTS(gpsbt, [
114 PKG_CHECK_MODULES([gpsbt], [gpsbt], [], [])
115 CFLAGS="$CFLAGS -DENABLE_GPSBT $gpsbt_CFLAGS"
116 LIBS="$LIBS $gpsbt_LIBS"
117 ], [
118 AC_MSG_NOTICE([gpsbt not found, trying liblocation])
119
120 PKG_CHECK_EXISTS(liblocation, [
121 PKG_CHECK_MODULES([liblocation], [liblocation], [], [])
122 CFLAGS="$CFLAGS -DENABLE_LIBLOCATION $liblocation_CFLAGS"
123 LIBS="$LIBS $liblocation_LIBS"
124 ], [
125 AC_MSG_NOTICE([WARNING: No liblocation nor gpsbt found, disabling gps auto start!])
126 ])
127 ])
128
129 PKG_CHECK_EXISTS(tablet-browser-interface, [
130 CFLAGS="$CFLAGS -DENABLE_BROWSER_INTERFACE"
131 ], [AC_MSG_NOTICE([WARNING: No tablet-browser-interface found, disabling microb interface!])])
132
133 PKG_CHECK_EXISTS(maemo-version, [
134 VERSION=`pkg-config --modversion maemo-version`
135 AC_MSG_NOTICE([Configuring for Maemo $VERSION])
136 CFLAGS="$CFLAGS -DMAEMO_VERSION=\\\"$VERSION\\\""
137 MAJOR=`echo $VERSION | cut -b1 -`
138 CFLAGS="$CFLAGS -DMAEMO_VERSION_MAJOR=$MAJOR"
139 ], [
140 AC_MSG_ERROR([maemo-version not found])
141 ])
142
143 # maemo uses dbus for ipc with maemo mapper
144 EXTRA_OBJS="$EXTRA_OBJS dbus.o"
145 AC_SUBST(EXTRA_OBJS)
146
147 INSTALL_PLATTFORM="install-maemo"
148 AC_SUBST(INSTALL_PLATTFORM)
149
150 ], [
151 AC_MSG_RESULT(no)
152
153 # check for gtk+-2.0
154 PKG_CHECK_MODULES([gtk], [gtk+-2.0], [], [AC_MSG_ERROR([gtk+-2.0 missing!])])
155 CFLAGS="$CFLAGS $gtk_CFLAGS"
156 LIBS="$LIBS $gtk_LIBS"
157
158 # non-maemo device use gnome to call the web browser
159 PKG_CHECK_MODULES([gnome2], [libgnome-2.0], [], [AC_MSG_ERROR([libgnome-2.0 missing])])
160 CFLAGS="$CFLAGS $gnome2_CFLAGS -DENABLE_BROWSER_INTERFACE"
161 LIBS="$LIBS $gnome2_LIBS"
162
163 INSTALL_PLATTFORM="install-debian"
164 AC_SUBST(INSTALL_PLATTFORM)
165 ])
166
167
168 AC_CONFIG_FILES([Makefile src/Makefile data/Makefile])
169
170 AC_OUTPUT