summaryrefslogtreecommitdiff
path: root/xmake/rules/c++/modules/build_modules/module_parser.lua
diff options
context:
space:
mode:
authorruki <[email protected]>2021-10-15 23:57:07 +0800
committerruki <[email protected]>2021-10-15 23:57:07 +0800
commitd71f50b60d8872c1ab5fc92b21d9f41fe93983b3 (patch)
treef26135cff47a67a688fc818ff3b5b6b7c6786b9b /xmake/rules/c++/modules/build_modules/module_parser.lua
parent091e754eb4d5328385fed59d5c4f92e09355ff51 (diff)
improve to load moduledeps
Diffstat (limited to 'xmake/rules/c++/modules/build_modules/module_parser.lua')
-rw-r--r--xmake/rules/c++/modules/build_modules/module_parser.lua12
1 files changed, 8 insertions, 4 deletions
diff --git a/xmake/rules/c++/modules/build_modules/module_parser.lua b/xmake/rules/c++/modules/build_modules/module_parser.lua
index a3991a5e1..5ac4e42e9 100644
--- a/xmake/rules/c++/modules/build_modules/module_parser.lua
+++ b/xmake/rules/c++/modules/build_modules/module_parser.lua
@@ -20,14 +20,13 @@
-- imports
import("core.project.depend")
-import("utils.progress")
-- get depend file of module source file
function _get_dependfile_of_modulesource(target, sourcefile)
return target:dependfile(sourcefile)
end
--- get depend file of module object file
+-- get depend file of module object file, compiler will rewrite it
function _get_dependfile_of_moduleobject(target, sourcefile)
local objectfile = target:objectfile(sourcefile)
return target:dependfile(objectfile)
@@ -38,8 +37,8 @@ function _generate_moduledeps(target, sourcefile, opt)
local dependfile = _get_dependfile_of_modulesource(target, sourcefile)
depend.on_changed(function ()
- -- trace progress
- progress.show(opt.progress, "${color.build.target}generating.deps %s", sourcefile)
+ -- trace
+ vprint("generating.moduledeps %s", sourcefile)
-- generating deps
local module_name
@@ -76,6 +75,11 @@ end
-- load module deps
function load(target, sourcebatch, opt)
+
+ -- do generate first
+ generate(target, sourcebatch, opt)
+
+ -- load deps
local moduledeps
for _, sourcefile in ipairs(sourcebatch.sourcefiles) do
local dependfile = _get_dependfile_of_modulesource(target, sourcefile)