CUDA: Support all and all-major on Visual Studio

The Visual Studio integration's CodeGeneration option only knows how to
generate a -gencode flag, which doesn't recognize all. Add a special case to
pass these two as regular additional flags.
This commit is contained in:
Raul Tambre
2021-12-28 14:29:52 +02:00
parent 5f667d783a
commit d19273bc7b

View File

@@ -182,6 +182,10 @@ void cmVisualStudioGeneratorOptions::FixCudaCodeGeneration()
// First entries for the -arch=<arch> [-code=<code>,...] pair.
if (!arch.empty()) {
std::string arch_name = arch[0];
if (arch_name == "all" || arch_name == "all-major") {
AppendFlagString("AdditionalOptions", "-arch=" + arch_name);
return;
}
std::vector<std::string> codes;
if (!code.empty()) {
codes = cmTokenize(code[0], ",");