From caee3af3c5625d1a181c90efdff6fb599f21f699 Mon Sep 17 00:00:00 2001 From: Brad King Date: Tue, 29 Sep 2009 16:38:43 -0400 Subject: [PATCH] Do not parse preprocessor defs for VS 10 link/lib When constructing cmVisualStudioGeneratorOptions to parse options for tools 'link' and 'lib' the tool type is now Linker, not Compiler. This tells it not to recognize flags starting in '/D' as preprocessor macros, such as the '/DEF:' linker option. See issue #9613. --- Source/cmVisualStudio10TargetGenerator.cxx | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/Source/cmVisualStudio10TargetGenerator.cxx b/Source/cmVisualStudio10TargetGenerator.cxx index 21c00950e..b7991b6d1 100644 --- a/Source/cmVisualStudio10TargetGenerator.cxx +++ b/Source/cmVisualStudio10TargetGenerator.cxx @@ -951,10 +951,10 @@ void cmVisualStudio10TargetGenerator::WriteLibOptions(std::string const& ->GetProperty("STATIC_LIBRARY_FLAGS")) { this->WriteString("\n", 2); - cmVisualStudioGeneratorOptions - libOptions(this->LocalGenerator, - 10, cmVisualStudioGeneratorOptions::Compiler, - cmVS10LibFlagTable, 0, this); + cmVisualStudioGeneratorOptions + libOptions(this->LocalGenerator, 10, + cmVisualStudioGeneratorOptions::Linker, + cmVS10LibFlagTable, 0, this); libOptions.Parse(libflags); libOptions.OutputAdditionalOptions(*this->BuildFileStream, " ", ""); libOptions.OutputFlagMap(*this->BuildFileStream, " "); @@ -1023,10 +1023,10 @@ void cmVisualStudio10TargetGenerator::WriteLinkOptions(std::string const& flags += " "; flags += targetLinkFlags; } - cmVisualStudioGeneratorOptions - linkOptions(this->LocalGenerator, - 10, cmVisualStudioGeneratorOptions::Compiler, - cmVS10LinkFlagTable); + cmVisualStudioGeneratorOptions + linkOptions(this->LocalGenerator, 10, + cmVisualStudioGeneratorOptions::Linker, + cmVS10LinkFlagTable, 0, this); if ( this->Target->GetPropertyAsBool("WIN32_EXECUTABLE") ) { flags += " /SUBSYSTEM:WINDOWS";