std::string name;
directory_map subdirs;
Directory ( const std::string& name );
+ ~Directory();
void Add ( const char* subdir );
void GenerateTree ( DirectoryLocation root,
bool verbose );
const Property* LookupProperty ( const std::string& name ) const;
void SetConfigurationOption ( char* s,
std::string name,
- std::string* alternativeName );
+ std::string alternativeName );
void SetConfigurationOption ( char* s,
std::string name );
void ReadXml ();
EmbeddedTypeLib = 26,
ElfExecutable = 27,
RpcProxy,
+ HostStaticLibrary,
+ TypeDontCare,
+ Cabinet,
+ KeyboardLayout
};
enum HostType
{
HostFalse,
HostDefault,
- HostTrue
+ HostTrue,
+ HostDontCare,
+};
+
+enum CompilerType
+{
+ CompilerTypeDontCare,
+ CompilerTypeCC,
+ CompilerTypeCPP,
};
class FileLocation
FileLocation *output; // "path/foo.exe"
FileLocation *dependency; // "path/foo.exe" or "path/libfoo.a"
FileLocation *install;
+ std::string description;
+ std::string lcid;
+ std::string layoutId;
+ std::string layoutNameResId;
Module ( const Project& project,
const XMLElement& moduleNode,
ImportLibrary ( const Project& project,
const XMLElement& node,
const Module& module );
+ ~ImportLibrary ();
};
const Module* module;
const XMLElement& node;
std::string flag;
+ CompilerType compiler;
CompilerFlag ( const Project& project,
const XMLElement& compilerFlagNode );
public:
const XMLElement& node;
const Module& module;
- FileLocation file;
+ const FileLocation *file;
LinkerScript ( const XMLElement& node,
const Module& module,
- const FileLocation& file );
+ const FileLocation *file );
~LinkerScript ();
void ProcessXML();
};
const Project& project;
const Module* module;
std::string name, value;
+ bool isInternal;
Property ( const XMLElement& node_,
const Project& project_,
CDFile ( const Project& project,
const XMLElement& bootstrapNode,
const std::string& path );
+ ~CDFile ();
private:
static std::string ReplaceVariable ( const std::string& name,
const std::string& value,
InstallFile ( const Project& project,
const XMLElement& bootstrapNode,
const std::string& path );
+ ~InstallFile ();
};
public:
const XMLElement& node;
const Module& module;
- FileLocation file;
+ const FileLocation *file;
PchFile (
const XMLElement& node,
const Module& module,
- const FileLocation& file );
+ const FileLocation *file );
+ ~PchFile();
void ProcessXML();
};