diff options
Diffstat (limited to 'Source/cmNinjaTargetGenerator.cxx')
-rw-r--r-- | Source/cmNinjaTargetGenerator.cxx | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/Source/cmNinjaTargetGenerator.cxx b/Source/cmNinjaTargetGenerator.cxx index 9bc292c..45ed0ab 100644 --- a/Source/cmNinjaTargetGenerator.cxx +++ b/Source/cmNinjaTargetGenerator.cxx @@ -2362,6 +2362,8 @@ void cmNinjaTargetGenerator::ExportSwiftObjectCompileCommand( return this->LocalGenerator->ConvertToOutputFormat( srcFilename, cmOutputConverter::SHELL); }; + auto escapedModuleObjectFilename = + this->ConvertToNinjaPath(moduleObjectFilename); cmRulePlaceholderExpander::RuleVariables compileObjectVars; compileObjectVars.Language = "Swift"; @@ -2390,11 +2392,12 @@ void cmNinjaTargetGenerator::ExportSwiftObjectCompileCommand( for (cmSourceFile const* sf : moduleSourceFiles) { std::string const sourceFilename = this->GetCompiledSourceNinjaPath(sf); - std::string objectFilename = moduleObjectFilename; + std::string objectFilename = escapedModuleObjectFilename; if (!singleOutput) { // If it's not single-output, each source file gets a separate object - objectFilename = this->GetObjectFilePath(sf, outputConfig); + objectFilename = + this->ConvertToNinjaPath(this->GetObjectFilePath(sf, outputConfig)); } compileObjectVars.Objects = objectFilename.c_str(); |