#
# $Id$
# $HeadURL$
# $Author$
# Created by Christian Roeskens, NLSE, 2018-03-02


# Make ${Qt6_Gui} optional
if(QT6_GUI_AVAILABLE AND TARGET Qt6::Gui)
  set(Qt6_Gui ${Qt6_Gui})
else()
  set(Qt6_Gui "")
endif()


SET(LtsProjectionWorkstation_SRCS

  lts_projection_workstation.h
  lts_projection_workstation.cpp

  lts_projection_workstation_export.h

  vnc_server_manager.h
  vnc_server_manager.cpp

  logger.cpp
  logger.h

  WebSocket/json_keys.h
  WebSocket/messages.h
  WebSocket/messages.cpp
  WebSocket/message_factory.h
  WebSocket/message_factory.cpp
)

NGL_ADD_LIBRARY2(WS LtsProjectionWorkstation SHARED ${LtsProjectionWorkstation_SRCS})

NGL_TARGET_INCLUDE_DIRECTORIES(LtsProjectionWorkstation
  PUBLIC
    ${CMAKE_CURRENT_SOURCE_DIR}/../
)

if(QT6_GUI_AVAILABLE)
  NGL_TARGET_LINK_LIBRARIES(LtsProjectionWorkstation
    PUBLIC
      Qt6::Core
    PRIVATE
      ${Qt6_Gui}
      NGLLogger
      nglsettings
      LtsWebSocketServer
      LtsSession
      LtsSessionData
  )
endif()

NGL_INSTALL_TARGET(LtsProjectionWorkstation)
