summaryrefslogtreecommitdiffstats
path: root/Source/cmGeneratorExpressionNode.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'Source/cmGeneratorExpressionNode.cxx')
-rw-r--r--Source/cmGeneratorExpressionNode.cxx14
1 files changed, 12 insertions, 2 deletions
diff --git a/Source/cmGeneratorExpressionNode.cxx b/Source/cmGeneratorExpressionNode.cxx
index b08cddb..d773fdf 100644
--- a/Source/cmGeneratorExpressionNode.cxx
+++ b/Source/cmGeneratorExpressionNode.cxx
@@ -2763,8 +2763,18 @@ struct TargetFilesystemArtifactResultCreator<ArtifactBundleDirNameTag>
return std::string();
}
- return target->GetAppBundleDirectory(context->Config,
- cmGeneratorTarget::BundleDirLevel);
+ auto level = cmGeneratorTarget::BundleDirLevel;
+ auto config = context->Config;
+ if (target->IsAppBundleOnApple()) {
+ return target->GetAppBundleDirectory(config, level);
+ }
+ if (target->IsFrameworkOnApple()) {
+ return target->GetFrameworkDirectory(config, level);
+ }
+ if (target->IsCFBundleOnApple()) {
+ return target->GetCFBundleDirectory(config, level);
+ }
+ return std::string();
}
};