diff options
author | Justin Goshi <jgoshi@microsoft.com> | 2020-06-11 20:06:02 (GMT) |
---|---|---|
committer | Justin Goshi <jgoshi@microsoft.com> | 2020-06-16 23:32:34 (GMT) |
commit | 742ff97f809410055b22405a6b5728e72c458683 (patch) | |
tree | 3587f801e2f0801ea42b45ba3a7bdc0624cf6d5c /Source/cmGlobalGenerator.cxx | |
parent | 0892c798f795c6072ce882552384187db86797f0 (diff) | |
download | CMake-742ff97f809410055b22405a6b5728e72c458683.zip CMake-742ff97f809410055b22405a6b5728e72c458683.tar.gz CMake-742ff97f809410055b22405a6b5728e72c458683.tar.bz2 |
Refactor language standard computation
Instead of mutating the configure-time cmTarget's properties at generate
time, compute and store it in a cmGeneratorTarget field.
Diffstat (limited to 'Source/cmGlobalGenerator.cxx')
-rw-r--r-- | Source/cmGlobalGenerator.cxx | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/Source/cmGlobalGenerator.cxx b/Source/cmGlobalGenerator.cxx index 1ed5e8b..4b4ffda 100644 --- a/Source/cmGlobalGenerator.cxx +++ b/Source/cmGlobalGenerator.cxx @@ -1442,12 +1442,10 @@ bool cmGlobalGenerator::Compute() localGen->AddHelperCommands(); } - // Finalize the set of compile features for each target. - // FIXME: This turns into calls to cmMakefile::AddRequiredTargetFeature - // which actually modifies the <lang>_STANDARD target property - // on the original cmTarget instance. It accumulates features - // across all configurations. Some refactoring is needed to - // compute a per-config resulta purely during generation. + // Perform up-front computation in order to handle errors (such as unknown + // features) at this point. While processing the compile features we also + // calculate and cache the language standard required by the compile + // features. for (const auto& localGen : this->LocalGenerators) { if (!localGen->ComputeTargetCompileFeatures()) { return false; |