#
# $Id$
# $HeadURL$
# $Author$
#

# Uncomment if necessary
#ADD_SUBDIRECTORY(UnitTests)
#ADD_SUBDIRECTORY(ModuleTests)

SET(xml_FILE wms_service.xml)

# --- Executable proxyWarehouseManagement (pWMS) -------------------------------------------------
#
SET(SRCS_exe
  main.cpp
  main_handler.cpp
  main_handler.h
  data_manager.cpp
  data_manager.h
  dds_handler.cpp
  dds_handler.h
  dds_handler_exercise.cpp
  dds_handler_exercise.h
  exercises_handler.cpp
  exercises_handler.h
  exercise_participant_handler.cpp
  exercise_participant_handler.h
  interface_wms2ecc_impl.cpp
  interface_wms2ecc_impl.h
  logger.cpp
  logger.h
  settings.cpp
  settings.h
  ${xml_FILE}
)

# Generate wms.sql, wms.xml
CODEGEN_SQL(SRCS_exe ${xml_FILE})
# make sure xml file is properly installed
CODEGEN_HANDLE_SVC_XML(SRCS_exe ${xml_FILE})

NGL_ADD_SVC_ICON(SRCS_exe)
NGL_ADD_EXECUTABLE(AAR SV svcWarehouseManagement ${SRCS_exe})
NGL_TARGET_LINK_LIBRARIES(svcWarehouseManagement
  Qt5::Core
  Qt5::Network
  svcCoreClient
  svcExmClient  # Read exercise topics
  svcPpmClient
  ddsconnector  
  ddsQoS
  ddsdts
  ProjectConfig
  LtsCommandLineParser
  LtsWebSocketServer
  NGLLogger
  nglcoreapplication
  nglsettings
  ngltools
  Qt5::WebSockets
  wms_json_ds
)
NGL_INSTALL_TARGET(svcWarehouseManagement)
NGL_INSTALL(AAR SV FILES log4cxx_wms.props DESTINATION bin)
NGL_ADD_TARGET_LINK(svcWarehouseManagement pWMS)

# TODO: install link in binary, too
