mirror of https://github.com/wpkong/Octree.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
55 lines
1.9 KiB
55 lines
1.9 KiB
cmake_minimum_required(VERSION 3.20)
|
|
project(Octree)
|
|
|
|
set(CMAKE_CXX_STANDARD 17)
|
|
|
|
option(Octree_BUILD_TEST "Build test projects" ON)
|
|
|
|
include_directories(
|
|
/usr/local/include
|
|
${PROJECT_SOURCE_DIR}/include
|
|
)
|
|
link_directories(/usr/local/lib)
|
|
|
|
find_package(LIBIGL REQUIRED QUIET)
|
|
find_package(Boost COMPONENTS filesystem log REQUIRED)
|
|
find_package(Eigen3 3.3 REQUIRED NO_MODULE)
|
|
|
|
|
|
file(GLOB_RECURSE headers
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/Octree/*.h
|
|
)
|
|
file(GLOB_RECURSE sources
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/*.h)
|
|
|
|
add_library(Octree SHARED ${headers} ${sources})
|
|
target_link_libraries(Octree igl::core ${Boost_LIBRARIES} Eigen3::Eigen pMesh)
|
|
target_include_directories(Octree PUBLIC ${PROJECT_SOURCE_DIR}/include)
|
|
|
|
|
|
# --------------------- TEST --------------------
|
|
if(Octree_BUILD_TEST)
|
|
set(TEST_DATA_BASE_PATH ${PROJECT_SOURCE_DIR}/data)
|
|
endif()
|
|
|
|
if(Octree_BUILD_TEST)
|
|
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/tests/octree_test)
|
|
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/tests/solid_octree_test)
|
|
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/tests/sdf_test)
|
|
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/tests/udf_test)
|
|
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/tests/search_assign_test)
|
|
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/tests/aabb_tree_test)
|
|
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/tests/2d_broken_test)
|
|
endif()
|
|
|
|
enable_testing()
|
|
if(Octree_BUILD_TEST)
|
|
add_test(NAME octree_test COMMAND $<TARGET_FILE:octree_test>)
|
|
add_test(NAME solid_octree_test COMMAND $<TARGET_FILE:solid_octree_test>)
|
|
add_test(NAME sdf_test COMMAND $<TARGET_FILE:sdf_test>)
|
|
add_test(NAME udf_test COMMAND $<TARGET_FILE:udf_test>)
|
|
add_test(NAME search_assign_test COMMAND $<TARGET_FILE:search_assign_test>)
|
|
add_test(NAME aabb_tree_test COMMAND $<TARGET_FILE:aabb_tree_test>)
|
|
add_test(NAME 2d_broken_test COMMAND $<TARGET_FILE:2d_broken_test>)
|
|
endif()
|