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

SET(vwm_SRCS
  vwm_api.cpp
  vwm_api.h
  vwm_building.cpp
  vwm_building.h
  vwm_building_room_geometry.cpp
  vwm_building_room_geometry.h
  vwm_deposition.cpp
  vwm_deposition.h
  vwm_math.cpp
  vwm_math.h
  vwm_state_store.cpp
  vwm_state_store.h
  vwm_types.h
  vwm_xml_reader.cpp
  vwm_xml_reader.h
)

NGL_ADD_LIBRARY2(AAR SV BuildingControlVwm SHARED ${vwm_SRCS})
NGL_TARGET_LINK_LIBRARIES(BuildingControlVwm
  PRIVATE
    ngltools
    Qt5::Xml
  PUBLIC
    Qt5::Core
    Qt5::Gui
    LtsUtilsCoreHeaderOnly
    BuildingControlCommon
)
################################
### Test
################################
NGL_ADD_EXECUTABLE(AAR SV BuildingControlTestVwm test_read_xml.cpp test_read_xml.h)
NGL_TARGET_LINK_LIBRARIES(BuildingControlTestVwm
  NGLLogger
  ngltools
  LtsUtilsCoreHeaderOnly
  Qt5::Xml
  Qt5::Core
  BuildingControlCommon
  BuildingControlVwm
  nglcoreapplication
  LtsCoordTrans
)
NGL_ADD_EXECUTABLE(AAR SV BuildingControlTestVwmXml test_vwm_xml.cpp)
NGL_TARGET_LINK_LIBRARIES(BuildingControlTestVwmXml
  LtsUtilsCoreHeaderOnly
  Qt5::Xml
  Qt5::Core
  Qt5::Gui
  BuildingControlVwm
  BuildingControlCommon
  nglcoreapplication
)

IF(BUILD_TESTING AND TARGET BuildingControlVwm)
  SET(test_SRCS
    vwm_math_unit_test.cpp
    vwm_math_unit_test.h
  )
  ADD_EXECUTABLE(bld_vwm_math_unit_test ${test_SRCS})
  TARGET_LINK_LIBRARIES(bld_vwm_math_unit_test
    Qt5::Gui
    Qt5::Core
    Qt5::Test
    BuildingControlVwm
    BuildingControlCommon
    nglcoreapplication
  )
  ADD_TEST(NAME bld_vwm_math_unit_test COMMAND $<TARGET_FILE:bld_vwm_math_unit_test>)
ENDIF()

