summaryrefslogtreecommitdiffstats
path: root/Source/cmMakefileLibraryTargetGenerator.cxx
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2017-06-14 14:12:48 (GMT)
committerBrad King <brad.king@kitware.com>2017-06-14 14:36:57 (GMT)
commitba247ccabab05c0aad4fe7f56dd020bfa8ff4583 (patch)
tree259898e83b41d70b454287d01e88923ecb1bbd4e /Source/cmMakefileLibraryTargetGenerator.cxx
parentd025faf436c86ee9cc033fbb324a9bc2c18757fa (diff)
downloadCMake-ba247ccabab05c0aad4fe7f56dd020bfa8ff4583.zip
CMake-ba247ccabab05c0aad4fe7f56dd020bfa8ff4583.tar.gz
CMake-ba247ccabab05c0aad4fe7f56dd020bfa8ff4583.tar.bz2
IPO: Consider support for each language separately
We only define `INTERPROCEDURAL_OPTIMIZATION` behavior for C, CXX, and Fortran languages. Do not try to enable support for other languages. Furthermore, each language builds with a different compiler, so check for support by CMake and the compiler for each language independently. Fixes: #16944
Diffstat (limited to 'Source/cmMakefileLibraryTargetGenerator.cxx')
-rw-r--r--Source/cmMakefileLibraryTargetGenerator.cxx6
1 files changed, 3 insertions, 3 deletions
diff --git a/Source/cmMakefileLibraryTargetGenerator.cxx b/Source/cmMakefileLibraryTargetGenerator.cxx
index 2b37b4d..3d1594b 100644
--- a/Source/cmMakefileLibraryTargetGenerator.cxx
+++ b/Source/cmMakefileLibraryTargetGenerator.cxx
@@ -699,7 +699,7 @@ void cmMakefileLibraryTargetGenerator::WriteLibraryRules(
arCreateVar += "_ARCHIVE_CREATE";
arCreateVar = this->GeneratorTarget->GetFeatureSpecificLinkRuleVariable(
- arCreateVar, this->ConfigName);
+ arCreateVar, linkLanguage, this->ConfigName);
if (const char* rule = this->Makefile->GetDefinition(arCreateVar)) {
cmSystemTools::ExpandListArgument(rule, archiveCreateCommands);
@@ -709,7 +709,7 @@ void cmMakefileLibraryTargetGenerator::WriteLibraryRules(
arAppendVar += "_ARCHIVE_APPEND";
arAppendVar = this->GeneratorTarget->GetFeatureSpecificLinkRuleVariable(
- arAppendVar, this->ConfigName);
+ arAppendVar, linkLanguage, this->ConfigName);
if (const char* rule = this->Makefile->GetDefinition(arAppendVar)) {
cmSystemTools::ExpandListArgument(rule, archiveAppendCommands);
@@ -719,7 +719,7 @@ void cmMakefileLibraryTargetGenerator::WriteLibraryRules(
arFinishVar += "_ARCHIVE_FINISH";
arFinishVar = this->GeneratorTarget->GetFeatureSpecificLinkRuleVariable(
- arFinishVar, this->ConfigName);
+ arFinishVar, linkLanguage, this->ConfigName);
if (const char* rule = this->Makefile->GetDefinition(arFinishVar)) {
cmSystemTools::ExpandListArgument(rule, archiveFinishCommands);