summaryrefslogtreecommitdiff
path: root/xmake/rules/c++/modules/modules_support/gcc.lua
diff options
context:
space:
mode:
Diffstat (limited to 'xmake/rules/c++/modules/modules_support/gcc.lua')
-rw-r--r--xmake/rules/c++/modules/modules_support/gcc.lua14
1 files changed, 7 insertions, 7 deletions
diff --git a/xmake/rules/c++/modules/modules_support/gcc.lua b/xmake/rules/c++/modules/modules_support/gcc.lua
index 51d62d78d..f08eb4199 100644
--- a/xmake/rules/c++/modules/modules_support/gcc.lua
+++ b/xmake/rules/c++/modules/modules_support/gcc.lua
@@ -511,13 +511,13 @@ function build_modules_for_batchcmds(target, batchcmds, objectfiles, modules, op
break
end
end
- local flags = {"-x", "c++", "-c", path(cppfile), "-o", path(objectfile)}
- batchcmds:show_progress(opt.progress, "${color.build.object}compiling.module.$(mode) %s", name or cppfile)
- batchcmds:mkdir(path.directory(objectfile))
- _batchcmds_compile(batchcmds, target, flags, cppfile)
- batchcmds:add_depfiles(cppfile)
- target:add("objectfiles", objectfile)
- if provide then
+ if provide or common.has_module_extension(cppfile) then
+ local flags = {"-x", "c++", "-c", path(cppfile), "-o", path(objectfile)}
+ batchcmds:show_progress(opt.progress, "${color.build.object}compiling.module.$(mode) %s", name or cppfile)
+ batchcmds:mkdir(path.directory(objectfile))
+ _batchcmds_compile(batchcmds, target, flags, cppfile)
+ batchcmds:add_depfiles(cppfile)
+ target:add("objectfiles", objectfile)
_add_module_to_mapper(mapper_file, name, path.absolute(provide.bmi, projectdir))
end
depmtime = math.max(depmtime, os.mtime(provide and provide.bmi or objectfile))