forgot to commit rbuild.h
[reactos.git] / reactos / tools / rbuild / rbuild.h
index 520bdd9..60671e0 100644 (file)
@@ -57,6 +57,8 @@ typedef std::vector<std::string> string_list;
 #define SBAD_SEP "\\"
 #endif
 
+#define MS_VS_DEF_VERSION "7.10"
+
 class Project;
 class IfableData;
 class Module;
@@ -95,6 +97,7 @@ public:
        bool AutomaticDependencies;
        bool CheckDependenciesForModuleOnly;
        std::string CheckDependenciesForModuleOnlyModule;
+       std::string VSProjectVersion;
        bool MakeHandlesInstallDirectories;
        bool GenerateProxyMakefilesInSourceTree;
 };
@@ -193,7 +196,8 @@ enum ModuleType
        LiveIso = 14,
        Test = 15,
        RpcServer = 16,
-       RpcClient = 17
+       RpcClient = 17,
+       Alias = 18
 };
 
 enum HostType
@@ -210,6 +214,7 @@ public:
        const XMLElement& node;
        std::string xmlbuildFile;
        std::string name;
+       std::string guid;
        std::string extension;
        std::string entrypoint;
        std::string baseaddress;
@@ -230,8 +235,9 @@ public:
        HostType host;
        std::string installBase;
        std::string installName;
+       std::string aliasedModuleName;
        bool useWRC;
-       bool enableWarnings;
+       bool allowWarnings;
        bool enabled;
 
        Module ( const Project& project,
@@ -243,11 +249,11 @@ public:
        bool HasImportLibrary () const;
        bool IsDLL () const;
        bool GenerateInOutputTree () const;
-       std::string GetTargetName () const;
-       std::string GetDependencyPath () const;
-       std::string GetBasePath () const;
-       std::string GetPath () const;
-       std::string GetPathWithPrefix ( const std::string& prefix ) const;
+       std::string GetTargetName () const; // "foo.exe"
+       std::string GetDependencyPath () const; // "path/foo.exe" or "path/libfoo.a"
+       std::string GetBasePath () const; // "path"
+       std::string GetPath () const; // "path/foo.exe"
+       std::string GetPathWithPrefix ( const std::string& prefix ) const; // "path/prefixfoo.exe"
        void GetTargets ( string_list& ) const;
        std::string GetInvocationTarget ( const int index ) const;
        bool HasFileWithExtension ( const IfableData&, const std::string& extension ) const;
@@ -271,6 +277,7 @@ public:
        const Project& project;
        const Module* module;
        const XMLElement* node;
+       const Module* baseModule;
        std::string directory;
        std::string basePath;
 
@@ -736,9 +743,18 @@ private:
        std::string StripSymbol ( std::string symbol );
 };
 
+extern std::string
+Right ( const std::string& s, size_t n );
+
+extern std::string
+Replace ( const std::string& s, const std::string& find, const std::string& with );
+
 extern std::string
 FixSeparator ( const std::string& s );
 
+extern std::string
+DosSeparator ( const std::string& s );
+
 extern std::string
 ReplaceExtension (
        const std::string& filename,