[Cmake-commits] CMake branch, next, updated. v2.8.11.2-3214-ga8aad41

Clinton Stimpson clinton at elemtech.com
Thu Jul 18 11:29:50 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  a8aad419bf9dfe4870a39562ad57b44fc60e3008 (commit)
       via  9de56bc19fd0212912da1b40f7a1f4e00e0860fa (commit)
      from  2063b184024022a858914eaba8e2963b95768608 (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=a8aad419bf9dfe4870a39562ad57b44fc60e3008
commit a8aad419bf9dfe4870a39562ad57b44fc60e3008
Merge: 2063b18 9de56bc
Author:     Clinton Stimpson <clinton at elemtech.com>
AuthorDate: Thu Jul 18 11:29:49 2013 -0400
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Thu Jul 18 11:29:49 2013 -0400

    Merge topic 'rpath-on-mac' into next
    
    9de56bc ninja, OS X: fix regression handling frameworks


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9de56bc19fd0212912da1b40f7a1f4e00e0860fa
commit 9de56bc19fd0212912da1b40f7a1f4e00e0860fa
Author:     Clinton Stimpson <clinton at elemtech.com>
AuthorDate: Tue Jul 16 23:01:50 2013 -0600
Commit:     Clinton Stimpson <clinton at elemtech.com>
CommitDate: Thu Jul 18 09:28:34 2013 -0600

    ninja, OS X: fix regression handling frameworks
    
    Fixing a regression in 373faae5.
    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