[clang] 1e4478b - Move "clang/Basic/TokenKinds.h" into a separate top-level module.

Volodymyr Sapsai via cfe-commits cfe-commits at lists.llvm.org
Fri Jul 22 16:26:44 PDT 2022


Author: Volodymyr Sapsai
Date: 2022-07-22T16:26:27-07:00
New Revision: 1e4478bbea727dbbffb1023eedfc24eae7185782

URL: https://github.com/llvm/llvm-project/commit/1e4478bbea727dbbffb1023eedfc24eae7185782
DIFF: https://github.com/llvm/llvm-project/commit/1e4478bbea727dbbffb1023eedfc24eae7185782.diff

LOG: Move "clang/Basic/TokenKinds.h" into a separate top-level module.

Fixes modular build for clangPseudoGrammar from clang-tools-extra.

Starting from https://reviews.llvm.org/D126731 clangPseudoGrammar
doesn't depend on generated .inc headers but still depends on
"Basic/TokenKinds.h". It means clangPseudoGrammar depends on module
'Clang_Basic' which does depend on generated .inc headers. To avoid
these coarse dependencies and extra build steps, extract
"clang/Basic/TokenKinds.h" into a top-level module 'Clang_Basic_TokenKinds'.

rdar://97387951

Differential Revision: https://reviews.llvm.org/D130377

Added: 
    

Modified: 
    clang/include/clang/module.modulemap

Removed: 
    


################################################################################
diff  --git a/clang/include/clang/module.modulemap b/clang/include/clang/module.modulemap
index aca4d5ab919a..56c40ab0b001 100644
--- a/clang/include/clang/module.modulemap
+++ b/clang/include/clang/module.modulemap
@@ -71,10 +71,17 @@ module Clang_Basic {
   textual header "Basic/RISCVVTypes.def"
   textual header "Basic/Sanitizers.def"
   textual header "Basic/TargetCXXABI.def"
-  textual header "Basic/TokenKinds.def"
 
   module * { export * }
 }
+module Clang_Basic_TokenKinds {
+  requires cplusplus
+
+  header "Basic/TokenKinds.h"
+  textual header "Basic/TokenKinds.def"
+
+  export *
+}
 
 module Clang_CodeGen { requires cplusplus umbrella "CodeGen" module * { export * } }
 module Clang_Config { requires cplusplus umbrella "Config" module * { export * } }


        


More information about the cfe-commits mailing list