2020
2121-- define rule: c++.build.modules
2222rule (" c++.build.modules" )
23-
2423 -- @note support.contains_modules() need it
2524 set_extensions (" .cppm" , " .ccm" , " .cxxm" , " .c++m" , " .mpp" , " .mxx" , " .ixx" )
2625
@@ -35,38 +34,30 @@ rule("c++.build.modules")
3534
3635-- scan modules
3736rule (" c++.build.modules.scanner" )
38- set_sourcekinds (" cxx" )
39- set_extensions (" .mpp" , " .mxx" , " .cppm" , " .ixx" )
40-
41- -- generate module dependencies
37+ set_sourcekinds (" cxx" , {objectfiles = false })
38+ set_extensions (" .cppm" , " .ccm" , " .cxxm" , " .c++m" , " .mpp" , " .mxx" , " .ixx" )
4239 on_prepare_files (" scanner" , {jobgraph = true })
43-
44- -- insert objectfiles
4540 after_prepare_files (" scanner.after_scan" )
4641
4742-- build modules
4843rule (" c++.build.modules.builder" )
49- set_sourcekinds (" cxx" )
50- set_extensions (" .mpp" , " .mxx" , " .cppm" , " .ixx" )
51-
44+ set_sourcekinds (" cxx" , {objectfiles = false })
45+ set_extensions (" .cppm" , " .ccm" , " .cxxm" , " .c++m" , " .mpp" , " .mxx" , " .ixx" )
5246 add_orders (" c++.build.modules.scanner" , " c++.build.modules.builder" )
5347
5448 -- parallel build support to accelerate `xmake build` to build modules
5549 before_build_files (" builder.build_bmis" , {jobgraph = true , batch = true })
56-
5750 on_build_files (" builder.build_objectfiles" , {jobgraph = true , batch = true })
5851
5952 -- serial compilation only, usually used to support project generator
6053 before_buildcmd_files (" builder.build_bmis" )
61-
6254 on_buildcmd_files (" builder.build_objectfiles" )
6355
6456 after_clean (" builder.clean" )
6557
6658-- install modules
6759rule (" c++.build.modules.install" )
68- set_extensions (" .mpp " , " .mxx " , " .cppm " , " .ixx" )
60+ set_extensions (" .cppm " , " .ccm " , " .cxxm " , " .c++m " , " .mpp " , " .mxx " , " .ixx" )
6961
7062 before_install (" install.install" )
71-
7263 before_uninstall (" install.uninstall" )
0 commit comments