cmake_minimum_required(VERSION 3.14) find_package(Qt5 REQUIRED COMPONENTS Core Gui) if(NOT TARGET VrCommon) add_library(VrCommon INTERFACE) target_include_directories(VrCommon INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}/../VrCommon/Inc ) endif() if(NOT TARGET VrUtils) add_subdirectory( "${CMAKE_CURRENT_SOURCE_DIR}/../VrUtils" "${CMAKE_CURRENT_BINARY_DIR}/VrUtils" ) endif() add_library(CloudUtils STATIC Src/LaserDataLoader.cpp Src/PointCloudImageUtils.cpp Inc/LaserDataLoader.h Inc/PointCloudImageUtils.h ) set_target_properties(CloudUtils PROPERTIES CXX_STANDARD 11 CXX_STANDARD_REQUIRED ON ) target_include_directories(CloudUtils PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/Inc ) # When CamTool is built with WoodSDK, use its VZ compatibility types first. # This keeps LaserDataLoader's SVzNL* signatures identical to the application # translation units, where WoodSDK maps them to the public SWD* structures. if(TARGET WoodSDK) target_include_directories(CloudUtils BEFORE PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/../../App/woodcam-sdk/WoodSDK/VzToWDInc" ) endif() target_link_libraries(CloudUtils PUBLIC VrCommon Qt5::Core Qt5::Gui PRIVATE VrUtils ) if(MSVC) target_compile_options(CloudUtils PRIVATE /utf-8) endif()