Commit d9fd32b3 authored by Brad King's avatar Brad King
Browse files

cmVisualStudio10TargetGenerator: Refactor per-source PCH logic

De-duplicate the link language lookup.
parent 48410610
......@@ -2413,16 +2413,16 @@ void cmVisualStudio10TargetGenerator::OutputSourceSpecificFlags(
// 1. We have SKIP_PRECOMPILE_HEADERS == true
// 2. We are creating the pre-compiled header
// 3. We are a different language than the linker language AND pch is
// enabled
const std::string pchSource =
// enabled.
std::string const& linkLanguage =
this->GeneratorTarget->GetLinkerLanguage(config);
std::string const& pchSource =
this->GeneratorTarget->GetPchSource(config, lang);
const bool skipPCH =
pchSource.empty() || sf.GetPropertyAsBool("SKIP_PRECOMPILE_HEADERS");
const bool makePCH = (sf.GetFullPath() == pchSource);
const bool useSharedPCH =
!skipPCH && (lang == this->GeneratorTarget->GetLinkerLanguage(config));
const bool useDifferentLangPCH =
!skipPCH && (lang != this->GeneratorTarget->GetLinkerLanguage(config));
const bool useSharedPCH = !skipPCH && (lang == linkLanguage);
const bool useDifferentLangPCH = !skipPCH && (lang != linkLanguage);
const bool needsPCHFlags =
(makePCH || useSharedPCH || useDifferentLangPCH);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment