# # $Id$ # $HeadURL$ # $Author$ # INCLUDE(MacroRTIDDSGen) INCLUDE(MacroCodeGenIdl) SET(xml_FILE tgt_service.xml) # # --- Library svcTgtCommon -------------------------------------------------------------------------------- # SET(SRCS_common tgt_export.h logger.cpp logger.h ) # Generate tgt_enums.idl / tgt.idl CODEGEN_IDL_SVC(SRCS_common ${xml_FILE}) # Generate tgt_db_impl.cpp/.h, tgt_db.h CODEGEN_DATABASE(SRCS_common ${xml_FILE}) # Generate *.cpp/*.hpp from idl RTIDDSGEN(SRCS_common tgt_enums.idl) RTIDDSGEN(SRCS_common tgt.idl) # Generate tgt_dt[s,c]_types.h, tgt_ft[s,c]_types.h CODEGEN_TOPIC_TYPEDEFS(SRCS_common ${xml_FILE}) # Generate tgt_[d|f]tc.h CODEGEN_CLIENT_TOPICS_IFC(SRCS_common ${xml_FILE}) NGL_ADD_LIBRARY(AAR SV WS svcTgtCommon SHARED ${SRCS_common}) NGL_TARGET_INCLUDE_DIRECTORIES(svcTgtCommon PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../ ${CMAKE_CURRENT_BINARY_DIR}/../ ) NGL_TARGET_LINK_LIBRARIES(svcTgtCommon PRIVATE RTI::nddscpp2 PUBLIC Qt5::Core ddscore NGLLogger ngldb ) NGL_INSTALL_TARGET(svcTgtCommon) # # --- Library svcTgtClient -------------------------------------------------------------------------------- # SET(SRCS_client tgt_export.h ) # generate tgt_[d|f]tc.h, tgt_[d|f]tc_impl.[cpp|h] CODEGEN_CLIENT_TOPICS_IMPL(SRCS_client ${xml_FILE}) NGL_ADD_LIBRARY(AAR SV WS svcTgtClient SHARED ${SRCS_client}) NGL_TARGET_INCLUDE_DIRECTORIES(svcTgtClient PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../ ${CMAKE_CURRENT_BINARY_DIR}/../ ) NGL_TARGET_LINK_LIBRARIES(svcTgtClient PRIVATE RTI::nddscpp2 ddsconnector PUBLIC svcTgtCommon ddsftc ) NGL_INSTALL_TARGET(svcTgtClient) # # --- Library svcTgtServer -------------------------------------------------------------------------------- # SET(SRCS_server tgt_export.h ) # generate tgt_[d|f]ts.h, tgt_[d|f]ts_impl.[cpp|h] CODEGEN_SERVER_TOPICS(SRCS_server ${xml_FILE}) NGL_ADD_LIBRARY(AAR SV svcTgtServer SHARED ${SRCS_server}) NGL_TARGET_INCLUDE_DIRECTORIES(svcTgtServer PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../ ${CMAKE_CURRENT_BINARY_DIR}/../ ) NGL_TARGET_LINK_LIBRARIES(svcTgtServer PRIVATE RTI::nddscpp2 ddsconnector ddsfts ngldb PUBLIC svcTgtCommon ) NGL_INSTALL_TARGET(svcTgtServer) # # --- Topic Type Plugin -------------------------------------------------------------- # CREATE_TOPIC_TYPE_PLUGIN(${xml_FILE}) # # --- Executable svcTargetManagement (sTGT) ------------------------------------------------- # SET(SRCS_exe main.cpp main_handler.cpp main_handler.h dds_handler.cpp dds_handler.h handler_target_config.cpp handler_target_config.h handler_shootback_area.cpp handler_shootback_area.h handler_shootback_target.cpp handler_shootback_target.h handler_target_area_assignment.cpp handler_target_area_assignment.h object_shootback_area.cpp object_shootback_area.h object_shootback_target.cpp object_shootback_target.h object_target_area_assignment.cpp object_target_area_assignment.h shootback_controller.cpp shootback_controller.h settings.cpp settings.h ${xml_FILE} ) # Generate tgt.sql, tgt.xml CODEGEN_SQL(SRCS_exe ${xml_FILE}) NGL_ADD_EXECUTABLE(AAR SV svcTargetManagement ${SRCS_exe}) NGL_TARGET_LINK_LIBRARIES(svcTargetManagement Qt5::Core ddsconnector ddsQoS svcTgtCommon svcTgtServer svcTabClient svcPpmClient situationMapElevationMap ddsconnector nglsettings ProjectConfig LtsCommandLineParser LtsUtilsCore LtsCoordTrans NGLLogger nglcoreapplication svcCoreClient ngltools ngldb ) NGL_INSTALL_TARGET(svcTargetManagement) NGL_INSTALL(AAR SV FILES log4cxx_tgt.props DESTINATION bin) NGL_ADD_TARGET_LINK(svcTargetManagement sTGT) # Uncomment if necessary ADD_SUBDIRECTORY(UnitTests) ADD_SUBDIRECTORY(ModuleTests)