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