aboutsummaryrefslogtreecommitdiff
path: root/devtools/create_project/msbuild.cpp
diff options
context:
space:
mode:
authorMatthew Hoops2012-09-12 20:18:13 -0400
committerMatthew Hoops2012-09-12 20:18:13 -0400
commitd5ed8b1901b88e361a2a420a9daf586f6089a36b (patch)
treed19e4dd7baf33b7447d69d8ad8d3c25732a69698 /devtools/create_project/msbuild.cpp
parentff51a7661d7a2cb296b987edfc3d81727160e627 (diff)
parent8808393b3a3428df2946d7967e52aba084c8ffe5 (diff)
downloadscummvm-rg350-d5ed8b1901b88e361a2a420a9daf586f6089a36b.tar.gz
scummvm-rg350-d5ed8b1901b88e361a2a420a9daf586f6089a36b.tar.bz2
scummvm-rg350-d5ed8b1901b88e361a2a420a9daf586f6089a36b.zip
Merge remote branch 'upstream/master' into pegasus
Conflicts: AUTHORS
Diffstat (limited to 'devtools/create_project/msbuild.cpp')
-rw-r--r--devtools/create_project/msbuild.cpp21
1 files changed, 12 insertions, 9 deletions
diff --git a/devtools/create_project/msbuild.cpp b/devtools/create_project/msbuild.cpp
index c797770955..0f77d91852 100644
--- a/devtools/create_project/msbuild.cpp
+++ b/devtools/create_project/msbuild.cpp
@@ -241,9 +241,11 @@ void MSBuildProvider::outputProjectSettings(std::ofstream &project, const std::s
// Check for project-specific warnings:
std::map<std::string, StringList>::iterator warningsIterator = _projectWarnings.find(name);
+ bool enableLanguageExtensions = find(_enableLanguageExtensions.begin(), _enableLanguageExtensions.end(), name) != _enableLanguageExtensions.end();
+ bool disableEditAndContinue = find(_disableEditAndContinue.begin(), _disableEditAndContinue.end(), name) != _disableEditAndContinue.end();
// Nothing to add here, move along!
- if (!setup.devTools && name != setup.projectName && name != "sword25" && name != "scummvm" && name != "grim" && warningsIterator == _projectWarnings.end())
+ if (!setup.devTools && name != setup.projectName && !enableLanguageExtensions && !disableEditAndContinue && warningsIterator == _projectWarnings.end())
return;
std::string warnings = "";
@@ -254,16 +256,17 @@ void MSBuildProvider::outputProjectSettings(std::ofstream &project, const std::s
project << "\t<ItemDefinitionGroup Condition=\"'$(Configuration)|$(Platform)'=='" << configuration << "|" << (isWin32 ? "Win32" : "x64") << "'\">\n"
"\t\t<ClCompile>\n";
- // Compile configuration
- if (setup.devTools || name == setup.projectName || name == "sword25" || name == "grim") {
+ // Language Extensions
+ if (setup.devTools || name == setup.projectName || enableLanguageExtensions)
project << "\t\t\t<DisableLanguageExtensions>false</DisableLanguageExtensions>\n";
- if (name == setup.projectName && !isRelease)
- project << "\t\t\t<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\n";
- } else {
- if (warningsIterator != _projectWarnings.end())
- project << "\t\t\t<DisableSpecificWarnings>" << warnings << ";%(DisableSpecificWarnings)</DisableSpecificWarnings>\n";
- }
+ // Edit and Continue
+ if ((name == setup.projectName || disableEditAndContinue) && !isRelease)
+ project << "\t\t\t<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\n";
+
+ // Warnings
+ if (warningsIterator != _projectWarnings.end())
+ project << "\t\t\t<DisableSpecificWarnings>" << warnings << ";%(DisableSpecificWarnings)</DisableSpecificWarnings>\n";
project << "\t\t</ClCompile>\n";