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.
26 lines
948 B
26 lines
948 B
cmake_policy(SET CMP0104 NEW)
|
|
enable_language(CUDA)
|
|
file(TOUCH ${CMAKE_BINARY_DIR}/empty.cmake)
|
|
|
|
add_library(simplecudaobj OBJECT simplelib.cu)
|
|
set_target_properties(simplecudaobj
|
|
PROPERTIES
|
|
POSITION_INDEPENDENT_CODE ON)
|
|
|
|
add_library(simplecudashared SHARED )
|
|
target_link_libraries(simplecudashared PRIVATE simplecudaobj)
|
|
set_target_properties(simplecudaobj simplecudashared
|
|
PROPERTIES
|
|
CUDA_SEPARABLE_COMPILATION ON)
|
|
|
|
add_executable(simplecudaexe main.cu )
|
|
target_link_libraries(simplecudaexe PRIVATE simplecudashared)
|
|
|
|
if(WIN32 AND CMAKE_CUDA_COMPILER_ID STREQUAL "Clang")
|
|
set(generate_output_files_NO_EXE_LIB 1)
|
|
endif()
|
|
include(${CMAKE_CURRENT_LIST_DIR}/Common.cmake)
|
|
generate_output_files(simplecudaexe simplecudashared simplecudaobj)
|
|
|
|
file(APPEND "${CMAKE_BINARY_DIR}/target_files.cmake" "set(GENERATED_FILES [==[${CMAKE_BINARY_DIR}/empty.cmake]==])\n")
|