Fix:build/cmake:Added building of garmin plugin and some fixes to use same install...
authorrikky <rikky@ffa7fe5e-494d-0410-b361-a75ebd5db220>
Mon, 2 May 2011 20:07:10 +0000 (20:07 +0000)
committerrikky <rikky@ffa7fe5e-494d-0410-b361-a75ebd5db220>
Mon, 2 May 2011 20:07:10 +0000 (20:07 +0000)
git-svn-id: https://navit.svn.sourceforge.net/svnroot/navit/trunk@4465 ffa7fe5e-494d-0410-b361-a75ebd5db220

navit/CMakeLists.txt
navit/Toolchain/mingw32.cmake
navit/navit/CMakeLists.txt
navit/navit/font/freetype/CMakeLists.txt
navit/navit/map/garmin/CMakeLists.txt [new file with mode: 0644]
navit/navit/vehicle/file/CMakeLists.txt
navit/navit/vehicle/gpsd/CMakeLists.txt
navit/navit/vehicle/gpsd/vehicle_gpsd.c
navit/navit/vehicle/gpsd_dbus/vehicle_gpsd_dbus.c
navit/navit/xpm/CMakeLists.txt

index 5e88727..f5e1d69 100644 (file)
@@ -49,6 +49,7 @@ add_module(speech/dbus "dbus-glib-1 not found" FALSE)
 add_module(vehicle/gpsd_dbus "dbus-glib-1 not found" FALSE)
 add_module(speech/speech_dispatcher "speech_dispatcher lib not found" FALSE)
 add_module(autoload/osso "Default" FALSE)
+add_module(map/garmin "Garmin library not found" FALSE)
 add_feature(ENABLE_NLS "default" TRUE)
 
 INCLUDE (CPack)
@@ -80,9 +81,11 @@ find_package(Qt4 COMPONENTS QtCore QtGui QtXml QtDeclarative QtSvg OPTIONAL)
 find_package(PkgConfig)
 if(PKG_CONFIG_FOUND)
    pkg_check_modules(QUESOGLC quesoglc)
-   pkg_check_modules(LIBGPSD libgpsd)
+   pkg_check_modules(LIBGPS libgps)
    pkg_check_modules(LIBLOCATION liblocation)
    pkg_check_modules(LIBOSSO libosso)
+   pkg_check_modules(LIBGPS19 libgps>=2.90)
+   pkg_check_modules(LIBGARMIN libgarmin)
 endif(PKG_CONFIG_FOUND)
 #Simple checks
 CHECK_INCLUDE_FILES(wordexp.h HAVE_WORDEXP)
@@ -158,8 +161,10 @@ if (NOT Glib_FOUND)
 endif()
 
 if(FREETYPE_FOUND)
+   pkg_check_modules(FRIBIDI fribidi)
+   pkg_check_modules(FRIBIDI2 fribidi>=0.19.0)
    include_directories(${FREETYPE_INCLUDE_DIRS})
-   set_with_reason(font/freetype "freetype found" TRUE "${FREETYPE_LIBRARY};${FONTCONFIG_LIBRARIES}")
+   set_with_reason(font/freetype "freetype found" TRUE "${FREETYPE_LIBRARY};${FONTCONFIG_LIBRARIES};${FRIBIDI_LIBRARIES}")
    add_subdirectory( "${CMAKE_CURRENT_SOURCE_DIR}/navit/fonts")
 else(FREETYPE_FOUND)
    MESSAGE("No freetype library found, graphics modules may not be available")
@@ -222,14 +227,18 @@ if(SDL_FOUND AND SDLIMAGE_FOUND AND FREETYPE_FOUND)
    set_with_reason(graphics/sdl "SDL/SDL_image libs found" TRUE ${SDL_LIBRARY} ${SDLIMAGE_LIBRARY})
 endif(SDL_FOUND AND SDLIMAGE_FOUND AND FREETYPE_FOUND)
 
-if (HAVE_LIBGPS)
-   set_with_reason(vehicle/gpsd "gpsd lib found" TRUE)
-endif(HAVE_LIBGPS)
+if (LIBGPS_FOUND)
+   set_with_reason(vehicle/gpsd "gpsd lib found" TRUE ${LIBGPS_LIBRARIES})
+endif(LIBGPS_FOUND)
 
 if (GYPSY_FOUND)
    set_with_reason(vehicle/gypsy "gypsy lib found" TRUE)
 endif(GYPSY_FOUND)
 
+if (LIBGARMIN_FOUND)
+   set_with_reason(map/garmin "Garmin library found" TRUE ${LIBGARMIN_LIBRARIES})
+endif(LIBGARMIN_FOUND)
+
 if(DBusGLib_FOUND)
    include_directories(${DBusGLib_INCLUDE_DIRS})
    set_with_reason(binding/dbus "dbus-glib-1 found" TRUE ${DBusGLib_LIBRARIES})
index cfab92d..89c7eb0 100644 (file)
@@ -12,8 +12,7 @@ EXECUTE_PROCESS(
    OUTPUT_VARIABLE CMAKE_FIND_ROOT_PATH
 )
 
-# Does not work - don't know why
-SET(ENV{PKG_CONFIG_SYSROOT_DIR} ${CMAKE_FIND_ROOT_PATH})
+set(PKG_CONFIG_EXECUTABLE "mingw32-pkg-config")
 
 set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
 set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
index 6e304ae..8771d7c 100644 (file)
@@ -146,4 +146,4 @@ install(TARGETS navit
 
 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/navit.xml
         DESTINATION ${SHARE_DIR}
-        PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
+        PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ)
index 3701874..0c06ee9 100644 (file)
@@ -1,2 +1,18 @@
-module_add_library(font_freetype font_freetype.c) 
+module_add_library(font_freetype font_freetype.c)
 
+if (FRIBIDI_FOUND)
+   set_property(
+      TARGET font_freetype
+      APPEND PROPERTY COMPILE_DEFINITIONS USE_FRIBIDI=1
+   )
+   set_property(
+      TARGET font_freetype
+      APPEND PROPERTY COMPILE_FLAGS "-I${FRIBIDI_INCLUDE_DIRS}"
+   )
+   if (NOT FRIBIDI2_FOUND)
+      set_property(
+         TARGET font_freetype
+         APPEND PROPERTY COMPILE_DEFINITIONS FRIBIDIOLD=1
+      )
+   endif (NOT FRIBIDI2_FOUND)
+endif (FRIBIDI_FOUND)
diff --git a/navit/navit/map/garmin/CMakeLists.txt b/navit/navit/map/garmin/CMakeLists.txt
new file mode 100644 (file)
index 0000000..7b04954
--- /dev/null
@@ -0,0 +1,14 @@
+add_executable(gentypes gentypes.c)
+
+# add the command to generate the source code
+add_custom_command (
+  OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/g2nbuiltin.h
+  COMMAND gentypes ${CMAKE_CURRENT_SOURCE_DIR}/garmintypes.txt ${CMAKE_CURRENT_BINARY_DIR}/g2nbuiltin.h
+  DEPENDS gentypes
+  )
+
+module_add_library(map_garmin garmin.c gar2navit.c g2nbuiltin.h)
+set_property(
+   TARGET map_garmin
+   APPEND PROPERTY COMPILE_FLAGS "-I${CMAKE_CURRENT_BINARY_DIR}"
+)
index 3f14275..764f412 100644 (file)
@@ -1,4 +1,7 @@
 module_add_library(vehicle_file vehicle_file.c)
+set (vehicle_pipe_TYPE ${vehicle_file_TYPE})
+set (vehicle_serial_TYPE ${vehicle_file_TYPE})
+set (vehicle_socket_TYPE ${vehicle_file_TYPE})
 module_add_library(vehicle_pipe vehicle_pipe.c)
 module_add_library(vehicle_serial vehicle_serial.c)
 module_add_library(vehicle_socket vehicle_socket.c)
index 913bc13..091df2f 100644 (file)
@@ -1,2 +1,8 @@
-module_add_library(vehicle_gpsd vehicle_gpsd.c) 
+module_add_library(vehicle_gpsd vehicle_gpsd.c)
+if (LIBGPS19_FOUND)
+   set_property(
+      TARGET vehicle_gpsd
+      APPEND PROPERTY COMPILE_DEFINITIONS HAVE_LIBGPS19=1
+   )
+endif (LIBGPS19_FOUND)
 
index 4559399..7d1ad9e 100644 (file)
@@ -405,7 +405,7 @@ vehicle_gpsd_position_attr_get(struct vehicle_priv *priv,
        return 1;
 }
 
-struct vehicle_methods vehicle_gpsd_methods = {
+static struct vehicle_methods vehicle_gpsd_methods = {
        vehicle_gpsd_destroy,
        vehicle_gpsd_position_attr_get,
 };
index 8f83a35..79ff13b 100644 (file)
@@ -210,7 +210,7 @@ vehicle_gpsd_dbus_set_attr(struct vehicle_priv *priv, struct attr *attr)
        return vehicle_gpsd_dbus_set_attr_do(priv, attr, 0);
 }
 
-struct vehicle_methods vehicle_gpsd_methods = {
+static struct vehicle_methods vehicle_gpsd_methods = {
        vehicle_gpsd_dbus_destroy,
        vehicle_gpsd_dbus_position_attr_get,
        vehicle_gpsd_dbus_set_attr,
index 942a833..000c317 100644 (file)
@@ -52,9 +52,9 @@ macro(add_scale_targets IMAGE_SRC IMAGE_NAME)
    endforeach()
 endmacro()
 
-#install(FILES  desktop_icons/navit.desktop DESTINATION share/applications)
-#install(FILES  desktop_icons/22x22/navit.png DESTINATION share/icons/hicolor/22x22/apps)
-#install(FILES  desktop_icons/128x128/navit.png DESTINATION share/icons/hicolor/128x128/apps)
+install(FILES  desktop_icons/navit.desktop DESTINATION share/applications)
+install(FILES  desktop_icons/22x22/navit.png DESTINATION share/icons/hicolor/22x22/apps)
+install(FILES  desktop_icons/128x128/navit.png DESTINATION share/icons/hicolor/128x128/apps)
 #install(FILES  bench.xpm DESTINATION )
 
 if (USE_SVG OR SVG2PNG)
@@ -97,5 +97,5 @@ add_custom_target(images ALL DEPENDS ${IMAGE_TARGETS})
 install(
    FILES ${IMAGE_TARGETS}
    DESTINATION ${IMAGE_DIR}
-   PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
+   PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
 )