60 lines
2.0 KiB
CMake
60 lines
2.0 KiB
CMake
add_library(device_manager STATIC
|
|
src/device_factory.cpp
|
|
src/device_safety_adapters.cpp
|
|
src/device_manager.cpp
|
|
)
|
|
|
|
target_include_directories(device_manager PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
|
|
|
|
target_link_libraries(device_manager PRIVATE
|
|
cmvr_es::proto
|
|
cmvr_es::safety_manager
|
|
cmvr_es::device::camera
|
|
cmvr_es::device::agv
|
|
cmvr_es::device::speaker
|
|
cmvr_es::device::microphone
|
|
cmvr_es::device::dexhand
|
|
cmvr::device::head_esp32
|
|
cmvr_es::device::motor_manager
|
|
cmvr_es::device::arm
|
|
cmvr_es::mujoco_viewer
|
|
osqp
|
|
# cmvr_es::device::aubo_robot
|
|
)
|
|
|
|
add_library(cmvr_es::device_manager ALIAS device_manager)
|
|
install(TARGETS device_manager LIBRARY DESTINATION lib)
|
|
|
|
if(BUILD_TESTING)
|
|
add_executable(device_manager_snapshot_test
|
|
tests/device_manager_snapshot_test.cpp
|
|
)
|
|
target_link_libraries(device_manager_snapshot_test PRIVATE
|
|
cmvr_es::device_manager
|
|
)
|
|
add_test(
|
|
NAME device_manager_snapshot_test
|
|
COMMAND device_manager_snapshot_test
|
|
)
|
|
set_tests_properties(device_manager_snapshot_test PROPERTIES TIMEOUT 20)
|
|
if(UNIX AND NOT APPLE)
|
|
get_property(_device_manager_test_library_dirs
|
|
DIRECTORY PROPERTY LINK_DIRECTORIES)
|
|
list(PREPEND _device_manager_test_library_dirs
|
|
"${CMAKE_BINARY_DIR}/cmvr_compiler_runtime")
|
|
list(JOIN _device_manager_test_library_dirs ":"
|
|
_device_manager_test_library_path)
|
|
set(_device_manager_snapshot_test_environment
|
|
"LD_LIBRARY_PATH=${_device_manager_test_library_path}")
|
|
if(CMVR_TEST_SYSTEM_LIBSTDCXX)
|
|
list(APPEND _device_manager_snapshot_test_environment
|
|
"LD_PRELOAD=${CMVR_TEST_SYSTEM_LIBSTDCXX}")
|
|
endif()
|
|
set_tests_properties(device_manager_snapshot_test PROPERTIES
|
|
ENVIRONMENT
|
|
"${_device_manager_snapshot_test_environment}"
|
|
)
|
|
endif()
|
|
|
|
endif()
|