Merge topic 'framework-consumption-during-compilation'

45ac71d8bc Ensure targets which are frameworks can be used freely

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: alcroito <alexandru.croitor@qt.io>
Merge-request: !7121
This commit is contained in:
Brad King
2022-03-30 13:02:02 +00:00
committed by Kitware Robot
6 changed files with 53 additions and 4 deletions
+10 -4
View File
@@ -1555,8 +1555,7 @@ void cmComputeLinkInformation::AddTargetItem(LinkEntry const& entry)
this->AddLibraryFeature("FRAMEWORK");
}
if (cmHasSuffix(entry.Feature, "FRAMEWORK"_s) &&
target->IsFrameworkOnApple() && !this->GlobalGenerator->IsXcode()) {
if (target->IsFrameworkOnApple() && !this->GlobalGenerator->IsXcode()) {
// Add the framework directory and the framework item itself
auto fwItems = this->GlobalGenerator->SplitFrameworkPath(item.Value, true);
if (!fwItems) {
@@ -1571,8 +1570,15 @@ void cmComputeLinkInformation::AddTargetItem(LinkEntry const& entry)
// Add the directory portion to the framework search path.
this->AddFrameworkPath(fwItems->first);
}
this->Items.emplace_back(fwItems->second, ItemIsPath::Yes, target,
this->FindLibraryFeature(entry.Feature));
if (cmHasSuffix(entry.Feature, "FRAMEWORK"_s)) {
this->Items.emplace_back(fwItems->second, ItemIsPath::Yes, target,
this->FindLibraryFeature(entry.Feature));
} else {
this->Items.emplace_back(
item, ItemIsPath::Yes, target,
this->FindLibraryFeature(
entry.Feature == DEFAULT ? "__CMAKE_LINK_LIBRARY" : entry.Feature));
}
} else {
// Now add the full path to the library.
this->Items.emplace_back(