Utils/CloudUtils/CMakeLists.txt

56 lines
1.3 KiB
CMake
Raw Permalink Normal View History

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()