* Support for automatically generation of common-api sources. Cmake macros adopted...
[profile/ivi/genivi/genivi-audio-manager.git] / PluginCommandInterfaceCAPI / CMakeLists.txt
index c30c009..50224d4 100644 (file)
@@ -45,7 +45,16 @@ set(COMMAND_INTERFACE_DBUS_CONF ${COMMAND_INTERFACE_DBUS_CONF} PARENT_SCOPE)
 CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/cmake/config.cmake ${CMAKE_CURRENT_SOURCE_DIR}/include/configCommandCAPI.h )
 
 FIND_PACKAGE(CommonAPI REQUIRED)
-FIND_PACKAGE(CommonAPI_DBus REQUIRED) 
+
+# Find the common-api sources. 
+# The sources can be placed in the build directory (DESTINATION) or in the source tree (ALT_DESTINATION). 
+# The ALT_DESTINATION is used as fall back if the DESTINATION directory dosen't contain the sources or you just don't want to use the generator.
+INCLUDE(CommonAPIGenerator)
+COMMON_API_GENERATE_SOUCRES(TARGET COMMON_API_COMMAND_INTERFACE 
+                            FIDLS fidl/CommandInterface.fidl # a list with fidls
+                            DESTINATION src-gen  # a relative path to the build directory or an absolute path
+                            ALT_DESTINATION ${CMAKE_CURRENT_SOURCE_DIR}/src-gen # an alternative relative/absolute path with common-api sources, usually in the source tree
+                            DBUS)
 
 INCLUDE_DIRECTORIES(
        ${CMAKE_SOURCE_DIR} 
@@ -55,12 +64,12 @@ INCLUDE_DIRECTORIES(
        ${DLT_INCLUDE_DIRS}
        ${COMMON_API_INCLUDE_DIRS}
        ${COMMON_API_DBUS_INCLUDE_DIRS}
-       ${COMMON_API_GEN_INCLUDE_DIR}
+       ${COMMON_API_COMMAND_INTERFACE_GEN_INCLUDE_DIR}
        ${INCLUDE_FOLDER}
 )
 
 # all source files go here
-file(GLOB PLUGINCAPI_SRCS_CXX "src/*.cpp" ${COMMON_API_GEN_SOURCES})
+file(GLOB PLUGINCAPI_SRCS_CXX "src/*.cpp" ${COMMON_API_COMMAND_INTERFACE_GEN_SOURCES})
 
 add_library(PluginCommandInterfaceCAPI MODULE ${PLUGINCAPI_SRCS_CXX})