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  e1f3f613573bc2a000ea94485be12dcfed588761 (commit)
       via  38491644540a203ee6465dd0bf179afb426aa835 (commit)
      from  bf1c52ecfbd2d5abd1ca6e761c284aa9fdd3cc48 (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 -----------------------------------------------------------------
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e1f3f613573bc2a000ea94485be12dcfed588761
commit e1f3f613573bc2a000ea94485be12dcfed588761
Merge: bf1c52e 3849164
Author:     Brad King <brad.k...@kitware.com>
AuthorDate: Thu Aug 25 09:35:05 2016 -0400
Commit:     CMake Topic Stage <kwro...@kitware.com>
CommitDate: Thu Aug 25 09:35:05 2016 -0400

    Merge topic 'include-what-you-use' into next
    
    38491644 CTest: fix include-what-you-use violations


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=38491644540a203ee6465dd0bf179afb426aa835
commit 38491644540a203ee6465dd0bf179afb426aa835
Author:     Daniel Pfeifer <dan...@pfeifer-mail.de>
AuthorDate: Wed Aug 24 22:01:40 2016 +0200
Commit:     Brad King <brad.k...@kitware.com>
CommitDate: Thu Aug 25 09:34:37 2016 -0400

    CTest: fix include-what-you-use violations

diff --git a/Source/CTest/cmCTestBZR.cxx b/Source/CTest/cmCTestBZR.cxx
index 7baf7a3..413cada 100644
--- a/Source/CTest/cmCTestBZR.cxx
+++ b/Source/CTest/cmCTestBZR.cxx
@@ -12,12 +12,18 @@
 #include "cmCTestBZR.h"
 
 #include "cmCTest.h"
+#include "cmCTestVC.h"
+#include "cmProcessTools.h"
 #include "cmSystemTools.h"
 #include "cmXMLParser.h"
 
-#include <cmsys/RegularExpression.hxx>
-
 #include <cm_expat.h>
+#include <cmsys/RegularExpression.hxx>
+#include <list>
+#include <map>
+#include <ostream>
+#include <stdlib.h>
+#include <vector>
 
 extern "C" int cmBZRXMLParserUnknownEncodingHandler(void* /*unused*/,
                                                     const XML_Char* name,
diff --git a/Source/CTest/cmCTestBZR.h b/Source/CTest/cmCTestBZR.h
index 0f05d38..e2ee8b7 100644
--- a/Source/CTest/cmCTestBZR.h
+++ b/Source/CTest/cmCTestBZR.h
@@ -12,8 +12,15 @@
 #ifndef cmCTestBZR_h
 #define cmCTestBZR_h
 
+#include <cmConfigure.h>
+
 #include "cmCTestGlobalVC.h"
 
+#include <iosfwd>
+#include <string>
+
+class cmCTest;
+
 /** \class cmCTestBZR
  * \brief Interaction with bzr command-line tool
  *
@@ -41,13 +48,14 @@ private:
 
   // Parsing helper classes.
   class InfoParser;
-  class RevnoParser;
   class LogParser;
-  class UpdateParser;
+  class RevnoParser;
   class StatusParser;
+  class UpdateParser;
+
   friend class InfoParser;
-  friend class RevnoParser;
   friend class LogParser;
+  friend class RevnoParser;
   friend class UpdateParser;
   friend class StatusParser;
 };
diff --git a/Source/CTest/cmCTestBatchTestHandler.cxx 
b/Source/CTest/cmCTestBatchTestHandler.cxx
index 70f84cb..bf4ead4 100644
--- a/Source/CTest/cmCTestBatchTestHandler.cxx
+++ b/Source/CTest/cmCTestBatchTestHandler.cxx
@@ -13,10 +13,14 @@
 #include "cmCTestBatchTestHandler.h"
 
 #include "cmCTest.h"
+#include "cmCTestMultiProcessHandler.h"
+#include "cmCTestTestHandler.h"
 #include "cmProcess.h"
-#include "cmStandardIncludes.h"
 #include "cmSystemTools.h"
-#include <stdlib.h>
+
+#include <map>
+#include <utility>
+#include <vector>
 
 cmCTestBatchTestHandler::~cmCTestBatchTestHandler()
 {
diff --git a/Source/CTest/cmCTestBatchTestHandler.h 
b/Source/CTest/cmCTestBatchTestHandler.h
index 17cc234..da10824 100644
--- a/Source/CTest/cmCTestBatchTestHandler.h
+++ b/Source/CTest/cmCTestBatchTestHandler.h
@@ -13,12 +13,11 @@
 #ifndef cmCTestBatchTestHandler_h
 #define cmCTestBatchTestHandler_h
 
-#include <cmStandardIncludes.h>
+#include <cmConfigure.h>
 
 #include <cmCTestMultiProcessHandler.h>
-#include <cmCTestRunTest.h>
-#include <cmCTestTestHandler.h>
 #include <cmsys/FStream.hxx>
+#include <string>
 
 /** \class cmCTestBatchTestHandler
  * \brief run parallel ctest
diff --git a/Source/CTest/cmCTestBuildAndTestHandler.cxx 
b/Source/CTest/cmCTestBuildAndTestHandler.cxx
index 9dab98a..9da2848 100644
--- a/Source/CTest/cmCTestBuildAndTestHandler.cxx
+++ b/Source/CTest/cmCTestBuildAndTestHandler.cxx
@@ -17,7 +17,9 @@
 #include "cmGlobalGenerator.h"
 #include "cmSystemTools.h"
 #include "cmake.h"
+
 #include <cmsys/Process.h>
+#include <stdlib.h>
 
 cmCTestBuildAndTestHandler::cmCTestBuildAndTestHandler()
 {
diff --git a/Source/CTest/cmCTestBuildAndTestHandler.h 
b/Source/CTest/cmCTestBuildAndTestHandler.h
index 2aa90a4..f917fb0 100644
--- a/Source/CTest/cmCTestBuildAndTestHandler.h
+++ b/Source/CTest/cmCTestBuildAndTestHandler.h
@@ -13,8 +13,15 @@
 #ifndef cmCTestBuildAndTestHandler_h
 #define cmCTestBuildAndTestHandler_h
 
+#include <cmConfigure.h>
+
 #include "cmCTestGenericHandler.h"
-#include "cmListFileCache.h"
+#include "cmTypeMacro.h"
+
+#include <sstream>
+#include <stddef.h>
+#include <string>
+#include <vector>
 
 class cmake;
 
diff --git a/Source/CTest/cmCTestBuildCommand.cxx 
b/Source/CTest/cmCTestBuildCommand.cxx
index 408a1a8..91603d7 100644
--- a/Source/CTest/cmCTestBuildCommand.cxx
+++ b/Source/CTest/cmCTestBuildCommand.cxx
@@ -15,8 +15,15 @@
 #include "cmCTestBuildHandler.h"
 #include "cmCTestGenericHandler.h"
 #include "cmGlobalGenerator.h"
+#include "cmMakefile.h"
+#include "cmSystemTools.h"
 #include "cmake.h"
 
+#include <sstream>
+#include <string.h>
+
+class cmExecutionStatus;
+
 cmCTestBuildCommand::cmCTestBuildCommand()
 {
   this->GlobalGenerator = CM_NULLPTR;
diff --git a/Source/CTest/cmCTestBuildCommand.h 
b/Source/CTest/cmCTestBuildCommand.h
index 92ae216..393c66e 100644
--- a/Source/CTest/cmCTestBuildCommand.h
+++ b/Source/CTest/cmCTestBuildCommand.h
@@ -12,10 +12,19 @@
 #ifndef cmCTestBuildCommand_h
 #define cmCTestBuildCommand_h
 
+#include <cmConfigure.h>
+
 #include "cmCTestHandlerCommand.h"
+#include "cmTypeMacro.h"
+
+#include <string>
+#include <vector>
 
-class cmGlobalGenerator;
 class cmCTestBuildHandler;
+class cmCTestGenericHandler;
+class cmCommand;
+class cmExecutionStatus;
+class cmGlobalGenerator;
 
 /** \class cmCTestBuild
  * \brief Run a ctest script
diff --git a/Source/CTest/cmCTestBuildHandler.cxx 
b/Source/CTest/cmCTestBuildHandler.cxx
index 230e8c5..cdf292c 100644
--- a/Source/CTest/cmCTestBuildHandler.cxx
+++ b/Source/CTest/cmCTestBuildHandler.cxx
@@ -16,25 +16,16 @@
 #include "cmCTest.h"
 #include "cmFileTimeComparison.h"
 #include "cmGeneratedFileStream.h"
-#include "cmGlobalGenerator.h"
 #include "cmMakefile.h"
+#include "cmSystemTools.h"
 #include "cmXMLWriter.h"
-#include "cmake.h"
 
-//#include <cmsys/RegularExpression.hxx>
 #include <cmsys/Directory.hxx>
 #include <cmsys/FStream.hxx>
 #include <cmsys/Process.h>
-
-// used for sleep
-#ifdef _WIN32
-#include "windows.h"
-#endif
-
-#include <float.h>
-#include <math.h>
+#include <set>
 #include <stdlib.h>
-#include <time.h>
+#include <string.h>
 
 static const char* cmCTestErrorMatches[] = {
   "^[Bb]us [Ee]rror",
diff --git a/Source/CTest/cmCTestBuildHandler.h 
b/Source/CTest/cmCTestBuildHandler.h
index 8cc5f01..764dfed 100644
--- a/Source/CTest/cmCTestBuildHandler.h
+++ b/Source/CTest/cmCTestBuildHandler.h
@@ -13,13 +13,17 @@
 #ifndef cmCTestBuildHandler_h
 #define cmCTestBuildHandler_h
 
-#include "cmCTestGenericHandler.h"
+#include <cmConfigure.h>
 
-#include "cmListFileCache.h"
+#include "cmCTestGenericHandler.h"
+#include "cmTypeMacro.h"
 
 #include <cmsys/RegularExpression.hxx>
-
 #include <deque>
+#include <iosfwd>
+#include <stddef.h>
+#include <string>
+#include <vector>
 
 class cmMakefile;
 class cmXMLWriter;
@@ -148,6 +152,7 @@ private:
   bool UseCTestLaunch;
   std::string CTestLaunchDir;
   class LaunchHelper;
+
   friend class LaunchHelper;
   class FragmentCompare;
 };
diff --git a/Source/CTest/cmCTestCVS.cxx b/Source/CTest/cmCTestCVS.cxx
index fb96308..64054d3 100644
--- a/Source/CTest/cmCTestCVS.cxx
+++ b/Source/CTest/cmCTestCVS.cxx
@@ -12,11 +12,13 @@
 #include "cmCTestCVS.h"
 
 #include "cmCTest.h"
+#include "cmProcessTools.h"
 #include "cmSystemTools.h"
 #include "cmXMLWriter.h"
 
 #include <cmsys/FStream.hxx>
 #include <cmsys/RegularExpression.hxx>
+#include <utility>
 
 cmCTestCVS::cmCTestCVS(cmCTest* ct, std::ostream& log)
   : cmCTestVC(ct, log)
diff --git a/Source/CTest/cmCTestCVS.h b/Source/CTest/cmCTestCVS.h
index 67d162d..c1450b1 100644
--- a/Source/CTest/cmCTestCVS.h
+++ b/Source/CTest/cmCTestCVS.h
@@ -12,11 +12,18 @@
 #ifndef cmCTestCVS_h
 #define cmCTestCVS_h
 
+#include <cmConfigure.h>
+
 #include "cmCTestVC.h"
 
+#include <iosfwd>
 #include <map>
+#include <string>
 #include <vector>
 
+class cmCTest;
+class cmXMLWriter;
+
 /** \class cmCTestCVS
  * \brief Interaction with cvs command-line tool
  *
@@ -47,10 +54,11 @@ private:
                          Directory const& dir);
 
   // Parsing helper classes.
-  class UpdateParser;
   class LogParser;
-  friend class UpdateParser;
+  class UpdateParser;
+
   friend class LogParser;
+  friend class UpdateParser;
 };
 
 #endif
diff --git a/Source/CTest/cmCTestConfigureCommand.cxx 
b/Source/CTest/cmCTestConfigureCommand.cxx
index a823704..98e38d3 100644
--- a/Source/CTest/cmCTestConfigureCommand.cxx
+++ b/Source/CTest/cmCTestConfigureCommand.cxx
@@ -14,6 +14,13 @@
 #include "cmCTest.h"
 #include "cmCTestGenericHandler.h"
 #include "cmGlobalGenerator.h"
+#include "cmMakefile.h"
+#include "cmSystemTools.h"
+#include "cmake.h"
+
+#include <sstream>
+#include <string.h>
+#include <vector>
 
 cmCTestConfigureCommand::cmCTestConfigureCommand()
 {
diff --git a/Source/CTest/cmCTestConfigureCommand.h 
b/Source/CTest/cmCTestConfigureCommand.h
index a97f9f0..9027b6b 100644
--- a/Source/CTest/cmCTestConfigureCommand.h
+++ b/Source/CTest/cmCTestConfigureCommand.h
@@ -12,7 +12,15 @@
 #ifndef cmCTestConfigureCommand_h
 #define cmCTestConfigureCommand_h
 
+#include <cmConfigure.h>
+
 #include "cmCTestHandlerCommand.h"
+#include "cmTypeMacro.h"
+
+#include <string>
+
+class cmCTestGenericHandler;
+class cmCommand;
 
 /** \class cmCTestConfigure
  * \brief Run a ctest script
diff --git a/Source/CTest/cmCTestConfigureHandler.cxx 
b/Source/CTest/cmCTestConfigureHandler.cxx
index b99455f..78fa910 100644
--- a/Source/CTest/cmCTestConfigureHandler.cxx
+++ b/Source/CTest/cmCTestConfigureHandler.cxx
@@ -14,9 +14,11 @@
 
 #include "cmCTest.h"
 #include "cmGeneratedFileStream.h"
+#include "cmSystemTools.h"
 #include "cmXMLWriter.h"
-#include "cmake.h"
-#include <cmsys/Process.h>
+
+#include <ostream>
+#include <string>
 
 cmCTestConfigureHandler::cmCTestConfigureHandler()
 {
diff --git a/Source/CTest/cmCTestConfigureHandler.h 
b/Source/CTest/cmCTestConfigureHandler.h
index a7de939..a7d2167 100644
--- a/Source/CTest/cmCTestConfigureHandler.h
+++ b/Source/CTest/cmCTestConfigureHandler.h
@@ -13,9 +13,10 @@
 #ifndef cmCTestConfigureHandler_h
 #define cmCTestConfigureHandler_h
 
-#include "cmCTestGenericHandler.h"
+#include <cmConfigure.h>
 
-#include "cmListFileCache.h"
+#include "cmCTestGenericHandler.h"
+#include "cmTypeMacro.h"
 
 /** \class cmCTestConfigureHandler
  * \brief A class that handles ctest -S invocations
diff --git a/Source/CTest/cmCTestCoverageCommand.cxx 
b/Source/CTest/cmCTestCoverageCommand.cxx
index 86e3ce4..7a4271e 100644
--- a/Source/CTest/cmCTestCoverageCommand.cxx
+++ b/Source/CTest/cmCTestCoverageCommand.cxx
@@ -14,6 +14,8 @@
 #include "cmCTest.h"
 #include "cmCTestCoverageHandler.h"
 
+class cmCTestGenericHandler;
+
 cmCTestCoverageCommand::cmCTestCoverageCommand()
 {
   this->LabelsMentioned = false;
diff --git a/Source/CTest/cmCTestCoverageCommand.h 
b/Source/CTest/cmCTestCoverageCommand.h
index ffd5fec..b9ef53d 100644
--- a/Source/CTest/cmCTestCoverageCommand.h
+++ b/Source/CTest/cmCTestCoverageCommand.h
@@ -12,7 +12,16 @@
 #ifndef cmCTestCoverageCommand_h
 #define cmCTestCoverageCommand_h
 
+#include <cmConfigure.h>
+
 #include "cmCTestHandlerCommand.h"
+#include "cmTypeMacro.h"
+
+#include <set>
+#include <string>
+
+class cmCTestGenericHandler;
+class cmCommand;
 
 /** \class cmCTestCoverage
  * \brief Run a ctest script
diff --git a/Source/CTest/cmCTestCoverageHandler.cxx 
b/Source/CTest/cmCTestCoverageHandler.cxx
index dd6eb3a..2eb64bf 100644
--- a/Source/CTest/cmCTestCoverageHandler.cxx
+++ b/Source/CTest/cmCTestCoverageHandler.cxx
@@ -13,7 +13,6 @@
 
 #include "cmCTest.h"
 #include "cmGeneratedFileStream.h"
-#include "cmMakefile.h"
 #include "cmParseBlanketJSCoverage.h"
 #include "cmParseCacheCoverage.h"
 #include "cmParseCoberturaCoverage.h"
@@ -25,14 +24,19 @@
 #include "cmXMLWriter.h"
 #include "cmake.h"
 
+#include <algorithm>
 #include <cmsys/FStream.hxx>
 #include <cmsys/Glob.hxx>
 #include <cmsys/Process.h>
 #include <cmsys/RegularExpression.hxx>
-
-#include <float.h>
-#include <math.h>
+#include <iomanip>
+#include <iterator>
+#include <sstream>
+#include <stdio.h>
 #include <stdlib.h>
+#include <utility>
+
+class cmMakefile;
 
 #define SAFEDIV(x, y) (((y) != 0) ? ((x) / (y)) : (0))
 
diff --git a/Source/CTest/cmCTestCoverageHandler.h 
b/Source/CTest/cmCTestCoverageHandler.h
index 60fea48..12a7e19 100644
--- a/Source/CTest/cmCTestCoverageHandler.h
+++ b/Source/CTest/cmCTestCoverageHandler.h
@@ -13,14 +13,22 @@
 #ifndef cmCTestCoverageHandler_h
 #define cmCTestCoverageHandler_h
 
-#include "cmCTestGenericHandler.h"
+#include <cmConfigure.h>
 
-#include "cmListFileCache.h"
+#include "cmCTestGenericHandler.h"
+#include "cmTypeMacro.h"
 
 #include <cmsys/RegularExpression.hxx>
+#include <iosfwd>
+#include <map>
+#include <set>
+#include <string>
+#include <vector>
 
 class cmGeneratedFileStream;
+class cmMakefile;
 class cmXMLWriter;
+
 class cmCTestCoverageHandlerContainer
 {
 public:
diff --git a/Source/CTest/cmCTestCurl.cxx b/Source/CTest/cmCTestCurl.cxx
index 6910f6f..941df29 100644
--- a/Source/CTest/cmCTestCurl.cxx
+++ b/Source/CTest/cmCTestCurl.cxx
@@ -14,6 +14,10 @@
 #include "cmCTest.h"
 #include "cmSystemTools.h"
 
+#include <cmConfigure.h>
+#include <ostream>
+#include <stdio.h>
+
 cmCTestCurl::cmCTestCurl(cmCTest* ctest)
 {
   this->CTest = ctest;
diff --git a/Source/CTest/cmCTestCurl.h b/Source/CTest/cmCTestCurl.h
index 82601e3..c91c88c 100644
--- a/Source/CTest/cmCTestCurl.h
+++ b/Source/CTest/cmCTestCurl.h
@@ -12,9 +12,11 @@
 #ifndef cmCTestCurl_h
 #define cmCTestCurl_h
 
-#include "cmStandardIncludes.h"
+#include <cmConfigure.h> // IWYU pragma: keep
 
-#include "cm_curl.h"
+#include <cm_curl.h>
+#include <string>
+#include <vector>
 
 class cmCTest;
 
diff --git a/Source/CTest/cmCTestEmptyBinaryDirectoryCommand.cxx 
b/Source/CTest/cmCTestEmptyBinaryDirectoryCommand.cxx
index 09ae1fc..cc0b013 100644
--- a/Source/CTest/cmCTestEmptyBinaryDirectoryCommand.cxx
+++ b/Source/CTest/cmCTestEmptyBinaryDirectoryCommand.cxx
@@ -13,6 +13,10 @@
 
 #include "cmCTestScriptHandler.h"
 
+#include <sstream>
+
+class cmExecutionStatus;
+
 bool cmCTestEmptyBinaryDirectoryCommand::InitialPass(
   std::vector<std::string> const& args, cmExecutionStatus& /*unused*/)
 {
diff --git a/Source/CTest/cmCTestEmptyBinaryDirectoryCommand.h 
b/Source/CTest/cmCTestEmptyBinaryDirectoryCommand.h
index acacbcb..a64e55a 100644
--- a/Source/CTest/cmCTestEmptyBinaryDirectoryCommand.h
+++ b/Source/CTest/cmCTestEmptyBinaryDirectoryCommand.h
@@ -12,7 +12,16 @@
 #ifndef cmCTestEmptyBinaryDirectoryCommand_h
 #define cmCTestEmptyBinaryDirectoryCommand_h
 
+#include <cmConfigure.h>
+
 #include "cmCTestCommand.h"
+#include "cmTypeMacro.h"
+
+#include <string>
+#include <vector>
+
+class cmCommand;
+class cmExecutionStatus;
 
 /** \class cmCTestEmptyBinaryDirectory
  * \brief Run a ctest script
diff --git a/Source/CTest/cmCTestGIT.cxx b/Source/CTest/cmCTestGIT.cxx
index 61dbe33..cec871f 100644
--- a/Source/CTest/cmCTestGIT.cxx
+++ b/Source/CTest/cmCTestGIT.cxx
@@ -13,15 +13,17 @@
 
 #include "cmAlgorithms.h"
 #include "cmCTest.h"
+#include "cmCTestVC.h"
+#include "cmProcessTools.h"
 #include "cmSystemTools.h"
 
 #include <cmsys/FStream.hxx>
 #include <cmsys/Process.h>
-#include <cmsys/RegularExpression.hxx>
-
 #include <ctype.h>
-#include <sys/types.h>
+#include <stdio.h>
+#include <stdlib.h>
 #include <time.h>
+#include <vector>
 
 static unsigned int cmCTestGITVersion(unsigned int epic, unsigned int major,
                                       unsigned int minor, unsigned int fix)
diff --git a/Source/CTest/cmCTestGIT.h b/Source/CTest/cmCTestGIT.h
index 85298cb..d61d155 100644
--- a/Source/CTest/cmCTestGIT.h
+++ b/Source/CTest/cmCTestGIT.h
@@ -12,8 +12,15 @@
 #ifndef cmCTestGIT_h
 #define cmCTestGIT_h
 
+#include <cmConfigure.h>
+
 #include "cmCTestGlobalVC.h"
 
+#include <iosfwd>
+#include <string>
+
+class cmCTest;
+
 /** \class cmCTestGIT
  * \brief Interaction with git command-line tool
  *
@@ -47,12 +54,13 @@ private:
   // "public" needed by older Sun compilers
 public:
   // Parsing helper classes.
-  class OneLineParser;
-  class DiffParser;
   class CommitParser;
-  friend class OneLineParser;
-  friend class DiffParser;
+  class DiffParser;
+  class OneLineParser;
+
   friend class CommitParser;
+  friend class DiffParser;
+  friend class OneLineParser;
 };
 
 #endif
diff --git a/Source/CTest/cmCTestGenericHandler.cxx 
b/Source/CTest/cmCTestGenericHandler.cxx
index 7755ee9..aab1781 100644
--- a/Source/CTest/cmCTestGenericHandler.cxx
+++ b/Source/CTest/cmCTestGenericHandler.cxx
@@ -12,9 +12,11 @@
 
 #include "cmCTestGenericHandler.h"
 
+#include "cmCTest.h"
 #include "cmSystemTools.h"
 
-#include "cmCTest.h"
+#include <sstream>
+#include <utility>
 
 cmCTestGenericHandler::cmCTestGenericHandler()
 {
diff --git a/Source/CTest/cmCTestGenericHandler.h 
b/Source/CTest/cmCTestGenericHandler.h
index 9949c3a..88905ed 100644
--- a/Source/CTest/cmCTestGenericHandler.h
+++ b/Source/CTest/cmCTestGenericHandler.h
@@ -13,14 +13,20 @@
 #ifndef cmCTestGenericHandler_h
 #define cmCTestGenericHandler_h
 
-#include "cmObject.h"
+#include <cmConfigure.h>
 
 #include "cmCTest.h"
-#include "cmSystemTools.h" //OutputOption
+#include "cmObject.h"
+#include "cmSystemTools.h"
+
+#include <map>
+#include <stddef.h>
+#include <string>
+#include <vector>
 
-class cmMakefile;
 class cmCTestCommand;
 class cmGeneratedFileStream;
+class cmMakefile;
 
 /** \class cmCTestGenericHandler
  * \brief A superclass of all CTest Handlers
diff --git a/Source/CTest/cmCTestGlobalVC.cxx b/Source/CTest/cmCTestGlobalVC.cxx
index 0c7ca4d..c575853 100644
--- a/Source/CTest/cmCTestGlobalVC.cxx
+++ b/Source/CTest/cmCTestGlobalVC.cxx
@@ -15,7 +15,8 @@
 #include "cmSystemTools.h"
 #include "cmXMLWriter.h"
 
-#include <cmsys/RegularExpression.hxx>
+#include <ostream>
+#include <utility>
 
 cmCTestGlobalVC::cmCTestGlobalVC(cmCTest* ct, std::ostream& log)
   : cmCTestVC(ct, log)
diff --git a/Source/CTest/cmCTestGlobalVC.h b/Source/CTest/cmCTestGlobalVC.h
index d42d2f2..b48b835 100644
--- a/Source/CTest/cmCTestGlobalVC.h
+++ b/Source/CTest/cmCTestGlobalVC.h
@@ -12,12 +12,19 @@
 #ifndef cmCTestGlobalVC_h
 #define cmCTestGlobalVC_h
 
+#include <cmConfigure.h>
+
 #include "cmCTestVC.h"
 
+#include <iosfwd>
 #include <list>
 #include <map>
+#include <string>
 #include <vector>
 
+class cmCTest;
+class cmXMLWriter;
+
 /** \class cmCTestGlobalVC
  * \brief Base class for handling globally-versioned trees
  *
diff --git a/Source/CTest/cmCTestHG.cxx b/Source/CTest/cmCTestHG.cxx
index 3e62a1a..c576cf0 100644
--- a/Source/CTest/cmCTestHG.cxx
+++ b/Source/CTest/cmCTestHG.cxx
@@ -12,10 +12,14 @@
 #include "cmCTestHG.h"
 
 #include "cmCTest.h"
+#include "cmCTestVC.h"
+#include "cmProcessTools.h"
 #include "cmSystemTools.h"
 #include "cmXMLParser.h"
 
 #include <cmsys/RegularExpression.hxx>
+#include <ostream>
+#include <vector>
 
 cmCTestHG::cmCTestHG(cmCTest* ct, std::ostream& log)
   : cmCTestGlobalVC(ct, log)
diff --git a/Source/CTest/cmCTestHG.h b/Source/CTest/cmCTestHG.h
index c4ce08c..08b479c 100644
--- a/Source/CTest/cmCTestHG.h
+++ b/Source/CTest/cmCTestHG.h
@@ -12,8 +12,15 @@
 #ifndef cmCTestHG_h
 #define cmCTestHG_h
 
+#include <cmConfigure.h>
+
 #include "cmCTestGlobalVC.h"
 
+#include <iosfwd>
+#include <string>
+
+class cmCTest;
+
 /** \class cmCTestHG
  * \brief Interaction with Mercurial command-line tool
  *
@@ -37,11 +44,12 @@ private:
 
   // Parsing helper classes.
   class IdentifyParser;
-  class StatusParser;
   class LogParser;
+  class StatusParser;
+
   friend class IdentifyParser;
-  friend class StatusParser;
   friend class LogParser;
+  friend class StatusParser;
 };
 
 #endif
diff --git a/Source/CTest/cmCTestHandlerCommand.cxx 
b/Source/CTest/cmCTestHandlerCommand.cxx
index 325f8a3..e8e2956 100644
--- a/Source/CTest/cmCTestHandlerCommand.cxx
+++ b/Source/CTest/cmCTestHandlerCommand.cxx
@@ -13,6 +13,14 @@
 
 #include "cmCTest.h"
 #include "cmCTestGenericHandler.h"
+#include "cmMakefile.h"
+#include "cmSystemTools.h"
+#include "cmake.h"
+
+#include <sstream>
+#include <stdlib.h>
+
+class cmExecutionStatus;
 
 cmCTestHandlerCommand::cmCTestHandlerCommand()
 {
diff --git a/Source/CTest/cmCTestHandlerCommand.h 
b/Source/CTest/cmCTestHandlerCommand.h
index 0468bbc..7c9fd50 100644
--- a/Source/CTest/cmCTestHandlerCommand.h
+++ b/Source/CTest/cmCTestHandlerCommand.h
@@ -12,9 +12,17 @@
 #ifndef cmCTestHandlerCommand_h
 #define cmCTestHandlerCommand_h
 
+#include <cmConfigure.h>
+
 #include "cmCTestCommand.h"
+#include "cmTypeMacro.h"
+
+#include <stddef.h>
+#include <string>
+#include <vector>
 
 class cmCTestGenericHandler;
+class cmExecutionStatus;
 
 /** \class cmCTestHandler
  * \brief Run a ctest script
diff --git a/Source/CTest/cmCTestLaunch.cxx b/Source/CTest/cmCTestLaunch.cxx
index fedcb1f..333f4a0 100644
--- a/Source/CTest/cmCTestLaunch.cxx
+++ b/Source/CTest/cmCTestLaunch.cxx
@@ -11,15 +11,24 @@
 ============================================================================*/
 #include "cmCTestLaunch.h"
 
+#include <cmConfigure.h>
+
 #include "cmGeneratedFileStream.h"
+#include "cmGlobalGenerator.h"
+#include "cmMakefile.h"
+#include "cmState.h"
 #include "cmSystemTools.h"
 #include "cmXMLWriter.h"
 #include "cmake.h"
 
+#include <cm_auto_ptr.hxx>
 #include <cmsys/FStream.hxx>
 #include <cmsys/MD5.h>
 #include <cmsys/Process.h>
 #include <cmsys/RegularExpression.hxx>
+#include <iostream>
+#include <stdlib.h>
+#include <string.h>
 
 #ifdef _WIN32
 #include <fcntl.h> // for _O_BINARY
@@ -608,10 +617,6 @@ int cmCTestLaunch::Main(int argc, const char* const argv[])
   return self.Run();
 }
 
-#include "cmGlobalGenerator.h"
-#include "cmMakefile.h"
-#include "cmake.h"
-#include <cm_auto_ptr.hxx>
 void cmCTestLaunch::LoadConfig()
 {
   cmake cm;
diff --git a/Source/CTest/cmCTestLaunch.h b/Source/CTest/cmCTestLaunch.h
index cbcc9ec..5f465ac 100644
--- a/Source/CTest/cmCTestLaunch.h
+++ b/Source/CTest/cmCTestLaunch.h
@@ -12,9 +12,12 @@
 #ifndef cmCTestLaunch_h
 #define cmCTestLaunch_h
 
-#include "cmStandardIncludes.h"
+#include <cmConfigure.h> // IWYU pragma: keep
 
 #include <cmsys/RegularExpression.hxx>
+#include <set>
+#include <string>
+#include <vector>
 
 class cmXMLWriter;
 
diff --git a/Source/CTest/cmCTestMemCheckCommand.h 
b/Source/CTest/cmCTestMemCheckCommand.h
index 2ba33ae..69f77af 100644
--- a/Source/CTest/cmCTestMemCheckCommand.h
+++ b/Source/CTest/cmCTestMemCheckCommand.h
@@ -12,9 +12,15 @@
 #ifndef cmCTestMemCheckCommand_h
 #define cmCTestMemCheckCommand_h
 
+#include <cmConfigure.h>
+
 #include "cmCTestTestCommand.h"
+#include "cmTypeMacro.h"
+
+#include <string>
 
 class cmCTestGenericHandler;
+class cmCommand;
 
 /** \class cmCTestMemCheck
  * \brief Run a ctest script
diff --git a/Source/CTest/cmCTestMemCheckHandler.cxx 
b/Source/CTest/cmCTestMemCheckHandler.cxx
index 7d0715f..7a975dd 100644
--- a/Source/CTest/cmCTestMemCheckHandler.cxx
+++ b/Source/CTest/cmCTestMemCheckHandler.cxx
@@ -13,20 +13,16 @@
 #include "cmCTestMemCheckHandler.h"
 
 #include "cmCTest.h"
-#include "cmGeneratedFileStream.h"
-#include "cmMakefile.h"
+#include "cmSystemTools.h"
 #include "cmXMLParser.h"
 #include "cmXMLWriter.h"
-#include "cmake.h"
-#include <cmsys/Base64.h>
+
 #include <cmsys/FStream.hxx>
 #include <cmsys/Glob.hxx>
-#include <cmsys/Process.h>
 #include <cmsys/RegularExpression.hxx>
-
-#include <float.h>
-#include <math.h>
-#include <stdlib.h>
+#include <iostream>
+#include <sstream>
+#include <string.h>
 
 struct CatToErrorType
 {
diff --git a/Source/CTest/cmCTestMemCheckHandler.h 
b/Source/CTest/cmCTestMemCheckHandler.h
index a005d54..a4ff684 100644
--- a/Source/CTest/cmCTestMemCheckHandler.h
+++ b/Source/CTest/cmCTestMemCheckHandler.h
@@ -13,9 +13,11 @@
 #ifndef cmCTestMemCheckHandler_h
 #define cmCTestMemCheckHandler_h
 
+#include <cmConfigure.h>
+
 #include "cmCTestTestHandler.h"
+#include "cmTypeMacro.h"
 
-#include "cmListFileCache.h"
 #include <string>
 #include <vector>
 
diff --git a/Source/CTest/cmCTestMultiProcessHandler.cxx 
b/Source/CTest/cmCTestMultiProcessHandler.cxx
index 2632870..d65c915 100644
--- a/Source/CTest/cmCTestMultiProcessHandler.cxx
+++ b/Source/CTest/cmCTestMultiProcessHandler.cxx
@@ -12,17 +12,22 @@
 #include "cmCTestMultiProcessHandler.h"
 
 #include "cmCTest.h"
+#include "cmCTestRunTest.h"
 #include "cmCTestScriptHandler.h"
-#include "cmProcess.h"
-#include "cmStandardIncludes.h"
+#include "cmCTestTestHandler.h"
 #include "cmSystemTools.h"
+
+#include <algorithm>
 #include <cmsys/FStream.hxx>
+#include <cmsys/String.hxx>
 #include <cmsys/SystemInformation.hxx>
-#include <float.h>
+#include <iomanip>
 #include <list>
 #include <math.h>
+#include <sstream>
 #include <stack>
 #include <stdlib.h>
+#include <utility>
 
 class TestComparator
 {
diff --git a/Source/CTest/cmCTestMultiProcessHandler.h 
b/Source/CTest/cmCTestMultiProcessHandler.h
index 9ec1528..08068c5 100644
--- a/Source/CTest/cmCTestMultiProcessHandler.h
+++ b/Source/CTest/cmCTestMultiProcessHandler.h
@@ -12,9 +12,17 @@
 #ifndef cmCTestMultiProcessHandler_h
 #define cmCTestMultiProcessHandler_h
 
-#include <cmCTestTestHandler.h>
+#include <cmConfigure.h> // IWYU pragma: keep
 
-#include <cmCTestRunTest.h>
+#include <cmCTestTestHandler.h>
+#include <map>
+#include <set>
+#include <stddef.h>
+#include <string>
+#include <vector>
+
+class cmCTest;
+class cmCTestRunTest;
 
 /** \class cmCTestMultiProcessHandler
  * \brief run parallel ctest
diff --git a/Source/CTest/cmCTestP4.cxx b/Source/CTest/cmCTestP4.cxx
index 82422a3..cf7b2ca 100644
--- a/Source/CTest/cmCTestP4.cxx
+++ b/Source/CTest/cmCTestP4.cxx
@@ -12,14 +12,15 @@
 #include "cmCTestP4.h"
 
 #include "cmCTest.h"
+#include "cmCTestVC.h"
+#include "cmProcessTools.h"
 #include "cmSystemTools.h"
 
-#include <cmsys/Process.h>
+#include <algorithm>
 #include <cmsys/RegularExpression.hxx>
-
-#include <ctype.h>
-#include <sys/types.h>
+#include <ostream>
 #include <time.h>
+#include <utility>
 
 cmCTestP4::cmCTestP4(cmCTest* ct, std::ostream& log)
   : cmCTestGlobalVC(ct, log)
diff --git a/Source/CTest/cmCTestP4.h b/Source/CTest/cmCTestP4.h
index 84e4f96..549936b 100644
--- a/Source/CTest/cmCTestP4.h
+++ b/Source/CTest/cmCTestP4.h
@@ -12,11 +12,17 @@
 #ifndef cmCTestP4_h
 #define cmCTestP4_h
 
+#include <cmConfigure.h>
+
 #include "cmCTestGlobalVC.h"
 
+#include <iosfwd>
 #include <map>
+#include <string>
 #include <vector>
 
+class cmCTest;
+
 /** \class cmCTestP4
  * \brief Interaction with the Perforce command-line tool
  *
@@ -62,12 +68,13 @@ private:
   void LoadRevisions() CM_OVERRIDE;
   void LoadModifications() CM_OVERRIDE;
 
-  // Parsing helper classes.
-  class IdentifyParser;
   class ChangesParser;
-  class UserParser;
   class DescribeParser;
   class DiffParser;
+  // Parsing helper classes.
+  class IdentifyParser;
+  class UserParser;
+
   friend class IdentifyParser;
   friend class ChangesParser;
   friend class UserParser;
diff --git a/Source/CTest/cmCTestReadCustomFilesCommand.cxx 
b/Source/CTest/cmCTestReadCustomFilesCommand.cxx
index 24e985d..50a00f6 100644
--- a/Source/CTest/cmCTestReadCustomFilesCommand.cxx
+++ b/Source/CTest/cmCTestReadCustomFilesCommand.cxx
@@ -13,6 +13,8 @@
 
 #include "cmCTest.h"
 
+class cmExecutionStatus;
+
 bool cmCTestReadCustomFilesCommand::InitialPass(
   std::vector<std::string> const& args, cmExecutionStatus& /*unused*/)
 {
diff --git a/Source/CTest/cmCTestReadCustomFilesCommand.h 
b/Source/CTest/cmCTestReadCustomFilesCommand.h
index 6cce7c8..4dcde62 100644
--- a/Source/CTest/cmCTestReadCustomFilesCommand.h
+++ b/Source/CTest/cmCTestReadCustomFilesCommand.h
@@ -12,7 +12,16 @@
 #ifndef cmCTestReadCustomFilesCommand_h
 #define cmCTestReadCustomFilesCommand_h
 
+#include <cmConfigure.h>
+
 #include "cmCTestCommand.h"
+#include "cmTypeMacro.h"
+
+#include <string>
+#include <vector>
+
+class cmCommand;
+class cmExecutionStatus;
 
 /** \class cmCTestReadCustomFiles
  * \brief Run a ctest script
diff --git a/Source/CTest/cmCTestRunScriptCommand.cxx 
b/Source/CTest/cmCTestRunScriptCommand.cxx
index 32bf28f..29aa279 100644
--- a/Source/CTest/cmCTestRunScriptCommand.cxx
+++ b/Source/CTest/cmCTestRunScriptCommand.cxx
@@ -12,6 +12,11 @@
 #include "cmCTestRunScriptCommand.h"
 
 #include "cmCTestScriptHandler.h"
+#include "cmMakefile.h"
+
+#include <sstream>
+
+class cmExecutionStatus;
 
 bool cmCTestRunScriptCommand::InitialPass(std::vector<std::string> const& args,
                                           cmExecutionStatus& /*unused*/)
diff --git a/Source/CTest/cmCTestRunScriptCommand.h 
b/Source/CTest/cmCTestRunScriptCommand.h
index 9ea0999..9705f57 100644
--- a/Source/CTest/cmCTestRunScriptCommand.h
+++ b/Source/CTest/cmCTestRunScriptCommand.h
@@ -12,7 +12,16 @@
 #ifndef cmCTestRunScriptCommand_h
 #define cmCTestRunScriptCommand_h
 
+#include <cmConfigure.h>
+
 #include "cmCTestCommand.h"
+#include "cmTypeMacro.h"
+
+#include <string>
+#include <vector>
+
+class cmCommand;
+class cmExecutionStatus;
 
 /** \class cmCTestRunScript
  * \brief Run a ctest script
diff --git a/Source/CTest/cmCTestRunTest.cxx b/Source/CTest/cmCTestRunTest.cxx
index 49acbbf..e7e51d5 100644
--- a/Source/CTest/cmCTestRunTest.cxx
+++ b/Source/CTest/cmCTestRunTest.cxx
@@ -14,11 +14,21 @@
 
 #include "cmCTest.h"
 #include "cmCTestMemCheckHandler.h"
+#include "cmCTestTestHandler.h"
+#include "cmProcess.h"
 #include "cmSystemTools.h"
-#include "cm_curl.h"
 
+#include <cmConfigure.h>
+#include <cm_curl.h>
 #include <cm_zlib.h>
 #include <cmsys/Base64.h>
+#include <cmsys/Process.h>
+#include <cmsys/RegularExpression.hxx>
+#include <iomanip>
+#include <sstream>
+#include <stdio.h>
+#include <time.h>
+#include <utility>
 
 cmCTestRunTest::cmCTestRunTest(cmCTestTestHandler* handler)
 {
diff --git a/Source/CTest/cmCTestRunTest.h b/Source/CTest/cmCTestRunTest.h
index 3dcc026..0ca434d 100644
--- a/Source/CTest/cmCTestRunTest.h
+++ b/Source/CTest/cmCTestRunTest.h
@@ -12,9 +12,15 @@
 #ifndef cmCTestRunTest_h
 #define cmCTestRunTest_h
 
+#include <cmConfigure.h> // IWYU pragma: keep
+
 #include <cmCTestTestHandler.h>
+#include <stddef.h>
+#include <string>
+#include <vector>
 
-#include <cmProcess.h>
+class cmCTest;
+class cmProcess;
 
 /** \class cmRunTest
  * \brief represents a single test to be run
diff --git a/Source/CTest/cmCTestSVN.cxx b/Source/CTest/cmCTestSVN.cxx
index bee8296..f680612 100644
--- a/Source/CTest/cmCTestSVN.cxx
+++ b/Source/CTest/cmCTestSVN.cxx
@@ -12,11 +12,17 @@
 #include "cmCTestSVN.h"
 
 #include "cmCTest.h"
+#include "cmCTestVC.h"
+#include "cmProcessTools.h"
 #include "cmSystemTools.h"
 #include "cmXMLParser.h"
 #include "cmXMLWriter.h"
 
 #include <cmsys/RegularExpression.hxx>
+#include <map>
+#include <ostream>
+#include <stdlib.h>
+#include <string.h>
 
 struct cmCTestSVN::Revision : public cmCTestVC::Revision
 {
diff --git a/Source/CTest/cmCTestSVN.h b/Source/CTest/cmCTestSVN.h
index 4f3eb88..6f2374d 100644
--- a/Source/CTest/cmCTestSVN.h
+++ b/Source/CTest/cmCTestSVN.h
@@ -12,9 +12,17 @@
 #ifndef cmCTestSVN_h
 #define cmCTestSVN_h
 
+#include <cmConfigure.h>
+
 #include "cmCTestGlobalVC.h"
 
+#include <iosfwd>
 #include <list>
+#include <string>
+#include <vector>
+
+class cmCTest;
+class cmXMLWriter;
 
 /** \class cmCTestSVN
  * \brief Interaction with subversion command-line tool
@@ -68,6 +76,7 @@ private:
 
   // Extended revision structure to include info about external it refers to.
   struct Revision;
+
   friend struct Revision;
 
   // Info of all the repositories (root, externals and nested ones).
@@ -89,12 +98,13 @@ private:
 
   void WriteXMLGlobal(cmXMLWriter& xml) CM_OVERRIDE;
 
+  class ExternalParser;
   // Parsing helper classes.
   class InfoParser;
   class LogParser;
   class StatusParser;
   class UpdateParser;
-  class ExternalParser;
+
   friend class InfoParser;
   friend class LogParser;
   friend class StatusParser;
diff --git a/Source/CTest/cmCTestScriptHandler.cxx 
b/Source/CTest/cmCTestScriptHandler.cxx
index 44427b0..a31d789 100644
--- a/Source/CTest/cmCTestScriptHandler.cxx
+++ b/Source/CTest/cmCTestScriptHandler.cxx
@@ -13,32 +13,8 @@
 #include "cmCTestScriptHandler.h"
 
 #include "cmCTest.h"
-#include "cmFunctionBlocker.h"
-#include "cmGeneratedFileStream.h"
-#include "cmGlobalGenerator.h"
-#include "cmMakefile.h"
-#include "cmake.h"
-
-//#include <cmsys/RegularExpression.hxx>
-#include <cmsys/Directory.hxx>
-#include <cmsys/Process.h>
-
-// used for sleep
-#ifdef _WIN32
-#include "windows.h"
-#endif
-
-#include <float.h>
-#include <math.h>
-#include <stdlib.h>
-#include <time.h>
-
-// needed for sleep
-#if !defined(_WIN32)
-#include <unistd.h>
-#endif
-
 #include "cmCTestBuildCommand.h"
+#include "cmCTestCommand.h"
 #include "cmCTestConfigureCommand.h"
 #include "cmCTestCoverageCommand.h"
 #include "cmCTestEmptyBinaryDirectoryCommand.h"
@@ -51,6 +27,31 @@
 #include "cmCTestTestCommand.h"
 #include "cmCTestUpdateCommand.h"
 #include "cmCTestUploadCommand.h"
+#include "cmFunctionBlocker.h"
+#include "cmGeneratedFileStream.h"
+#include "cmGlobalGenerator.h"
+#include "cmMakefile.h"
+#include "cmState.h"
+#include "cmSystemTools.h"
+#include "cmake.h"
+
+#include <cmsys/Directory.hxx>
+#include <cmsys/Process.h>
+#include <map>
+#include <sstream>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <utility>
+
+#ifdef _WIN32
+#include <windows.h>
+#else
+#include <unistd.h>
+#endif
+
+class cmExecutionStatus;
+struct cmListFileFunction;
 
 #define CTEST_INITIAL_CMAKE_OUTPUT_FILE_NAME "CTestInitialCMakeOutput.log"
 
diff --git a/Source/CTest/cmCTestScriptHandler.h 
b/Source/CTest/cmCTestScriptHandler.h
index 4403030..17d7aef 100644
--- a/Source/CTest/cmCTestScriptHandler.h
+++ b/Source/CTest/cmCTestScriptHandler.h
@@ -13,14 +13,19 @@
 #ifndef cmCTestScriptHandler_h
 #define cmCTestScriptHandler_h
 
+#include <cmConfigure.h>
+
 #include "cmCTestGenericHandler.h"
+#include "cmTypeMacro.h"
 
-#include "cmListFileCache.h"
+#include <string>
+#include <vector>
 
-class cmMakefile;
+class cmCTest;
+class cmCTestCommand;
 class cmGlobalGenerator;
+class cmMakefile;
 class cmake;
-class cmCTestCommand;
 
 /** \class cmCTestScriptHandler
  * \brief A class that handles ctest -S invocations
diff --git a/Source/CTest/cmCTestSleepCommand.cxx 
b/Source/CTest/cmCTestSleepCommand.cxx
index 464f025..0954a7e 100644
--- a/Source/CTest/cmCTestSleepCommand.cxx
+++ b/Source/CTest/cmCTestSleepCommand.cxx
@@ -12,7 +12,10 @@
 #include "cmCTestSleepCommand.h"
 
 #include "cmCTestScriptHandler.h"
-#include <stdlib.h> // required for atoi
+
+#include <stdlib.h>
+
+class cmExecutionStatus;
 
 bool cmCTestSleepCommand::InitialPass(std::vector<std::string> const& args,
                                       cmExecutionStatus& /*unused*/)
diff --git a/Source/CTest/cmCTestSleepCommand.h 
b/Source/CTest/cmCTestSleepCommand.h
index 7981fa2..2a3fa00 100644
--- a/Source/CTest/cmCTestSleepCommand.h
+++ b/Source/CTest/cmCTestSleepCommand.h
@@ -12,7 +12,16 @@
 #ifndef cmCTestSleepCommand_h
 #define cmCTestSleepCommand_h
 
+#include <cmConfigure.h>
+
 #include "cmCTestCommand.h"
+#include "cmTypeMacro.h"
+
+#include <string>
+#include <vector>
+
+class cmCommand;
+class cmExecutionStatus;
 
 /** \class cmCTestSleep
  * \brief Run a ctest script
diff --git a/Source/CTest/cmCTestStartCommand.cxx 
b/Source/CTest/cmCTestStartCommand.cxx
index 04d2f03..803e01c 100644
--- a/Source/CTest/cmCTestStartCommand.cxx
+++ b/Source/CTest/cmCTestStartCommand.cxx
@@ -14,7 +14,13 @@
 #include "cmCTest.h"
 #include "cmCTestVC.h"
 #include "cmGeneratedFileStream.h"
-#include "cmGlobalGenerator.h"
+#include "cmMakefile.h"
+#include "cmSystemTools.h"
+
+#include <sstream>
+#include <stddef.h>
+
+class cmExecutionStatus;
 
 cmCTestStartCommand::cmCTestStartCommand()
 {
diff --git a/Source/CTest/cmCTestStartCommand.h 
b/Source/CTest/cmCTestStartCommand.h
index e3f8f8b..22035fa 100644
--- a/Source/CTest/cmCTestStartCommand.h
+++ b/Source/CTest/cmCTestStartCommand.h
@@ -12,7 +12,17 @@
 #ifndef cmCTestStartCommand_h
 #define cmCTestStartCommand_h
 
+#include <cmConfigure.h>
+
 #include "cmCTestCommand.h"
+#include "cmTypeMacro.h"
+
+#include <iosfwd>
+#include <string>
+#include <vector>
+
+class cmCommand;
+class cmExecutionStatus;
 
 /** \class cmCTestStart
  * \brief Run a ctest script
diff --git a/Source/CTest/cmCTestSubmitCommand.cxx 
b/Source/CTest/cmCTestSubmitCommand.cxx
index 54da383..c7c3584 100644
--- a/Source/CTest/cmCTestSubmitCommand.cxx
+++ b/Source/CTest/cmCTestSubmitCommand.cxx
@@ -14,6 +14,13 @@
 #include "cmCTest.h"
 #include "cmCTestGenericHandler.h"
 #include "cmCTestSubmitHandler.h"
+#include "cmMakefile.h"
+#include "cmSystemTools.h"
+#include "cmake.h"
+
+#include <sstream>
+
+class cmExecutionStatus;
 
 cmCTestGenericHandler* cmCTestSubmitCommand::InitializeHandler()
 {
diff --git a/Source/CTest/cmCTestSubmitCommand.h 
b/Source/CTest/cmCTestSubmitCommand.h
index 7c3d6cd..03165bf 100644
--- a/Source/CTest/cmCTestSubmitCommand.h
+++ b/Source/CTest/cmCTestSubmitCommand.h
@@ -12,9 +12,19 @@
 #ifndef cmCTestSubmitCommand_h
 #define cmCTestSubmitCommand_h
 
-#include "cmCTestHandlerCommand.h"
+#include <cmConfigure.h>
 
 #include "cmCTest.h"
+#include "cmCTestHandlerCommand.h"
+#include "cmTypeMacro.h"
+
+#include <set>
+#include <string>
+#include <vector>
+
+class cmCTestGenericHandler;
+class cmCommand;
+class cmExecutionStatus;
 
 /** \class cmCTestSubmit
  * \brief Run a ctest script
diff --git a/Source/CTest/cmCTestSubmitHandler.cxx 
b/Source/CTest/cmCTestSubmitHandler.cxx
index 42727d0..67f7c89 100644
--- a/Source/CTest/cmCTestSubmitHandler.cxx
+++ b/Source/CTest/cmCTestSubmitHandler.cxx
@@ -12,26 +12,28 @@
 #include "cmCTestSubmitHandler.h"
 
 #include "cmCTest.h"
+#include "cmCTestCurl.h"
 #include "cmCTestScriptHandler.h"
+#include "cmCurl.h"
 #include "cmGeneratedFileStream.h"
 #include "cmState.h"
 #include "cmSystemTools.h"
-#include "cmVersion.h"
 #include "cmXMLParser.h"
 #include "cmake.h"
 
-#include <cmsys/Base64.h>
-#include <cmsys/Process.h>
-
-// For XML-RPC submission
-#include "cm_xmlrpc.h"
-
+#include <cm_curl.h>
 #include <cm_jsoncpp_reader.h>
-// For curl submission
-#include "cmCTestCurl.h"
-#include "cmCurl.h"
+#include <cm_jsoncpp_value.h>
+#include <cmsys/Process.h>
+#include <sstream>
+#include <stdio.h>
+#include <stdlib.h>
 
+#if defined(CTEST_USE_XMLRPC)
+#include "cmVersion.h"
+#include <cm_xmlrpc.h>
 #include <sys/stat.h>
+#endif
 
 #define SUBMIT_TIMEOUT_IN_SECONDS_DEFAULT 120
 
diff --git a/Source/CTest/cmCTestSubmitHandler.h 
b/Source/CTest/cmCTestSubmitHandler.h
index 4cca6eb..0e5aea6 100644
--- a/Source/CTest/cmCTestSubmitHandler.h
+++ b/Source/CTest/cmCTestSubmitHandler.h
@@ -12,7 +12,16 @@
 #ifndef cmCTestSubmitHandler_h
 #define cmCTestSubmitHandler_h
 
+#include <cmConfigure.h>
+
+#include "cmCTest.h"
 #include "cmCTestGenericHandler.h"
+#include "cmTypeMacro.h"
+
+#include <iosfwd>
+#include <set>
+#include <string>
+#include <vector>
 
 /** \class cmCTestSubmitHandler
  * \brief Helper class for CTest
@@ -84,6 +93,7 @@ private:
   std::string GetSubmitResultsPrefix();
 
   class ResponseParser;
+
   std::string HTTPProxy;
   int HTTPProxyType;
   std::string HTTPProxyAuth;
diff --git a/Source/CTest/cmCTestTestCommand.cxx 
b/Source/CTest/cmCTestTestCommand.cxx
index 1d064db..8ac4c69 100644
--- a/Source/CTest/cmCTestTestCommand.cxx
+++ b/Source/CTest/cmCTestTestCommand.cxx
@@ -13,6 +13,12 @@
 
 #include "cmCTest.h"
 #include "cmCTestGenericHandler.h"
+#include "cmMakefile.h"
+#include "cmSystemTools.h"
+
+#include <sstream>
+#include <stdlib.h>
+#include <vector>
 
 cmCTestTestCommand::cmCTestTestCommand()
 {
diff --git a/Source/CTest/cmCTestTestCommand.h 
b/Source/CTest/cmCTestTestCommand.h
index f652971..89e37b9 100644
--- a/Source/CTest/cmCTestTestCommand.h
+++ b/Source/CTest/cmCTestTestCommand.h
@@ -12,7 +12,15 @@
 #ifndef cmCTestTestCommand_h
 #define cmCTestTestCommand_h
 
+#include <cmConfigure.h>
+
 #include "cmCTestHandlerCommand.h"
+#include "cmTypeMacro.h"
+
+#include <string>
+
+class cmCTestGenericHandler;
+class cmCommand;
 
 /** \class cmCTestTest
  * \brief Run a ctest script
diff --git a/Source/CTest/cmCTestTestHandler.cxx 
b/Source/CTest/cmCTestTestHandler.cxx
index 3ce0317..479c516 100644
--- a/Source/CTest/cmCTestTestHandler.cxx
+++ b/Source/CTest/cmCTestTestHandler.cxx
@@ -15,26 +15,32 @@
 #include "cmCTest.h"
 #include "cmCTestBatchTestHandler.h"
 #include "cmCTestMultiProcessHandler.h"
-#include "cmCTestRunTest.h"
 #include "cmCommand.h"
 #include "cmGeneratedFileStream.h"
 #include "cmGlobalGenerator.h"
 #include "cmMakefile.h"
+#include "cmState.h"
 #include "cmSystemTools.h"
 #include "cmXMLWriter.h"
+#include "cm_auto_ptr.hxx"
 #include "cm_utf8.h"
 #include "cmake.h"
+
+#include <algorithm>
 #include <cmsys/Base64.h>
 #include <cmsys/Directory.hxx>
 #include <cmsys/FStream.hxx>
-#include <cmsys/Process.h>
 #include <cmsys/RegularExpression.hxx>
-
-#include <float.h>
-#include <math.h>
+#include <functional>
+#include <iomanip>
+#include <set>
+#include <sstream>
+#include <stdio.h>
 #include <stdlib.h>
+#include <string.h>
+#include <time.h>
 
-#include <set>
+class cmExecutionStatus;
 
 class cmCTestSubdirCommand : public cmCommand
 {
diff --git a/Source/CTest/cmCTestTestHandler.h 
b/Source/CTest/cmCTestTestHandler.h
index a085a82..a5e62dc 100644
--- a/Source/CTest/cmCTestTestHandler.h
+++ b/Source/CTest/cmCTestTestHandler.h
@@ -13,10 +13,21 @@
 #ifndef cmCTestTestHandler_h
 #define cmCTestTestHandler_h
 
+#include <cmConfigure.h>
+
 #include "cmCTestGenericHandler.h"
+#include "cmTypeMacro.h"
 
 #include <cmsys/RegularExpression.hxx>
-
+#include <iosfwd>
+#include <map>
+#include <set>
+#include <stddef.h>
+#include <string>
+#include <utility>
+#include <vector>
+
+class cmCTest;
 class cmMakefile;
 class cmXMLWriter;
 
diff --git a/Source/CTest/cmCTestUpdateCommand.cxx 
b/Source/CTest/cmCTestUpdateCommand.cxx
index bc06da6..53382c9 100644
--- a/Source/CTest/cmCTestUpdateCommand.cxx
+++ b/Source/CTest/cmCTestUpdateCommand.cxx
@@ -13,6 +13,10 @@
 
 #include "cmCTest.h"
 #include "cmCTestGenericHandler.h"
+#include "cmMakefile.h"
+#include "cmSystemTools.h"
+
+#include <vector>
 
 cmCTestGenericHandler* cmCTestUpdateCommand::InitializeHandler()
 {
diff --git a/Source/CTest/cmCTestUpdateCommand.h 
b/Source/CTest/cmCTestUpdateCommand.h
index 6b5bbab..89470e1 100644
--- a/Source/CTest/cmCTestUpdateCommand.h
+++ b/Source/CTest/cmCTestUpdateCommand.h
@@ -12,7 +12,15 @@
 #ifndef cmCTestUpdateCommand_h
 #define cmCTestUpdateCommand_h
 
+#include <cmConfigure.h>
+
 #include "cmCTestHandlerCommand.h"
+#include "cmTypeMacro.h"
+
+#include <string>
+
+class cmCTestGenericHandler;
+class cmCommand;
 
 /** \class cmCTestUpdate
  * \brief Run a ctest script
diff --git a/Source/CTest/cmCTestUpdateHandler.cxx 
b/Source/CTest/cmCTestUpdateHandler.cxx
index ac7eb05..bbb9430 100644
--- a/Source/CTest/cmCTestUpdateHandler.cxx
+++ b/Source/CTest/cmCTestUpdateHandler.cxx
@@ -14,14 +14,6 @@
 
 #include "cmCLocaleEnvironmentScope.h"
 #include "cmCTest.h"
-#include "cmGeneratedFileStream.h"
-#include "cmGlobalGenerator.h"
-#include "cmMakefile.h"
-#include "cmVersion.h"
-#include "cmXMLParser.h"
-#include "cmXMLWriter.h"
-#include "cmake.h"
-
 #include "cmCTestBZR.h"
 #include "cmCTestCVS.h"
 #include "cmCTestGIT.h"
@@ -29,20 +21,13 @@
 #include "cmCTestP4.h"
 #include "cmCTestSVN.h"
 #include "cmCTestVC.h"
+#include "cmGeneratedFileStream.h"
+#include "cmSystemTools.h"
+#include "cmVersion.h"
+#include "cmXMLWriter.h"
 
 #include <cm_auto_ptr.hxx>
-
-//#include <cmsys/RegularExpression.hxx>
-#include <cmsys/Process.h>
-
-// used for sleep
-#ifdef _WIN32
-#include "windows.h"
-#endif
-
-#include <float.h>
-#include <math.h>
-#include <stdlib.h>
+#include <sstream>
 
 static const char* cmCTestUpdateHandlerUpdateStrings[] = {
   "Unknown", "CVS", "SVN", "BZR", "GIT", "HG", "P4"
diff --git a/Source/CTest/cmCTestUpdateHandler.h 
b/Source/CTest/cmCTestUpdateHandler.h
index 6733c8c..838ef0e 100644
--- a/Source/CTest/cmCTestUpdateHandler.h
+++ b/Source/CTest/cmCTestUpdateHandler.h
@@ -13,9 +13,14 @@
 #ifndef cmCTestUpdateHandler_h
 #define cmCTestUpdateHandler_h
 
+#include <cmConfigure.h>
+
 #include "cmCTestGenericHandler.h"
+#include "cmTypeMacro.h"
 
-#include "cmListFileCache.h"
+#include <string>
+#include <utility>
+#include <vector>
 
 /** \class cmCTestUpdateHandler
  * \brief A class that handles ctest -S invocations
diff --git a/Source/CTest/cmCTestUploadCommand.cxx 
b/Source/CTest/cmCTestUploadCommand.cxx
index 016b32b..5ea637e 100644
--- a/Source/CTest/cmCTestUploadCommand.cxx
+++ b/Source/CTest/cmCTestUploadCommand.cxx
@@ -14,6 +14,11 @@
 #include "cmCTest.h"
 #include "cmCTestGenericHandler.h"
 #include "cmCTestUploadHandler.h"
+#include "cmMakefile.h"
+#include "cmSystemTools.h"
+#include "cmake.h"
+
+#include <sstream>
 
 cmCTestGenericHandler* cmCTestUploadCommand::InitializeHandler()
 {
diff --git a/Source/CTest/cmCTestUploadCommand.h 
b/Source/CTest/cmCTestUploadCommand.h
index 923995d..da291f3 100644
--- a/Source/CTest/cmCTestUploadCommand.h
+++ b/Source/CTest/cmCTestUploadCommand.h
@@ -12,9 +12,16 @@
 #ifndef cmCTestUploadCommand_h
 #define cmCTestUploadCommand_h
 
-#include "cmCTestHandlerCommand.h"
+#include <cmConfigure.h>
 
 #include "cmCTest.h"
+#include "cmCTestHandlerCommand.h"
+#include "cmTypeMacro.h"
+
+#include <string>
+
+class cmCTestGenericHandler;
+class cmCommand;
 
 /** \class cmCTestUpload
  * \brief Run a ctest script
diff --git a/Source/CTest/cmCTestUploadHandler.cxx 
b/Source/CTest/cmCTestUploadHandler.cxx
index 6a3b830..07d3ad7 100644
--- a/Source/CTest/cmCTestUploadHandler.cxx
+++ b/Source/CTest/cmCTestUploadHandler.cxx
@@ -15,6 +15,10 @@
 #include "cmVersion.h"
 #include "cmXMLWriter.h"
 
+#include <ostream>
+#include <set>
+#include <string>
+
 cmCTestUploadHandler::cmCTestUploadHandler()
 {
   this->Initialize();
diff --git a/Source/CTest/cmCTestUploadHandler.h 
b/Source/CTest/cmCTestUploadHandler.h
index 8b824d6..6503d08 100644
--- a/Source/CTest/cmCTestUploadHandler.h
+++ b/Source/CTest/cmCTestUploadHandler.h
@@ -12,7 +12,11 @@
 #ifndef cmCTestUploadHandler_h
 #define cmCTestUploadHandler_h
 
+#include <cmConfigure.h>
+
+#include "cmCTest.h"
 #include "cmCTestGenericHandler.h"
+#include "cmTypeMacro.h"
 
 /** \class cmCTestUploadHandler
  * \brief Helper class for CTest
diff --git a/Source/CTest/cmCTestVC.cxx b/Source/CTest/cmCTestVC.cxx
index 24557aa..182364b 100644
--- a/Source/CTest/cmCTestVC.cxx
+++ b/Source/CTest/cmCTestVC.cxx
@@ -16,6 +16,10 @@
 #include "cmXMLWriter.h"
 
 #include <cmsys/Process.h>
+#include <sstream>
+#include <stdio.h>
+#include <time.h>
+#include <vector>
 
 cmCTestVC::cmCTestVC(cmCTest* ct, std::ostream& log)
   : CTest(ct)
diff --git a/Source/CTest/cmCTestVC.h b/Source/CTest/cmCTestVC.h
index eb85a23..8063e40 100644
--- a/Source/CTest/cmCTestVC.h
+++ b/Source/CTest/cmCTestVC.h
@@ -12,8 +12,13 @@
 #ifndef cmCTestVC_h
 #define cmCTestVC_h
 
+#include <cmConfigure.h>
+
 #include "cmProcessTools.h"
 
+#include <iosfwd>
+#include <string>
+
 class cmCTest;
 class cmXMLWriter;
 
@@ -93,7 +98,6 @@ public:
   };
 
 protected:
-  struct File;
   friend struct File;
 
   /** Represent change to one file.  */
diff --git a/Source/CTest/cmParseBlanketJSCoverage.cxx 
b/Source/CTest/cmParseBlanketJSCoverage.cxx
index 976a92d..28077ff 100644
--- a/Source/CTest/cmParseBlanketJSCoverage.cxx
+++ b/Source/CTest/cmParseBlanketJSCoverage.cxx
@@ -11,10 +11,11 @@
 ============================================================================*/
 #include "cmParseBlanketJSCoverage.h"
 
+#include "cmCTest.h"
+#include "cmCTestCoverageHandler.h"
 #include "cmSystemTools.h"
-#include <cmsys/Directory.hxx>
+
 #include <cmsys/FStream.hxx>
-#include <cmsys/Glob.hxx>
 #include <stdio.h>
 #include <stdlib.h>
 
diff --git a/Source/CTest/cmParseBlanketJSCoverage.h 
b/Source/CTest/cmParseBlanketJSCoverage.h
index a4f6670..ece1efa 100644
--- a/Source/CTest/cmParseBlanketJSCoverage.h
+++ b/Source/CTest/cmParseBlanketJSCoverage.h
@@ -13,7 +13,13 @@
 #ifndef cmParseBlanketJSCoverage_h
 #define cmParseBlanketJSCoverage_h
 
-#include "cmCTestCoverageHandler.h"
+#include <cmConfigure.h> // IWYU pragma: keep
+
+#include <string>
+#include <vector>
+
+class cmCTest;
+class cmCTestCoverageHandlerContainer;
 
 /** \class cmParseBlanketJSCoverage
  * \brief Parse BlanketJS coverage information
@@ -39,6 +45,7 @@ public:
 
 protected:
   class JSONParser;
+
   cmCTestCoverageHandlerContainer& Coverage;
   cmCTest* CTest;
 };
diff --git a/Source/CTest/cmParseCacheCoverage.cxx 
b/Source/CTest/cmParseCacheCoverage.cxx
index 0916da2..23176b5 100644
--- a/Source/CTest/cmParseCacheCoverage.cxx
+++ b/Source/CTest/cmParseCacheCoverage.cxx
@@ -1,11 +1,15 @@
 #include "cmParseCacheCoverage.h"
 
+#include "cmCTest.h"
+#include "cmCTestCoverageHandler.h"
 #include "cmSystemTools.h"
+
 #include <cmsys/Directory.hxx>
 #include <cmsys/FStream.hxx>
-#include <cmsys/Glob.hxx>
+#include <map>
 #include <stdio.h>
 #include <stdlib.h>
+#include <utility>
 
 cmParseCacheCoverage::cmParseCacheCoverage(
   cmCTestCoverageHandlerContainer& cont, cmCTest* ctest)
diff --git a/Source/CTest/cmParseCacheCoverage.h 
b/Source/CTest/cmParseCacheCoverage.h
index 65b1d10..4fa6c26 100644
--- a/Source/CTest/cmParseCacheCoverage.h
+++ b/Source/CTest/cmParseCacheCoverage.h
@@ -13,8 +13,16 @@
 #ifndef cmParseCacheCoverage_h
 #define cmParseCacheCoverage_h
 
+#include <cmConfigure.h>
+
 #include "cmParseMumpsCoverage.h"
 
+#include <string>
+#include <vector>
+
+class cmCTest;
+class cmCTestCoverageHandlerContainer;
+
 /** \class cmParseCacheCoverage
  * \brief Parse Cache coverage information
  *
diff --git a/Source/CTest/cmParseCoberturaCoverage.cxx 
b/Source/CTest/cmParseCoberturaCoverage.cxx
index 1a3fe3c..0b6d3ce 100644
--- a/Source/CTest/cmParseCoberturaCoverage.cxx
+++ b/Source/CTest/cmParseCoberturaCoverage.cxx
@@ -1,9 +1,14 @@
 #include "cmParseCoberturaCoverage.h"
 
+#include "cmCTest.h"
+#include "cmCTestCoverageHandler.h"
 #include "cmSystemTools.h"
 #include "cmXMLParser.h"
-#include <cmsys/Directory.hxx>
+
+#include <cmConfigure.h>
 #include <cmsys/FStream.hxx>
+#include <stdlib.h>
+#include <string.h>
 
 class cmParseCoberturaCoverage::XMLParser : public cmXMLParser
 {
diff --git a/Source/CTest/cmParseCoberturaCoverage.h 
b/Source/CTest/cmParseCoberturaCoverage.h
index 4fa6d10..f45ec95 100644
--- a/Source/CTest/cmParseCoberturaCoverage.h
+++ b/Source/CTest/cmParseCoberturaCoverage.h
@@ -13,7 +13,13 @@
 #ifndef cmParseCoberturaCoverage_h
 #define cmParseCoberturaCoverage_h
 
-#include "cmCTestCoverageHandler.h"
+#include <cmConfigure.h> // IWYU pragma: keep
+
+#include <string>
+#include <vector>
+
+class cmCTest;
+class cmCTestCoverageHandlerContainer;
 
 /** \class cmParsePythonCoverage
  * \brief Parse coverage.py Python coverage information
@@ -40,6 +46,7 @@ public:
 
 private:
   class XMLParser;
+
   cmCTestCoverageHandlerContainer& Coverage;
   cmCTest* CTest;
   std::string CurFileName;
diff --git a/Source/CTest/cmParseDelphiCoverage.cxx 
b/Source/CTest/cmParseDelphiCoverage.cxx
index 9d86ce9..7fe91f4 100644
--- a/Source/CTest/cmParseDelphiCoverage.cxx
+++ b/Source/CTest/cmParseDelphiCoverage.cxx
@@ -1,8 +1,9 @@
 #include "cmParseDelphiCoverage.h"
 
+#include "cmCTest.h"
+#include "cmCTestCoverageHandler.h"
 #include "cmSystemTools.h"
-#include "cmXMLParser.h"
-#include <cmsys/Directory.hxx>
+
 #include <cmsys/FStream.hxx>
 #include <cmsys/Glob.hxx>
 #include <stdio.h>
diff --git a/Source/CTest/cmParseDelphiCoverage.h 
b/Source/CTest/cmParseDelphiCoverage.h
index c1c495c..82557d9 100644
--- a/Source/CTest/cmParseDelphiCoverage.h
+++ b/Source/CTest/cmParseDelphiCoverage.h
@@ -13,7 +13,13 @@
 #ifndef cmParseDelphiCoverage_h
 #define cmParseDelphiCoverage_h
 
-#include "cmCTestCoverageHandler.h"
+#include <cmConfigure.h> // IWYU pragma: keep
+
+#include <string>
+#include <vector>
+
+class cmCTest;
+class cmCTestCoverageHandlerContainer;
 
 /** \class cmParseDelphiCoverage
  * \brief Parse Delphi coverage information
@@ -35,6 +41,7 @@ public:
 
 protected:
   class HTMLParser;
+
   cmCTestCoverageHandlerContainer& Coverage;
   cmCTest* CTest;
 };
diff --git a/Source/CTest/cmParseGTMCoverage.cxx 
b/Source/CTest/cmParseGTMCoverage.cxx
index 33ad839..214ce5a 100644
--- a/Source/CTest/cmParseGTMCoverage.cxx
+++ b/Source/CTest/cmParseGTMCoverage.cxx
@@ -1,11 +1,15 @@
 #include "cmParseGTMCoverage.h"
 
+#include "cmCTest.h"
+#include "cmCTestCoverageHandler.h"
 #include "cmSystemTools.h"
+
 #include <cmsys/Directory.hxx>
 #include <cmsys/FStream.hxx>
-#include <cmsys/Glob.hxx>
+#include <map>
 #include <stdio.h>
 #include <stdlib.h>
+#include <vector>
 
 cmParseGTMCoverage::cmParseGTMCoverage(cmCTestCoverageHandlerContainer& cont,
                                        cmCTest* ctest)
diff --git a/Source/CTest/cmParseGTMCoverage.h 
b/Source/CTest/cmParseGTMCoverage.h
index 4188689..623cd5a 100644
--- a/Source/CTest/cmParseGTMCoverage.h
+++ b/Source/CTest/cmParseGTMCoverage.h
@@ -13,8 +13,15 @@
 #ifndef cmParseGTMCoverage_h
 #define cmParseGTMCoverage_h
 
+#include <cmConfigure.h>
+
 #include "cmParseMumpsCoverage.h"
 
+#include <string>
+
+class cmCTest;
+class cmCTestCoverageHandlerContainer;
+
 /** \class cmParseGTMCoverage
  * \brief Parse GTM coverage information
  *
diff --git a/Source/CTest/cmParseJacocoCoverage.cxx 
b/Source/CTest/cmParseJacocoCoverage.cxx
index bc05666..0e36c01 100644
--- a/Source/CTest/cmParseJacocoCoverage.cxx
+++ b/Source/CTest/cmParseJacocoCoverage.cxx
@@ -1,12 +1,17 @@
 #include "cmParseJacocoCoverage.h"
 
+#include <cmConfigure.h>
+
+#include "cmCTest.h"
+#include "cmCTestCoverageHandler.h"
 #include "cmSystemTools.h"
 #include "cmXMLParser.h"
+
 #include <cmsys/Directory.hxx>
 #include <cmsys/FStream.hxx>
 #include <cmsys/Glob.hxx>
-#include <stdio.h>
 #include <stdlib.h>
+#include <string.h>
 
 class cmParseJacocoCoverage::XMLParser : public cmXMLParser
 {
diff --git a/Source/CTest/cmParseJacocoCoverage.h 
b/Source/CTest/cmParseJacocoCoverage.h
index bcd472e..4b94725 100644
--- a/Source/CTest/cmParseJacocoCoverage.h
+++ b/Source/CTest/cmParseJacocoCoverage.h
@@ -13,7 +13,14 @@
 #ifndef cmParseJacocoCoverage_h
 #define cmParseJacocoCoverage_h
 
-#include "cmCTestCoverageHandler.h"
+#include <cmConfigure.h> // IWYU pragma: keep
+
+#include <map>
+#include <string>
+#include <vector>
+
+class cmCTest;
+class cmCTestCoverageHandlerContainer;
 
 /** \class cmParseJacocoCoverage
  * \brief Parse JaCoCO coverage information
@@ -47,6 +54,7 @@ private:
   bool LoadSource(std::string d);
 
   class XMLParser;
+
   std::map<std::string, std::string> RoutineToDirectory;
   cmCTestCoverageHandlerContainer& Coverage;
   cmCTest* CTest;
diff --git a/Source/CTest/cmParseMumpsCoverage.cxx 
b/Source/CTest/cmParseMumpsCoverage.cxx
index af01496..ab8be76 100644
--- a/Source/CTest/cmParseMumpsCoverage.cxx
+++ b/Source/CTest/cmParseMumpsCoverage.cxx
@@ -1,11 +1,16 @@
-#include "cmParseGTMCoverage.h"
+#include "cmParseMumpsCoverage.h"
 
+#include "cmCTest.h"
+#include "cmCTestCoverageHandler.h"
 #include "cmSystemTools.h"
-#include <cmsys/Directory.hxx>
+
+#include <cmConfigure.h>
 #include <cmsys/FStream.hxx>
 #include <cmsys/Glob.hxx>
-#include <stdio.h>
-#include <stdlib.h>
+#include <map>
+#include <string>
+#include <utility>
+#include <vector>
 
 cmParseMumpsCoverage::cmParseMumpsCoverage(
   cmCTestCoverageHandlerContainer& cont, cmCTest* ctest)
diff --git a/Source/CTest/cmParseMumpsCoverage.h 
b/Source/CTest/cmParseMumpsCoverage.h
index 3761ba6..8b33bd7 100644
--- a/Source/CTest/cmParseMumpsCoverage.h
+++ b/Source/CTest/cmParseMumpsCoverage.h
@@ -13,7 +13,13 @@
 #ifndef cmParseMumpsCoverage_h
 #define cmParseMumpsCoverage_h
 
-#include "cmCTestCoverageHandler.h"
+#include <cmConfigure.h> // IWYU pragma: keep
+
+#include <map>
+#include <string>
+
+class cmCTest;
+class cmCTestCoverageHandlerContainer;
 
 /** \class cmParseMumpsCoverage
  * \brief Parse Mumps coverage information
diff --git a/Source/CTest/cmParsePHPCoverage.cxx 
b/Source/CTest/cmParsePHPCoverage.cxx
index 5ec2718..d8bb31b 100644
--- a/Source/CTest/cmParsePHPCoverage.cxx
+++ b/Source/CTest/cmParsePHPCoverage.cxx
@@ -1,8 +1,13 @@
 #include "cmParsePHPCoverage.h"
 
+#include "cmCTest.h"
+#include "cmCTestCoverageHandler.h"
 #include "cmSystemTools.h"
+
 #include <cmsys/Directory.hxx>
 #include <cmsys/FStream.hxx>
+#include <stdlib.h>
+#include <string.h>
 
 /*
   To setup coverage for php.
diff --git a/Source/CTest/cmParsePHPCoverage.h 
b/Source/CTest/cmParsePHPCoverage.h
index 72f9129..b261a8d 100644
--- a/Source/CTest/cmParsePHPCoverage.h
+++ b/Source/CTest/cmParsePHPCoverage.h
@@ -13,7 +13,13 @@
 #ifndef cmParsePHPCoverage_h
 #define cmParsePHPCoverage_h
 
-#include "cmCTestCoverageHandler.h"
+#include <cmConfigure.h> // IWYU pragma: keep
+
+#include <iosfwd>
+#include <string>
+
+class cmCTest;
+class cmCTestCoverageHandlerContainer;
 
 /** \class cmParsePHPCoverage
  * \brief Parse xdebug PHP coverage information
diff --git a/Source/CTest/cmProcess.cxx b/Source/CTest/cmProcess.cxx
index 30cd102..51aed79 100644
--- a/Source/CTest/cmProcess.cxx
+++ b/Source/CTest/cmProcess.cxx
@@ -9,10 +9,11 @@
   implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
   See the License for more information.
 ============================================================================*/
+#include "cmProcess.h"
 
-#include <cmProcess.h>
-
+#include <cmConfigure.h>
 #include <cmSystemTools.h>
+#include <iostream>
 
 cmProcess::cmProcess()
 {
diff --git a/Source/CTest/cmProcess.h b/Source/CTest/cmProcess.h
index d5e2721..2a6fa7c 100644
--- a/Source/CTest/cmProcess.h
+++ b/Source/CTest/cmProcess.h
@@ -12,9 +12,11 @@
 #ifndef cmProcess_h
 #define cmProcess_h
 
-#include "cmStandardIncludes.h"
+#include <cmConfigure.h> // IWYU pragma: keep
 
 #include <cmsys/Process.h>
+#include <string>
+#include <vector>
 
 /** \class cmProcess
  * \brief run a process with c++

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

Summary of changes:


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

Reply via email to