Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/windirstat/premake-4.x-stable.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorliamDevine <none@none>2010-11-01 03:26:24 +0300
committerliamDevine <none@none>2010-11-01 03:26:24 +0300
commitb875586b2edd2eb02dedfec43951e0aadbb20443 (patch)
treeedcd87e50bcf72679239549ca76ad0fc1def9a78
parent0d07522f09d3ae28f894fe1b513be40f48384e29 (diff)
Fixes vs10 DebugInformationFormat
-rw-r--r--src/actions/vstudio/vs2010_vcxproxj.lua13
-rw-r--r--tests/actions/vstudio/test_vs2010_flags.lua13
2 files changed, 21 insertions, 5 deletions
diff --git a/src/actions/vstudio/vs2010_vcxproxj.lua b/src/actions/vstudio/vs2010_vcxproxj.lua
index b886e8e..a987cbf 100644
--- a/src/actions/vstudio/vs2010_vcxproxj.lua
+++ b/src/actions/vstudio/vs2010_vcxproxj.lua
@@ -327,11 +327,16 @@ local vs10_helpers = premake.vstudio.vs10_helpers
-- ProgramDatabase /Zi
-- OldStyle C7 Compatable /Z7
--
- if cfg.flags.Symbols and not cfg.flags.NoEditAndContinue then
- _p(3,'<DebugInformationFormat>EditAndContinue</DebugInformationFormat>')
- else
- _p(3,'<DebugInformationFormat></DebugInformationFormat>')
+ local debug_info = ''
+ if cfg.flags.Symbols then
+ if optimisation(cfg) ~= "Disabled" or cfg.flags.NoEditAndContinue then
+ debug_info = "ProgramDatabase"
+ else
+ debug_info = "EditAndContinue"
+ end
end
+
+ _p(3,'<DebugInformationFormat>%s</DebugInformationFormat>',debug_info)
end
local function minimal_build(cfg)
diff --git a/tests/actions/vstudio/test_vs2010_flags.lua b/tests/actions/vstudio/test_vs2010_flags.lua
index 779a19d..2540f23 100644
--- a/tests/actions/vstudio/test_vs2010_flags.lua
+++ b/tests/actions/vstudio/test_vs2010_flags.lua
@@ -213,10 +213,21 @@ function vs10_flags.Symbols_DebugInformationFormat_setToEditAndContinue()
test.string_contains(buffer,'<DebugInformationFormat>EditAndContinue</DebugInformationFormat>')
end
-function vs10_flags.symbolsAndNoEditAndContinue_DebugInformationFormat_isAnEmptyBlock()
+function vs10_flags.symbolsAndNoEditAndContinue_DebugInformationFormat_setToProgramDatabase()
flags{"Symbols","NoEditAndContinue"}
local buffer = get_buffer()
+ test.string_contains(buffer,'<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>')
+end
+
+function vs10_flags.symbolsAndRelease_DebugInformationFormat_setToProgramDatabase()
+ flags{"Symbols",release_string}
+
+ local buffer = get_buffer()
+ test.string_contains(buffer,'<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>')
+end
+function vs10_flags.noSymbols_DebugInformationFormat_blockIsEmpty()
+ local buffer = get_buffer()
test.string_contains(buffer,'<DebugInformationFormat></DebugInformationFormat>')
end