Home | History | Annotate | Download | only in clang
      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