summaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2008-05-10 22:39:06 (GMT)
committerBrad King <brad.king@kitware.com>2008-05-10 22:39:06 (GMT)
commit071725a1c1c419f8d00770364e6345ed300fa5a1 (patch)
tree6b8d754caf846fc996bf71287d5f3780acdc5a9f /Source
parent09dd298f6319992db30755e759ef3c3a01a2bf1a (diff)
downloadCMake-071725a1c1c419f8d00770364e6345ed300fa5a1.zip
CMake-071725a1c1c419f8d00770364e6345ed300fa5a1.tar.gz
CMake-071725a1c1c419f8d00770364e6345ed300fa5a1.tar.bz2
BUG: Fix generation of some paths into .cmake files in the build tree to escape strings for the CMake language. This fix allows users to put double quotes in the SOVERSION of a shared library.
Diffstat (limited to 'Source')
-rw-r--r--Source/cmLocalUnixMakefileGenerator3.cxx4
-rw-r--r--Source/cmMakefileTargetGenerator.cxx6
2 files changed, 6 insertions, 4 deletions
diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx
index a717bef..50921be 100644
--- a/Source/cmLocalUnixMakefileGenerator3.cxx
+++ b/Source/cmLocalUnixMakefileGenerator3.cxx
@@ -1110,8 +1110,8 @@ cmLocalUnixMakefileGenerator3
for(std::vector<std::string>::const_iterator f = files.begin();
f != files.end(); ++f)
{
- fout << "\"" << this->Convert(f->c_str(),START_OUTPUT,UNCHANGED)
- << "\"\n";
+ std::string fc = this->Convert(f->c_str(),START_OUTPUT,UNCHANGED);
+ fout << " " << this->EscapeForCMake(fc.c_str()) << "\n";
}
fout << ")\n";
commands.push_back(remove);
diff --git a/Source/cmMakefileTargetGenerator.cxx b/Source/cmMakefileTargetGenerator.cxx
index 6cb5fd0..3f4b866 100644
--- a/Source/cmMakefileTargetGenerator.cxx
+++ b/Source/cmMakefileTargetGenerator.cxx
@@ -933,8 +933,10 @@ void cmMakefileTargetGenerator::WriteTargetDependRules()
this->MultipleOutputPairs.begin();
pi != this->MultipleOutputPairs.end(); ++pi)
{
- *this->InfoFileStream << " \"" << pi->first << "\" \""
- << pi->second << "\"\n";
+ *this->InfoFileStream
+ << " " << this->LocalGenerator->EscapeForCMake(pi->first.c_str())
+ << " " << this->LocalGenerator->EscapeForCMake(pi->second.c_str())
+ << "\n";
}
*this->InfoFileStream << " )\n\n";
}