|
|
|
@ -203,25 +203,26 @@ list(APPEND CUDA_NVCC_FLAGS "-w")
|
|
|
|
|
list(APPEND CUDA_NVCC_FLAGS "--expt-relaxed-constexpr")
|
|
|
|
|
|
|
|
|
|
if (NOT WIN32)
|
|
|
|
|
if(CMAKE_BUILD_TYPE STREQUAL "Debug")
|
|
|
|
|
list(APPEND CUDA_NVCC_FLAGS ${CMAKE_CXX_FLAGS_DEBUG})
|
|
|
|
|
elseif(CMAKE_BUILD_TYPE STREQUAL "Release")
|
|
|
|
|
list(APPEND CUDA_NVCC_FLAGS ${CMAKE_CXX_FLAGS_RELEASE})
|
|
|
|
|
elseif(CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo")
|
|
|
|
|
list(APPEND CUDA_NVCC_FLAGS ${CMAKE_CXX_FLAGS_RELWITHDEBINFO})
|
|
|
|
|
elseif(CMAKE_BUILD_TYPE STREQUAL "MinSizeRel")
|
|
|
|
|
# nvcc 9 does not support -Os. Use Release flags instead
|
|
|
|
|
list(APPEND CUDA_NVCC_FLAGS ${CMAKE_CXX_FLAGS_RELEASE})
|
|
|
|
|
endif()
|
|
|
|
|
if(CMAKE_BUILD_TYPE STREQUAL "Debug")
|
|
|
|
|
list(APPEND CUDA_NVCC_FLAGS ${CMAKE_CXX_FLAGS_DEBUG})
|
|
|
|
|
elseif(CMAKE_BUILD_TYPE STREQUAL "Release")
|
|
|
|
|
list(APPEND CUDA_NVCC_FLAGS ${CMAKE_CXX_FLAGS_RELEASE})
|
|
|
|
|
elseif(CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo")
|
|
|
|
|
list(APPEND CUDA_NVCC_FLAGS ${CMAKE_CXX_FLAGS_RELWITHDEBINFO})
|
|
|
|
|
elseif(CMAKE_BUILD_TYPE STREQUAL "MinSizeRel")
|
|
|
|
|
# nvcc 9 does not support -Os. Use Release flags instead
|
|
|
|
|
list(APPEND CUDA_NVCC_FLAGS ${CMAKE_CXX_FLAGS_RELEASE})
|
|
|
|
|
endif()
|
|
|
|
|
else(NOT WIN32)
|
|
|
|
|
list(APPEND CUDA_NVCC_FLAGS "--compiler-options;/bigobj")
|
|
|
|
|
if(CMAKE_BUILD_TYPE STREQUAL "Debug")
|
|
|
|
|
list(APPEND CUDA_NVCC_FLAGS "-g -G")
|
|
|
|
|
# match the cl's _ITERATOR_DEBUG_LEVEL
|
|
|
|
|
list(APPEND CUDA_NVCC_FLAGS "-D_DEBUG")
|
|
|
|
|
elseif(CMAKE_BUILD_TYPE STREQUAL "Release")
|
|
|
|
|
list(APPEND CUDA_NVCC_FLAGS "-O3 -DNDEBUG")
|
|
|
|
|
else()
|
|
|
|
|
list(APPEND CUDA_NVCC_FLAGS "-Xcompiler \"/wd 4819\"")
|
|
|
|
|
list(APPEND CUDA_NVCC_FLAGS "--compiler-options;/bigobj")
|
|
|
|
|
if(CMAKE_BUILD_TYPE STREQUAL "Debug")
|
|
|
|
|
list(APPEND CUDA_NVCC_FLAGS "-g -G")
|
|
|
|
|
# match the cl's _ITERATOR_DEBUG_LEVEL
|
|
|
|
|
list(APPEND CUDA_NVCC_FLAGS "-D_DEBUG")
|
|
|
|
|
elseif(CMAKE_BUILD_TYPE STREQUAL "Release")
|
|
|
|
|
list(APPEND CUDA_NVCC_FLAGS "-O3 -DNDEBUG")
|
|
|
|
|
else()
|
|
|
|
|
message(FATAL "Windows only support Release or Debug build now. Please set visual studio build type to Release/Debug, x64 build.")
|
|
|
|
|
endif()
|
|
|
|
|
endif(NOT WIN32)
|
|
|
|
|