1 cmake_minimum_required(VERSION 2.6)
3 PROJECT(PluginCommandInterfaceDbus)
5 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -DDLT_CONTEXT=CommandPluginDbus")
7 set(LIBRARY_OUTPUT_PATH ${PLUGINS_OUTPUT_PATH}/command)
8 set(DOC_OUTPUT_PATH ${DOC_OUTPUT_PATH}/CommandDBusPlugin)
9 set(INCLUDES_FOLDER "include")
11 FILE(READ "${AUDIO_INCLUDES_FOLDER}/command/CommandSendInterface.h" VERSION_BUFFER LIMIT 6000)
12 STRING(REGEX MATCH "CommandSendVersion*.[^0-9]*[0-9]" LIB_INTERFACE_VERSION_STRING ${VERSION_BUFFER})
13 STRING(REGEX REPLACE "[^0-9]" "" LIB_INTERFACE_VERSION ${LIB_INTERFACE_VERSION_STRING})
14 MESSAGE(STATUS "Building against command interface version ${LIB_INTERFACE_VERSION}")
16 FIND_PACKAGE(DBUS REQUIRED)
20 ${CMAKE_CURRENT_BINARY_DIR}
22 ${DBUS_ARCH_INCLUDE_DIR}
23 ${AUDIO_INCLUDES_FOLDER}
28 # all source files go here
29 file(GLOB PLUGINDBUS_SRCS_CXX "src/*.cpp")
31 add_library(PluginCommandInterfaceDbus SHARED ${PLUGINDBUS_SRCS_CXX})
33 SET_TARGET_PROPERTIES(PluginCommandInterfaceDbus PROPERTIES
34 SOVERSION "${LIB_INTERFACE_VERSION}"
38 TARGET_LINK_LIBRARIES(PluginCommandInterfaceDbus
44 add_subdirectory (test)
47 IF(WITH_DOCUMENTATION)
48 file(MAKE_DIRECTORY ${DOC_OUTPUT_PATH})
49 configure_file(${DOXY_FILE} ${DOC_OUTPUT_PATH}/Doxyfile @ONLY IMMEDIATE)
50 add_custom_target (PluginInterfaceDBusDocs ALL
51 COMMAND ${DOXYGEN_EXECUTABLE} ${DOC_OUTPUT_PATH}/Doxyfile WORKING_DIRECTORY ${DOC_OUTPUT_PATH}
52 SOURCES ${PROJECT_BINARY_DIR} ${DOC_OUTPUT_PATH}/Doxyfile
54 ENDIF(WITH_DOCUMENTATION)
56 INSTALL(TARGETS PluginCommandInterfaceDbus
57 DESTINATION "lib/${LIB_INSTALL_SUFFIX}/command"
58 PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ GROUP_EXECUTE GROUP_READ WORLD_EXECUTE WORLD_READ
59 COMPONENT sampleplugins
62 SET(ADD_DEPEND "audiomanager-bin" "dlt" "libdbus-1-3(>=1.2.16)")
63 set_property(GLOBAL APPEND PROPERTY sampleplugins_prop "${ADD_DEPEND}")