ENH/FIX: add NO_SYSTEM_PATH option + fix command usage
This commit is contained in:
parent
ce31498637
commit
1ad05f9e6d
@ -76,6 +76,7 @@ bool cmFindProgramCommand::InitialPass(std::vector<std::string> const& argsIn)
|
|||||||
bool foundName = false;
|
bool foundName = false;
|
||||||
bool foundPath = false;
|
bool foundPath = false;
|
||||||
bool doingNames = true;
|
bool doingNames = true;
|
||||||
|
bool no_system_path = false;
|
||||||
for (unsigned int j = 1; j < args.size(); ++j)
|
for (unsigned int j = 1; j < args.size(); ++j)
|
||||||
{
|
{
|
||||||
if(args[j] == "NAMES")
|
if(args[j] == "NAMES")
|
||||||
@ -88,6 +89,10 @@ bool cmFindProgramCommand::InitialPass(std::vector<std::string> const& argsIn)
|
|||||||
doingNames = false;
|
doingNames = false;
|
||||||
foundPath = true;
|
foundPath = true;
|
||||||
}
|
}
|
||||||
|
else if (args[j] == "NO_SYSTEM_PATH")
|
||||||
|
{
|
||||||
|
no_system_path = true;
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if(doingNames)
|
if(doingNames)
|
||||||
@ -123,7 +128,9 @@ bool cmFindProgramCommand::InitialPass(std::vector<std::string> const& argsIn)
|
|||||||
i != names.end() ; ++i)
|
i != names.end() ; ++i)
|
||||||
{
|
{
|
||||||
// Try to find the program.
|
// Try to find the program.
|
||||||
std::string result = cmSystemTools::FindProgram(i->c_str(), path);
|
std::string result = cmSystemTools::FindProgram(i->c_str(),
|
||||||
|
path,
|
||||||
|
no_system_path);
|
||||||
if(result != "")
|
if(result != "")
|
||||||
{
|
{
|
||||||
// Save the value in the cache
|
// Save the value in the cache
|
||||||
|
@ -70,11 +70,12 @@ public:
|
|||||||
virtual const char* GetFullDocumentation()
|
virtual const char* GetFullDocumentation()
|
||||||
{
|
{
|
||||||
return
|
return
|
||||||
"FIND_PROGRAM(NAME executable1 extrapath extrapath ... [DOC helpstring]) "
|
"FIND_PROGRAM(DEFINE_NAME executableName [NAMES name1 name2 name3...] [PATHS path1 path2 path3...] [NO_SYSTEM_PATH] [DOC helpstring]) "
|
||||||
"Find the executable in the system PATH or in any extra paths specified in the command."
|
"Find the executable in the system PATH or in any extra paths specified in the command."
|
||||||
"A cache entry called NAME is created to store the result. NOTFOUND is the value"
|
"A cache entry called DEFILE_NAME is created to store the result. NOTFOUND is the value"
|
||||||
" used if the program was not found. If DOC is specified the next argument is the "
|
" used if the program was not found. If DOC is specified the next argument is the "
|
||||||
"documentation string for the cache entry NAME.";
|
"documentation string for the cache entry NAME."
|
||||||
|
"If NO_SYSTEM_PATH is specified the contents of system PATH is not used";
|
||||||
}
|
}
|
||||||
|
|
||||||
cmTypeMacro(cmFindProgramCommand, cmCommand);
|
cmTypeMacro(cmFindProgramCommand, cmCommand);
|
||||||
|
Loading…
Reference in New Issue
Block a user