From 934befffcc389d3bd9497e5de1d19407466a28c5 Mon Sep 17 00:00:00 2001 From: ruki Date: Sat, 16 Oct 2021 00:57:59 +0800 Subject: build module batch jobs --- .../rules/c++/modules/build_modules/module_parser.lua | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'xmake/rules/c++/modules/build_modules/module_parser.lua') diff --git a/xmake/rules/c++/modules/build_modules/module_parser.lua b/xmake/rules/c++/modules/build_modules/module_parser.lua index 5ac4e42e9..17e0f4d24 100644 --- a/xmake/rules/c++/modules/build_modules/module_parser.lua +++ b/xmake/rules/c++/modules/build_modules/module_parser.lua @@ -94,3 +94,21 @@ function load(target, sourcebatch, opt) end return moduledeps end + +-- build module deps +function build(moduledeps) + local moduledeps_files = {} + for _, moduledep in pairs(moduledeps) do + if moduledep.deps then + for _, depname in ipairs(moduledep.deps) do + local dep = moduledeps[depname] + if dep then + dep.parents = dep.parents or {} + table.insert(dep.parents, moduledep) + end + end + end + moduledeps_files[moduledep.file] = moduledep + end + return moduledeps_files +end -- cgit v1.3.1