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

SET(bsm_SRCS
  bsm_api.cpp
  bsm_api.h
  bsm_socket.cpp
  bsm_socket.h
  bsm_socket_handler.cpp
  bsm_socket_handler.h
  bsm_telegrams_alive.h
  bsm_telegrams_base.cpp
  bsm_telegrams_base.h
  bsm_telegrams_bit_timeout_report.cpp
  bsm_telegrams_bit_timeout_report.h
  bsm_telegrams_bit_timeout_request.h
  bsm_telegrams_chopped_signal_flash.cpp
  bsm_telegrams_chopped_signal_flash.h
  bsm_telegrams_configuration_report.cpp
  bsm_telegrams_configuration_report.h
  bsm_telegrams_configuration_request.h
  bsm_telegrams_configuration_setup.cpp
  bsm_telegrams_configuration_setup.h
  bsm_telegrams_direct_fire.cpp
  bsm_telegrams_direct_fire.h
  bsm_telegrams_observer_controller.cpp
  bsm_telegrams_observer_controller.h
  bsm_telegrams_sw_version_report.cpp
  bsm_telegrams_sw_version_report.h
  bsm_telegrams_sw_version_request.h
  bsm_telegrams_technical_status.cpp
  bsm_telegrams_technical_status.h
  bsm_telegrams_technical_status_request.h
  bsm_types.h
)

NGL_ADD_LIBRARY2(AAR SV BuildingControlBsm SHARED ${bsm_SRCS})
NGL_TARGET_LINK_LIBRARIES(BuildingControlBsm
  PRIVATE
    NGLLogger
  PUBLIC
    Qt6::Core
    Qt6::Network
    BuildingControlCommon
    svcTabCommon
)
NGL_TARGET_INCLUDE_DIRECTORIES(BuildingControlBsm
  PRIVATE
    ${CMAKE_CURRENT_SOURCE_DIR}/../..
)

NGL_ADD_EXECUTABLE(AAR SV BuildingControlTestBsm bsm_test_main.cpp)
NGL_TARGET_LINK_LIBRARIES(BuildingControlTestBsm
  BuildingControlBsm
  nglcoreapplication
)
add_test(NAME bld_bsm_test COMMAND $<TARGET_FILE:BuildingControlTestBsm>)
