summaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2007-02-15 17:23:42 (GMT)
committerBrad King <brad.king@kitware.com>2007-02-15 17:23:42 (GMT)
commit7c72e03c25505275e0a2c0b17ae53393f22b2763 (patch)
treee2d311cee214a47384de6fea3096e44a13dc2728 /Source
parentd64a5a81ca438bfcf1dd9550908d721edc3771be (diff)
downloadCMake-7c72e03c25505275e0a2c0b17ae53393f22b2763.zip
CMake-7c72e03c25505275e0a2c0b17ae53393f22b2763.tar.gz
CMake-7c72e03c25505275e0a2c0b17ae53393f22b2763.tar.bz2
BUG: Do not hack the exception handling default for linker flags or for per-source-file flags.
Diffstat (limited to 'Source')
-rw-r--r--Source/cmLocalVisualStudio7Generator.cxx8
1 files changed, 8 insertions, 0 deletions
diff --git a/Source/cmLocalVisualStudio7Generator.cxx b/Source/cmLocalVisualStudio7Generator.cxx
index 541a999..4025b89 100644
--- a/Source/cmLocalVisualStudio7Generator.cxx
+++ b/Source/cmLocalVisualStudio7Generator.cxx
@@ -429,6 +429,9 @@ public:
// Store options from command line flags.
void Parse(const char* flags);
+ // Fix the ExceptionHandling option to default to off.
+ void FixExceptionHandlingDefault();
+
// Store options for verbose builds.
void SetVerboseMakefile(bool verbose);
@@ -554,6 +557,7 @@ void cmLocalVisualStudio7Generator::WriteConfiguration(std::ostream& fout,
// Construct a set of build options for this target.
Options targetOptions(Options::Compiler);
+ targetOptions.FixExceptionHandlingDefault();
targetOptions.Parse(flags.c_str());
targetOptions.Parse(defineFlags.c_str());
targetOptions.SetVerboseMakefile(
@@ -1696,7 +1700,11 @@ cmLocalVisualStudio7GeneratorOptions
this->FlagTable = cmLocalVisualStudio7GeneratorLinkFlagTable; break;
default: break;
}
+}
+//----------------------------------------------------------------------------
+void cmLocalVisualStudio7GeneratorOptions::FixExceptionHandlingDefault()
+{
// Exception handling is on by default because the platform file has
// "/EHsc" in the flags. Normally, that will override this
// initialization to off, but the user has the option of removing