diff options
Diffstat (limited to 'Source/cmLocalVisualStudio7Generator.h')
-rw-r--r-- | Source/cmLocalVisualStudio7Generator.h | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/Source/cmLocalVisualStudio7Generator.h b/Source/cmLocalVisualStudio7Generator.h index 820b69b..64a29c5 100644 --- a/Source/cmLocalVisualStudio7Generator.h +++ b/Source/cmLocalVisualStudio7Generator.h @@ -72,6 +72,8 @@ public: // return the source name for the object file virtual std::string GetSourceObjectName(cmSourceFile& ); + void SetExtraFlagTable(cmVS7FlagTable const* table) + { this->ExtraFlagTable = table; } private: typedef cmLocalVisualStudio7GeneratorOptions Options; void ReadAndStoreExternalGUID(const char* name, @@ -124,11 +126,32 @@ private: const char *libName, std::vector<std::string> *configs); virtual std::string GetTargetDirectory(cmTarget&); + cmVS7FlagTable const* ExtraFlagTable; std::vector<std::string> CreatedProjectNames; std::string ModuleDefinitionFile; int Version; std::string PlatformName; // Win32 or x64 }; +// This is a table mapping XML tag IDE names to command line options +struct cmVS7FlagTable +{ + const char* IDEName; // name used in the IDE xml file + const char* commandFlag; // command line flag + const char* comment; // comment + const char* value; // string value + unsigned int special; // flags for special handling requests + enum + { + UserValue = (1<<0), // flag contains a user-specified value + UserIgnored = (1<<1), // ignore any user value + UserRequired = (1<<2), // match only when user value is non-empty + Continue = (1<<3), // continue looking for matching entries + + UserValueIgnored = UserValue | UserIgnored, + UserValueRequired = UserValue | UserRequired + }; +}; + #endif |