[Cmake-commits] CMake branch, next, updated. v3.2.0-903-ge410257

Stephen Kelly steveire at gmail.com
Sun Mar 8 09:06:45 EDT 2015


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  e410257de9ec20cac70a365a94f6d4ddf48ccc57 (commit)
       via  d623d67864ccc5b6158bd215bd3a164ae2b912dd (commit)
       via  d5b9039b870a8a05e146cafbea49a216e15f2d9e (commit)
       via  d8915b7531f6a5d6f9cd6c59d2b22b0d6089ddb0 (commit)
       via  90f36278dedaf61119fc5376f578a0fd3227a106 (commit)
       via  a619074d7091adfac7b75acc2f5f9791b7e706cb (commit)
       via  a35831232d00cd39156b487539726d780df7abd5 (commit)
       via  90a051f443c4cb400696b28651877c53e3c56607 (commit)
      from  0a15455b6d15150652cc57895ca0e927ff16b765 (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=e410257de9ec20cac70a365a94f6d4ddf48ccc57
commit e410257de9ec20cac70a365a94f6d4ddf48ccc57
Merge: 0a15455 d623d67
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Sun Mar 8 09:06:42 2015 -0400
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Sun Mar 8 09:06:42 2015 -0400

    Merge topic 'cmRemoveDuplicates-improvement' into next
    
    d623d678 cmRemoveDuplicates: Partially specialize the API for pointer types.
    d5b9039b cmRemoveDuplicates: Type-parameterize all uniq-operations
    d8915b75 cmRemoveDuplicates: Store unique iterators instead of values.
    90f36278 cmRemoveDuplicates: Fix iterator -> const_iterator.
    a619074d cmInstalledFile: Move Property implementation out of line.
    a3583123 Include cmAlgorithms where it is used.
    90a051f4 CMake Nightly Date Stamp

diff --cc Source/cmGeneratorExpressionEvaluator.cxx
index 756d932,a62374b..cd0e982
--- a/Source/cmGeneratorExpressionEvaluator.cxx
+++ b/Source/cmGeneratorExpressionEvaluator.cxx
@@@ -16,8 -16,8 +16,9 @@@
  #include "cmGeneratorExpressionDAGChecker.h"
  #include "cmGeneratorExpression.h"
  #include "cmLocalGenerator.h"
 +#include "cmGlobalGenerator.h"
  #include "cmSourceFile.h"
+ #include "cmAlgorithms.h"
  
  #include <cmsys/String.h>
  

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d623d67864ccc5b6158bd215bd3a164ae2b912dd
commit d623d67864ccc5b6158bd215bd3a164ae2b912dd
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Sun Mar 8 09:43:11 2015 +0100
Commit:     Stephen Kelly <steveire at gmail.com>
CommitDate: Sun Mar 8 14:05:43 2015 +0100

    cmRemoveDuplicates: Partially specialize the API for pointer types.
    
    If de-duplicating a container of pointers, there is no need to
    store iterators to them, as that is just more 'pointer chasing'.
    
    Store the pointers themselves and use API which compares the pointers
    in the specialization.

diff --git a/Source/cmAlgorithms.h b/Source/cmAlgorithms.h
index 5504fee..0cf7701 100644
--- a/Source/cmAlgorithms.h
+++ b/Source/cmAlgorithms.h
@@ -263,7 +263,7 @@ typename Range::const_iterator cmRemoveMatching(Range &r, MatchRange const& m)
 
 namespace ContainerAlgorithms {
 
-template<typename Range>
+template<typename Range, typename T = typename Range::value_type>
 struct RemoveDuplicatesAPI
 {
   typedef typename Range::const_iterator const_iterator;
@@ -275,6 +275,18 @@ struct RemoveDuplicatesAPI
   static bool valueCompare(It it, const_iterator it2) { return **it != *it2; }
 };
 
+template<typename Range, typename T>
+struct RemoveDuplicatesAPI<Range, T*>
+{
+  typedef typename Range::const_iterator const_iterator;
+  typedef T* value_type;
+
+  static bool lessThan(value_type a, value_type b) { return a < b; }
+  static value_type uniqueValue(const_iterator a) { return *a; }
+  template<typename It>
+  static bool valueCompare(It it, const_iterator it2) { return *it != *it2; }
+};
+
 }
 
 template<typename Range>

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d5b9039b870a8a05e146cafbea49a216e15f2d9e
commit d5b9039b870a8a05e146cafbea49a216e15f2d9e
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Sun Mar 1 21:57:16 2015 +0100
Commit:     Stephen Kelly <steveire at gmail.com>
CommitDate: Sun Mar 8 14:05:43 2015 +0100

    cmRemoveDuplicates: Type-parameterize all uniq-operations

diff --git a/Source/cmAlgorithms.h b/Source/cmAlgorithms.h
index 1b7029b..5504fee 100644
--- a/Source/cmAlgorithms.h
+++ b/Source/cmAlgorithms.h
@@ -176,12 +176,6 @@ private:
   Range const& m_range;
 };
 
-struct IterLess
-{
-  template<typename It>
-  bool operator()(It const& a, It const& b) const { return *a < *b; }
-};
-
 }
 
 template<typename Iter1, typename Iter2>
@@ -267,10 +261,27 @@ typename Range::const_iterator cmRemoveMatching(Range &r, MatchRange const& m)
                         ContainerAlgorithms::BinarySearcher<MatchRange>(m));
 }
 
+namespace ContainerAlgorithms {
+
+template<typename Range>
+struct RemoveDuplicatesAPI
+{
+  typedef typename Range::const_iterator const_iterator;
+  typedef typename Range::const_iterator value_type;
+
+  static bool lessThan(value_type a, value_type b) { return *a < *b; }
+  static value_type uniqueValue(const_iterator a) { return a; }
+  template<typename It>
+  static bool valueCompare(It it, const_iterator it2) { return **it != *it2; }
+};
+
+}
+
 template<typename Range>
 typename Range::const_iterator cmRemoveDuplicates(Range& r)
 {
-  typedef typename Range::const_iterator T;
+  typedef typename ContainerAlgorithms::RemoveDuplicatesAPI<Range> API;
+  typedef typename API::value_type T;
   std::vector<T> unique;
   unique.reserve(r.size());
   std::vector<size_t> indices;
@@ -280,11 +291,11 @@ typename Range::const_iterator cmRemoveDuplicates(Range& r)
       it != end; ++it, ++count)
     {
     const typename std::vector<T>::iterator low =
-        std::lower_bound(unique.begin(), unique.end(), it,
-                         ContainerAlgorithms::IterLess());
-    if (low == unique.end() || **low != *it)
+        std::lower_bound(unique.begin(), unique.end(),
+                         API::uniqueValue(it), API::lessThan);
+    if (low == unique.end() || API::valueCompare(low, it))
       {
-      unique.insert(low, it);
+      unique.insert(low, API::uniqueValue(it));
       }
     else
       {

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d8915b7531f6a5d6f9cd6c59d2b22b0d6089ddb0
commit d8915b7531f6a5d6f9cd6c59d2b22b0d6089ddb0
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Sun Mar 1 21:53:04 2015 +0100
Commit:     Stephen Kelly <steveire at gmail.com>
CommitDate: Sun Mar 8 14:05:43 2015 +0100

    cmRemoveDuplicates: Store unique iterators instead of values.
    
    There is no need to copy all of the values in the container in
    order to determine uniqueness.  Iterators can be stored instead
    and can be used with standard algorithms with custom comparison
    methods.
    
    This also means that we use less space in case the value_type size
    is greater than sizeof(iterator).  That is common for std::string
    which may require up to 32 bytes (libstdc++ 5.0 and MSVC at least).
    With libstdc++ 4.9 and older, std::string is 8 bytes, so we likely
    don't gain anything here.
    
    Inspired-by: Daniel Pfeifer <daniel at pfeifer-mail.de>

diff --git a/Source/cmAlgorithms.h b/Source/cmAlgorithms.h
index f032de7..1b7029b 100644
--- a/Source/cmAlgorithms.h
+++ b/Source/cmAlgorithms.h
@@ -176,6 +176,12 @@ private:
   Range const& m_range;
 };
 
+struct IterLess
+{
+  template<typename It>
+  bool operator()(It const& a, It const& b) const { return *a < *b; }
+};
+
 }
 
 template<typename Iter1, typename Iter2>
@@ -264,8 +270,8 @@ typename Range::const_iterator cmRemoveMatching(Range &r, MatchRange const& m)
 template<typename Range>
 typename Range::const_iterator cmRemoveDuplicates(Range& r)
 {
-  typedef std::vector<typename Range::value_type> UniqueVector;
-  UniqueVector unique;
+  typedef typename Range::const_iterator T;
+  std::vector<T> unique;
   unique.reserve(r.size());
   std::vector<size_t> indices;
   size_t count = 0;
@@ -273,11 +279,12 @@ typename Range::const_iterator cmRemoveDuplicates(Range& r)
   for(typename Range::const_iterator it = r.begin();
       it != end; ++it, ++count)
     {
-    const typename UniqueVector::iterator low =
-        std::lower_bound(unique.begin(), unique.end(), *it);
-    if (low == unique.end() || *low != *it)
+    const typename std::vector<T>::iterator low =
+        std::lower_bound(unique.begin(), unique.end(), it,
+                         ContainerAlgorithms::IterLess());
+    if (low == unique.end() || **low != *it)
       {
-      unique.insert(low, *it);
+      unique.insert(low, it);
       }
     else
       {

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=90f36278dedaf61119fc5376f578a0fd3227a106
commit 90f36278dedaf61119fc5376f578a0fd3227a106
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Sun Mar 8 14:04:54 2015 +0100
Commit:     Stephen Kelly <steveire at gmail.com>
CommitDate: Sun Mar 8 14:05:43 2015 +0100

    cmRemoveDuplicates: Fix iterator -> const_iterator.

diff --git a/Source/cmAlgorithms.h b/Source/cmAlgorithms.h
index b9d7e78..f032de7 100644
--- a/Source/cmAlgorithms.h
+++ b/Source/cmAlgorithms.h
@@ -269,7 +269,7 @@ typename Range::const_iterator cmRemoveDuplicates(Range& r)
   unique.reserve(r.size());
   std::vector<size_t> indices;
   size_t count = 0;
-  const typename Range::iterator end = r.end();
+  const typename Range::const_iterator end = r.end();
   for(typename Range::const_iterator it = r.begin();
       it != end; ++it, ++count)
     {

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a619074d7091adfac7b75acc2f5f9791b7e706cb
commit a619074d7091adfac7b75acc2f5f9791b7e706cb
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Sun Mar 8 13:37:44 2015 +0100
Commit:     Stephen Kelly <steveire at gmail.com>
CommitDate: Sun Mar 8 13:52:32 2015 +0100

    cmInstalledFile: Move Property implementation out of line.
    
    Don't require re-building the world when changing cmAlgorithms.h.

diff --git a/Source/cmInstalledFile.cxx b/Source/cmInstalledFile.cxx
index 4b53752..8c52b48 100644
--- a/Source/cmInstalledFile.cxx
+++ b/Source/cmInstalledFile.cxx
@@ -12,6 +12,7 @@
 #include "cmInstalledFile.h"
 #include "cmSystemTools.h"
 #include "cmMakefile.h"
+#include "cmAlgorithms.h"
 
 //----------------------------------------------------------------------------
 cmInstalledFile::cmInstalledFile():
@@ -29,6 +30,16 @@ cmInstalledFile::~cmInstalledFile()
     }
 }
 
+cmInstalledFile::Property::Property()
+{
+
+}
+
+cmInstalledFile::Property::~Property()
+{
+  cmDeleteAll(this->ValueExpressions);
+}
+
 //----------------------------------------------------------------------------
 void cmInstalledFile::SetName(cmMakefile* mf, const std::string& name)
 {
diff --git a/Source/cmInstalledFile.h b/Source/cmInstalledFile.h
index cdb0866..3af90a7 100644
--- a/Source/cmInstalledFile.h
+++ b/Source/cmInstalledFile.h
@@ -13,7 +13,6 @@
 #define cmInstalledFile_h
 
 #include "cmGeneratorExpression.h"
-#include "cmAlgorithms.h"
 
 /** \class cmInstalledFile
  * \brief Represents a file intended for installation.
@@ -32,15 +31,8 @@ public:
 
   struct Property
   {
-    Property()
-    {
-
-    }
-
-    ~Property()
-    {
-      cmDeleteAll(this->ValueExpressions);
-    }
+    Property();
+    ~Property();
 
     ExpressionVectorType ValueExpressions;
   };

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a35831232d00cd39156b487539726d780df7abd5
commit a35831232d00cd39156b487539726d780df7abd5
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Sun Mar 8 13:51:20 2015 +0100
Commit:     Stephen Kelly <steveire at gmail.com>
CommitDate: Sun Mar 8 13:52:15 2015 +0100

    Include cmAlgorithms where it is used.

diff --git a/Source/CTest/cmCTestBuildHandler.cxx b/Source/CTest/cmCTestBuildHandler.cxx
index fe27e2b..29e07ef 100644
--- a/Source/CTest/cmCTestBuildHandler.cxx
+++ b/Source/CTest/cmCTestBuildHandler.cxx
@@ -20,6 +20,7 @@
 #include "cmGeneratedFileStream.h"
 #include "cmXMLSafe.h"
 #include "cmFileTimeComparison.h"
+#include "cmAlgorithms.h"
 
 //#include <cmsys/RegularExpression.hxx>
 #include <cmsys/Process.h>
diff --git a/Source/CursesDialog/cmCursesMainForm.cxx b/Source/CursesDialog/cmCursesMainForm.cxx
index dcd0b6c..d60062e 100644
--- a/Source/CursesDialog/cmCursesMainForm.cxx
+++ b/Source/CursesDialog/cmCursesMainForm.cxx
@@ -22,6 +22,7 @@
 #include "cmCursesDummyWidget.h"
 #include "cmCursesCacheEntryComposite.h"
 #include "cmCursesLongMessageForm.h"
+#include "cmAlgorithms.h"
 
 
 inline int ctrl(int z)
diff --git a/Source/cmCTest.cxx b/Source/cmCTest.cxx
index e6d3960..1d0df69 100644
--- a/Source/cmCTest.cxx
+++ b/Source/cmCTest.cxx
@@ -26,6 +26,7 @@
 #include "cmVersionMacros.h"
 #include "cmCTestCommand.h"
 #include "cmCTestStartCommand.h"
+#include "cmAlgorithms.h"
 
 #include "cmCTestBuildHandler.h"
 #include "cmCTestBuildAndTestHandler.h"
diff --git a/Source/cmComputeLinkDepends.cxx b/Source/cmComputeLinkDepends.cxx
index be28b2f..6005d5f 100644
--- a/Source/cmComputeLinkDepends.cxx
+++ b/Source/cmComputeLinkDepends.cxx
@@ -17,6 +17,7 @@
 #include "cmMakefile.h"
 #include "cmTarget.h"
 #include "cmake.h"
+#include "cmAlgorithms.h"
 
 #include <cmsys/stl/algorithm>
 
diff --git a/Source/cmComputeLinkInformation.cxx b/Source/cmComputeLinkInformation.cxx
index 479da75..b0e0f36 100644
--- a/Source/cmComputeLinkInformation.cxx
+++ b/Source/cmComputeLinkInformation.cxx
@@ -19,6 +19,7 @@
 #include "cmMakefile.h"
 #include "cmTarget.h"
 #include "cmake.h"
+#include "cmAlgorithms.h"
 
 #include <ctype.h>
 
diff --git a/Source/cmCoreTryCompile.cxx b/Source/cmCoreTryCompile.cxx
index e9390e4..59efa52 100644
--- a/Source/cmCoreTryCompile.cxx
+++ b/Source/cmCoreTryCompile.cxx
@@ -14,6 +14,7 @@
 #include "cmCacheManager.h"
 #include "cmLocalGenerator.h"
 #include "cmGlobalGenerator.h"
+#include "cmAlgorithms.h"
 #include "cmExportTryCompileFileGenerator.h"
 #include <cmsys/Directory.hxx>
 
diff --git a/Source/cmDependsC.cxx b/Source/cmDependsC.cxx
index 6dde349..63d8fa6 100644
--- a/Source/cmDependsC.cxx
+++ b/Source/cmDependsC.cxx
@@ -15,6 +15,7 @@
 #include "cmLocalGenerator.h"
 #include "cmMakefile.h"
 #include "cmSystemTools.h"
+#include "cmAlgorithms.h"
 #include <cmsys/FStream.hxx>
 
 #include <ctype.h> // isspace
diff --git a/Source/cmDocumentation.cxx b/Source/cmDocumentation.cxx
index f4e3a75..8c17536 100644
--- a/Source/cmDocumentation.cxx
+++ b/Source/cmDocumentation.cxx
@@ -14,6 +14,7 @@
 #include "cmSystemTools.h"
 #include "cmVersion.h"
 #include "cmRST.h"
+#include "cmAlgorithms.h"
 
 #include <cmsys/Directory.hxx>
 #include <cmsys/Glob.hxx>
diff --git a/Source/cmExportFileGenerator.cxx b/Source/cmExportFileGenerator.cxx
index 71728be..b4fad98 100644
--- a/Source/cmExportFileGenerator.cxx
+++ b/Source/cmExportFileGenerator.cxx
@@ -22,6 +22,7 @@
 #include "cmTargetExport.h"
 #include "cmVersion.h"
 #include "cmComputeLinkInformation.h"
+#include "cmAlgorithms.h"
 
 #include <cmsys/auto_ptr.hxx>
 #include <cmsys/FStream.hxx>
diff --git a/Source/cmExportInstallFileGenerator.cxx b/Source/cmExportInstallFileGenerator.cxx
index ba1dde2..6d639c9 100644
--- a/Source/cmExportInstallFileGenerator.cxx
+++ b/Source/cmExportInstallFileGenerator.cxx
@@ -19,6 +19,7 @@
 #include "cmInstallExportGenerator.h"
 #include "cmInstallTargetGenerator.h"
 #include "cmTargetExport.h"
+#include "cmAlgorithms.h"
 
 //----------------------------------------------------------------------------
 cmExportInstallFileGenerator
diff --git a/Source/cmFileCommand.cxx b/Source/cmFileCommand.cxx
index 0290c92..ec22ea0 100644
--- a/Source/cmFileCommand.cxx
+++ b/Source/cmFileCommand.cxx
@@ -16,6 +16,7 @@
 #include "cmInstallType.h"
 #include "cmFileTimeComparison.h"
 #include "cmCryptoHash.h"
+#include "cmAlgorithms.h"
 
 #include "cmTimestamp.h"
 
diff --git a/Source/cmFindBase.cxx b/Source/cmFindBase.cxx
index ffc641c..f63df61 100644
--- a/Source/cmFindBase.cxx
+++ b/Source/cmFindBase.cxx
@@ -11,6 +11,8 @@
 ============================================================================*/
 #include "cmFindBase.h"
 
+#include "cmAlgorithms.h"
+
 cmFindBase::cmFindBase()
 {
   this->AlreadyInCache = false;
diff --git a/Source/cmFindPackageCommand.cxx b/Source/cmFindPackageCommand.cxx
index 26bd4b9..87f9037 100644
--- a/Source/cmFindPackageCommand.cxx
+++ b/Source/cmFindPackageCommand.cxx
@@ -14,6 +14,7 @@
 #include <cmsys/Directory.hxx>
 #include <cmsys/RegularExpression.hxx>
 #include <cmsys/Encoding.hxx>
+#include "cmAlgorithms.h"
 
 #ifdef CMAKE_BUILD_WITH_CMAKE
 #include "cmVariableWatch.h"
diff --git a/Source/cmGeneratorExpression.cxx b/Source/cmGeneratorExpression.cxx
index bf96951..a1bb97b 100644
--- a/Source/cmGeneratorExpression.cxx
+++ b/Source/cmGeneratorExpression.cxx
@@ -14,6 +14,7 @@
 #include "cmMakefile.h"
 #include "cmTarget.h"
 #include "assert.h"
+#include "cmAlgorithms.h"
 
 #include "cmGeneratorExpressionEvaluator.h"
 #include "cmGeneratorExpressionLexer.h"
diff --git a/Source/cmGeneratorExpressionDAGChecker.cxx b/Source/cmGeneratorExpressionDAGChecker.cxx
index c8b9949..ff8790c 100644
--- a/Source/cmGeneratorExpressionDAGChecker.cxx
+++ b/Source/cmGeneratorExpressionDAGChecker.cxx
@@ -13,6 +13,7 @@
 #include "cmGeneratorExpressionDAGChecker.h"
 
 #include "cmMakefile.h"
+#include "cmAlgorithms.h"
 
 //----------------------------------------------------------------------------
 cmGeneratorExpressionDAGChecker::cmGeneratorExpressionDAGChecker(
diff --git a/Source/cmGeneratorExpressionEvaluator.cxx b/Source/cmGeneratorExpressionEvaluator.cxx
index ba18faa..a62374b 100644
--- a/Source/cmGeneratorExpressionEvaluator.cxx
+++ b/Source/cmGeneratorExpressionEvaluator.cxx
@@ -17,6 +17,7 @@
 #include "cmGeneratorExpression.h"
 #include "cmLocalGenerator.h"
 #include "cmSourceFile.h"
+#include "cmAlgorithms.h"
 
 #include <cmsys/String.h>
 
diff --git a/Source/cmGeneratorTarget.cxx b/Source/cmGeneratorTarget.cxx
index 44c9e9a..20ffbd0 100644
--- a/Source/cmGeneratorTarget.cxx
+++ b/Source/cmGeneratorTarget.cxx
@@ -20,6 +20,7 @@
 #include "cmGeneratorExpressionDAGChecker.h"
 #include "cmComputeLinkInformation.h"
 #include "cmCustomCommandGenerator.h"
+#include "cmAlgorithms.h"
 
 #include <queue>
 
diff --git a/Source/cmGetCMakePropertyCommand.cxx b/Source/cmGetCMakePropertyCommand.cxx
index fd18596..85aa31f 100644
--- a/Source/cmGetCMakePropertyCommand.cxx
+++ b/Source/cmGetCMakePropertyCommand.cxx
@@ -14,6 +14,7 @@
 #include "cmGlobalGenerator.h"
 #include "cmLocalGenerator.h"
 #include "cmake.h"
+#include "cmAlgorithms.h"
 
 // cmGetCMakePropertyCommand
 bool cmGetCMakePropertyCommand
diff --git a/Source/cmGlobalGenerator.cxx b/Source/cmGlobalGenerator.cxx
index 36395aa..0b247c2 100644
--- a/Source/cmGlobalGenerator.cxx
+++ b/Source/cmGlobalGenerator.cxx
@@ -32,6 +32,7 @@
 #include "cmGeneratorExpressionEvaluationFile.h"
 #include "cmExportBuildFileGenerator.h"
 #include "cmCPackPropertiesGenerator.h"
+#include "cmAlgorithms.h"
 
 #include <cmsys/Directory.hxx>
 #include <cmsys/FStream.hxx>
diff --git a/Source/cmGlobalUnixMakefileGenerator3.cxx b/Source/cmGlobalUnixMakefileGenerator3.cxx
index 5701564..7648813 100644
--- a/Source/cmGlobalUnixMakefileGenerator3.cxx
+++ b/Source/cmGlobalUnixMakefileGenerator3.cxx
@@ -18,6 +18,7 @@
 #include "cmSourceFile.h"
 #include "cmTarget.h"
 #include "cmGeneratorTarget.h"
+#include "cmAlgorithms.h"
 
 cmGlobalUnixMakefileGenerator3::cmGlobalUnixMakefileGenerator3()
 {
diff --git a/Source/cmListCommand.cxx b/Source/cmListCommand.cxx
index 17617aa..d18269d 100644
--- a/Source/cmListCommand.cxx
+++ b/Source/cmListCommand.cxx
@@ -12,6 +12,7 @@
 #include "cmListCommand.h"
 #include <cmsys/RegularExpression.hxx>
 #include <cmsys/SystemTools.hxx>
+#include "cmAlgorithms.h"
 
 #include <stdlib.h> // required for atoi
 #include <ctype.h>
diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx
index 7c83f27..8858149 100644
--- a/Source/cmLocalGenerator.cxx
+++ b/Source/cmLocalGenerator.cxx
@@ -25,6 +25,7 @@
 #include "cmCustomCommandGenerator.h"
 #include "cmVersion.h"
 #include "cmake.h"
+#include "cmAlgorithms.h"
 
 #if defined(CMAKE_BUILD_WITH_CMAKE)
 # define CM_LG_ENCODE_OBJECT_NAMES
diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx
index 432cb3a..a22bde9 100644
--- a/Source/cmLocalUnixMakefileGenerator3.cxx
+++ b/Source/cmLocalUnixMakefileGenerator3.cxx
@@ -20,6 +20,7 @@
 #include "cmVersion.h"
 #include "cmFileTimeComparison.h"
 #include "cmCustomCommandGenerator.h"
+#include "cmAlgorithms.h"
 
 // Include dependency scanners for supported languages.  Only the
 // C/C++ scanner is needed for bootstrapping CMake.
diff --git a/Source/cmMacroCommand.cxx b/Source/cmMacroCommand.cxx
index 12c8576..b7cbae6 100644
--- a/Source/cmMacroCommand.cxx
+++ b/Source/cmMacroCommand.cxx
@@ -12,6 +12,7 @@
 #include "cmMacroCommand.h"
 
 #include "cmake.h"
+#include "cmAlgorithms.h"
 
 // define the class for macro commands
 class cmMacroHelperCommand : public cmCommand
diff --git a/Source/cmMakeDepend.cxx b/Source/cmMakeDepend.cxx
index 31bbb73..a6d4e58 100644
--- a/Source/cmMakeDepend.cxx
+++ b/Source/cmMakeDepend.cxx
@@ -12,6 +12,7 @@
 #include "cmMakeDepend.h"
 #include "cmSystemTools.h"
 #include "cmGeneratorExpression.h"
+#include "cmAlgorithms.h"
 
 #include <cmsys/RegularExpression.hxx>
 #include <cmsys/FStream.hxx>
diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx
index ccfe2b1..0fd06d7 100644
--- a/Source/cmMakefile.cxx
+++ b/Source/cmMakefile.cxx
@@ -30,6 +30,7 @@
 #include "cmInstallGenerator.h"
 #include "cmTestGenerator.h"
 #include "cmDefinitions.h"
+#include "cmAlgorithms.h"
 #include "cmake.h"
 #include <stdlib.h> // required for atoi
 
diff --git a/Source/cmNinjaNormalTargetGenerator.cxx b/Source/cmNinjaNormalTargetGenerator.cxx
index c352c1a..155a30e 100644
--- a/Source/cmNinjaNormalTargetGenerator.cxx
+++ b/Source/cmNinjaNormalTargetGenerator.cxx
@@ -19,6 +19,7 @@
 #include "cmOSXBundleGenerator.h"
 #include "cmGeneratorTarget.h"
 #include "cmCustomCommandGenerator.h"
+#include "cmAlgorithms.h"
 
 #include <assert.h>
 #include <algorithm>
diff --git a/Source/cmOrderDirectories.cxx b/Source/cmOrderDirectories.cxx
index 23f8526..a612437 100644
--- a/Source/cmOrderDirectories.cxx
+++ b/Source/cmOrderDirectories.cxx
@@ -14,6 +14,7 @@
 #include "cmGlobalGenerator.h"
 #include "cmSystemTools.h"
 #include "cmake.h"
+#include "cmAlgorithms.h"
 
 #include <assert.h>
 
diff --git a/Source/cmOutputRequiredFilesCommand.cxx b/Source/cmOutputRequiredFilesCommand.cxx
index 5016493..df531e7 100644
--- a/Source/cmOutputRequiredFilesCommand.cxx
+++ b/Source/cmOutputRequiredFilesCommand.cxx
@@ -11,6 +11,7 @@
 ============================================================================*/
 #include "cmOutputRequiredFilesCommand.h"
 #include "cmMakeDepend.h"
+#include "cmAlgorithms.h"
 #include <cmsys/FStream.hxx>
 
 class cmLBDepend : public cmMakeDepend
diff --git a/Source/cmPolicies.cxx b/Source/cmPolicies.cxx
index 3a48101..c680523 100644
--- a/Source/cmPolicies.cxx
+++ b/Source/cmPolicies.cxx
@@ -4,6 +4,7 @@
 #include "cmSourceFile.h"
 #include "cmVersion.h"
 #include "cmVersionMacros.h"
+#include "cmAlgorithms.h"
 #include <map>
 #include <set>
 #include <queue>
diff --git a/Source/cmQtAutoGenerators.cxx b/Source/cmQtAutoGenerators.cxx
index e18e757..a80f606 100644
--- a/Source/cmQtAutoGenerators.cxx
+++ b/Source/cmQtAutoGenerators.cxx
@@ -16,6 +16,7 @@
 #include "cmMakefile.h"
 #include "cmSourceFile.h"
 #include "cmSystemTools.h"
+#include "cmAlgorithms.h"
 
 #if defined(_WIN32) && !defined(__CYGWIN__)
 # include "cmLocalVisualStudioGenerator.h"
diff --git a/Source/cmSearchPath.cxx b/Source/cmSearchPath.cxx
index 1e777ab..045c82e 100644
--- a/Source/cmSearchPath.cxx
+++ b/Source/cmSearchPath.cxx
@@ -12,6 +12,7 @@
 
 #include "cmSearchPath.h"
 #include "cmFindCommon.h"
+#include "cmAlgorithms.h"
 
 //----------------------------------------------------------------------------
 cmSearchPath::cmSearchPath(cmFindCommon* findCmd)
diff --git a/Source/cmSourceFileLocation.cxx b/Source/cmSourceFileLocation.cxx
index b81951d..9d67c1e 100644
--- a/Source/cmSourceFileLocation.cxx
+++ b/Source/cmSourceFileLocation.cxx
@@ -15,6 +15,7 @@
 #include "cmLocalGenerator.h"
 #include "cmGlobalGenerator.h"
 #include "cmSystemTools.h"
+#include "cmAlgorithms.h"
 
 #include "assert.h"
 
diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx
index e046bef..c2a190a 100644
--- a/Source/cmTarget.cxx
+++ b/Source/cmTarget.cxx
@@ -19,6 +19,7 @@
 #include "cmListFileCache.h"
 #include "cmGeneratorExpression.h"
 #include "cmGeneratorExpressionDAGChecker.h"
+#include "cmAlgorithms.h"
 #include <cmsys/RegularExpression.hxx>
 #include <map>
 #include <set>
diff --git a/Source/cmTargetCompileDefinitionsCommand.cxx b/Source/cmTargetCompileDefinitionsCommand.cxx
index dc19720..394a166 100644
--- a/Source/cmTargetCompileDefinitionsCommand.cxx
+++ b/Source/cmTargetCompileDefinitionsCommand.cxx
@@ -11,6 +11,8 @@
 ============================================================================*/
 #include "cmTargetCompileDefinitionsCommand.h"
 
+#include "cmAlgorithms.h"
+
 bool cmTargetCompileDefinitionsCommand
 ::InitialPass(std::vector<std::string> const& args, cmExecutionStatus &)
 {
diff --git a/Source/cmTargetCompileFeaturesCommand.cxx b/Source/cmTargetCompileFeaturesCommand.cxx
index 6ebc31e..823afa1 100644
--- a/Source/cmTargetCompileFeaturesCommand.cxx
+++ b/Source/cmTargetCompileFeaturesCommand.cxx
@@ -11,6 +11,8 @@
 ============================================================================*/
 #include "cmTargetCompileFeaturesCommand.h"
 
+#include "cmAlgorithms.h"
+
 bool cmTargetCompileFeaturesCommand::InitialPass(
   std::vector<std::string> const& args,
   cmExecutionStatus &)
diff --git a/Source/cmTargetCompileOptionsCommand.cxx b/Source/cmTargetCompileOptionsCommand.cxx
index 8c6fc06..a85153d 100644
--- a/Source/cmTargetCompileOptionsCommand.cxx
+++ b/Source/cmTargetCompileOptionsCommand.cxx
@@ -11,6 +11,8 @@
 ============================================================================*/
 #include "cmTargetCompileOptionsCommand.h"
 
+#include "cmAlgorithms.h"
+
 bool cmTargetCompileOptionsCommand
 ::InitialPass(std::vector<std::string> const& args, cmExecutionStatus &)
 {
diff --git a/Source/cmake.cxx b/Source/cmake.cxx
index 80e90a8..11196e4 100644
--- a/Source/cmake.cxx
+++ b/Source/cmake.cxx
@@ -20,6 +20,7 @@
 #include "cmSourceFile.h"
 #include "cmTest.h"
 #include "cmDocumentationFormatter.h"
+#include "cmAlgorithms.h"
 
 #if defined(CMAKE_BUILD_WITH_CMAKE)
 # include "cmGraphVizWriter.h"
diff --git a/Source/cmakemain.cxx b/Source/cmakemain.cxx
index e0bd55b..ac73ad0 100644
--- a/Source/cmakemain.cxx
+++ b/Source/cmakemain.cxx
@@ -24,6 +24,7 @@
 #include "cmGlobalGenerator.h"
 #include "cmLocalGenerator.h"
 #include "cmMakefile.h"
+#include "cmAlgorithms.h"
 #include <cmsys/Encoding.hxx>
 
 #ifdef CMAKE_BUILD_WITH_CMAKE
diff --git a/Source/cmcmd.cxx b/Source/cmcmd.cxx
index 7d67bd8..9f2ea46 100644
--- a/Source/cmcmd.cxx
+++ b/Source/cmcmd.cxx
@@ -15,6 +15,7 @@
 #include "cmGlobalGenerator.h"
 #include "cmQtAutoGenerators.h"
 #include "cmVersion.h"
+#include "cmAlgorithms.h"
 
 #if defined(CMAKE_BUILD_WITH_CMAKE)
 # include "cmDependsFortran.h" // For -E cmake_copy_f90_mod callback.

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

Summary of changes:
 Source/CMakeVersion.cmake                    |    2 +-
 Source/CTest/cmCTestBuildHandler.cxx         |    1 +
 Source/CursesDialog/cmCursesMainForm.cxx     |    1 +
 Source/cmAlgorithms.h                        |   44 ++++++++++++++++++++++----
 Source/cmCTest.cxx                           |    1 +
 Source/cmComputeLinkDepends.cxx              |    1 +
 Source/cmComputeLinkInformation.cxx          |    1 +
 Source/cmCoreTryCompile.cxx                  |    1 +
 Source/cmDependsC.cxx                        |    1 +
 Source/cmDocumentation.cxx                   |    1 +
 Source/cmExportFileGenerator.cxx             |    1 +
 Source/cmExportInstallFileGenerator.cxx      |    1 +
 Source/cmFileCommand.cxx                     |    1 +
 Source/cmFindBase.cxx                        |    2 ++
 Source/cmFindPackageCommand.cxx              |    1 +
 Source/cmGeneratorExpression.cxx             |    1 +
 Source/cmGeneratorExpressionDAGChecker.cxx   |    1 +
 Source/cmGeneratorExpressionEvaluator.cxx    |    1 +
 Source/cmGeneratorTarget.cxx                 |    1 +
 Source/cmGetCMakePropertyCommand.cxx         |    1 +
 Source/cmGlobalGenerator.cxx                 |    1 +
 Source/cmGlobalUnixMakefileGenerator3.cxx    |    1 +
 Source/cmInstalledFile.cxx                   |   11 +++++++
 Source/cmInstalledFile.h                     |   12 ++-----
 Source/cmListCommand.cxx                     |    1 +
 Source/cmLocalGenerator.cxx                  |    1 +
 Source/cmLocalUnixMakefileGenerator3.cxx     |    1 +
 Source/cmMacroCommand.cxx                    |    1 +
 Source/cmMakeDepend.cxx                      |    1 +
 Source/cmMakefile.cxx                        |    1 +
 Source/cmNinjaNormalTargetGenerator.cxx      |    1 +
 Source/cmOrderDirectories.cxx                |    1 +
 Source/cmOutputRequiredFilesCommand.cxx      |    1 +
 Source/cmPolicies.cxx                        |    1 +
 Source/cmQtAutoGenerators.cxx                |    1 +
 Source/cmSearchPath.cxx                      |    1 +
 Source/cmSourceFileLocation.cxx              |    1 +
 Source/cmTarget.cxx                          |    1 +
 Source/cmTargetCompileDefinitionsCommand.cxx |    2 ++
 Source/cmTargetCompileFeaturesCommand.cxx    |    2 ++
 Source/cmTargetCompileOptionsCommand.cxx     |    2 ++
 Source/cmake.cxx                             |    1 +
 Source/cmakemain.cxx                         |    1 +
 Source/cmcmd.cxx                             |    1 +
 44 files changed, 95 insertions(+), 18 deletions(-)


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list