1e5dd7070Spatrickmodule Clang_Analysis { 2e5dd7070Spatrick requires cplusplus 3e5dd7070Spatrick umbrella "Analysis" 4e5dd7070Spatrick 5e5dd7070Spatrick textual header "Analysis/Analyses/ThreadSafetyOps.def" 6e5dd7070Spatrick 7e5dd7070Spatrick module * { export * } 8e5dd7070Spatrick 9e5dd7070Spatrick // FIXME: Exclude these headers to avoid pulling all of the AST matchers 10e5dd7070Spatrick // library into clang. Due to inline key functions in the headers, 11e5dd7070Spatrick // importing the AST matchers library gives a link dependency on the AST 12e5dd7070Spatrick // matchers (and thus the AST), which clang-format should not have. 13e5dd7070Spatrick exclude header "Analysis/Analyses/ExprMutationAnalyzer.h" 14e5dd7070Spatrick} 15e5dd7070Spatrick 16e5dd7070Spatrickmodule Clang_AST { 17e5dd7070Spatrick requires cplusplus 18e5dd7070Spatrick umbrella "AST" 19e5dd7070Spatrick 20e5dd7070Spatrick textual header "AST/BuiltinTypes.def" 21e5dd7070Spatrick textual header "AST/CXXRecordDeclDefinitionBits.def" 22e5dd7070Spatrick textual header "AST/OperationKinds.def" 23e5dd7070Spatrick textual header "AST/TypeLocNodes.def" 24e5dd7070Spatrick 25e5dd7070Spatrick module * { export * } 26e5dd7070Spatrick} 27e5dd7070Spatrick 28e5dd7070Spatrickmodule Clang_ASTMatchers { requires cplusplus umbrella "ASTMatchers" module * { export * } } 29e5dd7070Spatrick 30e5dd7070Spatrickmodule Clang_Basic { 31e5dd7070Spatrick requires cplusplus 32e5dd7070Spatrick umbrella "Basic" 33e5dd7070Spatrick 34e5dd7070Spatrick textual header "Basic/AArch64SVEACLETypes.def" 35e5dd7070Spatrick textual header "Basic/BuiltinsAArch64.def" 36e5dd7070Spatrick textual header "Basic/BuiltinsAMDGPU.def" 37*12c85518Srobert textual header "Basic/BuiltinsAArch64NeonSVEBridge.def" 38*12c85518Srobert textual header "Basic/BuiltinsAArch64NeonSVEBridge_cg.def" 39e5dd7070Spatrick textual header "Basic/BuiltinsARM.def" 40e5dd7070Spatrick textual header "Basic/BuiltinsBPF.def" 41e5dd7070Spatrick textual header "Basic/Builtins.def" 42*12c85518Srobert textual header "Basic/BuiltinHeaders.def" 43e5dd7070Spatrick textual header "Basic/BuiltinsHexagon.def" 44ec727ea7Spatrick textual header "Basic/BuiltinsHexagonDep.def" 45ec727ea7Spatrick textual header "Basic/BuiltinsHexagonMapCustomDep.def" 46*12c85518Srobert textual header "Basic/BuiltinsLoongArch.def" 47e5dd7070Spatrick textual header "Basic/BuiltinsMips.def" 48e5dd7070Spatrick textual header "Basic/BuiltinsNEON.def" 49e5dd7070Spatrick textual header "Basic/BuiltinsNVPTX.def" 50e5dd7070Spatrick textual header "Basic/BuiltinsPPC.def" 51a9ac8606Spatrick textual header "Basic/BuiltinsRISCV.def" 52*12c85518Srobert textual header "Basic/BuiltinsRISCVVector.def" 53ec727ea7Spatrick textual header "Basic/BuiltinsSVE.def" 54e5dd7070Spatrick textual header "Basic/BuiltinsSystemZ.def" 55*12c85518Srobert textual header "Basic/BuiltinsVE.def" 56*12c85518Srobert textual header "Basic/BuiltinsVEVL.gen.def" 57e5dd7070Spatrick textual header "Basic/BuiltinsWebAssembly.def" 58e5dd7070Spatrick textual header "Basic/BuiltinsX86.def" 59e5dd7070Spatrick textual header "Basic/BuiltinsX86_64.def" 60e5dd7070Spatrick textual header "Basic/BuiltinsXCore.def" 61e5dd7070Spatrick textual header "Basic/CodeGenOptions.def" 62e5dd7070Spatrick textual header "Basic/DiagnosticOptions.def" 63e5dd7070Spatrick textual header "Basic/Features.def" 64ec727ea7Spatrick textual header "Basic/FPOptions.def" 65e5dd7070Spatrick textual header "Basic/MSP430Target.def" 66e5dd7070Spatrick textual header "Basic/LangOptions.def" 67e5dd7070Spatrick textual header "Basic/OpenCLExtensions.def" 68e5dd7070Spatrick textual header "Basic/OpenCLImageTypes.def" 69e5dd7070Spatrick textual header "Basic/OpenCLExtensionTypes.def" 70e5dd7070Spatrick textual header "Basic/OpenMPKinds.def" 71e5dd7070Spatrick textual header "Basic/OperatorKinds.def" 72a9ac8606Spatrick textual header "Basic/PPCTypes.def" 73a9ac8606Spatrick textual header "Basic/RISCVVTypes.def" 74e5dd7070Spatrick textual header "Basic/Sanitizers.def" 75a9ac8606Spatrick textual header "Basic/TargetCXXABI.def" 76*12c85518Srobert textual header "Basic/TransformTypeTraits.def" 77e5dd7070Spatrick 78e5dd7070Spatrick module * { export * } 79e5dd7070Spatrick} 80*12c85518Srobertmodule Clang_Basic_TokenKinds { 81*12c85518Srobert requires cplusplus 82*12c85518Srobert 83*12c85518Srobert header "Basic/TokenKinds.h" 84*12c85518Srobert textual header "Basic/TokenKinds.def" 85*12c85518Srobert 86*12c85518Srobert export * 87*12c85518Srobert} 88e5dd7070Spatrick 89e5dd7070Spatrickmodule Clang_CodeGen { requires cplusplus umbrella "CodeGen" module * { export * } } 90e5dd7070Spatrickmodule Clang_Config { requires cplusplus umbrella "Config" module * { export * } } 91e5dd7070Spatrick 92e5dd7070Spatrick// Files for diagnostic groups are spread all over the include/clang/ tree, but 93e5dd7070Spatrick// logically form a single module. 94e5dd7070Spatrickmodule Clang_Diagnostics { 95e5dd7070Spatrick requires cplusplus 96e5dd7070Spatrick 97e5dd7070Spatrick module All { header "Basic/AllDiagnostics.h" export * } 98*12c85518Srobert module Analysis { textual header "Analysis/Analyses/UnsafeBufferUsageGadgets.def" } 99e5dd7070Spatrick module AST { header "AST/ASTDiagnostic.h" export * } 100e5dd7070Spatrick module Comment { header "AST/CommentDiagnostic.h" export * } 101e5dd7070Spatrick module Driver { header "Driver/DriverDiagnostic.h" export * } 102e5dd7070Spatrick module Frontend { header "Frontend/FrontendDiagnostic.h" export * } 103e5dd7070Spatrick module Lex { header "Lex/LexDiagnostic.h" export * } 104e5dd7070Spatrick module Parse { header "Parse/ParseDiagnostic.h" export * } 105e5dd7070Spatrick module Sema { header "Sema/SemaDiagnostic.h" export * } 106e5dd7070Spatrick module Serialization { header "Serialization/SerializationDiagnostic.h" export * } 107e5dd7070Spatrick module Refactoring { header "Tooling/Refactoring/RefactoringDiagnostic.h" export * } 108e5dd7070Spatrick} 109e5dd7070Spatrick 110e5dd7070Spatrickmodule Clang_Driver { 111e5dd7070Spatrick requires cplusplus 112e5dd7070Spatrick umbrella "Driver" 113e5dd7070Spatrick 114e5dd7070Spatrick textual header "Driver/Types.def" 115e5dd7070Spatrick 116e5dd7070Spatrick module * { export * } 117e5dd7070Spatrick} 118e5dd7070Spatrick 119e5dd7070Spatrickmodule Clang_Edit { requires cplusplus umbrella "Edit" module * { export * } } 120e5dd7070Spatrickmodule Clang_Format { requires cplusplus umbrella "Format" module * { export * } } 121e5dd7070Spatrick 122e5dd7070Spatrickmodule Clang_Frontend { 123e5dd7070Spatrick requires cplusplus 124e5dd7070Spatrick umbrella "Frontend" 125e5dd7070Spatrick 126e5dd7070Spatrick textual header "Basic/LangStandards.def" 127e5dd7070Spatrick 128e5dd7070Spatrick module * { export * } 129e5dd7070Spatrick} 130e5dd7070Spatrick 131e5dd7070Spatrickmodule Clang_FrontendTool { requires cplusplus umbrella "FrontendTool" module * { export * } } 132e5dd7070Spatrickmodule Clang_Index { requires cplusplus umbrella "Index" module * { export * } } 133e5dd7070Spatrickmodule Clang_Lex { requires cplusplus umbrella "Lex" module * { export * } } 134e5dd7070Spatrickmodule Clang_Parse { requires cplusplus umbrella "Parse" module * { export * } } 135e5dd7070Spatrickmodule Clang_Rewrite { requires cplusplus umbrella "Rewrite/Core" module * { export * } } 136e5dd7070Spatrickmodule Clang_RewriteFrontend { requires cplusplus umbrella "Rewrite/Frontend" module * { export * } } 137e5dd7070Spatrickmodule Clang_Sema { requires cplusplus umbrella "Sema" module * { export * } } 138e5dd7070Spatrick 139e5dd7070Spatrickmodule Clang_Serialization { 140e5dd7070Spatrick requires cplusplus 141e5dd7070Spatrick umbrella "Serialization" 142e5dd7070Spatrick 143e5dd7070Spatrick textual header "Serialization/TypeBitCodes.def" 144e5dd7070Spatrick 145e5dd7070Spatrick module * { export * } 146e5dd7070Spatrick} 147e5dd7070Spatrick 148e5dd7070Spatrickmodule Clang_StaticAnalyzer_Core { 149e5dd7070Spatrick requires cplusplus 150e5dd7070Spatrick umbrella "StaticAnalyzer/Core" 151e5dd7070Spatrick 152e5dd7070Spatrick textual header "StaticAnalyzer/Core/Analyses.def" 153e5dd7070Spatrick textual header "StaticAnalyzer/Core/AnalyzerOptions.def" 154e5dd7070Spatrick textual header "StaticAnalyzer/Core/PathSensitive/SVals.def" 155e5dd7070Spatrick textual header "StaticAnalyzer/Core/PathSensitive/Symbols.def" 156e5dd7070Spatrick textual header "StaticAnalyzer/Core/PathSensitive/Regions.def" 157e5dd7070Spatrick 158e5dd7070Spatrick module * { export * } 159e5dd7070Spatrick} 160e5dd7070Spatrick 161e5dd7070Spatrickmodule Clang_StaticAnalyzer_Checkers { 162e5dd7070Spatrick requires cplusplus 163e5dd7070Spatrick umbrella "StaticAnalyzer/Checkers" 164e5dd7070Spatrick module * { export * } 165e5dd7070Spatrick} 166e5dd7070Spatrick 167e5dd7070Spatrickmodule Clang_StaticAnalyzer_Frontend { 168e5dd7070Spatrick requires cplusplus 169e5dd7070Spatrick umbrella "StaticAnalyzer/Frontend" 170e5dd7070Spatrick module * { export * } 171e5dd7070Spatrick} 172e5dd7070Spatrick 173ec727ea7Spatrickmodule Clang_Testing { 174ec727ea7Spatrick requires cplusplus 175ec727ea7Spatrick umbrella "Testing" 176ec727ea7Spatrick module * { export * } 177ec727ea7Spatrick} 178ec727ea7Spatrick 179e5dd7070Spatrickmodule Clang_Tooling { 180e5dd7070Spatrick requires cplusplus umbrella "Tooling" module * { export * } 181e5dd7070Spatrick // FIXME: Exclude these headers to avoid pulling all of the AST matchers 182e5dd7070Spatrick // library into clang-format. Due to inline key functions in the headers, 183e5dd7070Spatrick // importing the AST matchers library gives a link dependency on the AST 184e5dd7070Spatrick // matchers (and thus the AST), which clang-format should not have. 185e5dd7070Spatrick exclude header "Tooling/RefactoringCallbacks.h" 186e5dd7070Spatrick} 187e5dd7070Spatrick 188e5dd7070Spatrickmodule Clang_ToolingCore { 189e5dd7070Spatrick requires cplusplus 190e5dd7070Spatrick umbrella "Tooling/Core" module * { export * } 191e5dd7070Spatrick} 192e5dd7070Spatrick 193e5dd7070Spatrickmodule Clang_ToolingInclusions { 194e5dd7070Spatrick requires cplusplus 195*12c85518Srobert umbrella "Tooling/Inclusions" 196*12c85518Srobert textual header "Tooling/Inclusions/CSymbolMap.inc" 197*12c85518Srobert textual header "Tooling/Inclusions/StdSymbolMap.inc" 198*12c85518Srobert module * { export * } 199e5dd7070Spatrick} 200