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  61ec1b7a9069bee2a1f8f4785d653667cabda819 (commit)
       via  f966a12f64ffc2c6bac17f56746016020e0d769a (commit)
       via  d4b0e1ff39b72b5f8b8e22b454b84749736f1776 (commit)
      from  cc4ba6e84a69bcb1e5df1d6b6501dd5176def230 (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=61ec1b7a9069bee2a1f8f4785d653667cabda819
commit 61ec1b7a9069bee2a1f8f4785d653667cabda819
Merge: cc4ba6e f966a12
Author:     Brad King <brad.k...@kitware.com>
AuthorDate: Fri Sep 28 08:24:31 2012 -0400
Commit:     CMake Topic Stage <kwro...@kitware.com>
CommitDate: Fri Sep 28 08:24:31 2012 -0400

    Merge topic 'ninja-link-rsp-expand' into next
    
    f966a12 Merge branch 'ninja-link-rsp-expand_2' into ninja-link-rsp-expand
    d4b0e1f Revert "Ninja: don't confuse ninja's rsp files with nmake's"

diff --cc Source/cmNinjaNormalTargetGenerator.cxx
index b51ac72,6f991e2..1ce321e
--- a/Source/cmNinjaNormalTargetGenerator.cxx
+++ b/Source/cmNinjaNormalTargetGenerator.cxx
@@@ -181,16 -179,9 +181,16 @@@ cmNinjaNormalTargetGenerato
          } else {
            responseFlag = "@";
          }
-         rspfile = "$RSP_FILE";
+         rspfile = "$out.rsp";
          responseFlag += rspfile;
 -        rspcontent = "$in $LINK_LIBRARIES";
 +
 +        // build response file content
 +        std::string linkOptionVar = cmakeVarLang;
 +        linkOptionVar += "_COMPILER_LINKER_OPTION_FLAG_";
 +        linkOptionVar += cmTarget::GetTargetTypeName(targetType);
 +        const std::string linkOption =
 +                GetMakefile()->GetSafeDefinition(linkOptionVar.c_str());
 +        rspcontent = "$in " + linkOption + " $LINK_PATH $LINK_LIBRARIES";
          vars.Objects = responseFlag.c_str();
          vars.LinkLibraries = "";
      }
@@@ -553,25 -539,16 +553,21 @@@ void cmNinjaNormalTargetGenerator::Writ
  
    int linkRuleLength = this->GetGlobalGenerator()->
                                   GetRuleCmdLength(this->LanguageLinkerRule());
 +
 +  int commandLineLengthLimit = 1;
 +  const char* forceRspFile = "CMAKE_NINJA_FORCE_RESPONSE_FILE";
 +  if (!this->GetMakefile()->IsDefinitionSet(forceRspFile) &&
 +      cmSystemTools::GetEnv(forceRspFile) == 0) {
  #ifdef _WIN32
 -  int commandLineLengthLimit = 8000 - linkRuleLength;
 +    commandLineLengthLimit = 8000 - linkRuleLength;
  #elif defined(__linux) || defined(__APPLE__)
 -  // for instance ARG_MAX is 2096152 on Ubuntu or 262144 on Mac
 -  int commandLineLengthLimit = ((int)sysconf(_SC_ARG_MAX))
 -                                    - linkRuleLength - 1000;
 +    // for instance ARG_MAX is 2096152 on Ubuntu or 262144 on Mac
 +    commandLineLengthLimit = ((int)sysconf(_SC_ARG_MAX))- linkRuleLength - 
1000;
  #else
 -  int commandLineLengthLimit = -1;
 +    commandLineLengthLimit = -1;
  #endif
 +  }
  
-   const std::string rspfile = std::string
-                               (cmake::GetCMakeFilesDirectoryPostSlash()) +
-                               this->GetTarget()->GetName() + ".rsp";
- 
    // Write the build statement for this target.
    cmGlobalNinjaGenerator::WriteBuild(this->GetBuildFileStream(),
                                       comment.str(),

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f966a12f64ffc2c6bac17f56746016020e0d769a
commit f966a12f64ffc2c6bac17f56746016020e0d769a
Merge: dbd46e8 d4b0e1f
Author:     Brad King <brad.k...@kitware.com>
AuthorDate: Fri Sep 28 08:18:02 2012 -0400
Commit:     Brad King <brad.k...@kitware.com>
CommitDate: Fri Sep 28 08:18:02 2012 -0400

    Merge branch 'ninja-link-rsp-expand_2' into ninja-link-rsp-expand


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d4b0e1ff39b72b5f8b8e22b454b84749736f1776
commit d4b0e1ff39b72b5f8b8e22b454b84749736f1776
Author:     Brad King <brad.k...@kitware.com>
AuthorDate: Fri Sep 28 08:17:54 2012 -0400
Commit:     Brad King <brad.k...@kitware.com>
CommitDate: Fri Sep 28 08:17:54 2012 -0400

    Revert "Ninja: don't confuse ninja's rsp files with nmake's"
    
    This reverts commit 2e7ffe0748746d15104720aae94200b72903f5cf.

diff --git a/Source/cmGlobalNinjaGenerator.cxx 
b/Source/cmGlobalNinjaGenerator.cxx
index 05f5b4c..3f3cfbb 100644
--- a/Source/cmGlobalNinjaGenerator.cxx
+++ b/Source/cmGlobalNinjaGenerator.cxx
@@ -106,7 +106,6 @@ void cmGlobalNinjaGenerator::WriteBuild(std::ostream& os,
                                         const cmNinjaDeps& implicitDeps,
                                         const cmNinjaDeps& orderOnlyDeps,
                                         const cmNinjaVars& variables,
-                                        const std::string& rspfile,
                                         int cmdLineLimit)
 {
   // Make sure there is a rule.
@@ -182,17 +181,12 @@ void cmGlobalNinjaGenerator::WriteBuild(std::ostream& os,
 
   // check if a response file rule should be used
   std::string buildstr = build.str();
-  std::string assignments = variable_assignments.str();
+  const std::string assignments = variable_assignments.str();
   const std::string args = arguments.str();
   if (cmdLineLimit > 0
       && args.size() + buildstr.size() + assignments.size()
-                                                    > (size_t) cmdLineLimit) {
-    buildstr += "_RSP_FILE";
-    variable_assignments.clear();
-    cmGlobalNinjaGenerator::WriteVariable(variable_assignments,
-                                          "RSP_FILE", rspfile, "", 1);
-    assignments += variable_assignments.str();
-  }
+         > (size_t) cmdLineLimit)
+    buildstr += "_RSPFILE";
 
   os << buildstr << args << assignments;
 }
diff --git a/Source/cmGlobalNinjaGenerator.h b/Source/cmGlobalNinjaGenerator.h
index 24c3916..b2fe243 100644
--- a/Source/cmGlobalNinjaGenerator.h
+++ b/Source/cmGlobalNinjaGenerator.h
@@ -84,7 +84,6 @@ public:
                          const cmNinjaDeps& implicitDeps,
                          const cmNinjaDeps& orderOnlyDeps,
                          const cmNinjaVars& variables,
-                         const std::string& rspfile = std::string(),
                          int cmdLineLimit = -1);
 
   /**
diff --git a/Source/cmNinjaNormalTargetGenerator.cxx 
b/Source/cmNinjaNormalTargetGenerator.cxx
index a13e1f0..6f991e2 100644
--- a/Source/cmNinjaNormalTargetGenerator.cxx
+++ b/Source/cmNinjaNormalTargetGenerator.cxx
@@ -153,7 +153,7 @@ cmNinjaNormalTargetGenerator
   cmTarget::TargetType targetType = this->GetTarget()->GetType();
   std::string ruleName = this->LanguageLinkerRule();
   if (useResponseFile)
-    ruleName += "_RSP_FILE";
+    ruleName += "_RSPFILE";
 
   // Select whether to use a response file for objects.
   std::string rspfile;
@@ -179,7 +179,7 @@ cmNinjaNormalTargetGenerator
         } else {
           responseFlag = "@";
         }
-        rspfile = "$RSP_FILE";
+        rspfile = "$out.rsp";
         responseFlag += rspfile;
         rspcontent = "$in $LINK_LIBRARIES";
         vars.Objects = responseFlag.c_str();
@@ -549,10 +549,6 @@ void cmNinjaNormalTargetGenerator::WriteLinkStatement()
   int commandLineLengthLimit = -1;
 #endif
 
-  const std::string rspfile = std::string
-                              (cmake::GetCMakeFilesDirectoryPostSlash()) +
-                              this->GetTarget()->GetName() + ".rsp";
-
   // Write the build statement for this target.
   cmGlobalNinjaGenerator::WriteBuild(this->GetBuildFileStream(),
                                      comment.str(),
@@ -562,7 +558,6 @@ void cmNinjaNormalTargetGenerator::WriteLinkStatement()
                                      implicitDeps,
                                      emptyDeps,
                                      vars,
-                                     rspfile,
                                      commandLineLengthLimit);
 
   if (targetOutput != targetOutputReal) {

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

Summary of changes:
 Source/cmGlobalNinjaGenerator.cxx       |   12 +++---------
 Source/cmGlobalNinjaGenerator.h         |    1 -
 Source/cmNinjaNormalTargetGenerator.cxx |    9 ++-------
 3 files changed, 5 insertions(+), 17 deletions(-)


hooks/post-receive
-- 
CMake
_______________________________________________
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-commits

Reply via email to