diff options
| author | ruki <[email protected]> | 2020-12-23 23:49:51 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2020-12-23 23:49:51 +0800 |
| commit | 414e6f39860680b693263fd97daa77c48dc5e143 (patch) | |
| tree | 9b99a62fcf5f0f30ad18beb8e1ba56cad320bb82 /xmake/plugins/project | |
| parent | 50f826bb2df51dd80eb67054e446a496f2b6d15a (diff) | |
improve project
Diffstat (limited to 'xmake/plugins/project')
| -rw-r--r-- | xmake/plugins/project/vstudio/impl/vs201x.lua | 14 | ||||
| -rw-r--r-- | xmake/plugins/project/vsxmake/getinfo.lua | 11 |
2 files changed, 17 insertions, 8 deletions
diff --git a/xmake/plugins/project/vstudio/impl/vs201x.lua b/xmake/plugins/project/vstudio/impl/vs201x.lua index cdb18a828..f0a98ac53 100644 --- a/xmake/plugins/project/vstudio/impl/vs201x.lua +++ b/xmake/plugins/project/vstudio/impl/vs201x.lua @@ -233,17 +233,19 @@ function make(outputdir, vsinfo) -- reload config, project and platform if mode ~= config.mode() or arch ~= config.arch() then - -- clear cache - memcache.clear() - localcache.clear() - -- modify config config.set("as", nil, {force = true}) -- force to re-check as for ml/ml64 config.set("mode", mode, {readonly = true, force = true}) config.set("arch", arch, {readonly = true, force = true}) - -- clear project to reload and recheck it - project.clear() + -- clear all options + for _, opt in ipairs(project.options()) do + opt:clear() + end + + -- clear cache + memcache.clear() + localcache.clear() -- check platform platform.load(config.plat(), arch):check() diff --git a/xmake/plugins/project/vsxmake/getinfo.lua b/xmake/plugins/project/vsxmake/getinfo.lua index e7b7cc556..a3a978111 100644 --- a/xmake/plugins/project/vsxmake/getinfo.lua +++ b/xmake/plugins/project/vsxmake/getinfo.lua @@ -27,6 +27,7 @@ import("core.project.project") import("core.platform.platform") import("core.tool.compiler") import("core.tool.linker") +import("core.cache.memcache") import("core.cache.localcache") import("lib.detect.find_tool") import("private.action.run.make_runenvs") @@ -292,8 +293,14 @@ function main(outputdir, vsinfo) config.set("mode", mode, {readonly = true, force = true}) config.set("arch", arch, {readonly = true, force = true}) - -- clear project to reload and recheck it - project.clear() + -- clear all options + for _, opt in ipairs(project.options()) do + opt:clear() + end + + -- clear cache + memcache.clear() + localcache.clear() -- check platform platform.load(config.plat(), arch):check() |
