summaryrefslogtreecommitdiff
path: root/api/poi-service/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'api/poi-service/CMakeLists.txt')
-rw-r--r--api/poi-service/CMakeLists.txt95
1 files changed, 95 insertions, 0 deletions
diff --git a/api/poi-service/CMakeLists.txt b/api/poi-service/CMakeLists.txt
new file mode 100644
index 0000000..31f61a6
--- /dev/null
+++ b/api/poi-service/CMakeLists.txt
@@ -0,0 +1,95 @@
+###########################################################################
+# @licence app begin@
+# SPDX-License-Identifier: MPL-2.0
+#
+# Component Name: navigation
+#
+# Author: Philippe Colliot
+#
+# Copyright (C) 2014, PCA Peugeot Citroën
+#
+# License:
+# This Source Code Form is subject to the terms of the
+# Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with
+# this file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+# @licence end@
+###########################################################################
+project(navigation)
+cmake_minimum_required(VERSION 2.8)
+
+message(STATUS "generation of DBus files for poi-service")
+
+find_program(XSLTPROC xsltproc REQUIRED)
+find_program(DBUSXML2CPP dbusxx-xml2cpp REQUIRED)
+
+set(cmake_create_dir cmake -E make_directory)
+
+set(API_DIR ${CMAKE_CURRENT_SOURCE_DIR}/..)
+
+execute_process(
+ WORKING_DIRECTORY ${API_DIR}
+ COMMAND ${cmake_create_dir} include
+)
+
+set(TARGET_GENERATED_API_DIR ${API_DIR}/include)
+
+file (GLOB XML_TO_DBUS_PROXY
+ ${CMAKE_CURRENT_SOURCE_DIR}/genivi-poiservice-contentaccessmodule.xml
+ ${CMAKE_CURRENT_SOURCE_DIR}/genivi-poiservice-poicontentaccess.xml
+ ${CMAKE_CURRENT_SOURCE_DIR}/genivi-poiservice-poisearch.xml
+)
+foreach (RAW_FILE ${XML_TO_DBUS_PROXY})
+ get_filename_component(FILE ${RAW_FILE} NAME_WE)
+ if(NOT EXISTS ${TARGET_GENERATED_API_DIR}/${FILE}_proxy.h)
+ execute_process(
+ COMMAND ${DBUSXML2CPP} ${RAW_FILE} --proxy=${TARGET_GENERATED_API_DIR}/${FILE}_proxy.h
+ )
+ else()
+ if(${RAW_FILE} IS_NEWER_THAN ${TARGET_GENERATED_API_DIR}/${FILE}_proxy.h)
+ execute_process(
+ COMMAND ${DBUSXML2CPP} ${RAW_FILE} --proxy=${TARGET_GENERATED_API_DIR}/${FILE}_proxy.h
+ )
+ endif()
+ endif()
+endforeach()
+
+file (GLOB XML_TO_DBUS_ADAPTOR
+ ${CMAKE_CURRENT_SOURCE_DIR}/genivi-poiservice-contentaccessmodule.xml
+ ${CMAKE_CURRENT_SOURCE_DIR}/genivi-poiservice-poicontentaccess.xml
+ ${CMAKE_CURRENT_SOURCE_DIR}/genivi-poiservice-poisearch.xml
+)
+foreach (RAW_FILE ${XML_TO_DBUS_ADAPTOR})
+ get_filename_component(FILE ${RAW_FILE} NAME_WE)
+ if(NOT EXISTS ${TARGET_GENERATED_API_DIR}/${FILE}_adaptor.h)
+ execute_process(
+ COMMAND ${DBUSXML2CPP} ${RAW_FILE} --adaptor=${TARGET_GENERATED_API_DIR}/${FILE}_adaptor.h
+ )
+ else()
+ if(${RAW_FILE} IS_NEWER_THAN ${TARGET_GENERATED_API_DIR}/${FILE}_adaptor.h)
+ execute_process(
+ COMMAND ${DBUSXML2CPP} ${RAW_FILE} --adaptor=${TARGET_GENERATED_API_DIR}/${FILE}_adaptor.h
+ )
+ endif()
+ endif()
+endforeach()
+
+file (GLOB XML_TO_DBUS_CONSTANT
+ ${CMAKE_CURRENT_SOURCE_DIR}/genivi-poiservice-constants.xml
+)
+foreach (RAW_FILE ${XML_TO_DBUS_CONSTANT})
+ get_filename_component(FILE ${RAW_FILE} NAME_WE)
+ if(NOT EXISTS ${TARGET_GENERATED_API_DIR}/${FILE}.h)
+ execute_process(
+ OUTPUT_FILE ${TARGET_GENERATED_API_DIR}/${FILE}.h
+ COMMAND ${XSLTPROC} ${CMAKE_CURRENT_SOURCE_DIR}/enum.xsl ${RAW_FILE}
+ )
+ else()
+ if(${RAW_FILE} IS_NEWER_THAN ${TARGET_GENERATED_API_DIR}/${FILE}.h)
+ execute_process(
+ OUTPUT_FILE ${TARGET_GENERATED_API_DIR}/${FILE}.h
+ COMMAND ${XSLTPROC} ${CMAKE_CURRENT_SOURCE_DIR}/enum.xsl ${RAW_FILE}
+ )
+ endif()
+ endif()
+endforeach()