summaryrefslogtreecommitdiffstats
path: root/Source/cmVisualStudioGeneratorOptions.h
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2009-07-29 15:29:08 (GMT)
committerBrad King <brad.king@kitware.com>2009-07-29 15:29:08 (GMT)
commit5b85a581a88a56aed7ed7e16637b9d349629bdcf (patch)
treed47f0321096777a9cb752a8330c01ba01336209d /Source/cmVisualStudioGeneratorOptions.h
parente339f3133fdc712e71a1bd45bdf051baa2fe6fdb (diff)
downloadCMake-5b85a581a88a56aed7ed7e16637b9d349629bdcf.zip
CMake-5b85a581a88a56aed7ed7e16637b9d349629bdcf.tar.gz
CMake-5b85a581a88a56aed7ed7e16637b9d349629bdcf.tar.bz2
ENH: Separate option mapping from VS generators
Split cmVisualStudioGeneratorOptions core functionality out into a base class cmIDEOptions. It will be useful for other generators.
Diffstat (limited to 'Source/cmVisualStudioGeneratorOptions.h')
-rw-r--r--Source/cmVisualStudioGeneratorOptions.h33
1 files changed, 5 insertions, 28 deletions
diff --git a/Source/cmVisualStudioGeneratorOptions.h b/Source/cmVisualStudioGeneratorOptions.h
index 159c984..3899a74 100644
--- a/Source/cmVisualStudioGeneratorOptions.h
+++ b/Source/cmVisualStudioGeneratorOptions.h
@@ -19,13 +19,13 @@
#include "cmLocalGenerator.h"
-#include "cmIDEFlagTable.h"
+#include "cmIDEOptions.h"
typedef cmIDEFlagTable cmVS7FlagTable;
class cmVisualStudio10TargetGenerator;
//----------------------------------------------------------------------------
-class cmVisualStudioGeneratorOptions
+class cmVisualStudioGeneratorOptions: public cmIDEOptions
{
public:
// Construct an options table for a given tool.
@@ -51,11 +51,6 @@ public:
// Store options for verbose builds.
void SetVerboseMakefile(bool verbose);
- // Store definitions and flags.
- void AddDefine(const std::string& define);
- void AddDefines(const char* defines);
- void AddFlag(const char* flag, const char* value);
-
// Check for specific options.
bool UsingUnicode();
@@ -73,29 +68,11 @@ private:
cmLocalGenerator* LocalGenerator;
int Version;
- // create a map of xml tags to the values they should have in the output
- // for example, "BufferSecurityCheck" = "TRUE"
- // first fill this table with the values for the configuration
- // Debug, Release, etc,
- // Then parse the command line flags specified in CMAKE_CXX_FLAGS
- // and CMAKE_C_FLAGS
- // and overwrite or add new values to this map
- std::map<cmStdString, cmStdString> FlagMap;
-
- // Preprocessor definitions.
- std::vector<std::string> Defines;
-
- // Unrecognized flags that get no special handling.
- cmStdString FlagString;
std::string Configuration;
- cmVisualStudio10TargetGenerator* TargetGenerator;
Tool CurrentTool;
- bool DoingDefine;
- cmVS7FlagTable const* FlagTable;
- cmVS7FlagTable const* ExtraFlagTable;
- void HandleFlag(const char* flag);
- bool CheckFlagTable(cmVS7FlagTable const* table, const char* flag,
- bool& flag_handled);
+ cmVisualStudio10TargetGenerator* TargetGenerator;
+
+ virtual void StoreUnknownFlag(const char* flag);
};
#endif