[cmake-commits] king committed cmGlobalVisualStudio7Generator.cxx 1.92 1.93 cmGlobalVisualStudio8Generator.cxx 1.26 1.27 cmLocalVisualStudio7Generator.cxx 1.205 1.206

cmake-commits at cmake.org cmake-commits at cmake.org
Fri Nov 16 11:01:25 EST 2007


Update of /cvsroot/CMake/CMake/Source
In directory public:/mounts/ram/cvs-serv31620

Modified Files:
	cmGlobalVisualStudio7Generator.cxx 
	cmGlobalVisualStudio8Generator.cxx 
	cmLocalVisualStudio7Generator.cxx 
Log Message:
BUG: Fix exception handling flag translation to be specific to each VS version.  This allows /EHa to be handled correctly for VS 2003.


Index: cmLocalVisualStudio7Generator.cxx
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/cmLocalVisualStudio7Generator.cxx,v
retrieving revision 1.205
retrieving revision 1.206
diff -u -d -r1.205 -r1.206
--- cmLocalVisualStudio7Generator.cxx	16 Nov 2007 12:01:58 -0000	1.205
+++ cmLocalVisualStudio7Generator.cxx	16 Nov 2007 16:01:23 -0000	1.206
@@ -342,9 +342,6 @@
   {"EnableFunctionLevelLinking", "Gy",
    "EnableFunctionLevelLinking", "TRUE", 0},
   {"EnableIntrinsicFunctions", "Oi", "EnableIntrinsicFunctions", "TRUE", 0},
-  {"ExceptionHandling", "EHsc", "enable c++ exceptions", "TRUE", 0},
-  {"ExceptionHandling", "EHa", "enable c++ exceptions", "2", 0},
-  {"ExceptionHandling", "GX", "enable c++ exceptions", "TRUE", 0},
   {"GlobalOptimizations", "Og", "Global Optimize", "TRUE", 0},
   {"ImproveFloatingPointConsistency", "Op",
    "ImproveFloatingPointConsistency", "TRUE", 0},

Index: cmGlobalVisualStudio7Generator.cxx
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/cmGlobalVisualStudio7Generator.cxx,v
retrieving revision 1.92
retrieving revision 1.93
diff -u -d -r1.92 -r1.93
--- cmGlobalVisualStudio7Generator.cxx	16 Nov 2007 12:01:58 -0000	1.92
+++ cmGlobalVisualStudio7Generator.cxx	16 Nov 2007 16:01:23 -0000	1.93
@@ -813,6 +813,14 @@
    cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue},
   {"PrecompiledHeaderThrough", "Yu", "Precompiled Header Name", "",
    cmVS7FlagTable::UserValueRequired},
+
+  // Exception handling mode.  If no entries match, it will be FALSE.
+  {"ExceptionHandling", "GX", "enable c++ exceptions", "TRUE", 0},
+  {"ExceptionHandling", "EHsc", "enable c++ exceptions", "TRUE", 0},
+  // The EHa option does not have an IDE setting.  Let it go to false,
+  // and have EHa passed on the command line by leaving out the table
+  // entry.
+
   {0,0,0,0,0}
 };
 cmVS7FlagTable const* cmGlobalVisualStudio7Generator::GetExtraFlagTableVS7()

Index: cmGlobalVisualStudio8Generator.cxx
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/cmGlobalVisualStudio8Generator.cxx,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -d -r1.26 -r1.27
--- cmGlobalVisualStudio8Generator.cxx	16 Nov 2007 12:01:58 -0000	1.26
+++ cmGlobalVisualStudio8Generator.cxx	16 Nov 2007 16:01:23 -0000	1.27
@@ -286,6 +286,12 @@
   {"PrecompiledHeaderThrough", "Yu", "Precompiled Header Name", "",
    cmVS7FlagTable::UserValueRequired},
   // There is no YX option in the VS8 IDE.
+
+  // Exception handling mode.  If no entries match, it will be FALSE.
+  {"ExceptionHandling", "GX", "enable c++ exceptions", "1", 0},
+  {"ExceptionHandling", "EHsc", "enable c++ exceptions", "1", 0},
+  {"ExceptionHandling", "EHa", "enable SEH exceptions", "2", 0},
+
   {0,0,0,0,0}
 };
 cmVS7FlagTable const* cmGlobalVisualStudio8Generator::GetExtraFlagTableVS8()



More information about the Cmake-commits mailing list