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