Update:Gui:Removing deprecated gui
[navit-package] / configure.in
index a3324b7..647da0a 100644 (file)
@@ -1,25 +1,92 @@
-AC_INIT(navit, 0.0.2)
+AC_INIT(navit, 0.1.1)
+SOURCE_MODE=svn
+
 AM_INIT_AUTOMAKE
 AM_CONFIG_HEADER(config.h)
+
+AC_SUBST(SOURCE_MODE)
+AM_CONDITIONAL(SOURCE_MODE_SVN, [test "x${SOURCE_MODE}" = "xsvn"])
+
+if test "x${SOURCE_MODE}" = "xsvn" ; then
+       USE_MAINTAINER_MODE=yes
+else
+       USE_MAINTAINER_MODE=no
+fi
+
+AC_DEFUN([AM_MAINTAINER_MODE],
+[AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
+  dnl maintainer-mode is enabled by default (reason of inclusion of this function)
+  AC_ARG_ENABLE(maintainer-mode,
+[  --enable-maintainer-mode  enable make rules and dependencies not useful
+                          (and sometimes confusing) to the casual installer],
+      USE_MAINTAINER_MODE=$enableval)
+  AC_MSG_RESULT([$USE_MAINTAINER_MODE])
+  AM_CONDITIONAL(MAINTAINER_MODE, [test $USE_MAINTAINER_MODE = yes])
+  MAINT=$MAINTAINER_MODE_TRUE
+  AC_SUBST(MAINT)dnl
+]
+)
+
+AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE])
+
 AM_MAINTAINER_MODE
 
-AC_GNU_SOURCE
+
+plugins=yes; plugins_reason=default
+postgresql=yes; postgresql_reason=default
+samplemap=yes; samplemap_reason=default
+binding_dbus=yes; binding_dbus_reason=default
+binding_python=yes; binding_python_reason=default
+font_freetype=yes; font_freetype_reason=default
+gui_gtk=no; gui_gtk_reason=default
+gui_win32=no; gui_win32_reason=default
+gui_internal=yes; gui_internal_reason=default
+graphics_gd=no; graphics_gd_reason=default
+graphics_gtk_drawing_area=no; graphics_gtk_drawing_area_reason=default
+graphics_qt_qpainter=yes; graphics_qt_qpainter_reason=default
+graphics_opengl=yes; graphics_opengl_reason=default
+graphics_win32=no; graphics_win32_reason=default
+speech_cmdline=yes; speech_cmdline_reason=default
+speech_speech_dispatcher=yes; speech_speech_dispatcher_reason=default
+vehicle_demo=yes; vehicle_demo_reason=default
+vehicle_file=yes; vehicle_file_reason=default
+vehicle_gpsd=yes; vehicle_gpsd_reason=default
+vehicle_gypsy=yes; vehicle_gypsy_reason=default
+vehicle_wince=no; vehicle_wince_reason=default
+
+m4_ifndef([AC_USE_SYSTEM_EXTENSIONS],
+       [AC_DEFUN([AC_USE_SYSTEM_EXTENSIONS], [AC_GNU_SOURCE])])
+
+AC_USE_SYSTEM_EXTENSIONS
 
 AC_PROG_CC
 if eval "test x$GCC = xyes"; then
         CFLAGS="$CFLAGS -Wall -Wcast-align -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wpointer-arith -Wreturn-type -D_GNU_SOURCE"
 fi
+AM_PROG_CC_C_O
+
 AC_PROG_CXX
-if eval "test x$G++ = xyes"; then
-        CFLAGS="$CFLAGS -Wall -Wcast-align -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wpointer-arith -Wreturn-type -D_GNU_SOURCE"
+if eval "test x$GXX = xyes"; then
+        CXXFLAGS="$CXXFLAGS -Wall -Wcast-align -Wpointer-arith -Wreturn-type -D_GNU_SOURCE"
 fi
 
 PKG_CHECK_EXISTS
+if test "x${cross_compiling}" = "xyes"; then
+       samplemap="no";samplemap_reason="not supported for cross compiling"
+       binding_python="no";binding_python_reason="not supported for cross compiling"
+       postgresql="no";postgresql_reason="not supported for cross compiling"
+       AC_MSG_CHECKING([for a C compiler for build tools])
+       AC_CHECK_PROGS(CC_FOR_BUILD, gcc cc)
+else
+       CC_FOR_BUILD=$CC
+fi
+CCLD_FOR_BUILD="$CC_FOR_BUILD"
+AC_SUBST(cross_compiling)
+AC_SUBST(CC_FOR_BUILD)
+AC_SUBST(CCLD_FOR_BUILD)
 
-# CFLAGS="$CFLAGS -DG_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED"
-
-AC_DISABLE_STATIC
-AC_PROG_LIBTOOL
+AC_ARG_ENABLE(variant, [  --enable-variant=something          set variant], NAVIT_VARIANT=$enableval)
+AC_SUBST(NAVIT_VARIANT)
 
 AC_ARG_ENABLE(avoid-unaligned, [  --enable-avoid-unaligned          avoid unaligned accesses], AVOID_UNALIGNED=$enableval, AVOID_UNALIGNED=no)
 test x"${AVOID_UNALIGNED}" = xyes && AC_DEFINE(AVOID_UNALIGNED,[],Define to avoid unaligned access)
@@ -27,18 +94,95 @@ test x"${AVOID_UNALIGNED}" = xyes && AC_DEFINE(AVOID_UNALIGNED,[],Define to avoi
 AC_ARG_ENABLE(avoid-float, [  --enable-avoid-float              avoid floating point calculations], AVOID_FLOAT=$enableval, AVOID_FLOAT=no)
 test x"${AVOID_FLOAT}" = xyes && AC_DEFINE(AVOID_FLOAT,[],Define to avoid floating point)
 
-AC_ARG_ENABLE(libgps, [  --disable-libgps             don't use libgps], USE_LIBGPS=$enableval, USE_LIBGPS=yes)
-AC_PATH_X
-if test x"$have_x" != xyes; then
-        echo "Can not find X"
-        exit -1
+AC_ARG_ENABLE(hildon, [  --disable-hildon              build without maemo/hildon support], enable_hildon=$enableval, enable_hildon=yes)
+if test "x${enable_hildon}" = "xyes" ; then
+       PKG_CHECK_MODULES(HILDON, hildon-1 >= 0.9.9, , [
+               AC_MSG_RESULT(no)
+               enable_hildon=no
+       ])
+       PKG_CHECK_MODULES(GPSBT, gpsbt, [
+               AC_DEFINE(HAVE_GPSBT, 1, [Have the gpsbt library])
+               AC_SUBST(GPSBT_CFLAGS)
+               AC_SUBST(GPSBT_LIBS)
+               ], [
+               AC_MSG_RESULT(no)
+       ])
+       if test x"${enable_hildon}" = xyes ; then
+               AC_DEFINE(USE_HILDON, 1, [Build with maemo/hildon support])
+               AC_SUBST(HILDON_CFLAGS)
+               AC_SUBST(HILDON_LIBS)
+       fi
 fi
+AM_CONDITIONAL(USE_HILDON, test "${enable_hildon}" = "xyes")
+
+AC_ARG_ENABLE(garmin, [  --disable-garmin             disable garmin support], USE_GARMIN=$enableval, USE_GARMIN=yes)
+
+# samplemap
+AC_PATH_PROG(_PATH_BZCAT,[bzcat])
+if test "x${_PATH_BZCAT}" = "x" ; then
+       samplemap=no; samplemap_reason="bzcat missing"
+fi
+AC_ARG_ENABLE(samplemap, [  --disable-samplemap             don't build the samplemap], samplemap=$enableval;samplemap_reason="configure parameter")
+AM_CONDITIONAL(BUILD_SAMPLEMAP, [test "x$samplemap" = "xyes"])
+
+AC_ARG_ENABLE(fastmath, [  --disable-fastmath             don't build with fastmath], fastmath=$enableval, fastmath=yes)
+AM_CONDITIONAL(FASTMATH, [test "x$fastmath" = "xyes"])
+
+if test x"$fastmath" = xyes; then
+       if eval "test x$GCC = xyes"; then
+               CFLAGS="$CFLAGS -ffast-math"
+       fi
+fi
+
 X_CFLAGS="-I$x_includes"
-X_LIBS="-L$ac_x_libraries"
+AS_IF([test -n "$ac_x_libraries"], [X_LIBS="-L$ac_x_libraries"])
 
-PKG_CHECK_MODULES(NAVIT, [glib-2.0 gmodule-2.0])
-AC_SUBST(NAVIT_CFLAGS)
-AC_SUBST(NAVIT_LIBS)
+# glib
+AC_ARG_ENABLE(glib, [  --disable-glib             don't build with external glib], glib=$enableval, glib=yes)
+if test x"${glib}" = "xyes"; then
+       PKG_CHECK_MODULES(GLIB, [glib-2.0 gthread-2.0], [glib=yes],[glib=no])
+fi
+if test "x${glib}" = "xyes"; then
+       AC_DEFINE(HAVE_GLIB, 1, [Define to 1 if you have (external) glib library])
+else
+       GLIB_CFLAGS="-I\$(top_srcdir)/navit/support -I\$(top_srcdir)/navit/support/glib -I\$(top_srcdir)/navit/support/ezxml"
+       GLIB_LIBS="-L\$(top_builddir)/navit/support/glib -lsupport_glib -L\$(top_builddir)/navit/support/ezxml -lsupport_ezxml"
+fi
+
+# gmodule
+AC_ARG_ENABLE(gmodule, [  --disable-gmodule             don't build with gmodule], gmodule=$enableval, gmodule=yes)
+if test x"${gmodule}" = "xyes"; then
+       PKG_CHECK_MODULES(GMODULE, [gmodule-2.0], [gmodule=yes], [gmodule=no])
+fi
+if test "x${gmodule}" = "xyes"; then
+       AC_DEFINE(HAVE_GMODULE, 1, [Define to 1 if you have gmodule])
+else
+       AC_CHECK_LIB(dl, dlopen,
+               [plugins_reason="default, via dlopen";GMODULE_LIBS="-ldl";AC_DEFINE(HAVE_DLOPEN, 1, [Define to 1 if you have dlopen])],          
+               [plugins="no"; plugins_reason="package gmodule and dlopen missing"]
+       )
+fi
+# plugins
+AC_ARG_ENABLE(plugins,         [  --disable-plugins          disable plugins], [ plugins=$enableval;plugin_reason="configure parameter" ])
+if test "x${plugins}" = "xyes"; then
+       AC_ENABLE_SHARED
+       AC_DISABLE_STATIC
+       AC_DEFINE(
+               [USE_PLUGINS],
+               [],
+               Define to 1 if you have plugins.
+       )
+else
+       AC_DISABLE_SHARED
+       AC_ENABLE_STATIC
+fi
+AM_CONDITIONAL(PLUGINS, [test "x$plugins" = "xyes"])
+AC_PROG_LIBTOOL
+
+AM_CONDITIONAL(EVENT_GLIB, [test "x$glib" = "xyes"])
+AM_CONDITIONAL(SUPPORT_GLIB, [test "x$glib" = "xno"])
+AM_CONDITIONAL(SUPPORT_EZXML, [test "x$glib" = "xno"])
+AM_CONDITIONAL(MAP_POI_GEODOWNLOAD, [test "x$glib" = "xyes"])
 
 AC_CHECK_HEADER(
        zlib.h,
@@ -46,30 +190,125 @@ AC_CHECK_HEADER(
                [HAVE_ZLIB],
                [],
                Define to 1 if you have the <zlib.h> header file.
-               )
-               ZLIB_LIBS="-lz",
-       AC_MSG_WARN([*** no zlib.h\ -- reduced functionality of osm2navit])
        )
+       ZLIB_LIBS="-lz"
+       zlib=yes,
+       ZLIB_CFLAGS="-I\$(top_srcdir)/navit/support/zlib"
+       ZLIB_LIBS="-L\$(top_builddir)/navit/support/zlib -lsupport_zlib"
+       zlib=no
+)
+AM_CONDITIONAL(SUPPORT_ZLIB, [test "x$zlib" = "xno"])
+AC_SUBST(ZLIB_CFLAGS)
 AC_SUBST(ZLIB_LIBS)
 
-AC_ARG_ENABLE(gui-gtk, [  --disable-gui-gtk             don't create gui gtk ], MODULE_GUI_GTK=$enableval, MODULE_GUI_GTK=yes)
-if test "x$MODULE_GUI_GTK" = "xyes"; then
-       PKG_CHECK_MODULES(GTK2, [gtk+-2.0], [gtk2_pkgconfig=yes], [gtk2_pkgconfig=no])
-       if test "x$gtk2_pkgconfig" = "xyes"; then
-               AC_DEFINE(HAVE_GTK2, 1, [Define to 1 if you have imlib2])
+# gtk
+PKG_CHECK_MODULES(GTK2, [gtk+-2.0], [gtk2_pkgconfig=yes], [gtk2_pkgconfig=no])
+if test "x$gtk2_pkgconfig" = "xyes"; then
+       AC_DEFINE(HAVE_GTK2, 1, [Define to 1 if you have gtk2])
+       graphics_gtk_drawing_area=yes; graphics_gtk_drawing_area_reason="gtk+-2.0 present"
+       gui_gtk=yes; gui_gtk_reason="gtk+-2.0 present"
+fi
+
+# fsync
+AC_MSG_CHECKING(for fsync)
+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))
+
+# system
+AC_MSG_CHECKING(for system)
+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))
+
+AC_ARG_ENABLE(directfb, [  --enable-directfb             enable directfb gui and graphics], MODULE_DIRECTFB=$enableval, MODULE_DIRECTFB=no)
+
+if test "x$MODULE_DIRECTFB" = "xyes"; then
+       PKG_CHECK_MODULES(DIRECTFB, [directfb], [directfb_pkgconfig=yes], [directfb_pkgconfig=no])
+       if test "x$directfb_pkgconfig" = "xyes"; then
+               AC_DEFINE(HAVE_DIRECTFB, 1, [Define to 1 if you have directfb])
        fi
 fi
-AC_SUBST(GTK2_CFLAGS)
-AC_SUBST(GTK2_LIBS)
-AM_CONDITIONAL(GUI_GTK, [test "x$gtk2_pkgconfig" = "xyes"])
-AM_CONDITIONAL(GRAPHICS_GTK_DRAWING_AREA, [test "x$gtk2_pkgconfig" = "xyes"])
 
-PKG_CHECK_MODULES(FREETYPE2, [freetype2], [freetype2_pkgconfig=yes], [freetype2_pkgconfig=no])
-if test "x$freetype2_pkgconfig" = "xyes"; then
-   AC_DEFINE(HAVE_FREETYPE2, 1, [Define to 1 if you have imlib2])
+DIRECTFB_CFLAGS="$DIRECTFB_CFLAGS"
+
+#DIRECTFB_CFLAGS="-D_REENTRANT -I/data/oe/tmp/staging/arm-angstrom-linux-gnueabi/usr/include/directfb/"
+#DIRECTFB_LIBS="-L/data/oe/tmp/staging/arm-angstrom-linux-gnueabi/usr/lib/ -ldirectfb -lfusion -ldirect -lpthread"
+
+AC_SUBST(DIRECTFB_CFLAGS)
+AC_SUBST(DIRECTFB_LIBS)
+AM_CONDITIONAL(DIRECTFB, [test "x$directfb_pkgconfig" = "xyes"])
+
+
+AC_ARG_ENABLE(graphics-sdl, [  --disable-graphics-sdl             don't create graphics sdl], enable_graphics_sdl=$enableval, enable_graphics_sdl=yes)
+if test "x${enable_graphics_sdl}" = "xyes" ; then
+       if test -z "$SDL_CONFIG"; then
+            AC_PATH_PROG([SDL_CONFIG], [sdl-config], [])
+        fi
+fi
+if test "x${enable_graphics_sdl}" = "xyes" ; then
+        AC_MSG_CHECKING([for SDL libraries with $SDL_CONFIG])
+       if test ! -x "$SDL_CONFIG"; then
+           enable_graphics_sdl = "no"
+            AC_MSG_RESULT([no])
+       else
+           SDL_CFLAGS="`$SDL_CONFIG --cflags`"
+           SDL_LIBS="`$SDL_CONFIG --libs`"
+           AC_SUBST(SDL_CFLAGS)
+           AC_SUBST(SDL_LIBS)
+            AC_MSG_RESULT([yes])
+               fi 
+fi
+if test "x${enable_graphics_sdl}" = "xyes" ; then
+       save_CPPFLAGS=$CPPFLAGS
+       CPPFLAGS="$($SDL_CONFIG --cflags) $CPPFLAGS"
+       AC_CHECK_HEADER(SDL_image.h,SDL_IMAGE_LIBS=-lSDL_image,enable_graphics_sdl=no)
+       AC_SUBST(SDL_IMAGE_LIBS)
+       CPPFLAGS=$save_CPPFLAGS
+fi
+if test "x${enable_graphics_sdl}" = "xyes" ; then
+       AC_DEFINE(USE_GRAPICS_SDL, 1, [Build with graphics sdl])
+fi
+AM_CONDITIONAL(USE_GRAPHICS_SDL, test "x${enable_graphics_sdl}" = "xyes")
+
+AC_ARG_ENABLE(postgresql, [  --disable-postgresql             don't add postgresql support to osm2navit], postgresql=$enableval;postgresql_reason="configure parameter")
+if test "x${postgresql}" = "xyes" ; then
+       if test -z "$PG_CONFIG"; then
+            AC_PATH_PROG([PG_CONFIG], [pg_config], [])
+        fi
+        AC_MSG_CHECKING([for PostgreSQL libraries with $PG_CONFIG])
+       if test ! -x "$PG_CONFIG"; then
+           if test "x${PG_CONFIG}" = "x" ; then
+                postgresql_reason="$PG_CONFIG not executable"
+           else
+                postgresql_reason="pg_config missing"
+            fi
+           postgresql=no 
+            AC_MSG_RESULT([no])
+       else
+           POSTGRESQL_CFLAGS="-I`$PG_CONFIG --includedir`"
+           POSTGRESQL_LIBS="-L`$PG_CONFIG --libdir` -lpq"
+           AC_DEFINE(HAVE_POSTGRESQL, 1, [Postgresql libraries available])
+           AC_SUBST(POSTGRESQL_CFLAGS)
+           AC_SUBST(POSTGRESQL_LIBS)
+            AC_MSG_RESULT([yes])
+               fi 
+fi
+AM_CONDITIONAL(HAVE_POSTGRESQL, test "x${postgresql}" = "xyes")
+# font
+# freetype
+AC_ARG_ENABLE(font-freetype, [  --disable-font-freetype             don't add freetype support], font_freetype=$enableval;font_freetype_reason="configure parameter")
+if test "x${font_freetype}" = "xyes" -a "x${FREETYPE2_CFLAGS}" = "x" -a "x${FREETYPE2_LIBS}" = "x"; then
+       PKG_CHECK_MODULES(FREETYPE2, [freetype2], , [font_freetype=no;font_freetype_reason="Package freetype2 missing"])
 fi
 AC_SUBST(FREETYPE2_CFLAGS)
 AC_SUBST(FREETYPE2_LIBS)
+AM_CONDITIONAL(FONT_FREETYPE, test "x${font_freetype}" = "xyes")
+
+PKG_CHECK_MODULES(FONTCONFIG, [fontconfig], [fontconfig_pkgconfig=yes], [fontconfig_pkgconfig=no])
+if test "x$fontconfig_pkgconfig" = "xyes"; then
+   AC_DEFINE(HAVE_FONTCONFIG, 1, [Define to 1 if you have fontconfig])
+fi
+AC_SUBST(FONTCONFIG_CFLAGS)
+AC_SUBST(FONTCONFIG_LIBS)
+
+AM_CONDITIONAL(FONTS, test "x${font_freetype}" = "xyes" -a "x$fontconfig_pkgconfig" != "xyes")
 
 PKG_CHECK_MODULES(IMLIB2, [imlib2], [imlib2_pkgconfig=yes], [imlib2_pkgconfig=no])
 if test "x$imlib2_pkgconfig" = "xyes"; then
@@ -79,14 +318,6 @@ AC_SUBST(IMLIB2_CFLAGS)
 AC_SUBST(IMLIB2_LIBS)
 
 
-AC_ARG_ENABLE(speech-speechd, [  --disable-speech-speechd             don't create speech speechd ], MODULE_SPEECH_SPEECHD=$enableval, MODULE_SPEECH_SPEECHD=yes)
-if test "x$MODULE_SPEECH_SPEECHD" = "xyes"; then
-       AC_CHECK_HEADER(libspeechd.h, AC_DEFINE([HAVE_LIBSPEECHD],[],Define to 1 if you have the <libspeechd.h> header file.) SPEECHD_LIBS="-lspeechd" speechd=yes,  AC_MSG_WARN([*** no libspeechd.h -- Speech output disabled]))
-fi
-AC_SUBST(SPEECHD_CFLAGS)
-AC_SUBST(SPEECHD_LIBS)
-AM_CONDITIONAL(SPEECH_SPEECH_DISPATCHER, [test "x$speechd" = "xyes"])
-
 
 AC_ARG_ENABLE(gui-sdl, [  --disable-gui-sdl             don't create gui sdl ], MODULE_GUI_SDL=$enableval, MODULE_GUI_SDL=yes)
 if test "x$MODULE_GUI_SDL" = "xyes"; then
@@ -102,23 +333,21 @@ if test "x$MODULE_GUI_SDL" = "xyes"; then
                AC_MSG_WARN([*** no SDL/SDL.h -- SDL support disabled])
        )
 fi
-AC_SUBST(SDL_CFLAGS)
-AC_SUBST(SDL_LIBS)
 
-#FIXME : the following does not seem to be parsed
-AC_PREPROC_IFELSE(
-       CEGUI/CEGUI.h,
-       AC_DEFINE(
-               [HAVE_CEGUI],
-               [],
-               Define to 1 if you have the <CEGUI/CEGUI.h> header file.
-               )
-               CEGUI_CFLAGS="-I /usr/local/include/CEGUI -I /usr/include/CEGUI"
-               cegui=yes,
-       AC_MSG_WARN([*** no CEGUI/CEGUI.h -- SDL support disabled])
-       exit 1
+AC_CHECK_HEADER(
+        X11/Xmu/Xmu.h,
+        AC_DEFINE(
+                [HAVE_XMU],
+                [],
+                Define to 1 if you have the <X11/Xmu/Xmu.h> header file.
+                )
+                xmu=yes,
+        AC_MSG_WARN([*** no X11/Xmu/Xmu.h -- opengl and SDL support disabled])
 )
 
+AC_ARG_ENABLE(graphics-opengl, [  --disable-graphics-opengl      disable graphics type OpenGL], graphics_opengl=$enableval;graphics_opengl_reason="configure parameter")
+if test "x${graphics_opengl}" = "xyes" ; then
+
 AC_CHECK_HEADER(
        GL/gl.h,
        AC_DEFINE(
@@ -128,7 +357,7 @@ AC_CHECK_HEADER(
                )
                OPENGL_LIBS="$X_LIBS -lGL -lGLU"
                opengl=yes,
-       AC_MSG_WARN([*** no GL/gl.h -- opengl and SDL support disabled])
+       AC_MSG_WARN([*** no GL/gl.h -- opengl and SDL support disabled];graphics_opengl=no;graphics_opengl_reason="Headers missing")
 )
 
 AC_CHECK_HEADER(
@@ -139,7 +368,7 @@ AC_CHECK_HEADER(
                Define to 1 if you have the <GL/glut.h> header file.
                )
                glut=yes,
-       AC_MSG_WARN([*** no GL/glut.h -- opengl and SDL support disabled])
+       AC_MSG_WARN([*** no GL/glut.h -- opengl and SDL support disabled]);graphics_opengl=no;graphics_opengl_reason="Headers missing"
 )
 
 AC_SUBST(OPENGL_CFLAGS)
@@ -158,137 +387,101 @@ AC_CHECK_HEADER(
 )
 AC_SUBST(GLC_CFLAGS)
 AC_SUBST(GLC_LIBS)
-
-if test x"$sdl" = xyes
-        then
-# Save the LIBS into a temp var since AC_CHECK_LIB adds the lib into LIBS
-# and we want just to check and use CEGUI_LIBS
-libstemp="$LIBS" 
-# For CEGUI, we have to check the presence of some libraries.
-# The following are mandatory (used by navit)
-# If the user installed NavIt without, issue a warning and disable CEGUI
-AC_CHECK_LIB(CEGUIBase, main,
-        [],
-        [
-        echo "Error! Something is wrong with CEGUIBase."
-        #exit -1
-        ])
-AC_CHECK_LIB(CEGUIOpenGLRenderer, main,
-        [],
-        [
-        echo "Error! Something is wrong with CEGUIOpenGLRenderer."
-        #exit -1
-        ], $OPENGL_LIBS )
-AC_CHECK_LIB(CEGUIFalagardWRBase, main,
-        [],
-        [
-        echo "Error! Something is wrong with CEGUIFalagardWRBase."
-        #exit -1
-        ], $OPENGL_LIBS)
-CEGUI_LIBS="-lCEGUIBase -lCEGUIOpenGLRenderer -lCEGUIFalagardWRBase"
-
-# The following are optionnal, but we need to link against them if cegui was built with them
-libssilly="$OPENGL_LIBS -lpng"
-AC_CHECK_LIB(CEGUISILLYImageCodec, createImageCodec,
-        [CEGUI_LIBS="$CEGUI_LIBS -lCEGUISILLYImageCodec"],
-        [echo "CEGUISILLYImageCodec not found/not working, disabled."],
-        $libssilly
-)
-
-AC_CHECK_LIB(CEGUIXercesParser, main,
-        [CEGUI_LIBS="$CEGUI_LIBS -lCEGUIXercesParser"],
-        [echo "CEGUIXercesParser not found/not working, disabled."],
-        $OPENGL_LIBS
-)
-
-AC_CHECK_LIB(CEGUIExpatParser, main,
-        [CEGUI_LIBS="$CEGUI_LIBS -lCEGUIExpatParser"],
-        [echo "CEGUIExpatParser not found/not working, disabled."],
-        $OPENGL_LIBS
-)
-
-AC_CHECK_LIB(CEGUILibxmlParser, main,
-        [CEGUI_LIBS="$CEGUI_LIBS -lCEGUILibxmlParser"],
-        [echo "CEGUILibxmlParser not found/not working, disabled."],
-        $OPENGL_LIBS
-)
-
-AC_CHECK_LIB(CEGUITinyXMLParser, main,
-        [CEGUI_LIBS="$CEGUI_LIBS -lCEGUITinyXMLParser"],
-        [echo "CEGUITinyXMLParser not found/not working, disabled."],
-        $OPENGL_LIBS
-)
-
-AC_CHECK_LIB(CEGUIDevILImageCodec, main,
-        [CEGUI_LIBS="$CEGUI_LIBS -lCEGUIDevILImageCodec"],
-        [echo "CEGUIDevILImageCodec not found/not working, disabled."],
-        $OPENGL_LIBS
-)
-
-AC_CHECK_LIB(CEGUITGAImageCodec, createImageCodec,
-        [CEGUI_LIBS="$CEGUI_LIBS -lCEGUITGAImageCodec"],
-        [echo "GUITGAImageCodec not found/not working, disabled."],
-        $OPENGL_LIBS
-)
-
-LIBS="$libstemp"
-echo "LIBS : $CEGUI_LIBS"
 fi
 
-AC_SUBST(CEGUI_CFLAGS)
-AC_SUBST(CEGUI_LIBS)
+AM_CONDITIONAL(GUI_SDL, [test "x$sdl" = "xyes" -a "x$opengl" = "xyes" -a "x$glc" = "xyes" -a "x$xmu" = "xyes" ])
+AM_CONDITIONAL(GRAPHICS_OPENGL, [test "x$glut" = "xyes" - "x$opengl" = "xyes" -a "x$glc" = "xyes" ])
 
-AM_CONDITIONAL(GUI_SDL, [test "x$sdl" = "xyes" -a "x$cegui" = "xyes" -a "x$opengl" = "xyes" -a "x$glc" = "xyes" ])
-AM_CONDITIONAL(GRAPHICS_OPENGL, [test "x$opengl" = "xyes" -a "x$glc" = "xyes"  -a "x$glut" = "xyes"])
 
-if test x"${USE_LIBGPS}" = xyes
+if test x"${USE_GARMIN}" = xyes
 then
-       AC_CHECK_HEADER(gps.h, AC_DEFINE([HAVE_LIBGPS],[],Define to 1 if you have the <gps.h> header file.) GPSD_LIBS="-lgps" gpsd=yes,  AC_MSG_WARN([*** no gps.h -- gpsd support disabled]))
+       # check for libgarmin
+       PKG_CHECK_MODULES(LIBGARMIN, libgarmin, use_libgarmin=yes, use_libgarmin=no)
+       AC_SUBST(LIBGARMIN_CFLAGS)
+       AC_SUBST(LIBGARMIN_LIBS)
 fi
-AC_SUBST(GPSD_CFLAGS)
-AC_SUBST(GPSD_LIBS)
-AM_CONDITIONAL(VEHICLE_GPSD, [test "x$gpsd" = "xyes"])
-
-# check for libgarmin
-PKG_CHECK_MODULES(LIBGARMIN, libgarmin, use_libgarmin=yes, use_libgarmin=no)
-AC_SUBST(LIBGARMIN_CFLAGS)
-AC_SUBST(LIBGARMIN_LIBS)
-AM_CONDITIONAL(HAVELIBGARMIN, [test "x$use_libgarmin" = "xyes"])
-
-AC_ARG_ENABLE(binding-python, [  --disable-binding-python             don't create binding python ], MODULE_BINDING_PYTHON=$enableval, MODULE_BINDING_PYTHON=yes)
-if test "$cross_compiling" = no; then
-       if test "x$MODULE_BINDING_PYTHON" = "xyes"; then
-               AC_PATH_PROG(_PATH_PYTHON,[python])
-               dnl Libraries and flags for embedded Python.
-               dnl FIXME: I wish there was a less icky way to get this.
-               if test x"$_PATH_PYTHON" != x ; then
-                       AC_MSG_CHECKING(for Python linkage)
-                       py_prefix=`$_PATH_PYTHON -c 'import sys; print sys.prefix'`
-                       py_ver=`$_PATH_PYTHON -c 'import sys; print sys.version[[:3]]'`
-                       py_libdir="${py_prefix}/lib/python${py_ver}"
-                       PYTHON_CFLAGS="-I${py_prefix}/include/python${py_ver}"
-                       if test -f $py_libdir/config/Makefile ; then
-                               py_libs=`grep '^LIBS=' $py_libdir/config/Makefile | sed -e 's/^.*=//'`
-                               py_libc=`grep '^LIBC=' $py_libdir/config/Makefile | sed -e 's/^.*=//'`
-                               py_libm=`grep '^LIBM=' $py_libdir/config/Makefile | sed -e 's/^.*=//'`
-                               py_liblocalmod=`grep '^LOCALMODLIBS=' $py_libdir/config/Makefile | sed -e 's/^.*=//'`
-                               py_libbasemod=`grep '^BASEMODLIBS=' $py_libdir/config/Makefile | sed -e 's/^.*=//'`
-                               PYTHON_LIBS="-L$py_libdir/config $py_libs $py_libc $py_libm -lpython$py_ver $py_liblocalmod $py_libbasemod"
-                               PYTHON_LIBS=`echo $PYTHON_LIBS | sed -e 's/[ \\t]*/ /g'`
-                               AC_DEFINE(HAVE_PYTHON, 1, [Define to 1 if you have python])
-                               python=yes
-                               AC_MSG_RESULT($py_libdir)
-                       else
-                               AC_MSG_WARN([$py_libdir/config/Makefile missing, support for python disabled])
-                       fi
+       AM_CONDITIONAL(HAVELIBGARMIN, [test "x$use_libgarmin" = "xyes"])
+
+## binding
+# python
+AC_ARG_ENABLE(binding-python, [  --disable-binding-python             don't create binding python], binding_python=$enableval;binding_python_reason="configure parameter")
+if test "x${binding_python}" = "xyes"; then
+       AC_PATH_PROG(_PATH_PYTHON,[python])
+       dnl Libraries and flags for embedded Python.
+       dnl FIXME: I wish there was a less icky way to get this.
+       if test "x${_PATH_PYTHON}" != "x" ; then
+               AC_MSG_CHECKING(for Python linkage)
+               py_prefix=`$_PATH_PYTHON -c 'import sys; print sys.prefix'`
+               py_ver=`$_PATH_PYTHON -c 'import sys; print sys.version[[:3]]'`
+               py_lib=`$_PATH_PYTHON -c 'import sys; print sys.lib'`
+               py_libdir="${py_prefix}/${py_lib}/python${py_ver}"
+               PYTHON_CFLAGS="-I${py_prefix}/include/python${py_ver}"
+               if test -f $py_libdir/config/Makefile -a -f $py_prefix/include/python${py_ver}/Python.h; then
+                       py_libs=`grep '^LIBS=' $py_libdir/config/Makefile | sed -e 's/^.*=//'`
+                       py_libc=`grep '^LIBC=' $py_libdir/config/Makefile | sed -e 's/^.*=//'`
+                       py_libm=`grep '^LIBM=' $py_libdir/config/Makefile | sed -e 's/^.*=//'`
+                       py_liblocalmod=`grep '^LOCALMODLIBS=' $py_libdir/config/Makefile | sed -e 's/^.*=//'`
+                       py_libbasemod=`grep '^BASEMODLIBS=' $py_libdir/config/Makefile | sed -e 's/^.*=//'`
+                       PYTHON_LIBS="-L$py_libdir/config $py_libs $py_libc $py_libm -lpython$py_ver $py_liblocalmod $py_libbasemod"
+                       PYTHON_LIBS=`echo $PYTHON_LIBS | sed -e 's/[ \\t]*/ /g'`
+                       AC_MSG_RESULT($py_libdir)
+               else
+                       binding_python="no"
+                       binding_python_reason="$py_libdir/config/Makefile or $py_prefix/include/python${py_ver}/Python.h missing"
                fi
+       else
+               binding_python="no"
+               binding_python_reason="python executable missing"
        fi
-else
-       AC_MSG_WARN([*** cross compiling, support for python disabled])
+fi
+if test "x${binding_python}" = xyes ; then
+       AC_DEFINE(USE_BINDING_PYTHON, 1, [Build with binding python])
 fi
 AC_SUBST(PYTHON_CFLAGS)
 AC_SUBST(PYTHON_LIBS)
-AM_CONDITIONAL(BINDING_PYTHON, [test "x$python" = "xyes"])
+AM_CONDITIONAL(BINDING_PYTHON, test "x${binding_python}" = "xyes")
+
+# dbus
+AC_ARG_ENABLE(binding-dbus,   [  --disable-binding-dbus               don't create binding dbus], binding_dbus=$enableval;binding_dbus_reason="configure parameter")
+if test "x${binding_dbus}" = "xyes" ; then
+       PKG_CHECK_MODULES(DBUS, [dbus-glib-1], ,binding_dbus=no)
+fi
+if test "x${binding_dbus}" = "xyes" ; then
+       AC_DEFINE(USE_BINDING_DBUS, 1, [Build with binding dbus])
+fi
+AC_SUBST(DBUS_CFLAGS)
+AC_SUBST(DBUS_LIBS)
+AM_CONDITIONAL(BINDING_DBUS, test "x${binding_dbus}" = "xyes")
+
+# svg
+AC_ARG_ENABLE(svg, [  --disable-svg        disable Scalable Vector Graphics], enable_svg=$enableval, enable_svg=yes)
+AC_ARG_ENABLE(svg2png, [  --disable-svg2png        disable conversion of svgs to pngs], enable_svg2png=$enableval, enable_svg2png=yes)
+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")
+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="")
+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="")
+AC_ARG_WITH(svg2png-use-convert, [  --with-svg2png-use-convert   use imagemagick's convert for png creation], SVG2PNG_CONVERTER="convert")
+AC_ARG_WITH(svg2png-use-rsvg-convert, [  --with-svg2png-use-rsvg-convert   use librsvg's rsvg-convert for png creation], SVG2PNG_CONVERTER="rsvg-convert")
+AC_ARG_WITH(svg2png-use-inkscape, [  --with-svg2png-use-inkscape   use inkscapes internal convert routines for png creation], SVG2PNG_CONVERTER="inkscape")
+AC_ARG_WITH(svg2png-use-ksvgtopng4, [  --with-svg2png-use-ksvgtopng4   use kde4's ksvgtopng4 for png creation], SVG2PNG_CONVERTER="ksvgtopng4")
+AC_ARG_WITH(svg2png-use-ksvgtopng, [  --with-svg2png-use-ksvgtopng   use kde3's convert for png creation], SVG2PNG_CONVERTER="ksvgtopng")
+if test "x${enable_svg2png}" = "xyes" ; then
+    if test "x${SVG2PNG_CONVERTER}" = "x"; then
+        SVG2PNG_CONVERTER="ksvgtopng ksvgtopng4 rsvg-convert inkscape convert"
+    fi
+    AC_PATH_PROGS([SVG2PNG], "${SVG2PNG_CONVERTER}", [none])
+    if test "x${SVG2PNG}" = "xnone"; then
+        enable_svg2png="no"
+    fi
+fi
+AC_SUBST(SVG2PNG)
+AC_SUBST(SVG2PNG_SCALES)
+AC_SUBST(SVG2PNG_SCALES_FLAG)
+AC_SUBST(SVG2PNG_SCALES_NAV)
+AM_CONDITIONAL(USE_SVG2PNG_SCALES, test "x${SVG2PNG_SCALES}" != "xyes" -a "x${SVG2PNG_SCALES}" != "x")
+AM_CONDITIONAL(USE_SVG2PNG_SCALES_FLAG, test "x${SVG2PNG_SCALES_FLAG}" != "xyes" -a "x${SVG2PNG_SCALES_FLAG}" != "x")
+AM_CONDITIONAL(USE_SVG2PNG_SCALES_NAV, test "x${SVG2PNG_SCALES_NAV}" != "xyes" -a "x${SVG2PNG_SCALES_NAV}" != "x")
+AM_CONDITIONAL(USE_SVG2PNG, test "x${enable_svg2png}" = "xyes")
+AM_CONDITIONAL(USE_SVG, test "x${enable_svg}" = "xyes")
 
 # NLS
 
@@ -300,11 +493,12 @@ AC_ARG_ENABLE(nls,
 INTLIBS=""
 MOFILES=""
 POFILES=""
+POIFILES=""
 LINGUAS=""
 
-if test x$enable_nls = xyes; then
+if test "x$enable_nls" = "xyes"; then
 
-  AC_CHECK_FUNC(gettext, [HAVEGETTEXT="yes"], 
+  AC_CHECK_FUNC(gettext, [HAVEGETTEXT="yes"] 
             AC_CHECK_LIB(intl, gettext, [INTLIBS="-lintl" HAVEGETTEXT="yes"],
                         INTLIBS="" ))
 
@@ -322,9 +516,9 @@ if test x$enable_nls = xyes; then
   if test "$XGETTEXT" != "" -a "$HAVEGETTEXT" != ""; then
      PO=""
      if test "$LINGUAS" = ""; then
-           ling=` (cd $srcdir/po; /bin/ls *.po) `
+           ling=` (cd $srcdir/po; /bin/ls *.po.in) `
           for l in $ling; do
-               lcode=`basename $l .po`
+               lcode=`basename $l .po.in`
                LINGUAS="$LINGUAS$lcode "
            done
     fi
@@ -334,6 +528,7 @@ if test x$enable_nls = xyes; then
    LINGUAS=""
    PO=""
    echo "xgettext and libintl.a don't both exist; will not build i18n support"
+   enable_nls = no
  fi
  for lang in $LINGUAS; do
     MOFILES="$MOFILES $lang.mo"
@@ -341,16 +536,33 @@ if test x$enable_nls = xyes; then
  for lang in $LINGUAS; do
     POFILES="$POFILES $lang.po"
  done
-fi
-
+ for lang in $LINGUAS; do
+    POIFILES="$POIFILES $lang.po.in"
+ done
 
 AC_SUBST(INTLIBS)
 AC_SUBST(MOFILES)
 AC_SUBST(POFILES)
+AC_SUBST(POIFILES)
 AM_GNU_GETTEXT_VERSION
-AM_GNU_GETTEXT
+AM_GNU_GETTEXT(no-libtool, need-ngettext, \$(top_builddir)/intl/)
+AC_SUBST(LIBINTL)
+AC_SUBST(LTLIBINTL)
+if test x"$LIBINTL" != "x" ;then
+       CFLAGS="$CFLAGS -I\$(top_builddir)/intl/"
+fi
 
-LIBS="$LIBS -lm -rdynamic"
+fi
+AM_CONDITIONAL(ENABLE_NLS, [test "x$enable_nls" = "xyes"])
+AC_CHECK_HEADER(
+       byteswap.h,
+       AC_DEFINE(
+               [HAVE_BYTESWAP_H],
+               [1],
+               [Define to 1 if you have byteswap.h],
+               )
+               ,
+)
 
 PACKAGE=navit
 AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE")
@@ -358,42 +570,209 @@ AC_DEFINE_UNQUOTED(VERSION, "$VERSION")
 AC_SUBST(PACKAGE)
 AC_SUBST(VERSION)
 
+AC_CHECK_HEADER(wordexp.h,wordexp_h=yes,wordexp_h=no;NAVIT_CFLAGS="$NAVIT_CFLAGS -I\$(top_srcdir)/navit/support/wordexp";NAVIT_LIBS="$NAVIT_LIBS -L\$(top_builddir)/navit/support/wordexp -lsupport_wordexp")
+AM_CONDITIONAL(SUPPORT_WORDEXP, [test "x$wordexp_h" = "xno"])
+
+AC_CANONICAL_HOST
+win32=no
+win32ce=no
+case $host_os in
+wince)
+       win32=yes
+       win32ce=yes
+       AC_DEFINE(HAVE_API_WIN32_BASE, 1, [Have Windows Base API])
+       AC_DEFINE(HAVE_API_WIN32_CE, 1, [Have Windows CE API])
+       gui_win32=yes; gui_win32_reason="host_os is wince"
+       graphics_win32=yes; graphics_win32_reason="host_os is wince"
+       vehicle_wince=yes; vehcile_wince_reason="host_os is wince"
+       ;;
+mingw32)
+       win32=yes
+       AC_DEFINE(HAVE_API_WIN32_BASE, 1, [Have Windows Base API])
+       AC_DEFINE(HAVE_API_WIN32, 1, [Have Windows API])
+       gui_win32=yes; gui_win32_reason="host_os is mingw32"
+       graphics_win32=yes; graphics_win32_reason="host_os is mingw32"
+esac
+if test "x$win32" = "xyes"
+then
+       NAVIT_CFLAGS="$NAVIT_CFLAGS -I\$(top_srcdir)/navit/support/win32"
+       NAVIT_LIBS="$NAVIT_LIBS -L\$(top_builddir)/navit/support/win32 -lsupport_win32"
+fi
+AM_CONDITIONAL(SUPPORT_WIN32, [test "x$win32" = "xyes"])
+AM_CONDITIONAL(SUPPORT_WIN32CE, [test "x$win32ce" = "xyes"])
+
+LIBS="$LIBS -lm"
+if test "$win32" == "no"; then
+       LIBS="$LIBS -rdynamic"
+fi
+
+support_libc=no
+AC_ARG_ENABLE(support_libc, [  --enable-support-libc enable builtin mini libc ], support_libc=$enableval)
+AM_CONDITIONAL(SUPPORT_LIBC, [test "x$support_libc" = "xyes"])
+if test "x$support_libc" = "xyes"; then
+       CFLAGS="$CFLAGS -I\$(top_srcdir)/navit/support/libc"
+fi
+
+## graphics
+# gd
+AC_ARG_ENABLE(graphics-gd, [  --enable-graphics-gd                enable graphics type gd], graphics_gd=$enableval;graphics_gd_reason="configure parameter")
+if test "x${graphics_gd}" = "xyes" ; then
+       if test -z "$GDLIB_CONFIG"; then
+            AC_PATH_PROG([GDLIB_CONFIG], [gdlib-config], [])
+        fi
+       AC_MSG_CHECKING([for gdlib with $GDLIB_CONFIG])
+       if test ! -x "$GDLIB_CONFIG"; then
+           if test "x${GDLIB_CONFIG}" = "x" ; then
+                graphics_gd_reason="$GDLIB_CONFIG not executable"
+           else
+                graphics_gd_reason="gdlib-config missing"
+            fi
+           graphics_gd=no 
+            AC_MSG_RESULT([no])
+       else
+           GD_CFLAGS="-I`$GDLIB_CONFIG --includedir`"
+           GD_LIBS="-L`$GDLIB_CONFIG --libdir` -lgd `$GDLIB_CONFIG --libs`"
+           AC_SUBST(GD_CFLAGS)
+           AC_SUBST(GD_LIBS)
+            AC_MSG_RESULT([yes])
+               fi 
+fi
+AM_CONDITIONAL(GRAPHICS_GD, test "x${graphics_gd}" = "xyes")
+# gtk_drawing_area
+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")
+AM_CONDITIONAL(GRAPHICS_GTK_DRAWING_AREA, [test "x${graphics_gtk_drawing_area}" = "xyes"])
+# win32
+AC_ARG_ENABLE(graphics-win32, [  --disable-graphics-win32            disable graphics type win32], graphics_win32=$enableval;graphics_win32_reason="configure parameter")
+AM_CONDITIONAL(GRAPHICS_WIN32, test "x${graphics_win32}" = "xyes")
+# qt_qpainter
+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")
+if test "x${graphics_qt_qpainter}" = "xyes" -a "x${QT_GUI_CFLAGS}" = "x" -a "x${QT_GUI_LIBS}" = "x"; then
+       PKG_CHECK_MODULES(QT_GUI, [QtGui QtCore], ,graphics_qt_qpainter=no,graphics_qt_qpainter_reason="Packages QtGui and/or QtCore missing")
+fi
+if test "x${graphics_qt_qpainter}" = "xyes" ; then
+       AC_DEFINE(USE_GRAPICS_QT_QPAINTER, 1, [Build with graphics qt_qpainter])
+fi
+AC_SUBST(QT_GUI_CFLAGS)
+AC_SUBST(QT_GUI_LIBS)
+AM_CONDITIONAL(GRAPHICS_QT_QPAINTER, test "x${graphics_qt_qpainter}" = "xyes")
+
+## gui
+# gtk
+AC_ARG_ENABLE(gui-gtk, [  --disable-gui-gtk                   disable gui type gtk ], gui_gtk=$enableval)
+AM_CONDITIONAL(GUI_GTK, [test "x${gui_gtk}" = "xyes"])
+# internal
+AC_ARG_ENABLE(gui-internal, [  --disable-gui-internal              disable gui type internal], gui_internal=$enableval;gui_internal_reason="configure parameter")
+AM_CONDITIONAL(GUI_INTERNAL, test "x${gui_internal}" = "xyes")
+# win32
+AC_ARG_ENABLE(gui-win32, [  --disable-gui-win32                 disable gui type win32], gui_win32=$enableval;gui_win32_reason="configure parameter")
+AM_CONDITIONAL(GUI_WIN32, test "x${gui_win32}" = "xyes")
+
+## speech
+# cmdline
+AC_ARG_ENABLE(speech-cmdline, [  --disable-speech-cmdline            disable speech type cmdline], speech_cmdline=$enableval;speech_cmdline_reason="configure parameter")
+AM_CONDITIONAL(SPEECH_CMDLINE, test "x${speech_cmdline}" = "xyes")
+# cmdline
+AC_ARG_ENABLE(speech-speechd, [  --disable-speech-speech-dispatcher  disable speech type speech-dispatcher], speech_speech_dispatcher=$enableval;speech_speech_dispatcher_reason="configure parameter")
+if test "x$speech_speech_dispatcher" = "xyes"; then
+       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")
+fi
+AC_SUBST(SPEECHD_CFLAGS)
+AC_SUBST(SPEECHD_LIBS)
+AM_CONDITIONAL(SPEECH_SPEECH_DISPATCHER, test "x${speech_speech_dispatcher}" = "xyes")
+
+## vehicle
+# demo
+AC_ARG_ENABLE(vehicle-demo, [  --disable-vehicle-demo              disable vehicle type demo], vehicle_demo=$enableval;vehicle_demo_reason="configure parameter")
+AM_CONDITIONAL(VEHICLE_DEMO, test "x${vehicle_demo}" = "xyes")
+# file
+AC_ARG_ENABLE(vehicle-file, [  --disable-vehicle-file              disable vehicle type file], vehicle_file=$enableval;vehicle_file_reason="configure parameter")
+AM_CONDITIONAL(VEHICLE_FILE, test "x${vehicle_file}" = "xyes")
+# gpsd
+AC_ARG_ENABLE(vehicle-gpsd, [  --disable-vehicle-gpsd              disable vehicle type gpsd], vehicle_gpsd=$enableval;vehicle_gpsd_reason="configure parameter")
+if test "x${vehicle_gpsd}" = xyes
+then
+       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" )
+fi
+AC_SUBST(GPSD_CFLAGS)
+AC_SUBST(GPSD_LIBS)
+AM_CONDITIONAL(VEHICLE_GPSD, [test "x${vehicle_gpsd}" = "xyes"])
+# gypsy
+AC_ARG_ENABLE(vehicle-gypsy,[  --disable-vehicle-gypsy             disable vehicle type gypsy], vehicle_gypsy=$enableval;vehicle_gypsy_reason="configure parameter")
+if test "x${vehicle_gypsy}" = "xyes"
+then
+       PKG_CHECK_MODULES(GYPSY, gypsy, ,vehicle_gypsy=no;vehicle_gypsy_reason="package gypsy missing")
+fi
+AC_SUBST(GYPSY_CFLAGS)
+AC_SUBST(GYPSY_LIBS)
+AM_CONDITIONAL(VEHICLE_GYPSY, test "x${vehicle_gypsy}" = "xyes")
+# wince
+AC_ARG_ENABLE(vehicle-wince, [  --disable-vehicle-wince             disable vehicle type wince], vehicle_wince=$enableval;vehicle_wince_reason="configure parameter")
+AM_CONDITIONAL(VEHICLE_WINCE, test "x${vehicle_wince}" = "xyes")
+
+NAVIT_CFLAGS="$NAVIT_CFLAGS $GLIB_CFLAGS $GMODULE_CFLAGS"
+NAVIT_LIBS="$NAVIT_LIBS $GLIB_LIBS $GMODULE_LIBS $LIBINTL"
+AC_SUBST(NAVIT_CFLAGS)
+AC_SUBST(NAVIT_LIBS)
+AC_SUBST(WINDRES)
+
 AC_CONFIG_FILES([
 Makefile
-src/Makefile
-src/binding/Makefile
-src/binding/python/Makefile
-src/data/Makefile
-src/data/mg/Makefile
-src/data/textfile/Makefile
-src/data/binfile/Makefile
-src/data/garmin/Makefile
-src/data/garmin_img/Makefile
-src/data/poi_geodownload/Makefile
-src/data/poi_geodownload/libmdb/Makefile
-src/data/poi_geodownload/libmdb/include/Makefile
-src/fib-1.1/Makefile
-src/graphics/Makefile
-src/graphics/gtk_drawing_area/Makefile
-src/graphics/opengl/Makefile
-src/graphics/null/Makefile
-src/gui/Makefile
-src/gui/gtk/Makefile
-src/gui/sdl/Makefile
-src/gui/sdl/datafiles/Makefile
-src/osd/Makefile
-src/osd/core/Makefile
-src/speech/Makefile
-src/speech/cmdline/Makefile
-src/speech/speech_dispatcher/Makefile
-src/vehicle/Makefile
-src/vehicle/file/Makefile
-src/vehicle/gpsd/Makefile
-src/xpm/Makefile
-src/maps/Makefile
+navit/Makefile
+navit/binding/Makefile
+navit/binding/python/Makefile
+navit/binding/dbus/Makefile
+navit/map/Makefile
+navit/map/mg/Makefile
+navit/map/textfile/Makefile
+navit/map/shapefile/Makefile
+navit/map/binfile/Makefile
+navit/map/garmin/Makefile
+navit/map/poi_geodownload/Makefile
+navit/map/poi_geodownload/libmdb/Makefile
+navit/map/poi_geodownload/libmdb/include/Makefile
+navit/fib-1.1/Makefile
+navit/font/Makefile
+navit/font/freetype/Makefile
+navit/fonts/Makefile
+navit/graphics/Makefile
+navit/graphics/gd/Makefile
+navit/graphics/gtk_drawing_area/Makefile
+navit/graphics/directfb/Makefile
+navit/graphics/cogl/Makefile
+navit/graphics/opengl/Makefile
+navit/graphics/null/Makefile
+navit/graphics/sdl/Makefile
+navit/graphics/qt_qpainter/Makefile
+navit/graphics/win32/Makefile
+navit/gui/Makefile
+navit/gui/gtk/Makefile
+navit/gui/internal/Makefile
+navit/gui/directfb/Makefile
+navit/gui/win32/Makefile
+navit/osd/Makefile
+navit/osd/core/Makefile
+navit/speech/Makefile
+navit/speech/cmdline/Makefile
+navit/speech/speech_dispatcher/Makefile
+navit/support/Makefile
+navit/support/ezxml/Makefile
+navit/support/glib/Makefile
+navit/support/libc/Makefile
+navit/support/win32/Makefile
+navit/support/wordexp/Makefile
+navit/support/zlib/Makefile
+navit/vehicle/Makefile
+navit/vehicle/file/Makefile
+navit/vehicle/gpsd/Makefile
+navit/vehicle/gypsy/Makefile
+navit/vehicle/demo/Makefile
+navit/vehicle/wince/Makefile
+navit/xpm/Makefile
+navit/maps/Makefile
 intl/Makefile
 po/Makefile
 ])
+#src/data/garmin_img/Makefile
 
 AC_OUTPUT
 
@@ -401,43 +780,99 @@ AC_OUTPUT
 echo ""
 echo ""
 echo "Summary of your installation :"
-if test x"$gtk2_pkgconfig" = xyes
+# FIXME : maybe elaborate missing dependencies
+if test x"$sdl" != xyes
        then
-       echo "GTK gui     : ENABLED"
-       else
-       echo "GTK gui     : DISABLED : you are missing a dependency"
+        sdl_failures="(libsdl maybe?) "
 fi
-if test x"$sdl" = xyes
-       then
-       echo "SDL gui     : ENABLED, with $CEGUI_LIBS"
-       else
-       echo "SDL gui     : DISABLED : you are missing a dependency"
+if test x"$xmu" != xyes
+        then                
+        sdl_failures=$sdl_failures"libxmu "
+fi        
+if test x"$glut" != xyes
+       then
+        sdl_failures=$sdl_failures"glut "
+fi
+if test x"$glc" != xyes
+        then
+        sdl_failures=$sdl_failures"quesoglc "
 fi
-if test x"$gpsd" = xyes
+if test -z "$sdl_failures"
+        then
+        echo "OpenGL gui  : ENABLED, with $CEGUI_LIBS"
+        else
+                echo "OpenGL gui  : DISABLED : you are missing $sdl_failures"
+fi
+if test x"$directfb_pkgconfig" = xyes
        then
-       echo "GPS support : ENABLED"
+       echo "DIRECTFB    : ENABLED"
        else
-       echo "GPS support : DISABLED"
+       echo "DIRECTFB    : DISABLED"
 fi
-if test x"$speechd" = xyes
+if test x"$enable_hildon" = xyes
        then
-       echo "SPEECHD     : ENABLED"
-       else
-       echo "SPEECHD     : DISABLED"
+        echo "Maemo/Hildon: ENABLED"
+        else
+        echo "Maemo/Hildon: DISABLED"
 fi
-if test "x$use_libgarmin" = "xyes"
+if test x"${USE_GARMIN}" = xyes
        then
-       echo "Garmin IMG  : ENABLED"
-       else
-       echo "Garmin IMG  : DISABLED (you don't have libgarmin)"
+       if test "x$use_libgarmin" = "xyes"
+               then
+               echo "Garmin IMG  : ENABLED"
+               else
+               echo "Garmin IMG  : DISABLED (you don't have libgarmin)"
+       fi
+       else 
+               echo "Garmin IMG  : DISABLED (you requested it)"
 fi
-if  [ test x"$gtk2_pkgconfig" != xyes ] && [ test x"$sdl" != xyes ]
+
+if test x"$LIBINTL" = "x" ;then
+       nls_libs="system gettext support"
+else
+       nls_libs="$LIBINTL"
+fi
+echo "Plugins:             $plugins ($plugins_reason)"
+echo "Postgresql:          $postgresql ($postgresql_reason)"
+echo "Samplemap:           $samplemap ($samplemap_reason)"
+echo "NLS Support:         $enable_nls ($nls_libs)"
+echo "Font renderers:"
+echo "  freetype:          $font_freetype ($font_freetype_reason)"
+echo "Graphics types:"
+echo "  gtk_drawing_area:  $graphics_gtk_drawing_area ($graphics_gtk_drawing_area_reason)"
+echo "  qt_qpainter:       $graphics_qt_qpainter ($graphics_qt_qpainter_reason)"
+echo "  win32:             $graphics_win32 ($graphics_win32_reason)"
+echo "  OpenGL:            $graphics_opengl ($graphics_opengl_reason)"
+echo "  gd:                $graphics_gd ($graphics_gd_reason)"
+
+echo "GUI types:"
+echo "  gtk:               $gui_gtk ($gui_gtk_reason)"
+echo "  internal:          $gui_internal ($gui_internal_reason)"
+echo "  win32:             $gui_win32 ($gui_win32_reason)"
+
+echo "Bindings:"
+echo "  dbus:              $binding_dbus ($binding_dbus_reason)"
+echo "  python:            $binding_python ($binding_python_reason)"
+
+echo "Speech types:"
+echo "  cmdline:           $speech_cmdline ($speech_cmdline_reason)"
+echo "  speech_dispatcher: $speech_speech_dispatcher ($speech_speech_dispatcher_reason)"
+
+echo "Vehicle types:"
+echo "  demo:              $vehicle_demo ($vehicle_demo_reason)"
+echo "  file:              $vehicle_file ($vehicle_file_reason)"
+echo "  gpsd:              $vehicle_gpsd ($vehicle_gpsd_reason)"
+echo "  gypsy:             $vehicle_gypsy ($vehicle_gypsy_reason)"
+echo "  wince:             $vehicle_wince ($vehicle_wince_reason)"
+
+if  test "x${gtk2_pkgconfig}" != "xyes" -a "x${sdl}" != "xyes" -a "x${directfb_pkgconfig}" != "xyes" -a "x${gui_win32}" != "xyes" -a "x${gui_internal}" != "xyes"
        then
        echo ""
        echo "" 
        echo "*** WARNING! you have no gui that can be built! ***"
        echo "Please install the dependency for at least gtk or sdl gui"
-       echo "For more details, see the wiki at http://navit.sf.net/wiki/"
+       echo "For more details, see the wiki at http://wiki.navit-project.org/"
        echo "" 
        exit 1
 fi
+