




















本文阐述Navit的Makefile工程文件的定义,主要目的是理顺整个Navit项目的框架。Navit 项目的层级结构如下(图中没有将Navit所有的目录列出):
navit(根目录,一级目录)
....intl
....man
....navit(源代码,二级目录)
........android
........autoload
........binding
........fib-1.1
........font
........fonts
........graphics
........gui
........map
........maps
........maptool
........osd
........plugin
........script
........speech
........support(工程支持库类,三级目录)
............espeak
............ezxml
............glib(子类,四级目录)
............libc
............libpng
............win32
............wordexp
............zib
........tools
........vehicle
........xpm
........xslt
......
...po(国际化相关的目录)
...
根目录中有Makefile.am Makefile.in Makefile.inc三个工程文件。Makefile.inc文件中定义了根目录、子目录Makefile.am文件要用的一些变量,这些变量主要是一些工程文件子目录的路径,文件的内容如下:
1 modulebindingdir=$(pkglibdir)/binding
2 modulemapdir=$(pkglibdir)/map
3 modulefontdir=$(pkglibdir)/font
4 modulegraphicsdir=$(pkglibdir)/graphics
5 moduleguidir=$(pkglibdir)/gui
6 modulespeechdir=$(pkglibdir)/speech
7 moduleosddir=$(pkglibdir)/osd
8 modulevehicledir=$(pkglibdir)/vehicle
9 moduleplugindir=$(pkglibdir)/plugin
10 moduleautoloaddir=$(pkglibdir)/autoload
11 pkgdocdir=$(pkgdatadir)
12 xpmdir=$(pkgdatadir)/xpm
13 skinsdir=$(pkgdatadir)/skins
14 fontsdir=$(pkgdatadir)/fonts
15 mapsdir=$(pkgdatadir)/maps
Makefile.am文件是整个工程编译的规则和关键,结合下文configure.in文件,通过autotools工具生存Configure文件和Makefile文件。怎样使用autotools工具请参考《Make工具之autotools宝典》。(为书写方便,一些说明和注释直接标记在文件中,但在实际使用过程中,请按照GUN的标准书写):
ACLOCAL_AMFLAGS= -I m4
//包含Makefile.inc文件中定义的路径
include $(top_srcdir)/Makefile.inc
//工程包含的子目录
SUBDIRS=
if ENABLE_NLS //如果工程包含国家化配置
XCFLAGS=-DINSTALLPREFIX=INSTALLDIR
if SUPPORT_WIN32 //如果支持win32
XCFLAGS+=-DSUBLANG_BENGALI_BANGLADESH=0x03 -DSUBLANG_PUNJABI_PAKISTAN=0x03 -DSUBLANG_ROMANIAN_MOLDOVA=0x03
if SUPPORT_WIN32CE //如果支持 win32 ce
if SHARED_LIBNAVIT //如果共享Navit库
XCFLAGS+=-L../navit/support/libc -lsupport_libc
AM_MAKEFLAGS=l=l
SUBDIRS+=navit/support/libc
endif
endif
endif
if SUPPORT_ANDROID //如果支持android
XCFLAGS+=-Xcompiler -nostartfiles
endif
export XCFLAGS
SUBDIRS+=intl po man //包含intl po man文件夹
endif
SUBDIRS+=navit
pkgdoc_DATA = README
//程序发布是时包含的文件
EXTRA_DIST = README COPYRIGHT LGPL-2 GPL-2 COPYING INSTALL
//程序发布是时包含的目录
DIST_SUBDIRS=intl po navit man
configure.in 文件是对整个Navit系统进行配置的文件,自定义的一些配置内容都包含在该文件中。该文件和上文的Makefile.am文件通过autotools工具可以生成Makefile文件。
1 //设置项目名称,版本号
2 AC_INIT(navit, 0.2.0)
3 AC_CONFIG_MACRO_DIR([m4])
4 SOURCE_MODE=svn
5
6 AM_INIT_AUTOMAKE
7 AM_CONFIG_HEADER(config.h)
8 //输出自定义的SOURCE_MODE变量
9 AC_SUBST(SOURCE_MODE)
10 //如果检测到SOURCE_MODE_SVN运行模式,则定义宏SOURCE_MODE_SVN用于Makefile.am文件
11 AM_CONDITIONAL(SOURCE_MODE_SVN, [test "x${SOURCE_MODE}" = "xsvn"])
12
13 if test "x${SOURCE_MODE}" = "xsvn" ; then
14 USE_MAINTAINER_MODE=yes
15 else
16 USE_MAINTAINER_MODE=no
17 fi
18 //定义宏AM_MAINTAINER_MODE,
19 AC_DEFUN([AM_MAINTAINER_MODE],
20 [AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
21 dnl maintainer-mode is enabled by default (reason of inclusion of this function)
22 AC_ARG_ENABLE(maintainer-mode,
23 [ --enable-maintainer-mode enable make rules and dependencies not useful
24 (and sometimes confusing) to the casual installer],
25 USE_MAINTAINER_MODE=$enableval)
26 AC_MSG_RESULT([$USE_MAINTAINER_MODE])
27 AM_CONDITIONAL(MAINTAINER_MODE, [test $USE_MAINTAINER_MODE = yes])
28 MAINT=$MAINTAINER_MODE_TRUE
29 AC_SUBST(MAINT)dnl
30 ]
31 )
32
33 AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE])
34
35 AM_MAINTAINER_MODE
36
37 plugins=yes; plugins_reason=default
38 postgresql=yes; postgresql_reason=default
39 samplemap=yes; samplemap_reason=default
40 binding_dbus=yes; binding_dbus_reason=default
41 binding_dbus_use_system_bus=no
42 binding_python=yes; binding_python_reason=default
43 font_freetype=yes; font_freetype_reason=default
44 fontconfig=yes; fontconfig_reason=default
45 fribidi=yes; fribidi_reason=default
46 gui_gtk=no; gui_gtk_reason=default
47 gui_win32=no; gui_win32_reason=default
48 gui_internal=yes; gui_internal_reason=default
49 gui_qml=no; gui_qml_reason=default
50 graphics=yes; graphics_reason=default
51 graphics_gd=no; graphics_gd_reason=default
52 graphics_gtk_drawing_area=no; graphics_gtk_drawing_area_reason=default
53 graphics_qt_qpainter=yes; graphics_qt_qpainter_reason=default
54 graphics_null=yes; graphics_null_reason=default
55 graphics_opengl=yes; graphics_opengl_reason=default
56 graphics_sdl=yes; graphics_sdl_reason=default
57 graphics_win32=no; graphics_win32_reason=default
58 maptool=yes; maptool_reason=default
59 map_binfile=yes; map_binfile_reason=default
60 map_filter=yes; map_filter_reason=default
61 map_mg=yes; map_mg_reason=default
62 map_shapefile=yes; map_shapefile_reason=default
63 map_textfile=yes; map_textfile_reason=default
64 osd_core=yes; osd_core_reason=default
65 plugin_pedestrian=no; plugin_pedestrian_reason=default
66 routing=yes; routing_reason=default
67 speech_android=no; speech_android_reason=default
68 speech_cmdline=yes; speech_cmdline_reason=default
69 speech_dbus=no; speech_dbus_reason=default
70 speech_espeak=no; speech_espeak_reason=default
71 speech_speech_dispatcher=yes; speech_speech_dispatcher_reason=default
72 vehicle_demo=yes; vehicle_demo_reason=default
73 vehicle_file=yes; vehicle_file_reason=default
74 vehicle_gpsd=yes; vehicle_gpsd_reason=default
75 vehicle_gpsd_dbus=no; vehicle_gpsd_dbus_reason=default
76 vehicle_gypsy=yes; vehicle_gypsy_reason=default
77 vehicle_null=no; vehicle_null_reason=default
78 vehicle_wince=no; vehicle_wince_reason=default
79 vehicle_iphone=no; vehicle_iphone_reason=default
80 vehicle_android=no; vehicle_android_reason=default
81 graphics_android=no; graphics_android_reason=default
82 vehicle_maemo=no; vehicle_maemo_reason=default
83
84 shared_libnavit=no
85 LIBNAVIT=navit
86 bin_navit=yes
87 //只执行AC_CANONICAL_SYSTEM中关于主机类型功能的子集
88 AC_CANONICAL_HOST
89 win32=no
90 win32ce=no
91 case $host_os in
92 wince|mingw32ce|cegcc)
93 win32=yes
94 win32ce=yes
95 AC_DEFINE(HAVE_API_WIN32_BASE, 1, [Have Windows Base API])
96 AC_DEFINE(HAVE_API_WIN32_CE, 1, [Have Windows CE API])
97 gui_win32=yes; gui_win32_reason="host_os is wince"
98 graphics_win32=yes; graphics_win32_reason="host_os is wince"
99 vehicle_wince=yes; vehcile_wince_reason="host_os is wince"
100 speech_espeak=yes; speech_espeak_reason="host_os is wince"
101 support_libpng=yes
102 maptool=no; maptool_reason="host_os is wince"
103 ;;
104 mingw32)
105 win32=yes
106 AC_DEFINE(HAVE_API_WIN32_BASE, 1, [Have Windows Base API])
107 AC_DEFINE(HAVE_API_WIN32, 1, [Have Windows API])
108 gui_win32=yes; gui_win32_reason="host_os is mingw32"
109 graphics_win32=yes; graphics_win32_reason="host_os is mingw32"
110 speech_espeak=yes; speech_espeak_reason="host_os is mingw32"
111 support_libpng=yes
112 ;;
113 linux*_android)
114 android=yes
115 shared_libnavit=yes
116 bin_navit=no
117 AC_DEFINE(HAVE_API_ANDROID, 1, [Have Android API])
118 echo "void dl_unwind_find_exidx(void) {}" >crt0.c
119 $CC -c crt0.c
120 $AR r libg.a crt0.o
121 vehicle_android=yes; vehicle_android_reason="host_os is android"
122 graphics_android=yes; graphics_android_reason="host_os is android"
123 speech_android=yes; speech_android_reason="host_os is android"
124 MODULE_LDFLAGS="-module -Xcompiler -nostdlib -Xcompiler -Wl,-rpath -Xcompiler -Wl,/data/data/org.navitproject.navit/lib"
125 MODULE_LIBADD="-llog"
126 LIBNAVIT=_data_data_org.navitproject.navit_lib_navit
127 NAVIT_MODULE_LDFLAGS="$MODULE_LDFLAGS -L\$(top_builddir)/navit -l$LIBNAVIT"
128 ;;
129 esac
130 if test "x$win32" = "xyes"
131 then
132 NAVIT_CFLAGS="$NAVIT_CFLAGS -I\$(top_srcdir)/navit/support/win32"
133 NAVIT_LIBS="$NAVIT_LIBS -L\$(top_builddir)/navit/support/win32 -lsupport_win32"
134 fi
135
136
137 AM_CONDITIONAL(SUPPORT_WIN32, [test "x$win32" = "xyes"])
138 AM_CONDITIONAL(SUPPORT_WIN32CE, [test "x$win32ce" = "xyes"])
139 AM_CONDITIONAL(SUPPORT_ANDROID, [test "x$android" = "xyes"])
140
141 if test "x$support_libpng" = "xyes"
142 then
143 NAVIT_CFLAGS="$NAVIT_CFLAGS -I\$(top_srcdir)/navit/support/libpng"
144 NAVIT_LIBS="$NAVIT_LIBS -L\$(top_builddir)/navit/support/libpng -lsupport_libpng"
145 fi
146 AM_CONDITIONAL(SUPPORT_LIBPNG, [test "x$support_libpng" = "xyes"])
147
148 AC_SUBST(MODULE_LDFLAGS)
149 AC_SUBST(MODULE_LIBADD)
150 AC_SUBST(NAVIT_MODULE_LDFLAGS)
151
152 LIBS="$LIBS -lm"
153 if test "$win32" == "no" -a test "$host_os" != "cygwin"; then
154 LIBS="$LIBS -rdynamic"
155 fi
156
157 m4_ifndef([AC_USE_SYSTEM_EXTENSIONS],
158 [AC_DEFUN([AC_USE_SYSTEM_EXTENSIONS], [AC_GNU_SOURCE])])
159
160 AC_USE_SYSTEM_EXTENSIONS
161
162 m4_ifdef([AC_PROG_OBJC],[AC_PROG_OBJC])
163 AC_PROG_CC
164 m4_ifdef([AC_PROG_OBJC],[AC_PROG_OBJC],[AC_SUBST([OBJC],["$CC"])
165 AC_SUBST([OBJCFLAGS],["$CFLAGS"])])
166 m4_ifndef([AC_PROG_OBJC],[_AM_DEPENDENCIES(OBJC)])
167
168 if eval "test x`uname` = xDarwin"; then
169 CFLAGS="$CFLAGS -I/opt/local/include -L/opt/local/lib"
170 fi
171 if eval "test x$GCC = xyes"; then
172 CFLAGS="$CFLAGS -Wall -Wcast-align -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wpointer-arith -Wreturn-type -D_GNU_SOURCE"
173 fi
174 AM_PROG_CC_C_O
175
176 AC_PROG_CXX
177 if eval "test x$GXX = xyes"; then
178 CXXFLAGS="$CXXFLAGS -Wall -Wcast-align -Wpointer-arith -Wreturn-type -D_GNU_SOURCE"
179 fi
180
181 PKG_CHECK_EXISTS
182 if test "x${cross_compiling}" = "xyes"; then
183 samplemap="no";samplemap_reason="not supported for cross compiling"
184 binding_python="no";binding_python_reason="not supported for cross compiling"
185 postgresql="no";postgresql_reason="not supported for cross compiling"
186 AC_MSG_CHECKING([for a C compiler for build tools])
187 AC_CHECK_PROGS(CC_FOR_BUILD, gcc cc)
188 else
189 CC_FOR_BUILD=$CC
190 fi
191 CCLD_FOR_BUILD="$CC_FOR_BUILD"
192 AC_SUBST(cross_compiling)
193 AM_CONDITIONAL(CROSS_COMPILING, test "x${cross_compiling}" = "xyes")
194 AC_SUBST(CC_FOR_BUILD)
195 AC_SUBST(CCLD_FOR_BUILD)
196
197 # Endianness
198 # defines WORDS_BIGENDIAN for big-endian systems
199 AC_C_BIGENDIAN
200
201 AC_ARG_ENABLE(variant, [ --enable-variant=something set variant], NAVIT_VARIANT=$enableval)
202 AC_SUBST(NAVIT_VARIANT)
203
204 AC_ARG_ENABLE(cache-size, [ --enable-cache-size=size in bytes set cache size], AC_DEFINE_UNQUOTED(CACHE_SIZE,[${enableval}], [Size of Cache in Bytes]))
205
206 AC_ARG_ENABLE(avoid-unaligned, [ --enable-avoid-unaligned avoid unaligned accesses], AVOID_UNALIGNED=$enableval, AVOID_UNALIGNED=no)
207 test x"${AVOID_UNALIGNED}" = xyes && AC_DEFINE(AVOID_UNALIGNED,[],Define to avoid unaligned access)
208
209 AC_ARG_ENABLE(avoid-float, [ --enable-avoid-float avoid floating point calculations], AVOID_FLOAT=$enableval, AVOID_FLOAT=no)
210 test x"${AVOID_FLOAT}" = xyes && AC_DEFINE(AVOID_FLOAT,[],Define to avoid floating point)
211
212 AC_ARG_ENABLE(transformation-roll, [ --enable-transformation-roll add support for specifying roll angle in transformation], ENABLE_ROLL=$enableval, ENABLE_ROLL=no)
213 test x"${ENABLE_ROLL}" = xyes && AC_DEFINE(ENABLE_ROLL,[],Define to add support for specifying roll angle in transformation)
214
215 AC_ARG_ENABLE(hildon, [ --disable-hildon build without maemo/hildon support], enable_hildon=$enableval, enable_hildon=yes)
216 if test "x${enable_hildon}" = "xyes" ; then
217 PKG_CHECK_MODULES(HILDON, hildon-1 >= 0.9.9, , [
218 AC_MSG_RESULT(no)
219 enable_hildon=no
220 ])
221 PKG_CHECK_MODULES(GPSBT, gpsbt, [
222 AC_DEFINE(HAVE_GPSBT, 1, [Have the gpsbt library])
223 AC_SUBST(GPSBT_CFLAGS)
224 AC_SUBST(GPSBT_LIBS)
225 ], [
226 AC_MSG_RESULT(no)
227 ])
228 if test x"${enable_hildon}" = xyes ; then
229 AC_DEFINE(USE_HILDON, 1, [Build with maemo/hildon support])
230 AC_SUBST(HILDON_CFLAGS)
231 AC_SUBST(HILDON_LIBS)
232 fi
233 fi
234 AM_CONDITIONAL(USE_HILDON, test "${enable_hildon}" = "xyes")
235
236 AC_ARG_ENABLE(osso, [ --disable-osso build without maemo/osso support], enable_osso=$enableval, enable_osso=yes)
237 if test "x${enable_osso}" = "xyes" ; then
238 PKG_CHECK_MODULES(LIBOSSO, libosso, , [
239 AC_MSG_RESULT(no)
240 enable_osso=no
241 ])
242 if test x"${enable_osso}" = xyes ; then
243 AC_DEFINE(USE_OSSO, 1, [Build with maemo/osso support])
244 AC_SUBST(LIBOSSO_CFLAGS)
245 AC_SUBST(LIBOSSO_LIBS)
246 fi
247 fi
248 echo ${enable_osso}
249 AM_CONDITIONAL(USE_OSSO, test "x${enable_osso}" = "xyes")
250
251 AC_ARG_ENABLE(garmin, [ --disable-garmin disable garmin support], USE_GARMIN=$enableval, USE_GARMIN=yes)
252
253 # samplemap
254 AC_PATH_PROG(_PATH_BZCAT,[bzcat])
255 if test "x${_PATH_BZCAT}" = "x" ; then
256 samplemap=no; samplemap_reason="bzcat missing"
257 fi
258 AC_ARG_ENABLE(maptool, [ --disable-maptool don't build maptool], maptool=$enableval;maptool_reason="configure parameter")
259 AM_CONDITIONAL(MAPTOOL, [test "x$maptool" = "xyes"])
260 if test "x$maptool" != "xyes"; then
261 samplemap=no; samplemap_reason="maptool disabled"
262 fi
263 AC_ARG_ENABLE(samplemap, [ --disable-samplemap don't build the samplemap], samplemap=$enableval;samplemap_reason="configure parameter")
264 AM_CONDITIONAL(BUILD_SAMPLEMAP, [test "x$samplemap" = "xyes"])
265
266 AC_ARG_ENABLE(fastmath, [ --disable-fastmath don't build with fastmath], fastmath=$enableval, fastmath=yes)
267 AM_CONDITIONAL(FASTMATH, [test "x$fastmath" = "xyes"])
268
269 if test x"$fastmath" = xyes; then
270 if eval "test x$GCC = xyes"; then
271 CFLAGS="$CFLAGS -ffast-math"
272 fi
273 fi
274
275 X_CFLAGS="-I$x_includes"
276 AS_IF([test -n "$ac_x_libraries"], [X_LIBS="-L$ac_x_libraries"])
277
278 # glib
279 AC_ARG_ENABLE(glib, [ --disable-glib don't build with external glib], glib=$enableval, glib=yes)
280 if test "x${glib}" = "xyes" -a "x${GLIB_CFLAGS}" = "x" -a "x${GLIB_LIBS}" = "x"; then
281 PKG_CHECK_MODULES(GLIB, [glib-2.0 gthread-2.0], [glib=yes],[glib=no])
282 fi
283 if test "x${glib}" = "xyes"; then
284 AC_DEFINE(HAVE_GLIB, 1, [Define to 1 if you have (external) glib library])
285 else
286 GLIB_CFLAGS="-I\$(top_srcdir)/navit/support -I\$(top_srcdir)/navit/support/glib -I\$(top_srcdir)/navit/support/ezxml"
287 GLIB_LIBS="-L\$(top_builddir)/navit/support/glib -lsupport_glib -L\$(top_builddir)/navit/support/ezxml -lsupport_ezxml"
288 if test "x${win32}" != "xyes" -a "x${android}" != "xyes"; then
289 GLIB_LIBS="$GLIB_LIBS -lpthread"
290 fi
291 fi
292
293 # gmodule
294 AC_ARG_ENABLE(gmodule, [ --disable-gmodule don't build with gmodule], gmodule=$enableval, gmodule=yes)
295 if test x"${gmodule}" = "xyes"; then
296 PKG_CHECK_MODULES(GMODULE, [gmodule-2.0], [gmodule=yes], [gmodule=no])
297 fi
298 if test "x${gmodule}" = "xyes"; then
299 AC_DEFINE(HAVE_GMODULE, 1, [Define to 1 if you have gmodule])
300 else
301 AC_CHECK_LIB(dl, dlopen,
302 [plugins_reason="default, via dlopen";GMODULE_LIBS="-ldl";AC_DEFINE(HAVE_DLOPEN, 1, [Define to 1 if you have dlopen])],
303 [plugins="no"; plugins_reason="package gmodule and dlopen missing"]
304 )
305 fi
306
307 # libcrypto
308 AC_CHECK_LIB(crypto, AES_encrypt, [CRYPTO_LIBS="-lcrypto";AC_DEFINE(HAVE_LIBCRYPTO, 1, [Define to 1 if you have libcrypto])])
309 AC_SUBST(CRYPTO_LIBS)
310
311 # plugins
312 AC_ARG_ENABLE(plugins, [ --disable-plugins disable plugins], [ plugins=$enableval;plugin_reason="configure parameter" ])
313 AC_ARG_ENABLE(shared-libnavit, [ --enable-shared-libnavit], [ shared_libnavit=$enableval])
314 if test "x${plugins}" = "xyes"; then
315 AC_ENABLE_SHARED
316 AC_DISABLE_STATIC
317 AC_DEFINE(
318 [USE_PLUGINS],
319 [],
320 Define to 1 if you have plugins.
321 )
322 if test "x${win32}" = "xyes"; then
323 shared_libnavit=yes
324 NAVIT_MODULE_LDFLAGS="-no-undefined -L\$(top_builddir)/navit -l$LIBNAVIT -L\$(top_builddir)/intl -lintl"
325 fi
326 else
327 if test "x${shared_libnavit}" = "xyes"; then
328 AC_ENABLE_SHARED
329 AC_DISABLE_STATIC
330 else
331 AC_DISABLE_SHARED
332 AC_ENABLE_STATIC
333 fi
334 fi
335 AM_CONDITIONAL(PLUGINS, [test "x$plugins" = "xyes"])
336 AM_CONDITIONAL(SHARED_LIBNAVIT, [test "x$shared_libnavit" = "xyes"])
337 AM_CONDITIONAL(BIN_NAVIT, [test "x$bin_navit" = "xyes"])
338 AC_PROG_LIBTOOL
339 AC_SUBST(LIBNAVIT)
340
341 AM_CONDITIONAL(EVENT_GLIB, [test "x$glib" = "xyes"])
342 AM_CONDITIONAL(SUPPORT_GLIB, [test "x$glib" = "xno"])
343 AM_CONDITIONAL(SUPPORT_EZXML, [test "x$glib" = "xno"])
344
345 if test "x${ZLIB_CFLAGS}" = "x" -a "x${ZLIB_LIBS}" = "x"; then
346 AC_CHECK_HEADER(
347 zlib.h,
348 AC_DEFINE(
349 [HAVE_ZLIB],
350 [],
351 Define to 1 if you have the <zlib.h> header file.
352 )
353 ZLIB_LIBS="-lz"
354 zlib=yes,
355 ZLIB_CFLAGS="-I\$(top_srcdir)/navit/support/zlib"
356 ZLIB_LIBS="-L\$(top_builddir)/navit/support/zlib -lsupport_zlib"
357 zlib=no
358 )
359 else
360 zlib=yes
361 fi
362 AM_CONDITIONAL(SUPPORT_ZLIB, [test "x$zlib" = "xno"])
363 AC_SUBST(ZLIB_CFLAGS)
364 AC_SUBST(ZLIB_LIBS)
365
366 AC_CHECK_HEADER(sys/socket.h, AC_DEFINE([HAVE_SOCKET],[],Define to 1 if you have sockets))
367
368 # gtk
369 PKG_CHECK_MODULES(GTK2, [gtk+-2.0], [gtk2_pkgconfig=yes], [gtk2_pkgconfig=no])
370 if test "x$gtk2_pkgconfig" = "xyes"; then
371 AC_DEFINE(HAVE_GTK2, 1, [Define to 1 if you have gtk2])
372 graphics_gtk_drawing_area=yes; graphics_gtk_drawing_area_reason="gtk+-2.0 present"
373 gui_gtk=yes; gui_gtk_reason="gtk+-2.0 present"
374 fi
375
376 # fsync
377 AC_MSG_CHECKING(for fsync)
378 AC_TRY_LINK([#include <unistd.h>], [fsync(0);],AC_MSG_RESULT(yes);AC_DEFINE(HAVE_FSYNC, 1, [Define to 1 if you have the `fsync' function.]),AC_MSG_RESULT(no))
379
380 # system
381 AC_MSG_CHECKING(for system)
382 AC_TRY_LINK([#include <stdlib.h>], [system("/bin/true");],AC_MSG_RESULT(yes);AC_DEFINE(HAVE_SYSTEM, 1, [Define to 1 if you have the `system' function.]),speech_cmdline=no; speech_cmdline_reason="not supported without system()"; AC_MSG_RESULT(no))
383
384 AC_MSG_CHECKING(for CreateProcess)
385 AC_TRY_LINK([#include <windows.h>], [CreateProcess(NULL,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL);],AC_MSG_RESULT(yes);AC_DEFINE(HAVE_CREATEPROCESS, 1, [Define to 1 if you have the `CreateProcess' function.]) speech_cmdline=yes; speech_cmdline_reason="CreateProcess exists", AC_MSG_RESULT(no))
386
387 AC_ARG_ENABLE(graphics-sdl, [ --disable-graphics-sdl don't create graphics sdl], graphics_sdl=$enableval;graphics_sdl_reason="configure parameter")
388
389 if test "x${graphics_sdl}" = "xyes" ; then
390 PKG_CHECK_MODULES(SDL,
391 [sdl],
392 [graphics_sdl="yes"
393 graphics_sdl_reason="sdl present"] ,
394 [graphics_sdl="no"
395 graphics_sdl_reason="sdl not available"]
396 )
397 AC_SUBST(SDL_CFLAGS)
398 AC_SUBST(SDL_LIBS)
399 fi
400 if test "x${graphics_sdl}" = "xyes" ; then
401 save_CPPFLAGS=$CPPFLAGS
402 CPPFLAGS="$SDL_CFLAGS $CPPFLAGS"
403 AC_CHECK_HEADER(SDL_image.h,SDL_IMAGE_LIBS=-lSDL_image,graphics_sdl="no";graphics_sdl_reason="SDL_image.h missing")
404 AC_SUBST(SDL_IMAGE_LIBS)
405 CPPFLAGS=$save_CPPFLAGS
406 fi
407 if test "x${graphics_sdl}" = "xyes" ; then
408 AC_DEFINE(USE_GRAPHICS_SDL, 1, [Build with graphics sdl])
409 fi
410 AM_CONDITIONAL(USE_GRAPHICS_SDL, test "x${graphics_sdl}" = "xyes")
411
412 AC_ARG_ENABLE(postgresql, [ --disable-postgresql don't add postgresql support to maptool], postgresql=$enableval;postgresql_reason="configure parameter")
413 if test "x${postgresql}" = "xyes" ; then
414 if test -z "$PG_CONFIG"; then
415 AC_PATH_PROG([PG_CONFIG], [pg_config], [])
416 fi
417 AC_MSG_CHECKING([for PostgreSQL libraries with $PG_CONFIG])
418 if test ! -x "$PG_CONFIG"; then
419 if test "x${PG_CONFIG}" = "x" ; then
420 postgresql_reason="$PG_CONFIG not executable"
421 else
422 postgresql_reason="pg_config missing"
423 fi
424 postgresql=no
425 AC_MSG_RESULT([no])
426 else
427 POSTGRESQL_CFLAGS="-I`$PG_CONFIG --includedir`"
428 POSTGRESQL_LIBS="-L`$PG_CONFIG --libdir` -lpq"
429 AC_DEFINE(HAVE_POSTGRESQL, 1, [Postgresql libraries available])
430 AC_SUBST(POSTGRESQL_CFLAGS)
431 AC_SUBST(POSTGRESQL_LIBS)
432 AC_MSG_RESULT([yes])
433 fi
434 fi
435 AM_CONDITIONAL(HAVE_POSTGRESQL, test "x${postgresql}" = "xyes")
436 # font
437 # freetype
438 AC_ARG_ENABLE(font-freetype, [ --disable-font-freetype don't add freetype support], font_freetype=$enableval;font_freetype_reason="configure parameter")
439 if test "x${font_freetype}" = "xyes" -a "x${FREETYPE2_CFLAGS}" = "x" -a "x${FREETYPE2_LIBS}" = "x"; then
440 PKG_CHECK_MODULES(FREETYPE2, [freetype2], , [font_freetype=no;font_freetype_reason="Package freetype2 missing"])
441 else
442 fribidi=no
443 fi
444 AC_SUBST(FREETYPE2_CFLAGS)
445 AC_SUBST(FREETYPE2_LIBS)
446 AM_CONDITIONAL(FONT_FREETYPE, test "x${font_freetype}" = "xyes")
447 AC_ARG_WITH(freetype-fonts, [ --with-freetype-fonts specify what fonts to use], AC_DEFINE_UNQUOTED(FREETYPE_FONTS,[${withval}],[Freetype fonts to use]))
448
449 AC_ARG_ENABLE(fontconfig, [ --disable-fontconfig don't add fontconfig support], fontconfig=$enableval;fontconfig_reason="configure parameter")
450 if test "x${fontconfig}" = "xyes"; then
451 PKG_CHECK_MODULES(FONTCONFIG, [fontconfig], [fontconfig=yes], [fontconfig=no])
452 fi
453 if test "x$fontconfig" = "xyes"; then
454 AC_DEFINE(HAVE_FONTCONFIG, 1, [Define to 1 if you have fontconfig])
455 fi
456 AC_SUBST(FONTCONFIG_CFLAGS)
457 AC_SUBST(FONTCONFIG_LIBS)
458
459 AM_CONDITIONAL(FONTS, test "x${font_freetype}" = "xyes" -a "x$fontconfig" != "xyes")
460
461 # fribidi
462 AC_ARG_ENABLE(fribidi, [ --disable-fribidi dont build with fribidi], fribidi=$enableval;fribidi_reason="configure parameter", fribidi=yes)
463 if test x"${fribidi}" = "xyes"; then
464 PKG_CHECK_MODULES(FRIBIDI, [fribidi], [fribidi=yes], [fribidi=no;fribidi_reason="FriBidi library not found"])
465 fi
466 if test x"${fribidi}" = "xyes"; then
467 AC_DEFINE(USE_FRIBIDI, 1, [Build with fribidi support])
468 fi
469 AC_SUBST(FRIBIDI_CFLAGS)
470 AC_SUBST(FRIBIDI_LIBS)
471
472 PKG_CHECK_MODULES(IMLIB2, [imlib2], [imlib2_pkgconfig=yes], [imlib2_pkgconfig=no])
473 if test "x$imlib2_pkgconfig" = "xyes"; then
474 AC_DEFINE(HAVE_IMLIB2, 1, [Define to 1 if you have imlib2])
475 fi
476 AC_SUBST(IMLIB2_CFLAGS)
477 AC_SUBST(IMLIB2_LIBS)
478
479
480
481 AC_ARG_ENABLE(gui-sdl, [ --disable-gui-sdl don't create gui sdl ], MODULE_GUI_SDL=$enableval, MODULE_GUI_SDL=yes)
482 if test "x$MODULE_GUI_SDL" = "xyes"; then
483 AC_CHECK_HEADER(
484 SDL/SDL.h,
485 AC_DEFINE(
486 [HAVE_LIBSDL],
487 [],
488 Define to 1 if you have the <SDL/SDL.h> header file.
489 )
490 SDL_LIBS="-lSDL"
491 sdl=yes,
492 AC_MSG_WARN([*** no SDL/SDL.h -- SDL support disabled])
493 )
494 fi
495
496 AC_CHECK_HEADER(
497 X11/Xmu/Xmu.h,
498 AC_DEFINE(
499 [HAVE_XMU],
500 [],
501 Define to 1 if you have the <X11/Xmu/Xmu.h> header file.
502 )
503 xmu=yes,
504 AC_MSG_WARN([*** no X11/Xmu/Xmu.h -- opengl and SDL support disabled])
505 )
506
507 AC_ARG_ENABLE(graphics-opengl, [ --disable-graphics-opengl disable graphics type OpenGL], graphics_opengl=$enableval;graphics_opengl_reason="configure parameter")
508 if test "x${graphics_opengl}" = "xyes" ; then
509
510 AC_CHECK_HEADER(
511 GL/gl.h,
512 AC_DEFINE(
513 [HAVE_OPENGL],
514 [],
515 Define to 1 if you have the <GL/gl.h> header file.
516 )
517 OPENGL_LIBS="$X_LIBS -lGL -lGLU"
518 opengl=yes,
519 AC_MSG_WARN([*** no GL/gl.h -- opengl and SDL support disabled];graphics_opengl=no;graphics_opengl_reason="Headers missing")
520 )
521
522 AC_CHECK_HEADER(
523 GL/glut.h,
524 AC_DEFINE(
525 [HAVE_GLUT],
526 [],
527 Define to 1 if you have the <GL/glut.h> header file.
528 )
529 glut=yes,
530 AC_MSG_WARN([*** no GL/glut.h -- opengl and SDL support disabled]);graphics_opengl=no;graphics_opengl_reason="Headers missing"
531 )
532
533 AC_SUBST(OPENGL_CFLAGS)
534 AC_SUBST(OPENGL_LIBS)
535
536 AC_CHECK_HEADER(
537 GL/glc.h,
538 AC_DEFINE(
539 [HAVE_GLC],
540 [],
541 Define to 1 if you have the <GL/glc.h> header file.
542 )
543 GLC_LIBS="-lGLC"
544 glc=yes,
545 AC_MSG_WARN([*** no GL/glc.h -- opengl and SDL support disabled])
546 )
547 AC_SUBST(GLC_CFLAGS)
548 AC_SUBST(GLC_LIBS)
549 fi
550
551 AM_CONDITIONAL(GUI_SDL, [test "x$sdl" = "xyes" -a "x$opengl" = "xyes" -a "x$glc" = "xyes" -a "x$xmu" = "xyes" ])
552 AM_CONDITIONAL(GRAPHICS_OPENGL, [test "x$glut" = "xyes" -a "x$opengl" = "xyes" -a "x$glc" = "xyes" ])
553
554 system_shapefile=no
555 AC_CHECK_HEADERS(
556 [shapefil.h libshp/shapefil.h],
557 AC_DEFINE(
558 [HAVE_SYS_SHAPEFILELIB],
559 [1],
560 Define to 1 if you have the <libshp/shapefil.h> header file.
561 )
562 SHAPEFILE_LIBS="-lshp"
563 system_shapefile=yes
564 )
565 AC_SUBST(SHAPEFILE_CFLAGS)
566 AC_SUBST(SHAPEFILE_LIBS)
567 AM_CONDITIONAL(HAVE_SYSTEM_SHAPEFILELIB, [test "x$system_shapefile" = "xyes" ])
568 if test x"${system_shapefile}" = xno
569 then
570 AC_MSG_WARN([*** no libshp/shapefil.h -- using included copy])
571 fi
572
573
574 if test x"${USE_GARMIN}" = xyes
575 then
576 # check for libgarmin
577 PKG_CHECK_MODULES(LIBGARMIN, libgarmin, use_libgarmin=yes, use_libgarmin=no)
578 AC_SUBST(LIBGARMIN_CFLAGS)
579 AC_SUBST(LIBGARMIN_LIBS)
580 fi
581 AM_CONDITIONAL(HAVELIBGARMIN, [test "x$use_libgarmin" = "xyes"])
582
583 ## binding
584 # python
585 AC_ARG_ENABLE(binding-python, [ --disable-binding-python don't create binding python], binding_python=$enableval;binding_python_reason="configure parameter")
586 if test "x${binding_python}" = "xyes"; then
587 AC_PATH_PROG(_PATH_PYTHON,[python])
588 dnl Libraries and flags for embedded Python.
589 dnl FIXME: I wish there was a less icky way to get this.
590 if test "x${_PATH_PYTHON}" != "x" ; then
591 AC_MSG_CHECKING(for Python linkage)
592 AC_PATH_PROG([PYTHONCONFIG], [python-config], [])
593 if test "x${PYTHONCONFIG}" = "x" ; then
594 py_prefix=`$_PATH_PYTHON -c 'import sys; print sys.prefix'`
595 py_ver=`$_PATH_PYTHON -c 'import sys; print sys.version[[:3]]'`
596 py_lib=`$_PATH_PYTHON -c 'import sys; print sys.lib'`
597 py_libdir="${py_prefix}/${py_lib}/python${py_ver}"
598 PYTHON_CFLAGS="-I${py_prefix}/include/python${py_ver}"
599 if test -f $py_libdir/config/Makefile -a -f $py_prefix/include/python${py_ver}/Python.h; then
600 py_libs=`grep '^LIBS=' $py_libdir/config/Makefile | sed -e 's/^.*=//'`
601 py_libc=`grep '^LIBC=' $py_libdir/config/Makefile | sed -e 's/^.*=//'`
602 py_libm=`grep '^LIBM=' $py_libdir/config/Makefile | sed -e 's/^.*=//'`
603 py_liblocalmod=`grep '^LOCALMODLIBS=' $py_libdir/config/Makefile | sed -e 's/^.*=//'`
604 py_libbasemod=`grep '^BASEMODLIBS=' $py_libdir/config/Makefile | sed -e 's/^.*=//'`
605 PYTHON_LIBS="-L$py_libdir/config $py_libs $py_libc $py_libm -lpython$py_ver $py_liblocalmod $py_libbasemod"
606 PYTHON_LIBS=`echo $PYTHON_LIBS | sed -e 's/[ \\t]*/ /g'`
607 AC_MSG_RESULT($py_libdir)
608 else
609 binding_python="no"
610 binding_python_reason="$py_libdir/config/Makefile or $py_prefix/include/python${py_ver}/Python.h missing"
611 fi
612
613 else
614 PYTHON_CFLAGS="`${PYTHONCONFIG} --cflags`"
615 PYTHON_LIBS="`${PYTHONCONFIG} --ldflags`"
616 fi
617 else
618 binding_python="no"
619 binding_python_reason="python executable missing"
620 fi
621 fi
622 if test "x${binding_python}" = xyes ; then
623 AC_DEFINE(USE_BINDING_PYTHON, 1, [Build with binding python])
624 fi
625 AC_SUBST(PYTHON_CFLAGS)
626 AC_SUBST(PYTHON_LIBS)
627 AM_CONDITIONAL(BINDING_PYTHON, test "x${binding_python}" = "xyes")
628
629 # dbus
630 AC_ARG_ENABLE(binding-dbus, [ --disable-binding-dbus don't create binding dbus], binding_dbus=$enableval;binding_dbus_reason="configure parameter")
631 AC_ARG_ENABLE(binding-dbus-use-system-bus, [ --enable-binding-dbus-use-system-bus use system bus for dbus binding], binding_dbus_use_system_bus=$enableval)
632 if test "x${binding_dbus}" = "xyes" ; then
633 PKG_CHECK_MODULES(DBUS, [dbus-glib-1], ,binding_dbus=no)
634 fi
635 if test "x${binding_dbus}" = "xyes" ; then
636 AC_DEFINE(USE_BINDING_DBUS, 1, [Build with binding dbus])
637 vehicle_gpsd_dbus="yes"
638 vehicle_gpsd_dbus_reason="dbus binding present"
639 speech_dbus="yes"
640 speech_dbus_reason="dbus binding present"
641 fi
642 if test "x${binding_dbus_use_system_bus}" = "xyes" ; then
643 AC_DEFINE(DBUS_USE_SYSTEM_BUS, 1, [Use system bus instead of session bus for binding dbus])
644 fi
645 AC_SUBST(DBUS_CFLAGS)
646 AC_SUBST(DBUS_LIBS)
647 AM_CONDITIONAL(BINDING_DBUS, test "x${binding_dbus}" = "xyes")
648 AM_CONDITIONAL(VEHICLE_GPSD_DBUS, test "x${vehicle_gpsd_dbus}" = "xyes")
649 AM_CONDITIONAL(SPEECH_DBUS, test "x${speech_dbus}" = "xyes")
650 AC_ARG_WITH(dbus-service-dir, [ --with-dbus-service-dir specify where the dbus service dir resides], DBUS_SERVICE_DIR=$withval, DBUS_SERVICE_DIR="$datarootdir/dbus-1/services")
651 AC_SUBST(DBUS_SERVICE_DIR)
652
653 # svg
654 AC_ARG_ENABLE(svg, [ --disable-svg disable Scalable Vector Graphics], enable_svg=$enableval, enable_svg=yes)
655 AC_ARG_ENABLE(svg2png, [ --disable-svg2png disable conversion of svgs to pngs], enable_svg2png=$enableval, enable_svg2png=yes)
656 AC_ARG_ENABLE(svg2png-scaling, [ --enable-svg2png-scaling enable conversion of svgs to pngs with specified sizes], SVG2PNG_SCALES=$enableval, SVG2PNG_SCALES="8 16 32 48 96")
657 AC_ARG_ENABLE(svg2png-scaling-flag, [ --enable-svg2png-scaling-flag enable conversion of flag svgs to pngs with specified sizes], SVG2PNG_SCALES_FLAG=$enableval, SVG2PNG_SCALES_FLAG="8 16 32 48 96")
658 AC_ARG_ENABLE(svg2png-scaling-nav, [ --enable-svg2png-scaling-nav enable conversion of nav svgs to pngs with specified sizes], SVG2PNG_SCALES_NAV=$enableval, SVG2PNG_SCALES_NAV="8 16 32 48 96")
659 AC_ARG_WITH(svg2png-use-convert, [ --with-svg2png-use-convert use imagemagick's convert for png creation], SVG2PNG_CONVERTER="convert")
660 AC_ARG_WITH(svg2png-use-rsvg-convert, [ --with-svg2png-use-rsvg-convert use librsvg's rsvg-convert for png creation], SVG2PNG_CONVERTER="rsvg-convert")
661 AC_ARG_WITH(svg2png-use-inkscape, [ --with-svg2png-use-inkscape use inkscapes internal convert routines for png creation], SVG2PNG_CONVERTER="inkscape")
662 AC_ARG_WITH(svg2png-use-ksvgtopng4, [ --with-svg2png-use-ksvgtopng4 use kde4's ksvgtopng4 for png creation], SVG2PNG_CONVERTER="ksvgtopng4")
663 AC_ARG_WITH(svg2png-use-ksvgtopng, [ --with-svg2png-use-ksvgtopng use kde3's convert for png creation], SVG2PNG_CONVERTER="ksvgtopng")
664 if test "x${enable_svg2png}" = "xyes" ; then
665 if test "x${SVG2PNG_CONVERTER}" = "x"; then
666 SVG2PNG_CONVERTER="rsvg-convert ksvgtopng ksvgtopng4 inkscape convert"
667 fi
668 AC_PATH_PROGS([SVG2PNG], ${SVG2PNG_CONVERTER}, [none])
669 if test "x${SVG2PNG}" = "xnone"; then
670 enable_svg2png="no"
671 fi
672 fi
673 AC_SUBST(SVG2PNG)
674 AC_SUBST(SVG2PNG_SCALES)
675 AC_SUBST(SVG2PNG_SCALES_FLAG)
676 AC_SUBST(SVG2PNG_SCALES_NAV)
677 AM_CONDITIONAL(USE_SVG2PNG_SCALES, test "x${SVG2PNG_SCALES}" != "xyes" -a "x${SVG2PNG_SCALES}" != "x")
678 AM_CONDITIONAL(USE_SVG2PNG_SCALES_FLAG, test "x${SVG2PNG_SCALES_FLAG}" != "xyes" -a "x${SVG2PNG_SCALES_FLAG}" != "x")
679 AM_CONDITIONAL(USE_SVG2PNG_SCALES_NAV, test "x${SVG2PNG_SCALES_NAV}" != "xyes" -a "x${SVG2PNG_SCALES_NAV}" != "x")
680 AM_CONDITIONAL(USE_SVG2PNG, test "x${enable_svg2png}" = "xyes")
681 AM_CONDITIONAL(USE_SVG, test "x${enable_svg}" = "xyes")
682
683 # XSLTS
684 AC_ARG_WITH(xslts, [ --with-xslts enable processing of navit.xml with given xslt scripts], XSLTS=$withval, XSLTS="")
685 AC_SUBST(XSLTS)
686 AC_ARG_WITH(saxon, [ --with-saxon specify the saxon xslt processor], SAXON=$withval, SAXON="saxon")
687 AC_SUBST(SAXON)
688
689 # Android Permissions
690 AC_ARG_WITH(android-permissions, [ --with-android-permissions Set additional android permissions], ANDROID_PERMISSIONS=$withval, ANDROID_PERMISSIONS="")
691 AC_SUBST(ANDROID_PERMISSIONS)
692
693 # NLS
694
695 AC_ARG_ENABLE(nls,
696 [ --disable-nls disable Native Language Support ( gettext/libintl )],
697 enable_nls=$enableval, enable_nls=yes)
698
699
700 INTLIBS=""
701 MOFILES=""
702 POFILES=""
703 POIFILES=""
704 LINGUAS=""
705
706 xgettext_glade=no
707 if test "x$enable_nls" = "xyes"; then
708
709 AC_CHECK_FUNC(gettext, [HAVEGETTEXT="yes"],[INTLIBS="-lintl" HAVEGETTEXT="yes"])
710 AC_CHECK_PROG(XGETTEXT, xgettext, xgettext)
711 AC_CHECK_PROG(MSGMERGE, msgmerge, msgmerge)
712 AC_CHECK_PROG(MSGFMT, msgfmt, msgfmt)
713
714 if test "$XGETTEXT" != ""; then
715 if $XGETTEXT --help 2>&1 | grep illegal >/dev/null ; then
716 echo "xgettext isn't GNU version"
717 XGETTEXT=""
718 else
719 if echo '<test/>' | $XGETTEXT -L Glade - ; then
720 xgettext_glade=yes
721 fi
722 fi
723 fi
724
725 if test "$XGETTEXT" != "" ; then
726 PO=""
727 if test "$LINGUAS" = ""; then
728 ling=` (cd $srcdir/po; /bin/ls *.po.in) `
729 for l in $ling; do
730 lcode=`basename $l .po.in`
731 LINGUAS="$LINGUAS$lcode "
732 done
733 fi
734 AC_DEFINE(ENABLE_NLS, [1], [NLS Please])
735 echo "xgettext and gettext() exist; will build i18n support for $LINGUAS"
736 else
737 LINGUAS=""
738 PO=""
739 echo "xgettext doesn't exist; will not build i18n support"
740 enable_nls=no
741 fi
742 for lang in $LINGUAS; do
743 MOFILES="$MOFILES $lang.mo"
744 done
745 for lang in $LINGUAS; do
746 POFILES="$POFILES $lang.po"
747 done
748 for lang in $LINGUAS; do
749 POIFILES="$POIFILES $lang.po.in"
750 done
751
752 AC_SUBST(INTLIBS)
753 AC_SUBST(MOFILES)
754 AC_SUBST(POFILES)
755 AC_SUBST(POIFILES)
756 AM_GNU_GETTEXT_VERSION
757 AM_GNU_GETTEXT(no-libtool, need-ngettext, \$(top_builddir)/intl/)
758 if test "x${shared_libnavit}" = "xyes" -a "x${win32ce}" = "xyes"; then
759 INTLLIBS="\$(top_builddir)/intl/libintl.la"
760 LIBINTL=$INTLLIBS
761 LTLIBINTL=$INTLLIBS
762 fi
763 AC_SUBST(LIBINTL)
764 AC_SUBST(LTLIBINTL)
765 if test x"$LIBINTL" != "x" ;then
766 CFLAGS="$CFLAGS -I\$(top_builddir)/intl/"
767 fi
768
769 fi
770 AM_CONDITIONAL(ENABLE_NLS, [test "x$enable_nls" = "xyes"])
771 AM_CONDITIONAL(XGETTEXT_GLADE, [test "x$xgettext_glade" = "xyes"])
772 AC_CHECK_HEADER(
773 byteswap.h,
774 AC_DEFINE(
775 [HAVE_BYTESWAP_H],
776 [1],
777 [Define to 1 if you have byteswap.h],
778 )
779 ,
780 )
781
782 PACKAGE=navit
783 AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE")
784 AC_DEFINE_UNQUOTED(VERSION, "$VERSION")
785 AC_SUBST(PACKAGE)
786 AC_SUBST(VERSION)
787
788 AC_CHECK_HEADER(wordexp.h,wordexp_h=yes,wordexp_h=no;NAVIT_CFLAGS="$NAVIT_CFLAGS -I\$(top_srcdir)/navit/support/wordexp";WORDEXP_LIBS="-L\$(top_builddir)/navit/support/wordexp -lsupport_wordexp")
789 AM_CONDITIONAL(SUPPORT_WORDEXP, [test "x$wordexp_h" = "xno"])
790
791 support_libc=no
792 AC_ARG_ENABLE(support_libc, [ --enable-support-libc enable builtin mini libc ], support_libc=$enableval)
793 AM_CONDITIONAL(SUPPORT_LIBC, [test "x$support_libc" = "xyes"])
794 if test "x$support_libc" = "xyes"; then
795 CFLAGS="$CFLAGS -I\$(top_srcdir)/navit/support/libc"
796 LIBC_LIBS="-L\$(top_builddir)/navit/support/libc -lsupport_libc"
797 fi
798
799 ## graphics
800 AC_ARG_ENABLE(graphics, [ --disable-graphics disable graphics], graphics=$enableval;graphics_reason="configure parameter")
801 AM_CONDITIONAL(GRAPHICS, test "x${graphics}" = "xyes")
802 if test "x$graphics" = "xyes"; then
803 AC_DEFINE([USE_GRAPHICS],[1],Define to 1 if you want to use graphics.)
804 fi
805
806 # gd
807
808 # android
809 AC_ARG_ENABLE(graphics-android, [ --disable-graphics-android disable graphics type android], graphics_android=$enableval;graphics_android_reason="configure parameter")
810 AM_CONDITIONAL(GRAPHICS_ANDROID, test "x${graphics_android}" = "xyes")
811 # gd
812 AC_ARG_ENABLE(graphics-gd, [ --enable-graphics-gd enable graphics type gd], graphics_gd=$enableval;graphics_gd_reason="configure parameter")
813 if test "x${graphics_gd}" = "xyes" ; then
814 if test -z "$GDLIB_CONFIG"; then
815 AC_PATH_PROG([GDLIB_CONFIG], [gdlib-config], [])
816 fi
817 AC_MSG_CHECKING([for gdlib with $GDLIB_CONFIG])
818 if test ! -x "$GDLIB_CONFIG"; then
819 if test "x${GDLIB_CONFIG}" = "x" ; then
820 graphics_gd_reason="$GDLIB_CONFIG not executable"
821 else
822 graphics_gd_reason="gdlib-config missing"
823 fi
824 graphics_gd=no
825 AC_MSG_RESULT([no])
826 else
827 if test "x${GD_CFLAGS}" = "x" ; then
828 GD_CFLAGS="-I`$GDLIB_CONFIG --includedir`"
829 fi
830 if test "x${GD_LIBS}" = "x" ; then
831 GD_LIBS="-L`$GDLIB_CONFIG --libdir` -lgd `$GDLIB_CONFIG --libs`"
832 fi
833 AC_SUBST(GD_CFLAGS)
834 AC_SUBST(GD_LIBS)
835 AC_MSG_RESULT([yes])
836 fi
837 fi
838 AM_CONDITIONAL(GRAPHICS_GD, test "x${graphics_gd}" = "xyes")
839 AC_CHECK_HEADER(
840 sys/shm.h,
841 AC_DEFINE(
842 [HAVE_SHMEM],
843 [],
844 Define to 1 if you have shared memory
845 )
846 )
847 AC_CHECK_HEADER(
848 X11/xpm.h,
849 AC_DEFINE(
850 [HAVE_XPM],
851 [],
852 Define to 1 if you have xpm header
853 )
854 )
855 if test "x${graphics_gd}" = "xyes" ; then
856 save_CPPFLAGS=$CPPFLAGS
857 save_LIBS=$LIBS
858 LIBS="$GD_LIBS $LIBS"
859 CPPFLAGS="$GD_CFLAGS $CPPFLAGS"
860 AC_TRY_LINK([#include <gd.h>], [gdImageCreateFromPng(0);],AC_MSG_RESULT(yes);AC_DEFINE(HAVE_GRAPHICS_GD_PNG, 1, [Define to 1 if you have png support in gd.]),AC_MSG_RESULT(no))
861 CPPFLAGS=$save_CPPFLAGS
862 LIBS=$save_LIBS
863 fi
864
865 # gtk_drawing_area
866 AC_ARG_ENABLE(graphics-gtk-drawing-area, [ --disable-graphics-gtk-drawing-area disable graphics type gtk_drawing_area], graphics_gtk_drawing_area=$enableval;graphics_gtk_drawing_area_reason="configure parameter")
867 AM_CONDITIONAL(GRAPHICS_GTK_DRAWING_AREA, [test "x${graphics_gtk_drawing_area}" = "xyes"])
868 # null
869 AC_ARG_ENABLE(graphics-null, [ --disable-graphics-null disable graphics type null], graphics_null=$enableval;graphics_null_reason="configure parameter")
870 AM_CONDITIONAL(GRAPHICS_NULL, test "x${graphics_null}" = "xyes")
871 # win32
872 AC_ARG_ENABLE(graphics-win32, [ --disable-graphics-win32 disable graphics type win32], graphics_win32=$enableval;graphics_win32_reason="configure parameter")
873 AM_CONDITIONAL(GRAPHICS_WIN32, test "x${graphics_win32}" = "xyes")
874 # qt_qpainter
875 AC_ARG_ENABLE(graphics-qt-qpainter, [ --disable-graphics-qt-qpainter disable graphics type qt-qpainter], graphics_qt_qpainter=$enableval;graphics_qt_qpainter_reason="configure parameter")
876 if test "x${graphics_qt_qpainter}" = "xyes" -a "x${QT_GUI_CFLAGS}" = "x" -a "x${QT_GUI_LIBS}" = "x"; then
877 PKG_CHECK_MODULES(QT_GUI, [QtGui QtCore],graphics_qt_qpainter=yes,graphics_qt_qpainter=no;graphics_qt_qpainter_reason="Packages QtGui and/or QtCore missing")
878 if test "x${graphics_qt_qpainter}" = "xno"; then
879 PKG_CHECK_MODULES(QT_GUI, [qt-mt],graphics_qt_qpainter=yes;graphics_qt_qpainter_reason="Package qt-mt present",graphics_qt_qpainter=no)
880 fi
881 fi
882 if test "x${graphics_qt_qpainter}" = "xyes" ; then
883 PKG_CHECK_MODULES(QT_SVG, [QtSvg], have_qt_svg=yes, have_qt_svg=no)
884 if test "x${have_qt_svg}" = "xyes"; then
885 AC_DEFINE([HAVE_QT_SVG],[],Define to 1 if qt supports svg)
886 fi
887 fi
888 if test "x${graphics_qt_qpainter}" = "xyes" ; then
889 AC_DEFINE(USE_GRAPICS_QT_QPAINTER, 1, [Build with graphics qt_qpainter])
890 fi
891 AC_SUBST(QT_GUI_CFLAGS)
892 AC_SUBST(QT_GUI_LIBS)
893 AC_SUBST(QT_SVG_CFLAGS)
894 AC_SUBST(QT_SVG_LIBS)
895 AM_CONDITIONAL(GRAPHICS_QT_QPAINTER, test "x${graphics_qt_qpainter}" = "xyes")
896 MOC=`$PKG_CONFIG QtGui --variable=moc_location`
897 if test "x${MOC}" = "x"; then
898 AC_CHECK_PROG(MOC, moc, moc)
899 fi
900 AC_SUBST(MOC)
901
902
903 ## map
904 # binfile
905 AC_ARG_ENABLE(map-binfile, [ --disable-map-binfile disable graphics type android], map_binfile=$enableval;map_binfile_reason="configure parameter")
906 AM_CONDITIONAL(MAP_BINFILE, test "x${map_binfile}" = "xyes")
907 # filter
908 AC_ARG_ENABLE(map-filter, [ --disable-map-filter disable graphics type android], map_filter=$enableval;map_filter_reason="configure parameter")
909 AM_CONDITIONAL(MAP_FILTER, test "x${map_filter}" = "xyes")
910 # mg
911 AC_ARG_ENABLE(map-mg, [ --disable-map-mg disable graphics type android], map_mg=$enableval;map_mg_reason="configure parameter")
912 AM_CONDITIONAL(MAP_MG, test "x${map_mg}" = "xyes")
913 # shapefile
914 AC_ARG_ENABLE(map-shapefile, [ --disable-map-shapefile disable graphics type android], map_shapefile=$enableval;map_shapefile_reason="configure parameter")
915 AM_CONDITIONAL(MAP_SHAPEFILE, test "x${map_shapefile}" = "xyes")
916 # textfile
917 AC_ARG_ENABLE(map-textfile, [ --disable-map-textfile disable graphics type android], map_textfile=$enableval;map_textfile_reason="configure parameter")
918 AM_CONDITIONAL(MAP_TEXTFILE, test "x${map_textfile}" = "xyes")
919
920 ## osd
921 # core
922 AC_ARG_ENABLE(osd-core, [ --disable-osd-core disable graphics type android], osd_core=$enableval;osd_core_reason="configure parameter")
923 AM_CONDITIONAL(OSD_CORE, test "x${osd_core}" = "xyes")
924
925 ## gui
926 # gtk
927 AC_ARG_ENABLE(gui-gtk, [ --disable-gui-gtk disable gui type gtk ], gui_gtk=$enableval)
928 AM_CONDITIONAL(GUI_GTK, [test "x${gui_gtk}" = "xyes"])
929 # internal
930 AC_ARG_ENABLE(gui-internal, [ --disable-gui-internal disable gui type internal], gui_internal=$enableval;gui_internal_reason="configure parameter")
931 AM_CONDITIONAL(GUI_INTERNAL, test "x${gui_internal}" = "xyes")
932 # win32
933 AC_ARG_ENABLE(gui-win32, [ --disable-gui-win32 disable gui type win32], gui_win32=$enableval;gui_win32_reason="configure parameter")
934 AM_CONDITIONAL(GUI_WIN32, test "x${gui_win32}" = "xyes")
935 # qml
936 AC_ARG_ENABLE(gui-qml, [ --disable-gui-qml disable gui type QML], gui_qml=$enableval;gui_qml_reason="configure parameter")
937 if test "x${gui_qml}" = "xyes" -a "x${QT_GUI_CFLAGS}" = "x" -a "x${QT_GUI_LIBS}" = "x"; then
938 PKG_CHECK_MODULES(QT_GUI, [QtGui QtCore], ,gui_qml=no;gui_qml_reason="Packages QtGui and/or QtCore are missing")
939 fi
940 if test "x${gui_qml}" = "xyes" -a "x${QT_XML_CFLAGS}" = "x" -a "x${QT_XML_LIBS}" = "x"; then
941 PKG_CHECK_MODULES(QT_XML, [QtXml], ,gui_qml=no;gui_qml_reason="Package QtXml is missing")
942 fi
943 if test "x${gui_qml}" = "xyes" -a "x${QT_DECLARATIVE_CFLAGS}" = "x" -a "x${QT_DECLARATIVE_LIBS}" = "x"; then
944 PKG_CHECK_MODULES(QT_DECLARATIVE, [QtDeclarative >= 4.6.0 ], ,gui_qml=no;gui_qml_reason="Packages QtDeclarative is missing")
945 fi
946 if test "x${gui_qml}" = "xyes" ; then
947 AC_DEFINE(USE_GUI_QML, 1, [Build with gui qml])
948 fi
949 AC_SUBST(QT_GUI_CFLAGS)
950 AC_SUBST(QT_GUI_LIBS)
951 AC_SUBST(QT_DECLARATIVE_CFLAGS)
952 AC_SUBST(QT_DECLARATIVE_LIBS)
953 AC_SUBST(QT_XML_CFLAGS)
954 AC_SUBST(QT_XML_LIBS)
955 AM_CONDITIONAL(GUI_QML, test "x${gui_qml}" = "xyes")
956
957 ## plugins
958 # pedestrian
959 AC_ARG_ENABLE(plugin-pedestrian, [ --enable-plugin-pedestrian enable pedestrian plugin], plugin_pedestrian=$enableval;plugin_pedestrian_reason="configure parameter")
960 AM_CONDITIONAL(PLUGIN_PEDESTRIAN, test "x${plugin_pedestrian}" = "xyes")
961
962 ## routing
963 AC_ARG_ENABLE(routing, [ --disable-routing disable routing], routing=$enableval;routing_reason="configure parameter")
964 AM_CONDITIONAL(ROUTING, test "x${routing}" = "xyes")
965 if test "x$routing" = "xyes"; then
966 AC_DEFINE([USE_ROUTING],[1],Define to 1 if you want to have routing.)
967 fi
968
969 ## speech
970 # android
971 AC_ARG_ENABLE(speech-android, [ --disable-speech-android disable speech type android], speech_android=$enableval;speech_android_reason="configure parameter")
972 AM_CONDITIONAL(SPEECH_ANDROID, test "x${speech_android}" = "xyes")
973 # cmdline
974 AC_ARG_ENABLE(speech-cmdline, [ --disable-speech-cmdline disable speech type cmdline], speech_cmdline=$enableval;speech_cmdline_reason="configure parameter")
975 AM_CONDITIONAL(SPEECH_CMDLINE, test "x${speech_cmdline}" = "xyes")
976 # espeak
977 AC_ARG_ENABLE(speech-espeak, [ --disable-speech-espeak disable speech type espeak], speech_espeak=$enableval;speech_espeak_reason="configure parameter")
978 AM_CONDITIONAL(SPEECH_ESPEAK, test "x${speech_espeak}" = "xyes")
979 # speech-dispatcher
980 AC_ARG_ENABLE(speech-speech-dispatcher, [ --disable-speech-speech-dispatcher disable speech type speech-dispatcher], speech_speech_dispatcher=$enableval;speech_speech_dispatcher_reason="configure parameter")
981 if test "x$speech_speech_dispatcher" = "xyes"; then
982 AC_CHECK_HEADER(libspeechd.h, AC_DEFINE([HAVE_LIBSPEECHD],[],Define to 1 if you have the <libspeechd.h> header file.) SPEECHD_LIBS="-lspeechd", speech_speech_dispatcher=no; speech_speech_dispatcher_reason="libspeechd.h missing")
983 fi
984 AC_SUBST(SPEECHD_CFLAGS)
985 AC_SUBST(SPEECHD_LIBS)
986 AM_CONDITIONAL(SPEECH_SPEECH_DISPATCHER, test "x${speech_speech_dispatcher}" = "xyes")
987 AM_CONDITIONAL(SUPPORT_ESPEAK, test "x${support_espeak}" = "xyes")
988
989 ## vehicle
990 # android
991 AC_ARG_ENABLE(vehicle-android, [ --disable-vehicle-android disable vehicle type android], vehicle_android=$enableval;vehicle_android_reason="configure parameter")
992 AM_CONDITIONAL(VEHICLE_ANDROID, test "x${vehicle_android}" = "xyes")
993 # demo
994 AC_ARG_ENABLE(vehicle-demo, [ --disable-vehicle-demo disable vehicle type demo], vehicle_demo=$enableval;vehicle_demo_reason="configure parameter")
995 AM_CONDITIONAL(VEHICLE_DEMO, test "x${vehicle_demo}" = "xyes")
996 # file
997 AC_ARG_ENABLE(vehicle-file, [ --disable-vehicle-file disable vehicle type file], vehicle_file=$enableval;vehicle_file_reason="configure parameter")
998 AM_CONDITIONAL(VEHICLE_FILE, test "x${vehicle_file}" = "xyes")
999 # gpsd
1000 AC_ARG_ENABLE(vehicle-gpsd, [ --disable-vehicle-gpsd disable vehicle type gpsd], vehicle_gpsd=$enableval;vehicle_gpsd_reason="configure parameter")
1001 if test "x${vehicle_gpsd}" = xyes
1002 then
1003 PKG_CHECK_MODULES([GPSD], [libgps], have_libgps="yes", have_libgps="no")
1004 if test "x$have_libgps" = "xyes"; then
1005 AC_DEFINE([HAVE_LIBGPS],[],Define to 1 if you have libgps.)
1006 PKG_CHECK_MODULES([LIBGPS19], [libgps >= 2.90], have_libgps19="yes", have_libgps19="no")
1007 if test "x$have_libgps19" = "xyes"; then
1008 AC_DEFINE([HAVE_LIBGPS19],[],Define to 1 if you have libgps19.)
1009 fi
1010 else
1011 AC_CHECK_HEADER(gps.h, AC_DEFINE([HAVE_LIBGPS],[],Define to 1 if you have the <gps.h> header file.) GPSD_LIBS="-lgps", vehicle_gpsd=no; vehicle_gpsd_reason="no gps.h and no gpsd pkgconfig" )
1012 fi
1013 fi
1014 AC_SUBST(GPSD_CFLAGS)
1015 AC_SUBST(GPSD_LIBS)
1016 AM_CONDITIONAL(VEHICLE_GPSD, [test "x${vehicle_gpsd}" = "xyes"])
1017 # gypsy
1018 AC_ARG_ENABLE(vehicle-gypsy,[ --disable-vehicle-gypsy disable vehicle type gypsy], vehicle_gypsy=$enableval;vehicle_gypsy_reason="configure parameter")
1019 if test "x${vehicle_gypsy}" = "xyes"
1020 then
1021 PKG_CHECK_MODULES(GYPSY, gypsy, ,vehicle_gypsy=no;vehicle_gypsy_reason="package gypsy missing")
1022 fi
1023 AC_SUBST(GYPSY_CFLAGS)
1024 AC_SUBST(GYPSY_LIBS)
1025 AM_CONDITIONAL(VEHICLE_GYPSY, test "x${vehicle_gypsy}" = "xyes")
1026 # maemo
1027 AC_ARG_ENABLE(vehicle-maemo, [ --disable-vehicle-maemo disable vehicle type maemo], vehicle_maemo=$enableval;vehicle_maemo_reason="configure parameter")
1028 if test "x${vehicle_maemo}" = "xyes" ; then
1029 PKG_CHECK_MODULES(LIBLOCATION, liblocation, [
1030 AC_SUBST(LIBLOCATION_CFLAGS)
1031 AC_SUBST(LIBLOCATION_LIBS)
1032 ], [
1033 AC_MSG_RESULT(no)
1034 vehicle_maemo=no
1035 vehicle_maemo_reason="no maemo location library found"
1036 ])
1037 fi
1038 AM_CONDITIONAL(VEHICLE_MAEMO, test "x${vehicle_maemo}" = "xyes")
1039 # null
1040 AC_ARG_ENABLE(vehicle-null, [ --enable-vehicle-null enable vehicle type null], vehicle_null=$enableval;vehicle_null_reason="configure parameter")
1041 AM_CONDITIONAL(VEHICLE_NULL, test "x${vehicle_null}" = "xyes")
1042 # wince
1043 AC_ARG_ENABLE(vehicle-wince, [ --disable-vehicle-wince disable vehicle type wince], vehicle_wince=$enableval;vehicle_wince_reason="configure parameter")
1044 AM_CONDITIONAL(VEHICLE_WINCE, test "x${vehicle_wince}" = "xyes")
1045 # iphone
1046 AC_ARG_ENABLE(vehicle-iphone, [ --disable-vehicle-iphone disable vehicle type iphone], vehicle_iphone=$enableval;vehicle_iphone_reason="configure parameter")
1047 AM_CONDITIONAL(VEHICLE_IPHONE, test "x${vehicle_iphone}" = "xyes")
1048 if test "x${vehicle_iphone}" = "xyes"
1049 then
1050 IPHONE_LIBS=-Wl,-framework,CoreLocation
1051 fi
1052 AC_SUBST(IPHONE_CFLAGS)
1053 AC_SUBST(IPHONE_LIBS)
1054 NAVIT_CFLAGS="$NAVIT_CFLAGS $GLIB_CFLAGS $GMODULE_CFLAGS"
1055 NAVIT_LIBS="$NAVIT_LIBS $GLIB_LIBS $GMODULE_LIBS $LIBINTL"
1056 AC_SUBST(NAVIT_CFLAGS)
1057 AC_SUBST(NAVIT_LIBS)
1058 AC_SUBST(WORDEXP_LIBS)
1059 AC_SUBST(LIBC_LIBS)
1060 AC_SUBST(WINDRES)
1061
1062 AC_CONFIG_FILES([
1063 Makefile
1064 navit/Makefile
1065 navit/autoload/Makefile
1066 navit/autoload/osso/Makefile
1067 navit/binding/Makefile
1068 navit/binding/python/Makefile
1069 navit/binding/dbus/Makefile
1070 navit/map/Makefile
1071 navit/map/mg/Makefile
1072 navit/map/textfile/Makefile
1073 navit/map/shapefile/Makefile
1074 navit/map/filter/Makefile
1075 navit/map/binfile/Makefile
1076 navit/map/garmin/Makefile
1077 navit/maptool/Makefile
1078 navit/fib-1.1/Makefile
1079 navit/font/Makefile
1080 navit/font/freetype/Makefile
1081 navit/fonts/Makefile
1082 navit/graphics/Makefile
1083 navit/graphics/android/Makefile
1084 navit/graphics/gd/Makefile
1085 navit/graphics/gtk_drawing_area/Makefile
1086 navit/graphics/opengl/Makefile
1087 navit/graphics/null/Makefile
1088 navit/graphics/sdl/Makefile
1089 navit/graphics/qt_qpainter/Makefile
1090 navit/graphics/win32/Makefile
1091 navit/gui/Makefile
1092 navit/gui/gtk/Makefile
1093 navit/gui/internal/Makefile
1094 navit/gui/win32/Makefile
1095 navit/gui/qml/Makefile
1096 navit/gui/qml/skins/Makefile
1097 navit/gui/qml/skins/navit/Makefile
1098 navit/osd/Makefile
1099 navit/osd/core/Makefile
1100 navit/plugin/Makefile
1101 navit/plugin/pedestrian/Makefile
1102 navit/speech/Makefile
1103 navit/speech/android/Makefile
1104 navit/speech/cmdline/Makefile
1105 navit/speech/dbus/Makefile
1106 navit/speech/espeak/Makefile
1107 navit/speech/speech_dispatcher/Makefile
1108 navit/support/Makefile
1109 navit/support/espeak/Makefile
1110 navit/support/ezxml/Makefile
1111 navit/support/glib/Makefile
1112 navit/support/libc/Makefile
1113 navit/support/libpng/Makefile
1114 navit/support/win32/Makefile
1115 navit/support/wordexp/Makefile
1116 navit/support/zlib/Makefile
1117 navit/vehicle/Makefile
1118 navit/vehicle/android/Makefile
1119 navit/vehicle/file/Makefile
1120 navit/vehicle/gpsd/Makefile
1121 navit/vehicle/gpsd_dbus/Makefile
1122 navit/vehicle/gypsy/Makefile
1123 navit/vehicle/maemo/Makefile
1124 navit/vehicle/null/Makefile
1125 navit/vehicle/demo/Makefile
1126 navit/vehicle/wince/Makefile
1127 navit/vehicle/iphone/Makefile
1128 navit/xpm/Makefile
1129 navit/maps/Makefile
1130 intl/Makefile
1131 po/Makefile
1132 man/Makefile
1133 ])
1134 #src/data/garmin_img/Makefile
1135
1136 AC_OUTPUT
1137
1138
1139 echo ""
1140 echo ""
1141 echo "Summary of your installation :"
1142 # FIXME : maybe elaborate missing dependencies
1143 if test x"$sdl" != xyes
1144 then
1145 sdl_failures="(libsdl maybe?) "
1146 fi
1147 if test x"$xmu" != xyes
1148 then
1149 sdl_failures=$sdl_failures"libxmu "
1150 fi
1151 if test x"$glut" != xyes
1152 then
1153 sdl_failures=$sdl_failures"glut "
1154 fi
1155 if test x"$glc" != xyes
1156 then
1157 sdl_failures=$sdl_failures"quesoglc "
1158 fi
1159 if test -z "$sdl_failures"
1160 then
1161 echo "OpenGL gui : ENABLED, with $CEGUI_LIBS"
1162 else
1163 echo "OpenGL gui : DISABLED : you are missing $sdl_failures"
1164 fi
1165 if test x"$enable_hildon" = xyes
1166 then
1167 echo "Maemo/Hildon: ENABLED"
1168 else
1169 echo "Maemo/Hildon: DISABLED"
1170 fi
1171 if test x"$enable_osso" = xyes
1172 then
1173 echo "Maemo/OSSO: ENABLED"
1174 else
1175 echo "Maemo/OSSO: DISABLED"
1176 fi
1177 if test x"${USE_GARMIN}" = xyes
1178 then
1179 if test "x$use_libgarmin" = "xyes"
1180 then
1181 echo "Garmin IMG : ENABLED"
1182 else
1183 echo "Garmin IMG : DISABLED (you don't have libgarmin)"
1184 fi
1185 else
1186 echo "Garmin IMG : DISABLED (you requested it)"
1187 fi
1188
1189 if test x"$LIBINTL" = "x" ;then
1190 nls_libs="system gettext support"
1191 else
1192 nls_libs="$LIBINTL"
1193 fi
1194 echo "Plugins: $plugins ($plugins_reason)"
1195 echo "Postgresql: $postgresql ($postgresql_reason)"
1196 echo "Samplemap: $samplemap ($samplemap_reason)"
1197 echo "NLS Support: $enable_nls ($nls_libs)"
1198 echo "Routing: $routing ($routing_reason)"
1199 echo "Font renderers:"
1200 echo " freetype: $font_freetype ($font_freetype_reason)"
1201 echo " FriBidi enabled: $fribidi ($fribidi_reason)"
1202
1203 echo "Graphics types: $graphics ($graphics_reason)"
1204 echo " android: $graphics_android ($graphics_android_reason)"
1205 echo " gtk_drawing_area: $graphics_gtk_drawing_area ($graphics_gtk_drawing_area_reason)"
1206 echo " null: $graphics_null ($graphics_null_reason)"
1207 echo " qt_qpainter: $graphics_qt_qpainter ($graphics_qt_qpainter_reason)"
1208 echo " win32: $graphics_win32 ($graphics_win32_reason)"
1209 echo " OpenGL: $graphics_opengl ($graphics_opengl_reason)"
1210 echo " gd: $graphics_gd ($graphics_gd_reason)"
1211 echo " sdl: $graphics_sdl ($graphics_sdl_reason)"
1212
1213 echo "GUI types:"
1214 echo " gtk: $gui_gtk ($gui_gtk_reason)"
1215 echo " internal: $gui_internal ($gui_internal_reason)"
1216 echo " win32: $gui_win32 ($gui_win32_reason)"
1217 echo " qml: $gui_qml ($gui_qml_reason)"
1218
1219 echo "Map types:"
1220 echo " binfile: $map_binfile ($map_binfile_reason)"
1221 echo " filter: $map_filter ($map_filter_reason)"
1222 echo " mg: $map_mg ($map_mg_reason)"
1223 echo " shapefile: $map_shapefile ($map_shapefile_reason)"
1224 echo " textfile: $map_textfile ($map_textfile_reason)"
1225
1226
1227 echo "Bindings:"
1228 echo " dbus: $binding_dbus ($binding_dbus_reason)"
1229 echo " python: $binding_python ($binding_python_reason)"
1230
1231 echo "OSD types:"
1232 echo " core: $osd_core ($osd_core_reason)"
1233
1234 echo "Plugins:"
1235 echo " pedestrian: $plugin_pedestrian ($plugin_pedestrian_reason)"
1236
1237 echo "Speech types:"
1238 echo " android: $speech_android ($speech_android_reason)"
1239 echo " cmdline: $speech_cmdline ($speech_cmdline_reason)"
1240 echo " dbus: $speech_dbus ($speech_dbus_reason)"
1241 echo " espeak: $speech_espeak ($speech_espeak_reason)"
1242 echo " speech_dispatcher: $speech_speech_dispatcher ($speech_speech_dispatcher_reason)"
1243
1244 echo "Vehicle types:"
1245 echo " android: $vehicle_android ($vehicle_android_reason)"
1246 echo " demo: $vehicle_demo ($vehicle_demo_reason)"
1247 echo " file: $vehicle_file ($vehicle_file_reason)"
1248 echo " gpsd: $vehicle_gpsd ($vehicle_gpsd_reason)"
1249 echo " gpsd_dbus: $vehicle_gpsd_dbus ($vehicle_gpsd_dbus_reason)"
1250 echo " gypsy: $vehicle_gypsy ($vehicle_gypsy_reason)"
1251 echo " maemo: $vehicle_maemo ($vehicle_maemo_reason)"
1252 echo " null: $vehicle_null ($vehicle_null_reason)"
1253 echo " wince: $vehicle_wince ($vehicle_wince_reason)"
1254 echo " iphone: $vehicle_iphone ($vehicle_iphone_reason)"
1255
1256 if test "x${gtk2_pkgconfig}" != "xyes" -a "x${gui_win32}" != "xyes" -a "x${gui_internal}" != "xyes" -a "x${gui_qml}" != "xyes"
1257 then
1258 echo ""
1259 echo ""
1260 echo "*** WARNING! you have no gui that can be built! ***"
1261 echo "Please install the dependency for at least gtk or sdl gui"
1262 echo "For more details, see the wiki at http://wiki.navit-project.org/"
1263 echo ""
1264 fi
1265
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。