From 9821f3022433a0cc6f55733e6609fb2b11afc005 Mon Sep 17 00:00:00 2001 From: Littleboy Date: Wed, 5 Sep 2012 07:54:33 -0400 Subject: CREATE_PROJECT: Add config option to disable language extensions and edit and continue (per-project) --- devtools/create_project/msbuild.cpp | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) (limited to 'devtools/create_project/msbuild.cpp') 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::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\n" "\t\t\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\tfalse\n"; - if (name == setup.projectName && !isRelease) - project << "\t\t\tProgramDatabase\n"; - } else { - if (warningsIterator != _projectWarnings.end()) - project << "\t\t\t" << warnings << ";%(DisableSpecificWarnings)\n"; - } + // Edit and Continue + if ((name == setup.projectName || disableEditAndContinue) && !isRelease) + project << "\t\t\tProgramDatabase\n"; + + // Warnings + if (warningsIterator != _projectWarnings.end()) + project << "\t\t\t" << warnings << ";%(DisableSpecificWarnings)\n"; project << "\t\t\n"; -- cgit v1.2.3