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