summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Source/CTest/cmCTestCVS.h3
-rw-r--r--Source/CTest/cmCTestGlobalVC.h2
-rw-r--r--Source/cmBreakCommand.cxx2
-rw-r--r--Source/cmMakefile.cxx26
-rw-r--r--Source/cmMakefile.h30
-rw-r--r--Source/cmMakefileExecutableTargetGenerator.cxx10
-rw-r--r--Source/cmMakefileExecutableTargetGenerator.h4
-rw-r--r--Source/cmMakefileLibraryTargetGenerator.cxx11
-rw-r--r--Source/cmMakefileLibraryTargetGenerator.h6
-rw-r--r--Source/cmMakefileTargetGenerator.cxx17
-rw-r--r--Source/cmMakefileTargetGenerator.h14
-rw-r--r--Source/cmMakefileUtilityTargetGenerator.cxx8
-rw-r--r--Source/cmMakefileUtilityTargetGenerator.h4
-rw-r--r--Source/cmNewLineStyle.cxx2
-rw-r--r--Source/cmNewLineStyle.h5
-rw-r--r--Source/cmNinjaNormalTargetGenerator.cxx12
-rw-r--r--Source/cmNinjaNormalTargetGenerator.h9
-rw-r--r--Source/cmNinjaTargetGenerator.cxx8
-rw-r--r--Source/cmNinjaTargetGenerator.h12
-rw-r--r--Source/cmNinjaUtilityTargetGenerator.cxx12
-rw-r--r--Source/cmNinjaUtilityTargetGenerator.h6
-rw-r--r--Source/cmPolicies.cxx12
-rw-r--r--Source/cmPolicies.h4
-rw-r--r--Source/cmProcessTools.cxx1
-rw-r--r--Source/cmProcessTools.h6
-rw-r--r--Source/cmProperty.cxx2
-rw-r--r--Source/cmProperty.h4
-rw-r--r--Source/cmPropertyDefinition.cxx2
-rw-r--r--Source/cmPropertyDefinition.h4
-rw-r--r--Source/cmPropertyDefinitionMap.cxx3
-rw-r--r--Source/cmPropertyDefinitionMap.h6
-rw-r--r--Source/cmPropertyMap.cxx6
-rw-r--r--Source/cmPropertyMap.h6
33 files changed, 192 insertions, 67 deletions
diff --git a/Source/CTest/cmCTestCVS.h b/Source/CTest/cmCTestCVS.h
index 4d5e6a9c8c..67d162dcde 100644
--- a/Source/CTest/cmCTestCVS.h
+++ b/Source/CTest/cmCTestCVS.h
@@ -14,6 +14,9 @@
#include "cmCTestVC.h"
+#include <map>
+#include <vector>
+
/** \class cmCTestCVS
* \brief Interaction with cvs command-line tool
*
diff --git a/Source/CTest/cmCTestGlobalVC.h b/Source/CTest/cmCTestGlobalVC.h
index 7ea344086f..d42d2f2bb1 100644
--- a/Source/CTest/cmCTestGlobalVC.h
+++ b/Source/CTest/cmCTestGlobalVC.h
@@ -15,6 +15,8 @@
#include "cmCTestVC.h"
#include <list>
+#include <map>
+#include <vector>
/** \class cmCTestGlobalVC
* \brief Base class for handling globally-versioned trees
diff --git a/Source/cmBreakCommand.cxx b/Source/cmBreakCommand.cxx
index fd57705114..b33494edef 100644
--- a/Source/cmBreakCommand.cxx
+++ b/Source/cmBreakCommand.cxx
@@ -11,6 +11,8 @@
============================================================================*/
#include "cmBreakCommand.h"
+#include "cmExecutionStatus.h"
+
// cmBreakCommand
bool cmBreakCommand::InitialPass(std::vector<std::string> const& args,
cmExecutionStatus& status)
diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx
index 28a3ab5250..b9d71ec89e 100644
--- a/Source/cmMakefile.cxx
+++ b/Source/cmMakefile.cxx
@@ -11,38 +11,44 @@
============================================================================*/
#include "cmMakefile.h"
+#include "cmAlgorithms.h"
#include "cmCommand.h"
#include "cmCommandArgumentParserHelper.h"
-#include "cmCommands.h"
+#include "cmCustomCommand.h"
+#include "cmCustomCommandLines.h"
+#include "cmExecutionStatus.h"
+#include "cmExpandedCommandArgument.h"
+#include "cmFileLockPool.h"
#include "cmFunctionBlocker.h"
#include "cmGeneratorExpression.h"
#include "cmGeneratorExpressionEvaluationFile.h"
#include "cmGlobalGenerator.h"
+#include "cmInstallGenerator.h"
#include "cmListFileCache.h"
-#include "cmOutputConverter.h"
#include "cmSourceFile.h"
#include "cmSourceFileLocation.h"
#include "cmState.h"
#include "cmSystemTools.h"
#include "cmTest.h"
+#include "cmTestGenerator.h"
#include "cmVersion.h"
+#include "cmake.h"
+
#ifdef CMAKE_BUILD_WITH_CMAKE
#include "cmVariableWatch.h"
#endif
-#include "cmAlgorithms.h"
-#include "cmInstallGenerator.h"
-#include "cmTestGenerator.h"
-#include "cmake.h"
-#include <stdlib.h> // required for atoi
#include <cm_auto_ptr.hxx>
#include <cmsys/FStream.hxx>
#include <cmsys/RegularExpression.hxx>
-#include <cmsys/SystemTools.hxx>
+#include <algorithm>
#include <assert.h>
-#include <ctype.h> // for isspace
-#include <list>
+#include <ctype.h>
+#include <sstream>
+#include <stdlib.h>
+#include <string.h>
+#include <utility>
// default is not to be building executables
cmMakefile::cmMakefile(cmGlobalGenerator* globalGenerator,
diff --git a/Source/cmMakefile.h b/Source/cmMakefile.h
index d07b4e1611..d082964a11 100644
--- a/Source/cmMakefile.h
+++ b/Source/cmMakefile.h
@@ -12,16 +12,15 @@
#ifndef cmMakefile_h
#define cmMakefile_h
-#include "cmStandardIncludes.h"
+#include <cmConfigure.h>
#include "cmAlgorithms.h"
-#include "cmExecutionStatus.h"
-#include "cmExpandedCommandArgument.h"
#include "cmListFileCache.h"
#include "cmNewLineStyle.h"
+#include "cmPolicies.h"
#include "cmState.h"
-#include "cmSystemTools.h"
#include "cmTarget.h"
+#include "cmTargetLinkLibraryType.h"
#include "cmake.h"
#if defined(CMAKE_BUILD_WITH_CMAKE)
@@ -30,6 +29,13 @@
#include <cm_auto_ptr.hxx>
#include <cmsys/RegularExpression.hxx>
+
+#include <map>
+#include <set>
+#include <stack>
+#include <string>
+#include <vector>
+
#if defined(CMAKE_BUILD_WITH_CMAKE)
#ifdef CMake_HAVE_CXX_UNORDERED_MAP
#include <unordered_map>
@@ -38,20 +44,20 @@
#endif
#endif
-#include <stack>
-
-class cmFunctionBlocker;
class cmCommand;
+class cmCompiledGeneratorExpression;
+class cmCustomCommandLines;
+class cmExecutionStatus;
+class cmExpandedCommandArgument;
+class cmExportBuildFileGenerator;
+class cmFunctionBlocker;
+class cmGeneratorExpressionEvaluationFile;
+class cmGlobalGenerator;
class cmInstallGenerator;
class cmSourceFile;
class cmTest;
class cmTestGenerator;
class cmVariableWatch;
-class cmake;
-class cmMakefileCall;
-class cmCMakePolicyCommand;
-class cmGeneratorExpressionEvaluationFile;
-class cmExportBuildFileGenerator;
/** \class cmMakefile
* \brief Process the input CMakeLists.txt file.
diff --git a/Source/cmMakefileExecutableTargetGenerator.cxx b/Source/cmMakefileExecutableTargetGenerator.cxx
index 3b8bf5a5da..6fadc8fb68 100644
--- a/Source/cmMakefileExecutableTargetGenerator.cxx
+++ b/Source/cmMakefileExecutableTargetGenerator.cxx
@@ -12,12 +12,20 @@
#include "cmMakefileExecutableTargetGenerator.h"
#include "cmGeneratedFileStream.h"
+#include "cmGeneratorTarget.h"
#include "cmGlobalUnixMakefileGenerator3.h"
+#include "cmLocalGenerator.h"
#include "cmLocalUnixMakefileGenerator3.h"
#include "cmMakefile.h"
-#include "cmSourceFile.h"
+#include "cmOSXBundleGenerator.h"
+#include "cmOutputConverter.h"
+#include "cmSystemTools.h"
#include "cmake.h"
+#include <sstream>
+#include <string>
+#include <vector>
+
cmMakefileExecutableTargetGenerator::cmMakefileExecutableTargetGenerator(
cmGeneratorTarget* target)
: cmMakefileTargetGenerator(target)
diff --git a/Source/cmMakefileExecutableTargetGenerator.h b/Source/cmMakefileExecutableTargetGenerator.h
index 39def2766d..1e6047ee82 100644
--- a/Source/cmMakefileExecutableTargetGenerator.h
+++ b/Source/cmMakefileExecutableTargetGenerator.h
@@ -12,8 +12,12 @@
#ifndef cmMakefileExecutableTargetGenerator_h
#define cmMakefileExecutableTargetGenerator_h
+#include <cmConfigure.h>
+
#include "cmMakefileTargetGenerator.h"
+class cmGeneratorTarget;
+
class cmMakefileExecutableTargetGenerator : public cmMakefileTargetGenerator
{
public:
diff --git a/Source/cmMakefileLibraryTargetGenerator.cxx b/Source/cmMakefileLibraryTargetGenerator.cxx
index 68f8ff12af..580343dacd 100644
--- a/Source/cmMakefileLibraryTargetGenerator.cxx
+++ b/Source/cmMakefileLibraryTargetGenerator.cxx
@@ -11,14 +11,21 @@
============================================================================*/
#include "cmMakefileLibraryTargetGenerator.h"
-#include "cmAlgorithms.h"
#include "cmGeneratedFileStream.h"
+#include "cmGeneratorTarget.h"
#include "cmGlobalUnixMakefileGenerator3.h"
+#include "cmLocalGenerator.h"
#include "cmLocalUnixMakefileGenerator3.h"
#include "cmMakefile.h"
-#include "cmSourceFile.h"
+#include "cmOSXBundleGenerator.h"
+#include "cmOutputConverter.h"
+#include "cmState.h"
+#include "cmSystemTools.h"
#include "cmake.h"
+#include <sstream>
+#include <vector>
+
cmMakefileLibraryTargetGenerator::cmMakefileLibraryTargetGenerator(
cmGeneratorTarget* target)
: cmMakefileTargetGenerator(target)
diff --git a/Source/cmMakefileLibraryTargetGenerator.h b/Source/cmMakefileLibraryTargetGenerator.h
index 935d8b19fa..ec2f6bbfc6 100644
--- a/Source/cmMakefileLibraryTargetGenerator.h
+++ b/Source/cmMakefileLibraryTargetGenerator.h
@@ -12,8 +12,14 @@
#ifndef cmMakefileLibraryTargetGenerator_h
#define cmMakefileLibraryTargetGenerator_h
+#include <cmConfigure.h>
+
#include "cmMakefileTargetGenerator.h"
+#include <string>
+
+class cmGeneratorTarget;
+
class cmMakefileLibraryTargetGenerator : public cmMakefileTargetGenerator
{
public:
diff --git a/Source/cmMakefileTargetGenerator.cxx b/Source/cmMakefileTargetGenerator.cxx
index e12fc0983d..84a15e0314 100644
--- a/Source/cmMakefileTargetGenerator.cxx
+++ b/Source/cmMakefileTargetGenerator.cxx
@@ -13,23 +13,30 @@
#include "cmAlgorithms.h"
#include "cmComputeLinkInformation.h"
+#include "cmCustomCommand.h"
#include "cmCustomCommandGenerator.h"
#include "cmGeneratedFileStream.h"
#include "cmGeneratorExpression.h"
#include "cmGeneratorTarget.h"
-#include "cmGlobalGenerator.h"
#include "cmGlobalUnixMakefileGenerator3.h"
+#include "cmLocalGenerator.h"
#include "cmLocalUnixMakefileGenerator3.h"
#include "cmMakefile.h"
-#include "cmSourceFile.h"
-#include "cmState.h"
-#include "cmake.h"
-
#include "cmMakefileExecutableTargetGenerator.h"
#include "cmMakefileLibraryTargetGenerator.h"
#include "cmMakefileUtilityTargetGenerator.h"
+#include "cmOutputConverter.h"
+#include "cmSourceFile.h"
+#include "cmState.h"
+#include "cmSystemTools.h"
+#include "cm_auto_ptr.hxx"
+#include "cmake.h"
+#include <algorithm>
#include <ctype.h>
+#include <sstream>
+#include <stdio.h>
+#include <utility>
#ifndef _WIN32
#include <unistd.h>
diff --git a/Source/cmMakefileTargetGenerator.h b/Source/cmMakefileTargetGenerator.h
index 29b888739e..e4f7a3647b 100644
--- a/Source/cmMakefileTargetGenerator.h
+++ b/Source/cmMakefileTargetGenerator.h
@@ -12,18 +12,22 @@
#ifndef cmMakefileTargetGenerator_h
#define cmMakefileTargetGenerator_h
-#include "cmCommonTargetGenerator.h"
+#include <cmConfigure.h>
+#include "cmCommonTargetGenerator.h"
#include "cmLocalUnixMakefileGenerator3.h"
#include "cmOSXBundleGenerator.h"
+#include <iosfwd>
+#include <map>
+#include <set>
+#include <string>
+#include <vector>
+
class cmCustomCommandGenerator;
-class cmDepends;
-class cmGeneratorTarget;
class cmGeneratedFileStream;
+class cmGeneratorTarget;
class cmGlobalUnixMakefileGenerator3;
-class cmLocalUnixMakefileGenerator3;
-class cmMakefile;
class cmSourceFile;
/** \class cmMakefileTargetGenerator
diff --git a/Source/cmMakefileUtilityTargetGenerator.cxx b/Source/cmMakefileUtilityTargetGenerator.cxx
index 27006eeea4..dfad0c4d4d 100644
--- a/Source/cmMakefileUtilityTargetGenerator.cxx
+++ b/Source/cmMakefileUtilityTargetGenerator.cxx
@@ -12,10 +12,16 @@
#include "cmMakefileUtilityTargetGenerator.h"
#include "cmGeneratedFileStream.h"
+#include "cmGeneratorTarget.h"
#include "cmGlobalUnixMakefileGenerator3.h"
#include "cmLocalUnixMakefileGenerator3.h"
#include "cmMakefile.h"
-#include "cmSourceFile.h"
+#include "cmOSXBundleGenerator.h"
+#include "cmOutputConverter.h"
+
+#include <ostream>
+#include <string>
+#include <vector>
cmMakefileUtilityTargetGenerator::cmMakefileUtilityTargetGenerator(
cmGeneratorTarget* target)
diff --git a/Source/cmMakefileUtilityTargetGenerator.h b/Source/cmMakefileUtilityTargetGenerator.h
index b41fb8b684..daf4bacd20 100644
--- a/Source/cmMakefileUtilityTargetGenerator.h
+++ b/Source/cmMakefileUtilityTargetGenerator.h
@@ -12,8 +12,12 @@
#ifndef cmMakefileUtilityTargetGenerator_h
#define cmMakefileUtilityTargetGenerator_h
+#include <cmConfigure.h>
+
#include "cmMakefileTargetGenerator.h"
+class cmGeneratorTarget;
+
class cmMakefileUtilityTargetGenerator : public cmMakefileTargetGenerator
{
public:
diff --git a/Source/cmNewLineStyle.cxx b/Source/cmNewLineStyle.cxx
index d64993ae88..e9d017e5b5 100644
--- a/Source/cmNewLineStyle.cxx
+++ b/Source/cmNewLineStyle.cxx
@@ -11,6 +11,8 @@
============================================================================*/
#include "cmNewLineStyle.h"
+#include <stddef.h>
+
cmNewLineStyle::cmNewLineStyle()
: NewLineStyle(Invalid)
{
diff --git a/Source/cmNewLineStyle.h b/Source/cmNewLineStyle.h
index 800f131867..427348ad86 100644
--- a/Source/cmNewLineStyle.h
+++ b/Source/cmNewLineStyle.h
@@ -12,7 +12,10 @@
#ifndef cmNewLineStyle_h
#define cmNewLineStyle_h
-#include "cmStandardIncludes.h"
+#include <cmConfigure.h> // IWYU pragma: keep
+
+#include <string>
+#include <vector>
class cmNewLineStyle
{
diff --git a/Source/cmNinjaNormalTargetGenerator.cxx b/Source/cmNinjaNormalTargetGenerator.cxx
index 7644df339a..d0db1333ed 100644
--- a/Source/cmNinjaNormalTargetGenerator.cxx
+++ b/Source/cmNinjaNormalTargetGenerator.cxx
@@ -13,18 +13,30 @@
#include "cmNinjaNormalTargetGenerator.h"
#include "cmAlgorithms.h"
+#include "cmCustomCommand.h"
#include "cmCustomCommandGenerator.h"
#include "cmGeneratedFileStream.h"
#include "cmGeneratorTarget.h"
#include "cmGlobalNinjaGenerator.h"
+#include "cmLocalGenerator.h"
#include "cmLocalNinjaGenerator.h"
#include "cmMakefile.h"
+#include "cmNinjaTypes.h"
#include "cmOSXBundleGenerator.h"
+#include "cmOutputConverter.h"
#include "cmSourceFile.h"
+#include "cmState.h"
+#include "cmSystemTools.h"
+#include "cmake.h"
#include <algorithm>
#include <assert.h>
+#include <iterator>
#include <limits>
+#include <map>
+#include <set>
+#include <sstream>
+#include <stddef.h>
#ifndef _WIN32
#include <unistd.h>
diff --git a/Source/cmNinjaNormalTargetGenerator.h b/Source/cmNinjaNormalTargetGenerator.h
index f466e175aa..1f670bfca1 100644
--- a/Source/cmNinjaNormalTargetGenerator.h
+++ b/Source/cmNinjaNormalTargetGenerator.h
@@ -13,14 +13,13 @@
#ifndef cmNinjaNormalTargetGenerator_h
#define cmNinjaNormalTargetGenerator_h
-#include "cmNinjaTargetGenerator.h"
+#include <cmConfigure.h>
-#include "cmNinjaTypes.h"
+#include "cmNinjaTargetGenerator.h"
-#include <set>
+#include <string>
+#include <vector>
-class cmSourceFile;
-class cmOSXBundleGenerator;
class cmGeneratorTarget;
class cmNinjaNormalTargetGenerator : public cmNinjaTargetGenerator
diff --git a/Source/cmNinjaTargetGenerator.cxx b/Source/cmNinjaTargetGenerator.cxx
index 9030e05bb0..6ac59d576b 100644
--- a/Source/cmNinjaTargetGenerator.cxx
+++ b/Source/cmNinjaTargetGenerator.cxx
@@ -18,14 +18,22 @@
#include "cmGeneratedFileStream.h"
#include "cmGeneratorTarget.h"
#include "cmGlobalNinjaGenerator.h"
+#include "cmLocalGenerator.h"
#include "cmLocalNinjaGenerator.h"
#include "cmMakefile.h"
#include "cmNinjaNormalTargetGenerator.h"
#include "cmNinjaUtilityTargetGenerator.h"
+#include "cmOutputConverter.h"
#include "cmSourceFile.h"
+#include "cmState.h"
#include "cmSystemTools.h"
+#include "cmake.h"
#include <algorithm>
+#include <iterator>
+#include <map>
+#include <sstream>
+#include <string.h>
cmNinjaTargetGenerator* cmNinjaTargetGenerator::New(cmGeneratorTarget* target)
{
diff --git a/Source/cmNinjaTargetGenerator.h b/Source/cmNinjaTargetGenerator.h
index 9740f0e087..2b2678850e 100644
--- a/Source/cmNinjaTargetGenerator.h
+++ b/Source/cmNinjaTargetGenerator.h
@@ -13,19 +13,23 @@
#ifndef cmNinjaTargetGenerator_h
#define cmNinjaTargetGenerator_h
-#include "cmCommonTargetGenerator.h"
+#include <cmConfigure.h>
+#include "cmCommonTargetGenerator.h"
#include "cmGlobalNinjaGenerator.h"
-#include "cmLocalNinjaGenerator.h"
#include "cmNinjaTypes.h"
#include "cmOSXBundleGenerator.h"
-class cmTarget;
+#include <set>
+#include <string>
+#include <vector>
+
+class cmCustomCommand;
class cmGeneratedFileStream;
class cmGeneratorTarget;
+class cmLocalNinjaGenerator;
class cmMakefile;
class cmSourceFile;
-class cmCustomCommand;
class cmNinjaTargetGenerator : public cmCommonTargetGenerator
{
diff --git a/Source/cmNinjaUtilityTargetGenerator.cxx b/Source/cmNinjaUtilityTargetGenerator.cxx
index 96a17ffe35..49836f27a8 100644
--- a/Source/cmNinjaUtilityTargetGenerator.cxx
+++ b/Source/cmNinjaUtilityTargetGenerator.cxx
@@ -15,9 +15,21 @@
#include "cmCustomCommand.h"
#include "cmCustomCommandGenerator.h"
#include "cmGeneratedFileStream.h"
+#include "cmGeneratorTarget.h"
#include "cmGlobalNinjaGenerator.h"
+#include "cmLocalNinjaGenerator.h"
#include "cmMakefile.h"
+#include "cmNinjaTypes.h"
+#include "cmOutputConverter.h"
#include "cmSourceFile.h"
+#include "cmState.h"
+#include "cmSystemTools.h"
+#include "cmake.h"
+
+#include <algorithm>
+#include <iterator>
+#include <string>
+#include <vector>
cmNinjaUtilityTargetGenerator::cmNinjaUtilityTargetGenerator(
cmGeneratorTarget* target)
diff --git a/Source/cmNinjaUtilityTargetGenerator.h b/Source/cmNinjaUtilityTargetGenerator.h
index 0c33a54683..78015aa679 100644
--- a/Source/cmNinjaUtilityTargetGenerator.h
+++ b/Source/cmNinjaUtilityTargetGenerator.h
@@ -13,11 +13,11 @@
#ifndef cmNinjaUtilityTargetGenerator_h
#define cmNinjaUtilityTargetGenerator_h
-#include "cmNinjaTargetGenerator.h"
+#include <cmConfigure.h>
-#include "cmNinjaTypes.h"
+#include "cmNinjaTargetGenerator.h"
-class cmSourceFile;
+class cmGeneratorTarget;
class cmNinjaUtilityTargetGenerator : public cmNinjaTargetGenerator
{
diff --git a/Source/cmPolicies.cxx b/Source/cmPolicies.cxx
index c456d88eef..7688c59945 100644
--- a/Source/cmPolicies.cxx
+++ b/Source/cmPolicies.cxx
@@ -2,14 +2,18 @@
#include "cmAlgorithms.h"
#include "cmMakefile.h"
+#include "cmState.h"
+#include "cmSystemTools.h"
#include "cmVersion.h"
-#include "cmVersionMacros.h"
#include "cmake.h"
+
#include <assert.h>
+#include <cmConfigure.h>
#include <ctype.h>
-#include <map>
-#include <queue>
-#include <set>
+#include <sstream>
+#include <stdio.h>
+#include <string.h>
+#include <vector>
static bool stringToId(const char* input, cmPolicies::PolicyID& pid)
{
diff --git a/Source/cmPolicies.h b/Source/cmPolicies.h
index 0c8ff6039c..149bb46594 100644
--- a/Source/cmPolicies.h
+++ b/Source/cmPolicies.h
@@ -12,12 +12,12 @@
#ifndef cmPolicies_h
#define cmPolicies_h
-#include "cmStandardIncludes.h"
+#include <cmConfigure.h> // IWYU pragma: keep
#include <bitset>
+#include <string>
class cmMakefile;
-class cmPolicy;
#define CM_FOR_EACH_POLICY_TABLE(POLICY, SELECT) \
SELECT(POLICY, CMP0000, \
diff --git a/Source/cmProcessTools.cxx b/Source/cmProcessTools.cxx
index 34b8df2f09..4a0d4590db 100644
--- a/Source/cmProcessTools.cxx
+++ b/Source/cmProcessTools.cxx
@@ -12,6 +12,7 @@
#include "cmProcessTools.h"
#include <cmsys/Process.h>
+#include <ostream>
void cmProcessTools::RunProcess(struct cmsysProcess_s* cp, OutputParser* out,
OutputParser* err)
diff --git a/Source/cmProcessTools.h b/Source/cmProcessTools.h
index 61bfc64064..3d2a224a54 100644
--- a/Source/cmProcessTools.h
+++ b/Source/cmProcessTools.h
@@ -12,7 +12,11 @@
#ifndef cmProcessTools_h
#define cmProcessTools_h
-#include "cmStandardIncludes.h"
+#include <cmConfigure.h>
+
+#include <iosfwd>
+#include <string.h>
+#include <string>
/** \class cmProcessTools
* \brief Helper classes for process output parsing
diff --git a/Source/cmProperty.cxx b/Source/cmProperty.cxx
index 133258f434..75b44cbddf 100644
--- a/Source/cmProperty.cxx
+++ b/Source/cmProperty.cxx
@@ -11,7 +11,7 @@
============================================================================*/
#include "cmProperty.h"
-#include "cmSystemTools.h"
+#include <cmConfigure.h>
void cmProperty::Set(const char* value)
{
diff --git a/Source/cmProperty.h b/Source/cmProperty.h
index 1736136ef2..2091360a34 100644
--- a/Source/cmProperty.h
+++ b/Source/cmProperty.h
@@ -12,7 +12,9 @@
#ifndef cmProperty_h
#define cmProperty_h
-#include "cmStandardIncludes.h"
+#include <cmConfigure.h> // IWYU pragma: keep
+
+#include <string>
class cmProperty
{
diff --git a/Source/cmPropertyDefinition.cxx b/Source/cmPropertyDefinition.cxx
index 546146ba9f..003898ac4b 100644
--- a/Source/cmPropertyDefinition.cxx
+++ b/Source/cmPropertyDefinition.cxx
@@ -11,8 +11,6 @@
============================================================================*/
#include "cmPropertyDefinition.h"
-#include "cmSystemTools.h"
-
void cmPropertyDefinition::DefineProperty(const std::string& name,
cmProperty::ScopeType scope,
const char* shortDescription,
diff --git a/Source/cmPropertyDefinition.h b/Source/cmPropertyDefinition.h
index 5733917098..5804df926e 100644
--- a/Source/cmPropertyDefinition.h
+++ b/Source/cmPropertyDefinition.h
@@ -12,8 +12,12 @@
#ifndef cmPropertyDefinition_h
#define cmPropertyDefinition_h
+#include <cmConfigure.h> // IWYU pragma: keep
+
#include "cmProperty.h"
+#include <string>
+
/** \class cmPropertyDefinition
* \brief Property meta-information
*
diff --git a/Source/cmPropertyDefinitionMap.cxx b/Source/cmPropertyDefinitionMap.cxx
index 0ba35e716a..0015337a0d 100644
--- a/Source/cmPropertyDefinitionMap.cxx
+++ b/Source/cmPropertyDefinitionMap.cxx
@@ -11,8 +11,7 @@
============================================================================*/
#include "cmPropertyDefinitionMap.h"
-#include "cmDocumentationSection.h"
-#include "cmSystemTools.h"
+#include <utility>
void cmPropertyDefinitionMap::DefineProperty(const std::string& name,
cmProperty::ScopeType scope,
diff --git a/Source/cmPropertyDefinitionMap.h b/Source/cmPropertyDefinitionMap.h
index fbc9a18144..a4e460079e 100644
--- a/Source/cmPropertyDefinitionMap.h
+++ b/Source/cmPropertyDefinitionMap.h
@@ -12,9 +12,13 @@
#ifndef cmPropertyDefinitionMap_h
#define cmPropertyDefinitionMap_h
+#include <cmConfigure.h> // IWYU pragma: keep
+
+#include "cmProperty.h"
#include "cmPropertyDefinition.h"
-class cmDocumentationSection;
+#include <map>
+#include <string>
class cmPropertyDefinitionMap
: public std::map<std::string, cmPropertyDefinition>
diff --git a/Source/cmPropertyMap.cxx b/Source/cmPropertyMap.cxx
index 1e1ff910a8..5a6ba2a3cb 100644
--- a/Source/cmPropertyMap.cxx
+++ b/Source/cmPropertyMap.cxx
@@ -11,12 +11,10 @@
============================================================================*/
#include "cmPropertyMap.h"
-#include "cmState.h"
-#include "cmSystemTools.h"
-#include "cmake.h"
-
#include <algorithm>
#include <assert.h>
+#include <cmConfigure.h>
+#include <utility>
cmProperty* cmPropertyMap::GetOrCreateProperty(const std::string& name)
{
diff --git a/Source/cmPropertyMap.h b/Source/cmPropertyMap.h
index 6dc7bfbbe5..151255ea59 100644
--- a/Source/cmPropertyMap.h
+++ b/Source/cmPropertyMap.h
@@ -12,8 +12,14 @@
#ifndef cmPropertyMap_h
#define cmPropertyMap_h
+#include <cmConfigure.h> // IWYU pragma: keep
+
#include "cmProperty.h"
+#include <map>
+#include <string>
+#include <vector>
+
class cmPropertyMap : public std::map<std::string, cmProperty>
{
public: