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.
41 lines
1.5 KiB
41 lines
1.5 KiB
cmake_minimum_required(VERSION 3.21)
|
|
project(NurbsEvaluator LANGUAGES CXX CUDA)
|
|
|
|
set(CMAKE_CUDA_STANDARD 14)
|
|
|
|
add_executable(NurbsEvaluator src/main.cpp
|
|
src/utils.cpp include/utils.h
|
|
src/device/Nurbs/nurbs_common.cu include/device/Nurbs/nurbs_common.cuh
|
|
src/device/device_utils.cu include/device/device_utils.cuh
|
|
src/device/Nurbs/nurbs_surface.cu include/device/Nurbs/nurbs_surface.cuh
|
|
src/device/Nurbs/nurbs_curve.cu include/device/Nurbs/nurbs_curve.cuh
|
|
src/device/aabb.cu include/device/aabb.cuh
|
|
src/device/vec.cu include/device/vec.cuh
|
|
src/device/Nurbs/bvh.cu include/device/Nurbs/bvh.cuh
|
|
)
|
|
|
|
#add_compile_options("$<$<C_COMPILER_ID:MSVC>:/utf-8>")
|
|
#add_compile_options("$<$<CXX_COMPILER_ID:MSVC>:/utf-8>")
|
|
|
|
# 指定静态库位置
|
|
#set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
|
|
#生成静态库
|
|
#add_library(NurbsEvaluator NurbsEvaluator.cu NurbsEvaluator.cuh utils.cpp utils.h)
|
|
|
|
# 引用系统环境变量CUDA_PATH
|
|
# linux
|
|
#include_directories("/usr/local/device-11.8/targets/x86_64-linux/include")
|
|
# windows
|
|
include_directories("$ENV{CUDA_PATH}/include")
|
|
|
|
#MESSAGE("CUDA PATH::: $ENV{CUDA_PATH}")
|
|
#MESSAGE("CUDA PATH::: $ENV{LD_LIBRARY_PATH}")
|
|
#MESSAGE("CUDA PATH::: $ENV{CPATH}")
|
|
|
|
set_target_properties(NurbsEvaluator PROPERTIES
|
|
CUDA_SEPARABLE_COMPILATION ON)
|
|
|
|
|
|
if(NOT DEFINED CMAKE_CUDA_ARCHITECTURES)
|
|
set(CMAKE_CUDA_ARCHITECTURES 70 75 80)
|
|
endif(NOT DEFINED CMAKE_CUDA_ARCHITECTURES)
|