# # $Id$ # $HeadURL$ # $Author$ # INCLUDE(MacroRTIDDSGen) INCLUDE(MacroCodeGenIdl) SET(xml_FILE pre_service.xml) # # --- Library svcPreCommon -------------------------------------------------------------------------------- # SET(SRCS_common pre_export.h logger.cpp logger.h ) # Generate pre_enums.idl / pre.idl CODEGEN_IDL_SVC(SRCS_common ${xml_FILE}) # Generate pre_db_impl.cpp/.h, pre_db.h CODEGEN_DATABASE(SRCS_common ${xml_FILE}) # Generate *.cpp/*.hpp from idl RTIDDSGEN(SRCS_common pre_enums.idl) RTIDDSGEN(SRCS_common pre.idl) # Generate pre_dt[s,c]_types.h, pre_ft[s,c]_types.h CODEGEN_TOPIC_TYPEDEFS(SRCS_common ${xml_FILE}) # generate pre_[d|f]tc.h CODEGEN_CLIENT_TOPICS_IFC(SRCS_common ${xml_FILE}) NGL_ADD_LIBRARY(AAR SV WS svcPreCommon SHARED ${SRCS_common}) NGL_TARGET_INCLUDE_DIRECTORIES(svcPreCommon PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../ ${CMAKE_CURRENT_BINARY_DIR}/../ ) NGL_TARGET_LINK_LIBRARIES(svcPreCommon PRIVATE RTI::nddscpp2 PUBLIC Qt5::Core ddscore NGLLogger ngldb ) NGL_INSTALL_TARGET(svcPreCommon) # # --- Library svcPreClient -------------------------------------------------------------------------------- # SET(SRCS_client pre_export.h ) # generate pre_[d|f]tc_impl.[cpp|h] CODEGEN_CLIENT_TOPICS_IMPL(SRCS_client ${xml_FILE}) NGL_ADD_LIBRARY(AAR SV WS svcPreClient SHARED ${SRCS_client}) NGL_TARGET_INCLUDE_DIRECTORIES(svcPreClient PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../ ${CMAKE_CURRENT_BINARY_DIR}/../ ) NGL_TARGET_LINK_LIBRARIES(svcPreClient PRIVATE RTI::nddscpp2 ddsconnector PUBLIC svcPreCommon ddsftc ) NGL_INSTALL_TARGET(svcPreClient) # # --- Library svcPreServer -------------------------------------------------------------------------------- # SET(SRCS_server initialization.cpp initialization.h dds_handler.cpp dds_handler.h handler_presentation.cpp handler_presentation.h object_presentation.cpp object_presentation.h pre_export.h settings.cpp settings.h ) # generate pre_[d|f]ts.h, pre_[d|f]ts_impl.[cpp|h] CODEGEN_SERVER_TOPICS(SRCS_server ${xml_FILE}) # Generate pre.sql, pre.xml CODEGEN_SQL(SRCS_server ${xml_FILE}) NGL_ADD_LIBRARY(AAR SV svcPreServer SHARED ${SRCS_server}) NGL_TARGET_INCLUDE_DIRECTORIES(svcPreServer PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../ ${CMAKE_CURRENT_BINARY_DIR}/../ ) NGL_TARGET_LINK_LIBRARIES(svcPreServer PRIVATE RTI::nddscpp2 ddsconnector ddsfts nglsettings ngltools svcCoreClient PUBLIC svcPreCommon ngldb ) NGL_INSTALL_TARGET(svcPreServer) # # --- Topic Type Plugin -------------------------------------------------------------- # CREATE_TOPIC_TYPE_PLUGIN(${xml_FILE}) # Uncomment if necessary #ADD_SUBDIRECTORY(UnitTests) ADD_SUBDIRECTORY(ModuleTests)