Files
reactos/reactos/tools/rbuild/include.cpp
T
Casper Hornstrup d3a30bf22d * LinkerFlag tag support
* Build addsys, libwine.a, user32.dll, advapi32.dll, gdi32.dll, msvcrt.dll, and welcome.exe


svn path=/branches/xmlbuildsystem/; revision=13055
2005-01-15 13:52:36 +00:00

62 lines
1.2 KiB
C++

#include "pch.h"
#include <assert.h>
#include "rbuild.h"
using std::string;
using std::vector;
Include::Include ( const Project& project_,
const XMLElement& includeNode )
: project(project_),
module(NULL),
node(includeNode),
base(NULL)
{
Initialize();
}
Include::Include ( const Project& project_,
const Module* module_,
const XMLElement& includeNode )
: project(project_),
module(module_),
node(includeNode),
base(NULL)
{
Initialize();
}
Include::~Include ()
{
}
void
Include::Initialize()
{
}
void
Include::ProcessXML()
{
const XMLAttribute* att;
att = node.GetAttribute ( "base",
false );
if ( att )
{
if ( !module )
throw InvalidBuildFileException (
node.location,
"'base' attribute illegal from global <include>" );
base = project.LocateModule ( att->value );
if ( !base )
throw InvalidBuildFileException (
node.location,
"<include> attribute 'base' references non-existant module '%s'",
att->value.c_str() );
directory = FixSeparator ( base->GetBasePath() + "/" + node.value );
}
else
directory = FixSeparator ( node.value );
}