mirror of
https://github.com/Kitware/CMake.git
synced 2025-10-18 17:31:57 +08:00
ENH: New format for warning and error messages
- Add cmMakefile methods IssueError and IssueWarning - Maintain an explicit call stack in cmMakefile - Include context/call-stack info in messages - Nested errors now unwind the call stack - Use new mechanism for policy warnings and errors - Improve policy error message - Include cmExecutionStatus pointer in call stack so that errors deeper in the C++ stack under a command invocation will become errors for the command
This commit is contained in:
@@ -18,7 +18,8 @@
|
||||
|
||||
// cmAddCustomTargetCommand
|
||||
bool cmAddCustomTargetCommand
|
||||
::InitialPass(std::vector<std::string> const& args, cmExecutionStatus &)
|
||||
::InitialPass(std::vector<std::string> const& args,
|
||||
cmExecutionStatus& status)
|
||||
{
|
||||
// This enum must be before an enum is used in a switch statment.
|
||||
// If not there is an ICE on the itanium version of gcc we are running
|
||||
@@ -45,9 +46,9 @@ bool cmAddCustomTargetCommand
|
||||
switch (this->Makefile->GetPolicyStatus(cmPolicies::CMP_0001))
|
||||
{
|
||||
case cmPolicies::WARN:
|
||||
cmSystemTools::Message(
|
||||
this->Makefile->IssueWarning(
|
||||
this->Makefile->GetPolicies()->GetPolicyWarning
|
||||
(cmPolicies::CMP_0001).c_str(),"Warning");
|
||||
(cmPolicies::CMP_0001));
|
||||
case cmPolicies::OLD:
|
||||
// if (this->Makefile->IsBWCompatibilityLessThan(2,2))
|
||||
// {
|
||||
@@ -60,10 +61,11 @@ bool cmAddCustomTargetCommand
|
||||
return false;
|
||||
case cmPolicies::REQUIRED_IF_USED:
|
||||
case cmPolicies::REQUIRED_ALWAYS:
|
||||
this->SetError(
|
||||
this->Makefile->IssueError(
|
||||
this->Makefile->GetPolicies()->GetRequiredPolicyError
|
||||
(cmPolicies::CMP_0001).c_str());
|
||||
return false;
|
||||
(cmPolicies::CMP_0001).c_str()
|
||||
);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user