diff options
author | Alexandru Croitor <alexandru.croitor@qt.io> | 2020-01-27 10:23:13 (GMT) |
---|---|---|
committer | Alexandru Croitor <alexandru.croitor@qt.io> | 2020-03-04 13:30:54 (GMT) |
commit | ad3f69c86eb27abd16d2a8534a7b90d59c0d74ed (patch) | |
tree | e1f0f070bbfaeb14c923f4fbb3cac503f3154111 /Source/cmNinjaNormalTargetGenerator.cxx | |
parent | d016637eefd7ebd6745adcd36bbfad7da67529ef (diff) | |
download | CMake-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.cxx | 14 |
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, |