[Cmake-commits] CMake branch, next, updated. v2.8.11.2-3282-g8bd47b6

Brad King brad.king at kitware.com
Mon Jul 22 09:45:35 EDT 2013


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  8bd47b69a1aa634e54800a3910feb4e59bb09067 (commit)
       via  603bc5998f4892996c9b189a2b2f86695e79e96e (commit)
      from  52fc21ab2bf96a8e6e7ec134c56ff58ee0f92fe4 (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 -----------------------------------------------------------------
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8bd47b69a1aa634e54800a3910feb4e59bb09067
commit 8bd47b69a1aa634e54800a3910feb4e59bb09067
Merge: 52fc21a 603bc59
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Mon Jul 22 09:45:34 2013 -0400
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Mon Jul 22 09:45:34 2013 -0400

    Merge topic 'rpath-on-mac' into next
    
    603bc59 OS X: Fix regression handling frameworks for Ninja


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=603bc5998f4892996c9b189a2b2f86695e79e96e
commit 603bc5998f4892996c9b189a2b2f86695e79e96e
Author:     Clinton Stimpson <clinton at elemtech.com>
AuthorDate: Tue Jul 16 23:01:50 2013 -0600
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Mon Jul 22 09:40:11 2013 -0400

    OS X: Fix regression handling frameworks for Ninja
    
    Fix a regression created by commit 373faae5 (Refactor how bundles and
    frameworks are supported, 2013-05-05).
    
    Since the ninja file isn't aware of how framework symlinks work, we
    suppress symlink creation and let cmOSXBundleGenerator handle it.  Also,
    use the real name of framework library in build rules as was done
    before, instead of the symlink.

diff --git a/Source/cmGlobalNinjaGenerator.cxx b/Source/cmGlobalNinjaGenerator.cxx
index 9596ebc..245883c 100644
--- a/Source/cmGlobalNinjaGenerator.cxx
+++ b/Source/cmGlobalNinjaGenerator.cxx
@@ -824,13 +824,19 @@ cmGlobalNinjaGenerator
   cmLocalNinjaGenerator *ng =
     static_cast<cmLocalNinjaGenerator *>(this->LocalGenerators[0]);
 
+  // for frameworks, we want the real name, not smple name
+  // frameworks always appear versioned, and the build.ninja
+  // will always attempt to manage symbolic links instead
+  // of letting cmOSXBundleGenerator do it.
+  bool realname = target->IsFrameworkOnApple();
+
   switch (target->GetType()) {
   case cmTarget::EXECUTABLE:
   case cmTarget::SHARED_LIBRARY:
   case cmTarget::STATIC_LIBRARY:
   case cmTarget::MODULE_LIBRARY:
     outputs.push_back(ng->ConvertToNinjaPath(
-      target->GetFullPath(configName).c_str()));
+      target->GetFullPath(configName, false, realname).c_str()));
     break;
 
   case cmTarget::OBJECT_LIBRARY:
diff --git a/Source/cmNinjaNormalTargetGenerator.cxx b/Source/cmNinjaNormalTargetGenerator.cxx
index fa7e396..57adeba 100644
--- a/Source/cmNinjaNormalTargetGenerator.cxx
+++ b/Source/cmNinjaNormalTargetGenerator.cxx
@@ -265,7 +265,8 @@ cmNinjaNormalTargetGenerator
                                         rspcontent);
   }
 
-  if (this->TargetNameOut != this->TargetNameReal) {
+  if (this->TargetNameOut != this->TargetNameReal &&
+    !this->GetTarget()->IsFrameworkOnApple()) {
     std::string cmakeCommand =
       this->GetLocalGenerator()->ConvertToOutputFormat(
         this->GetMakefile()->GetRequiredDefinition("CMAKE_COMMAND"),
@@ -599,7 +600,8 @@ void cmNinjaNormalTargetGenerator::WriteLinkStatement()
                               rspfile,
                               commandLineLengthLimit);
 
-  if (targetOutput != targetOutputReal) {
+  if (targetOutput != targetOutputReal &&
+    !this->GetTarget()->IsFrameworkOnApple()) {
     if (targetType == cmTarget::EXECUTABLE) {
       globalGenerator->WriteBuild(this->GetBuildFileStream(),
                                   "Create executable symlink " + targetOutput,

-----------------------------------------------------------------------

Summary of changes:


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list