summaryrefslogtreecommitdiff
path: root/xmake/plugins/project
diff options
context:
space:
mode:
authorruki <[email protected]>2016-08-29 14:27:02 +0800
committerruki <[email protected]>2016-08-29 14:27:02 +0800
commit2b15a1b5b149e5156e22358f3d29b4de63473376 (patch)
treee8643e59cd62b26f3e68305675e95158cabdebd6 /xmake/plugins/project
parent4adfc24ead82a5bca7527534dab3ffce1071457b (diff)
fix some flags conflict for vs201x projectv2.0.4
Diffstat (limited to 'xmake/plugins/project')
-rwxr-xr-xxmake/plugins/project/vstudio/impl/vs201x_vcxproj.lua57
1 files changed, 32 insertions, 25 deletions
diff --git a/xmake/plugins/project/vstudio/impl/vs201x_vcxproj.lua b/xmake/plugins/project/vstudio/impl/vs201x_vcxproj.lua
index af8646e0c..afff30133 100755
--- a/xmake/plugins/project/vstudio/impl/vs201x_vcxproj.lua
+++ b/xmake/plugins/project/vstudio/impl/vs201x_vcxproj.lua
@@ -193,8 +193,8 @@ function _make_configurations(vcxprojfile, vsinfo, target, vcxprojdir)
-- make OutputDirectory and IntermediateDirectory
vcxprojfile:enter("<PropertyGroup Condition=\"\'%$(Configuration)|%$(Platform)\'==\'$(mode)|Win32\'\">")
- vcxprojfile:print("<OutDir>%s</OutDir>", path.relative(path.absolute(config.get("buildir")), vcxprojdir))
- vcxprojfile:print("<IntDir>%$(Configuration)</IntDir>")
+ vcxprojfile:print("<OutDir>%s\\</OutDir>", path.relative(path.absolute(config.get("buildir")), vcxprojdir))
+ vcxprojfile:print("<IntDir>%$(Configuration)\\</IntDir>")
if target:get("kind") == "binary" then
vcxprojfile:print("<LinkIncremental>true</LinkIncremental>")
end
@@ -204,36 +204,43 @@ end
-- make ItemDefinitionGroup
function _make_item_define_group(vcxprojfile, vsinfo, target, vcxprojdir)
- -- make ItemDefinitionGroup for linker
+ -- enter ItemDefinitionGroup
+ vcxprojfile:enter("<ItemDefinitionGroup Condition=\"\'%$(Configuration)|%$(Platform)\'==\'$(mode)|Win32\'\">")
+
+ -- for linker?
if target:get("kind") == "binary" then
- vcxprojfile:enter("<ItemDefinitionGroup Condition=\"\'%$(Configuration)|%$(Platform)\'==\'$(mode)|Win32\'\">")
- vcxprojfile:enter("<Link>")
+ vcxprojfile:enter("<Link>")
- -- make AdditionalOptions
- vcxprojfile:print("<AdditionalOptions>%s %%(AdditionalOptions)</AdditionalOptions>", _make_linkflags(target, vcxprojdir))
+ -- make AdditionalOptions
+ vcxprojfile:print("<AdditionalOptions>%s %%(AdditionalOptions)</AdditionalOptions>", _make_linkflags(target, vcxprojdir))
- -- generate debug infomation?
- local debug = false
- for _, symbol in ipairs(target:get("symbols")) do
- if symbol == "debug" then
- debug = true
- break
- end
+ -- generate debug infomation?
+ local debug = false
+ for _, symbol in ipairs(target:get("symbols")) do
+ if symbol == "debug" then
+ debug = true
+ break
end
- vcxprojfile:print("<GenerateDebugInformation>%s</GenerateDebugInformation>", tostring(debug))
+ end
+ vcxprojfile:print("<GenerateDebugInformation>%s</GenerateDebugInformation>", tostring(debug))
- -- make SubSystem
- vcxprojfile:print("<SubSystem>Console</SubSystem>")
-
- -- make TargetMachine
- vcxprojfile:print("<TargetMachine>%s</TargetMachine>", ifelse(config.arch() == "x64", "MachineX64", "MachineX86"))
+ -- make SubSystem
+ vcxprojfile:print("<SubSystem>Console</SubSystem>")
+
+ -- make TargetMachine
+ vcxprojfile:print("<TargetMachine>%s</TargetMachine>", ifelse(config.arch() == "x64", "MachineX64", "MachineX86"))
- vcxprojfile:leave("</Link>")
- vcxprojfile:leave("</ItemDefinitionGroup>")
- else
- vcxprojfile:enter("<ItemDefinitionGroup>")
- vcxprojfile:leave("</ItemDefinitionGroup>")
+ vcxprojfile:leave("</Link>")
end
+
+ -- for compiler?
+ vcxprojfile:enter("<ClCompile>")
+ vcxprojfile:print("<Optimization>Disabled</Optimization>") -- disable optimization default
+ vcxprojfile:print("<ProgramDataBaseFileName></ProgramDataBaseFileName>") -- disable pdb file default
+ vcxprojfile:leave("</ClCompile>")
+
+ -- leave ItemDefinitionGroup
+ vcxprojfile:leave("</ItemDefinitionGroup>")
end
-- make file