[cmake-commits] alex committed cmake.cxx 1.306 1.307 cmake.h 1.85 1.86 cmakemain.cxx 1.60 1.61 cmPropertyDefinition.h 1.1 1.2 cmPropertyDefinition.cxx 1.5 1.6 cmDocumentation.h 1.25 1.26 cmDocumentation.cxx 1.46 1.47

cmake-commits at cmake.org cmake-commits at cmake.org
Wed Jul 11 15:54:00 EDT 2007


Update of /cvsroot/CMake/CMake/Source
In directory public:/mounts/ram/cvs-serv10322

Modified Files:
	cmake.cxx cmake.h cmakemain.cxx cmPropertyDefinition.h 
	cmPropertyDefinition.cxx cmDocumentation.h cmDocumentation.cxx 
Log Message:

STYLE: sort the property documentation into
global/directory/target/test/sourcefile and variable sections

Alex


Index: cmDocumentation.h
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/cmDocumentation.h,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -d -r1.25 -r1.26
--- cmDocumentation.h	3 Jul 2007 12:26:32 -0000	1.25
+++ cmDocumentation.h	11 Jul 2007 19:53:58 -0000	1.26
@@ -18,6 +18,7 @@
 #define _cmDocumentation_h
 
 #include "cmStandardIncludes.h"
+#include "cmProperty.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
@@ -83,22 +84,23 @@
 
   /** Set the program options for standard document generation.  */
   void SetOptionsSection(const cmDocumentationEntry*);
-  
+
   /** Set the listfile commands for standard document generation.  */
   void SetCommandsSection(const cmDocumentationEntry*);
-  
+
   /** Set the listfile compat. commands for standard document generation.  */
   void SetCompatCommandsSection(const cmDocumentationEntry*);
-  
-  /** Set the properties for standard document generation.  */
-  void SetPropertiesSection(const cmDocumentationEntry*);
+
+  /** Set the global properties for standard document generation.  */
+  void SetPropertiesSection(const cmDocumentationEntry*, 
+                            cmProperty::ScopeType type);
 
   /** Set the generator descriptions for standard document generation.  */
   void SetGeneratorsSection(const cmDocumentationEntry*);
-  
+
   /** Set the see-also list of references to the other tools.  */
   void SetSeeAlsoList(const cmDocumentationEntry*);
-  
+
   // Low-level interface for custom documents:
   /** Internal class representing a section of the documentation.
    * Cares e.g. for the different section titles in the different
@@ -244,12 +246,19 @@
   cmSection CommandsSection;
   cmSection CompatCommandsSection;
   cmSection ModulesSection;
-  cmSection PropertiesSection;
   cmSection GeneratorsSection;
   cmSection SeeAlsoSection;
   cmSection CopyrightSection;
   cmSection AuthorSection;
-
+  cmSection GlobalPropertiesSection;
+  cmSection DirectoryPropertiesSection;
+  cmSection TargetPropertiesSection;
+  cmSection TestPropertiesSection;
+  cmSection SourceFilePropertiesSection;
+  cmSection VariablePropertiesSection;
+  cmSection CachedVariablePropertiesSection;
+  std::map<cmProperty::ScopeType, cmSection*> PropertySections;
+  
   std::string SeeAlsoString;
   std::string CMakeRoot;
   std::vector< char* > ModuleStrings;

Index: cmPropertyDefinition.cxx
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/cmPropertyDefinition.cxx,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- cmPropertyDefinition.cxx	27 Jun 2007 16:05:59 -0000	1.5
+++ cmPropertyDefinition.cxx	11 Jul 2007 19:53:58 -0000	1.6
@@ -20,7 +20,7 @@
 cmDocumentationEntry cmPropertyDefinition::GetDocumentation() const
 {
   cmDocumentationEntry e;
-  e.name = this->LongName.c_str();
+  e.name = this->Name.c_str();
   e.brief = 
     this->ShortDescription.size() ? this->ShortDescription.c_str() : 0;
   e.full = this->FullDescription.size() ? this->FullDescription.c_str() : 0;
@@ -44,24 +44,5 @@
     {
     this->FullDescription = fullDescription;
     }
-  this->LongName = this->Name;
-  switch (this->Scope)
-    {
-    case cmProperty::TARGET: this->LongName += " on a target";
-      break;
-    case cmProperty::SOURCE_FILE: this->LongName += " on a source file";
-      break;
-    case cmProperty::DIRECTORY: this->LongName += " on a directory";
-      break;
-    case cmProperty::GLOBAL: this->LongName += " globally";
-      break;
-    case cmProperty::TEST: this->LongName += " on CTest";
-      break;
-    case cmProperty::VARIABLE: this->LongName += " as a variable";
-      break;
-    case cmProperty::CACHED_VARIABLE: this->LongName += 
-                                        " as a cached variable";
-      break;
-    }
 }
 

Index: cmake.h
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/cmake.h,v
retrieving revision 1.85
retrieving revision 1.86
diff -u -d -r1.85 -r1.86
--- cmake.h	26 Jun 2007 17:05:26 -0000	1.85
+++ cmake.h	11 Jul 2007 19:53:58 -0000	1.86
@@ -249,7 +249,8 @@
   void GetCommandDocumentation(std::vector<cmDocumentationEntry>& entries, 
                                bool withCurrentCommands = true, 
                                bool withCompatCommands = true) const;
-  void GetPropertiesDocumentation(std::vector<cmDocumentationEntry>&);
+  void GetPropertiesDocumentation(std::vector<cmDocumentationEntry>&,
+                                  cmProperty::ScopeType type);
   void GetGeneratorDocumentation(std::vector<cmDocumentationEntry>&);
 
   ///! Set/Get a property of this target file

Index: cmPropertyDefinition.h
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/cmPropertyDefinition.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- cmPropertyDefinition.h	1 Dec 2006 18:35:03 -0000	1.1
+++ cmPropertyDefinition.h	11 Jul 2007 19:53:58 -0000	1.2
@@ -39,7 +39,6 @@
 
 protected:
   std::string Name;
-  std::string LongName;
   std::string ShortDescription;
   std::string FullDescription;
   cmProperty::ScopeType Scope; 

Index: cmake.cxx
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/cmake.cxx,v
retrieving revision 1.306
retrieving revision 1.307
diff -u -d -r1.306 -r1.307
--- cmake.cxx	3 Jul 2007 20:10:50 -0000	1.306
+++ cmake.cxx	11 Jul 2007 19:53:58 -0000	1.307
@@ -2165,16 +2165,11 @@
   v.push_back(empty);
 }
 
-void cmake::GetPropertiesDocumentation(std::vector<cmDocumentationEntry>& v)
+void cmake::GetPropertiesDocumentation(std::vector<cmDocumentationEntry>& v, 
+                                       cmProperty::ScopeType type)
 {
   // get the properties for cmake
-  std::map<cmProperty::ScopeType, cmPropertyDefinitionMap>::iterator i = 
-    this->PropertyDefinitions.begin();
-  for (; i != this->PropertyDefinitions.end(); ++i)
-    {
-    i->second.GetPropertiesDocumentation(v);
-    }
-
+  this->PropertyDefinitions[type].GetPropertiesDocumentation(v);
   cmDocumentationEntry empty = {0,0,0};
   v.push_back(empty);
 }

Index: cmDocumentation.cxx
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/cmDocumentation.cxx,v
retrieving revision 1.46
retrieving revision 1.47
diff -u -d -r1.46 -r1.47
--- cmDocumentation.cxx	3 Jul 2007 12:26:32 -0000	1.46
+++ cmDocumentation.cxx	11 Jul 2007 19:53:58 -0000	1.47
@@ -64,7 +64,8 @@
 static const cmDocumentationEntry cmPropertiesDocumentationDescription[] =
 {
   {0,
-   "  CMake Properties - Properties supported by CMake, the Cross-Platform Makefile Generator.", 0},
+   "  CMake Properties - Properties supported by CMake, "
+   "the Cross-Platform Makefile Generator.", 0},
 //  CMAKE_DOCUMENTATION_OVERVIEW,
   {0,
    "This is the documentation for the properties supported by CMake. "
@@ -79,7 +80,8 @@
 static const cmDocumentationEntry cmCompatCommandsDocumentationDescription[] =
 {
   {0,
-   "  CMake Compatibility Listfile Commands - Obsolete commands supported by CMake for compatibility.", 0},
+   "  CMake Compatibility Listfile Commands - "
+   "Obsolete commands supported by CMake for compatibility.", 0},
 //  CMAKE_DOCUMENTATION_OVERVIEW,
   {0,
   "This is the documentation for now obsolete listfile commands from "
@@ -97,10 +99,60 @@
 };
 
 //----------------------------------------------------------------------------
-static const cmDocumentationEntry cmDocumentationPropertiesHeader[] =
+static const cmDocumentationEntry cmDocumentationGlobalPropertiesHeader[] =
 {
   {0,
-   "The following properties are available in CMakeLists.txt code:", 0},
+   "The following global properties are available in CMakeLists.txt code:", 0},
+  {0,0,0}
+};
+
+//----------------------------------------------------------------------------
+static const cmDocumentationEntry cmDocumentationDirectoryPropertiesHeader[] =
+{
+  {0
+   ,"The following directory properties are available in CMakeLists.txt code:"
+   ,0},
+  {0,0,0}
+};
+
+//----------------------------------------------------------------------------
+static const cmDocumentationEntry cmDocumentationTargetPropertiesHeader[] =
+{
+  {0,
+   "The following target properties are available in CMakeLists.txt code:", 0},
+  {0,0,0}
+};
+
+//----------------------------------------------------------------------------
+static const cmDocumentationEntry cmDocumentationTestPropertiesHeader[] =
+{
+  {0
+   ,"The following properties for tests are available in CMakeLists.txt code:"
+   ,0},
+  {0,0,0}
+};
+
+//----------------------------------------------------------------------------
+static const cmDocumentationEntry cmDocumentationSourceFilePropertiesHeader[] =
+{
+  {0
+  ,"The following source file properties are available in CMakeLists.txt code:"
+  , 0},
+  {0,0,0}
+};
+
+//----------------------------------------------------------------------------
+static const cmDocumentationEntry cmDocumentationVariablePropertiesHeader[] =
+{
+  {0, "The following variables are available in CMakeLists.txt code:", 0},
+  {0,0,0}
+};
+
+//----------------------------------------------------------------------------
+static const cmDocumentationEntry 
+                             cmDocumentationCachedVariablePropertiesHeader[] =
+{
+  {0,"The following cache variables are available in CMakeLists.txt code:", 0},
   {0,0,0}
 };
 
@@ -211,15 +263,35 @@
 ,CompatCommandsSection("Compatibility Listfile Commands",
                        "COMPATIBILITY COMMANDS")
 ,ModulesSection       ("Standard CMake Modules",          "MODULES")
-,PropertiesSection    ("Standard Properties",             "PROPERTIES")
 ,GeneratorsSection    ("Generators",                      "GENERATORS")
 ,SeeAlsoSection       ("See Also",                        "SEE ALSO")
 ,CopyrightSection     ("Copyright",                       "COPYRIGHT")
 ,AuthorSection        ("Author",                          "AUTHOR")
+,GlobalPropertiesSection        ("Standard Properties",   "GLOBAL PROPERTIES")
+,DirectoryPropertiesSection     ("Directory Properties",  
+                                 "DIRECTORY PROPERTIES")
+,TargetPropertiesSection        ("Target Properties",     "TARGET PROPERTIES")
+,TestPropertiesSection          ("Test Properties",       "TEST PROPERTIES")
+,SourceFilePropertiesSection    ("Sourcefile Properties", 
+                                 "SOURCEFILE PROPERTIES")
+,VariablePropertiesSection      ("Variables",             "VARIABLES")
+,CachedVariablePropertiesSection("Cached Variables",      "CACHE VARIABLES")
 {
   this->CurrentForm = TextForm;
   this->TextIndent = "";
   this->TextWidth = 77;
+  
+  this->PropertySections[cmProperty::GLOBAL] = &this->GlobalPropertiesSection;
+  this->PropertySections[cmProperty::DIRECTORY] = 
+                                             &this->DirectoryPropertiesSection;
+  this->PropertySections[cmProperty::TARGET] = &this->TargetPropertiesSection;
+  this->PropertySections[cmProperty::TEST] = &this->TestPropertiesSection;
+  this->PropertySections[cmProperty::SOURCE_FILE] = 
+                                            &this->SourceFilePropertiesSection;
+  this->PropertySections[cmProperty::VARIABLE] = 
+                                              &this->VariablePropertiesSection;
+  this->PropertySections[cmProperty::CACHED_VARIABLE] = 
+                                        &this->CachedVariablePropertiesSection;
 }
 
 //----------------------------------------------------------------------------
@@ -730,9 +802,42 @@
 
 //----------------------------------------------------------------------------
 void cmDocumentation
-::SetPropertiesSection(const cmDocumentationEntry* section)
+::SetPropertiesSection(const cmDocumentationEntry* section, 
+                       cmProperty::ScopeType type)
 {
-  this->PropertiesSection.Set(cmDocumentationPropertiesHeader, section, 0);
+  switch(type)
+  {
+  case cmProperty::GLOBAL:
+    this->GlobalPropertiesSection.Set(
+                            cmDocumentationGlobalPropertiesHeader, section, 0);
+    break;
+  case cmProperty::DIRECTORY:
+    this->DirectoryPropertiesSection.Set(
+                          cmDocumentationDirectoryPropertiesHeader, section, 0);
+    break;
+  case cmProperty::TARGET:
+    this->TargetPropertiesSection.Set(
+                            cmDocumentationTargetPropertiesHeader, section, 0);
+    break;
+  case cmProperty::TEST:
+    this->TestPropertiesSection.Set(
+                              cmDocumentationTestPropertiesHeader, section, 0);
+    break;
+  case cmProperty::SOURCE_FILE:
+    this->SourceFilePropertiesSection.Set(
+                        cmDocumentationSourceFilePropertiesHeader, section, 0);
+    break;
+  case cmProperty::VARIABLE:
+    this->VariablePropertiesSection.Set(
+                        cmDocumentationVariablePropertiesHeader, section, 0);
+    break;
+  case cmProperty::CACHED_VARIABLE:
+    this->CachedVariablePropertiesSection.Set(
+                    cmDocumentationCachedVariablePropertiesHeader, section, 0);
+    break;
+  default:
+    break;
+  }
 }
 
 //----------------------------------------------------------------------------
@@ -1312,7 +1417,7 @@
 //----------------------------------------------------------------------------
 bool cmDocumentation::PrintDocumentationSingleProperty(std::ostream& os)
 {
-  if(this->PropertiesSection.IsEmpty())
+  if(this->GlobalPropertiesSection.IsEmpty())
     {
     os << "Internal error: properties list is empty." << std::endl;
     return false;
@@ -1322,13 +1427,20 @@
     os << "Argument --help-property needs a property name.\n";
     return false;
     }
-  for(const cmDocumentationEntry* entry = this->PropertiesSection.GetEntries();
-      entry->brief; ++entry)
+
+  for(std::map<cmProperty::ScopeType, cmSection*>::const_iterator 
+      sectionIt = this->PropertySections.begin();
+      sectionIt != this->PropertySections.end();
+      ++sectionIt)
     {
-    if(entry->name && this->CurrentArgument == entry->name)
+    for(const cmDocumentationEntry* 
+        entry = sectionIt->second->GetEntries(); entry->brief; ++entry)
       {
-      this->PrintDocumentationCommand(os, entry);
-      return true;
+      if(entry->name && this->CurrentArgument == entry->name)
+        {
+        this->PrintDocumentationCommand(os, entry);
+        return true;
+        }
       }
     }
   // Argument was not a command.  Complain.
@@ -1371,19 +1483,37 @@
 //----------------------------------------------------------------------------
 bool cmDocumentation::PrintPropertyList(std::ostream& os)
 {
-  if(this->PropertiesSection.IsEmpty())
+  if(this->GlobalPropertiesSection.IsEmpty())
     {
     os << "Internal error: properties list is empty." << std::endl;
     return false;
     }
-  for(const cmDocumentationEntry* entry = this->PropertiesSection.GetEntries();
-      entry->brief; ++entry)
+  for(const cmDocumentationEntry* 
+      entry = this->GlobalPropertiesSection.GetEntries();
+      entry->brief; 
+      ++entry)
     {
     if(entry->name)
       {
       os << entry->name << std::endl;
       }
     }
+
+  for(std::map<cmProperty::ScopeType, cmSection*>::const_iterator 
+      sectionIt = this->PropertySections.begin();
+      sectionIt != this->PropertySections.end();
+      ++sectionIt)
+    {
+    for(const cmDocumentationEntry* 
+        entry = sectionIt->second->GetEntries(); entry->brief; ++entry)
+      {
+      if(entry->name)
+        {
+        os << entry->name << std::endl;
+        }
+      }
+    }
+
   return true;
 }
 
@@ -1537,7 +1667,14 @@
   this->AddSection(this->CommandsSection);
   this->AddSection(this->CompatCommandsSection);
   this->AddSection(this->ModulesSection);
-  this->AddSection(this->PropertiesSection);
+  this->AddSection(this->GlobalPropertiesSection);
+  this->AddSection(this->DirectoryPropertiesSection);
+  this->AddSection(this->TargetPropertiesSection);
+  this->AddSection(this->TestPropertiesSection);
+  this->AddSection(this->SourceFilePropertiesSection);
+  this->AddSection(this->VariablePropertiesSection);
+  this->AddSection(this->CachedVariablePropertiesSection);
+  
   this->AddSection(this->CopyrightSection.GetName(this->CurrentForm),
                    cmDocumentationCopyright);
 
@@ -1596,7 +1733,13 @@
   this->ClearSections();
   this->AddSection(this->DescriptionSection.GetName(CurrentForm), 
                    cmPropertiesDocumentationDescription);
-  this->AddSection(this->PropertiesSection);
+  this->AddSection(this->GlobalPropertiesSection);
+  this->AddSection(this->DirectoryPropertiesSection);
+  this->AddSection(this->TargetPropertiesSection);
+  this->AddSection(this->TestPropertiesSection);
+  this->AddSection(this->SourceFilePropertiesSection);
+  this->AddSection(this->VariablePropertiesSection);
+  this->AddSection(this->CachedVariablePropertiesSection);
   this->AddSection(this->CopyrightSection.GetName(CurrentForm), 
                    cmDocumentationCopyright);
   this->AddSection(this->SeeAlsoSection.GetName(CurrentForm), 

Index: cmakemain.cxx
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/cmakemain.cxx,v
retrieving revision 1.60
retrieving revision 1.61
diff -u -d -r1.60 -r1.61
--- cmakemain.cxx	28 Jun 2007 19:04:28 -0000	1.60
+++ cmakemain.cxx	11 Jul 2007 19:53:58 -0000	1.61
@@ -95,32 +95,60 @@
    "Print extra stuff during the cmake run like stack traces with "
    "message(send_error ) calls."},
   {"--help-command cmd [file]", "Print help for a single command and exit.",
-   "Full documentation specific to the given command is displayed."},
+   "Full documentation specific to the given command is displayed. "
+   "If a file is specified, the documentation is written into and the output "
+   "format is determined depending on the filename suffix. Supported are man "
+   "page, HTML and plain text."},
   {"--help-command-list [file]", "List available listfile commands and exit.",
    "The list contains all commands for which help may be obtained by using "
-   "the --help-command argument followed by a command name.  If a file is "
-   "specified, the help is written into it."},
+   "the --help-command argument followed by a command name. "
+   "If a file is specified, the documentation is written into and the output "
+   "format is determined depending on the filename suffix. Supported are man "
+   "page, HTML and plain text."},
   {"--help-commands [file]", "Print help for all commands and exit.",
-   "Full documentation specific for all current command is displayed."},
+   "Full documentation specific for all current command is displayed."
+   "If a file is specified, the documentation is written into and the output "
+   "format is determined depending on the filename suffix. Supported are man "
+   "page, HTML and plain text."},
   {"--help-compatcommands [file]", "Print help for compatibility commands. ",
-   "Full documentation specific for all compatibility commands is displayed."},
+   "Full documentation specific for all compatibility commands is displayed."
+   "If a file is specified, the documentation is written into and the output "
+   "format is determined depending on the filename suffix. Supported are man "
+   "page, HTML and plain text."},
   {"--help-module module [file]", "Print help for a single module and exit.",
-   "Full documentation specific to the given module is displayed."},
+   "Full documentation specific to the given module is displayed."
+   "If a file is specified, the documentation is written into and the output "
+   "format is determined depending on the filename suffix. Supported are man "
+   "page, HTML and plain text."},
   {"--help-module-list [file]", "List available modules and exit.",
    "The list contains all modules for which help may be obtained by using "
-   "the --help-module argument followed by a module name.  If a file is "
-   "specified, the help is written into it."},
+   "the --help-module argument followed by a module name. "
+   "If a file is specified, the documentation is written into and the output "
+   "format is determined depending on the filename suffix. Supported are man "
+   "page, HTML and plain text."},
   {"--help-modules [file]", "Print help for all modules and exit.",
-   "Full documentation for all modules is displayed."},
+   "Full documentation for all modules is displayed. "
+   "If a file is specified, the documentation is written into and the output "
+   "format is determined depending on the filename suffix. Supported are man "
+   "page, HTML and plain text."},
   {"--help-property prop [file]", 
    "Print help for a single property and exit.",
-   "Full documentation specific to the given module is displayed."},
+   "Full documentation specific to the given module is displayed."
+   "If a file is specified, the documentation is written into and the output "
+   "format is determined depending on the filename suffix. Supported are man "
+   "page, HTML and plain text."},
   {"--help-property-list [file]", "List available properties and exit.",
    "The list contains all properties for which help may be obtained by using "
    "the --help-property argument followed by a property name.  If a file is "
-   "specified, the help is written into it."},
+   "specified, the help is written into it."
+   "If a file is specified, the documentation is written into and the output "
+   "format is determined depending on the filename suffix. Supported are man "
+   "page, HTML and plain text."},
   {"--help-properties [file]", "Print help for all properties and exit.",
-   "Full documentation for all properties is displayed."},
+   "Full documentation for all properties is displayed."
+   "If a file is specified, the documentation is written into and the output "
+   "format is determined depending on the filename suffix. Supported are man "
+   "page, HTML and plain text."},
   {0,0,0}
 };
 
@@ -179,11 +207,26 @@
     doc.SetCMakeRoot(hcm.GetCacheDefinition("CMAKE_ROOT"));
     std::vector<cmDocumentationEntry> commands;
     std::vector<cmDocumentationEntry> compatCommands;
-    std::vector<cmDocumentationEntry> properties;
+    std::vector<cmDocumentationEntry> globalProperties;
+    std::vector<cmDocumentationEntry> dirProperties;
+    std::vector<cmDocumentationEntry> targetProperties;
+    std::vector<cmDocumentationEntry> testProperties;
+    std::vector<cmDocumentationEntry> sourceFileProperties;
+    std::vector<cmDocumentationEntry> variableProperties;
+    std::vector<cmDocumentationEntry> cachedVariableProperties;
+
     std::vector<cmDocumentationEntry> generators;
     hcm.GetCommandDocumentation(commands, true, false);
     hcm.GetCommandDocumentation(compatCommands, false, true);
-    hcm.GetPropertiesDocumentation(properties);
+    hcm.GetPropertiesDocumentation(globalProperties, cmProperty::GLOBAL);
+    hcm.GetPropertiesDocumentation(dirProperties, cmProperty::DIRECTORY);
+    hcm.GetPropertiesDocumentation(targetProperties, cmProperty::TARGET);
+    hcm.GetPropertiesDocumentation(testProperties, cmProperty::TEST);
+    hcm.GetPropertiesDocumentation(sourceFileProperties, 
+                                   cmProperty::SOURCE_FILE);
+    hcm.GetPropertiesDocumentation(variableProperties, cmProperty::VARIABLE);
+    hcm.GetPropertiesDocumentation(cachedVariableProperties, 
+                                   cmProperty::CACHED_VARIABLE);
     hcm.GetGeneratorDocumentation(generators);
     doc.SetName("cmake");
     doc.SetNameSection(cmDocumentationName);
@@ -193,10 +236,17 @@
     doc.SetOptionsSection(cmDocumentationOptions);
     doc.SetCommandsSection(&commands[0]);
     doc.SetCompatCommandsSection(&compatCommands[0]);
-    doc.SetPropertiesSection(&properties[0]);
+    doc.SetPropertiesSection(&globalProperties[0], cmProperty::GLOBAL);
+    doc.SetPropertiesSection(&dirProperties[0], cmProperty::DIRECTORY);
+    doc.SetPropertiesSection(&targetProperties[0], cmProperty::TARGET);
+    doc.SetPropertiesSection(&testProperties[0], cmProperty::TEST);
+    doc.SetPropertiesSection(&sourceFileProperties[0],cmProperty::SOURCE_FILE);
+    doc.SetPropertiesSection(&variableProperties[0],cmProperty::VARIABLE);
+    doc.SetPropertiesSection(&cachedVariableProperties[0],
+                             cmProperty::CACHED_VARIABLE);
     doc.SetSeeAlsoList(cmDocumentationSeeAlso);
     int result = doc.PrintRequestedDocumentation(std::cout)? 0:1;
-    
+
     // If we were run with no arguments, but a CMakeLists.txt file
     // exists, the user may have been trying to use the old behavior
     // of cmake to build a project in-source.  Print a message



More information about the Cmake-commits mailing list