惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

P
Palo Alto Networks Blog
P
Proofpoint News Feed
GbyAI
GbyAI
Microsoft Azure Blog
Microsoft Azure Blog
B
Blog
Google DeepMind News
Google DeepMind News
N
Netflix TechBlog - Medium
Recorded Future
Recorded Future
M
MIT News - Artificial intelligence
罗磊的独立博客
J
Java Code Geeks
月光博客
月光博客
F
Full Disclosure
博客园 - 聂微东
人人都是产品经理
人人都是产品经理
U
Unit 42
WordPress大学
WordPress大学
A
About on SuperTechFans
C
Cyber Attacks, Cyber Crime and Cyber Security
SecWiki News
SecWiki News
Security Latest
Security Latest
C
Check Point Blog
C
CERT Recently Published Vulnerability Notes
小众软件
小众软件
I
InfoQ
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
B
Blog RSS Feed
V
Visual Studio Blog
博客园_首页
NISL@THU
NISL@THU
I
Intezer
Spread Privacy
Spread Privacy
AWS News Blog
AWS News Blog
The Register - Security
The Register - Security
D
Darknet – Hacking Tools, Hacker News & Cyber Security
Latest news
Latest news
Project Zero
Project Zero
博客园 - 叶小钗
C
Cybersecurity and Infrastructure Security Agency CISA
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
P
Privacy International News Feed
博客园 - 【当耐特】
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
T
Threat Research - Cisco Blogs
Simon Willison's Weblog
Simon Willison's Weblog
T
Tor Project blog
V
Vulnerabilities – Threatpost
博客园 - 司徒正美
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
雷峰网
雷峰网

博客园 - Xuemin_Zhang

Saving changes is not permitted. The changes you have made require the following tables to be dropped and re-created. 国外7个源代码/库搜索引擎网站 【转】屏蔽优酷、土豆等视频网站15秒广告的最全最简单方法 QT编译之错--”Basic XLib functionality test failed!” [转]国内地图服务可用性比较 Ubuntu下安装jdk Linux下解压缩命令汇总 SlickEdit 2010破解 C++ std::pair 与 std::make_pair NetBeans IDE 配置qmake在qvfb下开发 - Xuemin_Zhang Navit学习笔记(六)-- Navit的attr模型 Navit学习笔记(五) C语言宏定义中#与##的用法 - Xuemin_Zhang - 博客园 Navit学习笔记(三) Navit学习笔记(二) Navit学习笔记(一) 论文答辩PPT制作攻略 Qt乱码问题 - Xuemin_Zhang - 博客园 [转]gcc交叉编译错误之一: multiple definition of - Xuemin_Zhang
Navit学习笔记(四)
Xuemin_Zhang · 2010-09-07 · via 博客园 - Xuemin_Zhang

  本文阐述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 -"$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" -"x${GLIB_CFLAGS}" = "x" -"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" -"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" -"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 -"$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 ! -"$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" -"x${FREETYPE2_CFLAGS}" = "x" -"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" -"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" -"x$opengl" = "xyes" -"x$glc" = "xyes" -"x$xmu" = "xyes" ])
 552 AM_CONDITIONAL(GRAPHICS_OPENGL, [test "x$glut" = "xyes" -"x$opengl" = "xyes" -"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 -'import sys; print sys.prefix'`
 595             py_ver=`$_PATH_PYTHON -'import sys; print sys.version[[:3]]'`
 596             py_lib=`$_PATH_PYTHON -'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 --f $py_prefix/include/python${py_ver}/Python.h; then
 600                 py_libs=`grep '^LIBS=' $py_libdir/config/Makefile | sed -'s/^.*=//'`
 601                 py_libc=`grep '^LIBC=' $py_libdir/config/Makefile | sed -'s/^.*=//'`
 602                 py_libm=`grep '^LIBM=' $py_libdir/config/Makefile | sed -'s/^.*=//'`
 603                 py_liblocalmod=`grep '^LOCALMODLIBS=' $py_libdir/config/Makefile | sed -'s/^.*=//'`
 604                 py_libbasemod=`grep '^BASEMODLIBS=' $py_libdir/config/Makefile | sed -'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 -'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" -"x${SVG2PNG_SCALES}" != "x")
 678 AM_CONDITIONAL(USE_SVG2PNG_SCALES_FLAG, test "x${SVG2PNG_SCALES_FLAG}" != "xyes" -"x${SVG2PNG_SCALES_FLAG}" != "x")
 679 AM_CONDITIONAL(USE_SVG2PNG_SCALES_NAV, test "x${SVG2PNG_SCALES_NAV}" != "xyes" -"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" -"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 -"$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 ! -"$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" -"x${QT_GUI_CFLAGS}" = "x" -"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" -"x${QT_GUI_CFLAGS}" = "x" -"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" -"x${QT_XML_CFLAGS}" = "x" -"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" -"x${QT_DECLARATIVE_CFLAGS}" = "x" -"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 -"$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" -"x${gui_win32}" != "xyes" -"x${gui_internal}" != "xyes" -"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