ENH: if output variable turn verbose off
This commit is contained in:
parent
fa782867b3
commit
48b74fd034
|
@ -49,6 +49,7 @@ bool cmExecProgramCommand::InitialPass(std::vector<std::string> const& args)
|
|||
return false;
|
||||
}
|
||||
output_variable = args[i];
|
||||
haveoutput_variable = false;
|
||||
count ++;
|
||||
}
|
||||
else if(args[i] == "RETURN_VALUE")
|
||||
|
@ -66,6 +67,7 @@ bool cmExecProgramCommand::InitialPass(std::vector<std::string> const& args)
|
|||
return false;
|
||||
}
|
||||
return_variable = args[i];
|
||||
havereturn_variable = false;
|
||||
count ++;
|
||||
}
|
||||
else if(args[i] == "ARGS")
|
||||
|
@ -94,17 +96,22 @@ bool cmExecProgramCommand::InitialPass(std::vector<std::string> const& args)
|
|||
{
|
||||
command = args[0];
|
||||
}
|
||||
bool verbose = true;
|
||||
if(output_variable.size() > 0)
|
||||
{
|
||||
verbose = false;
|
||||
}
|
||||
int retVal = 0;
|
||||
std::string output;
|
||||
if(args.size() - count == 2)
|
||||
{
|
||||
cmSystemTools::MakeDirectory(args[1].c_str());
|
||||
cmSystemTools::RunCommand(command.c_str(), output, retVal,
|
||||
cmSystemTools::ConvertToOutputPath(args[1].c_str()).c_str());
|
||||
cmSystemTools::ConvertToOutputPath(args[1].c_str()).c_str(), verbose);
|
||||
}
|
||||
else
|
||||
{
|
||||
cmSystemTools::RunCommand(command.c_str(), output, retVal);
|
||||
cmSystemTools::RunCommand(command.c_str(), output, retVal, 0, verbose);
|
||||
}
|
||||
|
||||
if ( output_variable.size() > 0 )
|
||||
|
|
|
@ -69,8 +69,10 @@ public:
|
|||
"can include arguments if it is double quoted, but it is better to use the "
|
||||
"optional ARGS argument to specify arguments to the program. This is because "
|
||||
"cmake will then be able to escape spaces in the Executable path. An optiona "
|
||||
"argument OUPUT_VARIABLE specifies a variable to which the output will be set. "
|
||||
"To capture the return value of the execution, use RETURN_VALUE variable.";
|
||||
"argument OUTPUT_VARIABLE specifies a variable to which the output will be set. "
|
||||
"To capture the return value of the execution, use RETURN_VALUE variable. "
|
||||
"If OUTPUT_VARIABLE is specified, then no output will go to the stdout/stderr "
|
||||
"of the console running cmake.";
|
||||
}
|
||||
|
||||
cmTypeMacro(cmExecProgramCommand, cmCommand);
|
||||
|
|
Loading…
Reference in New Issue