diff options
author | David Cole <david.cole@kitware.com> | 2011-11-18 10:15:58 -0500 |
---|---|---|
committer | David Cole <david.cole@kitware.com> | 2011-11-18 10:15:58 -0500 |
commit | 46c70540ede37c5f2ebeeeba4178340abf92fadb (patch) | |
tree | 97f30d8f0563755b72ef3243ab6ee09e49070283 /Source/cmLocalVisualStudioGenerator.cxx | |
parent | 8e1bbee4d948025dfb1888e0a8b0365d7bd360c8 (diff) | |
download | cmake-46c70540ede37c5f2ebeeeba4178340abf92fadb.tar.gz |
VS: Use "call " keyword with .cmd and .bat file custom commands (#12445)
Similar fix to commit d093abef for the Makefile generators. Prevents
premature exit from sequence of commands. Even when no errors occur,
the previous construct without "call " was exiting the sequence before
executing the full set of commands...
Diffstat (limited to 'Source/cmLocalVisualStudioGenerator.cxx')
-rw-r--r-- | Source/cmLocalVisualStudioGenerator.cxx | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/Source/cmLocalVisualStudioGenerator.cxx b/Source/cmLocalVisualStudioGenerator.cxx index 4d1640971b..de1ac30fe3 100644 --- a/Source/cmLocalVisualStudioGenerator.cxx +++ b/Source/cmLocalVisualStudioGenerator.cxx @@ -250,6 +250,20 @@ cmLocalVisualStudioGenerator // Add this command line. std::string cmd = ccg.GetCommand(c); + + // Use "call " before any invocations of .bat or .cmd files + // invoked as custom commands. + // + std::string suffix; + if (cmd.size() > 4) + { + suffix = cmSystemTools::LowerCase(cmd.substr(cmd.size()-4)); + if (suffix == ".bat" || suffix == ".cmd") + { + script += "call "; + } + } + script += this->Convert(cmd.c_str(), relativeRoot, SHELL); ccg.AppendArguments(c, script); |