cmake_minimum_required(VERSION 3.21)
project(NurbsEvaluator LANGUAGES CXX CUDA)

set(CMAKE_CUDA_STANDARD 14)

add_executable(NurbsEvaluator main.cpp NurbsEvaluator.cu NurbsEvaluator.cuh utils.cpp utils.h NurbsBasis.cu NurbsBasis.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
include_directories("$ENV{CUDA_PATH}/include")

set_target_properties(NurbsEvaluator PROPERTIES
        CUDA_SEPARABLE_COMPILATION ON)