modified tools/rbuild/module.cpp

modified   tools/rbuild/project.cpp
modified   tools/rbuild/project.dtd
modified   tools/rbuild/rbuild.h
   New per-project property allowwarnings overrides allowwarnings property of all modules in the project

svn path=/trunk/; revision=39010
This commit is contained in:
KJK::Hyperion 2009-01-22 11:55:12 +00:00
parent 06794682ef
commit ccb753842f
4 changed files with 10 additions and 0 deletions

View file

@ -452,6 +452,8 @@ Module::Module ( const Project& project,
}
if ( att != NULL )
allowWarnings = att->value == "true";
else if ( project.allowWarningsSet )
allowWarnings = project.allowWarnings;
else
allowWarnings = false;

View file

@ -298,6 +298,11 @@ Project::ProcessXML ( const string& path )
assert(att);
makefile = Environment::GetAutomakeFile ( att->value );
att = node->GetAttribute ( "allowwarnings", false );
allowWarningsSet = att != NULL;
if ( att != NULL )
allowWarnings = att->value == "true";
size_t i;
for ( i = 0; i < node->subElements.size (); i++ )
{

View file

@ -137,6 +137,7 @@
<!ATTLIST project
name (ReactOS|Project) #REQUIRED
makefile %Text; #REQUIRED
allowwarnings (true|false) "false"
xmlns:xi %Text; #FIXED "http://www.w3.org/2001/XInclude"
>

View file

@ -237,6 +237,8 @@ public:
std::map<std::string, Module*> modules;
IfableData non_if_data;
IfableData host_non_if_data;
bool allowWarnings;
bool allowWarningsSet;
Project ( const Configuration& configuration,
const std::string& filename,