summaryrefslogtreecommitdiffstats
path: root/Source/cmGeneratorTarget.cxx
diff options
context:
space:
mode:
authorGregor Jasny <gjasny@googlemail.com>2016-06-19 19:26:40 (GMT)
committerGregor Jasny <gjasny@googlemail.com>2016-07-22 06:16:50 (GMT)
commit134d5c1f7c82698b79d88ba92a7bd98b81dceaec (patch)
tree64745b8408c1f249d751cec94452a3ea03b57fab /Source/cmGeneratorTarget.cxx
parent2b909c08f526536d4dd84dfe68edf22682ae88ca (diff)
downloadCMake-134d5c1f7c82698b79d88ba92a7bd98b81dceaec.zip
CMake-134d5c1f7c82698b79d88ba92a7bd98b81dceaec.tar.gz
CMake-134d5c1f7c82698b79d88ba92a7bd98b81dceaec.tar.bz2
Honor BUNDLE_EXTENSION also for Frameworks (#14742)
Diffstat (limited to 'Source/cmGeneratorTarget.cxx')
-rw-r--r--Source/cmGeneratorTarget.cxx15
1 files changed, 13 insertions, 2 deletions
diff --git a/Source/cmGeneratorTarget.cxx b/Source/cmGeneratorTarget.cxx
index f45d4f0..793ad2e 100644
--- a/Source/cmGeneratorTarget.cxx
+++ b/Source/cmGeneratorTarget.cxx
@@ -1400,7 +1400,12 @@ std::string cmGeneratorTarget::GetFrameworkDirectory(const std::string& config,
{
std::string fpath;
fpath += this->GetOutputName(config, false);
- fpath += ".framework";
+ fpath += ".";
+ const char* ext = this->GetProperty("BUNDLE_EXTENSION");
+ if (!ext) {
+ ext = "framework";
+ }
+ fpath += ext;
if (!rootDir && !this->Makefile->PlatformIsAppleIos()) {
fpath += "/Versions/";
fpath += this->GetFrameworkVersion();
@@ -3016,7 +3021,13 @@ void cmGeneratorTarget::GetFullNameInternal(const std::string& config,
std::string fw_prefix;
if (this->IsFrameworkOnApple()) {
fw_prefix = this->GetOutputName(config, false);
- fw_prefix += ".framework/";
+ fw_prefix += ".";
+ const char* ext = this->GetProperty("BUNDLE_EXTENSION");
+ if (!ext) {
+ ext = "framework";
+ }
+ fw_prefix += ext;
+ fw_prefix += "/";
targetPrefix = fw_prefix.c_str();
targetSuffix = CM_NULLPTR;
}