summaryrefslogtreecommitdiff
path: root/src/navigation/navigation-core/enhancedposition-plugin/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'src/navigation/navigation-core/enhancedposition-plugin/CMakeLists.txt')
-rw-r--r--src/navigation/navigation-core/enhancedposition-plugin/CMakeLists.txt47
1 files changed, 35 insertions, 12 deletions
diff --git a/src/navigation/navigation-core/enhancedposition-plugin/CMakeLists.txt b/src/navigation/navigation-core/enhancedposition-plugin/CMakeLists.txt
index 99ae2ca..e0c0f9a 100644
--- a/src/navigation/navigation-core/enhancedposition-plugin/CMakeLists.txt
+++ b/src/navigation/navigation-core/enhancedposition-plugin/CMakeLists.txt
@@ -24,24 +24,47 @@
#
# @licence end@
cmake_minimum_required(VERSION 2.8)
+
include(FindPkgConfig)
-include(${navit_SOURCE_DIR}/cmake/navit_macros.cmake)
-include_directories(${navit_SOURCE_DIR}/..)
-include_directories(${CMAKE_CURRENT_BINARY_DIR})
-include_directories(${CMAKE_CURRENT_BINARY_DIR}/..)
-include_directories(${INCLUDE_DIRECTORIES})
-include_directories(.)
-include_directories(compat_includes)
-link_directories(${CMAKE_CURRENT_SOURCE_DIR}/compat_libs)
+
+include(${navit_SRC_DIR}/navit/cmake/navit_macros.cmake)
+
add_definitions(-DPLUGIN=1)
+
pkg_search_module(DBUS_CPP dbus-c++-glib-1 dbus-c++-1)
pkg_search_module(GLIB glib-2.0)
include_directories(${GLIB_INCLUDE_DIRS})
include_directories(${DBUS_CPP_INCLUDE_DIRS})
+
+include_directories(${INCLUDE_DIRECTORIES})
+include_directories(.)
+include_directories(${navit_SRC_DIR}/navit)
+include_directories(${CMAKE_CURRENT_BINARY_DIR})
+include_directories(${CMAKE_CURRENT_BINARY_DIR}/../..)
+
+include_directories(${generated_api_DIR})
+
set(genivi_positioning_enhancedposition_LIBS ${DBUS_CPP_LDFLAGS})
-ADD_CUSTOM_COMMAND(OUTPUT genivi_positioning_enhancedposition_proxy.h
- COMMAND dbusxx-xml2cpp ${positioning_API}/genivi-positioning-enhancedposition.xml --proxy=genivi_positioning_enhancedposition_proxy.h &&
- sed -i -e "'s/>, >/> >/g'" -e 's/>::DBus::Struct</>,::DBus::Struct</g' genivi_positioning_enhancedposition_proxy.h
+
+message(STATUS "${positioning_API}")
+
+ADD_CUSTOM_COMMAND(OUTPUT ${generated_api_DIR}/genivi-positioning-enhancedposition_proxy.h
+ COMMAND dbusxx-xml2cpp ${positioning_API}/genivi-positioning-enhancedposition.xml --proxy=${generated_api_DIR}/genivi-positioning-enhancedposition_proxy.h
DEPENDS ${positioning_API}/genivi-positioning-enhancedposition.xml
)
-module_add_library(genivi_positioning_enhancedposition genivi_positioning_enhancedposition.cxx genivi_positioning_enhancedposition_proxy.h)
+
+if(NOT EXISTS ${generated_api_DIR}/genivi-positioning-constants.h)
+ execute_process(
+ OUTPUT_FILE ${generated_api_DIR}/genivi-positioning-constants.h
+ COMMAND xsltproc ${api_DIR}/poi-service/enum.xsl ${positioning_API}/genivi-positioning-constants.xml
+ )
+else()
+ if(${positioning_API}/genivi-positioning-constants.xml IS_NEWER_THAN ${generated_api_DIR}/genivi-positioning-constants.h)
+ execute_process(
+ OUTPUT_FILE ${generated_api_DIR}/genivi-positioning-constants.h
+ COMMAND xsltproc ${api_DIR}/poi-service/enum.xsl ${positioning_API}/genivi-positioning-constants.xml #use another enum.xsl for radix consistency
+ )
+ endif()
+endif()
+
+module_add_library(genivi_positioning_enhancedposition genivi_positioning_enhancedposition.cxx ${generated_api_DIR}/genivi-positioning-enhancedposition_proxy.h)