[cmake-commits] alex committed cmDocumentation.h 1.23 1.24
cmake-commits at cmake.org
cmake-commits at cmake.org
Mon Jul 2 11:24:46 EDT 2007
Update of /cvsroot/CMake/CMake/Source
In directory public:/mounts/ram/cvs-serv2231
Modified Files:
cmDocumentation.h
Log Message:
COMP: fix build with msvc 6, the enums are now part of a class which is
already completely parsed
Alex
Index: cmDocumentation.h
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/cmDocumentation.h,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -d -r1.23 -r1.24
--- cmDocumentation.h 28 Jun 2007 19:04:28 -0000 1.23
+++ cmDocumentation.h 2 Jul 2007 15:24:44 -0000 1.24
@@ -19,8 +19,29 @@
#include "cmStandardIncludes.h"
+/** This is just a helper class to make it build with MSVC 6.0.
+Actually the enums and internal classes could directly go into
+cmDocumentation, but then MSVC6 complains in RequestedHelpItem that
+cmDocumentation is an undefined type and so it doesn't know the enums.
+Moving the enums to a class which is then already completely parsed helps.
+against this. */
+class cmDocumentationEnums
+{
+public:
+ /** Types of help provided. */
+ enum Type
+ { None, Usage, Single, SingleModule, SingleProperty,
+ List, ModuleList, PropertyList,
+ Full, Properties, Modules, Commands, CompatCommands,
+ Copyright, Version };
+
+ /** Forms of documentation output. */
+ enum Form { TextForm, HTMLForm, ManForm, UsageForm };
+};
+
+
/** Class to generate documentation. */
-class cmDocumentation
+class cmDocumentation: public cmDocumentationEnums
{
public:
cmDocumentation();
@@ -28,12 +49,6 @@
~cmDocumentation();
// High-level interface for standard documents:
- /** Types of help provided. */
- enum Type { None, Usage, Single, SingleModule, SingleProperty,
- List, ModuleList, PropertyList,
- Full, Properties, Modules, Commands, CompatCommands,
- Copyright, Version };
-
/**
* Check command line arguments for documentation options. Returns
* true if documentation options are found, and false otherwise.
@@ -85,11 +100,6 @@
void SetSeeAlsoList(const cmDocumentationEntry*);
// Low-level interface for custom documents:
-
- /** Forms of documentation output. */
- enum Form { TextForm, HTMLForm, ManForm, UsageForm };
-
-
/** Internal class representing a section of the documentation.
* Cares e.g. for the different section titles in the different
* output formats.
@@ -131,7 +141,6 @@
std::string ManName;
std::vector<cmDocumentationEntry> Entries;
static const cmDocumentationEntry EmptySection;
-
};
/**
@@ -254,8 +263,8 @@
struct RequestedHelpItem
{
RequestedHelpItem():Form(TextForm), Type(None) {}
- cmDocumentation::Form Form;
- cmDocumentation::Type Type;
+ cmDocumentationEnums::Form Form;
+ cmDocumentationEnums::Type Type;
std::string Filename;
std::string Argument;
};
More information about the Cmake-commits
mailing list