# # $Id$ # $HeadURL$ # $Author$ # INCLUDE(MacroRTIDDSGen) INCLUDE(MacroCodeGenIdl) SET(xml_FILE gim_service.xml) # # --- Library svcGimCommon -------------------------------------------------------------------------------- # SET(SRCS_common gim_export.h logger.cpp logger.h ) # Generate gim_enums.idl / gim.idl CODEGEN_IDL_SVC(SRCS_common ${xml_FILE}) # Generate gim_db_impl.cpp/.h, gim_db.h CODEGEN_DATABASE(SRCS_common ${xml_FILE}) # Generate *.cpp/*.hpp from idl RTIDDSGEN(SRCS_common gim_enums.idl) RTIDDSGEN(SRCS_common gim.idl) # Generate gim_dt[s,c]_types.h, gim_ft[s,c]_types.h CODEGEN_TOPIC_TYPEDEFS(SRCS_common ${xml_FILE}) # Generate gim_[d|f]tc.h CODEGEN_CLIENT_TOPICS_IFC(SRCS_common ${xml_FILE}) NGL_ADD_LIBRARY(AAR SV WS svcGimCommon SHARED ${SRCS_common}) NGL_TARGET_INCLUDE_DIRECTORIES(svcGimCommon PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../ ${CMAKE_CURRENT_BINARY_DIR}/../ ) NGL_TARGET_LINK_LIBRARIES(svcGimCommon PRIVATE RTI::nddscpp2 PUBLIC Qt5::Core ngldb ddscore LtsUtilsCore NGLLogger ) NGL_INSTALL_TARGET(svcGimCommon) # # --- Library svcGimClient -------------------------------------------------------------------------------- # SET(SRCS_client gim_export.h gim_dtc_impl_custom.cpp gim_dtc_impl_custom.h ) # generate gim_[d|f]tc.h, gim_[d|f]tc_impl.[cpp|h] CODEGEN_CLIENT_TOPICS_IMPL(SRCS_client ${xml_FILE}) NGL_ADD_LIBRARY(AAR SV WS svcGimClient SHARED ${SRCS_client}) NGL_TARGET_INCLUDE_DIRECTORIES(svcGimClient PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../ ${CMAKE_CURRENT_BINARY_DIR}/../ ) NGL_TARGET_LINK_LIBRARIES(svcGimClient PRIVATE RTI::nddscpp2 ddsconnector PUBLIC svcGimCommon ddsftc ) NGL_INSTALL_TARGET(svcGimClient) # # --- Library svcGimServer -------------------------------------------------------------------------------- # SET(SRCS_server gim_export.h ) # generate gim_[d|f]ts.h, gim_[d|f]ts_impl.[cpp|h] CODEGEN_SERVER_TOPICS(SRCS_server ${xml_FILE}) NGL_ADD_LIBRARY(AAR SV svcGimServer SHARED ${SRCS_server}) NGL_TARGET_INCLUDE_DIRECTORIES(svcGimServer PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../ ${CMAKE_CURRENT_BINARY_DIR}/../ ) NGL_TARGET_LINK_LIBRARIES(svcGimServer PRIVATE RTI::nddscpp2 ddsconnector ddsfts PUBLIC svcGimCommon ngldb ) NGL_INSTALL_TARGET(svcGimServer) # # --- Topic Type Plugin -------------------------------------------------------------- # CREATE_TOPIC_TYPE_PLUGIN(${xml_FILE}) # # --- RecordReplayPlugin -------------------------------------------------------------- # CREATE_RECORD_REPLAY_PLUGIN(${xml_FILE} SRCS_exe) # # --- Executable svcGuezIedManagement (sGIM) ------------------------------------------------- # LIST(APPEND SRCS_exe main.cpp main_handler.cpp main_handler.h dds_handler.cpp dds_handler.h settings.cpp settings.h handler_ied.cpp handler_ied.h object_ied.cpp object_ied.h ${xml_FILE} ) # Generate gim.sql, gim.xml CODEGEN_SQL(SRCS_exe ${xml_FILE}) NGL_ADD_SVC_ICON(SRCS_exe) NGL_ADD_EXECUTABLE(AAR SV svcGuezIedManagement ${SRCS_exe}) NGL_TARGET_LINK_LIBRARIES(svcGuezIedManagement Qt5::Core svcCoreClient svcGimCommon svcGimServer svcPpmClient svcTabClient ddsconnector nglsettings ProjectConfig LtsCommandLineParser NGLLogger nglcoreapplication ngltools LtsUtilsCore svcEsmServer svcGmpServer svcCodServer ) NGL_INSTALL_TARGET(svcGuezIedManagement) NGL_INSTALL(AAR SV FILES log4cxx_gim.props DESTINATION bin) NGL_ADD_TARGET_LINK(svcGuezIedManagement sGIM) IF(BUILD_TESTING) IF(NOT BUILD_RPM) NGL_INSTALL(AAR SV FILES log4cxx_gim.props DESTINATION bin/test) ENDIF() ENDIF() # Uncomment if necessary #ADD_SUBDIRECTORY(UnitTests) #ADD_SUBDIRECTORY(ModuleTests)