diff options
author | Bill Hoffman <bill.hoffman@kitware.com> | 2006-06-06 16:01:23 (GMT) |
---|---|---|
committer | Bill Hoffman <bill.hoffman@kitware.com> | 2006-06-06 16:01:23 (GMT) |
commit | abf97b5b84f8c4f8f3fb3bcf4e20f164c6c86233 (patch) | |
tree | 79684cdef3e96fc3a0bd3ef461a496ad5c09a004 /Source/cmLocalVisualStudio7Generator.cxx | |
parent | 85c5a7dbc060bba4bd5939e98c71eb16aa71de2f (diff) | |
download | CMake-abf97b5b84f8c4f8f3fb3bcf4e20f164c6c86233.zip CMake-abf97b5b84f8c4f8f3fb3bcf4e20f164c6c86233.tar.gz CMake-abf97b5b84f8c4f8f3fb3bcf4e20f164c6c86233.tar.bz2 |
ENH: fix /TP for c code
Diffstat (limited to 'Source/cmLocalVisualStudio7Generator.cxx')
-rw-r--r-- | Source/cmLocalVisualStudio7Generator.cxx | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/Source/cmLocalVisualStudio7Generator.cxx b/Source/cmLocalVisualStudio7Generator.cxx index 17c2704..0cc7dad 100644 --- a/Source/cmLocalVisualStudio7Generator.cxx +++ b/Source/cmLocalVisualStudio7Generator.cxx @@ -1166,9 +1166,22 @@ void cmLocalVisualStudio7Generator << "\t\t\t\t\t<Tool\n" << "\t\t\t\t\tName=\"" << aCompilerTool << "\"\n"; if(compileFlags.size()) - { - fout << "\t\t\t\t\tAdditionalOptions=\"" - << this->EscapeForXML(compileFlags.c_str()) << "\"\n"; + { + std::string compileFlagsCopy = compileFlags; + std::map<cmStdString, cmStdString> fileFlagMap; + this->FillFlagMapFromCommandFlags + (fileFlagMap, &cmLocalVisualStudio7GeneratorFlagTable[0], compileFlagsCopy); + if(compileFlagsCopy.size() && compileFlagsCopy.find_first_not_of(" ") + != compileFlagsCopy.npos) + { + fout << "\t\t\t\t\tAdditionalOptions=\"" + << this->EscapeForXML(compileFlagsCopy.c_str()) << "\"\n"; + } + for(std::map<cmStdString, cmStdString>::iterator m = fileFlagMap.begin(); + m != fileFlagMap.end(); ++m) + { + fout << "\t\t\t\t\t" << m->first << "=\"" << m->second << "\"\n"; + } } if(additionalDeps.length()) { |