summaryrefslogtreecommitdiff
path: root/Source/cmLocalUnixMakefileGenerator3.cxx
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2006-09-27 13:43:46 -0400
committerBrad King <brad.king@kitware.com>2006-09-27 13:43:46 -0400
commitdd332a00cc0169221243a231cd2474b6521aa11a (patch)
tree85d4722d4ac0dcbf665182a4dd2fe6f48f900fc0 /Source/cmLocalUnixMakefileGenerator3.cxx
parent5d22d36c5da1e0838d50c90250c06ba6852fb7b4 (diff)
downloadcmake-dd332a00cc0169221243a231cd2474b6521aa11a.tar.gz
ENH: Re-implemented command line argument shell quoting to support several platforms with one code base.
Diffstat (limited to 'Source/cmLocalUnixMakefileGenerator3.cxx')
-rw-r--r--Source/cmLocalUnixMakefileGenerator3.cxx12
1 files changed, 11 insertions, 1 deletions
diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx
index 0898dafc5c..2eac5ab3c1 100644
--- a/Source/cmLocalUnixMakefileGenerator3.cxx
+++ b/Source/cmLocalUnixMakefileGenerator3.cxx
@@ -899,6 +899,8 @@ cmLocalUnixMakefileGenerator3
{
dir = workingDir;
}
+ bool escapeOldStyle = cc.GetEscapeOldStyle();
+ bool escapeAllowMakeVars = cc.GetEscapeAllowMakeVars();
// Add each command line to the set of commands.
std::vector<std::string> commands1;
@@ -927,7 +929,15 @@ cmLocalUnixMakefileGenerator3
for(unsigned int j=1; j < commandLine.size(); ++j)
{
cmd += " ";
- cmd += this->EscapeForShell(commandLine[j].c_str());
+ if(escapeOldStyle)
+ {
+ cmd += this->EscapeForShellOldStyle(commandLine[j].c_str());
+ }
+ else
+ {
+ cmd += this->EscapeForShell(commandLine[j].c_str(),
+ escapeAllowMakeVars);
+ }
}
commands1.push_back(cmd);
}