106c3fb27SDimitry Andricmodule Clang_C { 206c3fb27SDimitry Andric umbrella "clang-c" 306c3fb27SDimitry Andric module * { export * } 406c3fb27SDimitry Andric} 506c3fb27SDimitry Andric 606c3fb27SDimitry Andricmodule Clang_Analysis { 706c3fb27SDimitry Andric requires cplusplus 806c3fb27SDimitry Andric umbrella "clang/Analysis" 906c3fb27SDimitry Andric 1006c3fb27SDimitry Andric textual header "clang/Analysis/Analyses/ThreadSafetyOps.def" 1106c3fb27SDimitry Andric 1206c3fb27SDimitry Andric module * { export * } 1306c3fb27SDimitry Andric 1406c3fb27SDimitry Andric // FIXME: Exclude these headers to avoid pulling all of the AST matchers 1506c3fb27SDimitry Andric // library into clang. Due to inline key functions in the headers, 1606c3fb27SDimitry Andric // importing the AST matchers library gives a link dependency on the AST 1706c3fb27SDimitry Andric // matchers (and thus the AST), which clang-format should not have. 1806c3fb27SDimitry Andric exclude header "clang/Analysis/Analyses/ExprMutationAnalyzer.h" 1906c3fb27SDimitry Andric} 2006c3fb27SDimitry Andric 2106c3fb27SDimitry Andricmodule Clang_AST { 2206c3fb27SDimitry Andric requires cplusplus 2306c3fb27SDimitry Andric umbrella "clang/AST" 2406c3fb27SDimitry Andric 2506c3fb27SDimitry Andric textual header "clang/AST/BuiltinTypes.def" 2606c3fb27SDimitry Andric textual header "clang/AST/CXXRecordDeclDefinitionBits.def" 2706c3fb27SDimitry Andric textual header "clang/AST/OperationKinds.def" 2806c3fb27SDimitry Andric textual header "clang/AST/TypeLocNodes.def" 2906c3fb27SDimitry Andric 3006c3fb27SDimitry Andric module * { export * } 3106c3fb27SDimitry Andric} 3206c3fb27SDimitry Andric 3306c3fb27SDimitry Andricmodule Clang_ASTMatchers { requires cplusplus umbrella "clang/ASTMatchers" module * { export * } } 3406c3fb27SDimitry Andric 3506c3fb27SDimitry Andricmodule Clang_Basic { 3606c3fb27SDimitry Andric requires cplusplus 3706c3fb27SDimitry Andric umbrella "clang/Basic" 3806c3fb27SDimitry Andric 3906c3fb27SDimitry Andric textual header "clang/Basic/AArch64SVEACLETypes.def" 40*0fca6ea1SDimitry Andric textual header "clang/Basic/AMDGPUTypes.def" 41*0fca6ea1SDimitry Andric textual header "clang/Basic/BuiltinHeaders.def" 4206c3fb27SDimitry Andric textual header "clang/Basic/BuiltinsAArch64.def" 4306c3fb27SDimitry Andric textual header "clang/Basic/BuiltinsAArch64NeonSVEBridge.def" 4406c3fb27SDimitry Andric textual header "clang/Basic/BuiltinsAArch64NeonSVEBridge_cg.def" 45*0fca6ea1SDimitry Andric textual header "clang/Basic/BuiltinsAMDGPU.def" 4606c3fb27SDimitry Andric textual header "clang/Basic/BuiltinsARM.def" 4706c3fb27SDimitry Andric textual header "clang/Basic/BuiltinsHexagon.def" 4806c3fb27SDimitry Andric textual header "clang/Basic/BuiltinsHexagonDep.def" 4906c3fb27SDimitry Andric textual header "clang/Basic/BuiltinsHexagonMapCustomDep.def" 5006c3fb27SDimitry Andric textual header "clang/Basic/BuiltinsLoongArch.def" 515f757f3fSDimitry Andric textual header "clang/Basic/BuiltinsLoongArchBase.def" 525f757f3fSDimitry Andric textual header "clang/Basic/BuiltinsLoongArchLASX.def" 53*0fca6ea1SDimitry Andric textual header "clang/Basic/BuiltinsLoongArchLSX.def" 5406c3fb27SDimitry Andric textual header "clang/Basic/BuiltinsMips.def" 5506c3fb27SDimitry Andric textual header "clang/Basic/BuiltinsNEON.def" 5606c3fb27SDimitry Andric textual header "clang/Basic/BuiltinsNVPTX.def" 5706c3fb27SDimitry Andric textual header "clang/Basic/BuiltinsPPC.def" 5806c3fb27SDimitry Andric textual header "clang/Basic/BuiltinsRISCVVector.def" 5906c3fb27SDimitry Andric textual header "clang/Basic/BuiltinsSME.def" 6006c3fb27SDimitry Andric textual header "clang/Basic/BuiltinsSVE.def" 6106c3fb27SDimitry Andric textual header "clang/Basic/BuiltinsSystemZ.def" 6206c3fb27SDimitry Andric textual header "clang/Basic/BuiltinsVE.def" 6306c3fb27SDimitry Andric textual header "clang/Basic/BuiltinsVEVL.gen.def" 6406c3fb27SDimitry Andric textual header "clang/Basic/BuiltinsWebAssembly.def" 6506c3fb27SDimitry Andric textual header "clang/Basic/BuiltinsX86.def" 6606c3fb27SDimitry Andric textual header "clang/Basic/BuiltinsX86_64.def" 6706c3fb27SDimitry Andric textual header "clang/Basic/BuiltinsXCore.def" 6806c3fb27SDimitry Andric textual header "clang/Basic/CodeGenOptions.def" 695f757f3fSDimitry Andric textual header "clang/Basic/DebugOptions.def" 7006c3fb27SDimitry Andric textual header "clang/Basic/DiagnosticOptions.def" 7106c3fb27SDimitry Andric textual header "clang/Basic/FPOptions.def" 72*0fca6ea1SDimitry Andric textual header "clang/Basic/Features.def" 7306c3fb27SDimitry Andric textual header "clang/Basic/LangOptions.def" 74*0fca6ea1SDimitry Andric textual header "clang/Basic/MSP430Target.def" 75*0fca6ea1SDimitry Andric textual header "clang/Basic/OpenACCClauses.def" 76*0fca6ea1SDimitry Andric textual header "clang/Basic/OpenCLExtensionTypes.def" 7706c3fb27SDimitry Andric textual header "clang/Basic/OpenCLExtensions.def" 7806c3fb27SDimitry Andric textual header "clang/Basic/OpenCLImageTypes.def" 7906c3fb27SDimitry Andric textual header "clang/Basic/OpenMPKinds.def" 8006c3fb27SDimitry Andric textual header "clang/Basic/OperatorKinds.def" 8106c3fb27SDimitry Andric textual header "clang/Basic/PPCTypes.def" 8206c3fb27SDimitry Andric textual header "clang/Basic/RISCVVTypes.def" 8306c3fb27SDimitry Andric textual header "clang/Basic/Sanitizers.def" 8406c3fb27SDimitry Andric textual header "clang/Basic/TargetCXXABI.def" 85*0fca6ea1SDimitry Andric textual header "clang/Basic/TargetOSMacros.def" 8606c3fb27SDimitry Andric textual header "clang/Basic/TokenKinds.def" 87*0fca6ea1SDimitry Andric textual header "clang/Basic/TransformTypeTraits.def" 8806c3fb27SDimitry Andric textual header "clang/Basic/WebAssemblyReferenceTypes.def" 8906c3fb27SDimitry Andric 9006c3fb27SDimitry Andric module * { export * } 9106c3fb27SDimitry Andric} 9206c3fb27SDimitry Andricmodule Clang_Basic_TokenKinds { 9306c3fb27SDimitry Andric requires cplusplus 9406c3fb27SDimitry Andric 9506c3fb27SDimitry Andric header "clang/Basic/TokenKinds.h" 9606c3fb27SDimitry Andric textual header "clang/Basic/TokenKinds.def" 9706c3fb27SDimitry Andric 9806c3fb27SDimitry Andric export * 9906c3fb27SDimitry Andric} 10006c3fb27SDimitry Andric 10106c3fb27SDimitry Andricmodule Clang_CodeGen { requires cplusplus umbrella "clang/CodeGen" module * { export * } } 10206c3fb27SDimitry Andricmodule Clang_Config { requires cplusplus umbrella "clang/Config" module * { export * } } 10306c3fb27SDimitry Andric 10406c3fb27SDimitry Andric// Files for diagnostic groups are spread all over the include/clang/ tree, but 10506c3fb27SDimitry Andric// logically form a single module. 10606c3fb27SDimitry Andricmodule Clang_Diagnostics { 10706c3fb27SDimitry Andric requires cplusplus 10806c3fb27SDimitry Andric 10906c3fb27SDimitry Andric module All { header "clang/Basic/AllDiagnostics.h" export * } 11006c3fb27SDimitry Andric module Analysis { textual header "clang/Analysis/Analyses/UnsafeBufferUsageGadgets.def" } 11106c3fb27SDimitry Andric module AST { header "clang/AST/ASTDiagnostic.h" export * } 11206c3fb27SDimitry Andric module Comment { header "clang/AST/CommentDiagnostic.h" export * } 11306c3fb27SDimitry Andric module Driver { header "clang/Driver/DriverDiagnostic.h" export * } 11406c3fb27SDimitry Andric module Frontend { header "clang/Frontend/FrontendDiagnostic.h" export * } 11506c3fb27SDimitry Andric module Lex { header "clang/Lex/LexDiagnostic.h" export * } 11606c3fb27SDimitry Andric module Parse { header "clang/Parse/ParseDiagnostic.h" export * } 11706c3fb27SDimitry Andric module Sema { header "clang/Sema/SemaDiagnostic.h" export * } 11806c3fb27SDimitry Andric module Serialization { header "clang/Serialization/SerializationDiagnostic.h" export * } 11906c3fb27SDimitry Andric module Refactoring { header "clang/Tooling/Refactoring/RefactoringDiagnostic.h" export * } 12006c3fb27SDimitry Andric} 12106c3fb27SDimitry Andric 12206c3fb27SDimitry Andricmodule Clang_Driver { 12306c3fb27SDimitry Andric requires cplusplus 12406c3fb27SDimitry Andric umbrella "clang/Driver" 12506c3fb27SDimitry Andric 12606c3fb27SDimitry Andric textual header "clang/Driver/Types.def" 12706c3fb27SDimitry Andric 12806c3fb27SDimitry Andric module * { export * } 12906c3fb27SDimitry Andric} 13006c3fb27SDimitry Andric 13106c3fb27SDimitry Andricmodule Clang_Edit { requires cplusplus umbrella "clang/Edit" module * { export * } } 13206c3fb27SDimitry Andricmodule Clang_Format { requires cplusplus umbrella "clang/Format" module * { export * } } 13306c3fb27SDimitry Andric 13406c3fb27SDimitry Andricmodule Clang_Frontend { 13506c3fb27SDimitry Andric requires cplusplus 13606c3fb27SDimitry Andric umbrella "clang/Frontend" 13706c3fb27SDimitry Andric 13806c3fb27SDimitry Andric textual header "clang/Basic/LangStandards.def" 13906c3fb27SDimitry Andric 14006c3fb27SDimitry Andric module * { export * } 14106c3fb27SDimitry Andric} 14206c3fb27SDimitry Andric 14306c3fb27SDimitry Andricmodule Clang_FrontendTool { requires cplusplus umbrella "clang/FrontendTool" module * { export * } } 14406c3fb27SDimitry Andricmodule Clang_Index { requires cplusplus umbrella "clang/Index" module * { export * } } 14506c3fb27SDimitry Andricmodule Clang_Lex { requires cplusplus umbrella "clang/Lex" module * { export * } } 14606c3fb27SDimitry Andricmodule Clang_Parse { requires cplusplus umbrella "clang/Parse" module * { export * } } 14706c3fb27SDimitry Andricmodule Clang_Rewrite { requires cplusplus umbrella "clang/Rewrite/Core" module * { export * } } 14806c3fb27SDimitry Andricmodule Clang_RewriteFrontend { requires cplusplus umbrella "clang/Rewrite/Frontend" module * { export * } } 14906c3fb27SDimitry Andricmodule Clang_Sema { requires cplusplus umbrella "clang/Sema" module * { export * } } 15006c3fb27SDimitry Andric 15106c3fb27SDimitry Andricmodule Clang_Serialization { 15206c3fb27SDimitry Andric requires cplusplus 15306c3fb27SDimitry Andric umbrella "clang/Serialization" 15406c3fb27SDimitry Andric 15506c3fb27SDimitry Andric textual header "clang/Serialization/TypeBitCodes.def" 15606c3fb27SDimitry Andric 15706c3fb27SDimitry Andric module * { export * } 15806c3fb27SDimitry Andric} 15906c3fb27SDimitry Andric 16006c3fb27SDimitry Andricmodule Clang_StaticAnalyzer_Core { 16106c3fb27SDimitry Andric requires cplusplus 16206c3fb27SDimitry Andric umbrella "clang/StaticAnalyzer/Core" 16306c3fb27SDimitry Andric 16406c3fb27SDimitry Andric textual header "clang/StaticAnalyzer/Core/Analyses.def" 16506c3fb27SDimitry Andric textual header "clang/StaticAnalyzer/Core/AnalyzerOptions.def" 16606c3fb27SDimitry Andric textual header "clang/StaticAnalyzer/Core/PathSensitive/SVals.def" 16706c3fb27SDimitry Andric textual header "clang/StaticAnalyzer/Core/PathSensitive/Symbols.def" 16806c3fb27SDimitry Andric textual header "clang/StaticAnalyzer/Core/PathSensitive/Regions.def" 16906c3fb27SDimitry Andric 17006c3fb27SDimitry Andric module * { export * } 17106c3fb27SDimitry Andric} 17206c3fb27SDimitry Andric 17306c3fb27SDimitry Andricmodule Clang_StaticAnalyzer_Checkers { 17406c3fb27SDimitry Andric requires cplusplus 17506c3fb27SDimitry Andric umbrella "clang/StaticAnalyzer/Checkers" 17606c3fb27SDimitry Andric module * { export * } 17706c3fb27SDimitry Andric} 17806c3fb27SDimitry Andric 17906c3fb27SDimitry Andricmodule Clang_StaticAnalyzer_Frontend { 18006c3fb27SDimitry Andric requires cplusplus 18106c3fb27SDimitry Andric umbrella "clang/StaticAnalyzer/Frontend" 18206c3fb27SDimitry Andric module * { export * } 18306c3fb27SDimitry Andric} 18406c3fb27SDimitry Andric 18506c3fb27SDimitry Andricmodule Clang_Testing { 18606c3fb27SDimitry Andric requires cplusplus 18706c3fb27SDimitry Andric umbrella "clang/Testing" 18806c3fb27SDimitry Andric module * { export * } 18906c3fb27SDimitry Andric} 19006c3fb27SDimitry Andric 19106c3fb27SDimitry Andricmodule Clang_Tooling { 19206c3fb27SDimitry Andric requires cplusplus umbrella "clang/Tooling" module * { export * } 19306c3fb27SDimitry Andric // FIXME: Exclude these headers to avoid pulling all of the AST matchers 19406c3fb27SDimitry Andric // library into clang-format. Due to inline key functions in the headers, 19506c3fb27SDimitry Andric // importing the AST matchers library gives a link dependency on the AST 19606c3fb27SDimitry Andric // matchers (and thus the AST), which clang-format should not have. 19706c3fb27SDimitry Andric exclude header "clang/Tooling/RefactoringCallbacks.h" 19806c3fb27SDimitry Andric} 19906c3fb27SDimitry Andric 20006c3fb27SDimitry Andricmodule Clang_ToolingCore { 20106c3fb27SDimitry Andric requires cplusplus 20206c3fb27SDimitry Andric umbrella "clang/Tooling/Core" module * { export * } 20306c3fb27SDimitry Andric} 20406c3fb27SDimitry Andric 20506c3fb27SDimitry Andricmodule Clang_ToolingInclusions { 20606c3fb27SDimitry Andric requires cplusplus 20706c3fb27SDimitry Andric umbrella "clang/Tooling/Inclusions" 20806c3fb27SDimitry Andric module * { export * } 20906c3fb27SDimitry Andric} 210