Create INTERPROCEDURAL_OPTIMIZATION build feature

This commit creates target and directory properties to enable the Intel
interprocedural optimization support on Linux.  Enabling it adds the
compiler option '-ipo' and uses 'xiar' to create archives.

See issue #9615.
This commit is contained in:
Brad King
2009-10-02 13:52:13 -04:00
parent 1e48243591
commit c513962701
7 changed files with 46 additions and 3 deletions
@@ -113,6 +113,12 @@ void cmMakefileLibraryTargetGenerator::WriteStaticLibraryRules()
}
linkRuleVar += "_CREATE_STATIC_LIBRARY";
if(this->GetFeatureAsBool("INTERPROCEDURAL_OPTIMIZATION") &&
this->Makefile->GetDefinition((linkRuleVar+"_IPO").c_str()))
{
linkRuleVar += "_IPO";
}
std::string extraFlags;
this->LocalGenerator->AppendFlags
(extraFlags,this->Target->GetProperty("STATIC_LIBRARY_FLAGS"));