summaryrefslogtreecommitdiffstats
path: root/Source/cmSystemTools.cxx
diff options
context:
space:
mode:
authorBill Hoffman <bill.hoffman@kitware.com>2004-10-22 21:00:00 (GMT)
committerBill Hoffman <bill.hoffman@kitware.com>2004-10-22 21:00:00 (GMT)
commit040f7768859ae974d10ef24670768fce574bb2e4 (patch)
tree42b9e48b578e01521bfe3266e26616fa555bfffd /Source/cmSystemTools.cxx
parent43bc8a0d63705d57481ec7c9cefed1b65402e98f (diff)
downloadCMake-040f7768859ae974d10ef24670768fce574bb2e4.zip
CMake-040f7768859ae974d10ef24670768fce574bb2e4.tar.gz
CMake-040f7768859ae974d10ef24670768fce574bb2e4.tar.bz2
FIX: fix the problem where a target is a single character and nmake gets confused and add a test for it
Diffstat (limited to 'Source/cmSystemTools.cxx')
-rw-r--r--Source/cmSystemTools.cxx9
1 files changed, 6 insertions, 3 deletions
diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx
index 26ebdca..18d9c28 100644
--- a/Source/cmSystemTools.cxx
+++ b/Source/cmSystemTools.cxx
@@ -426,15 +426,18 @@ bool cmSystemTools::RunSingleCommand(
{
verbose = false;
}
+ std::string argsTemp;
+ std::string program;
+ cmSystemTools::SplitProgramFromArgs(command, program, argsTemp);
+ std::vector<cmStdString> args = cmSystemTools::ParseArguments(argsTemp.c_str());
- std::vector<cmStdString> args = cmSystemTools::ParseArguments(command);
-
- if(args.size() < 1)
+ if(program.size() < 1)
{
return false;
}
std::vector<const char*> argv;
+ argv.push_back(program.c_str());
for(std::vector<cmStdString>::const_iterator a = args.begin();
a != args.end(); ++a)
{