summaryrefslogtreecommitdiffstats
path: root/Source/cmNinjaNormalTargetGenerator.cxx
diff options
context:
space:
mode:
authorAlexandru Croitor <alexandru.croitor@qt.io>2020-01-27 10:23:13 (GMT)
committerAlexandru Croitor <alexandru.croitor@qt.io>2020-03-04 13:30:54 (GMT)
commitad3f69c86eb27abd16d2a8534a7b90d59c0d74ed (patch)
treee1f0f070bbfaeb14c923f4fbb3cac503f3154111 /Source/cmNinjaNormalTargetGenerator.cxx
parentd016637eefd7ebd6745adcd36bbfad7da67529ef (diff)
downloadCMake-ad3f69c86eb27abd16d2a8534a7b90d59c0d74ed.zip
CMake-ad3f69c86eb27abd16d2a8534a7b90d59c0d74ed.tar.gz
CMake-ad3f69c86eb27abd16d2a8534a7b90d59c0d74ed.tar.bz2
Add support for FRAMEWORK_MULTI_CONFIG_POSTFIX_<CONFIG>
Diffstat (limited to 'Source/cmNinjaNormalTargetGenerator.cxx')
-rw-r--r--Source/cmNinjaNormalTargetGenerator.cxx14
1 files changed, 13 insertions, 1 deletions
diff --git a/Source/cmNinjaNormalTargetGenerator.cxx b/Source/cmNinjaNormalTargetGenerator.cxx
index 0a6da91..ece958c 100644
--- a/Source/cmNinjaNormalTargetGenerator.cxx
+++ b/Source/cmNinjaNormalTargetGenerator.cxx
@@ -812,8 +812,20 @@ void cmNinjaNormalTargetGenerator::WriteLinkStatement(
targetOutputReal = this->ConvertToNinjaPath(targetOutputReal);
} else if (gt->IsFrameworkOnApple()) {
// Create the library framework.
+
+ cmOSXBundleGenerator::SkipParts bundleSkipParts;
+ if (globalGen->GetName() == "Ninja Multi-Config") {
+ const auto postFix = this->GeneratorTarget->GetFilePostfix(config);
+ // Skip creating Info.plist when there are multiple configurations, and
+ // the current configuration has a postfix. The non-postfix configuration
+ // Info.plist can be used by all the other configurations.
+ if (!postFix.empty()) {
+ bundleSkipParts.infoPlist = true;
+ }
+ }
+
this->OSXBundleGenerator->CreateFramework(
- tgtNames.Output, gt->GetDirectory(config), config);
+ tgtNames.Output, gt->GetDirectory(config), config, bundleSkipParts);
} else if (gt->IsCFBundleOnApple()) {
// Create the core foundation bundle.
this->OSXBundleGenerator->CreateCFBundle(tgtNames.Output,