1 module Clang_Analysis { 2 requires cplusplus 3 umbrella "Analysis" 4 5 textual header "Analysis/Analyses/ThreadSafetyOps.def" 6 7 module * { export * } 8 } 9 10 module Clang_AST { 11 requires cplusplus 12 umbrella "AST" 13 14 textual header "AST/BuiltinTypes.def" 15 textual header "AST/TypeLocNodes.def" 16 textual header "AST/TypeNodes.def" 17 18 module * { export * } 19 } 20 21 module Clang_ASTMatchers { requires cplusplus umbrella "ASTMatchers" module * { export * } } 22 23 module Clang_Basic { 24 requires cplusplus 25 umbrella "Basic" 26 27 textual header "Basic/BuiltinsAArch64.def" 28 textual header "Basic/BuiltinsAMDGPU.def" 29 textual header "Basic/BuiltinsARM.def" 30 textual header "Basic/Builtins.def" 31 textual header "Basic/BuiltinsHexagon.def" 32 textual header "Basic/BuiltinsLe64.def" 33 textual header "Basic/BuiltinsMips.def" 34 textual header "Basic/BuiltinsNEON.def" 35 textual header "Basic/BuiltinsNVPTX.def" 36 textual header "Basic/BuiltinsPPC.def" 37 textual header "Basic/BuiltinsSystemZ.def" 38 textual header "Basic/BuiltinsWebAssembly.def" 39 textual header "Basic/BuiltinsX86.def" 40 textual header "Basic/BuiltinsXCore.def" 41 textual header "Basic/DiagnosticOptions.def" 42 textual header "Basic/LangOptions.def" 43 textual header "Basic/OpenCLExtensions.def" 44 textual header "Basic/OpenMPKinds.def" 45 textual header "Basic/OperatorKinds.def" 46 textual header "Basic/Sanitizers.def" 47 textual header "Basic/TokenKinds.def" 48 49 module * { export * } 50 } 51 52 module Clang_CodeGen { requires cplusplus umbrella "CodeGen" module * { export * } } 53 module Clang_Config { requires cplusplus umbrella "Config" module * { export * } } 54 55 // Files for diagnostic groups are spread all over the include/clang/ tree, but 56 // logically form a single module. 57 module Clang_Diagnostics { 58 requires cplusplus 59 60 module All { header "Basic/AllDiagnostics.h" export * } 61 module Analysis { header "Analysis/AnalysisDiagnostic.h" export * } 62 module AST { header "AST/ASTDiagnostic.h" export * } 63 module Comment { header "AST/CommentDiagnostic.h" export * } 64 module Driver { header "Driver/DriverDiagnostic.h" export * } 65 module Frontend { header "Frontend/FrontendDiagnostic.h" export * } 66 module Lex { header "Lex/LexDiagnostic.h" export * } 67 module Parse { header "Parse/ParseDiagnostic.h" export * } 68 // FIXME: This breaks the build of Clang_Sema, for unknown reasons. 69 //module Sema { header "Sema/SemaDiagnostic.h" export * } 70 module Serialization { header "Serialization/SerializationDiagnostic.h" export * } 71 } 72 73 module Clang_Driver { 74 requires cplusplus 75 umbrella "Driver" 76 77 textual header "Driver/Types.def" 78 79 module * { export * } 80 } 81 82 module Clang_Edit { requires cplusplus umbrella "Edit" module * { export * } } 83 module Clang_Format { requires cplusplus umbrella "Format" module * { export * } } 84 85 module Clang_Frontend { 86 requires cplusplus 87 umbrella "Frontend" 88 89 textual header "Frontend/CodeGenOptions.def" 90 textual header "Frontend/LangStandards.def" 91 92 module * { export * } 93 94 // FIXME: This violates layers. 95 exclude header "Frontend/PCHContainerOperations.h" 96 } 97 98 module Clang_FrontendTool { requires cplusplus umbrella "FrontendTool" module * { export * } } 99 module Clang_Index { requires cplusplus umbrella "Index" module * { export * } } 100 module Clang_Lex { requires cplusplus umbrella "Lex" module * { export * } } 101 module Clang_Parse { requires cplusplus umbrella "Parse" module * { export * } } 102 module Clang_Rewrite { requires cplusplus umbrella "Rewrite" module * { export * } } 103 module Clang_Sema { requires cplusplus umbrella "Sema" module * { export * } } 104 module Clang_Serialization { requires cplusplus umbrella "Serialization" module * { export * } } 105 106 module Clang_StaticAnalyzer_Core { 107 requires cplusplus 108 umbrella "StaticAnalyzer/Core" 109 110 textual header "StaticAnalyzer/Core/Analyses.def" 111 112 module * { export * } 113 } 114 115 module Clang_StaticAnalyzer_Checkers { 116 requires cplusplus 117 umbrella "StaticAnalyzer/Checkers" 118 module * { export * } 119 } 120 121 module Clang_StaticAnalyzer_Frontend { 122 requires cplusplus 123 umbrella "StaticAnalyzer/Frontend" 124 module * { export * } 125 } 126 127 module Clang_Tooling { 128 requires cplusplus umbrella "Tooling" module * { export * } 129 // FIXME: Exclude this header to avoid pulling all of the AST matchers 130 // library into clang-format. Due to inline key functions in the headers, 131 // importing the AST matchers library gives a link dependency on the AST 132 // matchers (and thus the AST), which clang-format should not have. 133 exclude header "Tooling/RefactoringCallbacks.h" 134 } 135