[Scummvm-cvs-logs] SF.net SVN: scummvm:[46540] scummvm/trunk/tools/create_msvc/create_msvc.cpp

lordhoto at users.sourceforge.net lordhoto at users.sourceforge.net
Fri Dec 25 02:00:18 CET 2009


Revision: 46540
          http://scummvm.svn.sourceforge.net/scummvm/?rev=46540&view=rev
Author:   lordhoto
Date:     2009-12-25 01:00:17 +0000 (Fri, 25 Dec 2009)

Log Message:
-----------
Commit of patch #2909981 "create_msvc: Updated default warnings + per-project warnings" with some slight changes.

Modified Paths:
--------------
    scummvm/trunk/tools/create_msvc/create_msvc.cpp

Modified: scummvm/trunk/tools/create_msvc/create_msvc.cpp
===================================================================
--- scummvm/trunk/tools/create_msvc/create_msvc.cpp	2009-12-24 23:53:16 UTC (rev 46539)
+++ scummvm/trunk/tools/create_msvc/create_msvc.cpp	2009-12-25 01:00:17 UTC (rev 46540)
@@ -88,6 +88,11 @@
  * @param exe Name of the executable.
  */
 void displayHelp(const char *exe);
+
+// Map containing a project-specific list of warnings
+// TODO: Remove the use of global variables
+std::map<std::string, std::string> g_projectWarnings;
+std::string g_globalWarnings;
 } // End of anonymous namespace
 
 int main(int argc, char *argv[]) {
@@ -241,6 +246,13 @@
 	setup.libraries.push_back("winmm.lib");
 	setup.libraries.push_back("sdl.lib");
 
+	// Initialize global & project-specific warnings
+	g_globalWarnings = "4068;4100;4103;4127;4244;4250;4310;4351;4512;4702;4706;4800;4996";
+
+	g_projectWarnings["agi"] = "4510;4610";
+	g_projectWarnings["lure"] = "4189;4355";
+	g_projectWarnings["kyra"] = "4355";
+
 	createMSVCProject(setup, msvcVersion);
 }
 
@@ -841,6 +853,9 @@
 	           "\t</Platforms>\n"
 	           "\t<Configurations>\n";
 
+	// Check for project-specific warnings:
+	std::map<std::string, std::string>::iterator warnings = g_projectWarnings.find(name);
+
 	if (name == "scummvm") {
 		std::string libraries;
 
@@ -877,6 +892,21 @@
 		           "\t\t\t\tAdditionalDependencies=\"" << libraries << "\"\n"
 		           "\t\t\t/>\n"
 		           "\t\t</Configuration>\n";
+	} else if (warnings != g_projectWarnings.end()) {
+		// Win32
+		project << "\t\t<Configuration Name=\"Debug|Win32\" ConfigurationType=\"4\" InheritedPropertySheets=\".\\ScummVM_Debug.vsprops\">\n"
+		           "\t\t\t<Tool Name=\"VCCLCompilerTool\" DisableSpecificWarnings=\"" << warnings->second << "\" />\n"
+		           "\t\t</Configuration>\n"
+		           "\t\t<Configuration Name=\"Release|Win32\" ConfigurationType=\"4\" InheritedPropertySheets=\".\\ScummVM_Release.vsprops\">\n"
+		           "\t\t\t<Tool Name=\"VCCLCompilerTool\" DisableSpecificWarnings=\"" << warnings->second << "\" />\n"
+		           "\t\t</Configuration>\n";
+		// x64
+		project << "\t\t<Configuration Name=\"Debug|x64\" ConfigurationType=\"4\" InheritedPropertySheets=\".\\ScummVM_Debug64.vsprops\">\n"
+		           "\t\t\t<Tool Name=\"VCCLCompilerTool\" DisableSpecificWarnings=\"" << warnings->second << "\" />\n"
+		           "\t\t</Configuration>\n"
+		           "\t\t<Configuration Name=\"Release|x64\" ConfigurationType=\"4\" InheritedPropertySheets=\".\\ScummVM_Release64.vsprops\">\n"
+		           "\t\t\t<Tool Name=\"VCCLCompilerTool\" DisableSpecificWarnings=\"" << warnings->second << "\" />\n"
+		           "\t\t</Configuration>\n";
 	} else if (name == "tinsel") {
 		// Win32
 		project << "\t\t<Configuration Name=\"Debug|Win32\" ConfigurationType=\"4\" InheritedPropertySheets=\".\\ScummVM_Debug.vsprops\">\n"
@@ -940,7 +970,7 @@
 	              "\t<Tool\n"
 	              "\t\tName=\"VCCLCompilerTool\"\n"
 	              "\t\tDisableLanguageExtensions=\"true\"\n"
-	              "\t\tDisableSpecificWarnings=\"4068;4100;4103;4121;4127;4189;4201;4221;4244;4250;4267;4310;4351;4355;4510;4511;4512;4610;4701;4702;4706;4800;4996\"\n"
+	              "\t\tDisableSpecificWarnings=\"" << g_globalWarnings << "\"\n"
 	              "\t\tAdditionalIncludeDirectories=\"" << prefix << ";" << prefix << "\\engines\"\n"
 	              "\t\tPreprocessorDefinitions=\"" << defines << "\"\n"
 	              "\t\tExceptionHandling=\"0\"\n"


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list