CUDA: Fix boolean interpretation of CUDA_SEPARABLE_COMPILATION

If the property is explicitly set to a non-true value we should
not treat it as true.
This commit is contained in:
Brad King committed 2017-02-20 17:05:35 -05:00
1 parent 6cbad490c2
commit 08fa0b4595
2 files changed
+4 -2

No files matched your search

+2 -1
View File
@@ -590,7 +590,8 @@ void cmMakefileTargetGenerator::WriteObjectBuildFile(
std::vector<std::string> compileCommands;
if (lang == "CUDA") {
std::string cmdVar;
if (this->GeneratorTarget->GetProperty("CUDA_SEPARABLE_COMPILATION")) {
if (this->GeneratorTarget->GetPropertyAsBool(
"CUDA_SEPARABLE_COMPILATION")) {
cmdVar = std::string("CMAKE_CUDA_COMPILE_SEPARABLE_COMPILATION");
} else {
cmdVar = std::string("CMAKE_CUDA_COMPILE_WHOLE_COMPILATION");
+2 -1
View File
@@ -580,7 +580,8 @@ void cmNinjaTargetGenerator::WriteCompileRule(const std::string& lang)
std::vector<std::string> compileCmds;
if (lang == "CUDA") {
std::string cmdVar;
if (this->GeneratorTarget->GetProperty("CUDA_SEPARABLE_COMPILATION")) {
if (this->GeneratorTarget->GetPropertyAsBool(
"CUDA_SEPARABLE_COMPILATION")) {
cmdVar = std::string("CMAKE_CUDA_COMPILE_SEPARABLE_COMPILATION");
} else {
cmdVar = std::string("CMAKE_CUDA_COMPILE_WHOLE_COMPILATION");