summaryrefslogtreecommitdiff
path: root/xmake/rules/c++/modules/modules_support/common.lua
diff options
context:
space:
mode:
authorruki <[email protected]>2022-08-08 23:31:35 +0800
committerruki <[email protected]>2022-08-08 23:31:35 +0800
commitad67a37fe4981f68c52ae1e7497090a60a30edab (patch)
treeeb07345f116359a3f0810753277bb1f797ecda3e /xmake/rules/c++/modules/modules_support/common.lua
parentd0e4316018f9d75742b26b3abf75860d129c31c8 (diff)
fix module dpes
Diffstat (limited to 'xmake/rules/c++/modules/modules_support/common.lua')
-rw-r--r--xmake/rules/c++/modules/modules_support/common.lua9
1 files changed, 5 insertions, 4 deletions
diff --git a/xmake/rules/c++/modules/modules_support/common.lua b/xmake/rules/c++/modules/modules_support/common.lua
index 52a428874..ee1016d68 100644
--- a/xmake/rules/c++/modules/modules_support/common.lua
+++ b/xmake/rules/c++/modules/modules_support/common.lua
@@ -413,18 +413,19 @@ end
-- get module dependencies
function get_module_dependencies(target, sourcebatch, opt)
- local modules = _g.modules
+ local cachekey = target:name() .. "/" .. sourcebatch.rulename
+ local modules = memcache():get2("modules", cachekey)
if modules == nil then
- modules = localcache():get("modules")
+ modules = localcache():get2("modules", cachekey)
opt.progress = opt.progress or 0
local changed = modules_support(target).generate_dependencies(target, sourcebatch, opt)
if changed or modules == nil then
local moduleinfos = load_moduleinfos(target, sourcebatch)
modules = parse_dependency_data(target, moduleinfos)
- localcache():set("modules", modules)
+ localcache():set2("modules", cachekey, modules)
localcache():save()
end
- _g.modules = modules
+ memcache():set2("modules", cachekey, modules)
end
return modules
end