pcl_wrapper/CMakeLists.txt

38 lines
1.1 KiB
CMake

cmake_minimum_required(VERSION 3.10)
project(pcl_wrapper)
set(CMAKE_CXX_STANDARD 17)
# 获取 libomp 安装路径
execute_process(
COMMAND brew --prefix libomp
OUTPUT_VARIABLE LIBOMP_PREFIX
OUTPUT_STRIP_TRAILING_WHITESPACE
)
# 查找 PCL
find_package(PCL REQUIRED)
# 添加 include 路径
include_directories(include)
include_directories(include/pcl_wrapper)
include_directories(${PCL_INCLUDE_DIRS} "${LIBOMP_PREFIX}/include")
add_definitions(${PCL_DEFINITIONS})
# 添加库
add_library(pclwrapper SHARED wrapper.cpp
include/pcl_wrapper/point_types.hpp
include/pcl_wrapper/filter.hpp
include/pcl_wrapper/kdtree.hpp
include/pcl_wrapper/io.hpp
include/pcl_wrapper/pcl_wrapper_api.hpp
src/filter.cpp
src/kdtree.cpp
src/io.cpp
)
# 指定 OpenMP 和 PCL 库
target_compile_options(pclwrapper PRIVATE -Xpreprocessor -fopenmp)
target_link_libraries(pclwrapper PRIVATE ${PCL_LIBRARIES} "${LIBOMP_PREFIX}/lib/libomp.dylib")
target_include_directories(pclwrapper PRIVATE "${LIBOMP_PREFIX}/include")