Modified: branches/xmlbuildsystem/reactos/ntoskrnl/ntoskrnl.xml
Modified: branches/xmlbuildsystem/reactos/tools/rbuild/XML.cpp
Modified: branches/xmlbuildsystem/reactos/tools/rbuild/module.cpp
--- branches/xmlbuildsystem/reactos/ntoskrnl/ntoskrnl.xml 2005-01-21 18:09:02 UTC (rev 13190)
+++ branches/xmlbuildsystem/reactos/ntoskrnl/ntoskrnl.xml 2005-01-21 18:15:10 UTC (rev 13191)
@@ -29,7 +29,7 @@
<directory name="ke">
<if property="ARCH" value="i386">
<directory name="i386">
- <file first="1">multiboot.S</file>
+ <file first="true">multiboot.S</file>
<file>bios.c</file>
<file>brkpoint.c</file>
<file>bthread.S</file>
--- branches/xmlbuildsystem/reactos/tools/rbuild/XML.cpp 2005-01-21 18:09:02 UTC (rev 13190)
+++ branches/xmlbuildsystem/reactos/tools/rbuild/XML.cpp 2005-01-21 18:15:10 UTC (rev 13191)
@@ -628,7 +628,6 @@
XMLElement*
XMLLoadInclude ( XMLElement* e, const Path& path, XMLIncludes& includes )
{
- // TODO FIXME
XMLAttribute* att;
att = e->GetAttribute("href",true);
assert(att);
--- branches/xmlbuildsystem/reactos/tools/rbuild/module.cpp 2005-01-21 18:09:02 UTC (rev 13190)
+++ branches/xmlbuildsystem/reactos/tools/rbuild/module.cpp 2005-01-21 18:15:10 UTC (rev 13191)
@@ -111,9 +111,18 @@
string subpath ( path );
if ( e.name == "file" && e.value.size () > 0 )
{
+ bool first = false;
const XMLAttribute* att = e.GetAttribute ( "first", false );
- File* pFile = new File ( FixSeparator ( path + CSEP + e.value ),
- att && atoi(att->value.c_str()) != 0 );
+ if ( att )
+ {
+ if ( !stricmp ( att->value.c_str(), "true" ) )
+ first = true;
+ else if ( stricmp ( att->value.c_str(), "false" ) )
+ throw InvalidBuildFileException (
+ e.location,
+ "attribute 'first' of <file> element can only be 'true' or 'false'" );
+ }
+ File* pFile = new File ( FixSeparator ( path + CSEP + e.value ), first );
if ( pIf )
pIf->files.push_back ( pFile );
else