diff --git a/src/_premake_init.lua b/src/_premake_init.lua
index 491684fe..6bb7a231 100644
--- a/src/_premake_init.lua
+++ b/src/_premake_init.lua
@@ -1002,6 +1002,7 @@
"On",
"Off",
"FastLink", -- Visual Studio 2015+ only, considered 'On' for all other cases.
+ "Full", -- Visual Studio 2017+ only, considered 'On' for all other cases.
},
}
diff --git a/src/actions/vstudio/vs2010_vcxproj.lua b/src/actions/vstudio/vs2010_vcxproj.lua
index 1309de4c..001697dc 100644
--- a/src/actions/vstudio/vs2010_vcxproj.lua
+++ b/src/actions/vstudio/vs2010_vcxproj.lua
@@ -1376,14 +1376,21 @@
function m.generateDebugInformation(cfg)
local lookup = {}
- if _ACTION >= "vs2015" then
+ if _ACTION >= "vs2017" then
lookup[p.ON] = "true"
lookup[p.OFF] = "false"
lookup["FastLink"] = "DebugFastLink"
+ lookup["Full"] = "DebugFull"
+ elseif _ACTION == "vs2015" then
+ lookup[p.ON] = "true"
+ lookup[p.OFF] = "false"
+ lookup["FastLink"] = "DebugFastLink"
+ lookup["Full"] = "true"
else
lookup[p.ON] = "true"
lookup[p.OFF] = "false"
lookup["FastLink"] = "true"
+ lookup["Full"] = "true"
end
local value = lookup[cfg.symbols]
diff --git a/tests/actions/vstudio/vc2010/test_link.lua b/tests/actions/vstudio/vc2010/test_link.lua
index de014900..56a74cf8 100644
--- a/tests/actions/vstudio/vc2010/test_link.lua
+++ b/tests/actions/vstudio/vc2010/test_link.lua
@@ -151,6 +151,17 @@
]]
end
+ function suite.generateDebugInfo_onSymbolsFull_on2010()
+ premake.action.set("vs2010")
+ symbols "Full"
+ prepare()
+ test.capture [[
+
+ Windows
+ true
+ ]]
+ end
+
function suite.generateDebugInfo_onSymbolsOn_on2015()
premake.action.set("vs2015")
symbols "On"
@@ -174,6 +185,27 @@
]]
end
+ function suite.generateDebugInfo_onSymbolsFull_on2015()
+ premake.action.set("vs2015")
+ symbols "Full"
+ prepare()
+ test.capture [[
+
+ Windows
+ true
+ ]]
+ end
+
+ function suite.generateDebugInfo_onSymbolsFull_on2017()
+ premake.action.set("vs2017")
+ symbols "Full"
+ prepare()
+ test.capture [[
+
+ Windows
+ DebugFull
+ ]]
+ end
--
-- Any system libraries specified in links() should be listed as