resolve cyclic dependency with zstd
[platform/upstream/cmake.git] / Source / cmIDEFlagTable.h
1 /* Distributed under the OSI-approved BSD 3-Clause License.  See accompanying
2    file Copyright.txt or https://cmake.org/licensing for details.  */
3 #pragma once
4
5 #include <string>
6
7 // This is a table mapping XML tag IDE names to command line options
8 struct cmIDEFlagTable
9 {
10   std::string IDEName;     // name used in the IDE xml file
11   std::string commandFlag; // command line flag
12   std::string comment;     // comment
13   std::string value;       // string value
14   unsigned int special;    // flags for special handling requests
15   enum
16   {
17     UserValue = (1 << 0),           // flag contains a user-specified value
18     UserIgnored = (1 << 1),         // ignore any user value
19     UserRequired = (1 << 2),        // match only when user value is non-empty
20     Continue = (1 << 3),            // continue looking for matching entries
21     SemicolonAppendable = (1 << 4), // a flag that if specified multiple times
22                                     // should have its value appended to the
23                                     // old value with semicolons (e.g.
24                                     // /NODEFAULTLIB: =>
25                                     // IgnoreDefaultLibraryNames)
26     UserFollowing = (1 << 5),       // expect value in following argument
27     CaseInsensitive = (1 << 6),     // flag may be any case
28     SpaceAppendable = (1 << 7),     // a flag that if specified multiple times
29                                     // should have its value appended to the
30                                     // old value with spaces
31     CommaAppendable = (1 << 8),     // a flag that if specified multiple times
32                                     // should have its value appended to the
33                                     // old value with commas (e.g. C# /nowarn
34
35     UserValueIgnored = UserValue | UserIgnored,
36     UserValueRequired = UserValue | UserRequired
37   };
38 };