diff options
author | Brad King <brad.king@kitware.com> | 2015-07-08 18:49:04 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2015-07-09 13:50:06 (GMT) |
commit | beee79373222ea01008cd137dd9a3ffa59cbe347 (patch) | |
tree | e08f7d3f05b9ebeea6a945eead2eeb47be2480c6 /Source/cmCommonTargetGenerator.cxx | |
parent | abfa5f2d1fac0a55b430e078884ad1ae252d20cd (diff) | |
download | CMake-beee79373222ea01008cd137dd9a3ffa59cbe347.zip CMake-beee79373222ea01008cd137dd9a3ffa59cbe347.tar.gz CMake-beee79373222ea01008cd137dd9a3ffa59cbe347.tar.bz2 |
cmCommonTargetGenerator: Adopt GetFeature and friends
De-duplicate the GetFeature, GetFeatureAsBool, and AddFeatureFlags
members from the Makefile and Ninja target generators.
Diffstat (limited to 'Source/cmCommonTargetGenerator.cxx')
-rw-r--r-- | Source/cmCommonTargetGenerator.cxx | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/Source/cmCommonTargetGenerator.cxx b/Source/cmCommonTargetGenerator.cxx index 3edeff3..34982b0 100644 --- a/Source/cmCommonTargetGenerator.cxx +++ b/Source/cmCommonTargetGenerator.cxx @@ -35,3 +35,29 @@ std::string const& cmCommonTargetGenerator::GetConfigName() const { return this->ConfigName; } + +//---------------------------------------------------------------------------- +const char* cmCommonTargetGenerator::GetFeature(const std::string& feature) +{ + return this->GeneratorTarget->GetFeature(feature, this->ConfigName); +} + +//---------------------------------------------------------------------------- +bool cmCommonTargetGenerator::GetFeatureAsBool(const std::string& feature) +{ + return this->GeneratorTarget->GetFeatureAsBool(feature, this->ConfigName); +} + +//---------------------------------------------------------------------------- +void cmCommonTargetGenerator::AddFeatureFlags( + std::string& flags, const std::string& lang + ) +{ + // Add language-specific flags. + this->LocalGenerator->AddLanguageFlags(flags, lang, this->ConfigName); + + if(this->GetFeatureAsBool("INTERPROCEDURAL_OPTIMIZATION")) + { + this->LocalGenerator->AppendFeatureOptions(flags, lang, "IPO"); + } +} |