* fixed commandline option p is now recognized
[profile/ivi/audiomanager.git] / AudioManagerDaemon / CMakeLists.txt
1  #
2  #  Copyright (C) 2011, BMW AG 
3  # 
4  # AudioManagerDeamon
5  #
6  # @file CMakeLists.txt
7  #
8  # @date: 20.05.2011
9  # @author: Christian Müller (christian.ei.mueller@bmw.de)
10  #
11
12 cmake_minimum_required(VERSION 2.6)
13
14 PROJECT(AudioManagerDeamon)
15
16 set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -rdynamic")
17 set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g")
18
19 set(DOC_OUTPUT_PATH ${DOC_OUTPUT_PATH}/AudioManager)
20 set(INCLUDES_FOLDER "include")
21
22 pkg_check_modules(SQLITE REQUIRED sqlite3)
23
24 IF(WITH_DBUS_WRAPPER)
25     FIND_PACKAGE(DBUS REQUIRED)
26 ENDIF(WITH_DBUS_WRAPPER)
27
28 SET(AUDIOMAN_SRCS_CXX
29     src/main.cpp
30     src/CommandReceiver.cpp
31     src/CommandSender.cpp
32     src/ControlReceiver.cpp
33     src/ControlSender.cpp
34     src/DatabaseHandler.cpp
35     src/DatabaseObserver.cpp
36     src/RoutingReceiver.cpp
37     src/RoutingSender.cpp
38     src/SocketHandler.cpp
39     src/TelnetServer.cpp
40 )
41
42 IF(WITH_DBUS_WRAPPER)
43     SET (AUDIOMAN_SRCS_CXX
44         ${AUDIOMAN_SRCS_CXX}
45         src/DBusWrapper.cpp
46     )
47 ENDIF(WITH_DBUS_WRAPPER)
48
49 IF(WITH_SOCKETHANDLER_LOOP)
50     SET (AUDIOMAN_SRCS_CXX
51         ${AUDIOMAN_SRCS_CXX}
52         src/SocketHandler.cpp
53      )
54 ENDIF(WITH_SOCKETHANDLER_LOOP)
55
56 INCLUDE_DIRECTORIES(    
57         ${CMAKE_SOURCE_DIR} 
58         ${CMAKE_CURRENT_BINARY_DIR}
59         ${DLT_INCLUDE_DIRS}
60         ${AUDIO_INCLUDES_FOLDER}
61         ${INCLUDES_FOLDER}
62 )
63
64 IF(WITH_DBUS_WRAPPER)
65 INCLUDE_DIRECTORIES(${INCLUDE_DIRECTORIES}
66     ${DBUS_ARCH_INCLUDE_DIR}
67     ${DBUS_INCLUDE_DIR}
68 )
69 ENDIF(WITH_DBUS_WRAPPER)
70
71 ADD_EXECUTABLE(AudioManager ${AUDIOMAN_SRCS_CXX})
72
73 IF(WITH_DBUS_WRAPPER)
74 TARGET_LINK_LIBRARIES(AudioManager 
75         ${SQLITE_LIBRARIES}
76         ${DLT_LIBRARIES}
77         ${DBUS_LIBRARY}
78 )
79 ELSE(WITH_DBUS_WRAPPER)
80     TARGET_LINK_LIBRARIES(AudioManager 
81         ${SQLITE_LIBRARIES}
82         ${DLT_LIBRARIES}
83 )
84 ENDIF(WITH_DBUS_WRAPPER)
85
86 IF(WITH_TESTS)
87         add_subdirectory (test)
88 ENDIF(WITH_TESTS)
89
90 IF(WITH_DOCUMENTATION)
91         file(MAKE_DIRECTORY ${DOC_OUTPUT_PATH})
92         configure_file(${DOXY_FILE}  ${DOC_OUTPUT_PATH}/Doxyfile  @ONLY IMMEDIATE)
93         add_custom_target (Docs ALL 
94                 COMMAND ${DOXYGEN_EXECUTABLE} ${DOC_OUTPUT_PATH}/Doxyfile WORKING_DIRECTORY ${DOC_OUTPUT_PATH}
95                 SOURCES ${PROJECT_BINARY_DIR} ${DOC_OUTPUT_PATH}/Doxyfile
96         )
97 ENDIF(WITH_DOCUMENTATION)
98
99
100
101