Files
Pointnet2_PyTorch/CMakeLists.txt
T
2018-01-02 11:30:50 -05:00

26 lines
1.1 KiB
CMake

project(PointNet2)
cmake_minimum_required(VERSION 3.5)
find_package(CUDA REQUIRED)
include_directories("${CMAKE_CURRENT_SOURCE_DIR}/utils/cinclude")
cuda_include_directories("${CMAKE_CURRENT_SOURCE_DIR}/utils/cinclude")
file(GLOB cuda_kernels_src "${CMAKE_CURRENT_SOURCE_DIR}/utils/csrc/*.cu")
cuda_compile(cuda_kernels SHARED ${cuda_kernels_src} OPTIONS -O3)
set(BUILD_CMD python "${CMAKE_CURRENT_SOURCE_DIR}/utils/build_ffi.py")
file(GLOB wrapper_headers "${CMAKE_CURRENT_SOURCE_DIR}/utils/cinclude/*wrapper.h")
file(GLOB wrapper_sources "${CMAKE_CURRENT_SOURCE_DIR}/utils/csrs/*.c")
add_custom_command(OUTPUT "${CMAKE_CURRENT_SOURCE_DIR}/utils/_ext/__ext.so"
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/utils
COMMAND ${BUILD_CMD} --build --objs ${cuda_kernels}
DEPENDS ${cuda_kernels}
DEPENDS ${wrapper_headers}
DEPENDS ${wrapper_sources}
VERBATIM)
add_custom_target(ext ALL
DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/utils/_ext/__ext.so")
set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES "${CMAKE_CURRENT_SOURCE_DIR}/utils/_ext")