summaryrefslogtreecommitdiff
path: root/CommonAPI-Examples/e04PhoneBook/CMakeLists.txt
diff options
context:
space:
mode:
authorJohannes Langlotz <Johannes.Langlotz@partner.bmw.de>2014-03-21 11:03:29 +0100
committerGerrit Code Review <qqmthk1@lpmodthk02.bmwgroup.net>2014-03-21 11:03:29 +0100
commit4bf0aa70112fdfb686816ea228684ee18f184102 (patch)
treedf49945b5f6b748f558e55856e655fc18fc6b40f /CommonAPI-Examples/e04PhoneBook/CMakeLists.txt
parent49e98dcf53f17e03f1014f3ef9c34f3b13e47daa (diff)
parent5e073a099fe590bcab00d8504647660df9e7c500 (diff)
downloadgenivi-common-api-runtime-4bf0aa70112fdfb686816ea228684ee18f184102.tar.gz
Merge "Add examples, extended tutorial and specification document."
Diffstat (limited to 'CommonAPI-Examples/e04PhoneBook/CMakeLists.txt')
-rw-r--r--CommonAPI-Examples/e04PhoneBook/CMakeLists.txt71
1 files changed, 71 insertions, 0 deletions
diff --git a/CommonAPI-Examples/e04PhoneBook/CMakeLists.txt b/CommonAPI-Examples/e04PhoneBook/CMakeLists.txt
new file mode 100644
index 0000000..d0202e7
--- /dev/null
+++ b/CommonAPI-Examples/e04PhoneBook/CMakeLists.txt
@@ -0,0 +1,71 @@
+# Copyright (C) 2014 BMW Group
+# Author: Manfred Bathelt (manfred.bathelt@bmw.de)
+# Author: Juergen Gehring (juergen.gehring@bmw.de)
+# 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/.
+
+cmake_minimum_required(VERSION 2.8)
+
+# Project settings
+if (PRJ_NAME)
+ message(STATUS "Start CMake for Project " ${PRJ_NAME})
+else()
+ message(FATAL_ERROR "Please specify your project name using -D PRJ_NAME=yourName")
+endif()
+project(${PRJ_NAME})
+set(CMAKE_VERBOSE_MAKEFILE on)
+set(CMAKE_CXX_FLAGS "-Wall -std=c++0x")
+set(CMAKE_BUILD_TYPE Debug)
+
+# DBus Path
+if (DBUS_PATH_LOCAL)
+ message(STATUS "DBUS_PATH_LOCAL = " ${DBUS_PATH_LOCAL})
+else()
+ message(FATAL_ERROR "Please specify the path to your patched DBus library using -D DBUS_PATH_LOCAL=yourPath")
+endif()
+
+# CommonAPI
+include(FindPkgConfig)
+pkg_check_modules (COMMONAPI "CommonAPI >= 2.1")
+pkg_check_modules (COMMONAPI_DBUS "CommonAPI-DBus >= 2.1")
+
+# Source Files
+set(PRJ_SRC_PATH src)
+set(PRJ_SRC_GEN_PATH src-gen/commonapi/examples)
+
+set(PRJ_NAME_CLIENT ${PROJECT_NAME}Client)
+set(PRJ_NAME_SERVICE ${PROJECT_NAME}Service)
+
+STRING(REGEX REPLACE "^e" "E" PRJ_DATA_IMPL ${PRJ_NAME})
+FILE(GLOB PRJ_PROXY_GEN_SRCS ${PRJ_SRC_GEN_PATH}/*Proxy.cpp ${PRJ_SRC_GEN_PATH}/*Types.cpp ${PRJ_SRC_GEN_PATH}/${PRJ_DATA_IMPL}.cpp)
+FILE(GLOB PRJ_STUB_GEN_SRCS ${PRJ_SRC_GEN_PATH}/*Stub*.cpp ${PRJ_SRC_GEN_PATH}/*Types.cpp ${PRJ_SRC_GEN_PATH}/${PRJ_DATA_IMPL}.cpp)
+FILE(GLOB PRJ_STUB_IMPL_SRCS ${PRJ_SRC_PATH}/*Stub*.cpp)
+
+set(PRJ_CLIENT_SRCS ${PRJ_SRC_PATH}/${PRJ_NAME_CLIENT}.cpp ${PRJ_PROXY_GEN_SRCS})
+set(PRJ_SERVICE_SRCS ${PRJ_SRC_PATH}/${PRJ_NAME_SERVICE}.cpp ${PRJ_STUB_GEN_SRCS} ${PRJ_STUB_IMPL_SRCS})
+
+# Paths
+message(STATUS "DBUS_PATH_LOCAL = " ${DBUS_PATH_LOCAL})
+message(STATUS "COMMONAPI_INCLUDEDIR = " ${COMMONAPI_INCLUDEDIR})
+message(STATUS "COMMONAPI_DBUS_INCLUDEDIR = " ${COMMONAPI_DBUS_INCLUDEDIR})
+
+include_directories(
+ src-gen
+ ${DBUS_PATH_LOCAL}
+ ${COMMONAPI_INCLUDEDIR}
+ ${COMMONAPI_DBUS_INCLUDEDIR}
+)
+
+link_directories(
+ ${COMMONAPI_LIBDIR}
+ ${COMMONAPI_DBUS_LIBDIR}
+)
+
+# Build Client
+add_executable(${PRJ_NAME_CLIENT} ${PRJ_CLIENT_SRCS})
+target_link_libraries(${PRJ_NAME_CLIENT} CommonAPI CommonAPI-DBus)
+
+# Build service
+add_executable(${PRJ_NAME_SERVICE} ${PRJ_SERVICE_SRCS})
+target_link_libraries(${PRJ_NAME_SERVICE} CommonAPI CommonAPI-DBus)