summaryrefslogtreecommitdiffstats
path: root/Source/cmNinjaTargetGenerator.cxx
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2012-06-20 20:47:41 (GMT)
committerStephen Kelly <steveire@gmail.com>2012-06-20 20:47:41 (GMT)
commitca403b8c436e25e2fe5de5144fecf7aef8b5de78 (patch)
treedf5f57c8f0b36ff18b1d1f958ba5e0da55cbb24d /Source/cmNinjaTargetGenerator.cxx
parentf9383a9898b915fb836c8b7fe0877acc6aec78c6 (diff)
downloadCMake-ca403b8c436e25e2fe5de5144fecf7aef8b5de78.zip
CMake-ca403b8c436e25e2fe5de5144fecf7aef8b5de78.tar.gz
CMake-ca403b8c436e25e2fe5de5144fecf7aef8b5de78.tar.bz2
Construct the full path before escaping it.
Should fix some dashboard errors.
Diffstat (limited to 'Source/cmNinjaTargetGenerator.cxx')
-rw-r--r--Source/cmNinjaTargetGenerator.cxx11
1 files changed, 7 insertions, 4 deletions
diff --git a/Source/cmNinjaTargetGenerator.cxx b/Source/cmNinjaTargetGenerator.cxx
index 1063328..e130065 100644
--- a/Source/cmNinjaTargetGenerator.cxx
+++ b/Source/cmNinjaTargetGenerator.cxx
@@ -489,11 +489,10 @@ cmNinjaTargetGenerator
cmLocalGenerator::RuleVariables compileObjectVars;
std::string lang = language;
compileObjectVars.Language = lang.c_str();
- std::string escapedSourceFileName =
- this->LocalGenerator->ConvertToOutputFormat(
- sourceFileName.c_str(), cmLocalGenerator::SHELL);
- if (!cmSystemTools::FileIsFullPath(escapedSourceFileName.c_str()))
+ std::string escapedSourceFileName = sourceFileName;
+
+ if (!cmSystemTools::FileIsFullPath(sourceFileName.c_str()))
{
escapedSourceFileName = cmSystemTools::CollapseFullPath(
escapedSourceFileName.c_str(),
@@ -501,6 +500,10 @@ cmNinjaTargetGenerator
GetHomeOutputDirectory());
}
+ escapedSourceFileName =
+ this->LocalGenerator->ConvertToOutputFormat(
+ escapedSourceFileName.c_str(), cmLocalGenerator::SHELL);
+
compileObjectVars.Source = escapedSourceFileName.c_str();
compileObjectVars.Object = objectFileName.c_str();
compileObjectVars.Flags = vars["FLAGS"].c_str();