# # $Id$ # $HeadURL$ # $Author$ # INCLUDE(MacroRTIDDSGen) INCLUDE(MacroCodeGenIdl) SET(xml_FILE flm_service.xml) # # --- Library svcFlmCommon -------------------------------------------------------------------------------- # SET(SRCS_common flm_export.h flm_db_impl_custom.cpp flm_db_impl_custom.h logger.cpp logger.h ) # Generate flm_enums.idl / flm.idl CODEGEN_IDL_SVC(SRCS_common ${xml_FILE}) # Generate flm_db_impl.cpp/.h, flm_db.h CODEGEN_DATABASE(SRCS_common ${xml_FILE}) # Generate *.cpp/*.hpp from idl RTIDDSGEN(SRCS_common flm_enums.idl) RTIDDSGEN(SRCS_common flm.idl) # Generate flm_dt[s,c]_types.h, flm_ft[s,c]_types.h CODEGEN_TOPIC_TYPEDEFS(SRCS_common ${xml_FILE}) # generate flm_[d|f]tc.h CODEGEN_CLIENT_TOPICS_IFC(SRCS_common ${xml_FILE}) NGL_ADD_LIBRARY(AAR SV WS svcFlmCommon SHARED ${SRCS_common}) NGL_TARGET_INCLUDE_DIRECTORIES(svcFlmCommon PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../ ${CMAKE_CURRENT_BINARY_DIR}/../ ) NGL_TARGET_LINK_LIBRARIES(svcFlmCommon PRIVATE RTI::nddscpp2 PUBLIC Qt5::Core ddscore ngldb LtsUtilsCore NGLLogger ) NGL_INSTALL_TARGET(svcFlmCommon) # # --- Library svcFlmClient -------------------------------------------------------------------------------- # SET(SRCS_client flm_dtc_impl_custom.cpp flm_dtc_impl_custom.h flm_export.h ) # generate flm_ftc_impl.[cpp|h] CODEGEN_CLIENT_TOPICS_IMPL(SRCS_client ${xml_FILE}) NGL_ADD_LIBRARY(WS AAR SV svcFlmClient SHARED ${SRCS_client}) NGL_TARGET_INCLUDE_DIRECTORIES(svcFlmClient PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../ ${CMAKE_CURRENT_BINARY_DIR}/../ ) NGL_TARGET_LINK_LIBRARIES(svcFlmClient PRIVATE RTI::nddscpp2 ddsconnector PUBLIC svcFlmCommon ddsftc ) NGL_INSTALL_TARGET(svcFlmClient) # # --- Library svcFlmServer -------------------------------------------------------------------------------- # SET(SRCS_server flm_export.h convert_db_to_dds.h ) # generate flm_[d|f]ts.h, flm_[d|f]ts_impl.[cpp|h] CODEGEN_SERVER_TOPICS(SRCS_server ${xml_FILE}) NGL_ADD_LIBRARY(WS AAR SV svcFlmServer SHARED ${SRCS_server}) NGL_TARGET_INCLUDE_DIRECTORIES(svcFlmServer PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../ ${CMAKE_CURRENT_BINARY_DIR}/../ ) NGL_TARGET_LINK_LIBRARIES(svcFlmServer PRIVATE RTI::nddscpp2 ddsconnector ddsfts PUBLIC svcFlmCommon ngldb LtsUtilsCore ) NGL_INSTALL_TARGET(svcFlmServer) # # --- Topic Type Plugin -------------------------------------------------------------- # CREATE_TOPIC_TYPE_PLUGIN(${xml_FILE}) # # --- Executable svcFileManagement (sFlm) ------------------------------------------------- # SET(HDRS_exe ) SET(SRCS_exe base.cpp base.h dds_handler.cpp dds_handler.h main.cpp main_handler.cpp main_handler.h settings.cpp settings.h handler_file_type_info.cpp handler_file_type_info.h object_file_type_info.cpp object_file_type_info.h handler_folder.cpp handler_folder.h object_folder.cpp object_folder.h handler_file_content.cpp handler_file_content.h object_file_content.cpp object_file_content.h thp_script_httq.h thp_script_httq.cpp pdf_server.cpp pdf_server.h pdf_download.cpp pdf_download.h WebSocketInterface/data_manager.cpp WebSocketInterface/data_manager.h WebSocketInterface/json_keys.h WebSocketInterface/websocket_interface_handler.cpp WebSocketInterface/websocket_interface_handler.h WebSocketInterface/Messages/client_message.cpp WebSocketInterface/Messages/client_message.h WebSocketInterface/Messages/reply_message.cpp WebSocketInterface/Messages/reply_message.h ${xml_FILE} ) # Generate flm.sql, flm.xml CODEGEN_SQL(SRCS_exe ${xml_FILE}) NGL_ADD_SVC_ICON(SRCS_exe) NGL_ADD_EXECUTABLE(AAR SV svcFileManagement ${SRCS_exe}) NGL_TARGET_LINK_LIBRARIES(svcFileManagement Qt5::Core svcCoreClient svcFlmCommon svcFlmServer svcFlmClient ddsconnector nglsettings ProjectConfig LtsCommandLineParser LtsWebSocketServer NGLLogger nglcoreapplication ngltools tcpserver httq Thp2CommonCore ) NGL_INSTALL_TARGET(svcFileManagement) NGL_INSTALL(AAR SV FILES log4cxx_flm.props DESTINATION bin) NGL_ADD_TARGET_LINK(svcFileManagement sFlm) # Uncomment if necessary #ADD_SUBDIRECTORY(UnitTests) ADD_SUBDIRECTORY(ModuleTests)