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  ee27398822ff58d00ee45899128354b27ddf56af (commit)
       via  c48141744e7b14940dc55ec98da631c4d2356dd7 (commit)
      from  ef05bdfa0c161137c9028e69f821b05aa6cb4581 (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=ee27398822ff58d00ee45899128354b27ddf56af
commit ee27398822ff58d00ee45899128354b27ddf56af
Merge: ef05bdf c481417
Author:     Brad King <[email protected]>
AuthorDate: Thu Feb 26 15:04:26 2015 -0500
Commit:     CMake Topic Stage <[email protected]>
CommitDate: Thu Feb 26 15:04:26 2015 -0500

    Merge topic 'install-manifest-optimize' into next
    
    c4814174 install: Write the entire installation manifest at once


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c48141744e7b14940dc55ec98da631c4d2356dd7
commit c48141744e7b14940dc55ec98da631c4d2356dd7
Author:     Robert Goulet <[email protected]>
AuthorDate: Thu Feb 26 19:18:04 2015 +0000
Commit:     Brad King <[email protected]>
CommitDate: Thu Feb 26 15:04:07 2015 -0500

    install: Write the entire installation manifest at once
    
    Avoid a separate open/close for each file installed.  Use a single
    file(WRITE) instead of a loop with file(APPEND).

diff --git a/Source/cmFileCommand.cxx b/Source/cmFileCommand.cxx
index 579e715..d994659 100644
--- a/Source/cmFileCommand.cxx
+++ b/Source/cmFileCommand.cxx
@@ -1907,7 +1907,10 @@ protected:
   std::string Manifest;
   void ManifestAppend(std::string const& file)
     {
-    this->Manifest += ";";
+    if (!this->Manifest.empty())
+      {
+      this->Manifest += ";";
+      }
     this->Manifest += file.substr(this->DestDirLength);
     }
 
diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx
index 7ca7684..d9dcad4 100644
--- a/Source/cmLocalGenerator.cxx
+++ b/Source/cmLocalGenerator.cxx
@@ -535,17 +535,12 @@ void cmLocalGenerator::GenerateInstallRules()
       "${CMAKE_INSTALL_COMPONENT}.txt\")\n"
       "else()\n"
       "  set(CMAKE_INSTALL_MANIFEST \"install_manifest.txt\")\n"
-      "endif()\n\n";
-    fout
-      << "file(WRITE \""
-      << homedir << "/${CMAKE_INSTALL_MANIFEST}\" "
-      << "\"\")" << std::endl;
-    fout
-      << "foreach(file ${CMAKE_INSTALL_MANIFEST_FILES})" << std::endl
-      << "  file(APPEND \""
-      << homedir << "/${CMAKE_INSTALL_MANIFEST}\" "
-      << "\"${file}\\n\")" << std::endl
-      << "endforeach()" << std::endl;
+      "endif()\n"
+      "\n"
+      "string(REPLACE \";\" \"\\n\" CMAKE_INSTALL_MANIFEST_CONTENT\n"
+      "       \"${CMAKE_INSTALL_MANIFEST_FILES}\")\n"
+      "file(WRITE \"" << homedir << "/${CMAKE_INSTALL_MANIFEST}\"\n"
+      "     \"${CMAKE_INSTALL_MANIFEST_CONTENT}\")\n";
     }
 }
 

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

Summary of changes:


hooks/post-receive
-- 
CMake
_______________________________________________
Cmake-commits mailing list
[email protected]
http://public.kitware.com/mailman/listinfo/cmake-commits

Reply via email to