diff options
Diffstat (limited to 'Source')
-rw-r--r-- | Source/cmLocalGenerator.cxx | 11 | ||||
-rw-r--r-- | Source/cmLocalGenerator.h | 4 |
2 files changed, 9 insertions, 6 deletions
diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx index 6472031..63c8aa8 100644 --- a/Source/cmLocalGenerator.cxx +++ b/Source/cmLocalGenerator.cxx @@ -2770,10 +2770,10 @@ void cmLocalGenerator::AddPchDependencies(cmGeneratorTarget* target) } if (editAndContinueDebugInfo || msvc2008OrLess) { - this->CopyPchCompilePdb(config, target, *ReuseFrom, + this->CopyPchCompilePdb(config, lang, target, *ReuseFrom, reuseTarget, { ".pdb", ".idb" }); } else if (programDatabaseDebugInfo) { - this->CopyPchCompilePdb(config, target, *ReuseFrom, + this->CopyPchCompilePdb(config, lang, target, *ReuseFrom, reuseTarget, { ".pdb" }); } } @@ -2830,9 +2830,9 @@ void cmLocalGenerator::AddPchDependencies(cmGeneratorTarget* target) } void cmLocalGenerator::CopyPchCompilePdb( - const std::string& config, cmGeneratorTarget* target, - const std::string& ReuseFrom, cmGeneratorTarget* reuseTarget, - const std::vector<std::string>& extensions) + const std::string& config, const std::string& language, + cmGeneratorTarget* target, const std::string& ReuseFrom, + cmGeneratorTarget* reuseTarget, const std::vector<std::string>& extensions) { const std::string pdb_prefix = this->GetGlobalGenerator()->IsMultiConfig() ? cmStrCat(config, "/") : ""; @@ -2916,6 +2916,7 @@ void cmLocalGenerator::CopyPchCompilePdb( cc->SetCommandLines(commandLines); cc->SetComment(no_message); cc->SetStdPipesUTF8(true); + cc->AppendDepends({ reuseTarget->GetPchFile(config, language) }); if (this->GetGlobalGenerator()->IsVisualStudio()) { cc->SetByproducts(outputs); diff --git a/Source/cmLocalGenerator.h b/Source/cmLocalGenerator.h index eddc033..a920cfe 100644 --- a/Source/cmLocalGenerator.h +++ b/Source/cmLocalGenerator.h @@ -649,7 +649,9 @@ private: bool AllAppleArchSysrootsAreTheSame(const std::vector<std::string>& archs, cmValue sysroot); - void CopyPchCompilePdb(const std::string& config, cmGeneratorTarget* target, + void CopyPchCompilePdb(const std::string& config, + const std::string& language, + cmGeneratorTarget* target, const std::string& ReuseFrom, cmGeneratorTarget* reuseTarget, std::vector<std::string> const& extensions); |