summaryrefslogtreecommitdiffstats
path: root/Source/cmLocalUnixMakefileGenerator3.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'Source/cmLocalUnixMakefileGenerator3.cxx')
-rw-r--r--Source/cmLocalUnixMakefileGenerator3.cxx14
1 files changed, 14 insertions, 0 deletions
diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx
index 56b2b97..812ded3 100644
--- a/Source/cmLocalUnixMakefileGenerator3.cxx
+++ b/Source/cmLocalUnixMakefileGenerator3.cxx
@@ -92,6 +92,7 @@ cmLocalUnixMakefileGenerator3::cmLocalUnixMakefileGenerator3()
this->SkipAssemblySourceRules = false;
this->MakeCommandEscapeTargetTwice = false;
this->BorlandMakeCurlyHack = false;
+ this->NoMultiOutputMultiDepRules = false;
}
//----------------------------------------------------------------------------
@@ -696,6 +697,19 @@ cmLocalUnixMakefileGenerator3
// No dependencies. The commands will always run.
os << cmMakeSafe(tgt) << space << ":\n";
}
+ else if(this->NoMultiOutputMultiDepRules && outputs.size() >= 2)
+ {
+ // Borland make does not understand multiple dependency rules when
+ // there are multiple outputs, so write them all on one line.
+ os << cmMakeSafe(tgt) << space << ":";
+ for(std::vector<std::string>::const_iterator dep = depends.begin();
+ dep != depends.end(); ++dep)
+ {
+ replace = this->Convert(*dep, HOME_OUTPUT, MAKERULE);
+ os << " " << cmMakeSafe(replace);
+ }
+ os << "\n";
+ }
else
{
// Split dependencies into multiple rule lines. This allows for