diff options
Diffstat (limited to 'Source/cmGetDirectoryPropertyCommand.cxx')
-rw-r--r-- | Source/cmGetDirectoryPropertyCommand.cxx | 84 |
1 files changed, 36 insertions, 48 deletions
diff --git a/Source/cmGetDirectoryPropertyCommand.cxx b/Source/cmGetDirectoryPropertyCommand.cxx index 255887689e..1b5bcc9e2b 100644 --- a/Source/cmGetDirectoryPropertyCommand.cxx +++ b/Source/cmGetDirectoryPropertyCommand.cxx @@ -14,94 +14,84 @@ #include "cmake.h" // cmGetDirectoryPropertyCommand -bool cmGetDirectoryPropertyCommand -::InitialPass(std::vector<std::string> const& args, cmExecutionStatus &) +bool cmGetDirectoryPropertyCommand::InitialPass( + std::vector<std::string> const& args, cmExecutionStatus&) { - if(args.size() < 2 ) - { + if (args.size() < 2) { this->SetError("called with incorrect number of arguments"); return false; - } + } std::vector<std::string>::const_iterator i = args.begin(); std::string variable = *i; ++i; // get the directory argument if there is one - cmMakefile *dir = this->Makefile; - if (*i == "DIRECTORY") - { + cmMakefile* dir = this->Makefile; + if (*i == "DIRECTORY") { ++i; - if (i == args.end()) - { - this->SetError - ("DIRECTORY argument provided without subsequent arguments"); + if (i == args.end()) { + this->SetError( + "DIRECTORY argument provided without subsequent arguments"); return false; - } + } std::string sd = *i; // make sure the start dir is a full path - if (!cmSystemTools::FileIsFullPath(sd.c_str())) - { + if (!cmSystemTools::FileIsFullPath(sd.c_str())) { sd = this->Makefile->GetCurrentSourceDirectory(); sd += "/"; sd += *i; - } + } // The local generators are associated with collapsed paths. sd = cmSystemTools::CollapseFullPath(sd); // lookup the makefile from the directory name dir = this->Makefile->GetGlobalGenerator()->FindMakefile(sd); - if (!dir) - { - this->SetError - ("DIRECTORY argument provided but requested directory not found. " - "This could be because the directory argument was invalid or, " - "it is valid but has not been processed yet."); + if (!dir) { + this->SetError( + "DIRECTORY argument provided but requested directory not found. " + "This could be because the directory argument was invalid or, " + "it is valid but has not been processed yet."); return false; - } - ++i; } + ++i; + } // OK, now we have the directory to process, we just get the requested // information out of it - if ( *i == "DEFINITION" ) - { + if (*i == "DEFINITION") { ++i; - if (i == args.end()) - { + if (i == args.end()) { this->SetError("A request for a variable definition was made without " "providing the name of the variable to get."); return false; - } + } std::string output = dir->GetSafeDefinition(*i); this->Makefile->AddDefinition(variable, output.c_str()); return true; - } + } - const char *prop = 0; - if (!i->empty()) - { - if (*i == "DEFINITIONS") - { - switch(this->Makefile->GetPolicyStatus(cmPolicies::CMP0059)) - { + const char* prop = 0; + if (!i->empty()) { + if (*i == "DEFINITIONS") { + switch (this->Makefile->GetPolicyStatus(cmPolicies::CMP0059)) { case cmPolicies::WARN: - this->Makefile->IssueMessage(cmake::AUTHOR_WARNING, - cmPolicies::GetPolicyWarning(cmPolicies::CMP0059)); + this->Makefile->IssueMessage( + cmake::AUTHOR_WARNING, + cmPolicies::GetPolicyWarning(cmPolicies::CMP0059)); case cmPolicies::OLD: - this->StoreResult(variable, - this->Makefile->GetDefineFlagsCMP0059()); - return true; + this->StoreResult(variable, this->Makefile->GetDefineFlagsCMP0059()); + return true; case cmPolicies::NEW: case cmPolicies::REQUIRED_ALWAYS: case cmPolicies::REQUIRED_IF_USED: break; - } } - prop = dir->GetProperty(*i); } + prop = dir->GetProperty(*i); + } this->StoreResult(variable, prop); return true; } @@ -109,11 +99,9 @@ bool cmGetDirectoryPropertyCommand void cmGetDirectoryPropertyCommand::StoreResult(std::string const& variable, const char* prop) { - if (prop) - { + if (prop) { this->Makefile->AddDefinition(variable, prop); return; - } + } this->Makefile->AddDefinition(variable, ""); } - |