This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "CMake".
The branch, next has been updated via 2152e11e7a4f9d5bb80e224265e3aba40c92a060 (commit) via e301be8c4f82aeab9a5693e611d93b22a901866e (commit) via 3b9d0962e79e8bdeec8a92684d62172197c1ae6d (commit) via 1721529fa69b60ec2717e85ef8730de549e226b1 (commit) via f05657de9d1ae7247a527186830d37702ec30de4 (commit) from 41a51131f9a253459577cbe4562be5dd368a517d (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=2152e11e7a4f9d5bb80e224265e3aba40c92a060 commit 2152e11e7a4f9d5bb80e224265e3aba40c92a060 Merge: 41a5113 e301be8 Author: Gregor Jasny <gja...@googlemail.com> AuthorDate: Fri Jun 24 17:26:16 2016 -0400 Commit: CMake Topic Stage <kwro...@kitware.com> CommitDate: Fri Jun 24 17:26:16 2016 -0400 Merge topic 'app-framework-bundle-extension' into next e301be8c Update documentation about bundle extensions 3b9d0962 Honor BUNDLE_EXTENSION also for Frameworks (#14742) 1721529f Honor BUNDLE_EXTENSION also for App Bundles (#16148) f05657de CMake Nightly Date Stamp https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e301be8c4f82aeab9a5693e611d93b22a901866e commit e301be8c4f82aeab9a5693e611d93b22a901866e Author: Gregor Jasny <gja...@googlemail.com> AuthorDate: Fri Jun 24 23:17:22 2016 +0200 Commit: Gregor Jasny <gja...@googlemail.com> CommitDate: Fri Jun 24 23:17:22 2016 +0200 Update documentation about bundle extensions diff --git a/Help/prop_tgt/BUNDLE_EXTENSION.rst b/Help/prop_tgt/BUNDLE_EXTENSION.rst index ea265b3..6b3d580 100644 --- a/Help/prop_tgt/BUNDLE_EXTENSION.rst +++ b/Help/prop_tgt/BUNDLE_EXTENSION.rst @@ -1,7 +1,8 @@ BUNDLE_EXTENSION ---------------- -The file extension used to name a :prop_tgt:`BUNDLE` target on the OS X and iOS. +The file extension used to name a :prop_tgt:`BUNDLE`, a :prop_tgt:`FRAMEWORK`, +or a :prop_tgt:`MACOSX_BUNDLE` target on the OS X and iOS. -The default value is ``bundle`` - you can also use ``plugin`` or whatever -file extension is required by the host app for your bundle. +The default value is ``bundle``, ``framework``, or ``app`` for the respective +target types. diff --git a/Help/release/dev/app-framework-bundle-extension.rst b/Help/release/dev/app-framework-bundle-extension.rst new file mode 100644 index 0000000..01855a2 --- /dev/null +++ b/Help/release/dev/app-framework-bundle-extension.rst @@ -0,0 +1,5 @@ +app-framework-bundle-extension +------------------------------ + +* On Apple platforms the :prop_tgt:`BUNDLE_EXTENSION` now also applies to + Frameworks and App Bundles. https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3b9d0962e79e8bdeec8a92684d62172197c1ae6d commit 3b9d0962e79e8bdeec8a92684d62172197c1ae6d Author: Gregor Jasny <gja...@googlemail.com> AuthorDate: Sun Jun 19 21:26:40 2016 +0200 Commit: Gregor Jasny <gja...@googlemail.com> CommitDate: Fri Jun 24 23:06:45 2016 +0200 Honor BUNDLE_EXTENSION also for Frameworks (#14742) diff --git a/Source/cmGeneratorTarget.cxx b/Source/cmGeneratorTarget.cxx index 4db1bd9..eec3422 100644 --- a/Source/cmGeneratorTarget.cxx +++ b/Source/cmGeneratorTarget.cxx @@ -1396,7 +1396,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(); @@ -3013,7 +3018,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 = 0; } diff --git a/Source/cmGlobalXCodeGenerator.cxx b/Source/cmGlobalXCodeGenerator.cxx index d27c579..91a90b2 100644 --- a/Source/cmGlobalXCodeGenerator.cxx +++ b/Source/cmGlobalXCodeGenerator.cxx @@ -1843,6 +1843,11 @@ void cmGlobalXCodeGenerator::CreateBuildSettings(cmGeneratorTarget* gtgt, std::string fw_version = gtgt->GetFrameworkVersion(); buildSettings->AddAttribute("FRAMEWORK_VERSION", this->CreateString(fw_version)); + const char* ext = gtgt->GetProperty("BUNDLE_EXTENSION"); + if (ext) { + buildSettings->AddAttribute("WRAPPER_EXTENSION", + this->CreateString(ext)); + } std::string plist = this->ComputeInfoPListLocation(gtgt); // Xcode will create the final version of Info.plist at build time, https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1721529fa69b60ec2717e85ef8730de549e226b1 commit 1721529fa69b60ec2717e85ef8730de549e226b1 Author: Gregor Jasny <gja...@googlemail.com> AuthorDate: Sun Jun 19 20:30:00 2016 +0200 Commit: Gregor Jasny <gja...@googlemail.com> CommitDate: Fri Jun 24 23:00:01 2016 +0200 Honor BUNDLE_EXTENSION also for App Bundles (#16148) diff --git a/Source/cmGeneratorTarget.cxx b/Source/cmGeneratorTarget.cxx index 9a025d9..4db1bd9 100644 --- a/Source/cmGeneratorTarget.cxx +++ b/Source/cmGeneratorTarget.cxx @@ -1346,7 +1346,12 @@ std::string cmGeneratorTarget::GetAppBundleDirectory(const std::string& config, bool contentOnly) const { std::string fpath = this->GetFullName(config, false); - fpath += ".app"; + fpath += "."; + const char* ext = this->GetProperty("BUNDLE_EXTENSION"); + if (!ext) { + ext = "app"; + } + fpath += ext; if (!this->Makefile->PlatformIsAppleIos()) { fpath += "/Contents"; if (!contentOnly) { diff --git a/Source/cmGlobalXCodeGenerator.cxx b/Source/cmGlobalXCodeGenerator.cxx index e82cb16..d27c579 100644 --- a/Source/cmGlobalXCodeGenerator.cxx +++ b/Source/cmGlobalXCodeGenerator.cxx @@ -1877,6 +1877,11 @@ void cmGlobalXCodeGenerator::CreateBuildSettings(cmGeneratorTarget* gtgt, // Handle bundles and normal executables separately. if (gtgt->GetPropertyAsBool("MACOSX_BUNDLE")) { + const char* ext = gtgt->GetProperty("BUNDLE_EXTENSION"); + if (ext) { + buildSettings->AddAttribute("WRAPPER_EXTENSION", + this->CreateString(ext)); + } std::string plist = this->ComputeInfoPListLocation(gtgt); // Xcode will create the final version of Info.plist at build time, // so let it replace the executable name. This avoids creating diff --git a/Source/cmInstallTargetGenerator.cxx b/Source/cmInstallTargetGenerator.cxx index d56bb05..b1733ce 100644 --- a/Source/cmInstallTargetGenerator.cxx +++ b/Source/cmInstallTargetGenerator.cxx @@ -142,13 +142,22 @@ void cmInstallTargetGenerator::GenerateScriptForConfig( if (this->Target->IsAppBundleOnApple()) { cmMakefile const* mf = this->Target->Target->GetMakefile(); + // Get App Bundle Extension + const char* ext = this->Target->GetProperty("BUNDLE_EXTENSION"); + if (!ext) { + ext = "app"; + } + // Install the whole app bundle directory. type = cmInstallType_DIRECTORY; literal_args += " USE_SOURCE_PERMISSIONS"; - from1 += ".app"; + from1 += "."; + from1 += ext; // Tweaks apply to the binary inside the bundle. - to1 += ".app/"; + to1 += "."; + to1 += ext; + to1 += "/"; if (!mf->PlatformIsAppleIos()) { to1 += "Contents/MacOS/"; } ----------------------------------------------------------------------- Summary of changes: Help/prop_tgt/BUNDLE_EXTENSION.rst | 7 ++++--- .../release/dev/app-framework-bundle-extension.rst | 5 +++++ Source/CMakeVersion.cmake | 2 +- Source/cmGeneratorTarget.cxx | 22 +++++++++++++++++--- Source/cmGlobalXCodeGenerator.cxx | 10 +++++++++ Source/cmInstallTargetGenerator.cxx | 13 ++++++++++-- 6 files changed, 50 insertions(+), 9 deletions(-) create mode 100644 Help/release/dev/app-framework-bundle-extension.rst hooks/post-receive -- CMake _______________________________________________ Cmake-commits mailing list Cmake-commits@cmake.org http://public.kitware.com/mailman/listinfo/cmake-commits