-
Notifications
You must be signed in to change notification settings - Fork 24
/
Copy pathCMakeLists.txt
55 lines (43 loc) · 1.35 KB
/
CMakeLists.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
cmake_minimum_required(VERSION 3.27)
project(RadFoam VERSION 1.0.0)
cmake_policy(SET CMP0060 NEW)
enable_language(CUDA)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CUDA_STANDARD 17)
set(CMAKE_C_EXTENSIONS OFF)
set(CMAKE_CXX_EXTENSIONS OFF)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
set(GPU_DEBUG
ON
CACHE BOOL "Enable GPU debug features")
add_definitions(-DGPU_DEBUG=$<BOOL:${GPU_DEBUG}>)
if(NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE
"Release"
CACHE STRING "Build type")
endif()
set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake" ${CMAKE_MODULE_PATH})
list(APPEND CMAKE_PREFIX_PATH "${CMAKE_SOURCE_DIR}/external"
"${CMAKE_SOURCE_DIR}/external/submodules")
find_package(
Python3
COMPONENTS Interpreter Development.Module
REQUIRED)
find_package(pybind11 REQUIRED)
if(NOT Torch_DIR)
set(Torch_DIR ${Python3_SITELIB}/torch/share/cmake/Torch)
endif()
find_package(Torch REQUIRED)
find_library(TORCH_PYTHON_LIBRARY torch_python PATH
"${TORCH_INSTALL_PREFIX}/lib")
add_subdirectory(external)
include_directories(${RADFOAM_EXTERNAL_INCLUDES})
if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
set(CMAKE_INSTALL_PREFIX
"${CMAKE_SOURCE_DIR}/radfoam"
CACHE PATH "..." FORCE)
endif()
set(RADFOAM_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX})
add_subdirectory(src)
add_subdirectory(torch_bindings)