ENH: Moved ExpandListVariables out of individual commands. Argument evaluation rules are now very consistent. Double quotes can always be used to create exactly one argument, regardless of contents inside.

This commit is contained in:
Brad King
2002-12-11 18:13:33 -05:00
parent 5a321605bc
commit 4888c088ae
53 changed files with 611 additions and 633 deletions

View File

@@ -40,19 +40,17 @@ bool cmSourceFilesRemoveCommand::InitialPass(std::vector<std::string> const& arg
// expand the variable
std::vector<std::string> varArgsExpanded;
std::vector<std::string> temp;
temp.push_back(std::string(cacheValue));
cmSystemTools::ExpandListArguments(temp, varArgsExpanded);
cmSystemTools::ExpandListArgument(cacheValue, varArgsExpanded);
// expand the args
// check for REMOVE(VAR v1 v2 ... vn)
std::vector<std::string> argsExpanded;
std::vector<std::string> temp2;
std::vector<std::string> temp;
for(unsigned int j = 1; j < args.size(); ++j)
{
temp2.push_back(args[j]);
temp.push_back(args[j]);
}
cmSystemTools::ExpandListArguments(temp2, argsExpanded);
cmSystemTools::ExpandList(temp, argsExpanded);
// now create the new value
std::string value;