summaryrefslogtreecommitdiffstats
path: root/Source/cmIDEFlagTable.h
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2009-07-29 15:28:55 (GMT)
committerBrad King <brad.king@kitware.com>2009-07-29 15:28:55 (GMT)
commite339f3133fdc712e71a1bd45bdf051baa2fe6fdb (patch)
tree643c3ddd8ad303457d61a02bf359b7a84337a6f5 /Source/cmIDEFlagTable.h
parent819b0742c6ea8d23b388d1ba9bf786d52b92c5cc (diff)
downloadCMake-e339f3133fdc712e71a1bd45bdf051baa2fe6fdb.zip
CMake-e339f3133fdc712e71a1bd45bdf051baa2fe6fdb.tar.gz
CMake-e339f3133fdc712e71a1bd45bdf051baa2fe6fdb.tar.bz2
ENH: Separate VS flag table type
Move the cmVS7FlagTable type out of the VS generators and rename it to cmIDEFlagTable. It will be useful for other generators.
Diffstat (limited to 'Source/cmIDEFlagTable.h')
-rw-r--r--Source/cmIDEFlagTable.h45
1 files changed, 45 insertions, 0 deletions
diff --git a/Source/cmIDEFlagTable.h b/Source/cmIDEFlagTable.h
new file mode 100644
index 0000000..3097142
--- /dev/null
+++ b/Source/cmIDEFlagTable.h
@@ -0,0 +1,45 @@
+/*=========================================================================
+
+ Program: CMake - Cross-Platform Makefile Generator
+ Module: $RCSfile$
+ Language: C++
+ Date: $Date$
+ Version: $Revision$
+
+ Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved.
+ See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details.
+
+ This software is distributed WITHOUT ANY WARRANTY; without even
+ the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ PURPOSE. See the above copyright notices for more information.
+
+=========================================================================*/
+#ifndef cmIDEFlagTable_h
+#define cmIDEFlagTable_h
+
+// This is a table mapping XML tag IDE names to command line options
+struct cmIDEFlagTable
+{
+ 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
+ SemicolonAppendable = (1<<4), // a flag that if specified multiple times
+ // should have its value appended to the
+ // old value with semicolons (e.g.
+ // /NODEFAULTLIB: =>
+ // IgnoreDefaultLibraryNames)
+
+ UserValueIgnored = UserValue | UserIgnored,
+ UserValueRequired = UserValue | UserRequired
+ };
+};
+
+#endif