Dbus restructured
[profile/ivi/genivi/genivi-audio-manager.git] / PluginCommandInterfaceDbus / CMakeLists.txt
1 cmake_minimum_required(VERSION 2.6)
2
3 PROJECT(PluginCommandInterfaceDbus)
4
5 set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Xlinker -export-dynamic")
6 set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -pedantic")
7 set(CMAKE_CXX_FLAGS "-g -pipe -g -Wall -W -D_REENTRANT")
8
9
10 set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_SOURCE_DIR}")
11
12 set(STD_INCLUDE_DIRS "/usr/include")
13 set(EXECUTABLE_OUTPUT_PATH ../../bin/)
14 set(LIBRARY_OUTPUT_PATH ../plugins/command)
15 set(DOC_OUTPUT_PATH ${CMAKE_SOURCE_DIR}/../doc/CommandDBusPlugin)
16
17 find_package (Threads)
18 FIND_PACKAGE(DBUS REQUIRED)
19 FIND_PACKAGE(PkgConfig)
20 pkg_check_modules(DLT REQUIRED automotive-dlt)
21
22
23 set(DOCUMENT $ENV{gendoc})
24
25 file(MAKE_DIRECTORY ${DOC_OUTPUT_PATH})
26
27 INCLUDE_DIRECTORIES(
28         ${CMAKE_SOURCE_DIR} 
29         ${STD_INCLUDE_DIRS}
30         ${CMAKE_CURRENT_BINARY_DIR}
31         ${DBUS_INCLUDE_DIR}
32         ${DBUS_ARCH_INCLUDE_DIR}
33         ../AudioManagerDaemon
34 )
35
36 # all source files go here
37 SET(PLUGINDBUS_SRCS_CXX
38         CommandDbusReceive.cpp
39     DbusInterface.cpp 
40     DBUSIntrospection.cpp
41     DBUSMessageHandler.cpp
42     DbusSend.cpp
43 )
44
45 add_library(PluginCommandInterfaceDbus SHARED ${PLUGINDBUS_SRCS_CXX})
46
47 TARGET_LINK_LIBRARIES(PluginCommandInterfaceDbus 
48         ${DLT_LIBRARIES}
49         ${DBUS_LIBRARY}
50         ${CMAKE_THREAD_LIBS_INIT}
51 )
52
53
54 #add a target to generate API documentation with Doxygen
55 find_package(Doxygen)
56 if(DOXYGEN_FOUND)
57 if(DOCUMENT)
58         configure_file(Doxyfile.in ${PROJECT_BINARY_DIR}/Doxyfile  @ONLY IMMEDIATE)
59         add_custom_target (Docs ALL 
60         COMMAND ${DOXYGEN_EXECUTABLE} ${PROJECT_BINARY_DIR}/Doxyfile WORKING_DIRECTORY ${DOC_OUTPUT_PATH}
61         SOURCES ${PROJECT_BINARY_DIR}/Doxyfile)
62 endif(DOCUMENT)
63 endif(DOXYGEN_FOUND)
64
65
66