summaryrefslogtreecommitdiff
path: root/Source/cmLocalNinjaGenerator.cxx
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2012-06-06 15:26:48 -0400
committerBrad King <brad.king@kitware.com>2012-06-12 15:43:32 -0400
commit32313fd0d44fbd14b111a7eefdb3ceac3fa727ff (patch)
tree5b83c97147b3c06cec34b3891a36d8fd54b63bec /Source/cmLocalNinjaGenerator.cxx
parent94de98290230e010a28fcbf36c0f691b564fbc5c (diff)
parente3a1f727f75e6077e7724719c606d833e8bbd9b0 (diff)
downloadcmake-32313fd0d44fbd14b111a7eefdb3ceac3fa727ff.tar.gz
Merge branch 'ninja-rspfile' into no-std-stringstream
Conflicts: Source/cmGlobalNinjaGenerator.cxx Source/cmLocalNinjaGenerator.cxx Source/cmNinjaNormalTargetGenerator.cxx
Diffstat (limited to 'Source/cmLocalNinjaGenerator.cxx')
-rw-r--r--Source/cmLocalNinjaGenerator.cxx12
1 files changed, 6 insertions, 6 deletions
diff --git a/Source/cmLocalNinjaGenerator.cxx b/Source/cmLocalNinjaGenerator.cxx
index f6a6bc29b3..d5baaeeeda 100644
--- a/Source/cmLocalNinjaGenerator.cxx
+++ b/Source/cmLocalNinjaGenerator.cxx
@@ -275,16 +275,16 @@ std::string cmLocalNinjaGenerator::BuildCommandLine(
return ":";
#endif
- // TODO: This will work only on Unix platforms. I don't
- // want to use a link.txt file because I will lose the benefit of the
- // $in variables. A discussion about dealing with multiple commands in
- // a rule is started here:
- // groups.google.com/group/ninja-build/browse_thread/thread/d515f23a78986008
cmOStringStream cmd;
for (std::vector<std::string>::const_iterator li = cmdLines.begin();
li != cmdLines.end(); ++li) {
- if (li != cmdLines.begin())
+ if (li != cmdLines.begin()) {
cmd << " && ";
+#ifdef _WIN32
+ } else if (cmdLines.size() > 1) {
+ cmd << "cmd.exe /c ";
+#endif
+ }
cmd << *li;
}
return cmd.str();