mirror of
https://github.com/Kitware/CMake.git
synced 2026-04-28 01:49:23 -05:00
Merge topic 'test-cuda-cubin'
81237523b7Tests: Teach CudaOnly.CUBIN to tolerate toolkit not supporting native arch35a3de7ab0Tests: Add missing exit code to CudaOnly.{CUBIN,Fatbin} Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Robert Maynard <robertjmaynard@gmail.com> Merge-request: !8335
This commit is contained in:
@@ -1,9 +1,17 @@
|
||||
cmake_minimum_required(VERSION 3.18)
|
||||
unset(ENV{CMAKE_CUDA_ARCHITECTURES_NATIVE_CLAMP}) # CUBIN needs true native arch
|
||||
project(CudaCUBIN LANGUAGES CUDA)
|
||||
|
||||
|
||||
set(CMAKE_CUDA_ARCHITECTURES all-major)
|
||||
|
||||
# CUBIN needs the true native arch to be supported by the CUDA toolkit.
|
||||
set(unavailable_native_archs "${CMAKE_CUDA_ARCHITECTURES_NATIVE}")
|
||||
list(REMOVE_ITEM unavailable_native_archs ${CMAKE_CUDA_ARCHITECTURES_ALL})
|
||||
if(unavailable_native_archs)
|
||||
add_executable(CudaOnlyCUBIN main_no_native_archs.cu)
|
||||
return()
|
||||
endif()
|
||||
|
||||
add_library(CudaCUBIN OBJECT kernelA.cu kernelB.cu kernelC.cu)
|
||||
set_property(TARGET CudaCUBIN PROPERTY CUDA_CUBIN_COMPILATION ON)
|
||||
set_property(TARGET CudaCUBIN PROPERTY CUDA_ARCHITECTURES native)
|
||||
|
||||
@@ -53,4 +53,6 @@ int main()
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
int main()
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
@@ -53,4 +53,6 @@ int main()
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user