diff --git a/Source/CursesDialog/cmCursesCacheEntryComposite.h b/Source/CursesDialog/cmCursesCacheEntryComposite.h index 8ed390287..c9c8238fa 100644 --- a/Source/CursesDialog/cmCursesCacheEntryComposite.h +++ b/Source/CursesDialog/cmCursesCacheEntryComposite.h @@ -14,6 +14,8 @@ #include "cmCursesLabelWidget.h" +class cmake; + class cmCursesCacheEntryComposite { public: diff --git a/Source/cmCacheManager.h b/Source/cmCacheManager.h index 23318673a..14e0f0a5f 100644 --- a/Source/cmCacheManager.h +++ b/Source/cmCacheManager.h @@ -17,6 +17,7 @@ #include "cmPropertyMap.h" #include "cmState.h" +class cmake; class cmMarkAsAdvancedCommand; /** \class cmCacheManager diff --git a/Source/cmGhsMultiTargetGenerator.h b/Source/cmGhsMultiTargetGenerator.h index 92a1109cb..118cae6c0 100644 --- a/Source/cmGhsMultiTargetGenerator.h +++ b/Source/cmGhsMultiTargetGenerator.h @@ -16,13 +16,13 @@ #include "cmTarget.h" +class cmCustomCommand; class cmGeneratedFileStream; +class cmGeneratorTarget; class cmGlobalGhsMultiGenerator; class cmLocalGhsMultiGenerator; class cmMakefile; class cmSourceFile; -class cmGeneratedFileStream; -class cmCustomCommand; class cmGhsMultiTargetGenerator { diff --git a/Source/cmState.cxx b/Source/cmState.cxx index 0470508e2..d4eb90aea 100644 --- a/Source/cmState.cxx +++ b/Source/cmState.cxx @@ -15,10 +15,19 @@ #include "cmCacheManager.h" #include "cmCommand.h" #include "cmDefinitions.h" +#include "cmListFileCache.h" +#include "cmSystemTools.h" +#include "cmTypeMacro.h" #include "cmVersion.h" #include "cmake.h" +#include #include +#include +#include +#include +#include +#include struct cmState::SnapshotDataType { diff --git a/Source/cmState.h b/Source/cmState.h index e5f99173b..9ab421389 100644 --- a/Source/cmState.h +++ b/Source/cmState.h @@ -12,19 +12,25 @@ #ifndef cmState_h #define cmState_h -#include "cmStandardIncludes.h" +#include // IWYU pragma: keep #include "cmAlgorithms.h" +#include "cmDefinitions.h" #include "cmLinkedTree.h" #include "cmPolicies.h" +#include "cmProperty.h" #include "cmPropertyDefinitionMap.h" #include "cmPropertyMap.h" -class cmake; -class cmCommand; -class cmDefinitions; -class cmListFileBacktrace; +#include +#include +#include +#include + class cmCacheManager; +class cmCommand; +class cmListFileBacktrace; +class cmPropertyDefinition; class cmState { diff --git a/Source/cmSystemTools.h b/Source/cmSystemTools.h index d0a28e173..3c1a9f4f2 100644 --- a/Source/cmSystemTools.h +++ b/Source/cmSystemTools.h @@ -12,10 +12,13 @@ #ifndef cmSystemTools_h #define cmSystemTools_h -#include "cmStandardIncludes.h" +#include // IWYU pragma: keep #include #include +#include +#include +#include class cmSystemToolsFileTime; diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx index 847653867..5681885dc 100644 --- a/Source/cmTarget.cxx +++ b/Source/cmTarget.cxx @@ -12,21 +12,25 @@ #include "cmTarget.h" #include "cmAlgorithms.h" -#include "cmComputeLinkInformation.h" #include "cmGeneratorExpression.h" -#include "cmGeneratorExpressionDAGChecker.h" +#include "cmGeneratorTarget.h" #include "cmGlobalGenerator.h" #include "cmListFileCache.h" #include "cmMakefile.h" #include "cmOutputConverter.h" +#include "cmProperty.h" #include "cmSourceFile.h" +#include "cmSourceFileLocation.h" +#include "cmSystemTools.h" #include "cmake.h" + +#include #include #include -#include #include #include -#include // required for atof +#include +#include #if defined(CMake_HAVE_CXX_UNORDERED_SET) #include diff --git a/Source/cmTarget.h b/Source/cmTarget.h index 209a7298d..fc30166f0 100644 --- a/Source/cmTarget.h +++ b/Source/cmTarget.h @@ -12,14 +12,23 @@ #ifndef cmTarget_h #define cmTarget_h -#include "cmStandardIncludes.h" +#include // IWYU pragma: keep +#include "cmAlgorithms.h" #include "cmCustomCommand.h" #include "cmListFileCache.h" #include "cmPolicies.h" #include "cmPropertyMap.h" +#include "cmState.h" +#include "cmTargetLinkLibraryType.h" + +#include +#include +#include +#include +#include +#include -#include #if defined(CMAKE_BUILD_WITH_CMAKE) #ifdef CMake_HAVE_CXX_UNORDERED_MAP #include @@ -28,16 +37,10 @@ #endif #endif -class cmake; class cmMakefile; class cmSourceFile; -class cmGlobalGenerator; -class cmListFileBacktrace; -class cmTarget; -class cmGeneratorTarget; -class cmTargetTraceDependencies; - class cmTargetInternals; + class cmTargetInternalPointer { public: diff --git a/Source/cmTest.cxx b/Source/cmTest.cxx index 0658e9586..790a3f836 100644 --- a/Source/cmTest.cxx +++ b/Source/cmTest.cxx @@ -11,10 +11,10 @@ ============================================================================*/ #include "cmTest.h" -#include "cmSystemTools.h" - #include "cmMakefile.h" -#include "cmake.h" +#include "cmProperty.h" +#include "cmState.h" +#include "cmSystemTools.h" cmTest::cmTest(cmMakefile* mf) : Backtrace(mf->GetBacktrace()) diff --git a/Source/cmTest.h b/Source/cmTest.h index db6800827..ce3867c57 100644 --- a/Source/cmTest.h +++ b/Source/cmTest.h @@ -12,11 +12,14 @@ #ifndef cmTest_h #define cmTest_h -#include "cmStandardIncludes.h" +#include // IWYU pragma: keep -#include "cmCustomCommand.h" #include "cmListFileCache.h" #include "cmPropertyMap.h" + +#include +#include + class cmMakefile; /** \class cmTest diff --git a/Source/cmTestGenerator.cxx b/Source/cmTestGenerator.cxx index 462edf937..cfc174e96 100644 --- a/Source/cmTestGenerator.cxx +++ b/Source/cmTestGenerator.cxx @@ -12,11 +12,19 @@ #include "cmTestGenerator.h" #include "cmGeneratorExpression.h" +#include "cmGeneratorTarget.h" #include "cmLocalGenerator.h" #include "cmOutputConverter.h" +#include "cmProperty.h" +#include "cmPropertyMap.h" +#include "cmState.h" #include "cmSystemTools.h" #include "cmTest.h" +#include +#include +#include + cmTestGenerator::cmTestGenerator( cmTest* test, std::vector const& configurations) : cmScriptGenerator("CTEST_CONFIGURATION_TYPE", configurations) diff --git a/Source/cmTestGenerator.h b/Source/cmTestGenerator.h index 66d590eaf..44574e7a7 100644 --- a/Source/cmTestGenerator.h +++ b/Source/cmTestGenerator.h @@ -12,10 +12,16 @@ #ifndef cmTestGenerator_h #define cmTestGenerator_h +#include // IWYU pragma: keep + #include "cmScriptGenerator.h" -class cmTest; +#include +#include +#include + class cmLocalGenerator; +class cmTest; /** \class cmTestGenerator * \brief Support class for generating install scripts. diff --git a/Source/cmUuid.cxx b/Source/cmUuid.cxx index 6d09bdf76..7bfc1097c 100644 --- a/Source/cmUuid.cxx +++ b/Source/cmUuid.cxx @@ -11,10 +11,10 @@ ============================================================================*/ #include "cmUuid.h" -#include - #include "cm_sha2.h" + #include +#include cmUuid::cmUuid() { diff --git a/Source/cmUuid.h b/Source/cmUuid.h index 2bd7ec521..f01230cb4 100644 --- a/Source/cmUuid.h +++ b/Source/cmUuid.h @@ -12,7 +12,10 @@ #ifndef cmUuid_h #define cmUuid_h -#include "cmStandardIncludes.h" +#include // IWYU pragma: keep + +#include +#include /** \class cmUuid * \brief Utility class to generate UUIDs as defined by RFC4122 diff --git a/Source/cmVariableWatch.cxx b/Source/cmVariableWatch.cxx index 56e2770d0..ce700dbfa 100644 --- a/Source/cmVariableWatch.cxx +++ b/Source/cmVariableWatch.cxx @@ -13,7 +13,9 @@ #include "cmAlgorithms.h" +#include #include +#include static const char* const cmVariableWatchAccessStrings[] = { "READ_ACCESS", "UNKNOWN_READ_ACCESS", "UNKNOWN_DEFINED_ACCESS", diff --git a/Source/cmVariableWatch.h b/Source/cmVariableWatch.h index 5ddb9075a..88b3d1cbc 100644 --- a/Source/cmVariableWatch.h +++ b/Source/cmVariableWatch.h @@ -12,7 +12,11 @@ #ifndef cmVariableWatch_h #define cmVariableWatch_h -#include "cmStandardIncludes.h" +#include // IWYU pragma: keep + +#include +#include +#include class cmMakefile; diff --git a/Source/cmVersion.cxx b/Source/cmVersion.cxx index 4c2e4ce60..88cae0ba0 100644 --- a/Source/cmVersion.cxx +++ b/Source/cmVersion.cxx @@ -11,7 +11,7 @@ ============================================================================*/ #include "cmVersion.h" -#include "cmVersionMacros.h" +#include "cmVersionConfig.h" unsigned int cmVersion::GetMajorVersion() { diff --git a/Source/cmVersion.h b/Source/cmVersion.h index 46fd5a604..20e4c8cac 100644 --- a/Source/cmVersion.h +++ b/Source/cmVersion.h @@ -12,7 +12,7 @@ #ifndef cmVersion_h #define cmVersion_h -#include "cmStandardIncludes.h" +#include /** \class cmVersion * \brief Helper class for providing CMake and CTest version information. diff --git a/Source/cmXMLParser.cxx b/Source/cmXMLParser.cxx index 5e06d365d..a62c36f80 100644 --- a/Source/cmXMLParser.cxx +++ b/Source/cmXMLParser.cxx @@ -11,10 +11,12 @@ ============================================================================*/ #include "cmXMLParser.h" -#include - #include +#include #include +#include +#include +#include cmXMLParser::cmXMLParser() { diff --git a/Source/cmXMLParser.h b/Source/cmXMLParser.h index 6aae81df3..319b29510 100644 --- a/Source/cmXMLParser.h +++ b/Source/cmXMLParser.h @@ -12,7 +12,9 @@ #ifndef cmXMLParser_h #define cmXMLParser_h -#include "cmStandardIncludes.h" +#include // IWYU pragma: keep + +#include extern "C" { void cmXMLParserStartElement(void*, const char*, const char**); diff --git a/Source/cmXMLSafe.cxx b/Source/cmXMLSafe.cxx index f899f577c..85751817a 100644 --- a/Source/cmXMLSafe.cxx +++ b/Source/cmXMLSafe.cxx @@ -13,9 +13,7 @@ #include "cm_utf8.h" -#include #include - #include #include diff --git a/Source/cmXMLSafe.h b/Source/cmXMLSafe.h index 11ced13c0..a1874370e 100644 --- a/Source/cmXMLSafe.h +++ b/Source/cmXMLSafe.h @@ -12,7 +12,7 @@ #ifndef cmXMLSafe_h #define cmXMLSafe_h -#include +#include // IWYU pragma: keep #include #include diff --git a/Source/cmXMLWriter.cxx b/Source/cmXMLWriter.cxx index e2dce93d3..eda5bef4c 100644 --- a/Source/cmXMLWriter.cxx +++ b/Source/cmXMLWriter.cxx @@ -11,8 +11,6 @@ ============================================================================*/ #include "cmXMLWriter.h" -#include "cmXMLSafe.h" - #include #include diff --git a/Source/cmXMLWriter.h b/Source/cmXMLWriter.h index 8a88dd4a9..c30396359 100644 --- a/Source/cmXMLWriter.h +++ b/Source/cmXMLWriter.h @@ -12,7 +12,7 @@ #ifndef cmXMLWiter_h #define cmXMLWiter_h -#include "cmStandardIncludes.h" +#include // IWYU pragma: keep #include "cmXMLSafe.h" diff --git a/Source/cmcldeps.cxx b/Source/cmcldeps.cxx index 44f71f1cc..167d60a02 100644 --- a/Source/cmcldeps.cxx +++ b/Source/cmcldeps.cxx @@ -21,6 +21,7 @@ #include #include +#include #include #include diff --git a/Tests/CMakeLib/run_compile_commands.cxx b/Tests/CMakeLib/run_compile_commands.cxx index b811c7fd5..502ffe7c2 100644 --- a/Tests/CMakeLib/run_compile_commands.cxx +++ b/Tests/CMakeLib/run_compile_commands.cxx @@ -1,5 +1,13 @@ #include "cmSystemTools.h" +#include +#include +#include +#include +#include +#include +#include + class CompileCommandParser { public: diff --git a/Tests/CMakeLib/testSystemTools.cxx b/Tests/CMakeLib/testSystemTools.cxx index a3846c00a..e654d1e36 100644 --- a/Tests/CMakeLib/testSystemTools.cxx +++ b/Tests/CMakeLib/testSystemTools.cxx @@ -11,6 +11,9 @@ ============================================================================*/ #include "cmSystemTools.h" +#include +#include + #define cmPassed(m) std::cout << "Passed: " << m << "\n" #define cmFailed(m) \ std::cout << "FAILED: " << m << "\n"; \