total rework
[profile/ivi/genivi/genivi-audio-manager.git] / PluginControlInterface / CMakeLists.txt
1 cmake_minimum_required(VERSION 2.6)
2
3 PROJECT(PluginControlInterface)
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 set(STD_INCLUDE_DIRS "/usr/include")
10 set(EXECUTABLE_OUTPUT_PATH ../../bin/)
11 set(LIBRARY_OUTPUT_PATH ../plugins/control)
12 set(DOC_OUTPUT_PATH ${CMAKE_SOURCE_DIR}/../doc/PluginControl)
13 set(AUDIO_INCLUDES_FOLDER ${CMAKE_SOURCE_DIR}/../includes)
14 set(DOCUMENT $ENV{gendoc})
15 FIND_PACKAGE(PkgConfig)
16 pkg_check_modules(DLT REQUIRED automotive-dlt)
17
18 file(MAKE_DIRECTORY ${DOC_OUTPUT_PATH})
19
20 INCLUDE_DIRECTORIES(
21         ${CMAKE_SOURCE_DIR} 
22         ${STD_INCLUDE_DIRS}
23         ${CMAKE_CURRENT_BINARY_DIR}
24         ${AUDIO_INCLUDES_FOLDER}
25 )
26
27 # all source files go here
28 SET(PLUGIN_STANDARD_HOOKS_SRCS_CXX
29     ControlSender.cpp
30 )
31
32 add_library(PluginControlInterface SHARED ${PLUGIN_STANDARD_HOOKS_SRCS_CXX})
33
34 TARGET_LINK_LIBRARIES(PluginControlInterface ${DLT_LIBRARIES} )
35
36 #add a target to generate API documentation with Doxygen
37 find_package(Doxygen)
38 if(DOXYGEN_FOUND)
39 if(DOCUMENT)
40         configure_file(Doxyfile.in ${PROJECT_BINARY_DIR}/Doxyfile  @ONLY IMMEDIATE)
41         add_custom_target (Docs ALL 
42         COMMAND ${DOXYGEN_EXECUTABLE} ${PROJECT_BINARY_DIR}/Doxyfile WORKING_DIRECTORY ${DOC_OUTPUT_PATH}
43         SOURCES ${PROJECT_BINARY_DIR}/Doxyfile)
44 endif(DOCUMENT)
45 endif(DOXYGEN_FOUND)
46