summaryrefslogtreecommitdiff
path: root/xmake/plugins/project/vstudio/impl/vs201x.lua
diff options
context:
space:
mode:
authorruki <[email protected]>2017-03-15 16:12:36 +0800
committerruki <[email protected]>2017-03-15 16:12:36 +0800
commit645779a4239069b504a530b5667b80cf8f7f5f9a (patch)
treefd847a21cb93a743ae90242d2a2bc3d579ce136b /xmake/plugins/project/vstudio/impl/vs201x.lua
parent84a1ac1d297ff039e600a4ea2ecb9f122aac5846 (diff)
modify vs201x project plugin
Diffstat (limited to 'xmake/plugins/project/vstudio/impl/vs201x.lua')
-rwxr-xr-xxmake/plugins/project/vstudio/impl/vs201x.lua20
1 files changed, 18 insertions, 2 deletions
diff --git a/xmake/plugins/project/vstudio/impl/vs201x.lua b/xmake/plugins/project/vstudio/impl/vs201x.lua
index 7da0e29c4..8d97bdaae 100755
--- a/xmake/plugins/project/vstudio/impl/vs201x.lua
+++ b/xmake/plugins/project/vstudio/impl/vs201x.lua
@@ -23,8 +23,10 @@
--
-- imports
+import("core.base.option")
+import("core.project.config")
import("core.project.project")
-import("vs200x_solution")
+import("vs201x_solution")
import("vs201x_vcxproj")
import("vs201x_vcxproj_filters")
@@ -37,8 +39,22 @@ function make(outputdir, vsinfo)
-- init solution directory
vsinfo.solution_dir = path.join(outputdir, "vs" .. vsinfo.vstudio_version)
+ -- init modes
+ local modes = option.get("modes")
+ if modes then
+ vsinfo.modes = {}
+ for _, mode in ipairs(modes:split(',')) do
+ table.insert(vsinfo.modes, mode:trim())
+ end
+ else
+ vsinfo.modes = project.modes()
+ end
+ if not vsinfo.modes or #vsinfo.modes == 0 then
+ vsinfo.modes = { config.mode() }
+ end
+
-- make solution
- vs200x_solution.make(vsinfo)
+ vs201x_solution.make(vsinfo)
-- make vsprojs
for _, target in pairs(project.targets()) do