cmIDEFlagTable.h 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. /*============================================================================
  2. CMake - Cross Platform Makefile Generator
  3. Copyright 2000-2009 Kitware, Inc., Insight Software Consortium
  4. Distributed under the OSI-approved BSD License (the "License");
  5. see accompanying file Copyright.txt for details.
  6. This software is distributed WITHOUT ANY WARRANTY; without even the
  7. implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  8. See the License for more information.
  9. ============================================================================*/
  10. #ifndef cmIDEFlagTable_h
  11. #define cmIDEFlagTable_h
  12. // This is a table mapping XML tag IDE names to command line options
  13. struct cmIDEFlagTable
  14. {
  15. const char* IDEName; // name used in the IDE xml file
  16. const char* commandFlag; // command line flag
  17. const char* comment; // comment
  18. const char* value; // string value
  19. unsigned int special; // flags for special handling requests
  20. enum
  21. {
  22. UserValue = (1<<0), // flag contains a user-specified value
  23. UserIgnored = (1<<1), // ignore any user value
  24. UserRequired = (1<<2), // match only when user value is non-empty
  25. Continue = (1<<3), // continue looking for matching entries
  26. SemicolonAppendable = (1<<4), // a flag that if specified multiple times
  27. // should have its value appended to the
  28. // old value with semicolons (e.g.
  29. // /NODEFAULTLIB: =>
  30. // IgnoreDefaultLibraryNames)
  31. UserValueIgnored = UserValue | UserIgnored,
  32. UserValueRequired = UserValue | UserRequired
  33. };
  34. };
  35. #endif