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